AI 101

Làm Thế Nào Để Phân Loại Văn Bản Hoạt Động?

mm

Phân loại văn bản là quá trình phân tích các chuỗi văn bản và gán cho chúng một nhãn, đặt chúng vào một nhóm dựa trên nội dung của chúng. Phân loại văn bản là nền tảng của hầu hết các nhiệm vụ trí tuệ nhân tạo (AI) hoặc học máy liên quan đến Xử lý Ngôn ngữ Tự nhiên (NLP). Với phân loại văn bản, một chương trình máy tính có thể thực hiện nhiều nhiệm vụ khác nhau như nhận dạng thư rác, phân tích cảm xúc và chức năng trò chuyện. Làm thế nào để phân loại văn bản hoạt động chính xác? Những phương pháp khác nhau để thực hiện phân loại văn bản là gì? Chúng tôi sẽ khám phá các câu trả lời cho những câu hỏi này dưới đây.

Định Nghĩa Phân Loại Văn Bản

Điều quan trọng là phải dành thời gian để đảm bảo rằng chúng tôi hiểu rõ về phân loại văn bản nói chung trước khi đi sâu vào các phương pháp khác nhau của phân loại văn bản. Phân loại văn bản là một trong những thuật ngữ được áp dụng cho nhiều nhiệm vụ và thuật toán khác nhau, vì vậy nó hữu ích khi đảm bảo rằng chúng tôi hiểu khái niệm cơ bản về phân loại văn bản trước khi tiếp tục khám phá các cách khác nhau để thực hiện nó.

Bất kỳ điều gì liên quan đến việc tạo ra các danh mục khác nhau cho văn bản và sau đó gán nhãn cho các mẫu văn bản khác nhau là các danh mục này có thể được coi là phân loại văn bản. Miễn là một hệ thống thực hiện các bước cơ bản này, nó có thể được coi là một phân loại văn bản, bất kể phương pháp chính xác được sử dụng để phân loại văn bản và bất kể cách phân loại văn bản cuối cùng được áp dụng. Phát hiện thư rác email, tổ chức tài liệu theo chủ đề hoặc tiêu đề và nhận dạng cảm xúc của một đánh giá sản phẩm đều là ví dụ về phân loại văn bản vì chúng được thực hiện bằng cách lấy văn bản làm đầu vào và đầu ra là một nhãn lớp cho đoạn văn bản đó.

Làm Thế Nào Để Phân Loại Văn Bản Hoạt Động?

Photo: Quinn Dombrowski via Flickr, CC BY SA 2.0 , (https://www.flickr.com/photos/quinnanya/4714794045)

Hầu hết các phương pháp phân loại văn bản có thể được đặt vào một trong ba danh mục khác nhau: phương pháp dựa trên quy tắc hoặc phương pháp học máy.

Phương Pháp Phân Loại Dựa Trên Quy Tắc

Phương pháp phân loại văn bản dựa trên quy tắc hoạt động thông qua việc sử dụng các quy tắc ngôn ngữ được thiết kế rõ ràng. Hệ thống sử dụng các quy tắc được tạo bởi kỹ sư để xác định lớp mà một đoạn văn bản nhất định nên thuộc về, tìm kiếm các gợi ý dưới dạng các yếu tố văn bản có liên quan về mặt ngữ nghĩa. Mỗi quy tắc có một mẫu mà văn bản phải khớp để được đặt vào danh mục tương ứng.

Để cụ thể hơn, hãy nói rằng bạn muốn thiết kế một phân loại văn bản có khả năng phân biệt các chủ đề trò chuyện phổ biến, như thời tiết, phim hoặc thực phẩm. Để cho phép phân loại văn bản của bạn nhận ra thảo luận về thời tiết, bạn có thể hướng dẫn nó tìm kiếm các từ liên quan đến thời tiết trong cơ thể của các mẫu văn bản nó đang được cung cấp. Bạn sẽ có một danh sách các từ khóa, cụm từ và mẫu liên quan khác có thể được sử dụng để phân biệt chủ đề. Ví dụ, bạn có thể hướng dẫn phân loại văn bản tìm kiếm các từ như “gió”, “mưa”, “mặt trời”, “tuyết” hoặc “đám mây”. Bạn có thể sau đó cho phân loại văn bản xem xét văn bản đầu vào và đếm số lần các từ này xuất hiện trong cơ thể của văn bản và nếu chúng xuất hiện thường xuyên hơn các từ liên quan đến phim, bạn sẽ phân loại văn bản là thuộc về lớp thời tiết.

Ưu điểm của các hệ thống dựa trên quy tắc là đầu vào và đầu ra của chúng có thể dự đoán và giải thích được bởi con người, và chúng có thể được cải thiện thông qua can thiệp thủ công của kỹ sư. Tuy nhiên, các phương pháp phân loại dựa trên quy tắc cũng khá giòn và chúng thường gặp khó khăn trong việc khái quát hóa vì chúng chỉ tuân theo các mẫu được lập trình trước. Ví dụ, từ “đám mây” có thể đề cập đến độ ẩm trong bầu trời hoặc nó có thể đề cập đến một đám mây kỹ thuật số nơi dữ liệu được lưu trữ. Điều này khó đối với các hệ thống dựa trên quy tắc để xử lý mà không cần kỹ sư dành nhiều thời gian để dự đoán và điều chỉnh cho những sắc thái này.

Hệ Thống Học Máy

Như đã đề cập ở trên, các hệ thống dựa trên quy tắc có hạn chế, vì các chức năng và quy tắc của chúng phải được lập trình trước. Ngược lại, các hệ thống phân loại dựa trên học máy hoạt động bằng cách áp dụng các thuật toán phân tích các tập dữ liệu để tìm kiếm các mẫu liên quan đến một lớp cụ thể.

Các thuật toán học máy được cung cấp các ví dụ đã được dán nhãn / phân loại trước, được phân tích để tìm các tính năng liên quan. Các ví dụ đã được dán nhãn này là dữ liệu đào tạo.

Thuật toán phân loại học máy phân tích dữ liệu đào tạo và học các mẫu liên quan đến các lớp khác nhau. Sau đó, các ví dụ không được nhìn thấy được loại bỏ khỏi nhãn của chúng và được cung cấp cho thuật toán phân loại, thuật toán này gán nhãn cho các ví dụ. Các nhãn được gán sau đó được so sánh với các nhãn ban đầu để xem thuật toán phân loại học máy chính xác như thế nào, đo lường mức độ tốt mà mô hình đã học các mẫu dự đoán các lớp.

Các thuật toán học máy hoạt động bằng cách phân tích dữ liệu số. Điều này có nghĩa là để sử dụng một thuật toán học máy trên dữ liệu văn bản, văn bản cần được chuyển đổi thành định dạng số. Có nhiều phương pháp mã hóa dữ liệu văn bản thành dữ liệu số và tạo ra các phương pháp học máy xung quanh dữ liệu này. Chúng tôi sẽ đề cập đến một số cách khác nhau để đại diện cho dữ liệu văn bản dưới đây.

Túi Từ

Túi từ là một trong những phương pháp được sử dụng phổ biến nhất để mã hóa và đại diện cho dữ liệu văn bản. Thuật ngữ “túi từ” đến từ thực tế rằng bạn thực sự lấy tất cả các từ trong tài liệu và đặt chúng tất cả vào một “túi” mà không quan tâm đến thứ tự từ hoặc ngữ pháp, chỉ quan tâm đến tần suất của từ trong túi. Điều này dẫn đến một mảng dài, hoặc vector, chứa một biểu diễn duy nhất của tất cả các từ trong tài liệu đầu vào. Vì vậy, nếu có 10000 từ duy nhất tổng cộng trong các tài liệu đầu vào, các vector tính năng sẽ có chiều dài 10000 từ. Đây là cách kích thước của túi từ / vector tính năng được tính toán.

Photo: gk_ via Machinelearning.co, (https://machinelearningmastery.com/text-classification-using-neural-networks-f5cd7b8765c6)

Sau khi kích thước vector tính năng đã được xác định, mỗi tài liệu trong danh sách các tài liệu tổng sẽ được gán vector riêng của nó chứa các số chỉ ra số lần từ đó xuất hiện trong tài liệu hiện tại. Điều này có nghĩa là nếu từ “thực phẩm” xuất hiện tám lần trong một tài liệu văn bản, vector tính năng / mảng tính năng tương ứng sẽ có một tám ở vị trí tương ứng.

Nói cách khác, tất cả các từ duy nhất xuất hiện trong các tài liệu đầu vào đều được đặt vào một túi và sau đó mỗi tài liệu nhận được một vector từ có cùng kích thước, sau đó được điền vào với số lần các từ khác nhau xuất hiện trong tài liệu.

Các tập dữ liệu văn bản thường chứa một số lượng lớn từ duy nhất, nhưng hầu hết chúng không được sử dụng thường xuyên. Vì lý do này, số từ được sử dụng để tạo vector từ thường được giới hạn ở một giá trị được chọn (N) và sau đó chiều của vector tính năng sẽ là Nx1.

Tần Số Từ – Tần Số Ngược Tài Liệu (TF-IDF)

Một cách khác để đại diện cho một tài liệu dựa trên các từ trong nó được gọi là Tần Số Từ – Tần Số Ngược Tài Liệu (TF-IDF). Một cách tiếp cận TF-IDF cũng tạo ra một vector đại diện cho tài liệu dựa trên các từ trong nó, nhưng không giống như Túi Từ, các từ này được trọng số bởi hơn chỉ tần suất. TF-IDF xem xét tầm quan trọng của các từ trong tài liệu, cố gắng lượng hóa mức độ liên quan của từ đó với chủ đề của tài liệu. Nói cách khác, TF-IDF phân tích sự liên quan thay vì tần suất và số từ trong vector tính năng được thay thế bằng một điểm số TF-IDF được tính toán với mối quan hệ đến toàn bộ tập dữ liệu.

Một cách tiếp cận TF-IDF hoạt động bằng cách tính toán tần số từ, số lần các từ duy nhất xuất hiện trong một tài liệu cụ thể. Tuy nhiên, TF-IDF cũng quan tâm đến việc giới hạn ảnh hưởng của các từ rất phổ biến như “của”, “hoặc” và “và”, vì những “từ dừng” này rất phổ biến nhưng lại truyền tải rất ít thông tin về nội dung của tài liệu. Những từ này cần được chiết khấu, điều này là những gì “tần số ngược tài liệu” của TF-IDF đề cập đến. Điều này được thực hiện vì số tài liệu mà một từ cụ thể xuất hiện, từ đó ít có ích trong việc phân biệt nó với các tài liệu khác trong danh sách tất cả các tài liệu. Công thức mà TF-IDF sử dụng để tính toán tầm quan trọng của một từ được thiết kế để bảo tồn các từ thường xuyên nhất và giàu ngữ nghĩa nhất.

Các vector tính năng được tạo bởi cách tiếp cận TF-IDF chứa các giá trị được chuẩn hóa, tổng cộng lên một, gán cho mỗi từ một giá trị trọng số được tính toán bởi công thức TF-IDF.

Đính Kèm Từ

Đính kèm từ là các phương pháp đại diện cho văn bản đảm bảo rằng các từ có ý nghĩa tương tự có các biểu diễn số tương tự.

Đính kèm từ hoạt động bằng cách “vector hóa” từ, nghĩa là chúng đại diện cho từ dưới dạng vector giá trị thực trong không gian vector. Các vector tồn tại trong một lưới hoặc ma trận và chúng có hướng và độ lớn (hoặc độ lớn). Khi đại diện cho từ dưới dạng vector, từ được chuyển đổi thành vector gồm các giá trị thực. Mỗi từ được ánh xạ đến một vector và từ có ý nghĩa tương tự có hướng và độ lớn tương tự. Loại mã hóa này cho phép một thuật toán học máy học các mối quan hệ phức tạp giữa từ.

Các đính kèm đại diện cho các từ khác nhau được tạo với mối quan hệ đến cách các từ trong câu hỏi được sử dụng. Vì từ được sử dụng theo cách tương tự sẽ có vector tương tự, quá trình tạo đính kèm từ tự động dịch một số ý nghĩa của từ. Một cách tiếp cận túi từ tạo ra các biểu diễn giòn, nơi các từ khác nhau sẽ có biểu diễn khác nhau ngay cả khi chúng được sử dụng trong các ngữ cảnh rất tương tự.

Kết quả là, đính kèm từ tốt hơn trong việc nắm bắt ngữ cảnh của từ trong một câu.

Lớp Đính Kèm

Một cách có thể để sử dụng đính kèm từ cùng với một hệ thống học máy / học sâu là sử dụng một lớp đính kèm. Các lớp đính kèm là các lớp học sâu chuyển đổi từ thành đính kèm, sau đó được cung cấp cho phần còn lại của hệ thống học sâu. Các đính kèm từ được học khi mạng lưới đào tạo cho một nhiệm vụ văn bản cụ thể.

Trong một cách tiếp cận đính kèm từ, từ tương tự sẽ có biểu diễn tương tự và gần nhau hơn là từ không tương tự.

Để sử dụng các lớp đính kèm, văn bản cần được xử lý trước. Văn bản trong tài liệu phải được mã hóa một nóng và kích thước vector cần được chỉ định trước. Văn bản một nóng sau đó được chuyển đổi thành vector từ và vector được truyền vào mô hình học máy.

Word2Vec

Word2Vec là một phương pháp khác để đính kèm từ. Word2Vec sử dụng các phương pháp thống kê để chuyển đổi từ thành đính kèm và nó được tối ưu hóa để sử dụng với các mô hình dựa trên mạng nơ-ron. Word2Vec được phát triển bởi các nhà nghiên cứu của Google và nó là một trong những phương pháp đính kèm được sử dụng phổ biến nhất, vì nó đáng tin cậy tạo ra các đính kèm hữu ích. Các biểu diễn Word2Vec hữu ích cho việc xác định các điểm tương đồng ngữ nghĩa và cú pháp trong ngôn ngữ. Điều này có nghĩa là các biểu diễn Word2Vec nắm bắt các mối quan hệ giữa các khái niệm tương tự, có thể phân biệt rằng sự tương đồng giữa “Vua” và “Nữ hoàng” là hoàng gia và rằng “Vua” ngụ ý “nam tính” trong khi Nữ hoàng ngụ ý “nữ tính”.

GloVe

GloVE, hoặc Vector Toàn Cầu cho Biểu Diện Từ, xây dựng dựa trên các thuật toán đính kèm được sử dụng bởi Word2Vec. Các phương pháp đính kèm GloVE kết hợp các khía cạnh của cả Word2Vec và các kỹ thuật phân tích ma trận như Phân tích Nghĩa Latent. Ưu điểm của Word2Vec là nó có thể nắm bắt ngữ cảnh, nhưng như một sự đánh đổi, nó không nắm bắt tốt các thống kê văn bản toàn cầu. Ngược lại, các biểu diễn vector truyền thống tốt trong việc xác định các thống kê văn bản toàn cầu nhưng chúng không hữu ích trong việc xác định ngữ cảnh của từ và cụm từ. GloVE kết hợp những điểm mạnh của cả hai phương pháp, tạo ra từ – ngữ cảnh dựa trên thống kê văn bản toàn cầu. vào một biểu diễn từ.

Blogger và lập trình viên với chuyên môn về Machine Learning Deep Learning topics. Daniel hy vọng giúp đỡ người khác sử dụng sức mạnh của AI cho lợi ích xã hội.