Tôi đang làm việc với một thuật toán khớp mẫu để tạo ra một máy tự động trạng thái hữu hạn theo chu kỳ chấp nhận một chuỗi văn bản nhất định và tất cả các chuỗi con của nó. Thuật toán FSA đang được chạy trên một biểu tượng tượng trưng của luồng nhạc (ví dụ: dữ liệu MIDI). Luồng âm nhạc đã được xử lý trước để chia mỗi bài hát thành các "phân đoạn" không được gắn nhãn. Một FSA được tạo ra cho từng phân khúc trong mỗi bài hát: nếu tôi có bài hát, mỗi chia thành phân đoạn, tôi sẽ có FSAs riêng biệt.y n ⋅ y
Tôi muốn so sánh FSA của từng phân khúc với các FSA khác trong kho của tôi. Mục tiêu cuối cùng sẽ là phân cụm trong một không gian tương tự và đưa ra 'các lớp' các phân đoạn theo mức độ tương tự của các số liệu xây dựng của chúng. Do đó, mối quan tâm đặc biệt là các ngữ pháp mà mỗi FSA định nghĩa (tương ứng gần như một số thành phần nhất định của nội dung âm nhạc trong phân khúc). Có kỹ thuật nào có thể tốt để so sánh một cái gì đó như thế này không? Phân kỳ KL xuất hiện trong tâm trí (ví dụ: sử dụng nó để so sánh phân phối trên các chuỗi liên kết với một FSA nhất định), mặc dù có thể có các kỹ thuật tốt hơn / hiệu quả hơn?
Ngoài ra, xin lỗi nếu câu hỏi này là (1) dễ dàng tầm thường hoặc (2) chỉ ra một số hiểu lầm sâu sắc hơn hoặc (3) trả lời ở nơi khác. Tôi là một người thực sự, folks!