5

Tôi có nhiều văn bản (triệu), từ 100 đến 4000 từ. Các văn bản được định dạng dưới dạng văn bản, với dấu chấm câu và ngữ pháp. Mọi thứ đều bằng tiếng Anh.Trích xuất một cách hiệu quả các thực thể WikiData từ văn bản

Vấn đề rất đơn giản: Làm thế nào để trích xuất mọi thực thể WikiData từ một văn bản nhất định?

Một pháp nhân được định nghĩa là mỗi danh từ, đúng hoặc thông thường. Ví dụ, tên của những người, tổ chức, địa điểm và những thứ như ghế, khoai tây, vv

Cho đến nay tôi đã thử những điều sau đây:

  1. tokenize văn bản với OpenNLP, và sử dụng các pre-trained models để trích xuất người, vị trí, tổ chức và thường xuyên danh từ .
  2. Áp dụng Porter Stemming nếu có.
  3. Đối sánh tất cả các danh từ được trích xuất với số wmflabs-API để truy xuất ID WikiData tiềm năng.

Điều này hoạt động, nhưng tôi cảm thấy mình có thể làm tốt hơn. Một cải tiến rõ ràng sẽ là cache các phần có liên quan của WikiData cục bộ, mà tôi dự định làm. Tuy nhiên, trước khi tôi làm điều đó, tôi muốn kiểm tra xem có những giải pháp nào khác không.

Đề xuất?

Tôi đã gắn thẻ câu hỏi Scala vì tôi đang sử dụng Spark cho tác vụ.

Trả lời

2

Một số gợi ý:

  • xem xét Stanford NER so với OpenNLP để xem nó như thế nào so sánh trên corpus của bạn
  • Tôi tự hỏi tại giá trị của việc ngăn chặn đối với hầu hết các tên thực thể
  • tôi nghi ngờ có lẽ bạn mất thông tin bằng cách chia nhiệm vụ thành các giai đoạn rời rạc
  • mặc dù Wikidata là mới, nhiệm vụ không phải là, vì vậy bạn có thể xem các giấy tờ cho Freebase | DBpedia | Wikipedia nhận dạng đối tượng | disambiguation

Đặc biệt, DBpedia Spotlight là một hệ thống được thiết kế cho chính xác tác vụ này.

http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/38389.pdf http://ceur-ws.org/Vol-1057/Nebhi_LD4IE2013.pdf

+0

Xuất phát là thực sự chỉ được thực hiện trên các danh từ được xác định là không thích hợp và số nhiều, mà không phải là đa số. Cảm ơn các bài báo/chỉ ra tiêu điểm dbpedia. Tôi không biết về những điều này. – habitats

+1

DBpedia thực sự được liên kết với Wikidata, vì vậy tôi sẽ đánh dấu câu trả lời của bạn là được chấp nhận, vì tôi có thể sử dụng DBpedia spotlight để tìm DBpedia ID, và sử dụng Sparql + RDF để lấy ID của Wikidata trực tiếp. – habitats

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