CHƯƠNG 1 + Thuật toán Logistic Regression + Thuật toán SGD + Thuật toán Naive Bayes Phương pháp và thuật toán phù hợp nhất với dit liệu đầu vào dựa theo kết qua kiềm thử sẽ được chon dé xây dựng mô hình phân loại hoàn thiện. Sau khi đã xây dựng được mô hình phân loại văn bản tự động với thuật toán cho kết quả tốt nhất ở bước trên, đồ án sẽ áp dụng mô hình phân loại vào việc xây dựng các chức năng cho hệ thống hỗ trợ xác định một số luồng dư luận cho trường đại học. Hệ thống được mô tả khái quát trong các chương tiếp theo dé trình bày luồng hoạt động của hệ thống, các khối của hệ thống kết hợp với nhau như thế nào và ứng dụng của khối mô hình phân loại sẽ nằm ở đâu trong hệ thống, từ đó chỉ ra được lợi ích của việc áp dụng mô hình phân loại văn bản tự động. Cùng với đó là kết quả cài đặt hệ thống, một số van dé và giải pháp khắc phục van dé, phân tích đưa ra hướng phát triển tiếp theo có thé thực hiện dé mở rộng hệ thống.
Các chức năng của hệ thống ứng dụng mô hình phân loại được xây dựng sẽ giúp cho ban quản lý nhà trường có thé xác định được mối quan tâm của nội bộ hoc sinh trong trường, những vấn đề nổi cộm đang xảy ra, theo đó ban quản lý nhà trường nắm bắt được tình hình và đưa ra những quyết định đúng đắn cho sự phát triển của toàn thể sinh viên nhà trường. Kếtluận Trong chương một, đồ án đã trình bày bài toán đặt ra, trình bày các kiến thức về phân loại văn bản tự động. Đồ án cũng đã mô tả vấn đề, giới thiệu các hướng giải quyết giải quyết bài toán hiện nay bao gồm các kĩ thuật trích xuất đặc trưng và các thuật toán phân loại văn bản phổ biến. Đồng thời đồ án đề ra hướng tiếp cận dé giải quyết bài toán mà đô án sẽ trình bay trong các chương sau.
Trong chương tiếp theo, đồ án sẽ giới thiệu về thuật toán phân lớp Logistic Regression, kỹ thuật trích xuất đặc trưng TF-IDF và một số phương pháp phân loại trong bài toán Multilabel Classification. LE VĂN SANG - D17HTTT1 12 DO AN TOT NGHIỆP CHUONG 2 CHUONG 2: THUAT TOAN PHAN LOP LOGISTIC REGRESSION Trong chương 2, đồ án sẽ giới thiệu tong quan về mô hình phân loại bài đăng theo chủ dé và các phương pháp, thuật toán được đề xuất dé tham gia đánh giá xây dựng mô hình. Tổng quan các bước xây dựng mô hình phân loại bài đăng theo chủ đề Một mô hình phân loại bài đăng theo chủ đề được xây dựng dựa theo các bước trong hình dưới đây. +| Thu thập dữ liệu Tiền xử lý dữ liệu és Trích xuất đặc trưng = Huan luyện mô hình ir Lưu mô hình Hình 2.1: Sơ đồ các bước xây dựng mô hình phân loại Bước thu thập dữ liệu nhằm thu thập các bài đăng từ các trang và nhóm trên mạng xã hội Facebook liên quan đến trường dé làm dữ liệu nguyên bản.
Tiền xử lý dữ liệu sẽ thực hiện một nhiệm vụ quan trọng đó là đưa tất cả các dữ liệu nguyên bản không cấu trúc ban đầu về thành một tập dữ liệu có cấu trúc nhất định, tất cả LE VĂN SANG - D17HTTT1 13 DO AN TOT NGHIỆP CHUONG 2 các bai đăng sé được chuan hóa dé tuân theo cau trúc mà sẽ được giới thiệu ở phân tiép theo. Khi làm việc với các bài toán Machine Learning thực tế, nhìn chung chúng ta ban đầu chỉ có thể thu thập được dữ liệu dưới dạng thô, tức là dữ liệu chưa qua chỉnh sửa, chọn lọc. Từ đó, công việc của chúng ta là tìm ra một phép biến đổi đề loại đi những dữ liệu nhiễu và dua dit liệu thô với số chiều khác nhau về cùng một chuẩn (cùng là các vector hoặc ma trận). Trong bộ dữ liệu chuẩn mới này cần đáp ứng được yêu cầu cơ bản là phải dam bảo giữ được những thông tin đặc trưng của tập dữ liệu thô ban đầu.
Quá trình quan trọng này được gọi là Feature Extraction, hay Feature Engineering, một số tài liệu tiếng Việt gọi nó là trích chọn đặc trưng. Bước trích xuất đặc trưng sẽ sử dụng thuật toán trích xuất tf-idf, đặc trưng được trích xuất ở bước này sẽ trở thành đầu vào cho bước tiếp theo là huần luyện mô hình. Bài toán mà đồ án đặt ra là một bài toán multilabel classification, tức là một giá trị văn bản đầu vào có thể được phân vào nhiều hơn một lớp chủ đề đầu ra. Chính vì thế mà cần có các phương pháp phân loại sử dụng trong dạng bài toán này được sử dụng kết hợp với thuật toán phân lớp trong quá trình huấn luyện mô hình.
Phương pháp phân loại trong bài toán multi-label classification Trong các bài toán phân loại thông thường, ví dụ như khi phân loại email thì đầu ra của bài toán sẽ là email là spam spam hoặc email không phải là spam. Hoặc trong các bài toán đánh giá xem một bệnh nhân có bị mắc bệnh phối hay không dựa vào hình chụp x- quang phổi của bệnh nhân đó, đầu ra tương ứng là bệnh nhân có mắc bệnh hoặc không mắc bệnh. Các bài toán này được gọi là phân lớp hay các bài toán Classification thông thường. Multi-Class Only one output z ‘ z § @ class at atime Hình 2.2: Minh hoa bài toán Multi-class Classification [15] LE VAN SANG - D17HTTT1 14 DO AN TOT NGHIỆP CHUONG 2 Khác với các bài toán được lấy ví du ở bên trên, bài toán phân loại nhãn topic trong phạm vi tài liệu là bài toán Multilabel Classification, là một dang của Classification.
Ví dụ như một bai toán xác định các vật mà một người dang mặc dựa vào hình ảnh, thì kết quả của bài toán đó, một người có thể mặc nhiều hơn một vật trong một lần. Khi tích hợp vào bài toán thực tế mà đồ án này đang giải quyết, ta có thể hiểu với đầu vào một câu hay một văn bản thì ở đầu ra, văn bản đó có thé được phân loại vào nhiều chủ đề khác nhau, tùy thuộc vào mức độ tương đông của văn bản với từng chủ đê. c @ © @ © Can have multiple @ a) oe) @ output classes at once Ta có thê thấy các thuật toán thường xuyên được sử dụng trong các bài toán Binary Classification, ví dụ như: + Logistic Regression + Naive-Bayes + Stochastic gradient descent (SGD) Tuy nhiên, trong bài toán Multilabel Classification thì không thể sử dụng các thuật toán này một cách trực tiếp. Hầu hết các thuật toán truyền thống được phát triển cho các bài toán phân loại nhãn đơn.
Do đó, đồ án cũng thử nghiệm một cách tiếp cận khác là chuyền đổi bài toán đa nhãn thành nhiều bài toán nhãn đơn, dé có thé sử dụng các thuật toán nhãn đơn hiện có. Một kĩ thuật hay được sử dụng để giải quyết bài toán được đề xuất là Problem Transformation. Problem Transformation là một phương pháp sử dụng kĩ thuật phân tách bài toán multi-label thành các bài toán nhỏ hơn theo hướng single-label classification. LE VAN SANG - D17HTTT1 15 DO AN TOT NGHIỆP CHUONG 2 2.
Phuong phap Binary Relevance Day là kỹ thuật đơn giản nhất, về cơ ban coi mỗi nhãn như một bài toán phân loại riêng biệt. Ví dụ, ta hãy xem xét một trường hợp như hình dưới đây. Chúng ta có tập dữ liệu như thê này, trong đó X là đặc trưng đâu vào và Y là các class, các giá trị nhãn đâu ra.4: Biểu diễn tập dau ra mong muon [16] Trong Binary Relevance, bai toán này được chia thành 4 bài toán phân loại lớp don khác nhau như trong hình bên dưới.5: Mô tả phương pháp Binary Relevance [16] Khi này, sẽ có 4 model phân loại nhị phân được huấn luyện, tương ứng với 4 lớp. Sự kết hợp của tất cả các lớp sẽ được coi như là đầu ra của bài toán ban đầu.
Cách tiếp cận này khá phổ biến vì nó dễ thực hiện, tuy nhiên nó cũng sẽ bỏ qua mối tương quan có thé có giữa các lớp. Nói cách khác, nếu có q label, phương pháp Binary Relevance sẽ tạo ra q tập dataset từ dữ liệu ban đầu, mỗi tập dataset cho mỗi label và huấn luyện từng single-label classifier với từng dataset mới được tạo ra. Mỗi classifier có thể có câu trả lời yes/no hoặc 0/1 cho LE VĂN SANG - D17HTTT1 16 DO AN TOT NGHIỆP CHUONG 2 môi bai toán con. Đây thực sự là một cách tiêp cận đơn giản nhưng có một nhược điêm là nó sẽ không hoạt động tốt nếu như có sự liên quan, ràng buộc giữa các label.
Phương pháp OneVsRest OneVsRest là một phương pháp heuristic để sử dụng các thuật toán Binary Classification để cho bài toán Multi-class Classification hoặc Multilabel Classification [20]. OvR liên quan đến việc tách tập dữ liệu multi-class thành nhiều bài toán Binary Classification. Sau đó, một bộ Binary Classifier được trainning về mỗi bài toán phân loại nhị phân và các dự đoán được thực hiện bằng cách sử dụng mô hình đáng tin cậy nhất. Ví dụ: Một bài toán phân loại nhiều lớp với các ví dụ cho mỗi lớp “red”, “blue”, và “green”.
Diéu này có thé được chia thành ba bộ dit liệu phân loại nhị phân như sau: + Binary Classification 1: red vs [blue, green] + Binary Classification 2: blue vs [red, green] + Binary Classification 3: green vs [red, blue] Cách tiép cận này yêu cau moi mô hình dự đoán xác suat của môi class, tức là tính điêm tương đông cho mỗi class. Chỉ sô của class nào có điểm lớn nhât sau đó được sử dụng dé dự đoán. Một nhược điểm có thé có của phương pháp này là nó yêu cầu một mô hình được tạo cho mỗi lớp. Như ví dụ ở trên thì ba lớp yêu cầu ba mô hình.
Đây có thể là vấn đề đối với tập dữ liệu lớn (ví dụ: hàng triệu hàng), mô hình chậm (ví dụ: mạng nơ-ron) hoặc số lượng lớp rất lớn (ví dụ: hàng trăm lớp). Phương pháp Classifier Chains Trong phương pháp này, bộ phân loại đầu tiên được huấn luyện chỉ trên dữ liệu đầu vào và sau đó mỗi bộ phân loại tiếp theo được huấn luyện trên không gian đầu vào và tất cả các bộ phân loại trước đó trong chuỗi. Giả sử trong tập dữ liệu đưới đây, chúng ta có X là không gian đầu vào và Y là nhãn. LE VĂN SANG - D17HTTT1 17 DO AN TOT NGHIỆP CHUONG 2 X yi y2 y3 y4 x1 0 1 1 0 ua |4 0 0 0 x3 0 1ã (2 | Hình 2.6: Tập dau ra của phương pháp Classifier Chains [16] Trong Classifier Chains, bài toán ban đầu sẽ được chuyền thành 4 bài toán nhãn don khác nhau, giống như hình dưới đây.