Tải bản đầy đủ (.pdf) (63 trang)

Lọc ý định người dùng trong các diễn đàn, mạng xã hội

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.14 MB, 63 trang )

LỜI CẢM ƠN
Trước tiên, em xin bày tỏ lòng biết ơn chân thành và sâu sắc nhất tới Cô
giáo, Ths. Ngô Thị Lan đã tận tình hướng dẫn, động viên, giúp đỡ em trong suốt
quá trình thực hiện đồ án.
Em xin gửi lời cảm ơn sâu sắc tới quý Thầy Cô trong Trường Đại Học Công
Nghệ Thông Tin Và Truyền Thông đã truyền đạt kiến thức quý báu cho em trong
những năm học vừa qua.
Em xin gửi lời cảm ơn các bạn trong nhóm thực hiện về học máy có giám
sát đã nhiệt tình giúp đỡ trong quá trình em làm đồ án.
Con xin nói lên lòng biết ơn đối với Ông Bà, Cha Mẹ luôn là nguồn chăm
sóc, động viên trên mỗi bước đường học vấn của con.
Xin chân thành cảm ơn các Anh Chị và Bạn bè, đặc biệt là các thành viên
trong lớp CNTT-K10C đã ủng hộ, giúp đỡ và động viên tôi trong suốt thời gian
học tập 5 năm trên giảng đường đại học và thực hiện đề tài.
Mặc dù đã cố gắng hoàn thành đồ á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 của quý Thầy Cô và các Bạn.
Em xin chân thành cảm ơn!
Thái nguyên, ngày 25 tháng 5 năm 2016
Sinh viên

Hoàng Mạnh Cơ

1


LỜI CAM ĐOAN
Tôi xin cam đoan đây là phần nghiên cứu và thể hiện đồ án tốt nghiệp của
tôi, không sao chép các đồ án khác, nếu sai tôi xin chịu hoàn toàn trách nhiệm và
chịu mọi kỷ luật của khoa và nhà trường đề ra.
Thái nguyên, ngày 25 tháng 5 năm 2016


Sinh viên

Hoàng Mạnh Cơ

2


MỤC LỤC
LỜI CẢM ƠN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
LỜI CAM ĐOAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
MỤC LỤC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
DANH MỤC HÌNH ẢNH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
LỜI NÓI ĐẦU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
CHƯƠNG 1: TỔNG QUAN VỀ Ý ĐỊNH NGƯỜI DÙNG . . . . . . . . . . . . . . . . . . . . . 7
1.1 Nhu cầu khai thác ý định người dùng trên diễn đàn . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Khai phá dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Tổng quan về khai phá dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 Các ứng dụng của khai phá dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.3 Các bước khai phá dữ liệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.4 Các phương pháp khai phá dữ liệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.5 Những thách thức trong ứng dụng và nghiên cứu trong kỹ thuật khai phá
dữ liệu 14
1.3 Khai phá ý định người dùng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.1 Định nghĩa ý định người dùng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.2 Xác định ý định người dùng trong văn bản trên mạng xã hội . . . . . . . . . 18
1.3.3 Các nghiên cứu liên quan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
CHƯƠNG 2: PHƯƠNG PHÁP HỌC MÁY CÓ GIÁM SÁT SVM . . . . . . . . . . . . 24
2.1 Học có giám sát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.1.1 Bài toán học có giám sát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.1.2 Giới thiệu học có giám sát. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.2 Thuật toán học có giám sát Support vector machine (SVM). . . . . . . . . . . . . . 26
2.2.1 SVM - Support vector machine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2.2 Thuật toán SVM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2.3 Huấn luyện SVM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3


2.3 Các ưu thế của SVM trong phân lớp văn bản . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
CHƯƠNG 3: THỰC NGHIỆM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1 Xây dựng dữ liệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1.1 Khai phá và thu thập dữ liệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2 Thực nghiệm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2.1 Tiền xử lý dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2.2 Mô hình véc tơ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.3 Ngôn ngữ Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2.4 Gensim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2.5 Phần mềm Anaconda. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2.6 Các thao tác sử lý dữ liệu với python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.3 Phần mềm Weka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3.1 Giới thiệu về weka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3.2 Thực hiện bài toán phân lớp với weka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.4 Kết quả đạt được . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.4.1 Lựa chọn thuộc tính . . . . . . . . . . . . . . . . . . . Error! Bookmark not defined.
3.4.2 Kết quả . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
KẾT LUẬN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
TÀI LIỆU THAM KHẢO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

4



DANH MỤC HÌNH ẢNH
Hình 1.1: Nguồn tin tham khảo trước khi mua hàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Hình 1.2 : Quy trình phát hiện tri thức . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Hình 1.3: Ví dụ về văn bản có chứa ý định và không có ý định . . . . . . . . . . . . . . . . 19
Hình 1.4: Ví dụ về xử lý trong khai phá ý định người dùng . . . . . . . . . . . . . . . . . . . . 21
Hình 2.1: Siêu phẳng h phân chia dữ liệu huấn luyện thành 2 lớp + và - với khoảng
cách biên lớn nhất. Các điểm gần h nhất là các vector hỗ trợ . . . . . . . . . . . . . . . . . . . 27
Hình 2.2: Bài toán phân lớp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Hình 3.1: % các loại câu chứa ý đinh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5


LỜI NÓI ĐẦU
Ngày nay nhiều người sử dụng internet có xu hướng bộc lộ bản thân, ý định
thông qua các kênh mạng xã hội, diễn dàn, website... . Họ thường chia sẻ các hoạt
động hằng ngày, suy nghĩ, cảm xúc và thậm chí ý định sắp thực hiện (ví dụ: mua ô
tô, thuê nhà, đi du lịch ... ) của họ trên các trang blog, diễn đàn và đặc biệt là mạng
xã hội. Nắm bắt mong muốn, ý định của người dùng trực tuyến, là một nhu cầu rất
quan trọng với các doanh nghiệp như sản xuất, ngân hàng, bán lẻ, thương mại điện
tử, quảng cáo trực tuyến và các cá nhân có ý muốn khai thác.
Để giải quyết vấn đề đó, đồ án này em sẽ trình bày môt cách tiếp cận học
máy có giám sát để phân tích bài viết và bình luận của người sử dụng trên các diễn
đàn, mạng xã hội, để lọc ra những bài viết và bình luận có chứa ý định, sở thích
của người dùng. Việc hiểu biết đầy đủ ý định người sử dụng trong các văn bản trên
mạng xã hội rất phức tạp, ta phải chia làm 3 giai đoạn chính: lọc hướng ý định,
miền ý định, và phân tích đánh giá ý định. Trong phạm vi của đồ án này, em sẽ
xây dựng mô hình phân loại nhị phân để xác định xem bài viết hoặc bình luận có
mang ý định hay không. Em đã tiến hành đánh giá thực nghiêm một cách cẩn thận

cho mô hình thu thập các bài viết bằng tiếng Việt và đạt được kết quả đầy hứa hẹn
với độ chính xác trung bình hơn 93%.
Nội dung của đồ án này được trình bày trong 3 chương. Tổ chức cấu trúc
như sau:
Chương 1: Tổng quan về ý định người dùng
Phần đầu trình bày khái quát về nhu cầu của xã hội và khai phá dữ. Phần
cuối của chương giới thiệu các nội dung cơ bản về khai phá ý định người dùng.
Chương 2: Phương pháp học máy có giám sát
Chương 2 giới thiệu các nội dung cơ bản về phương pháp học bán giám sát,
trình bày những bước hoạt động cơ bản nhất của thuật toán SVM, sau đó nghiên
cứu thuật toán học bán giám sát SVM.
Chương 3: Thực Nghiệm
Chương này trình bày về xây dựng dữ liệu, tiền xử lý dữ liệu, mô hình
vector. Các kiến thức liên quan về các phần mềm như python, gensim, weka...
Cuối cùng là kết quả đạt được.

6


CHƯƠNG 1: TỔNG QUAN VỀ Ý ĐỊNH NGƯỜI DÙNG
 Nhu cầu khai thác ý định người dùng trên diễn đàn
Trong thập kỷ vừa rồi đã chứng kiến sự bùng nổ của các dịch vụ mạng xã
hội trực tuyến. Trong môi trường tương tác cao này, người sử dụng trở thành đối
tượng chủ chốt, không ngừng góp phân làm phong phú thêm các kênh truyền thông
xã hội thông qua các hoạt động trực tuyến và hành vi của họ. Trong không gian
này, con người có xu hướng thể hiện bản thân và sẵn sàng chia sẻ các hoạt động
của họ hằng ngày, suy nghĩ và cảm xúc của họ, và cả bất kỳ việc gì họ định làm.
Kết quả là của việc bùng nổ của các trang mạng xã hội này là, con người chia sẻ
thông tin trên các diễn đàn, mạng xã hội và các diễn đàn, mạng xã hội thực sự có
thể phản ánh cảm nhận và ý định của người dùng. Phân tích những cảm nhận và ý

kiến, vì thế, đã trở thành một các tiếp cận hiệu quả cho các doanh nghiệp để hiểu
những gì khách hàng tiềm năng thực sự quan tâm và mong muốn, giúp đỡ họ có có
kế hoạch tiếp thị trực tuyến và cuối cùng là xâm nhập thị trường trực tuyến nhanh
hơn và hiệu quả hơn.
Nhận thức được xu hướng quan trọng này, nhiều nghiên cứu trước đây đã
tập trung vào sự hiểu biết về ý định đằng sau các hoạt động trực tuyến như tìm
kiếm web, hoặc tìm kiếm trên máy tính, điện thoại tương tác. Hầu hết các nghiên
cứu cố gắng xác định các ý định tiềm ẩn đằng sau truy vấn tìm kiếm và duyệt web
của người dùng. Nắm được ý định tìm kiếm sẽ cải thiện hiệu quả tìm kiếm đáng
kể. Khi càng nhiều người sẵn sàng chia sẻ ý định của họ một cách rõ ràng chúng ta
có cơ hội để tiếp cận một nguồn kiến thức vô giá về những người dùng online hoặc
là khách hàng tiềm năng.
Chi tiết các số liệu theo “Cục thương mại điện tử và Công nghệ thông tin www.VECITA.gov.vn”
 Có 81% người mua hàng tìm kiếm thông tin trực tuyến khi mua hàng
 10.4 là số lượng nguồn tin trung bình mà một người mua hàng tham
khảo trước khi quyết định
7


 Có tới 1/3 số người sửa dụng internet đã mua hàng trực tuyến
 Nguồn tin tham khảo trước khi mua hàng

Hình 1.1: Nguồn tin tham khảo trước khi mua hàng
Do vậy, lượng thông tin mà người dùng đăng trên diễn đàn, mạng xã hội là
rất lớn. mọi thông tin đều được đưa lên các trang mạng xã hội dưới dạng các posts
và rất nhiều người dùng để lại các các nhận xét của mình về các posts này dưới
dạng các comments, ta nhận thấy đây là kho thông tin khổng lồ mà từ đó nếu
chúng ta có thể khai phá và trích rút tất cả các comments của người dùng, sau đó
8



phân tích và phân loại dữ liệu ấy, chúng ta có thể thu được các kết quả khảo sát
cần thiết phục vụ cho hoạt động sản xuất kinh doanh.
 Khai phá dữ liệu

 Tổng quan về khai phá dữ liệu
Khai phá dữ liệu được dùng để mô tả quá trình phát hiện ra tri thức trong
CSDL. Quá trình này kết xuất ra các tri thức tiềm ẩn từ dữ liệu giúp cho việc dự
báo trong kinh doanh, các hoạt động sản xuất, ... Khai phá dữ liệu làm giảm chi phí
về thời gian so với phương pháp truyền thống trước kia (ví dụ như phương pháp
thống kê).
Sau đây là một số định nghiã mang tính mô tả của nhiều tác giả về khai phá
dữ liệu.
Định nghĩa của Ferruzza: “Khai phá dữ liệu là tập hợp các phương pháp
được dùng trong tiến trình khám phá tri thức để chỉ ra sự khác biệt các mối quan
hệ và các mẫu chưa biết bên trong dữ liệu”
Định nghĩa của Parsaye: “Khai phá dữ liệu là quá trình trợ giúp quyết định,
trong đó chúng ta tìm kiếm các mẫu thông tin chưa biết và bất ngờ trong CSDL
lớn”
Định nghĩa của Fayyad: “Khai phá tri thức là một quá trình không tầm
thường nhận ra những mẫu dữ liệu có giá trị, mới, hữu ích, tiềm năng và có thể
hiểu được”.

 Các ứng dụng của khai phá dữ liệu
Phát hiện tri thức và khai phá dữ liệu liên quan đến nhiều ngành, nhiều lĩnh
vực: thống kê, trí tuệ nhân tạo, cơ sở dữ liệu, thuật toán, tính toán song song và tốc
độ cao, thu thập tri thức cho các hệ chuyên gia, quan sát dữ liệu... Đặc biệt phát
hiện tri thức và khai phá dữ liệu rất gần gũi với lĩnh vực thống kê, sử dụng các
phương pháp thống kê để mô hình dữ liệu và phát hiện các mẫu, luật ... Ngân hàng
dữ liệu (Data Warehousing) và các công cụ phân tích trực tuyến (OLAP- On Line

Analytical Processing) cũng liên quan rất chặt chẽ với phát hiện tri thức và khai
9


phá dữ liệu.
Khai phá dữ liệu có nhiều ứng dụng trong thực tế, ví dụ như:
 Text mining và Web mining: Phân lớp văn bản và các trang Web, tóm
tắt văn bản,...
 Bảo hiểm, tài chính và thị trường chứng khoán: phân tích tình hình tài
chính và dự báo giá của các loại cổ phiếu trong thị trường chứng khoán. Danh mục
vốn và giá, lãi suất, dữ liệu thẻ tín dụng, phát hiện gian lận, ...
 Thống kê, phân tích dữ liệu và hỗ trợ ra quyết định.
 Điều trị y học và chăm sóc y tế: một số thông tin về chuẩn đoán bệnh
lưu trong các hệ thống quản lý bệnh viện. Phân tích mối liên hệ giữa các triệu
chứng bệnh, chuẩn đoán và phương pháp điều trị (chế độ dinh dưỡng, thuốc, ...)
 Sản xuất và chế biến: Quy trình, phương pháp chế biến và xử lý sự cố.
 Lĩnh vực khoa học: Quan sát thiên văn, dữ liệu gene, dữ liệu sinh vật
học, tìm kiếm, so sánh các hệ gene và thông tin di truyền, mối liên hệ gene và một
số bệnh di truyền, ...
 Mạng viễn thông: Phân tích các cuộc gọi điện thoại và hệ thống giám sát
lỗi, sự cố, chất lượng dịch vụ, ...

 Các bước khai phá dữ liệu
Quy trình phát hiện tri thức thường tuân theo các bước sau:

10


Hình 1.2 : Quy trình phát hiện tri thức
Bước thứ nhất: Hình thành, xác định và định nghĩa bài toán. Là tìm hiểu

lĩnh vực ứng dụng từ đó hình thành bài toán, xác định các nhiệm vụ cần phải hoàn
thành. Bước này sẽ quyết định cho việc rút ra được các tri thức hữu ích và cho
phép chọn các phương pháp khai phá dữ liệu thích hợp với mục đích ứng dụng và
bản chất của dữ liệu.
Bước thứ hai: Thu thập và tiền xử lý dữ liệu. Là thu thập và xử lý thô, còn
được gọi là tiền xử lý dữ liệu nhằm loại bỏ nhiễu (làm sạch dữ liệu), xử lý việc
thiếu dữ liệu (làm giàu dữ liệu), biến đổi dữ liệu và rút gọn dữ liệu nếu cần thiết,
bước này thường chiếm nhiều thời gian nhất trong toàn bộ qui trình phát hiện tri
thức. Do dữ liệu được lấy từ nhiều nguồn khác nhau, không đồng nhất, … có thể
gây ra các nhầm lẫn. Sau bước này, dữ liệu sẽ nhất quán, đầy đủ, được rút gọn và
rời rạc hoá.
Bước thứ ba: Khai phá dữ liệu, rút ra các tri thức. Là khai phá dữ liệu, hay
nói cách khác là trích ra các mẫu hoặc/và các mô hình ẩn dưới các dữ liệu. Giai
đoạn này rất quan trọng, bao gồm các công đoạn như: chức năng, nhiệm vụ và mục
11


đích của khai phá dữ liệu, dùng phương pháp khai phá nào? Thông thường, các bài
toán khai phá dữ liệu bao gồm: các bài toán mang tính mô tả - đưa ra tính chất
chung nhất của dữ liệu, các bài toán dự báo - bao gồm cả việc phát hiện các suy
diễn dựa trên dữ liệu hiện có. Tuỳ theo bài toán xác định được mà ta lựa chọn các
phương pháp khai phá dữ liệu cho phù hợp.
Bước thứ tư: Sử dụng các tri thức phát hiện được. Là hiểu tri thức đã tìm
được, đặc biệt là làm sáng tỏ các mô tả và dự đoán. Các bước trên có thể lặp đi lặp
lại một số lần, kết quả thu được có thể được lấy trung bình trên tất cả các lần thực
hiện. Các kết quả của quá trình phát hiện tri thức có thể được đưa và ứng dụng
trong các lĩnh vực khác nhau. Do các kết quả có thể là các dự đoán hoặc các mô tả
nên chúng có thể được đưa vào các hệ thống hỗ trợ ra quyết định nhằm tự động
hoá quá trình này.
Tóm lại: KDD là một quá trình kết xuất ra tri thức từ kho dữ liệu mà trong

đó khai phá dữ liệu là công đoạn quan trọng nhất.

 Các phương pháp khai phá dữ liệu
Quá trình khai phá dữ liệu là quá trình phát hiện ra mẫu thông tin. Trong đó,
giải thuật khai phá tìm kiếm các mẫu đáng quan tâm theo dạng xác định như các
luật, phân lớp, hồi quy, cây quyết định, ...

 Phân lớp (phân loại - classification)
Là việc xác định một hàm ánh xạ từ một mẫu dữ liệu vào một trong số các
lớp đã được biết trước đó. Mục tiêu của thuật toán phân lớp là tìm ra mối quan hệ
nào đó giữa thuộc tính dự báo và thuộc tính phân lớp. Như thế quá trình phân lớp
có thể sử dụng mối quan hệ này để dự báo cho các mục mới. Các kiến thức được
phát hiện biểu diễn dưới dạng các luật theo cách sau: “Nếu các thuộc tính dự báo
của một mục thoả mãn điều kiện của các tiền đề thì mục nằm trong lớp chỉ ra trong
kết luận”.
Ví dụ: Một mục biểu diễn thông tin về nhân viên có các thuộc tính dự báo
là: họ tên, tuổi, giới tính, trình độ học vấn, … và thuộc tính phân loại là trình độ
12


lãnh đạo của nhân viên.

 Hồi qui (regression)
Là việc học một hàm ánh xạ từ một mẫu dữ liệu thành một biến dự đoán có
giá trị thực. Nhiệm vụ của hồi quy tương tự như phân lớp, điểm khác nhau chính là
ở chỗ thuộc tính để dự báo là liên tục chứ không phải rời rạc. Việc dự báo các giá
trị số thường được làm bởi các phương pháp thống kê cổ điển, chẳng hạn như hồi
quy tuyến tính. Tuy nhiên, phương pháp mô hình hoá cũng được sử dụng, ví dụ:
cây quyết định.
Ứng dụng của hồi quy là rất nhiều, ví dụ: dự đoán số lượng sinh vật phát

quang hiện thời trong khu rừng bằng cách dò tìm vi sóng bằng các thiết bị cảm
biến từ xa; ước lượng sác xuất người bệnh có thể chết bằng cách kiểm tra các triệu
chứng; dự báo nhu cầu của người dùng đối với một sản phẩm, …

 Phân nhóm (clustering)
Là việc mô tả chung để tìm ra các tập hay các nhóm, loại mô tả dữ liệu. Các
nhóm có thể tách nhau hoặc phân cấp hay gối lên nhau. Có nghĩa là dữ liệu có thể
vừa thuộc nhóm này lại vừa thuộc nhóm khác. Các ứng dụng khai phá dữ liệu có
nhiệm vụ phân nhóm như phát hiện tập các khách hàng có phản ứng giống nhau
trong CSDL tiếp thị; xác định các quang phổ từ các phương pháp đo tia hồng
ngoại, … Liên quan chặt chẽ đến việc phân nhóm là nhiệm vụ đánh giá dữ liệu,
hàm mật độ xác suất đa biến/ các trường trong CSDL.

 Tổng hợp (summarization)
Là công việc liên quan đến các phương pháp tìm kiếm một mô tả tập con dữ
liệu [1, 2, 5]. Kỹ thuật tổng hợp thường áp dụng trong việc phân tích dữ liệu có
tính thăm dò và báo cáo tự động. Nhiệm vụ chính là sản sinh ra các mô tả đặc
trưng cho một lớp. Mô tả loại này là một kiểu tổng hợp, tóm tắt các đặc tính chung
của tất cả hay hầu hết các mục của một lớp. Các mô tả đặc trưng thể hiện theo luật
có dạng sau: “Nếu một mục thuộc về lớp đã chỉ trong tiền đề thì mục đó có tất cả
các thuộc tính đã nêu trong kết luận”. Lưu ý rằng luật dạng này có các khác biệt so
13


với luật phân lớp. Luật phát hiện đặc trưng cho lớp chỉ sản sinh khi các mục đã
thuộc về lớp đó.

 Mô hình hoá sự phụ thuộc (dependency modeling)
Là việc tìm kiếm một mô hình mô tả sự phụ thuộc giữa các biến, thuộc tính
theo hai mức: Mức cấu trúc của mô hình mô tả (thường dưới dạng đồ thị). Trong

đó, các biến phụ thuộc bộ phận vào các biến khác. Mức định lượng mô hình mô tả
mức độ phụ thuộc. Những phụ thuộc này thường được biểu thị dưới dạng theo luật
“nếu - thì” (nếu tiền đề là đúng thì kết luận đúng). Về nguyên tắc, cả tiền đề và kết
luận đều có thể là sự kết hợp logic của các giá trị thuộc tính. Trên thực tế, tiền đề
thường là nhóm các giá trị thuộc tính và kết luận chỉ là một thuộc tính. Hơn nữa hệ
thống có thể phát hiện các luật phân lớp trong đó tất cả các luật cần phải có cùng
một thuộc tính do người dùng chỉ ra trong kết luận.
Quan hệ phụ thuộc cũng có thể biểu diễn dưới dạng mạng tin cậy Bayes. Đó
là đồ thị có hướng, không chu trình. Các nút biểu diễn thuộc tính và trọng số của
liên kết phụ thuộc giữa các nút đó.

 Phát hiện sự biến đổi và độ lệch (change and deviation dectection)
Nhiệm vụ này tập trung vào khám phá hầu hết sự thay đổi có nghĩa dưới
dạng độ đo đã biết trước hoặc giá trị chuẩn, phát hiện độ lệch đáng kể giữa nội
dung của tập con dữ liệu thực và nội dung mong đợi. Hai mô hình độ lệch hay
dùng là lệch theo thời gian hay lệch theo nhóm. Độ lệch theo thời gian là sự thay
đổi có ý nghĩa của dữ liệu theo thời gian. Độ lệch theo nhóm là sự khác nhau của
giữa dữ liệu trong hai tập con dữ liệu, ở đây tính cả trường hợp tập con dữ liệu này
thuộc tập con kia, nghĩa xác định dữ liệu trong một nhóm con của đối tượng có
khác đáng kể so với toàn bộ đối tượng không? Theo cách này, sai sót dữ liệu hay
sai lệch so với giá trị thông thường được phát hiện.
Vì những nhiệm vụ này yêu cầu số lượng và các dạng thông tin rất khác
nhau nên chúng thường ảnh hưởng đến việc thiết kế và chọn phương pháp khai
phá dữ liệu khác nhau. Ví dụ như phương pháp cây quyết định (sẽ được trình bày
14


dưới đây) tạo ra được một mô tả phân biệt được các mẫu giữa các lớp nhưng
không có tính chất và đặc điểm của lớp.


 Những thách thức trong ứng dụng và nghiên cứu trong kỹ thuật khai phá dữ
liệu
Ở đây, ta đưa ra một số khó khăn trong việc nghiên cứu và ứng dụng kỹ
thuật khai phá dữ liệu. Tuy nhiên, thế không có nghĩa là việc giải quyết là hoàn
toàn bế tắc mà chỉ muốn nêu lên rằng để khai phá được dữ liệu không phải đơn
giản, mà phải xem xét cũng như tìm cách giải quyết những vấn đề này. Ta có thể
liệt kê một số khó khăn như sau:
Đầu vào chủ yếu của một hệ thống khai thác tri thức là các dữ liệu thô trong
cơ sở phát sinh trong khai phá dữ liệu chính là từ đây. Do các dữ liệu trong thực tế
thường động, không đầy đủ, lớn và bị nhiễu. Trong những trường hợp khác, người
ta không biết cơ sở dữ liệu có chứa các thông tin cần thiết cho việc khai thác hay
không và làm thế nào để giải quyết với sự dư thừa những thông tin không thích
hợp này.
• Dữ liệu lớn: Cho đến nay, các cơ sở dữ liệu với hàng trăm trường và bảng,
hàng triệu bản ghi và với kích thước đến gigabytes đã là chuyện bình thường. Hiện
nay đã bắt đầu xuất hiện các cơ sở dữ liệu có kích thước tới terabytes. Các phương
pháp giải quyết hiện nay là đưa ra một ngưỡng cho cơ sở dữ liệu, lấu mẫu, các
phương pháp xấp xỉ, xử lý song song (Agrawal et al, Holsheimer et al).
• Kích thước lớn: không chỉ có số lượng bản ghi lớn mà số các trường trong
cơ sở dữ liệu cũng nhiều. Vì vậy mà kích thước của bài toán trở nên lớn hơn. Một
tập dữ liệu có kích thước lớn sinh ra vấn đề làm tăng không gian tìm kiếm mô hình
suy diễn. Hơn nữa, nó cũng làm tăng khả năng một giải thuật khai phá dữ liệu có
thể tìm thấy các mẫu giả. Biện pháp khắc phục là làm giảm kích thước tác động
của bài toán và sử dụng các tri thức biết trước để xác định các biến không phù hợp.
• Dữ liệu động: Đặc điểm cơ bản của hầu hết các cơ sở dữ liệu là nội dung
của chúng thay đổi liên tục. Dữ liệu có thể thay đổi theo thời gian và việc khai phá
15


dữ liệu cũng bị ảnh hưởng bởi thời điểm quan sát dữ liệu. Ví dụ trong cơ sở dữ liệu

về tình trạng bệnh nhân, một số giá trị dữ liệu là hằng số, một số khác lại thay đổi
liên tục theo thời gian (ví dụ cân nặng và chiều cao), một số khác lại thay đổi tùy
thuộc vào tình huống và chỉ có giá trị được quan sát mới nhất là đủ (ví dụ nhịp đập
của mạch). Vậy thay đổi dữ liệu nhanh chóng có thể làm cho các mẫu khai thác
được trước đó mất giá trị. Hơn nữa, các biến trong cơ sở dữ liệu của ứng dụng đã
cho cũng có thể bị thay đổi, bị xóa hoặc là tăng lên theo thời gian. Vấn đề này
được giải quyết bằng các giải pháp tăng trưởng để nâng cấp các mẫu và coi những
thay đổi như là cơ hội để khai thác bằng cách sử dụng nó để tìm kiếm các mẫu bị
thay đổi.
• Các trường không phù hợp: Một đặc điểm quan trọng khác là tính không
thích hợp của dữ liệu, nghĩa là mục dữ liệu trở thành không thích hợp với trọng
tâm hiện tại của việc khai thác. Một khía cạnh khác đôi khi cũng liên quan đến độ
phù hợp là tính ứng dụng của một thuộc tính đối với một tập con của cơ sở dữ liệu.
Ví dụ trường số tài khoản Nostro không áp dụng cho các tác nhân.
• Các giá trị bị thiếu: Sự có mặt hay vắng mặt của giá trị các thuộc tính dữ
liệu phù hợp có thể ảnh hưởng đến việc khai phá dữ liệu. Trong hệ thống tương
tác, sự thiếu vắng dữ liệu quan trọng có thể dẫn đến việc yêu cầu cho giá trị của nó
hoặc kiểm tra để xác định giá trị của nó. Hoặc cũng có thể sự vắng mặt của dữ liệu
được coi như một điều kiện, thuộc tính bị mất có thể được coi như một giá trị trung
gian và là giá trị không biết.
• Các trường bị thiếu: Một quan sát không đầy đủ cơ sở dữ liệu có thể làm
cho các dữ liệu có giá trị bị xem như có lỗi. Việc quan sát cơ sở dữ liệu phải phát
hiện được toàn bộ các thuộc tính có thể dùng để giải thuật khai phá dữ liệu có thể
áp dụng nhằm giải quyết bài toán. Giả sử ta có các thuộc tính để phân biệt các tình
huống đáng quan tâm. Nếu chúng không làm được điều đó thì có nghĩa là đã có lỗi
trong dữ liệu. Đối với một hệ thống học để chuẩn đoán bệnh sốt rét từ một cơ sở
dữ liệu bệnh nhân thì trường hợp các bản ghi của bệnh nhân có triệu chứng giống
16



nhau nhưng lại có các chẩn đoán khác nhau là do trong dữ liệu đã bị lỗi. Đây cũng
là vấn đề thường xảy ra trong cơ sở dữ liệu kinh doanh. Các thuộc tính quan trọng
có thể sẽ bị thiếu nếu dữ liệu không được chuẩn bị cho việc khai phá dữ liệu.
• Độ nhiễu và không chắc chắn: Đối với các thuộc tính đã thích hợp, độ
nghiêm trọng của lỗi phụ thuộc vào kiểu dữ liệu của các giá trị cho phép. Các giá
trị của các thuộc tính khác nhau có thể là các số thực, số nguyên, chuỗi và có thể
thuộc vào tập các giá trị định danh. Các giá trị định danh này có thể sắp xếp theo
thứ tự từng phần hoặc đầy đủ, thậm chí có thể có cấu trúc ngữ nghĩa.
• Một yếu tố khác của độ không chắc chắn chính là tính kế thừa hoặc độ
chính xác mà dữ liệu cần có, nói cách khác là độ nhiễu crên các phép đo và phân
tích có ưu tiên, mô hình thống kê mô tả tính ngẫu nhiên được tạo ra và được sử
dụng để định nghĩa độ mong muốn và độ dung sai của dữ liệu. Thường thì các mô
hình thống kê được áp dụng theo cách đặc biệt để xác định một cách chủ quan các
thuộc tính để đạt được các thống kê và đánh giá khả năng chấp nhận của các (hay
tổ hợp các) giá trị thuộc tính. Đặc biệt là với dữ liệu kiểu số, sự đúng đắn của dữ
liệu có thể là một yếu tố trong việc khai phá. Ví dụ như trong việc đo nhiệt độ cơ
thể, ta thường cho phép chênh lệch 0.1 độ. Nhưng việc phân tích theo xu hướng
nhạy cảm nhiệt độ của cơ thể lại yêu cầu độ chính xác cao hơn. Để một hệ thống
khai thác có thể liên hệ đến xu hướng này để chuẩn đoán thì lại cần có một độ
nhiễu trong dữ liệu đầu vào.
• Mối quan hệ phức tạp giữa các trường: Các thuộc tính hoặc các giá trị có
cấu trúc phân cấp, các mối quan hệ giữa các thuộc tính và các phương tiện phức
tạp để diễn tả tri thức về nội dung của cơ sở dữ liệu yêu cầu các giải thuật phải có
khả năng sử dụng một cách hiệu quả các thông tin này. Ban đầu, kỹ thuật khai phá
dữ liệu chỉ được phát triển cho các bản ghi có giá trị thuộc tính đơn giản. Tuy
nhiên, ngày nay người ta đang tìm cách phát triển các kỹ thuật nhằm rút ra mối
quan hệ giữa các biến này.
 Khai phá ý định người dùng
17



 Định nghĩa ý định người dùng
Ý định, mặt khác là một tuyên bố trực tiếp hoặc bằng văn bản của người sử
dụng
về những gì họ có kế hoạch thực hiện. Theo Bratman (1987), ý định hoặc
mục đích là một trạng thái thể hiện cho một cam kết để thực hiện hoặc một hành
động trong tương lai.
Khi càng nhiều người sẵn sàng chia sẻ ý định của họ một cách rõ ràng thì
chúng ta có cơ hội để tiếp cận một nguồn kiến thức vô giá về những người dùng
online hoặc là khách hàng tiềm năng. Tuy nhiên có vài nghiên cứu trước đây đã tập
trung vào việc phân tích và xác định ý định người sử dụng thông qua bài viết và
bình luận trên các diễn đàn hoặc mạng xã hội của họ. Điều này có thể giải thích
được. Mặc dù tiềm năng to lớn cho các ứng dụng, việc xác định các ý định thực sự
là một quá trình hiểu biết ngôn ngữ tự nhiên vốn là một hướng nghiên cứu khó
khăn trong xử lý ngôn ngữ tự nhiên.
Mặc dù khó khăn, tuy nhiên, không có nghĩa rằng vấn đề này là không thể
giải quyết được. Trong bài đồ án này em sẽ trình bày một định nghĩa của một ý
định của người sử dụng dưới hình thức một quintuple (5-tuple) và đề xuất một quá
trình gồm 3 giai đoạn cho sự hiểu biết hay xác định chúng từ bài viết hoặc bình
luận trên các diễn đàn hoặc mạng xã hội. Quá trình này gồm 3 giai đoan chính : (1)
giai đoạn lọc các bài viêt/ bình luận có chứa ý định, (2) - Xác định miền ý định (vd
tài chính, bất động sản, du lịch, ô tô...) và (3) các phân tích đánh gia phân loại ý
định . Trong đó giai đoạn (1) và (2) được coi là vấn đề phân loại. Giai đoạn cuối
thực sự là một quá trình khai phá để chiết xuất các thuộc tính hoặc ràng buộc của ý
định. Là một người sử dụng, mục đích có thể là ngẫu nhiên trong miền ý định, rất
khó xác định tập cố định các lĩnh vực và một tập cố định các tính chất. Do đó em
không thể giải quyết toàn bộ vấn đề một lúc được. Quá trình này nên chia nhỏ
thành các vấn đề nhỏ với các giải pháp khả thi. Trong đồ án này, em sử dụng
phương pháp học máy các tiếp cận giai đoạn đầu tiên đó là xây dựng bộ lọc phân
18



loại để lọc bài viết hay bình luận trên mạng xã hội để tìm ra cái nào có chứa ý định
người sử dụng.

19


 Xác định ý định người dùng trong văn bản trên mạng xã hội
 Ý định tường minh (rõ)
Theo nghĩa rộng, ý định đề cập đến mục địch cụ thể của một chủ thể trong
việc thực hiện hành động hoặc một loạt hành động. Theo Bratman(1987), ý định là
một trạng thái tinh thần đại diện cho một cam kết thực hiện một hành động hoặc
hành động trong tương lai.Ý định liên quan đến hoạt động tâm lý như lập kế hoạch
và suy tính trước. Ý định có thể được quy định rõ ràng hoặc quy định ngầm, trực
tiếp hoặc gián tiếp. Trong phạm vi đồ án, em sẽ chỉ tập trung vào ý đồ rõ ràng của
người dùng. Hình 1 cho thấy một số văn bản viết của các bài đăng bởi người dùng
trên các diễn đàn trực tuyến và mạng xã hội. Một số chứa ý định rõ ràng và một số
thì không.
Để mô hình hóa và phân tích ý định người dùng trên các phương tiện truyền
thông xã hội trực tuyến ta định nghĩa một ý định minh bạch như một quintuple (5
tuple) như sau:

Trong đó :
u là người dùng định nghĩa, ví dụng nickname người dùng hoặc id trên dịch
vụ mạng xã hội.
c là hoàn cảnh hiện tại hoặc điều kiện xung quanh ý định này. Ví dụ một
người dùng có thể hiện tại đang mang thai, người ốm, hoặc có em bé. Hoàn cảnh c
cũng bao gồm thời gian mà ý định được thể hiện hay được đăng trên mạng.
d là miền của ý định.

Ví dụ: 3 ý đồ mẫu thể hiện tương ứng ở hình 1 thuộc về nhà ở, mua bán xe
cộ, và du lịch
w là một từ khóa hoặc cụm từ đại diện cho ý định. Nó có thể là tên một vật
hoặc một hành động quan tâm. Các giá trị w của 3 ý đồ được liệt kê trong hình 1
20


tương ứng là: thuê nhà, bán xe, và du lịch.
p là một danh sách các thuộc tính hoặc các ràng buộc liên quan đến một ý
định. Nó bao gồm một danh sách các cặp thuộc tính - giá trị liên quan đến mục
đích. Ví dụ cho ý định đầu trong hình 1 là {vị trí=“Nguyễn Công Trứ”, giá=“47
triệu đồng ”, hãng=”spacy Nhật”}

Văn bản trực tuyến trên diễn đàn, mạng xã hội Việt Nam
Ý định
Cần bán xe honda spacy Nhật, biển Hà nội đăng ký năm 2010 giá
47 triệu. Ai cần mua liên hệ mr. Anh (0986234565) 18 Nguyễn



Công Trứ
Xe bạn đăng ký năm 2010 mà bán đắt vậy

Không

Mình đang cần thuê 1 nhà nguyên căn hoặc chung cư khu vực
Gò Vấp hoặc Bình Thạnh Yêu cầu An ninh sạch sẽ thoáng mát




càng tốt Có thể ở lâu dài Bạn nào có thì pm mình với nha.
Thực tế thì bây giờ thuê nhà chung cư thích hơn nhiều so với nhà

Không

nguyên căn
Vào đầu tháng 4 tới em dự tính sẽ có 1 chuyến đi đến Bản Cỏi
nơi vùng miền núi thuộc thị trấn Thanh Sơn Phú Thọ để khám
phá văn hóa của người dân tộc Thái nơi đây Nếu được em cũng



muốn tìm đến 1 gia đình miền núi để xin tá túc nhờ 1 2 đêm Vậy
ai có thể chỉ giáo cho em một cách chi tiết được không ạ
Tớ thì không tính đi tiết kiệm hết mức như chủ thớt, cơ mà thấy
bác ấy tiết kiệm thế kia rồi vẫn dự 930k nên hơi hoang mang cho

Không

nguồn kinh phí hạn hẹp của mình thôi.
Hình 1.3: Ví dụ về văn bản có chứa ý định và không có ý định
21


1.3.2.2 Quy trình hiểu ý định người dùng
Quá trình phân tích và hiểu ý định người sử dụng bao gồm 3 giai đoạn
chính như trong hình 1.3 đó là:
Lọc ý định người sử dụng Pha này giúp lọc các bài viết trên kênh truyền
thông trực tuyến để xác định bài chứa ý đồ sử dụng và bài nào không. Bài có chứa
ý đồ sử dụng sẽ được chuyển tiếp đến giai đoạn tiếp theo.

Tách miền ý định người sử dụng Đầu vào là văn bản chữ hoặc bài viết có
chứa ý định, pha này sẽ phân tích và xác định các miền của ý định. Như đã giải
thích ở phần trước, miền ý định có thể là: giáo dục, bất động sản, tài chính ngân
hàng, du lịch-nghỉ mát, ô tô hoặc bất kỳ lĩnh vực nào khác mà ý định có liên quan
Phân tích cú pháp và rút ra ý định Đầu vào là văn bản chứa ý định và miền
của nó, giai đoạn này sẽ phân tích và trích xuất tất cả thông tin về những ý định.
Nói cách khác bước này sẽ trích xuất thông tin quan trọng từ các văn bản để điền
vào từ hoặc cụm từ w và danh sách thuộc tính/ràng buộc p của ý định trong định
nghĩa ở công thức trên.
Hình 1.5 sẽ cho thấy ví dụ cụ thể của quá trình xử ý và hiểu ý định người
dùng. Đầu vào là một bài viết trên mạng xã hội nói về kế hoạch của một cặp vợ
chồng để tìm và đặt chỗ một chuyến đi tuần trăng mật sau kết hôn.

22


Hình 1.3: Quá trình khai phá/ nhận định ý định từ văn bản trên mạng xã hội

23


Hình 1.4: Ví dụ về xử lý trong khai phá ý định người dùng
Bộ lọc ý định người dùng phát hiện ra bài viết này có chứa ý định. Trong
bước tiếp theo, Bộ Tách miền ý định tách ý định theo các miền.(du lịch/ nghỉ mát).
Bài viết và miền được chuyển tiếp đến pha tiếp theo, bộ phân tích cú pháp và rút ra
ý định. Ở bước này thuộc tính/ràng buộc của ý định được phân tích và trích rút p =
{địa điểm đến=”Đà Nẵng”, thời gian=”cuối tháng 11”, lịch trình=”5 đêm” , giá=”

24



5tr-8tr”}
Quá trình của sự hiểu biết đầy đủ về ý định sử dụng là phức tạp và cần một
sự kết hợp của nhiều phương pháp. Giai đoạn đầu Lọc ý định người dùng, có lẽ là
đơn giản nhất trong số 3 giai đoạn. Đây là vấn đề phân loại nhị phân. Giai đoạn thứ
2 là khó khăn hơn vì số lượng các lĩnh vực có lẽ là lớn. Nó khó khăn bởi vì chúng
ta cần phải xử lý một tập miền có số chiều lớn. Giai đoạn 3 là khó khăn nhất.
Chúng ta cần phân tích và trích rút tất cả thông tin có trong văn bản. Điều này là
cực kỳ khó khăn bởi danh sách các thuộc tính hoặc các ràng buộc p của một ý định
có thể thay đổi rất nhiều phụ thuộc vào phạm vi của nó.

 Các nghiên cứu liên quan
Nắm bắt ý định người dùng có thể được định nghĩa theo nhiều cách khác
nhau cho nhiều ứng dụng khác nhau. Trong phần này em đã xem sét một số nghiên
cứu dựa trên sự hiểu biết mục tiêu hoặc ý đồ rằng nó ít nhiều đều liên quan đến
công việc khai phá ý định người dùng.
Một số lớn các nghiên cứu trước đây làm việc với các vấn đề xác định mục
tiêu người dùng hoặc ý đồ đằng sau hoạt động tìm kiếm trên web của họ. Lee et al
(2005) đề xuất việc sử dụng các tính năng như hành vi người dùng nhấp chuột và
phân bố liên kết neo để xác định mục tiêu sử dụng trong tìm kiếm web. Họ phân
loại các mục tiêu sử dụng thành 2 lớp : lớp định hướng và thông tin. Ashkan et all
(2009) đề xuất một phương pháp để tìm hiểu ý đồ sử dụng của các câu truy vấn tìm
kiếm của họ. Họ sử dụng phương pháp nhấp chuột qua các bản ghi và truy vấn
thông tin cụ thể để xác định liệu một truy vấn có mang mục đích thương mại. Hu et
al (2009) đề xuất sử dụng các khái niệm Wikipedia để xác định các ý định đằng
sau các truy vấn . Li(2010) đề xuất cách tiếp cân học máy để hiểu người dùng truy
vấn bằng cách nhận ra chủ ngữ và vị ngữ ý định sử dụng Markov và semi-Makov
tùy thuộc vào trường điều kiện ngẫu nhiên (CRFs). Jethava et al (2011) sự dụng
cấu trúc cây phân phối để xác định kich thước khác nhau hoặc các khía cạnh khác
nhau đằng sau ý đồ sử dụng trong truy vấn của họ. Shen et al. (2011) đề xuất

25


×