FSA 문법 사이의 '유사성'을 측정하는 방법은 무엇입니까?


10

주어진 텍스트 문자열과 모든 하위 문자열을 허용하는 비 주기적 유한 상태 자동 생성기를 생성하는 패턴 일치 알고리즘을 사용하고 있습니다. FSA 알고리즘은 음악 스트림 (예 : MIDI 데이터)을 상징적으로 표현하고 있습니다. 음악 스트림은 각 노래를 레이블이없는 '세그먼트'로 나누기 위해 사전 처리되었습니다. FSA는 각각의 노래의 각 세그먼트에 대해 생성된다 : I가있는 경우에 곡을 각각으로 분할 Y 세그먼트, I는 것이다 N Y 별도 FSAs한다.와이와이

각 세그먼트의 FSA를 제 말뭉치의 다른 FSA와 비교하고 싶습니다. 궁극적 목표는 유사성 공간 내에서 클러스터링을 수행하고 구성 지표가 얼마나 유사한 지에 따라 세그먼트의 '클래스'를 만드는 것입니다. 따라서, 각 FSA가 정의한 문법이 특히 중요하다 (세그먼트 내의 음악 컨텐츠의 대략 특정 구성 요소에 대응함). 이와 같은 것을 비교하는 데 유용한 기술이 있습니까? 더 나은 /보다 효율적인 기술이있을 수 있지만 KL- 분산이 생각납니다 (예를 들어, 주어진 FSA와 관련된 문자열에 대한 분포를 비교하는 것 사용)?

또한이 질문이 (1) 사소한 편이거나 (2) 더 깊은 오해를 나타내는 것이거나 (3) 다른 곳에서 대답 한 경우에 사과드립니다. 나는 진짜 멍청 아, 여러분!


3
"유사한"의 의미를 알려 주셔야합니다. 측정 항목을 선택해야합니다. 모든 목적에 적합한 하나의 올바른 지표는 없습니다. 추가 정보가 없으면 사용할 측정 항목을 알려 드릴 수 없습니다. 유사성을 측정하려는 이유, 유사성 메트릭 결과로 수행 할 작업 및 수행 한 연구를 설명하기 위해 질문을 편집하는 것이 좋습니다. 문자열에서 파생 된 FSA의 유사성을 측정하는 대신 기본 문자열 간의 유사성 측정을 살펴 보는 것으로 시작할 수 있습니다. 편집 거리가 떠 오릅니다.
DW

있습니다 많은 문자열 메트릭 ; 당신을 위해 일하는 것은 달려 있습니다. (참고 : 해당 기사에 나열된 문자열 "메트릭"중 일부는 실제로 수학적인 의미가 아닙니다.)
Raphael

문자열 메트릭은 좋지만 내가 추구하는 것은 아닙니다. 특정 문자열을 서로 비교하는 대신 해당 문자열을 생성 할 수있는 규칙 시스템 (공식 문법 / FSA)을 비교하고 싶습니다. 특정 문자열을 생성 할 수있는 문법이 무한히 많으므로 특정 규칙 집합을 사용하여 작성된 문법 (FSA)으로 검색을 제한하고 있습니다. 나는 두 개의 개별 문자열이 주어진 문자열로 메트릭 공식적으로 유사한있어서되는 경우가있을 수 있습니다 생각하지만 문법은 그들이 매우 다르다 생산하는 데 필요한
플립

문제 설명에서 각 FSA는 하나의 문자열과 모든 하위 문자열을 허용합니다. 기본적으로이 FSA는 허용되는 가장 긴 문자열을 특징으로합니다. 그것의 전체 구조는 그것에서 파생됩니다. 따라서 FSA를 구성하는 문자열을 직접 비교하는 것보다 FSA를 비교하는 데 아무런 의미가 없습니다. FSA 구성 기술이 중요하다고 생각하는 일부 기능을 강조 할 수도 있습니다. 그런 다음 중요한 내용을 이해하기 위해 모양이 어떤지 알아야합니다. 그것은 무엇이 비슷한 지, 어떤 지표인지에 관한 것입니다. 이 질문은 말이되지 않습니다.
babou

답변:


1

당신은 다른 각도에서 더 많은 운을 가질 수 있고 음악 작품의 유사성에 대한 연구를 조사 할 수 있습니다. 가사, 장르 등과 같은 많은 요소 / 기준을 보는 큰 데이터베이스가 있습니다 (예 : 음악 게놈 프로젝트) .

때로는 다양한 알고리즘이있을 때 설문 조사가 도움이 될 수 있습니다. 다음은 그래프 일치에 대한 두 가지 설문 조사입니다.


0

FSA는 유 방향 그래프이므로 질문은 "유향 그래프 간의 유사성을 측정하기위한 알고리즘"으로 일반화 할 수 있습니다. "그래프 유사성 알고리즘"에 대한 Google 검색은 페이지 및 페이지 히트를 제공합니다. 그 중 하나가 귀하의 목적에 적합할까요?

FSA와 일반 이중 그래프의 차이점이 에지 레이블 또는 FSA의 전이 기호가되면이를 고려하여 이러한 알고리즘을 수정해야합니다.


이와 같은 방법은 일부 주요 속성을 놓치게됩니다. 예를 들어, 동일한 언어의 다른 표현이 완전한 유사성을 갖기를 원할 수 있지만, 그래프를 비교하면 다른 언어와 동일한 언어에 대해 두 개의 오토마타가보고 될 수 있습니다.
jmite
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.