Đồ án Tìm hiểu về maximum entropy cho bài toán phân lớp quan điểm - Phạm Thị Hà

pdf 32 trang huongle 1730
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Tìm hiểu về maximum entropy cho bài toán phân lớp quan điểm - Phạm Thị Hà", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfdo_an_tim_hieu_ve_maximum_entropy_cho_bai_toan_phan_lop_quan.pdf

Nội dung text: Đồ án Tìm hiểu về maximum entropy cho bài toán phân lớp quan điểm - Phạm Thị Hà

  1. Bộ giáo dục và đào tạo Trường đại học dân lập hải phịng o0o TÌM HIỂU VỀ MAXIMUM ENTROPY CHO BÀI TỐN PHÂN LỚP QUAN ĐIỂM Đồ án tốt nghiệp đại học hệ chính quy Ngành:Cơng nghệ Thơng tin Sinh viên thực hiện: Phạm Thị Hà Giáo viên hướng dẫn:Ths Nguyễn Thị Xuân Hương Mã sinh viên: 120797 Hải Phịng - 2012
  2. MỤC LỤC MỤC LỤC 1 LỜI CẢM ƠN 3 CHƢƠNG 1: BÀI TỐN PHÂN LỚP QUAN ĐIỂM 6 1.1 NHU CẦU VỀ THƠNG TIN QUAN ĐIỂM VÀ NHẬN XÉT 6 1.2 BÀI TỐN PHÂN LỚP QUAN ĐIỂM 8 1.3 NHIỆM VỤ CỦA BÀI TỐN PHÂN LỚP QUAN ĐIỂM 9 1.3.1. Trích các đặc trưng 10 1.3.2 Xây dựng mơ hình phân lớp để phân loại tài liệu 10 CHƢƠNG 2: MƠ HÌNH ENTROPY CỰC ĐẠI 14 2.1 GIỚI THIỆU 14 2.2 XÂY DỰNG MƠ HÌNH 14 2.2.1 Tập dữ liệu huấn luyện 15 2.2.2 Những thống kê, đặc trưng và ràng buộc 15 2.2.3 Nguyên lý Entropy cực đại 17 2.2.4 Dạng tham số 18 2.2.5 Mối quan hệ với cực đại Likelihood 19 2.3 BÀI TỐN PHÂN LỚP QUAN ĐIỂM SỬ DỤNG PHƢƠNG PHÁP HỌC MÁY MAXIMUM ENTROPY CỰC ĐẠI 21 CHƢƠNG 3: THỰC NGHIỆM 23 3.1 DỮ LIỆU THỬ NGHIỆM 23 3.2 CƠNG CỤ SỬ DỤNG 24 3.2.1 Cơng cụ sinh SRIML 24 3.2.2 Cơng cụ phân lớp dữ liệu Maxent 25 3.2.3 Kết quả thực nghiệm Error! Bookmark not defined. KẾT LUẬN 31 TÀI LIỆU THAM KHẢO 32
  3. LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới Thạc sĩ Nguyễn Thị Xuân Hương (Trường Đại học Dân lập Hải Phịng) đã chỉ bảo và hướng dẫn tận tình cho em trong suốt quá trình tìm hiểu và thực hiện khĩa luận này. Em xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới các thầy, cơ đã dạy dỗ em trong suốt quá trình học tập tại trường Đại học Dân lập Hải Phịng cũng như những giúp đỡ, những động viên trong suốt quá trình làm khĩa luận. Và con xin gửi lời cảm ơn và biết ơn vơ hạn tới bố, mẹ, những người thân yêu của đã nuơi nấng, dạy dỗ và luơn là chỗ dựa tinh thần cho con trong cuộc sống cũng như trong học tập. Mặc dù em đã cố gắng hồn thành luận văn trong phạm vi và khả năng cho phép nhưng chắc chắn sẽ khơng tránh khỏi những thiếu sĩt. Em kính mong nhận được sự cảm thơng và tận tình chỉ bảo, gĩp ý của quý Thầy Cơ và các bạn. Em xin chân thành cảm ơn! Hải Phịng, ngày tháng năm . Sinh viên Phạm Thị Hà
  4. MỞ ĐẦU , , , thơng tin, ế : Facebook, Twitter : Zing, , ,. . . , , (thể hiện như xu hướng của quan điểm) của cộng đồng đối với việc đánh giá một vấn đề, , . Các quan điểm, xu hướng này sẽ cĩ tác động mạnh mẽ đến định hướng, quan điểm của người dùng khác. Việc nghiên cứu các phương pháp học máy cho bài tốn phân lớp quan điểm đã và đang thu hút được một lượng lớn các nghiên cứu của các nhà khoa học trong lĩnh vực xử lý ngơn ngữ tự nhiên và khai phá dữ liệu. Các kết quả của nĩ được nghiên cứu trong lĩnh vực này đã cĩ nhiều ứng dụng trên thực tế như: các hệ thống lấy ý kiến phản hồi khách hàng, các nhận xét, đánh giá được tích hợp trong các hệ thống phản hồi trực tuyến, Chính vì lý do đĩ, em đã chọn đề tài “Tìm hiểu về Maximum Entropy cho bài tốn phân lớp quan điểm” cho khĩa luận tốt nghiệp của mình. Nội dung của khĩa luận được tổ chức thành ba chương như sau:
  5. Chƣơng 1: Trình bày bài tốn phân lớp quan điểm, nhiệm vụ của bài tốn phân lớp quan điểm. Chƣơng 2: Trình bày về mơ hình và thuật tốn Entropy cực đại cho bài tốn phân lớp quan điểm. Chƣơng 3: Trình bày những kết quả đánh giá thử nghiệm của khĩa luận áp dụng cho bài tốn phân lớp quan điểm. Cuối cùng là phần kết luận.
  6. Chƣơng 1: BÀI TỐN PHÂN LỚP QUAN ĐIỂM 1.1 NHU CẦU VỀ THƠNG TIN QUAN ĐIỂM VÀ NHẬN XÉT Những thơng tin nhận xét đã luơn luơn là một phần quan trọng t , lấy những thơng tin này từ bạn bè, người thân hay các chuyên gia tư vấn tiêu dùng về sản phẩm dịch vụ quan tâm. Với sự bùng nổ của Internet và Web của những người , , trong khơng gian rộng lớn. Và ngược lại, . Theo Khả Kelsey group Horrigan, 2008:  81% người dùng Internet (60% người Mỹ) trực tuyến về một sản phẩm ít nhất một lần.  20% (15% của tất cả các người Mỹ) .  73% và 87% ảnh hưởng đáng kể .  Người tiêu dùng sẵn sàng trả từ 20% đến 99% một mục 5 sao 4 sao).  18% của cơng dân ấ một bình luận trực tuyến . Với sự bùng nổ các dịch vụ web: blog, diễn đàn thảo luận, peer-to- peer mạng, và các loại khác nhau của các
  7. Thống kê của FaceBook:  Cĩ hơn 500 triệu người dùng ở trạng thái hoạt động (active), mỗi người cĩ trung bình 130 bạn (friends), trao đổi qua lại trên 900 triệu đối tượng . Twitter (5/2011): cĩ hơn 200 triệu người dùng  Một ngày cĩ: hơn 300 nghìn tài khoản mới, trung bình hơn 190 triệu tin nhắn, xử lý trung bình khoảng 1.6 tỷ câu hỏi. Theo ướ Technorati :  75.000 blog mới được tạo ra.  1, 2 triệu bài viết. Ở Việt Nam các mạng xã hội: zing.vn, go.vn thu hút được động đảo người dùng tham gia. Tạ chưa từng cĩ và quyền chia sẻ kinh nghiệm và ý kiến của riêng họ tích cực hay tiêu cực. Khi các cơng ty lớn đang ngày càng nhận ra những tiếng nĩi của người tiêu dùng cĩ thể vận dụng rất lớn ảnh hưởng trong việc hình thành ý kiến của người tiêu dùng khác, , trung thành thương hiệu của họ, quyết định mua và vận động cho chính thương hiệu của họ Cơng ty cĩ thể đáp ứng với những người tiêu dùng mà họ tạo ra thơng qua phương tiện truyền thơng xã hội và phân tích , , . Tuy nhiên, các nhà phân tích ngành cơng nghiệp lưu ý rằng việc tận dụng các phương tiện truyền thơng mới cho mục đích hình ảnh sản phẩm địi hỏi cơng nghệ mới.
  8. Các nhà tiếp thị luơn luơn cần giám sát các phương tiện truyền thơng cho thơng tin liên quan đến thương hiệu của mình cho dù đĩ là đối với các hoạt động quan hệ cơng chúng, vi phạm gian lận hoặc tình báo cạnh tranh. Nhưng phân mảnh các phương tiện truyền thơng thay đổi hành vi của người tiêu dùng đã l truyền thống. Technorati ước tính rằng 75.000 blog mới được tạo ra mỗi ngày, cùng với 1.2 triệu bài viết mỗi ngày, nhiều ý kiến người tiêu dùng thảo luận về sản phẩm và dịch vụ. Vì vậy, cá nhân , hệ thống cĩ khả năng tự động phân tích của người tiêu dùng. 1.2 BÀI TỐN PHÂN LỚP QUAN ĐIỂM Bài tốn : - . - . Phân lớp câu/tài liệu chứa : , (positive) hay tiêu cực (negative), (neutral). Theo Bo Pang và Lillian Lee(2002) phân lớp câu/tài liệu chỉ quan điểm khơng cĩ sự nhận biết của mỗi từ/ cụm từ chỉ quan điểm. Họ sử dụng học máy cĩ giám sát để phân loại những nhận xét về phim ảnh. Khơng cần phải phân lớp các từ hay cụm từ chỉ quan điểm, họ rút ra những đặc điểm khác nhau của các quan điểm và sử dụng thuật tốn Nạve Bayes (NB), Maximum Entropy (ME) và Support Vector Machine (SVM) để phân lớp quan điểm. Phương pháp này đạt độ chính xác từ 78,7% đến 82,9%.
  9. Input: . Output: (polarity) theo định hướng a ( , ). Phân lớp tài liệu theo định hướng quan điểm thật sự là vấn đề thách thức và khĩ khăn trong lĩnh vự xử lý ngơn ngữ. Đĩ chính là bản chất phức tạp của ngơn ngữ của con người, đặc biệt là sự đa nghĩa và nhập nhằng nghĩa của ngơn ngữ. Sự nhập nhằng này rõ ràng sẽ ảnh hưởng đến độ chính xác bộ phân lớp của chúng ta một mức độ nhất định. Một khía cạnh thách thức của vấn đề này dường như là phân biệt nĩ với việc phân loại chủ đề theo truyền thống đĩ là trong khi những chủ đề này được nhận dạng bởi những từ khĩa đứng một mình, quan điểm cĩ thể diễn tả một cách tinh tế hơn. Ví dụ câu sau: “Làm thế nào để ai đĩ cĩ thể ngồi xem hết bộ phim này?” khơng chứa ý cĩ nghĩa duy nhất mà rõ ràng là nghĩa tiêu cực. Theo đĩ, quan điểm dường như địi hỏi sự hiểu biết nhiều hơn, tinh tế hơn. 1.3 NHIỆM VỤ CỦA BÀI TỐN PHÂN LỚP QUAN ĐIỂM Bài tốn phân lớp quan điểm được biết đến như là bài tốn phân lớp tài liệu với mục tiêu là phân loại các tài liệu theo định hướng quan điểm. Đã cĩ rất nhiều tiếp cận khác nhau được nghiên cứu để giải quyết cho loại bài tốn này. Để thực hiện, về cơ bản cĩ thể chia thành hai nhiệm vụ chính như sau:  Trích các đặc trưng nhằm khai thác các thơng tin chỉ quan điểm phục vụ mục đích phân loại tài liệu theo định hướng ngữ nghĩa.  Xây dựng mơ hình để phân lớp các tài liệu.
  10. 1.3.1. Trích các đặc trưng Trích những từ, cụm từ chỉ quan điểm là những từ ngữ được sử dụng để diễn tả cảm xúc, ý kiến người viết; những quan điểm chủ quan đĩ dựa trên những vấn đề mà anh ta hay cơ ta đang tranh luận. Việc rút ra những từ, cụm từ chỉ quan điểm là giai đoạn đầu tiên trong hệ thống đánh giá quan điểm, vì những từ, cụm từ này là những chìa khĩa cho cơng việc nhận biết và phân loại tài liệu sau đĩ. Ứng dụng dựa trên hệ thống đánh giá quan điểm hiện nay tập trung vào các từ chỉ nội dung câu: danh từ, động từ, tính từ và phĩ từ. Phần lớn cơng việc sử dụng từ loại để rút chúng ra. Việc gán nhãn từ loại cũng được sử dụng trong cơng việc này, điều này cĩ thể giúp cho việc nhận biết xu hướng quan điểm trong giai đoạn tiếp theo. Những kĩ thuật phân tích ngơn ngữ tự nhiên khác như xĩa: stopwords, stemming cũng được sử dụng trong giai đoạn tiền xử lý để rút ra từ, cụm từ chỉ quan điểm. 1.3.2 Xây dựng mơ hình phân lớp để phân loại tài liệu Trong phân tích quan điểm, xu hướng của những từ, cụm từ trực tiếp thể hiện quan điểm, cảm xúc của người viết bài. Phương pháp chính để nhận biết xu hướng quan điểm của những từ, cụm từ chỉ cảm nghĩ là dựa trên thống kê hoặc dựa trên từ vựng. Với nhiệm vụ phân lớp các tài liệu đã cĩ rất nhiều các phương pháp học máy thống kê được sử dụng cho mục đích này, như là: Nạve Bayes, phân loại maximum Entropy, máy vector tựa SVM, cây quyết định Thuật tốn gồm các bước sau: Thuật tốn gồm 4 bước:
  11.  Bước 1: Xác định các n-gram: các đặc trưng được lọc qua tồn bộ tập dữ liệu.  Bước 2: Tính tốn tần số xuất hiện của các n-gram tích cực, tiêu cực và tính trọng số của các n-gram.  Bước 3: Chọn n-gram thỏa mãn ngưỡng và cĩ trọng số cao cũng như loại bỏ các n-gram khơng cĩ ý nghĩa cho việc phân loại.  Bước 4: Tính tốn độ chính xác của quá trình huấn luyện của bộ phân lớp. Trong đĩ: Xét trong một văn bản, Ngram là một cụm từ gồm nhiều từ liên tiếp cùng xuất hiện trong văn bản đĩ. Và do đĩ Bigram là một cụm từ gồm 2 từ liên tiếp cùng xuất hiện trong văn bản đĩ. Nếu độ dài tính theo từ của một văn bản là L thì số N-gram được sinh ra là : Như vậy, N càng nhỏ thì số lượng N-gram sinh ra càng lớn. Xây dựng các đặc trưng: sử dụng mơ hình ngơn ngữ N-gram để xây dựng các mệnh đề thơng tin ngữ cảnh, từ đĩ xây dựng các đặc trưng trước khi đưa vào huấn luyện mơ hình. Cĩ được tập hợp các N-gram, ta tiến hành xây dựng các mệnh đề thơng tin ngữ cảnh. Mệnh đề mơ tả thơng tin ngữ cảnh là một mệnh đề chỉ ra văn bản hiện tại chứa một N-gram nào đĩ. Ví dụ, [document has i_love_it] Theo cách mà nguyên lý Entropy đã cung cấp để xây dựng đặc trưng: một đặc trưng là sự kết hợp giữa mệnh đề mơ tả thơng tin ngữ cảnh
  12. và nhãn của lớp tương ứng với văn bản. Ví dụ, với y là lớp “int” (interesting) ta cĩ một đặc trưng như sau: 1 If y=int and document_has_i_love_it fdocument _ has _ i _ love _ it , int(x, y) = true 0 Đặc trưng này sẽ cĩ giá trị đúng nếu văn bản hiện tại chứa cụm từ “I love it” và nĩ được gán nhãn “int”. Cần chú ý rằng, số lượng các mệnh đề thơng tin ngữ cảnh sinh ra nhỏ hơn số lượng các N-gram(vì cĩ những N-gram trùng nhau cũng xuất hiện trong một văn bản) và cũng khơng bằng số lượng các đặc trưng. Lựa chọn đặc trưng i) Chiến lược loại bỏ stop-word Bản chất của các ngơn ngữ tự nhiên là luơn cĩ các câu, từ xuất hiện nhiều nhưng khơng mang nhiều ý nghĩa để phân loại. Trong tiếng Anh gọi đĩ là stop-word. Stop-word khơng những dư thừa, khi kết hợp với các từ khác để xây dựng đặc trưng chúng cịn gây ra hiện tượng overfitting. Qua thử nghiệm trên một bộ phân lớp văn bản trên tiếng Anh, sau khi lọc stop- word độ chính xác huấn luyện(trainning accuracy) tăng lên đáng kể. Vì vậy loại bỏ stop-word là rất cần thiết. Vậy làm thế nào để loại bỏ stop-word. Khĩa luận này nghiên cứu một phương pháp khá hiệu quả, đĩ là sau khi sinh N-gram, và loại bỏ theo quy tắc: Loại bỏ các n-gram là stop-word: điều này cĩ lợi với các ngơn ngữ mà đơn vị nhỏ nhất khơng phải là từ hơn là câu. Ví dụ, câu “he is in Hanoi” sinh ra 2-gram “is_in” chứa 2 stop-word là “is” và “in”.
  13. ii) Đặt ngưỡng Thực tế cho thấy, cĩ những mệnh đề thơng tin ngữ cảnh xuất hiện nhiều lần trong một văn bản và những mệnh đề thơng tin ngữ cảnh xuất hiện rất ít lần. Ví dụ trong câu “Oil Prices are Escalating”: [document has Oil Prices are] Để loại bỏ những mệnh đề thơng tin ngữ cảnh khơng cĩ nhiều ý nghĩa này, chiến lược lọc đặt ngưỡng chỉ đơn giản đặt ngưỡng cho sự xuất hiện của một mệnh đề thơng tin ngữ cảnh trong tồn bộ tập mệnh đề thơng tin ngữ cảnh: nếu số lần xuất hiện nằm ngồi một khoảng nào đĩ thì bị loại bỏ. Huấn luyện mơ hình Sau khi đã xây dựng được tập các đặc trưng ta tiến hành huấn luyện mơ hình. Ở bước này chính là lúc áp dụng các thuật tốn ước lượng tham số để tìm ra tập trọng số λ(mỗi một đặc trưng fi sẽ được gán một trọng số λi). Một văn bản mới cĩ một tập các đặc trưng, chính tập trọng số sẽ quyết định mức độ quan trọng của các đặc trưng và chúng ảnh hưởng trực tiếp đến quá trình phân lớp cho văn bản mới, từ đĩ dự đốn một cách chính xác lớp cho văn bản đĩ. Trong quá trình huấn luyện mơ hình, chúng ta cần tiến hành đánh giá độ chính xác của bộ phân lớp. Nĩi cách khác, trong quá trình này cần đánh giá khả năng đốn nhận của mơ hình thơng qua độ chính xác(accuracy) của quá trình huấn luyện.
  14. Chƣơng 2: MƠ HÌNH ENTROPY CỰC ĐẠI 2.1 GIỚI THIỆU Mơ hình Entropy cực đại là mơ hình dựa trên xác suất cĩ điều kiện cho phép tích hợp các thuộc tính đa dạng từ dữ liệu mẫu nhằm hỗ trợ quá trình phân lớp. Tư tưởng chủ đạo của nguyên lý Entropy cực đại rất đơn giản: ta phải xác định mơt phân phối mơ hình sao cho phân phối đĩ tuân theo mọi giả thiết đã quan sát từ thực nghiệm, ngồi ra khơng cho thêm bất kì giả thiết nào khác. Điều này cĩ nghĩa là phân phối mơ hình phải thoả mãn các ràng buộc quan sát từ thực nghiệm và phải gần nhất với phân phối đều. Entropy là độ đo về tính đồng đều hay tính khơng chắc chắn của một phân phối xác suất. Một phân phối xác suất cĩ Entropy càng cao thì phân phối của nĩ càng đều. Độ đo Entropy điều kiện của một phân phối xác suất trên một chuỗi các trạng thái với điều kiện biết từ một chuỗi dữ liệu quan sát được tính như sau: H(p) = - 2.2 XÂY DỰNG MƠ HÌNH Xem xét bài tốn phân lớp, với Y là tập các lớp, X là tập các thơng tin ngữ cảnh, là những thơng tin quan trọng cần cho việc phân lớp văn bản vào lớp Y một cách chính xác. Nhiệm vụ trong bài tốn phân lớp là xây dựng một mơ hình thống kê mà dự đốn chính xác lớp của văn bản bất kì. Mơ hình như vậy chính là phương pháp ước lượng xác suất cĩ điều kiện p(y | x). Mơ hình Entropy cực đại cung cấp một phương pháp đơn giản để ước lượng xác suất cĩ điều kiện p(y | x) thơng qua việc thống kê các thuộc tính quan trọng quan sát được từ tập dữ liệu huấn luyện.
  15. 2.2.1 Tập dữ liệu huấn luyện Để làm bài tốn phân lớp trước tiên phải xây dựng tập dữ liệu huấn luyện T = {(x1, y1), , (xN, yN )} trong đĩ {x1, , xN} là tập các thơng tin ngữ cảnh đã được gán nhãn tương ứng là tập các lớp {y1, , yN }. Với một cặp (xi, yi), phân phối xác suất thực nghiệm của nĩ được tính bởi: × số lần xuất hiện của (xi, yi) trong tập dữ liệu mẫu Thơng thường thì mỗi cặp(xi, yi) khơng thể khơng xuất hiện trong tập mẫu mà nĩ sẽ xuất hiện ít nhất một lần. 2.2.2 Những thống kê, đặc trưng và ràng buộc (x, y) mẫu huấn luyện. Khối kiến trúc của mơ hình này sẽ là một tập các thống kê của mẫu huấn luyện. Ví dụ khi xét bài tốn phân loại bộ phim. Bộ phim được xếp vào một trong ba loại: good, not good, normal. Quan sát từ tập dữ liệu mẫu là 74 câu nhận xét đã được gán nhãn, ta cĩ nhận xét như sau: nếu nhận xét cĩ từ “failure” thì xác suất nhận xét đĩ thuộc loại “not good” là 80%. Đây chính là một thống kê. Để biểu diễn sự kiện đĩ chúng ta cĩ thể sử dụng hàm để biểu diễn như sau: 1 If y = “failure” f (x, y) 0 Giá trị kỳ vọng của f liên quan tới phân phối thực nghiệ (x, y) chính là thống kê mà chúng ta đã nhắc tới. Chúng ta biểu diễn giá trị kỳ vọng này bởi: ~ ~ E( f ) p(x, y).f (x, y) với mọi cặp (x, y) (1)
  16. Chúng ta cĩ thể biểu diễn bất kỳ thống kê nào của mẫu huấn luyện như giá trị kỳ vọng của hàm nhị phân(f) thích hợp. Chúng ta gọi hàm đĩ là hàm đặc trưng hay đặc trưng. (Như vậy với các phân phối xác suất, chúng ta sẽ dùng ký hiệu và sử dụng hàm f(x, y) để biểu diễn giá trị của f với mỗi cặp (x, y) riêng biệt cũng như tồn bộ hàm f) Khi chúng ta tìm hiểu về thống kê sẽ thấy sự hữu ích của nĩ, chúng ta cĩ thể thấy được tầm quan trọng của nĩ bằng cách làm cho những gì cĩ trong mơ hình của chúng ta phù hợp với nĩ. Chúng ta làm điều này bằng các ràng buộc các giá trị kỳ vọng mà mơ hình ấn định cho các hàm đặc trưng (f) tương ứng. Giá trị kỳ vọng của f quan hệ với xác suất mơ hình p(y|x) như sau: ~ E( f ) p(x).p(y | x).f (x, y) với mọi cặp (x, y) (2) (x) là phân phối thực nghiệm của x trong mẫu huấn luyện. Chúng ta ràng buộc giá trị kỳ vọng này bằng với giá trị kỳ vọng của f trong mẫu huấn luyện: ~ E( f ) E( f ) (3) Từ (1), (2) và (3) ta cĩ: ~p(x).p(y | x).f (x, y) ~p(x, y).f (x, y) x,y x,y Chúng ta gọi (3) là phương trình ràng buộc hay đơn giản là ràng buộc. Bằng cách thu hẹp sự chú ý tới những xác suất mơ hình p(y|x), như trong cơng thức (3), chúng ta loại trừ các mơ hình được xem xét mà nĩ khơng thích hợp với mẫu huấn luyện dựa vào cách thơng thường mà output của bài tốn sẽ đưa ra đặc trưng f. Tĩm lại, chúng ta cĩ được giá trị trung bình cho các thống kê tương ứng với các hiện tượng tồn tại trong dữ liệu mẫu, (f), và cũng là giá trị
  17. trung bình yêu cầu mà mơ hình của bài tốn đưa ra các hiện tượ (f)). Cần phân biệt rõ ràng 2 khái niệm về đặc trưng và ràng buộc: một đặc trưng là một hàm nhận giá trị nhị phân của cặp (x, y); một ràng buộc là một phương trình giữa giá trị kỳ vọng của hàm đặc trưng trong mơ hình và giá trị kỳ vọng của nĩ trong dữ liệu huấn luyện. 2.2.3 Nguyên lý Entropy cực đại Giả thiết rằng chúng ta cĩ n hàm đặc trưng fi, nĩ quyết định những thống kê mà chúng ta cảm thấy là quan trọng trong quá trình mơ hình hĩa. Chúng ta muốn mơ hình của chúng ta phù hợp với những thống kê đĩ. Vì vậy, chúng ta sẽ muốn p hợp lệ trong tập con C của P được định nghĩa bởi: C = {p € P | E(fi (fi) for i € {1, 2,. , n}} (4) Trong số các mơ hình p € C, triết lý cực đại Entropy yêu cầu rằng chúng ta lựa chọn phân phối mà ngang bằng nhau nhất. Nhưng hiện tại chúng ta đối diện với câu hỏi rằng: ngang bằng nhau ở đây cĩ nghĩa là gì? Trong phạm vi tốn học ngang bằng nhau của phân phối cĩ điều kiện p(y|x) được cung cấp bởi Entropy cĩ điều kiện: H( p) ~p(x).p(y | x).log(p(y | x)) x,y (5) Entropy là bị chặn dưới bởi 0, Entropy của mơ hình khơng cĩ sự khơng chắc chắn nào, và chặn trên bởi log|Y|, Entropy của phân phối ngang bằng nhau trên tồn bộ các giá trị cĩ thể |Y| của y. Với định nghĩa này, chúng ta đã sẵn sàng để biểu diễn nguyên lý của cực đại Entropy: Để lựa chọn mơ hình từ một tập C các phân phối xác suất được chấp nhận, lựa chọn mơ hình p* € C với cực đại Entropy H(p): p* argmax H(p) với p € C (6)
  18. Điều đĩ thể hiện rằng p* luơn luơn xác định; vì vậy, luơn luơn tồn tại một mơ hình duy nhất p* với cực đại Entropy trong bất kỳ tập ràng buộc C nào. 2.2.4 Dạng tham số Từ nguyên lý Entropy cực đại ta cĩ thể phát biểu lại rằng: tư tưởng chủ đạo của Entropy cực đại là ta phải xây dựng được một phân phối thoả mãn các ràng buộc và gần nhất với phân phối đều. Vấn đề đặt ra ở đây là làm thế nào để ta tối ưu được các ràng buộc, tức tìm ra được p* ∈C làm cực đại H ( p). Trong những trường hợp đơn giản, chúng ta dễ dàng tìm ra mơ hình phù hợp bằng các phương pháp giải tích. Tuy nhiên trong thực tế, số các ràng buộc là rất lớn và chồng chéo nhau. Vì vậy, chúng ta sẽ giải bài tốn này theo một hướng tiếp cận khác. Với mỗi một đặc trưng fi, ta đưa vào một tham số λi là một thừa số nhân Lagrange. Hàm Lagrange Λ( p, λ) được định nghĩa như sau: ~ (p, ) H(p) i (E( fi ) E( fi ) Theo lý thuyết thừa số Lagrange, phân phối xác suất p(y | x) làm cực đại độ đo Entropy H (p) và thoả mãn tập ràng buộc C thì cũng làm cực đại hàm Λ( p, λ) trên khơng gian phân phối xác xuất P. Gọi Pλ là mơ hình làm cực đại hàm Lagrange Λ( p, λ), và Ψ(λ) là giá trị cực đại. P arg max ( p, ) với p € P ( ) (p, ) Ta gọi Ψ(λ) là hàm đối ngẫu (dual function). Các hàm pλ, Ψ(λ) đã được tính tốn, chúng cĩ cơng thức như sau: 1 p (y | x) ( exp( . f (x, y))) Z (x) i i i
  19. ~ ( ) ~p(x).logZ (x) E( f ) x i i i Trong đĩ Zλ(x) là hằng số chuẩn hĩa được quyết định bởi yêu cầu Σypλ(y|x) = 1 cho tồn bộ x: Z (x) exp( f (x, y)) y i i i Cuối cùng thay cho việc phải tìm phân phối thoả mãn tập ràng buộc lớn và phức tạp làm cực đại độ đo Entropy, ta đưa về bài tốn chỉ cần tìm tập tham số λ* làm cực đại hàm đối ngẫu Ψ(λ) khơng cịn ràng buộc. Kết quả này cĩ một ý nghĩa quan trọng. Khi đĩ, bất kì một thuật tốn tìm cực đại λ* cho hàm Ψ(λ) cĩ thể sử dụng để tìm ra phân phối cực đại * p của H ( p) thoả mãn * p ∈C. 2.2.5 Mối quan hệ với cực đại Likelihood Log-likelihood L (p) của phân phối thực nghiệ ợc dự đốn trước bởi xác suất mơ hình p được định nghĩa như sau: ~p(x,y) ~ L~ ( p) log p(y | x) p(x, y).log p(y | x) p x,y x,y Dễ dàng cĩ thể kiểm tra được rằng hàm đối ngẫu ψ(λ) của phần trước chính là log-likelihood hàm số mũ của xác suất mơ hình pλ: ( ) L~p (p ) Với cách giải thích này, kết quả của phần trước cĩ thể được viết lại như sau: mơ hình p* € C với cực đại Entropy là mơ hình trong đĩ họ tham số pλ(y|x) mà nĩ cực đại likelihood của xác suất mẫu huấn luyệ . Kết quả này giúp làm tăng thêm tính đúng đắn cho nguyên lý cực đại Entropy: khi quan niệm việc lựa chọn xác suất mơ hình p* trên cơ sở cực đại Entropy là khơng đủ sức thuyết phục, điều xảy ra với cùng một xác suất
  20. p* là một mơ hình mà nĩ, trong số tồn bộ các mơ hình của cùng một dạng tham số, cĩ thể là sự miêu tả tốt nhất cho mẫu huấn luyện. 2.2.6 Các thuật tốn ước lượng tham số Cĩ nhiều thuật tốn dùng để ước lượng tham số, điển hình là các thuật tốn GIS, IIS, L-BFGS. Trong khố luận này, chúng tơi xin giới thiệu thuật tốn L-BFGS là thuật tốn ước lượng tập tham số hiệu quả nhất hiện nay. Cho tập dữ liệu huấn luyện: T = {(x1, y1), , (xN, yN)} Phân phối mũ: 1 p (y | x) ( exp( . f (x, y))) Z (x) i i i Huấn luyện mơ hình Entropy cực đại chính là ước lượng tập trọng số λ = { λi,. , λ k}để phân phối mũ ở trên đạt cực đại cao nhất. Thuật tốn L-BFGS là phương pháp giới hạn bộ nhớ cho phương pháp quasi-Newton(Limited memory BFGS). Phương pháp này cung cấp khả năng tối ưu hàng triệu tham số với tốc độ rất nhanh, vì vậy trong các nghiên cứu mới đây nĩ được đánh giá là hiệu quả hơn các phương pháp khác. Viết lại hàm log-likelihood khi thay pλ( y | x) từ () vào (): L(pλ) = Tư tưởng của thuật tốn là sử dụng phương pháp leo đồi tìm kiếm cực đại tồn cục. Vì bề mặt của hàm L(pλ) là lồi nên hồn tồn cĩ thể thực hiện được điều này. Các thủ tục lặp được sử dụng để tiến gần đến tối ưu tồn cục của hàm L(pλ). Tại mỗi bước lặp ta tìm vec-tơ gradient nào cĩ hướng tiến tới cực đại tồn cục nhất. Trên bề mặt của một hàm lồi, vec-tơ
  21. gradient thoả mãn điều kiện đĩ sẽ cĩ giá trị bằng . Với mỗi một vec-tơ gradient( ) hiện tại xác định cho ta một tập các trọng số. Thành phần thứ i của vecto gradient của là: = - = Trong mỗi bước lặp thủ tục L-BFGS yêu cầu giá trị hiện tại của và vecto gradient hiện tại. Sau đĩ nĩ tính tốn để cập nhật giá trị mới cho tập tham số { λi,. , λ k}. Cuối cùng ta thu được tập trọng số tối ưu {λi*,. , λ k*} sau một số hữu hạn các bước lặp. P(y|x) = 2.3 BÀI TỐN PHÂN LỚP QUAN ĐIỂM SỬ DỤNG PHƢƠNG PHÁP HỌC MÁY MAXIMUM ENTROPY CỰC ĐẠI Để thực hiện phương pháp học máy này với dữ liệu tài liệu, chúng ta sử dụng các đặc trưng N-gram. Đặt { f1, . . . , fm } là một bộ được xác định trước của đặc trưng m cĩ thể xuất hiện trong một tài liệu, ví dụ bao gồm từ “still” hoặc “really stinks”. Đặt ni(d) là số lần xuất hiện của fi trong tài liệu d. Tiếp theo, mỗi vector đặc trưng đại diện cho 1 văn bản d: := (n1(d), n2(d), . . . , nm(d)).
  22. Phân loại Maximum Entropy (MaxEnt, or ngắn gọn là: ME) là một kỹ thuật thay thế hiệu quả đã được chứng minh trong một ứng dụng xử lý ngơn ngữ tự nhiên cho thấy rằng đơi khi nhưng khơng phải lúc nào cũng thực hiện tốt hơn Naive Bayes về phân loại văn bản chuẩn. Nĩ ước tính P(c/d) theo dạng số mũ như sau : PME(c/d) := Trong đĩ: Z(d) là một hàm chuẩn hĩa Fi, clà một đặc trưng / lớp hàm fi: đặc trưng c: lớp Fi, c(d,c‟) : = . Cho ví dụ, một đặc trưng đặc biệt / lớp hàm cĩ thể chạy khi và chỉ khi “still hate” xuất hiện và quan điểm của tài liệu được giả thuyết là tiêu cực. Điều quan trọng là khơng giống như Naive Bayes, MaxEnt khơng giả định về mối quan hệ giữa các đặc trưng, và vì vậy cĩ thể cĩ khả năng thực hiện tốt hơn khi giả định điều kiện độc lập khơng được đáp ứng. là các tham số của đặc trưng; kiểm tra định nghĩa của PME cho thấy rằng lớn cĩ nghĩa fi được xét đến là 1 chỉ số quan trọng của lớp c. Các giá trị của tham số được thiết lập để cực đại hĩa Entropy trong sự phân loại đưa ra tùy theo điều kiện ràng buộc đĩ mà các giá trị được kỳ vọng của lớp các hàm, đối với bản mẫu bằng những giá trị kỳ vọng của chúng, đối với dữ liệu huấn luyện: triết lý cơ bản đĩ là chúng ta nên chọn mơ hình tạo ra các giả định ít nhất về dữ liệu trong khi “still” vẫn cịn phù hợp với nĩ, làm ý nghĩa trực quan hơn.
  23. Chƣơng 3: THỰC NGHIỆM 3.1 DỮ LIỆU THỬ NGHIỆM Trong đồ án này sử dụng dữ liệu từ những bài viết về đánh giá bộ phim gồm 700 nhận xét tích cực và 700 nhận xét tiêu cực. Dữ liệu nguồn của chúng tơi là bản lưu trữ Internet movie Database của rec.arts.movies.reviews newgroup. Tập dữ liệu này sẽ cĩ sẵn tại: /. Các dữ liệu này đã được loại bỏ các chỉ số đánh giá và rút ra thơng tin trong nguyên văn từ các tài liệu gốc định dạng HTML, xử lý các dấu chấm câu như các mục của từ vựng riêng biệt. Chúng tơi tập trung vào những đặc trưng dựa trên những từ đơn và cặp 2 từ . Phát biểu bài tốn: bài tốn phân lớp quan điểm được phát biểu như sau: Cho một file văn bản chứa các câu được biểu diễn: { f1,. . . , fm } là một bộ được xác định trước của m đặc trưng xuất hiện trong một tài liệu. ni(d) là số lần xuất hiện của fi trong tài liệu d. Tiếp theo, mỗi vector đặc trưng đại diện cho 1 văn bản d: := (n1(d), n2(d),. . . , nm(d)). văn bản d chứa quan điểm tiêu cực hay tích cực. Ta thực hiện phân lớp cho văn bản bằng cách gán nhãn: 1 hoặc -1 cho từng câu trong văn bản. 1: tương ứng với văn bản chứa quan điểm tích cực. -1: tương ứng với văn bản chứa quan điểm
  24. Input: Cho một tập hợp các câu văn bản đánh giá D cĩ ý kiến (hoặc tình cảm) về một đối tượng. Output: a tích cực hay câu chứa quan điểm tiêu cực. 3.2 CƠNG CỤ SỬ DỤNG 3.2.1 Cơng cụ sinh SRIML  Giới thiệu: SRILM– The SRI Language Modeling Toolkit là một bộ cơng cụ để xây dựng và áp dụng mơ hình ngơn ngữ thống kê (LMS), chủ yếu là để sử dụng trong nhận dạng giọng nĩi, gắn thẻ thống kê và phân đoạn và một máy dịch thuật.  Thành phần:  Một tập hợp các thư viện lớp C + + thực hiện các mơ hình ngơn ngữ, hỗ trợ stuctures dữ liệu và các chức năng tiện ích linh tinh.  Một tập hợp các chương trình thực thi được xây dựng trên đầu trang của các thư viện để thực hiện nhiệm vụ tiêu chuẩn như các LMS đào tạo và thử nghiệm chúng gắn thẻ, dữ liệu hoặc phân chia văn bản, vv  Cách thực hiện huấn luyện mơ hình ngơn ngữ ngram –count –ordern -interpolate -text -lm Trong đĩ: - order n: thiết lập độ dài lớn nhất của các cụm Ngram sẽ thống kê bằng n. Giá trị mặc định nếu khơng thiết lập tham số này là n = 3 - interpolaten: với n nhận các giá trị là 1, 2, 3, 4, 5, 6, 7, 8, hoặc 9. Tính tốn tần số của các cụm Ngram cĩ độ dài là n bằng cách nội suy từ các cụm Ngram cĩ độ dài nhỏ hơn.
  25. - text :File dữ liệu cần thống kê tần số các cụm Ngram. Tệp văn bản này cĩ thể chứa mỗi câu trên một dịng. Kí hiệu kết thúc và bắt đầu dịng mới sẽ được tự động thêm vào nếu trong tệp đầu vào chưa cĩ. Các dịng trống trong tệp này cũng bị loại bỏ. - lm : xây dựng mơ hình ngơn ngữ truy hồi từ các tần số vừa thống kê, sau đĩ ghi lại vào tệp fileketqua theo định dạng ở trên. 3.2.2 Cơng cụ phân lớp dữ liệu Maxent Cơng cụ mã nguồn mở Maxent của tác giả Le Zhang tại Centre for Speech Technology Research, University of Edinburgh. Bộ cơng cụ Maximum Entropy cung cấp một tập hợp các cơng cụ và thư viện để xây dựng mơ hình Entropy tối đa (Maxent) trên nền Python hay C++. Gồm 3 thành phần chính: Huấn luyện mơ hình Kiểm thử dữ liệu Tính tốn độ chính xác của mơ hình phân lớp + gán nhãn phân loại cho câu chứa quan điểm. Cách thực hiện: Bước 1: Huấn luyện dữ liệu maxent -m Trong đĩ:  là tên file dữ liệuhuấn luyên đã được gán nhãn  -m: thiết lập tên mơ hình
  26.  tên mơ hình người dùng được huấn luyện Bước 2: Quá trình test maxent -p -m -o Trong đĩ:  -p: dự đốn độ chính xác của quá trình huấn luyện  : tên mơ hình đã được huấn luyện ở bước trên  : tên file kết quả 3.3 KẾT QUẢ THỬ NGHIỆM Thực hiện trên bộ dữ liệu polariry review 1.0 Các bước thực hiện: Bước 1: sử dụng cơng cụ N-gram để sinh ra các file dữ liệu chứa các N-gram của tài liệu chứa quan điểm. Ở đây, chúng tơi sử dụng uni-gram (1- gram) và Bi-gram(2-gram). Bước 2: Từ tập dữ liệu này, trước khi được sử dụng để huấn luyện và kiểm thử cần qua một số bước lọc bỏ các đặc trưng khơng tốt. - Bước thứ nhất, lọc bỏ các từ vơ nghĩa (stop word), và các ký tự đặc biệt như {„!‟ „@‟ „, ‟ „.‟ „:‟ „;‟. } - Bước tiếp theo là lọc bỏ các đặc trưng theo tần số. Những đặc trưng cĩ tần số xuất hiện trong dữ liệu huấn luyện thấp hơn một giá trị nào đĩ (mặc định là 10) sẽ bị loại bỏ. Bước cuối cùng được thực hiện sau khi đã gán các trọng số cho từng đặc trưng. Tại bước này, những đặc trưng nào khơng làm tăng Entropy của mơ hình thì sẽ bị loại bỏ.
  27. Bước 3: gán nhãn cho mỗi N-gram trong tập dữ liệu huấn luyện để lấy thơng tin phân loại: các nhận xét chứa quan điểm tích cực được gán nhãn 1, các nhận xét chứa quan điểm tiêu cực được gán nhãn -1. chọn . Để thực hiện phân lớp tài liệu quan điểm, chúng tơi chia tập dữ liệu thành hai tập con là tập huấn luyện và tập test. Tập huấn luyện gồm cĩ 550 nhận xét tích cực và 550 nhận xét tiêu cực. Tập test gồm cĩ 150 nhận xét tích cực và 150 nhận xét tiêu cực. Kết quả thực hiện phân lớp Maximum Entropy với các đặc trưng Uni-gram và Bigram như sau: Đặc trưng Uni-gram Bi-gram Độ chính xác 83,2776 % 79,5987 %
  28. Giao diện chính của chương trình: Một số hình ảnh khi chạy chƣơng trình: Hiển thị dữ liệu 1 trong 3 file sau khi chạy chức năng Get Neg Data
  29. Hiển thị dữ liệu 1 trong 3 file sau khi chạy chức năng Get Pos Data
  30. Hình ảnh file kết quả sau khi chạy Maxent
  31. KẾT LUẬN Trong quá trình làm khĩa luận, em đã tìm hiểu được mơ hình Entropy cực đại, một số khía cạnh về phân lớp quan điểm và các vấn đề đặt ra với bài tốn này. Đồ án tìm hiểu về tiếp cận phân lớp quan điểm sử dụng trích chọn đặc trưng n-gram và áp dụng phương pháp học máy Maximum Entropy. Chương trình thực nghiệm cũng đã thử nghiệm trên bộ dữ liệu với 700 câu tích cực và 700 câu tiêu cực và sử dụng phương pháp học máy cĩ giám sát Maximum Entropy để phân lớp với cách chọn đặc trưng là sử dụng uni-gram và bi-gram. , . , n . !
  32. TÀI LIỆU THAM KHẢO 1. Bo Pang and Lillian Lee và Shivakumar Vaithyanathan. Thumbs up Sentiment Classification using Machine Learning Techniques. 2. Sentiment Identification Using Maximum Entropy Analysis of Movie Reviews. Nipun Mehra and Shashikant Khandelwal and Priyank Patel. 3. Ths. Nguyễn Thị Xuân Hương và Ths. Lê Thụy về “phân tích quan điểm và một số hƣớng tiếp cận”. Hội nghị khoa học lần thứ nhất, 2012, trường ĐHDL Hải Phịng. 4. Nguyễn Thùy Linh về “Phân lớp tài liệu web độc lập ngơn ngữ”. Khĩa luận tốt nghiệp đại học hệ chính quy, ngành cơng nghệ thơng tin, trường Đại học Quốc gia Hà Nội. 5. 6. 7. 8.