Cách phân loại dữ liệu trong Python

Sau khi đọc một bài báo - liệu chủ đề có phải là U. S. chính trị, đánh giá phim hoặc mẹo tăng năng suất — bạn có thể chuyển sang người khác và cung cấp cho họ ý tưởng chung về nội dung của nội dung đó, phải không?

Con người có xu hướng khá giỏi trong việc phân loại văn bản. Và ngày nay, máy tính cũng có thể làm được

Đối với một dự án máy học gần đây, tôi đã tải xuống các khiếu nại của người tiêu dùng từ Cục Bảo vệ Tài chính Người tiêu dùng và phát triển các mô hình để phân loại các khiếu nại thành một trong năm loại sản phẩm. Mô hình hiệu suất cao nhất của tôi đã làm đúng 86% thời gian. [Bạn có thể đọc về dự án đó trong blog Phương tiện này. ]

Tôi đã sử dụng một kỹ thuật học có giám sát, trong đó các mô hình đã sử dụng các danh mục được gắn nhãn để sau đó dự đoán các danh mục không được gắn nhãn. Trong tập dữ liệu được sử dụng để đào tạo các mô hình của tôi, các danh mục sản phẩm do chính người tiêu dùng lựa chọn và do hầu hết người tiêu dùng không phải là chuyên gia tài chính nên họ có thể không hoàn thành công việc một cách hoàn hảo 100% và các lỗi sẽ ảnh hưởng đến hiệu suất của mô hình

Hoặc nghĩ về một tập dữ liệu khác trong đó các văn bản không được gắn nhãn trước. Sẽ rất tẻ nhạt nếu con người làm như vậy để đào tạo mô hình Xử lý ngôn ngữ tự nhiên [NLP] được giám sát. Những nhược điểm này vốn có trong các mô hình được giám sát

Theo dõi dự án, tôi muốn phát triển một mô hình NLP học tập không giám sát để xem những danh mục nào sẽ phát sinh. Mô hình này sẽ bỏ qua các danh mục được dán nhãn trước và thay vào đó, phân biệt những điểm chung để nhóm các văn bản thành các chủ đề do chính nó nghĩ ra.

Tôi cũng đã có một trường hợp kinh doanh trong tâm trí. Một mô hình không giám sát có thể hữu ích cho Cục Bảo vệ Tài chính Người tiêu dùng ở chỗ nó sẽ không phải dựa vào người tiêu dùng để phân loại nội dung gửi của họ, nhưng nó cũng có khả năng xử lý các tin nhắn đến thành các danh mục mới, không lường trước được. Về bản chất, mô hình LDA không giám sát có thể hoạt động cho bất kỳ tổ chức nào nhận được tin nhắn từ người tiêu dùng hoặc khách hàng và giúp phân loại văn bản

Tạo chủ đề mới

Tôi đã xử lý các khiếu nại đối với các mô hình học tập có giám sát bằng cách mã hóa các văn bản, xóa các từ dừng và thêm từ vựng vào các từ. [Thêm chi tiết trong blog đã nói ở trên]. Đối với quy trình lập mô hình không giám sát, sau đó tôi đã sử dụng mô-đun Phân bổ Dirichlet tiềm ẩn [LDA] của Gensim

Tôi đã yêu cầu nó chia 160.000 khiếu nại thành năm chủ đề và sau đó sử dụng mô-đun pyLDAvis để tạo trực quan hóa

Để xem một trang tương tác của các trực quan hóa chủ đề này, hãy nhấp vào đây

Trực quan hóa biểu đồ các từ phổ biến nhất trong mỗi năm chủ đề

chủ đề 1

Chủ đề này bao gồm các từ tài chính chung như tài khoản, ngân hàng, thẻ, tiền và tín dụng cũng như các từ như cuộc gọi, email, điện thoại, thư và đã nhận. Một điểm chung trong chủ đề này liên quan đến giao tiếp

chủ đề 2

Với những từ hàng đầu như tín dụng, báo cáo, báo cáo, điều tra và văn phòng, chủ đề này là về báo cáo tín dụng

chủ đề 3

Thanh toán, cho vay, thế chấp, đến hạn, lãi và số dư cho tôi biết chủ đề này liên quan đến các vấn đề liên quan đến thế chấp và cho vay

chủ đề 4

Các từ hàng đầu trong chủ đề này bao gồm nợ, thu nợ, luật pháp, vi phạm, bằng chứng và pháp lý. Có vẻ như chủ đề này liên quan đến các vấn đề pháp lý

chủ đề 5

Ở đây, một số từ khóa là thông tin, người tiêu dùng, danh tính, trộm cắp, điều tra, lừa đảo, công bằng và nạn nhân. Tôi muốn nói rằng chủ đề này liên quan đến hành vi trộm cắp danh tính hoặc điều tra về hoạt động lừa đảo

Trước khi thảo luận sâu hơn về các nhóm này, tôi muốn chỉ ra rằng tôi có thể chọn nhiều hơn hoặc ít hơn năm chủ đề. Thực ra Genism cũng có module đo độ “coherence” chủ đề của 1 model. Tôi đã tạo các mô hình với số lượng chủ đề khác nhau và so sánh chúng với phép đo độ kết hợp khối lượng u. Biện pháp đó mang lại một số âm với số càng gần 0, nó càng mạch lạc

Như bạn có thể thấy, mô hình có năm chủ đề có điểm gắn kết cao nhất. Đồng thời, sau khi tôi xem xét tính nhất quán như một cách để phân loại các mô hình của mình, có vẻ như nhiều nhà khoa học dữ liệu tập trung vào NLP không đặt quá nhiều vào nó. Xét cho cùng, LDA là một kỹ thuật không được giám sát và do đó, các phép đo hữu hạn không nhất thiết phải thay thế cách diễn giải kết quả theo sắc thái của con người

Mô hình không giám sát hữu ích như thế nào?

Hãy so sánh năm danh mục sản phẩm của mô hình học có giám sát với năm danh mục chủ đề của mô hình học không giám sát của tôi

Hai cặp chủ đề trùng nhau, nhưng sáu chủ đề khác nhau. Làm thế nào những phát hiện này có thể sâu sắc hoặc hữu ích?

Tôi có thể tưởng tượng rằng Cục Bảo vệ Tài chính Người tiêu dùng có một khu vực xử lý các vấn đề liên lạc và dịch vụ người tiêu dùng, một khu vực xử lý các vấn đề pháp lý và một khu vực khác xử lý hành vi trộm cắp danh tính và lừa đảo. Nếu vậy, các khiếu nại rằng mô hình LDA được tìm thấy thuộc về một trong những chủ đề tương ứng này có thể được chuyển đến khu vực thích hợp

Tóm lại, một mô hình không giám sát thực sự có thể phân loại các tin nhắn đến thành các danh mục mới, không lường trước được. Năm danh mục này là của tôi dựa trên việc đọc các từ khóa hàng đầu bằng trực giác của tôi và chắc chắn sẽ được phân tích và giải thích sâu hơn. Tuy nhiên, điểm quan trọng hơn là cả mô hình NLP được giám sát và không được giám sát đều có thể hữu ích cho bất kỳ tổ chức nào muốn xử lý một lượng lớn thư đến hàng ngày

Chủ Đề