Bài tốn trích chọn thuộc tính sản phẩm trong hệ thống mua bán trực tuyến tiếp

Một phần của tài liệu Trích chọn thuộc tính sản phẩm trong hệ thống mua bán trực tuyến tiếp cận khai phá luật kết hợp (Trang 27 - 37)

tuyến tiếp cận khai phá luật kết hợp:

Nhưđã phân tích ở phần trước, nhu cầu tĩm tắt các đánh giá của người dùng về một sản phẩm trên hệ thống mua bán trực tuyến sẽ ngày càng gia tăng. Vì vậy bài tốn tĩm tắt đánh giá sản phẩm ra đời, trong đĩ bài tốn trích chọn thuộc tính sản phẩm là một vấn đề khĩ khăn và cần phải giải quyết nhất. Đây là bài tốn liên quan tới lĩnh vực trích chọn từ khĩa (terminology extraction), một lĩnh vực con của trích chọn thơng tin (information extraction). Do vậy chúng ta phải giải quyết những vấn đề chính sau:

• Tự động trích chọn các thực thể trong văn bản: ta cần tìm được tập các từ hoặc cụm từ cĩ thể là thuộc tính của sản phẩm trong tất cả các đánh giá của người dùng (tập thực thể này được gọi là tập ứng viên).

• Sau đĩ, từ tập ứng viên trên, ta cần xác định được các thuộc tính sản phẩm (chính là các terminology). Vấn đề cốt lõi của bài tốn là tìm ra chiến lược trích chọn thuộc tính tốt nhất.

20

5.2.1. Tựđộng trích chọn các thực thể trong văn bản:

Mỗi một đánh giá về sản phẩm của người dùng là một văn bản mà ta cần xử lý, các thuộc tính sản phẩm xuất hiện trong đĩ sẽ là các thực thể cần được trích chọn. Qua quan sát dữ liệu cho thấy các thuộc tính sản phẩm thường xuất hiện dưới dạng là một danh từ, do đĩ để trích chọn được chúng ta cĩ thể căn cứ vào dấu hiệu đĩ. Để làm được như vậy chúng ta cần một bộ gán nhãn từ loại. Khĩ khăn gặp phải là hiện nay lĩnh vực xử lý tiếng Việt cịn hạn chế cả về mặt số lượng nghiên cứu cũng như kết quảđạt được [2].

Trong khĩa luận này, chúng tơi sử dụng hai chương trình xử lý ngơn ngữ tiếng Việt đã cĩ là JVnSegmenter [7] và VnQTAG [3] để thực hiện việc tách từ và gán nhãn. Chi tiết sẽđược trình bày trong mơ hình hệ thống đề xuất.

5.2.2. Xác định thuộc tính của sản phẩm từ tập ứng viên:

Trong bài tốn trích chọn từ khĩa (terminology extraction), về cơ bản cĩ hai loại kĩ thuật chính để xác định các từ khĩa trong tập văn bản: một là các kĩ thuật hình thức dựa trên mơ tả ngữ nghĩa của từ khĩa, thường là các cụm danh từ, hai là các kĩ thuật thống kê, các kĩ thuật loại này dựa trên thực tế là các từ ghép thành một từ khĩa thì thường được tìm thấy cạnh nhau và lặp lại nhiều lần để tiến hành việc trích chọn. Tuy nhiên cả hai phương pháp trên đều cĩ những hạn chế của riêng mình. Trong phương pháp hình thức, việc sử dụng các cụm danh từ để trích chọn thường tạo ra quá nhiều các kết quả khơng phải là từ khĩa cần tìm. Thêm vào đĩ, hiện nay việc xác định các cụm danh từ tiếng Việt cịn rất hạn chế trong kết quả đạt được. Cịn đối với phương pháp thống kê, trích chọn theo các cụm từ cĩ xác suất xuất hiện cao thì hạn chế gặp phải là thường bỏ xĩt quá nhiều các từ khĩa cĩ số lần xuất hiện thấp, các từ khĩa cĩ nhiều cách viết khác nhau và các từ khĩa chỉ gồm một từ.

Để khắc phục các hạn chế trên, trong khĩa luận này chúng tơi sử dụng mơ hình áp dụng kĩ thuật khai phá luật kết hợp trong đĩ áp dụng thuật tốn Apriori kết hợp thêm một số kĩ thuật rút gọn, cắt tỉa khác để tìm ra tập các từ khĩa phổ biến (các thuộc tính cĩ xác suất xuất hiện cao). Ngồi ra trong mơ hình này chúng tơi cịn thực hiện việc tìm kiếm các thuộc tính ít phổ biến dựa trên ý kiến đánh giá của người dùng. Phần dưới đây sẽ trình bày về mơ hình trích chọn thuộc tính sản phẩm dựa trên khai phá luật kết hợp.

21

3.3. Mơ hình trích chọn thuộc tính sản phẩm:

Đối với bài tốn trích chọn thuộc tính sản phẩm được người mua hàng đánh giá trong hệ thống bán hàng trực tuyến, khĩa luận này sử dụng mơ hình tương tự như trong hệ thống [13].

3.3.1. Cấu trúc hệ thống trích chọn thuộc tính sản phẩm:

Hình 2. Mơ hình h thng trích chn thuc tính sn phm trong h thng bán hàng trc tuyến.

Đầu tiên, ta tiến hành thu thập đánh giá của người dùng về một sản phẩm trên hệ thống mua bán trực tuyến để đưa vào cơ sở dữ liệu các đánh giá. Việc thu thập dữ liệu cĩ thể tiến hành tự động bằng cách crawl các đánh giá sản phẩm từ một website bán hàng trực tuyến về. Dữ liệu thu được sẽ được xử lý để tách từ, gán nhãn từ loại rồi đưa vào module trích chọn các thuộc tính phổ biến, kết quả thu được là một tập các thuộc tính

CSDL các từ thể hiện ý kiến CSDL thuộc tính ít phổ biến Đánh giá sản phẩm CSDL các đánh giá CSDL thuộc tính phổ biến Trích chọn thuộc tính Tách từ Gán nhãn từ loại Trích chọn các thuộc tính phổ biến Trích chọn các thuộc tính ít phổ biến Trích chọn các từ thể hiện ý kiến

22

được nhiều người đánh giá (phổ biến ởđây cĩ nghĩa là xuất hiện nhiều). Dựa vào kết quả trên, trích chọn ra các từ thể hiện ý kiến và cuối cùng là xác định các thuộc tính ít phổ biến (cĩ số lần xuất hiện thấp).

Theo mơ hình trên, cơng việc giải quyết bài tốn sẽđược chia làm 5 bước chính sau: • Tách từ. • Gán nhãn từ loại. • Trích chọn các thuộc tính phổ biến của sản phẩm. • Trích chọn các từ thể hiện ý kiến. • Cuối cùng là tìm các thuộc tính ít phổ biến. 3.3.2. Tách từ:

Bước đầu tiên trong quá trình trích chọn thuộc tính sản phẩm là tách từ. Đối với tiếng Anh, các từđược phân cách bởi dấu cách hoặc. Tuy nhiên, với tiếng Việt thì khơng đơn giản như vậy, một từ tiếng Việt cĩ thể gồm nhiều hơn một âm tiết. Do đĩ khơng phải lúc nào ta cũng cĩ thể tiến hành tách từ dựa vào dấu cách.

Sau khi tìm hiểu một số chương trình tách từ, chúng tơi sử dụng chương trình JVnSegmenter của nhĩm nghiên cứu [7], đây là chương trình tách từ tiếng Việt sử dụng mơ hình CRFs (conditional random fields) cho kết quả cĩ độ chính xác cao.

Ví dụ:

Câu = “Nokia N81 đời mới gồm 2 phiên bản: N81 8GB và N81 2GB”

Sau khi qua cơng đoạn tách từ, ta cĩ các từ tiếng Việt trong cặp ngoặc như sau: [Nokia] [N81] [đời mới] [gồm] [2] [phiên bản]: [N81] [8GB] [và] [N81 2GB]

Do chất lượng dữ liệu tiếng Việt cịn chưa cao, người dùng khi bày tỏ ý kiến của mình qua mạng thường vi phạm một trong các lỗi như viết tiếng Việt khơng dấu, cú pháp khơng chuẩn, sai chính tả… vì vậy, trước khi dữ liệu được đưa qua JVnSegmenter, chúng ta cần tiến hành một số bước tiền xử lý như thêm dấu câu, chỉnh sửa các lỗi chính tả, loại bỏ các kí tự khơng cĩ ý nghĩa (ví dụ một số người cĩ thĩi quen sử dụng các kí tự biểu hiện cảm xúc của ngơn ngữ chat vào trong cả cách viết bình thường, đối với bài tốn của chúng ta, các từ này khơng cung cấp thơng tin cần thiết nên sẽ bị loại bỏ).

23

3.3.3. Gán nhãn loại từ:

Dữ liệu sau khi được tách từ, sẽđược tiến hành gán nhãn từ loại (phân biệt danh từ, tính từ, động từ, …). Trong khĩa luận này, chúng tơi sử dụng chương trình VnQTAG của nhĩm tác giả [3] để tiến hành cơng việc trên. VnQTAG được nhĩm tác giả trên chỉnh sửa lại thành phiên bản dùng cho tiếng Việt từ phần mếm QTAG của nhĩm tác giả O. Mason, Đại học Bermingham, Anh. QTAG là một bộ gán nhãn xác suất độc lập với ngơn ngữ. Phương pháp xử lý của QTAG cĩ thể mơ tả tổng quát như sau. Dựa vào kho dữ liệu đã được gán nhãn bằng tay, bộ gán nhãn tìm những nhãn cĩ thể được và tần số của nĩ cho từng từ trong kho dữ liệu mới đã được tách từ. Nếu việc tìm kiếm một từ trong danh sách từ vựng đã học thất bại thì tất cả các nhãn sẽđược gán cho từđĩ. Cuối cùng, bộ gán nhãn thực hiện bước loại bỏ nhập nhằng bằng cách sử dụng thơng tin về xác suất phân bố từ vựng đã được học trước đĩ.

Dữ liệu đầu vào của chương trình VnQTAG là văn bản đã được phân tách từ trong từng câu (kết quả của bước tách từở phần trên), kết quảđầu ra của chương trình là một từ loại tương ứng sẽ được gán cho từng từ trong văn bản. Hệ thống sử dụng đồng thời từ điển để liệt kê các từ loại cĩ thể cho một từ, và một kho văn bản mẫu để loại bỏ nhập nhằng. (adsbygoogle = window.adsbygoogle || []).push({});

Ví dụ về kết quả thu được sau khi đưa dữ liệu qua VnQTAG:

<w pos="Nc"> hồi</w> <w pos="Vto"> lên </w> < w pos="Nn"> sáu </w> <w pos=","> , </w> <w pos="Vs"> </w> <w pos="Nu"> lần </w> <w pos="Pp"> tơi

</w> <w pos="Jt"> đã </w> <w pos="Vt"> nhìn </w> <w pos="Vt"> thấy </w> <w pos="Nn"> một </w> <w pos="Nt"> bức </w> <w pos="Nc"> tranh </w> <w pos="Jd"> tuyệt </w> <w pos="Aa"> đẹp </w>

Hạn chế cịn tồn tại của VnQTAG chính là chương trình chưa cĩ khả năng nhận diện các cụm danh từ, việc gán nhãn từ loại mới chỉ xác định được các danh từ. Trong khi bài tốn của chúng ta yêu cầu cần xác định cả các cụm danh từ (điều này sẽđược giải thích cụ thể trong phần sau). Đây là một vấn đề khĩ cần được giải quyết; trong hệ thống trích chọn thuộc tính sản phẩm sử dụng khai phá luật kết hợp, chúng tơi mới chỉ cĩ thể xác định được một số cụm danh từ nhất định.

24

3.3.4. Trích chọn thuộc tính phổ biến:

Mục tiêu của bước này là xác định được các thuộc tính của sản phẩm được nhiều người dùng nhận xét (chúng tơi gọi là các thuộc tính phổ biến). Tuy nhiên, do độ phức tạp về ý nghĩa của ngơn ngữ tự nhiên nên ở đây chúng tơi chỉ tập trung vào các thuộc tính xuất hiện một cách rõ ràng trong câu. Khái niệm rõ ràng được hiểu như sau:

• “Chất lượng ảnh chụp rất tốt” – thuộc tính “chất lượng ảnh” là rõ ràng.

• “Mặc dù đắt, nhưng tơi vẫn quyết định mua.” – thuộc tính “giá bán” là khơng rõ ràng, hệ thống khơng xác định được các thuộc tính kiểu này.

Do số lượng các thuộc tính khơng rõ ràng trong các đánh giá ít hơn thuộc tính rõ ràng nên việc bỏ qua các thuộc tính kiểu này khơng làm ảnh hưởng nhiều tới kết quả.

Để tìm ra các thuộc tính phổ biến, chúng tơi sử dụng kĩ thuật khai phá luật kết hợp trong đĩ tập chỉ mục là tập các thuộc tính sản phẩm, mỗi một câu trong đánh giá là một giao tác, cịn cơ sở dữ liệu giao tác chính là tập các đánh giá đầu vào. Qua việc khảo sát các đánh giá sản phẩm trên các hệ thống mua bán trực tuyến, chúng tơi rút ra kết luận: hầu hết các thuộc tính của sản phẩm xuất hiện trong các đánh giá đều ở dạng danh từ hoặc cụm danh từ. Vì vậy, ở đây chúng tơi chỉ tập trung vào việc khai phá luật kết hợp trên tập các danh từ và cụm danh từ cĩ mặt trong đánh giá sản phẩm. Phương pháp thực hiện sẽ gồm 3 bước như sau.

Bước một, sinh tập chỉ mục, hệ thống thực hiện trích chọn ra các danh từ trong tập dữ liệu các đánh giá sản phẩm đã được gán nhãn từ loại ở bước trên. Dựa vào các danh từ này chúng tơi tạo ra một file giao tác. File này cĩ cấu trúc như sau: mỗi dịng trong file là một dãy các kí tự 0, 1 cách nhau bởi dấu cách, cĩ độ dài bằng nhau và bằng số danh từ tìm được ở trên, thể hiện cho một câu trong tập các đánh giá sản phẩm. Mỗi một số trong dãy 0, 1 thể hiện sự xuát hiện của một danh từ trong câu: 0 cĩ nghĩa là danh từđĩ khơng xuất hiện trong câu, cịn 1 là cĩ xuất hiện. File giao tác này chính là cơ sở dữ liệu giao tác sẽ dùng trong thuật tốn Apriori ở bước sau.

Bước hai, áp dụng thuật tốn Apriori trên tập chỉ mục và cơ sở dữ liệu giao tác thu được ở bước trên, ta sẽ thu được các tập chỉ mục phổ biến (frequent itemsets), mỗi đối tượng thuộc các tập này cĩ khả năng là một thuộc tính của sản phẩm. Một tập chỉ mục được coi là phổ biến khi các từ trong tập này xuất hiện ít nhất trong c% số câu của tập dữ liệu (minimum support = c%, c là giá trị do chúng ta định trước). Chú ý ở bước này,

25

chúng ta sẽ khơng chạy thuật tốn Apriori để tìm hết tất cả các tập phổ biến mà chỉ tìm các tập phổ biến cĩ độ dài trong giới hạn xác định, bởi vì các thuộc tính của sản phẩm cũng cĩ giới hạn về số từ (trong khảo sát các đánh giá sản phẩm điện thoại, chúng tơi nhận thấy độ dài tối đa của một thuộc tính là 5 từ - ví dụ như cụm danh từ sau “màn hình tinh cảm ứng”). Vì vậy chúng tơi sẽđưa ra ngưỡng giới hạn độ dài tối đa của tập chỉ mục phổ biến cần tìm. Nhờ vậy tiết kiệm được thời gian và cơng sức.

Sau khi tìm được các tập chỉ mục phổ biến, hệ thống thực hiện bước 3: “cắt tỉa” các đối tượng khơng phải thuộc tính. Việc “cắt tỉa” gồm 2 bước con:

• Compactness pruning (cắt tỉa bảo đảm tính chặt chẽ): trong bước này, chúng tơi kiểm tra các thuộc tính cĩ nhiều hơn 2 từ trở lên để loại bỏ những cụm từ vơ nghĩa. Nguyên nhân là do khi thực hiện khai phá luật kết hợp, thuật tốn chỉ quan tâm tới số lần xuất hiện của các từ, tức là độ hỗ trợ của từ, chứ khơng quan tâm tới vị trí xuất hiện của từ trong câu, điều này dẫn tới khả năng trong các tập chỉ mục phổ biến tìm được cĩ chứa nhiều cụm từ vơ nghĩa. Ví dụ: cĩ tập chỉ mục phổ biến 1 phần tử {hệ điều hành, Symbian}. Khi áp dụng thuật tốn Apriori để tìm tập chỉ mục phổ biến 2 phần tử, giả sử ta thu được kết quả là {hệđiều hành Symbian, Symbian hệđiều hành}. Ta thấy ngay chỉ cĩ "hệđiều hành Symbian" mới là thuộc tính cần tìm, cịn "Symbian hệđiều hành" là một cụm từ vơ nghĩa phải loại bỏ.

Để loại bỏđược các kết quả vơ nghĩa, chúng tơi đưa ra khái niệm "cụm từ chặt chẽ" như sau:

+ giả sử f là một cụm từ phổ biến gồm n từ tạo ra từ thuật tốn Apriori, f={w1, w2, …,wn}. Nếu tồn tại một câu s chứa tồn bộ w1, w2, …,wn và khoảng cách giữa wi và wi+1 trong s khơng quá 3 thì f được coi là "chặt" đối với s.

+ Nếu f xuất hiện trong m câu thuộc tập dữ liệu đánh giá, và f là "chặt" đối với ít nhất 2 trong m câu trên thì f là một cụm từ chặt chẽ.

Đối với những cụm từ khơng thỏa mãn điều kiện chặt chẽ trên, hệ thống sẽ tiến hành loại bỏ khỏi tập thuộc tính phổ biến.

Redundancy pruning (cắt tỉa dư thừa): bước này tập trung vào loại bỏ các thuộc tính thừa (những thuộc tính là danh từ đơn). Ví dụ về một thuộc tính dư thừa như sau: trong bản đánh giá về sản phẩm điện thoại X, người tiêu dùng đề cập tới “tuổi thọ pin

26

ngắn”, khi thực hiện tách từ, gán nhãn và sinh tập thuộc tính phổ biến, trong kết quả thu được cĩ 2 thuộc tính “tuổi thọ” và “tuổi thọ pin”. Ta thấy ởđây thuộc tính “tuổi thọ” là dư thừa do nĩ đĩng vai trị khơng quan trọng so với thuộc tính “tuổi thọ pin”. Vì vậy, hệ thống sẽ loại bỏ các thuộc tính thừa này. Tuy nhiên, khơng phải cứ cĩ một thuộc tính khác bao hàm mình thì thuộc tính con sẽ bị loại bỏ, bởi vì cĩ thể thuộc tính con vẫn mang ý nghĩa quan trọng. Ví dụ nhưở trường hợp sau, “màn hình”, “màn hình chính”, “màn hình ngồi”, lúc này ta khơng thể loại bỏ thuộc tính “màn hình”.

Để xác định một thuộc tính là dư thừa hay khơng, chúng tơi sử dụng độ đo pure support, cĩ thể dịch là độ hỗ trợ hồn tồn (kí hiệu là p-support). Độ đo p-support được định nghĩa như sau: p-support của một thuộc tính f được tính bằng phần trăm số câu trong

Một phần của tài liệu Trích chọn thuộc tính sản phẩm trong hệ thống mua bán trực tuyến tiếp cận khai phá luật kết hợp (Trang 27 - 37)