Компресивне зондування через коди MATLAB


13

Я новачок у темі стисненого зондування. Я прочитав кілька робіт про це Р. Барануйком, Ю. Ельдаром, Теренсом Дао і т. Д. Усі ці документи в основному забезпечують математичні деталі, що стоять за ним, тобто Sparsity, RIP, мінімізація норми L1 і т.д. що досягають компресійного зондування?

Заздалегідь дякую за будь-яку допомогу.


1
Запити щодо коду тут поза темою.
pichenettes

Відповіді:


18
  • Більшість кодів є простим кодом Matlab
  • Кожна папка в пакеті складається з алгоритму відновлення CS на основі конкретної моделі сигналу та сценарію, який тестує цей алгоритм відновлення. Імена сценаріїв зазвичай закінчуються на "_example.m"
  • Манопт . Можливо, те, що ви використовуєте, щоб насправді зробити алгоритми включені в інші набори інструментів.

Оптимізація на колекторах є потужною парадигмою для вирішення нелінійних проблем оптимізації.

Цей інструментарій реалізує декілька алгоритмів для обчислення розрізненого розширення у надлишкових словниках та для вирішення зворотних задач із рідкою регуляризацією (а також регуляризацією телевізора).

Але все це та багато іншого входить у цей список інструментів .

Я знайшов важку частину пошуку psuedocode - саме там вони фактично описують алгоритм. Ось кілька прикладів алгоритмів, які включали psuedocode:


8

Я вважаю, що тут я відповідаю поза темою, але для підходів до оптимізації L1 я знаходжу YALL1 ( http://yall1.blogs.rice.edu/ ) та SPGL1 ( http://www.cs.ubc.ca/ ~ mpf / spgl1 / ) дуже корисні та ефективні пакети. TFOCS ( http://cvxr.com/tfocs/ ), ймовірно, трохи складніше у використанні, але він повинен бути досить гнучким. Існує також CVX ( http://cvxr.com/cvx/ ), який дозволяє дуже легко вводити проблеми з опуклою оптимізацією безпосередньо в код, але це значно повільніше для вирішення специфічних проблем, спричинених зондуванням, оскільки це дуже загальний вирішувач.

Також є кілька алгоритмів відновлення, доступних у Sparselab ( http://sparselab.stanford.edu/ ).

Більший список редких кодів реконструкції наведено тут: https://sites.google.com/site/igorcarron2/cs#reconstruction


6

Майте на увазі, L1 - не єдиний підхід до стискання зондування. У нашому дослідженні ми мали кращий успіх з наближеною передачею повідомлення (AMP). Я визначаю "успіх" як меншу помилку, кращі фазові переходи (здатність до відновлення з меншою кількістю спостережень) та меншу складність (як пам'ять, так і процесор).

Алгоритм наближеного передачі повідомлень встановлює байєсівську основу для оцінки невідомих векторів у великомасштабній лінійній системі, де входи та виходи лінійної системи визначаються імовірнісними моделями (наприклад, "цей вектор вимірювався шумом", "цей вектор має деякий нулі "). Оригінальний AMP підхід викуваний Донохью був уточнений Rangan в Узагальнений Passing Зразкових повідомлень з Matlab кодом доступний. Входи та виходи можуть бути майже довільними функціями щільності ймовірностей. У нашому дослідженні ми виявили, що GAMP, як правило, швидший, точніший та надійніший (читайте: кращі криві фазового переходу), ніж підпуклі підходи L1 та жадібні підходи (наприклад, ортогональне погодження відповідності).

Мій радник і я щойно написали документ про використання GAMP для Analysis CS, де очікується велика кількість нулів не в невідомому векторі x, а в лінійній функції цього невідомого Wx.



0

Я написав декілька підручників з навчальних посібників з кодування, що пояснюють основи CS, MP, OMP тощо для початківців. Ви можете перевірити їх на https://sparse-plex.readthedocs.io/en/latest/demos/index.html

Вона є частиною моєї бібліотеки з розрідженим плексим, доступною на GitHub https://github.com/indigits/sparse-plex

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.