Phương pháp có thể phù hợp ở đây, đặc biệt nếu bản thể luận lớn/phức tạp hoặc có thể thay đổi trong tương lai và giả định rằng một số lỗi có thể chấp nhận được, là học máy.
Một phác thảo của một quá trình sử dụng phương pháp này có thể là:
- Xác định một tính năng thiết lập, bạn có thể trích xuất từ mỗi chuỗi, liên quan đến ontology của bạn (một số ví dụ dưới đây).
- Thu thập "bộ tàu" của các chuỗi và danh mục đối sánh thực sự của chúng.
- Trích xuất các tính năng từ mỗi chuỗi và đào tạo một số thuật toán học máy trên dữ liệu này.
- Sử dụng mô hình được đào tạo để phân loại chuỗi mới.
- Đào tạo lại hoặc cập nhật mô hình của bạn nếu cần (ví dụ: khi thêm danh mục mới).
Để minh họa cụ thể hơn, dưới đây là một số đề xuất dựa trên ví dụ bản thể luận của bạn.
Một số tính năng boolean có thể áp dụng: chuỗi có khớp với regexp hay không (ví dụ: các đối tượng địa lý Qtax gợi ý); chuỗi tồn tại trong danh sách tên thành phố đã được dựng trước; nó tồn tại trong một danh sách tên quốc gia đã biết; sự tồn tại của các chữ in hoa; độ dài chuỗi (không boolean), v.v.
Vì vậy, nếu, ví dụ: bạn có tổng cộng 8 đối tượng địa lý: phù hợp với 4 cụm từ thông dụng được đề cập ở trên; và 4 bổ sung được đề xuất ở đây, sau đó "Tây Ban Nha" sẽ được biểu thị là (1,1,0,0,1,0,1,5) (khớp với 2 cụm từ thông dụng đầu tiên nhưng không phải là hai cụm từ cuối cùng, là tên thành phố nhưng không phải tên quốc gia, có chữ hoa và chiều dài là 5).
Bộ tính năng này sẽ đại diện cho bất kỳ chuỗi nhất định nào.
để đào tạo và kiểm tra thuật toán học máy, bạn có thể sử dụng WEKA. Tôi sẽ bắt đầu từ các thuật toán dựa trên quy tắc hoặc dựa trên cây, ví dụ: PART, RIDOR, JRIP hoặc J48.
Sau đó, các mô hình được đào tạo có thể được sử dụng qua Weka hoặc từ bên trong Java hoặc dưới dạng dòng lệnh ngoài. Rõ ràng, các tính năng tôi đề nghị có gần như 1: 1 phù hợp với Ontology của bạn, nhưng giả sử phân loại của bạn là lớn hơn và phức tạp hơn, cách tiếp cận này có lẽ sẽ là một trong những tốt nhất về hiệu quả chi phí.
Một chuỗi có thể là cả tên thành phố và tên quốc gia (tốt, khái niệm dựa trên các sự kiện được đưa ra). Một bản thể luận không cần phải có thừa kế đơn lẻ. –