«Теорема глибокого Нітера»: побудова обмежень симетрії


9

Якщо у мене є проблема навчання, яка повинна мати властиву симетрію, чи є спосіб піддати мою проблему навчання обмеженням симетрії для покращення навчання?

Наприклад, якщо я роблю розпізнавання зображень, я, можливо, захочу 2D обертальну симетрію. Це означає, що повернута версія зображення повинна мати такий же результат, як і оригінал.

Або якщо я вчуся грати в тик-так-носок, то обертання на 90deg повинно дати ту саму гру.

Чи було зроблено якісь дослідження з цього приводу?



@Emre Спасибі! Чи знаєте ви про будь-яку роботу поза CNN?
— aidan.plenert.macdonald

Ні, я маю лише поверхневі знання про цю нішу. Незважаючи на те, CNN здаються природними умовами ...
— Emre

3
Я також повинен згадати докторську дисертацію Рісі Кондор, Групові теоретичні методи в машинному навчанні (pdf)
— Емре

Відповіді:


8

З коментаря Емре вище, в розділі 4.4 Групових теоретичних методів машинного навчання Різі Кондор є детальна інформація та докази створення методів ядра, які по суті мають симетрію. Я підсумую це, сподіваючись інтуїтивно зрозумілим чином (я фізик, а не математик!).

Більшість алгоритмів ML мають матричне множення на зразок,

сi=∑jWij хj=∑jWij (е→j⋅х→)
з х→ будучи вхідним і Wij будучи вагами, які ми хочемо тренувати.

Метод ядра

Введіть сферу методів ядра і дозвольте алгоритму обробляти вхід через,

сi=∑jWij к(еj, х)
де ми зараз узагальнюємо х,еj∈Х.

Розглянемо групу Г що діє на Х через х→Тг(х) для г∈Г. Простий спосіб зробити наш алгоритм інваріантним під цією групою - це зробити ядро,

кГ(х,у)=1|Г|∑г∈Гк(х,Тг(у))
з к(х,у)=к(Тг(х),Тг(у)).

Тому,

кГ(х,Тгод(у))=1|Г|∑г∈Гк(х,Тггод(у))=1|Г|∑г∈Гк(х,Тг(у))=1|Г|∑г∈Гк(Тг(х),у)

Для к(х,у)=х⋅у яка працює для всіх унітарних представництв,

кГ(х,Тгод(у))=[1|Г|∑г∈ГТг(х)]⋅у

Яка пропонує матрицю перетворення, яка може симетризувати вхід в алгоритм.

SO (2) Приклад

Насправді просто група, на яку відображається карта π2 обертання для простоти.

Давайте проведемо лінійну регресію на даних (х→i,уi)∈R2×R де ми очікуємо обертальну симетрію.

Наша проблема оптимізації стає,

хвWj∑i12(уi-у~i)2у~i=∑jWjкГ(еj,хi)+бi

Ядро к(х,у)=‖х-у‖2задовольняє . Ви також можете використовувати та різні ядра.к(х,у)=к(Тг(х),Тг(у))к(х,у)=х⋅у

Таким чином,

кГ(еj,хi)=14∑н=14‖R(нπ/2) е→j-х→i‖2=14∑н=14(cos⁡(нπ/2)-х→i1)2+(гріх⁡(нπ/2)-х→i2)2=14[2х→i12+2х→i22+(1-х→i1)2+(1-х→i2)2+(1+х→i1)2+(1+х→i2)2]=х→i12+х→i22+1

Зауважте, що нам не потрібно сумувати понад оскільки це однаково для обох. Отже, наша проблема стає, j

хвW∑i12(уi-у~i)2у~i=W[х→i12+х→i22+1]+бi

Що дає очікувану сферичну симетрію!

Хрестики-нулики

Приклад коду можна побачити тут . Він показує, як ми можемо створити матрицю, що кодує симетрію, і використовувати її. Зауважте, що це справді погано, коли я його фактично запускаю! Наразі робота з іншими ядрами.


Гарна робота, Айдане! Якщо у вас є час, ви можете написати більш детальну публікацію в блозі. Громада буде найбільше зацікавлена.
— Emre

1
Не впевнений, про яку спільноту ви маєте на увазі, але я почав писати більше. Я хотів знайти спосіб оцінити оптимальне ядро ​​з урахуванням набору даних. Тому я оптимізував ентропію на просторі ядра, щоб інтуїтивно отримати новий набір функцій, симетрично обмежених та максимально ентропічних (тобто інформативних). Тепер, чи це правильний підхід. Я не можу сказати. Просто попередження, математика - це трохи зламана робота прямо зараз і якась поза статтю. overleaf.com/read/kdfzdbyhpbbq
— aidan.plenert.macdonald

Чи є якийсь змістовний підхід, коли група симетрії не відома?
— leitasat

@leitasat Як ви знаєте, що це симетрично, якщо ви не знаєте групи?
— aidan.plenert.macdonald

@ aidan.plenert.macdonald з даних. Скажімо, у нас є 1000 наборів із 100 зображень у кожному, і всередині кожного набору є зображення одного об’єкта з різних точок зору. Чи може будь-який алгоритм «вивчити ідею» симетрії SO (3) та використовувати її на раніше небачених об’єктах?
— leitasat

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