Kỹ thuật Machine Learning để học các mẫu chuỗi


11

Tôi có một danh sách các từ, thuộc các loại tự xác định khác nhau. Mỗi danh mục có mẫu riêng (ví dụ: một loại có độ dài cố định với các ký tự đặc biệt, một loại khác tồn tại các ký tự chỉ xuất hiện trong danh mục "từ" này, ...).

Ví dụ:

"ABC" -> type1
"ACC" -> type1
"a8 219" -> type2
"c 827" -> type2
"ASDF 123" -> type2
"123123" -> type3
...

Tôi đang tìm kiếm một kỹ thuật học máy để tự học các mẫu này, dựa trên dữ liệu đào tạo. Tôi đã cố gắng tự xác định một số biến dự đoán (ví dụ: wordlength, số ký tự đặc biệt, ...) và sau đó sử dụng Mạng nơ-ron để tìm hiểu và dự đoán danh mục. Nhưng đó không phải là điều tôi muốn. Tôi muốn có một kỹ thuật để tự học mẫu cho từng loại - thậm chí để học các mẫu mà tôi chưa bao giờ nghĩ tới.

Vì vậy, tôi đưa ra dữ liệu học thuật toán (bao gồm các ví dụ về danh mục từ) và muốn nó học các mẫu cho từng loại để dự đoán sau danh mục từ các từ tương tự hoặc bằng nhau.

Có một cách hiện đại để làm điều đó?

Cảm ơn bạn đã giúp đỡ


Theo quan điểm của tôi, bạn có thể thực hiện smth như cistrome.org/cr/images/Figure4.png này , nhưng thay vì ACGT, bạn có thể sử dụng các mẫu như "số, chữ hoa, chữ thường, dấu cách", v.v.
Đức Demidov

@GermanDemidov cảm ơn vì nhận xét của bạn. tôi đã nghĩ về một cái gì đó như thế này. Nhưng tôi thực sự muốn các thuật toán học tập tự làm và phát hiện các mẫu. (Tôi không biết nếu ML có thể).
chresse

thực sự mô hình này là máy học. Tất nhiên bạn có thể làm điều đó với học máy, nhưng một người cần thực hiện trích xuất tính năng trước khi đưa nó làm đầu vào cho thuật toán ML. Những tính năng bạn sẽ trích xuất từ ​​ví dụ này? Tôi có thể nghĩ về các hàm băm, nhưng nó sẽ hoạt động khá tệ đối với các chuỗi có độ dài không bằng nhau. Vì vậy, vì bạn sẽ tìm cách trích xuất các tính năng, bạn sẽ có thể sử dụng các phương thức ML. Bạn cũng có thể thực hiện smth như khoảng cách Levenshtein giữa các biểu tượng của các lớp khác nhau, phân cụm chúng và sử dụng khoảng cách tối thiểu đến centroid để phân loại.
Đức Demidov

@chresse bạn có thể muốn thêm thẻ học tập không giám sát vào câu hỏi của mình. Để làm điều này với các mạng thần kinh, này giấy LeCun có thể quan tâm. Vì tôi không có nhiều kinh nghiệm về khai thác văn bản hoặc mạng lưới thần kinh, tôi không thể nói phương pháp này có thể tốt như thế nào.
GeoMatt22

1
Vì vậy, hãy biến đổi các vectơ của bạn bằng các tính năng bạn sử dụng một cách tự nhiên (u - chữ hoa, l - chữ thường, n - số, s - dấu cách), vì vậy các vectơ của bạn sẽ là "ABC" - "uuu", "a8 219" - "lnsnnn" và như vậy trên. Sau đó, bạn cần giới thiệu một số thước đo khoảng cách, ví dụ, bằng cách sử dụng thuật toán này: en.wikipedia.org/wiki/Smith mậtWaterman_alacticm. Sau này, bạn sẽ có thể thực hiện phân loại / phân cụm / trực quan hóa dữ liệu của mình.
Đức Demidov

Câu trả lời:


6

Vấn đề của bạn có thể được phục hồi khi muốn khám phá các biểu thức chính quy sẽ khớp với các chuỗi trong mỗi danh mục không? Đây là một vấn đề "thế hệ regex", một tập hợp con của vấn đề cảm ứng ngữ pháp (xem thêm trang web của Alexander Clark ).

Các vấn đề biểu hiện thường xuyên là dễ dàng hơn. Tôi có thể chỉ cho bạn mã frakRegexGenerator . Các RegexGenerator trực tuyến ++ có tham chiếu đến các giấy tờ học tập của họ về vấn đề này.


5

Bạn có thể thử các mạng thần kinh định kỳ, trong đó đầu vào của bạn là một chuỗi các chữ cái trong từ và đầu ra của bạn là một thể loại. Điều này phù hợp với yêu cầu của bạn sao cho bạn không mã hóa bất kỳ tính năng nào.

Tuy nhiên, để phương pháp này thực sự hoạt động, bạn sẽ cần một bộ dữ liệu đào tạo khá lớn.

Bạn có thể tham khảo Ghi nhãn theo trình tự được giám sát với Mạng thần kinh tái phát của Alex Graves chương 2 để biết thêm chi tiết.

Đây là một liên kết đến bản in sẵn


1
Bạn có thể thêm một trích dẫn đầy đủ cho tài liệu tham khảo cuối cùng của mình không, trong trường hợp liên kết "prerint.pdf" bị phá vỡ trong tương lai? (Tôi tin rằng đây là chương có liên quan?)
GeoMatt22
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.