Nhập vào một câu truy vấn bằng tiếng Việt của vấn đề cần truy hồi ý kiến, ví dụ “bỏ thi tốt nghiệp phổ thông trung học”, hệ thống sẽ đưa ra danh sách các văn bản có chứa ý kiến bình luận
GIỚI THIỆU
Tổng quan
Hiện nay mạng Internet đã trở nên phổ cập và cho phép người sử dụng dễ dàng trình bày quan điểm của mình về một vấn đề nào đó thuộc một chủ đề bất kì nhƣ chính trị, xã hội, kinh tế thông qua các bài viết, ý kiến phản hồi trên các diễn đàn, trang cá nhân (blog), các báo điện tử
Với một lƣợng thông tin khổng lồ và nhiều nguồn nhƣ vậy, câu hỏi đặt ra là làm sao để biết được ý kiến của đại đa số người sử dụng về một vấn đề được đưa ra như thế nào? Ví dụ, một vấn đề xã hội hiện tại đang nhận đƣợc sự quan tâm của nhiều người là “bỏ thi tốt nghiệp phổ thông trung học, nên hay không?”; câu hỏi là làm sao để truy hồi được các ý kiến của người sử dụng đã đăng trên Internet có liên quan tới vấn đề này?
Các công cụ tìm kiếm hiện tại nhƣ Google chỉ cung cấp dịch vụ truy hồi thông tin ở mức độ văn bản là các sự kiện, mô tả, định nghĩa liên quan đến truy vấn chứ chƣa cung cấp dịch vụ chỉ truy hồi các ý kiến bình luận liên quan truy vấn
Do đó ý tưởng xây dựng một hệ thống truy hồi ý kiến là có cơ sở và là động lực thúc đẩy chúng tôi nghiên cứu và thực hiện luận văn này.
Mục tiêu của luận văn
Mục tiêu của luận văn này là xây dựng một hệ thống truy hồi ý kiến (opinion retrieval) bình luận về các vấn đề xã hội đƣợc đăng trên các báo điện tử tiếng Việt
Nhập vào một câu truy vấn bằng tiếng Việt của vấn đề cần truy hồi ý kiến, ví dụ “bỏ thi tốt nghiệp phổ thông trung học”, hệ thống sẽ đƣa ra danh sách các văn bản có chứa ý kiến bình luận liên quan đến câu truy vấn và đƣợc sắp xếp theo mức độ liên quan
2 Truy hồi ý kiến là một quá trình truy hồi văn bản, trong đó yêu cầu các văn bản đƣợc truy hồi và xếp hạng theo mức diễn đạt ý kiến của chúng đối với một câu truy vấn Một văn bản liên quan phải thỏa hai điều kiện: liên quan tới câu truy vấn, và chứa ý kiến về câu truy vấn, bất kể nó đồng ý (positive) hay không đồng ý (negative) [29]
Truy hồi ý kiến khác với truy hồi thông tin (information retrieval) Truy hồi ý kiến trả về những văn bản chứa đựng ý kiến bình luận có liên quan đến câu truy vấn, trong khi truy hồi thông tin trả về những văn bản liên quan đến câu truy vấn có chứa hoặc không chứa ý kiến bình luận Ví dụ, với câu truy vấn “iPhone5”, truy hồi ý kiến chỉ lấy những văn bản có chứa ý kiến về iPhone5 nhƣ “Tôi thích iPhone5”, trong khi đó những văn bản nói về đặc tính kỹ thuật của iPhone5 sẽ đƣợc coi là không liên quan
Truy hồi ý kiến khác với phân tích ý kiến (sentiment analysis hay opinion mining) Truy hồi ý kiến đi tìm những văn bản chứa đựng ý kiến bình luận, trong khi phân tích ý kiến thực hiện công việc trên những văn bản chứa đựng ý kiến bình luận sẵn có và cho biết ý kiến này đồng ý hay không đồng ý với vấn đề đƣợc đƣa ra
Cho đến nay có khá nhiều công trình nghiên cứu về lĩnh vực truy hồi ý kiến cho tiếng Anh mà tiêu biểu nhƣ [25] [28] [29] nhƣng chƣa có công trình nào thực hiện cho tiếng Việt Đó là lí do đề tài đƣợc chọn thực hiện với tiếng Việt
CƠ SỞ LÝ THUYẾT
Truy hồi thông tin
Gerard Salton, người tiên phong trong lĩnh vực truy hồi thông tin, định nghĩa truy hồi thông tin nhƣ sau [22]
“Truy hồi thông tin là một lĩnh vực liên quan đến việc cấu trúc, phân tích, tổ chức, lưu trữ, tìm kiếm, và truy hồi của thông tin.”
Lĩnh vực truy hồi thông tin làm việc với các ứng dụng khác nhau liên quan đến việc tìm kiếm nhiều loại thông tin khác nhau nhƣ văn bản, hình ảnh, phim, âm thanh, và âm nhạc Ứng dụng thông thường nhất của truy hồi thông tin là tìm kiếm web trong đó người ứng dụng gõ câu truy vấn vào một công cụ tìm kiếm và nhận về một danh sách văn bản đƣợc xếp hạng đƣợc trình bày trên web Một số ứng dụng ví dụ khác là tìm kiếm chiều dọc (Vertical search), tìm kiếm xí nghiệp (Enterprise search), tìm kiếm để bàn (Desktop search), và tìm kiếm ngang hàng (Peer-to-peer search)
- Tìm kiếm chiều dọc là một dạng đặc biệt của tìm kiếm web, tập trung vào một loại nội dung online nhƣ tin tức, mua sắm, du lịch
- Tìm kiếm xí nghiệp liên quan đến tìm kiếm các file máy tính trên mạng intranet của một xí nghiệp
- Tìm kiếm để bàn liên quan đến tìm kiếm các file trong một máy tính cá nhân
- Tìm kiếm ngang hàng liên quan đến tìm kiếm thông tin trong một mạng các node hoặc máy tính không có bất kì kiểm soát trung tâm nào
Bên cạnh tìm kiếm, lọc (filtering), phân loại (classification), và trả lời câu hỏi (question answering) là các công việc dựa trên văn bản đƣợc định ra trong lĩnh vực truy hồi thông tin [6]
4 - Lọc là việc tìm và theo dõi thông tin có thể cần thiết cho một người và đưa ra thông báo thông qua việc sử dụng các cơ chế nhƣ email
- Phân loại tự động sắp xếp các văn bản vào tập của các loại hoặc nhãn định trước
- Trả lời câu hỏi có mục đích là tìm và trả về câu trả lời cho một câu hỏi cụ thể thay vì trả về toàn bộ văn bản chứa đựng câu trả lời
Trong luận văn này, chúng ta làm việc với các văn bản, và công việc liên quan dựa trên tìm kiếm (search-based task)
Một khái niệm quan trọng của truy hồi thông tin là sự liên quan (relevance)
Một văn bản liên quan là một văn bản chứa các thông tin người sử dụng tìm kiếm, khi gửi câu truy vấn tới công cụ tìm kiếm [6] Người ta có thể nghĩ đơn giản rằng các văn bản liên quan có thể đƣợc truy hồi bằng cách tìm kiếm chính xác các từ khóa truy vấn trong văn bản Tuy nhiên, một số vấn đề nảy sinh làm cho công việc truy hồi này khó khăn hơn bề ngoài của nó
Vấn đề thứ nhất là vấn đề không phù hợp truy vấn (query mismatch problem): các từ khác nhau có thể đƣợc dùng để diễn tả cùng một khái niệm Vì vậy, với việc tìm kiếm chính xác các từ khóa truy vấn có thể bỏ sót một số văn bản liên quan
Vấn đề thứ hai quan trọng là phân biệt giữa sự liên quan chủ đề (topical relevance) và liên quan người sử dụng (user relevance) Một văn bản được gọi là liên quan chủ đề với một câu truy vấn nếu nó cùng chủ đề với truy vấn đó Tuy nhiên, một người tìm kiếm thông tin, thường gọi là người sử dụng (user), có thể nhìn nhận một số văn bản liên quan chủ đề là không liên quan Sự liên quan người sử dụng có thể sử dụng một số yếu tố khác nhƣ tính chất mới xảy ra (recency), ngôn ngữ, hoặc có diễn đạt ý kiến về truy vấn Ví dụ, nếu một người sử dụng tìm kiếm trang chủ của một hội nghị sắp diễn ra, thì việc truy hồi một trang chủ cách đây ba năm là không thỏa mãn và trang chủ cũ đó được coi là không liên quan theo người sử dụng
Các nhà nghiên cứu đã đề xuất nhiều mô hình truy hồi văn bản liên quan đến nhu cầu thông tin của người sử dụng Theo Croft và các cộng sự [6], một mô hình truy hồi có thể đƣợc định nghĩa là một biểu diễn hình thức của quá trình so trùng một câu truy vấn và một văn bản Các mô hình truy hồi truyền thống tập trung vào các văn bản liên quan chủ đề trong khi các tiêu chuẩn (criteria) có thể cũng quan
5 trọng để thỏa mãn nhu cầu người sử dụng Trong phần kế tiếp chúng ta sẽ xem xét các mô hình truy hồi liên quan chủ đề chính yếu
Các mô hình truy hồi
Các mô hình truy hồi có thể đƣợc phân loại thành các lớp chính gọi là: mô hình Boolean (Boolean Model), mô hình không gian vector (Vector Space Model), mô hình xác suất (Probabilistic Model), và mô hình ngôn ngữ (Language Model) [2]
Mô hình Boolean Mô hình truy hồi Boolean, cũng đƣợc biết đến là truy hồi so trùng chính xác (exact match), là mô hình truy hồi đầu tiên đƣợc sử dụng trong các công cụ tìm kiếm Nó định rõ các truy vấn sử dụng các toán tử logic Boolean AND, OR, và NOT Toán tử AND bắt buộc một văn bản liên quan phải chứa tất cả từ khóa truy vấn Toán tử OR bắt buộc một văn bản liên quan phải chứa ít nhất một từ khóa truy vấn Toán tử NOT định rõ một từ khóa là dấu hiệu của các văn bản không liên quan và vì vậy, một văn bản liên quan không đƣợc chứa từ khóa này
Với mỗi văn bản, mô hình truy hồi Boolean trả về TRUE hoặc FALSE dựa trên nó liên quan hay không liên quan tới câu truy vấn Vì vậy, đầu ra của một mô hình
Boolean không thể sử dụng trực tiếp cho việc xếp hạng do không có khác biệt giữa các văn bản liên quan Điểm mạnh của mô hình truy hồi Boolean là hình thức rõ ràng và sự đơn giản của nó Các hạn chế của mô hình truy hồi Boolean trong việc so trùng riêng phần (partial matching) một câu truy vấn và một văn bản cùng với việc không thể trả về danh sách các văn bản đã đƣợc xếp hạng dẫn tới sự ra đời của các mô hình thế hệ mới nhƣ mô hình không gian vector
Mô hình không gian vector Mô hình không gian vector cho phép so trùng riêng phần một câu truy vấn và một văn bản Nó biểu diễn cả văn bản và câu truy vấn trong một không gian vector t-chiều, trong đó t là số lƣợng từ khóa trong bộ từ vựng Các văn bản sẽ được xếp hạng dựa vào độ tương tự (similarity) với câu truy vấn trong không gian đó Trong số các độ đo tương tự thì độ đo cosine, tức là cosine của góc giữa hai vector văn bản và câu truy vấn, là độ đo quan trọng nhất Các phần tử của các vector có thể mang giá trị nhị phân hoặc giá trị thực Các vector nhị phân cho biết sự có mặt hoặc không có mặt của các từ khóa trong một câu truy vấn hoặc một văn bản Các phương pháp đánh trọng số khác nhau đã được đưa ra để biểu diễn các văn bản và câu truy vấn dưới dạng các vector với các phần tử mang giá trị thực Các phương pháp đánh trọng số này dựa trên mức độ quan trọng của từ khóa
6 trong sai biệt giữa các văn bản liên quan và các văn bản không liên quan và tần suất của nó trong văn bản
Mô hình xác suất Một trong những mô hình truy hồi hiệu quả là mô hình xác suất Từ ý tưởng không hệ thống truy hồi nào có thể được mong đợi để dự đoán với sự chắc chắn các văn bản nào là liên quan đến nhu cầu thông tin của người sử dụng, nguyên lý xếp hạng xác suất (Probability Ranking Principle) ra đời khuyến khích sự phát triển của các mô hình truy hồi xác suất Nguyên lý xếp hạng xác suất nói rằng nếu một phản hồi của hệ thống truy hồi đối với mỗi yêu cầu là một sự xếp hạng các văn bản trong bộ sưu tập nhằm làm giảm xác suất liên quan với người sử dụng gửi yêu cầu, trong đó các xác suất đƣợc ƣớc tính càng chính xác càng tốt dựa trên bất kì dữ liệu đƣợc sẵn sàng cho hệ thống với mục đích này, thì độ hiệu quả toàn thể của hệ thống đối với người sử dụng là những cái tốt nhất có thể lấy được dựa trên những dữ liệu này
Dựa trên một số giả định, nhƣ là sự liên quan của một văn bản với một câu truy vấn là độc lập với các văn bản khác, có thể chứng minh đƣợc nguyên lý trên là đúng và sự xếp hạng đƣợc tạo ra là tối ƣu Xếp hạng dựa trên nguyên lý xếp hạng xác suất yêu cầu việc ƣớc tính xác suất của sự liên quan Các mô hình khác nhau đã đƣợc đƣa ra để ƣớc tính xác suất liên quan của một văn bản với một câu truy vấn
Học máy và truy hồi thông tin
Học là thâu đạt tri thức thông qua kinh nghiệm [3] Học máy (Machine Learning) là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu và xây dựng các kỹ thuật cho phép hệ thống có thể "học" đƣợc những kinh nghiệm cho trước để từ đó áp dụng cho những tình huống tương tự của cùng một bài toán Hay nói một cách khác là xây dựng những chương trình máy tính có khả năng tự động học và cải thiện hiệu quả thông qua kinh nghiệm
Quá trình học bao gồm các yếu tố sau:
- Nhiệm vụ (task): cho biết học để làm việc gì
- Độ đo hiệu quả (performance measure): để đánh giá kết quả của việc học
- Tập huấn luyện (training data): là những bài huấn luyện cho quá trình học
- Tập kiểm tra (testing data): dữ liệu để kiểm tra việc học
- Các đặc trƣng để học (learning features): những đặc trƣng dùng cho việc học Tập hợp các đặc trƣng của một nhiệm vụ đƣợc gọi là vector đặc trƣng của nhiệm vụ đó
Chúng ta có thể lấy một ví dụ cụ thể nhƣ việc "học" cách phân biệt thƣ điện tử có phải là thƣ rác hay không nhƣ sau:
- Nhiệm vụ: phân loại thƣ rác
- Độ đo hiệu quả: độ chính xác (tỉ lệ giữa số thƣ rác nhận dạng đƣợc trên tổng số thƣ nhận dạng), độ đầy đủ (tỉ lệ giữa số thƣ rác nhận dạng đƣợc trên tổng số thƣ rác của tập kiểm tra)
- Tập huấn luyện: chứa những dữ liệu đã phân loại sẵn là thƣ rác hay không
- Tập kiểm tra: chứa dữ liệu để kiểm tra việc nhận diện thƣ rác có hiệu quả hay không
- Các đặc trƣng để học: số lƣợng những từ đƣợc nghi ngờ là của thƣ rác, ví dụ nhƣ "quảng cáo", "liên hệ ngay"…
Học máy đƣợc áp dụng rộng rãi trong nhiều lĩnh vực khác nhau nhƣ dịch thuật, xử lý ảnh, xử lý ngôn ngữ tự nhiên, khai phá dữ liệu, nhận dạng chữ viết, giọng
10 nói… Một ví dụ điển hình cho ứng dụng của học máy là Google dịch 1 (Google Translate)
Giải thuật cho học máy có thể chia thành các loại sau: học máy có giám sát, học máy không giám sát, học máy bán giám sát, và học máy tăng cường
- Học máy có giám sát (Supervised Learning) Tập huấn luyện chứa đầy đủ vector mang giá trị của các đặc trưng và cho biết trước câu trả lời chính xác
Giá trị của từng đặc trƣng có thể là giá trị liên tục (continuous) hoặc rời rạc (discrete), hoặc là nhãn của đối tƣợng đầu vào Nhiệm vụ chính là xây dựng mô hình học hợp lý của việc tổng quát hoá dữ liệu
- Học máy không giám sát (Unsupervised Learning) Tương tự như học máy giám sát nhƣng tập huấn luyện không có câu trả lời chính xác mà giải thuật học máy sẽ tự đưa ra câu trả lời Thông thường thì độ chính xác của phương pháp học máy không giám sát sẽ thấp hơn học máy có giám sát
- Học máy bán giám sát (Semi-Supervised Learning) Trong thực tế, tập huấn luyện không phải lúc nào cũng có đầy đủ các câu trả lời chính xác bởi vì chi phí hay hoàn cảnh khó khăn Và kết quả của phương pháp học máy không giám sát lại không đạt được yêu cầu nên phương pháp học máy bán giám sát ra đời để kết hợp hai ưu điểm của hai phương pháp trên
- Học máy tăng cường (Reinforcement Learning) Thuật toán sẽ có tương tác trực tiếp với tình huống thực tế Và các tình huống này sẽ cung cấp những thông tin phản hồi ngay tại lúc đó để việc học máy thích ứng thực tế hơn và đƣa ra kết quả chính xác hơn
Học máy đƣợc ứng dụng rộng rãi trong nhiều lĩnh vực Riêng với truy hồi thông tin, học máy đặc biệt thích hợp Các quá trình xử lí chính trong truy hồi thông tin theo một cách nào đó dựa vào các công việc phân loại đã đƣợc nghiên cứu kĩ trong học máy Các giải thuật học máy sử dụng các mẫu, các đặc trƣng, và giá trị có thể đƣợc cung cấp bởi quá trình xử lí của truy hồi thông tin Các văn bản có thể được coi là các mẫu, nhiều đặc trưng ngôn ngữ có thể sử dụng, và các phương pháp đánh trọng số khác nhau có thể cung cấp giá trị của các đặc trƣng Một yếu tố quan trọng trong sự thành công của các kĩ thuật học máy là sự tồn tại của các dữ liệu huấn luyện thích hợp
11 Mặc dù trong các kĩ thuật học máy không giám sát, chúng ta không cần các mẫu gán nhãn sẵn, trong nhiều ứng dụng chúng ta cần sử dụng kĩ thuật học máy có giám sát để sử dụng thế mạnh của các dữ liệu huấn luyện đƣợc gán nhãn sẵn Ví dụ, để phân loại các văn bản bình luận là đồng ý (positive) hay không đồng ý (negative) chúng ta cần các mẫu bình luận đồng ý và các mẫu bình luận không đồng ý để huấn luyện bộ phân loại Để có đƣợc dữ liệu huấn luyện thích hợp không phải luôn luôn dễ dàng và điều này có thể giới hạn ứng dụng của các kĩ thuật học máy có giám sát
Trong luận văn này chúng tôi sử dụng kĩ thuật học máy SVM cho bộ phân loại ý kiến Phần kế tiếp sẽ giới thiệu đôi nét về kĩ thuật này
Support Vector Machine (SVM) nằm trong nhóm các kĩ thuật học máy có giám sát có thể áp dụng cho việc phân loại hoặc hồi quy (regression) SVM xem dữ liệu nhƣ văn bản là các điểm trong một không gian hình học và tìm kiếm một siêu phẳng (hyper-plan), tức là một mặt phẳng tổng quát hóa trong không gian N-chiều, phân cách tốt nhất tốt nhất các điểm dữ liệu của hai lớp Bằng trực giác, siêu phẳng phân cách tốt nhất sẽ có khoảng cách lớn nhất tới điểm dữ liệu huấn luyện gần nhất của bất kì lớp nào Để phân loại một văn bản, nó đƣợc ánh xạ vào cùng một không gian và dự đoán thuộc về lớp nào dựa vào nó rơi vào bên nào của mặt siêu phẳng Đặc trƣng cơ bản quyết định khả năng phân loại của một bộ phân loại là hiệu suất tổng quát hóa, hay là khả năng phân loại những dữ liệu mới dựa vào những tri thức đã tích lũy đƣợc trong quá trình huấn luyện Thuật toán huấn luyện đƣợc đánh giá là tốt nếu sau quá trình huấn luyện, hiệu suất tổng quát hóa của bộ phân loại nhận đƣợc cao Hiệu suất tổng quát hóa phụ thuộc vào hai tham số là sai số huấn luyện và năng lực của máy học Trong đó sai số huấn luyện là tỷ lệ lỗi phân loại trên tập dữ liệu huấn luyện Còn năng lực của máy học đƣợc xác định bằng kích thước Vapnik-Chervonenkis (kích thước VC) Kích thước VC là một khái niệm quan trọng đối với một họ hàm phân tách (hay là bộ phân loại) Đại lƣợng này đƣợc xác định bằng số điểm cực đại mà họ hàm có thể phân tách hoàn toàn trong không gian đối tƣợng Một bộ phân loại tốt là bộ phân loại có năng lực thấp nhất (có nghĩa là đơn giản nhất) và đảm bảo sai số huấn luyện nhỏ Phương pháp SVM được xây dựng dựa trên ý tưởng này
Xét bài toán phân loại phân loại hai phân lớp với tập dữ liệu mẫu:
Trong đó mẫu là các vector đối tượng được phân loại thành các mẫu dương và mẫu âm:
- Các mẫu dương là các mẫu x i thuộc lĩnh vực quan tâm và được gán nhãn y i
- Các mẫu âm là các mẫu x i không thuộc lĩnh vực quan tâm và đƣợc gán nhãn y i = −1
Các mẫu dương Các mẫu âm
Mặt siêu phẳng lề tối ưu
Hình 2.1 Mặt siêu phẳng lề tối ƣu trong SVM
Bộ phân loại SVM là mặt siêu phẳng phân tách các mẫu dương khỏi các mẫu âm với độ chênh lệch cực đại, trong đó độ chênh lệch, còn gọi là lề (margin) xác định bằng khoảng cách giữa các mẫu dương và các mẫu âm gần mặt siêu phẳng nhất (hình 2.1) Mặt siêu phẳng này đƣợc gọi là mặt siêu phẳng lề tối ƣu
Lịch sử của truy hồi ý kiến
Các nghiên cứu ban đầu trong lĩnh vực này hầu hết bắt đầu với dữ liệu thuộc loại bình luận với mục đích phân loại văn bản xem chúng diễn đạt ý kiến đồng ý (positive) hay không đồng ý (negative) Các hướng nghiên cứu có thể chia ra làm hai nhóm chính: dựa vào từ điển (lexicon-based), và dựa vào phân loại (classification-based) Cả hai hướng này đều dựa vào sự xuất hiện của các từ
Hướng tiếp cận đầu tiên (dựa vào từ điển) sử dụng một danh sách các từ diễn đạt ý kiến, nhƣ “good” và “like”, và giả định rằng sự xuất hiện của các từ này trong một văn bản cho thấy bằng chứng văn bản đó có chứa ý kiến Các điểm ý kiến cho từ khóa có thể đƣợc dùng theo các cách khác nhau để gán điểm ý kiến cho toàn bộ văn bản Hướng tiếp cận thứ hai (dựa vào phân loại) sử dụng sự xuất hiện của các từ và các đặc trƣng ngôn ngữ để xây dựng bộ phân loại nhằm xác định văn bản chứa ý kiến đồng ý hoặc chứa ý kiến không đồng ý dùng các kĩ thuật học máy
Tuy nhiên, hầu hết các nghiên cứu ban đầu trong lĩnh vực này không quan tâm đến vấn đề truy hồi các văn bản liên quan đến chủ đề câu truy vấn Chúng cũng không quan tâm đến việc xếp hạng các văn bản chứa ý kiến Mãi cho đến khi các vấn đề này trở thành một hướng nghiên cứu được quan tâm trong TREC và từ đó TREC blog track ra đời nhằm nghiên cứu về lĩnh vực truy hồi ý kiến
Trong phần tiếp theo, chúng tôi tìm hiểu TREC blog track và các công việc khác nhau đƣợc định ra trong track này Sau đó, tập trung vào phần truy hồi ý kiến là quan tâm nghiên cứu của luận văn này
TREC Blog Track
Blog track đƣợc giới thiệu trong TREC với mục đích khảo sát các hành vi tìm kiếm thông tin trong thế giới blog Nó đƣợc giới thiệu trong TREC 2006 và tiếp tục tới năm 2010 Các công việc (task) khác nhau đƣợc định ra trong TREC blog track gồm có: truy hồi adhoc nền (baseline adhoc retrieval), truy hồi ý kiến (opinion retrieval), tìm kiếm ý kiến phân cực (polarized opinion finding), blog distillation, faceted blog distillation, và xác định tin tức hàng đầu (top news identification)
Dưới đây là mô tả ngắn gọn các công việc này
- Truy hồi adhoc nền: mục đích là tìm kiếm các bài viết blog liên quan đến một truy vấn
- Truy hồi ý kiến: mục đích là tìm kiếm các bài viết blog liên quan và chứa ý kiến về một truy vấn
- Tìm kiếm ý kiến phân cực: mục đích là tìm kiếm các bài viết blog liên quan và diễn đạt ý kiến đồng ý/không đồng ý/trộn lẫn (positive/negative/mixed) về một truy vấn
- Blog distillation: mục đích là tìm kiếm các blog về một chủ để mà người sử dụng có thể đặt (subscribe) và đọc chúng đều đặn
- Faceted blog distillation: là một mở rộng của công việc blog distillation trong đó ngoài sự liên quan đến chủ đề, chất lƣợng của blog nhƣ ý kiến/sự thật (factual), viết bởi cá nhân/công ty hoặc thảo luận có chiều sâu/cạn về chủ đề cũng đƣợc xem xét
- Xác định tin tức hàng đầu: điều tra nghiên cứu xem thế giới blog có thể được sử dụng để xác định các tin tức quan trọng nhất trong ngày cho trước hay không
Do công việc truy hồi ý kiến là mối quan tâm chính của luận văn này nên chúng tôi nói rõ hơn về công việc này
Trong TREC 2006, công việc truy hồi ý kiến nằm trong blog track Nó xem xét bài toán phân tích ý kiến dưới góc nhìn của truy hồi thông tin và giới thiệu bài toán truy hồi và xếp hạng các bài viết blog liên quan và chứa ý kiến về một chủ đề cho trước Từ định nghĩa trên rõ ràng một hệ thống truy hồi ý kiến phải xem xét hai khía cạnh: 1) sự liên quan chủ đề của blog với câu truy vấn và 2) ý kiến của nó với chủ
16 đề truy vấn Công việc truy hồi ý kiến bài viết blog là một phần trong TREC blog track từ năm 2006 đến năm 2008
Một bộ sưu tập blog tên là Blog06 bao gồm khoảng 3,2 triệu bài viết blog đã đƣợc các nhà tổ chức blog track công bố cho cộng đồng và đƣợc sử dụng cho công việc này Cứ mỗi năm tổ chức hội thảo truy hồi ý kiến, một tập 50 câu truy vấn đƣợc chọn bởi nhà tổ chức TREC và thêm vào tập truy vấn cùng với các thẩm định liên quan của chúng Thẩm định liên quan chỉ rằng một bài viết blog là liên quan tới câu truy vấn hay không và nếu có, nó diễn đạt ý kiến nhƣ thế nào (đồng ý, không đồng ý, trộn lẫn)
Sau ba năm tổ chức hội thảo truy hồi ý kiến, bộ sưu tập Blog06 với tập truy vấn 150 câu và các thẩm định liên quan của chúng dường như đã đủ tốt cho việc đánh giá chất lƣợng của một hệ thống truy hồi thông tin Vì vậy, công việc truy hồi ý kiến trong blog track đã ngừng sau năm 2008 Tuy nhiên, bộ sưu tập vẫn còn được sử dụng bởi các nhà nghiên cứu về bài toán truy hồi ý kiến Có rất nhiều nghiên cứu về truy hồi ý kiến blog trong TREC và các hội thảo khác trong đó người ta theo định nghĩa truy hồi ý kiến đƣợc sử dụng trong TREC blog track
Một hướng tiếp cận chung trong truy hồi ý kiến bài viết blog là trước tiên xếp hạng các văn bản dựa vào độ liên quan của chúng với câu truy vấn và tiếp theo là xếp hạng n văn bản đƣợc truy hồi hàng đầu dựa trên điểm ý kiến của chúng Các nghiên cứu cho thấy rằng hiệu quả của các hệ thống truy hồi ý kiến dựa rất nhiều vào hiệu quả của thành phần truy hồi thông tin bên dưới Một hệ thống truy hồi thông tin mạnh sẽ dẫn đến một hệ thống truy hồi ý kiến mạnh hơn là một hệ thống có thành phần truy hồi thông tin yếu Thực tế, một hệ thống không có thành phần tìm kiếm ý kiến nào, chỉ dựa trên thành phần truy hồi thông tin liên quan chủ đề, vẫn có thể hoạt động tốt khi tìm kiếm các bài viết blog chứa ý kiến Lý do là các bài viết blog bản chất là chứa ý kiến và phần lớn các bài viết blog liên quan tới một chủ đề sẽ diễn đạt ý kiến về chủ đề đó
Tóm lại, trong chương này đã thảo luận cơ sở lý thuyết liên quan đến truy hồi ý kiến, bắt đầu với giới thiệu chung về truy hồi thông tin, các mô hình truy hồi thông dụng, phương pháp đánh giá các hệ thống truy hồi thông tin Tiếp đó là phần giới thiệu về học máy với bài toán truy hồi thông tin và cụ thể kĩ thuật SVM Tiếp theo là phần giới thiệu sơ lƣợc về lịch sử của truy hồi ý kiến Và cuối cùng là giới thiệu
17 về TREC Blog Track và các bài toán nó thực hiện, trong đó giới thiệu cụ thể về bài toán truy hồi ý kiến là phần chính của luận văn này
Trong chương 3, chúng ta sẽ xem xét các kĩ thuật hiệu quả đã được công bố trong lĩnh vực truy hồi ý kiến
CÁC CÔNG TRÌNH LIÊN QUAN
Truy hồi ý kiến dựa vào phân loại
Các hệ thống truy hồi ý kiến dựa vào phân loại sử dụng các yếu tố chứa ý kiến (subjective hay opinionated) hoặc không chứa ý kiến (objective hay non- opinionated) để làm dữ liệu huấn luyện xây dựng một bộ phân loại ý kiến (subjectivity classifier)
Trong [29] [30] các tác giả tách các văn bản truy hồi đƣợc trong công đoạn thứ nhất thành các câu Họ sử dụng một bộ phân loại SVM gán nhãn mỗi câu là chứa ý kiến hoặc không và gán điểm ý kiến cho câu Họ đề xuất các phương pháp khác nhau để chấm điểm văn bản dựa vào số lƣợng và số điểm các câu chứa ý kiến có trong văn bản Để tìm các các câu chứa ý kiến có liên quan đến câu truy vấn, họ sử dụng toán tử NEAR là một cửa sổ bao phủ năm câu liên tiếp nhau để xét mức độ
19 liên quan của câu chứa ý kiến với các từ khóa truy vấn (query terms) Cuối cùng điểm liên quan và điểm ý kiến đƣợc kết hợp tuyến tính để cho ra điểm số xếp hạng của văn bản Để xây dựng bộ phân loại ý kiến cho câu, các tác giả sử dụng các nguồn dữ liệu khác ngoài dữ liệu Blog06 để huấn luyện, bao gồm các câu chứa ý kiến truy hồi từ các trang web bình luận nhƣ epinion.com và rateitall.com Họ cũng dùng một bộ tìm kiếm web để thực hiện truy vấn kèm theo các cụm từ chứa ý kiến nhƣ
“reviews”, “don’t like” và coi các văn bản trả về đƣợc xếp hạng đầu là các văn bản chứa ý kiến Họ sử dụng cách tiếp cận tương tự để truy hồi các văn bản không chứa ý kiến từ các trang từ điển nhƣ Wikipedia, và sử dụng bộ tìm kiếm cho câu truy vấn không chứa các từ khóa “reviews”, “comments” Họ dùng uni-grams và bi-grams trong các văn bản truy hồi đƣợc làm các đặc trƣng (features) để huấn luyện bộ phân loại SVM, và sử dụng phương pháp Chi-Square để làm giảm số lượng đặc trưng
Trong [28] các tác giả sử dụng phương pháp CME (Classification by
Minimizing Error) để gán điểm ý kiến cho mỗi câu trong văn bản Họ định nghĩa các đặc trƣng dựa vào mức độ ý kiến và mức độ liên quan của tất cả các câu trong văn bản Một bộ phân loại SVM đƣợc dùng để gán điểm ý kiến cho mỗi văn bản dựa trên giá trị của các đặc trƣng đã đƣợc định nghĩa Một tập dữ liệu ý kiến của dữ liệu bình luận phim bao gồm 5.000 câu chứa ý kiến và 5.000 câu không chứa ý kiến đã đƣợc sử dụng để huấn luyện bộ phân loại CME, nhƣng với bộ phân loại SVM họ chỉ sử dụng dữ liệu Blog06 Các văn bản đƣợc xếp hạng dựa vào điểm cuối cùng là tích của điểm liên quan và điểm ý kiến
Trong [15] các tác giả sử dụng OpinionFinder để phân loại các câu trong văn bản là chứa ý kiến hoặc không chứa ý kiến Họ dùng một phần các câu ý kiến trong văn bản và độ tin cậy (confidence) của bộ phân loại để gán điểm cho văn bản Điểm ý kiến và điểm liên quan đƣợc kết hợp tuyến tính với nhau tạo ra điểm xếp hạng cuối cùng OpinionFinder là bộ công cụ miễn phí xác định câu chứa ý kiến trong văn bản Nĩ sử dụng hai bộ phân loại Nạve Bayes để phân biệt câu chứa ý kiến và không chứa ý kiến bằng cách sử dụng các đặc trƣng ngữ cảnh và từ vựng khác nhau Các bộ phân loại này đƣợc huấn luyện bằng cách sử dụng các câu chứa ý kiến và không chứa ý kiến đƣợc tạo tự động từ một kho dữ liệu chƣa chú thích (corpus of un-annotated data) dùng các bộ phân loại dựa vào luật (rule-based classifiers)
20 Nhìn chung các phương pháp truy hồi ý kiến dựa vào phân loại yêu cầu nhiều dữ liệu huấn luyện để học đƣợc một mô hình cho điểm ý kiến chính xác Tuy nhiên, chúng có lợi thế là rất hiệu quả trong trường hợp dữ liệu huấn luyện đầy đủ có sẵn và các đặc trƣng phân biệt tốt đƣợc sử dụng trong mô hình.
Truy hồi ý kiến dựa vào từ vựng
Các phương pháp truy hồi ý kiến dựa vào từ vựng dùng một danh sách các từ khóa ý kiến gọi là bộ từ vựng ý kiến (opinion lexicon) để tìm các diễn đạt ý kiến có trong văn bản
Trong [25] các tác giả sử dụng nhiều mô đun để đánh giá các ý kiến trong văn bản Mô đun đầu tiên xác định ý kiến dựa vào các từ khóa ý kiến thông thường Một bộ từ vựng được xây dựng bằng cách xác định các từ khóa xuất hiện thường xuyên trong các văn bản chứa ý kiến và không thường xuyên trong các văn bản không chứa ý kiến Các từ khóa kết quả đƣợc lọc bằng tay và gán một trọng số ý kiến Mô đun thứ hai sử dụng tập tiêu chuẩn các từ khóa ý kiến Wilson Mô đun thứ ba dùng để xem xét các từ khóa có tần suất thấp Các đại từ “I” và “you” xuất hiện rất thường xuyên trong văn bản chứa ý kiến, nên mô đun thứ tư được sử dụng để nhận biết các n-grams bắt đầu hoặc kết thúc với các từ khóa này Mô đun cuối cùng dùng nhận biết các từ viết tắt Điểm số từ các mô đun được chuẩn hóa bằng phương pháp MinMax và kết hợp bằng phép tổng có trọng số Cuối cùng, điểm liên quan và điểm ý kiến đƣợc kết hợp tuyến tính để cho ra điểm xếp hạng văn bản
Trong [1] các tác giả đề xuất phương pháp tạo danh sách từ khóa ý kiến tự động từ bộ đánh giá liên quan của TREC 2006 Danh sách các từ khóa ý kiến đƣợc lọc lại dựa vào tần suất của từ khóa trong văn bản trong tập các văn bản liên quan Sau khi xây dựng bộ từ vựng ý kiến, các từ khóa ý kiến đƣợc đƣa vào một công cụ tìm kiếm để lấy điểm ý kiến cho các văn bản liên quan Xếp hạng đƣợc thực hiện theo hai bước Bước thứ nhất, các văn bản được xếp hạng dựa vào điểm ý kiến chia cho hạng liên quan chủ đề Bước thứ hai, các văn bản được xếp hạng dựa vào điểm liên quan chủ đề chia cho hạng của bước thứ nhất
Trong [19] các tác giả đề xuất một phương pháp tạo bộ từ vựng ý kiến cho một chủ đề xác định Đầu tiên điểm ý kiến đƣợc gán cho các văn bản xếp hạng đầu đƣợc truy hồi bởi câu truy vấn, sử dụng một bộ từ vựng ý kiến thông dụng nhƣ SentiwordNet Trọng số ý kiến của các từ khóa đƣợc cập nhật bằng trung bình của
21 điểm ý kiến của các văn bản phản hồi mà các từ khóa xuất hiện Do đó, một từ khóa xuất hiện trong các văn bản với điểm ý kiến cao hơn sẽ có trọng số tăng lên
Phương pháp này cho hiệu quả tốt hơn một ít so với sử dụng bộ từ vựng thông dụng
TRUY HỒI Ý KIẾN TRÊN TIẾNG VIỆT
Phương pháp nền trên tiếng Anh
Zhang và Yu xây dựng hệ thống truy hồi ý kiến theo mô hình ba bước: bước một là sử dụng một công cụ truy hồi thông tin tiêu chuẩn để truy hồi các văn bản có liên quan chủ đề, bước thứ hai là xác định các văn bản có chứa ý kiến liên quan trong tập các văn bản kết quả ở bước một sử dụng bộ phân loại SVM, và bước thứ ba là xếp hạng các văn bản dựa vào điểm liên quan chủ đề và điểm ý kiến
3 http://www.tartarus.org/~martin/PorterStemmer
Truy hồi thông tin (IR)
Xác định văn bản chứa ý kiến liên quan
Các văn bản chứa ý kiến liên quan câu truy vấn Bộ phân loại SVM
Hình 4.1 Mô hình truy hồi ý kiến tổng quát
Một số thuật ngữ đƣợc tác giả sử dụng trong bài báo
- Chủ đề truy vấn hay gọn hơn là truy vấn (query topic hay gọn hơn là query) là một danh sách các từ đƣợc tìm kiếm trong một tập văn bản Các truy vấn là đầu vào của một hệ thống truy hồi thông tin
- Đoạn văn chứa ý kiến (subjective text) là bình luận (comment) hay ý kiến
(opinion) về một chủ thể trong một văn bản Trong một văn bản blog, ý kiến có thể nằm trong bài post đầu tiên của blog hay là từ các phản hồi của người khác đƣợc post sau đó
- Ý kiến liên quan (relevant opinion) của một truy vấn là các ý kiến nói về truy vấn đó Ví dụ, với truy vấn Audi thì các ý kiến về xe hơi Audi là các ý kiến liên quan, còn các ý kiến về iPhone trong cùng một văn bản thì không phải là ý kiến liên quan
- Văn bản chứa ý kiến (opinionative document) là văn bản chứa các loại ý kiến, không cần phải là ý kiến liên quan truy vấn
24 - Văn bản liên quan chủ đề (topic relevant document) của một truy vấn là văn bản đầu ra của một hệ thống truy hồi thông tin Chúng có thể chứa hoặc không chứa ý kiến
- Văn bản chứa ý kiến liên quan (relevant opinionative document) của một truy vấn là văn bản chứa ý kiến liên quan truy vấn đó Một tập các văn bản chứa ý kiến liên quan là đầu ra mong muốn của một hệ thống truy hồi ý kiến Để hiểu rõ hơn, chúng tôi xin mô tả lại các bước quan trọng trong phương pháp của tác giả
Tác giả sử dụng một công cụ truy hồi thông tin tiêu chuẩn để truy hồi các văn bản liên quan chủ đề Một số điểm chính của công cụ này gồm xác định khái niệm (concept identification), mở rộng truy vấn (query expansion), và xếp hạng
Một khái niệm trong một truy vấn đƣợc định nghĩa là một cụm nhiều từ (multi- word phrase) bao gồm các từ truy vấn liền kề nhau, hoặc là một từ đơn không thuộc về khái niệm khác
Xác định khái niệm là một thủ tục tiền xử lí truy vấn, phân mảnh câu truy vấn ban đầu thành các khái niệm Khái niệm đƣợc giới thiệu nhằm làm tăng hiệu quả truy hồi Ví dụ, các từ trong “Happy Feet” (một tựa phim) đƣợc nhận diện nhƣ là một cụm từ Truy vấn này phải đƣợc tìm kiếm nhƣ là một cụm từ chứ không phải là hai từ riêng lẻ
Tác giả đã xây dựng một giải thuật nhận diện cụm từ, liên quan đến từ điển, thống kê từ các tập văn bản, Web, và các công cụ xử lí ngôn ngữ tự nhiên
Ba phương pháp mở rộng truy vấn được sử dụng trong công cụ truy hồi thông tin này Một phương pháp dựa vào từ điển sử dụng Wikipedia để tìm một trang thực thể cho một cụm từ hoặc một từ đơn trong truy vấn Nếu tồn tại trang thực thể này
25 thì tất cả các tựa đề của trang này đƣợc mở rộng thành các đồng nghĩa của khái niệm trong truy vấn
Phương pháp thứ hai là phân tích ngữ cảnh cục bộ, kết hợp phân tích toàn cục và phản hồi cục bộ Các khái niệm trong truy vấn đƣợc dùng để truy hồi một danh sách các văn bản từ tập văn bản cho trước k thuật ngữ đầu tiên trong n văn bản trả về đầu tiên đƣợc lấy làm các thuật ngữ dự tuyển
Phương pháp cuối cùng là phương pháp dựa vào web Nó tương tự như mở rộng phản hồi giả cục bộ nhƣng sử dụng các văn bản từ web để làm tập văn bản
Truy vấn đƣợc đƣa vào một máy tìm kiếm web nhƣ Google, và k thuật ngữ đầu tiên trong m văn bản trả về đầu tiên đƣợc lấy làm các thuật ngữ dự tuyển
Mỗi phương pháp mở rộng trên tạo các thuật ngữ có trọng số được thêm vào truy vấn ban đầu 20 thuật ngữ mở rộng đầu tiên xếp hạng theo trọng số đƣợc chọn làm các thuật ngữ mở rộng cuối cùng cho truy vấn
Hiện thực phương pháp nền trên tiếng Việt
Chúng tôi hiện thực hệ thống truy hồi ý kiến VOR trên tiếng Việt dựa vào phương pháp nền nêu trên với một số chỉnh sửa cho phù hợp với tiếng Việt Một số điểm khác biệt chính nhƣ sau
Truy hồi thông tin Ở bước một này chúng tôi sử dụng GoogleDesktop là một phiên bản cho phép tìm kiếm trên máy cục bộ của máy tìm kiếm Google để làm thành phần truy hồi thông tin Lý do là luận văn này chỉ tập trung vào bước hai – xác định văn bản chứa ý kiến liên quan – nên ở bước này sẽ sử dụng một máy tìm kiếm có sẵn thay vì hiện thực lại
Do sử dụng Google làm thành phần truy hồi thông tin nên điểm tương tự truy hồi thông tin của văn bản sẽ không có Thay vào đó, thứ hạng trả về văn bản của Google sẽ đƣợc sử dụng trong xếp hạng văn bản cuối cùng
Xác định văn bản chứa ý kiến liên quan
Tiếng Anh và tiếng Việt có một số điểm khác biệt nên xử lí văn bản tiếng Anh cũng có vài điểm khác với xử lí văn bản tiếng Việt Trước hết ta tìm hiểu một số điểm khác biệt cần lưu ý khi xử lí văn bản giữa hai ngôn ngữ này
Trong ngôn ngữ học, từ là đơn vị cơ bản Do đó để xử lí văn bản cần phải tách đƣợc các từ trong câu Việc phân tách từ trong ngôn ngữ tiếng Việt là không đơn giản và hiện nay đây vẫn là vấn đề đang đƣợc tiếp tục nghiên cứu Theo [8] thì tiếng Việt là một ngôn ngữ đơn lập được viết dưới dạng các kí tự Latin mở rộng và không giống với các ngôn ngữ đơn lập khác nên không thể áp dụng cách xử lí của các ngôn ngữ khác một cách máy móc đƣợc
Tiếng hay còn gọi là hình vị, là đơn vị nhỏ nhất trong tiếng Việt chỉ có một cách để phát âm [7] Trong văn nói mỗi tiếng thường gồm năm thành phần: phụ âm đầu, phụ âm thứ cấp, nguyên âm chính, phụ âm cuối, và dấu Nguyên âm chính là thành phần bắt buộc phải có trong các tiếng của ngôn ngữ tiếng Việt, các thành phần còn lại có thể có hoặc không
Từ trong tiếng Việt có những đặc điểm sau:
- Đƣợc cấu tạo từ các tiếng
- Là nguyên về mặt hình thức, ngữ nghĩa và độc lập về mặt ngữ pháp
- Từ có thể là từ đơn (chỉ có một tiếng) hoặc là từ phức (bao gồm nhiều tiếng)
Bảng 4.2 tổng hợp một số điểm khác biệt cần lưu ý khi xử lí ngôn ngữ giữa tiếng Anh và tiếng Việt
Tiếng Anh Tiếng Việt Đơn vị cơ bản Từ Tiếng
Cách hình thành từ Đƣợc xây dựng từ sự kết hợp các kí tự Đƣợc xây dựng từ các tiếng
Biên giới từ Đƣợc xác định dựa vào khoảng trắng hoặc các dấu phân cách Đƣợc xác định dựa vào cách kết hợp các tiếng trong một ngữ cảnh cụ thể
Biến đổi hình thái Có
Ví dụ I -> me, he -> him
Sử dụng tiền tố và hậu tố
Ví dụ process, processed, processor
Bảng 4.2 Một số điểm khác biệt cần lưu ý giữa tiếng Anh và tiếng Việt
Trong quá trình xử lí văn bản tiếng Việt để lấy các đặc trƣng cho bộ phân loại SVM, các văn bản đƣợc tách thành các câu, và các câu sẽ đƣợc tách thành các từ
Nhƣ đã nói ở trên, việc xác định biên giới từ để thực hiện tách từ trong tiếng Việt là không hề dễ dàng Do đó chúng tôi sử dụng một công cụ tách từ có sẵn đƣợc thực
32 hiện trong [21] Đây là một trong những công cụ tách từ tiếng Việt có độ chính xác cao hiện nay
Cũng trong quá trình này, bước thực hiện Porter stemming để trả về từ gốc ban đầu đƣợc bỏ đi bởi vì từ trong tiếng Việt không thay đổi hình thái
ĐÁNH GIÁ
Tập dữ liệu
Tập dữ liệu kiểm tra cho một hệ thống truy hồi ý kiến gồm có tập văn bản D, tập truy vấn Q, và tập các văn bản liên quan tương ứng với mỗi câu truy vấn (xác định bởi chuyên gia) [17] Với một câu truy vấn q trong Q, kết quả truy hồi sẽ đƣợc đánh giá bằng mức độ tương tự giữa tập văn bản truy hồi bởi q và tập văn bản liên quan tương ứng với q Để đánh giá hệ thống truy hồi ý kiến, ta xây dựng tập văn bản D sao cho đối với một câu truy vấn q, một văn bản trong D thuộc vào một trong 4 loại: (i) không liên quan q và không chứa ý kiến, (ii) liên quan q nhƣng không chứa ý kiến, (iii) chứa ý kiến nhƣng không diễn đạt q, và (iv) chứa ý kiến và diễn đạt q Tập văn bản liên quan tương ứng với q chỉ gồm tất cả các văn bản thuộc loại (iv)
Theo TREC [16], một tập dữ liệu lý tưởng bao gồm 50 câu truy vấn, và hệ thống sẽ đƣợc đánh giá trên 1.000 văn bản kết quả khi chạy một câu truy vấn Nhƣ vậy đối với một câu truy vấn, có thể thu thập 1.000 văn bản liên quan (thuộc loại (iv)), và 1.000 văn bản không liên quan (thuộc 3 loại còn lại) Nhƣ vậy tập dữ liệu sẽ bao gồm khoảng 100.000 văn bản cho 50 câu truy vấn
Do đề tài đƣợc hiện thực trên tiếng Việt và chƣa có sẵn tập dữ liệu kiểm tra nào cho tiếng Việt nên chúng tôi tự xây dựng một tập dữ liệu kiểm tra Trước hết tập truy vấn Q đƣợc xây dựng Sau đó, với mỗi truy vấn q trong Q, tập các văn bản kiểm tra cho q đƣợc thu thập từ báo điện tử tiếng Việt Tập hợp tất cả các văn bản này chính là tập văn bản D
Chúng tôi xây dựng một tập dữ liệu gồm 10 câu truy vấn Với một câu truy vấn q, 500 văn bản thuộc loại (iv) và 500 văn bản thuộc loại (ii) sẽ đƣợc thu thập Tập dữ liệu bao gồm tổng cộng 10.000 văn bản và 10 câu truy vấn Lưu ý, với q 1 khác q 2
34 thì một văn bản thuộc loại (iv) đối với q 1 sẽ thuộc loại (iii) đối với q 2 và một văn bản thuộc loại (ii) đối với q 1 sẽ thuộc loại (i) đối với q 2
Hệ thống sau khi hoàn thiện sẽ đƣợc kiểm tra trên tập dữ liệu tự xây dựng này
Cách thu thập văn bản mẫu dương
Văn bản mẫu dương của một truy vấn q là văn bản thuộc loại (iv) – chứa ý kiến liên quan q Để thu thập văn bản mẫu dương của một truy vấn q, chúng tôi tìm các bài báo liên quan đến q và thu thập các ý kiến bình luận của độc giả phía dưới bài viết Mỗi ý kiến hợp lệ sẽ được lưu thành một văn bản mẫu dương
Một ý kiến hợp lệ của q thỏa các tính chất sau
- Là tiếng Việt có dấu
- Có độ dài hơn 10 từ
- Chứa ít nhất một từ khóa trong truy vấn q
Hình 5.1 Cách lấy mẫu dương bước 1
Ví dụ, với truy vấn “dịch sởi”, ý kiến hợp lệ là “Các mẹ có thể hoãn những chuyến đi chơi, hết dịch rồi tha hồ mà đi, tránh bị dịch sởi tấn công các cháu, tội nghiệp lắm” Các ý kiến không hợp lệ là “Hoan ho y kien chi dao quyet liet cua bo truong Hy vong dich soi se som ket thuc”, hoặc “hoàn toàn đồng ý với ý kiến của bạn”
35 Sau đây là các bước minh họa quá trình lấy mẫu dương
Bước 1, vào google.com.vn gõ câu truy vấn (hình 5.1)
Bước 2, chọn một link rồi cuộn xuống phần ý kiến bạn đọc (hình 5.2)
Hình 5.2 Cách lấy mẫu dương bước 2
Sau đó, copy từng ý kiến hợp lệ vào file văn bản tương ứng
Cách thu thập văn bản mẫu âm
Hình 5.3 Cách lấy mẫu âm bước 1
36 Văn bản mẫu âm của một truy vấn q là văn bản thuộc loại (ii) – liên quan q nhƣng không chứa ý kiến Để thu thập văn bản mẫu âm của một truy vấn q, chúng tôi tìm các bài báo liên quan đến q và thu thập các bài viết này Mỗi bài viết sẽ đƣợc lưu thành một văn bản mẫu âm
Cách thu thập mẫu âm cũng tương tự cách thu thập mẫu dương, chỉ khác ở chỗ ở bước 2, thay vì lấy ý kiến độc giả, ta sẽ lấy nội dung bài viết, như hình 5.4
Bước 1, vào google.com.vn gõ câu truy vấn (hình 5.3)
Bước 2, chọn một link rồi xác định nội dung bài viết (hình 5.4)
Hình 5.4 Cách lấy mẫu âm ở bước 2
Sau đó nội dung bài viết sẽ được copy vào file văn bản tương ứng
Tập dữ liệu đã xây dựng
Theo tính toán tập dữ liệu sẽ bao gồm tổng cộng 10.000 văn bản và 10 câu truy vấn Các câu truy vấn này là các vấn đề thời sự đang đƣợc dƣ luận quan tâm hiện nay Tuy nhiên do nhân lực và thời gian hạn chế nên chúng tôi chỉ thu thập đƣợc 7.500 văn bản Trong quá trình thu thập mẫu âm cho một số câu truy vấn, do không đủ số lượng bài viết và một bài viết thường rất dài nên một số bài viết đã được tách ra thành hai hay nhiều mẫu âm nhƣng vẫn đảm bảo mỗi mẫu âm đều liên quan chủ đề với câu truy vấn
37 Bảng 5.1 thể hiện số liệu của tập dữ liệu chúng tôi đã xây dựng Mặc dù tập dữ liệu chƣa hoàn thiện nhƣ dự tính nhƣng cũng đã đủ để thực hiện việc đánh giá hệ thống VOR
STT Truy vấn Số mẫu dương Số mẫu âm q 1 dịch sởi 500 500 q 2 bỏ thi tốt nghiệp 500 500 q 3 tăng giá điện 300 300 q 4 đăng cai asiad 300 300 q 5 trộm chó 500 500 q 6 nhà thu nhập thấp 250 250 q 7 xây sân bay Long Thành 500 500 q 8 hợp pháp hóa mại dâm 300 300 q 9 luyện chữ đẹp 300 300 q 10 thạc sĩ thất nghiệp 300 300
Bảng 5.1 Tập dữ liệu đã xây dựng
Độ đo
Trong việc đánh giá các hệ thống truy hồi văn bản, có khá nhiều độ đo đƣợc sử dụng, từ những độ đo căn bản nhƣ độ chính xác (precision), độ đầy đủ (recall) cho tới các độ đo mở rộng nhƣ P@K, MAP Mỗi độ đo đều mang một ý nghĩa đánh giá trên các khía cạnh khác nhau của hệ thống Sau đây chúng tôi xin trình bày đôi nét về các độ đo này cũng nhƣ các độ đo đƣợc sử dụng trong việc đánh giá hệ thống truy hồi ý kiến VOR Độ chính xác P và độ đầy đủ R
Xét một hệ thống truy hồi ý kiến đƣợc đánh giá trên một tập dữ liệu bao gồm tập văn bản D và một câu truy vấn q
Ta quy ƣớc một số ký hiệu nhƣ sau:
38 - Rel: tập văn bản liên quan câu truy vấn q Rel bao gồm tất cả các văn bản liên quan và diễn đạt ý kiến về q
- |Rel|: số văn bản trong tập Rel
- A: tập các văn bản kết quả truy hồi của hệ thống
- |A|: số văn bản trong tập A
- R a : tập giao của Rel và A
- |R a |: số văn bản trong tập R a Độ chính xác P (Precision): Độ chính xác P là tỉ lệ giữa số văn bản liên quan và diễn đạt ý kiến về q trong tập kết quả truy hồi và số văn bản đƣợc truy hồi
|𝐴| Độ đầy đủ R (Recall): Độ đầy đủ R là tỉ lệ giữa số văn bản liên quan và diễn đạt ý kiến về q trong tập kết quả truy hồi và số văn bản trong tập văn bản liên quan truy vấn
|𝑅𝑒𝑙| Độ chính xác P và độ đầy đủ R đƣợc tính toán chƣa xét đến việc xếp hạng của các văn bản liên quan Dựa vào hai độ đo này, các độ đo mở rộng đã đƣợc đề xuất để đánh giá hệ thống truy hồi thông tin với tập văn bản kết quả đƣợc xếp hạng
Sau đây chúng tôi xin trình bày các độ đo đƣợc sử dụng rộng rãi để đánh giá một hệ thống truy hồi thông tin Độ chính xác tại K văn bản Độ chính xác tại điểm lúc K văn bản đƣợc truy hồi Độ đo này tốt cho các ứng dụng tìm kiếm web để đo mức độ tốt của kết quả trả về 10 văn bản đầu tiên (p@10) hoặc 30 văn bản đầu tiên (p@30)
P@K đƣợc tính theo công thức sau
𝑃@𝐾 = # 𝑟 ∈ 𝑅 𝑖 𝑟𝑎𝑛𝑘 𝑞 𝑖 , 𝑟 ≤ 𝐾 /𝐾 Trong đó R i là tập các văn bản liên quan của truy vấn q i , rank(q i , r) là hạng của văn bản r cho truy vấn q i và P là độ chính xác tại hạng đó
39 Độ chính xác trung bình Độ chính xác trung bình AP (Average Precision) đƣợc tính toán bằng cách tính độ chính xác tại mỗi điểm trong danh sách xếp hạng khi một văn bản liên quan đƣợc truy hồi (độ chính xác là 0 tại các điểm các văn bản liên quan không đƣợc truy hồi), và lấy trung bình của các giá trị này
Công thức AP cho truy vấn q i
Trung bình của độ chính xác trung bình Để đánh giá hiệu suất của một hệ thống truy hồi, các độ đo trên thường được lấy trung bình trên một tập các truy vấn Trung bình của độ chính xác trung bình MAP (Mean Average Precision) là trung bình của tất cả AP của các câu truy vấn trong một tập truy vấn Q cho trước
Trong đó, AP i là AP của câu truy vấn thứ i
Ngoài ra còn có các độ đo nhƣ độ chính xác R (R-Precision), độ ƣu tiên nhị phân (Binary Preference bPref) Trong các độ đo kể trên, MAP là độ đo thể hiện sự phân biệt và sự ổn định tốt Đây cũng là độ đo tiêu chuẩn đƣợc sử dụng trong nhiều nghiên cứu truy hồi ý kiến [12] [13] [24] và trong phương pháp nền Zhang và Yu
Kết quả thí nghiệm của hệ thống VOR đƣợc đánh giá dựa vào độ chính xác P, độ đầy đủ R, và độ đo MAP.
Kết quả thí nghiệm
Do hệ thống sử dụng SVM để phân loại ý kiến nên cần dữ liệu để huấn luyện bộ phân loại SVM tương ứng với mỗi câu truy vấn Tập dữ liệu đã xây dựng được chia làm hai nửa Một nửa để huấn luyện các bộ phân loại SVM và một nửa để thực hiện thí nghiệm
Bảng 5.2 thể hiện tập dữ liệu chạy thí nghiệm
STT Truy vấn Số mẫu dương Số mẫu âm q 1 dịch sởi 250 250 q 2 bỏ thi tốt nghiệp 250 250 q 3 tăng giá điện 150 150 q 4 đăng cai asiad 150 150 q 5 trộm chó 250 250 q 6 nhà thu nhập thấp 125 125 q 7 xây sân bay Long Thành 250 250 q 8 hợp pháp hóa mại dâm 150 150 q 9 luyện chữ đẹp 150 150 q 10 thạc sĩ thất nghiệp 150 150
Bảng 5.2 Tập dữ liệu chạy thí nghiệm
Hệ thống truy hồi ý kiến có thể làm việc chỉ với thành phần truy hồi thông tin (IR) Do đó chúng tôi thực hiện thí nghiệm và phân tích kết quả dựa trên hiệu quả của hệ thống chỉ với thành phần truy hồi thông tin và hiệu quả của toàn hệ thống
Trong phương pháp nền chỉ sử dụng độ đo MAP chứ không sử dụng độ chính xác P và độ đầy đủ R Tuy nhiên, để có thêm thông tin đánh giá so sánh hiệu quả giữa hệ thống chỉ với thành phần IR và hệ thống với toàn bộ thành phần, chúng tôi sử dụng thêm hai độ đo là độ chính xác P và độ đầy đủ R
Hiệu suất hệ thống chỉ với thành phần IR
Bảng 5.3 thể hiện kết quả thí nghiệm của hệ thống chỉ với thành phần truy hồi thông tin
Khi chạy thí nghiệm trên hệ thống chỉ với thành phần truy hồi thông tin, độ chính xác P trung bình đạt đƣợc là 42,85%, độ đầy đủ R đạt đƣợc là 64,47%, và điểm MAP đạt đƣợc là 0,2261
Nhìn bảng 5.3 ta thấy hệ thống chỉ chạy với thành phần IR đạt điểm MAP thấp nhiều so với P và R
STT Độ chính xác P Độ đầy đủ R AP q 1 139/340 (40,88%) 139/250 (55,60%) 0,1569 q 2 126/350 (36,00%) 126/250 (50,40%) 0,1313 q 3 107/316 (33,86%) 107/150 (71,33%) 0,3029 q 4 134/273 (49,08%) 134/150 (89,33%) 0,3037 q 5 233/450 (51,78%) 233/250 (93,20%) 0,3311 q 6 66/225 (29,33%) 66/125 (52,80%) 0,1435 q 7 200/330 (60,61%) 200/250 (80,00%) 0,3496 q 8 58/135 (42,96%) 58/150 (38,67%) 0,1072 q 9 146/235 (62,13%) 146/150 (97,33%) 0,4124 q 10 24/110 (21,82%) 24/150 (16,00%) 0,0223
Bảng 5.3 Kết quả thí nghiệm chỉ với thành phần IR
3 Không liên quan 4 Không liên quan
6 Không liên quan 7 Không liên quan
Bảng 5.4 Ví dụ AP thấp nhiều so với độ chính xác P và độ đầy đủ R
42 Để rõ hơn trường hợp kết quả AP thấp nhiều so với độ chính xác P và độ đầy đủ R, ta xét ví dụ ở bảng 5.4
Trong ví dụ trên, tổng số văn bản liên quan là 9, tập văn bản kết quả gồm có 10 văn bản, trong đó các văn bản xếp hạng 2, 5, 8, và 10 là liên quan Trong công thức tính AP, nếu ở vị trí rank(i), văn bản trả về là không liên quan thì độ chính xác P ở vị trí đó là 0
Nhƣ vậy hệ thống trong ví dụ trên đạt P = 4/10 = 40%, R = 4/9 = 44,44%, nhƣng AP chỉ đạt 0,1861
Hiệu suất hệ thống với toàn bộ các thành phần
Bảng 5.5 thể hiện kết quả thí nghiệm của toàn hệ thống với đầy đủ các thành phần
STT Độ chính xác P Độ đầy đủ R AP q 1 72/120 (60,00%) 72/250 (28,80%) 0,2821 q 2 93/186 (50,00%) 93/250 (37,20%) 0,3710 q 3 74/137 (54,01%) 74/150 (49,33%) 0,4926 q 4 84/108 (77,78%) 84/150 (56,00%) 0,5442 q 5 203/290 (70,00%) 203/250 (81,20%) 0,7890 q 6 43/80 (53,75%) 43/125 (34,40%) 0,3306 q 7 121/148 (81,76%) 121/250 (48,40%) 0,4778 q 8 39/70 (55,71%) 39/150 (26,00%) 0,2600 q 9 104/128 (81,25%) 104/150 (69,33%) 0,6933 q 10 17/60 (28,33%) 17/150 (11,33%) 0,0850
Bảng 5.5 Kết quả thí nghiệm của toàn hệ thống
43 Khi chạy thí nghiệm trên toàn bộ hệ thống với đầy đủ các thành phần, độ chính xác P trung bình đạt đƣợc là 61,26%, độ đầy đủ R đạt đƣợc là 44,20%, và điểm
Kết quả MAP của toàn hệ thống là 0,4326 rất gần với kết quả của phương pháp nền tiếng Anh là 0,4341 Trong khi đó, kết quả MAP của hệ thống chỉ với thành phần IR là 0,2261, khá thấp so với kết quả MAP của toàn hệ thống, và thấp nhiều so với độ chính xác P và độ đầy đủ R
Lý do hệ thống chỉ với thành phần IR cho kết quả MAP khá thấp là trong tập văn bản kết quả trả về đa số các văn bản không liên quan đƣợc xếp hạng trên các văn bản liên quan Các văn bản không liên quan đa phần xếp hạng trên các văn bản liên quan ở bước truy hồi thông tin là vì các văn bản không liên quan thường là bài viết gồm rất nhiều câu chữ và các từ khóa trong truy vấn đƣợc lặp lại khá nhiều lần, trong khi đó các văn bản liên quan là các ý kiến thường chỉ gồm một hoặc vài câu và từ khóa trong truy vấn xuất hiện ít
Hệ thống chỉ với thành phần IR đạt độ chính xác P trung bình 42,85%, độ đầy đủ trung bình 64,47%, MAP 0,2261 Hệ thống hoàn chỉnh đạt độ chính xác P trung bình 61,26% (tăng 18,41%), độ đầy đủ R trung bình 44,20% (giảm 20,27%), MAP 0,4326 (tăng 0,2065) Rõ ràng ở đây ta thấy có sự đánh đổi giữa độ chính xác P và độ đầy đủ R, P tăng lên thì R giảm xuống Mặc dù hệ thống có thể hoạt động chỉ với thành phần IR nhƣng sẽ đạt điểm MAP thấp
Xem kết quả thí nghiệm trên hệ thống hoàn chỉnh ở bảng 5.5, có 5 câu truy vấn đạt kết quả AP gần với điểm MAP (trong khoảng +/-0,1) là q 2, q 3, q 4, q 6, và q 7; q 1 thấp hơn 0,15, q 8 thấp hơn 0,17; q 9 cao hơn 0,26 Đặc biệt q 5 và q 10 có độ chênh lệch rất lớn so với điểm MAP, q 5 cao hơn 0,35, q 10 thấp hơn 0,35
Xem xét q 5 “trộm chó” ta thấy số văn bản liên quan lấy được từ bước truy hồi thông tin rất cao, 233 trên tổng số 250 văn bản liên quan (bảng 5.3) Trong khi đó với q 10 “thạc sĩ thất nghiệp” chỉ có 24 văn bản liên quan trong kết quả trả về của IR trên tổng số 150 văn bản liên quan Đọc cụ thể từng ý kiến của q 5 cho thấy từ khóa “trộm chó” đƣợc lặp lại khá nhiều lần trong một ý kiến Có thể kết luận đây là một câu truy vấn “dễ” đối với thành phần IR
44 Trong khi đó, các ý kiến của q 10 mặc dù con người đọc và cảm nhận là liên quan tới “thạc sĩ thất nghiệp” nhƣng các từ “thạc sĩ” và “thất nghiệp” ít xuất hiện, đa số chỉ có một từ hoặc “thạc sĩ”, hoặc “thất nghiệp” Có thể kết luận đây là một câu truy vấn “khó” đối với IR
Nhìn toàn bộ 10 câu truy vấn ở bảng 5.3 và bảng 5.5, ta thấy hiệu quả của hệ thống phụ thuộc rất nhiều vào việc thành phần IR có lấy đƣợc nhiều văn bản liên quan hay không
TỔNG KẾT
Các đóng góp
Luận văn này tìm hiểu và xây dựng một hệ thống truy hồi ý kiến trên tiếng Việt dựa vào phương pháp nền trên tiếng Anh của Zhang và Yu [29] [30] Một số thay đổi so với phương pháp nền đã được thực hiện trong quá trình xử lí văn bản để phù hợp với sự khác nhau giữa tiếng Anh và tiếng Việt Theo hiểu biết của chúng tôi, đây là công trình nghiên cứu truy hồi ý kiến trên tiếng Việt đầu tiên
Chúng tôi cũng đã tìm hiểu và xây dựng đƣợc một tập dữ liệu kiểm tra tiếng Việt cho phép đánh giá hệ thống đã hiện thực (hệ thống VOR) Tập dữ liệu này gồm 10 câu truy vấn và 7.500 văn bản Tập dữ liệu này có thể sử dụng đƣợc trong các nghiên cứu truy hồi ý kiến trên tiếng Việt trong tương lai
Kết quả thực nghiệm cho thấy hiệu quả của hệ thống VOR gần với phương pháp nền của Zhang và Yu trên tiếng Anh Thực nghiệm phương pháp nền của Zhang và Yu trên tập dữ liệu tiếng Anh TREC Blog06 đạt kết quả MAP 0,4341, và thực nghiệm hệ thống VOR của chúng tôi trên tập dữ liệu tiếng Việt tự xây dựng đạt kết quả MAP 0,4326.
Hướng phát triển
Trong luận văn này, chúng tôi hiện thực hệ thống truy hồi ý kiến VOR hoàn toàn dựa sát vào phương pháp nền của Zhang và Yu chứ chưa thực hiện bất cứ cải tiến nào Một câu hỏi đặt ra là liệu chúng ta có thể áp dụng các đặc điểm của tiếng
Việt để thực hiện cải tiến hay không Ví dụ phương pháp nền không loại bỏ từ dừng ở bước xử lí văn bản để tìm đặc trưng cho bộ phân loại SVM, liệu khi áp dụng trên tiếng Việt việc loại bỏ từ dừng có làm hiệu quả của hệ thống tăng lên hay không?
Một vấn đề khác là tập dữ liệu tiếng Việt đã xây dựng còn khá nhỏ Để có thể sử dụng tập dữ liệu này nhƣ một tập dữ liệu chuẩn cho các công trình nghiên cứu
46 truy hồi ý kiến trên tiếng Việt thì cần hoàn thiện Việc này đòi hỏi rất nhiều công sức và thời gian