Détection de compression via les codes MATLAB


13

Je suis nouveau sur le sujet de la détection compressée. J'ai lu quelques articles à ce sujet par R.Baranuik, Y.Eldar, Terence Tao, etc. qui réalisent la détection compressive?

Merci d'avance pour votre aide.


1
Les demandes de code sont hors sujet ici.
pichenettes

Réponses:


18
  • La plupart du code est du code Matlab simple
  • Chaque dossier du package se compose d'un algorithme de récupération CS basé sur un modèle de signal particulier et d'un script qui teste cet algorithme de récupération. Les noms des scripts se terminent généralement par «_example.m»
  • Manopt . Peut-être ce que vous utilisez pour créer les algorithmes inclus dans d'autres boîtes à outils.

L'optimisation sur les variétés est un paradigme puissant pour résoudre les problèmes d'optimisation non linéaire.

Cette boîte à outils implémente plusieurs algorithmes pour calculer l'expansion clairsemée dans les dictionnaires redondants et pour résoudre les problèmes inverses avec la régularisation clairsemée (et aussi la régularisation TV).

Mais tout cela, et plus encore, est inclus dans cette liste de boîtes à outils .

J'ai trouvé que la partie difficile est de trouver un pseudo-code - c'est là qu'ils décrivent l'algorithme. Voici quelques exemples d'algorithmes qui incluaient le pseudo-code:


7

Je suppose que je réponds ici hors sujet, mais pour les approches d'optimisation L1, je trouve YALL1 ( http://yall1.blogs.rice.edu/ ) et SPGL1 ( http://www.cs.ubc.ca/ ~ mpf / spgl1 / ) packages très utiles et efficaces. TFOCS ( http://cvxr.com/tfocs/ ) est probablement un peu plus difficile à utiliser, mais devrait être assez flexible. Il y a aussi CVX ( http://cvxr.com/cvx/ ) qui permet de taper très facilement les problèmes d'optimisation convexe directement dans le code, mais il est considérablement plus lent pour résoudre les types de problèmes spécifiques à la détection compressée car il s'agit d'un solveur très général.

Il existe également des algorithmes de reconstruction disponibles dans Sparselab ( http://sparselab.stanford.edu/ ).

Une liste plus longue de codes de reconstruction clairsemés est répertoriée ici: https://sites.google.com/site/igorcarron2/cs#reconstruction


6

Gardez à l'esprit que L1 n'est pas la seule approche de la détection compressive. Dans notre recherche , nous avons eu un meilleur succès avec le passage de message approximatif (AMP). Je définis le «succès» comme une erreur plus faible, de meilleures transitions de phase (capacité à récupérer avec moins d'observations) et une complexité moindre (mémoire et processeur).

L'algorithme de passage de message approximatif établit un cadre bayésien pour estimer les vecteurs inconnus dans un système linéaire à grande échelle où les entrées et les sorties du système linéaire sont déterminées par des modèles probabilistes (par exemple, "ce vecteur a été mesuré avec du bruit", "ce vecteur a quelques zéros "). L' approche AMP originale forgée par Donoho a été affinée par Rangan en généralisée passage de message approximatif avec le code Matlab disponible . Les entrées et sorties peuvent être des fonctions de densité de probabilité presque arbitraires. Dans nos recherches, nous avons constaté que GAMP est généralement plus rapide, plus précis et plus robuste (lire: meilleures courbes de transition de phase) que les approches convexes L1 et les approches gourmandes (par exemple la poursuite de correspondance orthogonale).

Mon conseiller et moi venons d'écrire un article sur l'utilisation de GAMP pour Analysis CS, où l'on s'attend à une abondance de zéros, non pas dans le vecteur inconnu x, mais plutôt dans une fonction linéaire de cette inconnue, Wx.



En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.