2
วิธีการวัด 'ความเหมือน' ระหว่างไวยากรณ์ FSA หรือไม่
ฉันกำลังทำงานกับอัลกอริธึมการจับคู่รูปแบบที่สร้างออโตเมติกสถานะ จำกัด แบบวนรอบซึ่งยอมรับสตริงข้อความที่กำหนดและสตริงย่อยทั้งหมด อัลกอริทึม FSA กำลังทำงานบนการแสดงสัญลักษณ์ของสตรีมเพลง (เช่นข้อมูล MIDI) สตรีมเพลงได้รับการประมวลผลล่วงหน้าเพื่อแบ่งแต่ละเพลงออกเป็น 'ส่วน' ที่ไม่มีป้ายกำกับ FSA ถูกสร้างขึ้นสำหรับแต่ละกลุ่มในแต่ละเพลงถ้าฉันมีเพลงแต่ละแบ่งออกเป็นปีส่วนฉันจะมีn ⋅ Y FSAs แยกต่างหากnnnYYyn ⋅ yn⋅Yn \cdot y ฉันต้องการเปรียบเทียบ FSA ของแต่ละกลุ่มกับ FSA อื่น ๆ ในคลังข้อมูลของฉัน เป้าหมายสูงสุดคือการทำคลัสเตอร์ในพื้นที่ที่คล้ายคลึงกันและเกิดขึ้นกับ 'คลาส' ของเซ็กเมนต์ตามเมตริกการก่อสร้างที่คล้ายคลึงกัน ดังนั้นสิ่งที่น่าสนใจเป็นพิเศษคือไวยากรณ์ที่ FSA แต่ละรายการกำหนด (ที่สอดคล้องกันอย่างคร่าว ๆ ส่วนประกอบบางส่วนของเนื้อหาดนตรีในเซ็กเมนต์) มีเทคนิคที่อาจดีสำหรับการเปรียบเทียบสิ่งนี้ KL-divergence อยู่ในใจ (เช่นใช้เปรียบเทียบการกระจายข้ามสตริงที่เกี่ยวข้องกับ FSA ที่กำหนด) แม้ว่าอาจมีเทคนิคที่ดีกว่า / มีประสิทธิภาพมากกว่านี้หรือไม่? นอกจากนี้ยังต้องขออภัยหากคำถามนี้เป็นเพียง (1) ง่ายเล็กน้อยหรือ (2) …