Có thư viện xử lý ngôn ngữ tự nhiên tốt không [đã đóng cửa]


90

Tôi cần triển khai một số NLP trong mô-đun hiện tại của mình. Tôi đang tìm kiếm một số thư viện tốt có thể giúp tôi ở đây. Tôi đã xem qua 'LingPipe' nhưng không thể hoàn toàn làm theo cách sử dụng nó.
Về cơ bản, chúng ta cần triển khai một tính năng mà ứng dụng có thể giải mã các hướng dẫn của khách hàng (hướng dẫn giao hàng) được nhập bằng tiếng Anh đơn giản. Ví dụ:

  • Sẽ đến đón lúc 12:00 trưa ngày mai
  • Yêu cầu giao hàng sau ngày 10 tháng 6
  • Vui lòng không gửi trước Thứ Tư
  • Thêm 10 đơn vị XYZ nữa vào đơn đặt hàng

Câu trả lời:


78

LingPipe rất hay và được ghi chép đầy đủ. Bạn cũng có thể xem qua:

Điều cuối cùng cụ thể có thể được bạn quan tâm, mặc dù tôi không biết liệu có bất kỳ triển khai Java nào có sẵn hay không (và có thể điều đó quá lớn đối với vấn đề của bạn :-)

Ý tưởng của Paul về việc sử dụng DSL có lẽ dễ thực hiện hơn và nhanh hơn và đáng tin cậy hơn để sử dụng cho khách hàng của bạn. Tôi cũng vậy, khuyên bạn nên xem xét điều đó trước.


1
Tôi đã trình bày báo cáo của mình dựa trên những thông tin đầu vào mà tôi thu thập được từ diễn đàn này và những nơi khác trên mạng. Tôi cũng đề xuất các tùy chọn khác mà bạn đã đề xuất và Biz đã quyết định giữ nguyên điều này (Bây giờ hãy bắt đầu R&D để tìm ra ứng viên tốt nhất có thể).
Vini

1
Nếu bạn so sánh LingPipe và những người khác mà bạn đã liệt kê thì bạn thích cái nào hơn? Tôi hỏi điều này không chỉ cụ thể cho câu hỏi của @ Winnie, tôi hỏi nó cho mục đích chung.
kamaci

1
Xem MALLET: mallet.cs.umass.edu
Samik R

11

Tôi nghĩ việc bạn có chọn sử dụng NLP hay không có thể phụ thuộc vào các yêu cầu cụ thể đối với hệ thống của bạn. Nó có phải là một yêu cầu rằng tiếng Anh dạng tự do nên được chấp nhận hay chỉ một bộ hướng dẫn nhất định được chấp nhận? Có thể dễ dàng hơn để xây dựng một ngôn ngữ dành riêng cho miền hỗ trợ những gì người dùng của bạn cần truyền tải hơn là thực hiện phân tích ngữ nghĩa đầy đủ của văn bản dạng tự do.

Trong không gian Java, Groovy có một số hỗ trợ để xây dựng các DSL .


Dưới đây là một vài dòng từ tài liệu yêu cầu: '.. và người dùng có thể nhập ghi chú hoặc hướng dẫn đặc biệt bằng tiếng Anh đơn giản. Sau đó, hệ thống sẽ phân tích cú pháp hướng dẫn người dùng và điền vào các trường liên quan (nếu có) của đơn hàng với các giá trị chính xác. "
Vini

10
Đó là một yêu cầu khá mơ hồ. Ví dụ, ghi chú có phải đúng ngữ pháp không? Tôi không chắc liệu các bên đưa ra các yêu cầu có quen thuộc với trạng thái của NLP hay không, nhưng vấn đề mà họ mô tả về cơ bản là đọc hiểu, hoặc hiểu ngôn ngữ tự nhiên, một trong những vấn đề được mô tả là 'thánh chén của NLP. Tôi nghi ngờ rằng bạn sẽ tìm thấy một gói có thể 'làm điều này' cho bạn - có lẽ thực tế hơn nhiều khi cung cấp cho người dùng một giao diện người dùng mà họ có thể chỉ định một số hướng dẫn đặc biệt hạn chế.
Paul Morie

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.