2010-06-03 44 views
5

Tôi đang tìm một số hướng dẫn về những kỹ thuật/thuật toán nào tôi nên nghiên cứu để giải quyết vấn đề sau. Tôi hiện đang có một thuật toán tập hợp các tập tin mp3 có âm tương tự bằng cách sử dụng vân tay âm thanh. Trong mỗi cụm, tôi có tất cả các siêu dữ liệu khác nhau (bài hát/nghệ sĩ/album) cho mỗi tệp. Đối với cụm đó, tôi muốn chọn siêu dữ liệu bài hát/nghệ sĩ/album "tốt nhất" khớp với hàng hiện có trong cơ sở dữ liệu của tôi hoặc nếu không có kết quả phù hợp nhất, hãy quyết định chèn một hàng mới.Thuật toán học máy để phân loại dữ liệu.

Đối với một cụm, thường có một số siêu dữ liệu chính xác, nhưng những file riêng biệt có nhiều loại của các vấn đề:

  • Artist/bài hát là hoàn toàn misnamed, hoặc chỉ hơi gõ sai
  • nghệ sĩ/bài hát/album bị thiếu, nhưng phần còn lại của thông tin là có
  • bài hát thực sự là bản ghi trực tiếp nhưng chỉ một số tệp trong cụm được gắn nhãn như vậy.
  • có thể có rất ít siêu dữ liệu, trong một số trường hợp chỉ là tên tập tin, mà có thể là nghệ sĩ - song.mp3, hoặc nghệ sĩ - album - song.mp3, hoặc một biến thể

Một bầu cử đơn giản công trình thuật toán khá tốt, nhưng tôi muốn có một cái gì đó tôi có thể đào tạo trên một bộ dữ liệu lớn có thể nhận được nhiều sắc thái hơn những gì tôi đã có ngay bây giờ. Bất kỳ liên kết đến các giấy tờ hoặc dự án tương tự sẽ được đánh giá rất nhiều.

Cảm ơn!

+0

Câu hỏi hay - Tôi quan tâm để xem những gì mọi người nghĩ ra ở đây. Tôi tự hỏi nếu có thể một số loại phương pháp học quyết định cây có thể giúp xác định bài hát "tốt nhất" trong một cụm sao? Tất nhiên các trang wiki về học tập không được giám sát hoặc học máy có thể cung cấp cho bạn một số cảm hứng hơn. – awshepard

+1

Hãy thử xem một số bài giảng ở đây: [Khóa học máy] (https://www.coursera.org/course/ml) khi chúng bao gồm nhiều kỹ thuật áp dụng. – mlepage

Trả lời

2

Khoảng cách Levenshtein là thước đo để đo khoảng cách "" giữa hai chuỗi. Nó đếm số hoạt động để thay đổi một chuỗi thành chuỗi khác bằng cách thêm/xóa/thay đổi ký tự.

Bạn có thể sử dụng thuật toán này để giúp giải quyết các lỗi chính tả. Nếu hai chuỗi rất gần thì đó có thể là lỗi chính tả.

http://en.wikipedia.org/wiki/Levenshtein_distance

3

Nếu tôi hiểu vấn đề của bạn một cách chính xác, bạn có một kỹ thuật hiện có để phân chia bài hát, vv thành các cụm và bây giờ muốn chọn một ví dụ "tốt nhất" trong những nội dung của cụm đó dựa trên bất cứ điều gì đặc điểm xác định là.

Tôi sẽ xem Bayesian classifiers. Chúng có thể giúp suy ra các đặc điểm xác định khóa của bất kỳ cụm nào trong dữ liệu của bạn (giả sử rằng cụm không dựa trên phân loại rõ ràng, được xác định rõ) cũng như cung cấp khả năng chịu nhiễu và lỗi trong siêu dữ liệu hoặc các tham số khác. Sau đó, tùy thuộc vào bản chất của dữ liệu và các cụm của bạn, bạn có thể sử dụng các phương pháp lấy mẫu maximum likelihood hoặc để xác định một hoặc nhiều ví dụ điển hình nhất từ ​​một cụm nhất định.

Phương pháp Bayes cũng có thể hữu ích để suy ra dữ liệu bị thiếu, ví dụ: thiếu giá trị siêu dữ liệu. Phân phối mẫu có thể được sử dụng để tạo ra các giá trị có khả năng cho dữ liệu bị thiếu dựa trên các giá trị đã biết trong các trường dữ liệu khác.

Các vấn đề liên quan