Метод вимірювання «подібності» між граматиками FSA?


10

Я працюю з алгоритмом відповідності шаблону, який генерує ациклічний автоматичний кінцевий стан, який приймає заданий текстовий рядок та всі його підрядки. Алгоритм FSA запускається на символічному поданні музичного потоку (наприклад, MIDI-дані). Музичний потік був попередньо оброблений, щоб розділити кожну пісню на марковані "сегменти". FSA генерується для кожного сегмента в кожній пісні: якщо у мене є пісні, кожна з яких ділиться на сегментів, у мене буде окремі FSAS.унуну

Я хотів би порівняти FSA кожного сегмента з іншими FSA в моєму корпусі. Кінцевою метою було б зробити кластеризацію в просторі подібності та придумати «класи» сегментів відповідно до того, наскільки схожі їх показники побудови. Таким чином, особливий інтерес представляють граматики, які визначає кожен FSA (відповідні приблизно певним компонентам музичного змісту в сегменті). Чи є методи, які можуть бути корисними для порівняння чогось подібного? Приходить на думку KL-дивергенція (наприклад, використовуючи її порівняння розподілу по рядках, пов'язаних із заданим FSA), хоча можуть бути кращі / ефективніші методи?

Також вибачте, якщо це питання або (1) тривіально просте, або (2) свідчить про якесь глибше непорозуміння, або (3) відповіді в іншому місці. Я справжній нуб, люди!


3
Вам потрібно буде сказати нам, що ви маєте на увазі під "схожим". Ви повинні вибрати показник; не існує жодної правильної метрики, яка була б правильною для всіх цілей. Без додаткової інформації ми не можемо сказати вам, який показник використовувати. Я пропоную відредагувати питання, щоб пояснити, чому ви хочете виміряти схожість, що ви будете робити з результатами метрики подібності та які дослідження виконали. Ви можете почати з огляду мір подібності між основними рядками, а не вимірювання подібності FSA, отриманих з цих рядків. Зміна відстані редагування.
DW

Є багато рядкових метрик ; що працює для вас, залежить. (Примітка: деякі рядки "метрики", перелічені в цій статті, насправді не є метриками в математичному сенсі.)
Рафаель

Струнні показники хороші, але не зовсім те, що я хочу. Замість того, щоб порівнювати конкретні рядки один з одним, я хотів би порівняти систему правил (формальні граматики / FSA), які могли б створити ці рядки. Я визнаю, що існує нескінченно багато граматик, які можуть створити будь-яку конкретну строку, тому я обмежую свій пошук граматики (FSA), побудованої за допомогою певного набору правил. Я думаю, що можуть бути випадки, коли два окремих рядки формально схожі за заданою метрикою рядків, але граматики, необхідні для їх створення, зовсім інші
фліп

З постановки проблеми кожен FSA приймає один рядок та всі його підрядки. Принципово цей FSA характеризується найдовшою строкою, яку він приймає. Вся його структура випливає з неї. Тому порівняння FSA має мало сенсу, ніж безпосередньо порівнювати рядки, з яких вони побудовані. Можливо, ваша техніка будівництва FSA підкреслює деякі особливості, які ви вважаєте важливими. Тоді нам потрібно знати, як вони можуть виглядати, щоб зрозуміти, що має значення. Це повертається до: що подібне, яка метрика. Це питання не має сенсу.
babou

Відповіді:


1

у вас може бути більше удачі з іншого ракурсу і дивлячись на дослідження подібності музичних творів, є дослідники, які вивчають це, і хоча ваш підхід може працювати, є й інші підходи. Є велика база даних, яка розглядає багато елементів / критеріїв, таких як лірика, жанр тощо. Наприклад, проект "Музичний геном" .

іноді, коли існує широкий спектр алгоритмів, опитування може допомогти. ось два опитування щодо відповідності графіків.


0

Оскільки FSA - це спрямовані графіки, ваше запитання можна узагальнити як "алгоритм вимірювання подібності між спрямованими графіками". Пошук у Google за "алгоритмом подібності графіків" дає сторінки та сторінки звернень, можливо, одна з цих підходить для ваших цілей?

Після того, як різниця між FSA та загальними діаграфами буде крайовими мітками або символами переходу у FSA, тож вам доведеться змінити ці алгоритми, щоб врахувати це.


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