Phân tích văn bản thống kê.
Lưu ý
Xem tab Văn bản và hình ảnh để biết thêm chi tiết!
Sau khi chia nhỏ một kho văn bản thành các mã thông báo cấu thành của nó và chuẩn bị chúng để phân tích; Có một số kỹ thuật phân tích thống kê phổ biến mà bạn có thể sử dụng để suy ra ý nghĩa từ văn bản.
Phân tích tần số
Có lẽ cách rõ ràng nhất để xác định các chủ đề được thảo luận trong một tài liệu là chỉ cần đếm số lần mỗi token chuẩn hóa xuất hiện. Giả định là các thuật ngữ được sử dụng thường xuyên hơn trong tài liệu có thể giúp xác định các chủ đề hoặc chủ đề được thảo luận. Nói một cách đơn giản, nếu bạn có thể xác định các từ được sử dụng phổ biến nhất trong một tài liệu nhất định, bạn thường có thể có ý tưởng tốt về nội dung của tài liệu đó.
Ví dụ, hãy xem xét văn bản sau:
AI in modern business delivers transformative benefits by enhancing efficiency, decision-making, and customer experiences. Businesses can leverage AI to automate repetitive tasks, freeing employees to focus on strategic work, while predictive analytics and machine learning models enable data-driven decisions that improve accuracy and speed. AI-powered tools like Copilot streamline workflows across marketing, finance, and operations, reducing costs and boosting productivity. Additionally, intelligent applications personalize customer interactions, driving engagement and loyalty. By embedding AI into core processes, businesses benefit from the ability to innovate faster, adapt to market changes, and maintain a competitive edge in an increasingly digital economy.
Sau khi mã hóa, chuẩn hóa và áp dụng từ ngữ hóa cho văn bản, tần suất của mỗi thuật ngữ có thể được đếm và lập bảng; tạo ra các kết quả từng phần sau:
| Thuật ngữ | Tần số |
|---|---|
ai |
Tệp 4 |
business |
3 |
benefit |
2 |
customer |
2 |
decision |
2 |
market |
2 |
ability |
1 |
accuracy |
1 |
| ... | ... |
Từ những kết quả này, các thuật ngữ xuất hiện thường xuyên nhất chỉ ra rằng văn bản thảo luận về AI và lợi ích kinh doanh của nó.
Tần số thuật ngữ - Tần số tài liệu nghịch đảo (TF-IDF)
Phân tích tần suất đơn giản trong đó bạn đếm số lần xuất hiện của mỗi mã thông báo có thể là một cách hiệu quả để phân tích một tài liệu duy nhất, nhưng khi bạn cần phân biệt giữa nhiều tài liệu trong cùng một kho dữ liệu, bạn cần một cách để xác định mã thông báo nào phù hợp nhất trong từng tài liệu riêng lẻ.
Ví dụ: hãy xem xét hai mẫu văn bản sau:
Mẫu A:
Microsoft Copilot Studio enables declarative AI agent creation using natural language, prompts, and templates. With this declarative approach, an AI agent is configured rather than programmed: makers define intents, actions, and data connections, then publish the agent to channels. Microsoft Copilot Studio simplifies agent orchestration, governance, and lifecycles so an AI agent can be iterated quickly. Using Microsoft Copilot Studio helps modern businesses deploy Microsoft AI agent solutions fast.
Mẫu B:
Microsoft Foundry enables code‑based AI agent development with SDKs and APIs. Developers write code to implement agent conversations, tool calling, state management, and custom pipelines. In Microsoft Foundry, engineers can use Python or Microsoft C#, integrate Microsoft AI services, and manage CI/CD to deploy the AI agent. This code-first development model supports extensibility and performance while building Microsoft Foundry AI agent applications.
Ba thuật ngữ thường gặp nhất trong các mẫu này được hiển thị trong các bảng sau:
Mẫu A:
| Thuật ngữ | Tần số |
|---|---|
agent |
6 |
ai |
Tệp 4 |
microsoft |
Tệp 4 |
Mẫu B:
| Thuật ngữ | Tần số |
|---|---|
microsoft |
5 |
agent |
Tệp 4 |
ai |
Tệp 4 |
Như bạn có thể thấy từ kết quả, các từ phổ biến nhất trong cả hai mẫu đều giống nhau ("agent", "Microsoft", và "AI"). Điều này cho chúng ta biết rằng cả hai tài liệu đều bao gồm một chủ đề tổng thể giống nhau, nhưng không giúp chúng ta phân biệt giữa các tài liệu riêng lẻ. Kiểm tra số lượng các thuật ngữ ít được sử dụng thường xuyên hơn có thể hữu ích, nhưng bạn có thể dễ dàng tưởng tượng việc phân tích kho dữ liệu dựa trên tài liệu AI của Microsoft, điều này sẽ dẫn đến một số lượng lớn các thuật ngữ phổ biến trên tất cả các tài liệu; gây khó khăn cho việc xác định các chủ đề cụ thể được đề cập trong mỗi tài liệu.
Để giải quyết vấn đề này, Tần suất thuật ngữ - Tần suất tài liệu nghịch đảo (TF-IDF) là một kỹ thuật tính điểm dựa trên tần suất một từ hoặc thuật ngữ xuất hiện trong một tài liệu so với tần suất chung hơn của nó trên toàn bộ bộ sưu tập tài liệu. Sử dụng kỹ thuật này, một mức độ liên quan cao được giả định cho các từ xuất hiện thường xuyên trong một tài liệu cụ thể, nhưng ít khi xảy ra trên nhiều tài liệu khác. Để tính TF-IDF cho các thuật ngữ trong một tài liệu riêng lẻ, bạn có thể sử dụng quy trình ba bước sau:
Tính toán tần suất thuật ngữ (TF): Đây chỉ đơn giản là số lần một từ xuất hiện trong một tài liệu. Ví dụ: nếu từ
"agent"xuất hiện 6 lần trong tài liệu, thìtf(agent) = 6.Tính toán tần suất tài liệu nghịch đảo (IDF): Điều này kiểm tra mức độ phổ biến hoặc hiếm của một từ trên tất cả các tài liệu. Nếu một từ xuất hiện trong mọi tài liệu, nó không đặc biệt. Công thức được sử dụng để tính IDF là
idf(t) = log(N / df(t))(trong đóNlà tổng số tài liệu vàdf(t)là số lượng tài liệu có chứa từt)Kết hợp chúng để tính TF-IDF: Nhân TF và IDF để có điểm:
tfidf(t, d) = tf(t, d) * log(N / df(t))
Điểm TF-IDF cao cho thấy một từ xuất hiện thường xuyên trong một tài liệu nhưng hiếm khi xuất hiện trong các tài liệu khác. Điểm thấp cho thấy từ phổ biến trong nhiều tài liệu. Trong hai mẫu về tác nhân AI, bởi vì "AI", , và "agent" xuất hiện trong cả hai mẫu (N = 2, df(t) = 2), IDF của chúng là log(2/2) = 0, vì vậy chúng không có trọng lượng phân biệt đối xử trong TF-IDF"Microsoft". Ba kết quả TF-IDF hàng đầu cho các mẫu là:
Mẫu A:
| Thuật ngữ | TF-IDF |
|---|---|
copilot |
2.0794 |
studio |
2.0794 |
declarative |
1.3863 |
Mẫu B:
| Thuật ngữ | TF-IDF |
|---|---|
code |
2.0794 |
develop |
2.0794 |
foundry |
2.0794 |
Từ những kết quả này, rõ ràng hơn rằng mẫu A là về việc tạo tác nhân khai báo với Copilot Studio, trong khi mẫu B là về phát triển tác nhân dựa trên mã với Microsoft Foundry.
Kỹ thuật học máy "Bag-of-words"
Túi từ là tên được đặt cho một kỹ thuật trích xuất tính năng đại diện cho mã thông báo văn bản dưới dạng vectơ của tần suất hoặc lần xuất hiện từ, bỏ qua ngữ pháp và thứ tự từ. Biểu diễn này trở thành đầu vào cho các thuật toán học máy như Naive Bayes, một bộ phân loại xác suất áp dụng định lý Bayes để dự đoán lớp xác suất của một tài liệu dựa trên tần số từ.
Ví dụ: bạn có thể sử dụng kỹ thuật này để đào tạo mô hình máy học thực hiện lọc thư rác email. Các từ "miracle cure", "lose weight fast"và "chống lão hóa" có thể xuất hiện thường xuyên hơn trong các email spam về các sản phẩm sức khỏe đáng ngờ so với các email thông thường của bạn và một mô hình được đào tạo có thể gắn cờ các thư có chứa những từ này là thư rác tiềm ẩn.
Bạn có thể thực hiện phân tích cảm xúc bằng cách sử dụng cùng một phương pháp để phân loại văn bản theo giọng điệu cảm xúc. Túi từ cung cấp các tính năng và mô hình sử dụng các tính năng đó để ước tính xác suất và gán nhãn cảm xúc như "tích cực" hoặc "tiêu cực".
Xếp hạng văn bản
TextRank là một thuật toán dựa trên đồ thị không giám sát, mô hình hóa văn bản dưới dạng mạng các nút được kết nối. Ví dụ: mỗi câu trong một tài liệu có thể được coi là một nút và các kết nối (cạnh) giữa chúng được chấm điểm dựa trên sự giống nhau của các từ mà chúng chứa. TextRank thường được sử dụng để tóm tắt văn bản dựa trên việc xác định một tập hợp con câu trong một tài liệu thể hiện tốt nhất chủ đề tổng thể của nó.
Thuật toán TextRank áp dụng nguyên tắc tương tự như thuật toán PageRank của Google (xếp hạng các trang web dựa trên các liên kết giữa chúng) cho văn bản. Ý tưởng chính là một câu rất quan trọng nếu nó tương tự như nhiều câu quan trọng khác. Thuật toán hoạt động thông qua các bước sau:
Xây dựng biểu đồ: Mỗi câu trở thành một nút và các cạnh kết nối chúng được tính trọng số theo độ tương đồng (thường được đo bằng cách sử dụng sự chồng chéo từ hoặc độ tương đồng cosin giữa các vectơ câu).
Tính toán xếp hạng lặp đi lặp lại: Điểm của mỗi nút được tính dựa trên điểm số của các nút được kết nối với nó. Công thức là:
TextRank(Sᵢ) = (1-d) + d * Σ(wⱼᵢ / Σwⱼₖ) * TextRank(Sⱼ)(trong đódlà hệ số giảm chấn, thường là 0,85,wⱼᵢlà trọng số của cạnh từ câujnày sang câu khácivà tổng lặp lại trên tất cả các câu được kết nối vớii).Trích xuất các câu xếp hạng cao nhất: Sau khi hội tụ, các câu có điểm cao nhất được chọn làm tóm tắt.
Ví dụ, hãy xem xét tài liệu sau về điện toán đám mây:
Cloud computing provides on-demand access to computing resources. Computing resources include servers, storage, and networking. Azure is Microsoft's cloud computing platform. Organizations use cloud platforms to reduce infrastructure costs. Cloud computing enables scalability and flexibility.
Để tạo một bản tóm tắt của tài liệu này, quá trình TextRank bắt đầu bằng cách chia tài liệu này thành các câu:
Cloud computing provides on-demand access to computing resources.Computing resources include servers, storage, and networking.Azure is Microsoft's cloud computing platform.Organizations use cloud platforms to reduce infrastructure costs.Cloud computing enables scalability and flexibility.
Tiếp theo, các cạnh được tạo giữa các câu với trọng số dựa trên sự tương đồng (chồng chéo từ). Đối với ví dụ này, trọng số cạnh có thể là:
- Câu 1 <-> Câu 2: 0.5 (cổ
"computing resources"phiếu) - Câu 1 <-> Câu 3: 0.6 (cổ phiếu
"cloud computing") - Câu 1 <-> Câu 4: 0.2 (cổ phiếu
"cloud") - Câu 1 <-> Câu 5: 0.7 (cổ phiếu
"cloud computing") - Câu 2 <-> Câu 3: 0,2 (chồng chéo hạn chế)
- Câu 2 <-> Câu 4: 0.1 (chồng chéo hạn chế)
- Câu 2 <-> Câu 5: 0.1 (cổ phiếu
"computing") - Câu 3 <-> Câu 4: 0.5 (cổ phiếu
"cloud platforms") - Câu 3 <-> Câu 5: 0.4 (cổ
"cloud computing"phiếu) - Câu 4 <-> Câu 5: 0,3 (chồng chéo hạn chế)
Sau khi tính điểm TextRank lặp đi lặp lại bằng cách sử dụng các trọng số này, các câu 1, 3 và 5 có thể nhận được điểm cao nhất vì chúng kết nối tốt với các câu khác thông qua các thuật ngữ và khái niệm được chia sẻ. Những câu này sẽ được chọn để tạo thành một bản tóm tắt ngắn gọn: "Cloud computing provides on-demand access to computing resources. Azure is Microsoft's cloud computing platform. Cloud computing enables scalability and flexibility."
Lưu ý
Tạo một bản tóm tắt tài liệu bằng cách chọn các câu có liên quan nhất là một hình thức tóm tắt trích xuất . Trong cách tiếp cận này, không có văn bản mới nào được tạo ra - bản tóm tắt bao gồm một tập hợp con của văn bản gốc. Những phát triển gần đây hơn trong mô hình ngữ nghĩa cũng cho phép tóm tắt trừu tượng , trong đó ngôn ngữ mới tóm tắt các chủ đề chính của tài liệu nguồn được tạo ra.
TextRank cũng có thể được áp dụng ở cấp độ từ để trích xuất từ khóa, trong đó các từ (thay vì câu) trở thành nút và các cạnh đại diện cho sự xuất hiện đồng thời trong một cửa sổ cố định. Các từ được xếp hạng cao nhất được trích xuất dưới dạng các thuật ngữ chính đại diện cho các chủ đề chính của tài liệu.