Bộ công cụ ngôn ngữ tự nhiên - Giới thiệu
Xử lý ngôn ngữ tự nhiên (NLP) là gì?
Phương thức giao tiếp với sự trợ giúp mà con người có thể nói, đọc và viết, là ngôn ngữ. Nói cách khác, con người chúng ta có thể suy nghĩ, lập kế hoạch, đưa ra quyết định bằng ngôn ngữ tự nhiên của mình. Ở đây câu hỏi lớn được đặt ra là trong thời đại trí tuệ nhân tạo, máy học và học sâu, liệu con người có thể giao tiếp bằng ngôn ngữ tự nhiên với máy tính / máy móc không? Phát triển các ứng dụng NLP là một thách thức rất lớn đối với chúng tôi vì máy tính yêu cầu dữ liệu có cấu trúc, nhưng mặt khác, lời nói của con người là không có cấu trúc và thường mơ hồ về bản chất.
Ngôn ngữ tự nhiên là lĩnh vực con của khoa học máy tính, cụ thể hơn là của AI, cho phép máy tính / máy móc hiểu, xử lý và vận dụng ngôn ngữ của con người. Nói một cách dễ hiểu, NLP là một cách máy móc phân tích, hiểu và rút ra ý nghĩa từ các ngôn ngữ tự nhiên của con người như tiếng Hindi, tiếng Anh, tiếng Pháp, tiếng Hà Lan, v.v.
Làm thế nào nó hoạt động?
Trước khi đi sâu vào hoạt động của NLP, chúng ta phải hiểu cách con người sử dụng ngôn ngữ. Mỗi ngày, con người chúng ta sử dụng hàng trăm hoặc hàng nghìn từ và những con người khác giải thích chúng và trả lời tương ứng. Đó là một giao tiếp đơn giản của con người, phải không? Nhưng chúng ta biết từ ngữ còn sâu sắc hơn thế nhiều và chúng ta luôn lấy bối cảnh từ những gì chúng ta nói và cách chúng ta nói. Đó là lý do tại sao chúng ta có thể nói thay vì tập trung vào điều chế giọng nói, NLP thực hiện dựa trên mẫu ngữ cảnh.
Hãy để chúng tôi hiểu nó với một ví dụ -
Man is to woman as king is to what?
We can interpret it easily and answer as follows:
Man relates to king, so woman can relate to queen.
Hence the answer is Queen.
Làm thế nào con người biết từ có nghĩa là gì? Câu trả lời cho câu hỏi này là chúng tôi học được qua kinh nghiệm của mình. Nhưng, làm thế nào để máy móc / máy tính học giống nhau?
Hãy để chúng tôi hiểu nó với các bước đơn giản sau:
Đầu tiên, chúng ta cần cung cấp cho máy đủ dữ liệu để máy rút kinh nghiệm.
Sau đó, máy sẽ tạo ra các vectơ từ, bằng cách sử dụng các thuật toán học sâu, từ dữ liệu chúng ta đã cung cấp trước đó cũng như từ dữ liệu xung quanh của nó.
Sau đó, bằng cách thực hiện các phép toán đại số đơn giản trên các vectơ từ này, máy sẽ có thể cung cấp câu trả lời như con người.
Các thành phần của NLP
Sơ đồ sau thể hiện các thành phần của xử lý ngôn ngữ tự nhiên (NLP) -
Xử lý hình thái
Xử lý hình thái là thành phần đầu tiên của NLP. Nó bao gồm việc chia nhỏ các đầu vào ngôn ngữ thành các bộ mã thông báo tương ứng với các đoạn văn, câu và từ. Ví dụ, một từ như“everyday” có thể được chia thành hai mã thông báo từ phụ như “every-day”.
Phân tích cú pháp
Phân tích cú pháp, thành phần thứ hai, là một trong những thành phần quan trọng nhất của NLP. Mục đích của thành phần này như sau:
Để kiểm tra xem một câu có được hình thành tốt hay không.
Để chia nó thành một cấu trúc thể hiện mối quan hệ cú pháp giữa các từ khác nhau.
Vd: Những câu như “The school goes to the student” sẽ bị từ chối bởi trình phân tích cú pháp.
Phân tích ngữ nghĩa
Phân tích ngữ nghĩa là thành phần thứ ba của NLP được sử dụng để kiểm tra ý nghĩa của văn bản. Nó bao gồm việc vẽ nghĩa chính xác, hoặc chúng ta có thể nói nghĩa từ điển từ văn bản. Ví dụ: Những câu như "Đó là một cây kem nóng." sẽ bị loại bỏ bởi trình phân tích ngữ nghĩa.
Phân tích thực dụng
Phân tích thực dụng là thành phần thứ tư của NLP. Nó bao gồm việc kết hợp các đối tượng hoặc sự kiện thực tế tồn tại trong mỗi ngữ cảnh với các tham chiếu đối tượng có được bởi thành phần trước đó tức là phân tích ngữ nghĩa. Vd: Những câu như“Put the fruits in the basket on the table” có thể có hai cách giải thích ngữ nghĩa do đó bộ phân tích thực dụng sẽ chọn giữa hai khả năng này.
Ví dụ về ứng dụng NLP
NLP, một công nghệ mới nổi, tạo ra nhiều dạng AI khác nhau mà chúng ta thường thấy ngày nay. Đối với các ứng dụng ngày càng tăng của ngày nay và ngày mai, việc sử dụng NLP trong việc tạo ra một giao diện tương tác và liền mạch giữa con người và máy móc sẽ tiếp tục là ưu tiên hàng đầu. Sau đây là một số ứng dụng rất hữu ích của NLP.
Dịch máy
Dịch máy (MT) là một trong những ứng dụng quan trọng nhất của xử lý ngôn ngữ tự nhiên. MT về cơ bản là một quá trình dịch một ngôn ngữ nguồn hoặc văn bản sang một ngôn ngữ khác. Hệ thống dịch máy có thể là Song ngữ hoặc Đa ngôn ngữ.
Chống Spam
Do số lượng email không mong muốn tăng lên rất nhiều, các bộ lọc thư rác trở nên quan trọng vì nó là tuyến phòng thủ đầu tiên chống lại vấn đề này. Bằng cách coi các vấn đề dương tính giả và tiêu cực giả là những vấn đề chính, chức năng của NLP có thể được sử dụng để phát triển hệ thống lọc thư rác.
Mô hình N-gram, Lập trình từ và phân loại Bayes là một số mô hình NLP hiện có có thể được sử dụng để lọc thư rác.
Truy xuất thông tin & tìm kiếm trên web
Hầu hết các công cụ tìm kiếm như Google, Yahoo, Bing, WolframAlpha, v.v., dựa trên công nghệ dịch máy (MT) của họ dựa trên mô hình học sâu NLP. Các mô hình học sâu như vậy cho phép các thuật toán đọc văn bản trên trang web, diễn giải ý nghĩa của nó và dịch nó sang một ngôn ngữ khác.
Tóm tắt văn bản tự động
Tóm tắt văn bản tự động là một kỹ thuật tạo ra một bản tóm tắt ngắn, chính xác của các tài liệu văn bản dài hơn. Do đó, nó giúp chúng tôi nhận được thông tin liên quan trong thời gian ngắn hơn. Trong kỷ nguyên kỹ thuật số này, chúng ta đang rất cần bản tóm tắt văn bản tự động vì chúng ta có một lượng lớn thông tin qua internet sẽ không dừng lại. NLP và các chức năng của nó đóng một vai trò quan trọng trong việc phát triển một bản tóm tắt văn bản tự động.
Sửa ngữ pháp
Sửa lỗi chính tả & sửa ngữ pháp là một tính năng rất hữu ích của phần mềm xử lý văn bản như Microsoft Word. Xử lý ngôn ngữ tự nhiên (NLP) được sử dụng rộng rãi cho mục đích này.
Trả lời câu hỏi
Trả lời câu hỏi, một ứng dụng chính khác của xử lý ngôn ngữ tự nhiên (NLP), tập trung vào việc xây dựng các hệ thống tự động trả lời câu hỏi do người dùng đăng bằng ngôn ngữ tự nhiên của họ.
Phân tích tình cảm
Phân tích cảm xúc là một trong những ứng dụng quan trọng khác của xử lý ngôn ngữ tự nhiên (NLP). Như tên gọi của nó, Phân tích cảm xúc được sử dụng để -
Xác định tình cảm giữa một số bài đăng và
Xác định tình cảm mà cảm xúc không được thể hiện rõ ràng.
Các công ty thương mại điện tử trực tuyến như Amazon, ebay, v.v., đang sử dụng phân tích tâm lý để xác định ý kiến và cảm nhận của khách hàng trực tuyến. Nó sẽ giúp họ hiểu khách hàng nghĩ gì về sản phẩm và dịch vụ của họ.
Công cụ nói
Các công cụ nói như Siri, Google Voice, Alexa được xây dựng trên NLP để chúng ta có thể giao tiếp với chúng bằng ngôn ngữ tự nhiên của mình.
Thực hiện NLP
Để xây dựng các ứng dụng nói trên, chúng ta cần có một bộ kỹ năng cụ thể với sự hiểu biết sâu rộng về ngôn ngữ và các công cụ để xử lý ngôn ngữ một cách hiệu quả. Để đạt được điều này, chúng tôi có sẵn nhiều công cụ mã nguồn mở khác nhau. Một số trong số chúng có nguồn mở trong khi một số khác được các tổ chức phát triển để xây dựng các ứng dụng NLP của riêng họ. Sau đây là danh sách một số công cụ NLP -
Bộ công cụ ngôn ngữ tự nhiên (NLTK)
Mallet
GATE
Mở NLP
UIMA
Genism
Bộ công cụ Stanford
Hầu hết các công cụ này được viết bằng Java.
Bộ công cụ ngôn ngữ tự nhiên (NLTK)
Trong số các công cụ NLP được đề cập ở trên, NLTK đạt điểm rất cao khi dễ sử dụng và giải thích khái niệm. Đường cong học tập của Python rất nhanh và NLTK được viết bằng Python nên NLTK cũng đang có bộ học tập rất tốt. NLTK đã kết hợp hầu hết các nhiệm vụ như mã hóa, tạo gốc, bổ sung, chấm câu, đếm ký tự và đếm từ. Nó rất thanh lịch và dễ làm việc.