Luận văn trình bày những van dé cần giải quyết khi so sánh những người dùng trên mạng xã hội như thu thập những thong tin, so sánh các thông tin, cũng như phương pháp tạo ra một tập ngườ
Trang 1ĐẠI HỌC QUỐC GIA TP HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Trang 2CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠITRUONG ĐẠI HOC BACH KHOA —DHQG -HCM
Cán bộ hướng dẫn khoa học : TS Lê Thanh Vân
Cán bộ cham nhận xét 1 : PGS.TS Quản Thành Thơ
Cán bộ cham nhận xét 2 : TS Nguyễn Thanh Hiên
Luận văn thạc sĩ được bảo vệ tại Trường Dai hoc Bách Khoa, ĐHQG Tp HCMngày 25 tháng 12 năm 2013
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
1 TS Nguyễn Hứa Phùng
2 TS Võ Thị Ngọc Châu3 TS.Lê Thanh Vân4 PGS.TS Quản Thành Thơ
5 TS Nguyễn Thanh Hiên
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên
ngành sau khi luận văn đã được sửa chữa (nêu có).
CHỦ TỊCH HỘI ĐÔNG TRƯỞNG KHOA
Trang 3ĐẠI HỌC QUỐC GIA TP.HCM CONG HOA XÃ HOI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự do - Hạnh phúc
NHIEM VỤ LUẬN VAN THẠC SĨ
Họ tên học viên: Trương Trọng NghĩaNgày tháng, năm sinh: 30/08/1988 Nơi sinh: Bình Thuận
Chuyên ngành: Khoa học máy tính Mã số: 60.48.01
Đề xuất hai phương pháp xác định mức độ tương tự của người dùng và so sánh.Ill NGÀY GIAO NHIEM VU : 02/07/2012
IV NGAY HOAN THANH NHIEM VU: 22/11/2013v CÁN BO HƯỚNG DAN: TS Lê Thanh Vân
Tp HCM, ngày tháng năm 20
CÁN BỘ HƯỚNG DÂN CHỦ NHIỆM BỘ MÔN ĐÀO TẠO
TRƯỞNG KHOA
Trang 4LỜI CÁM ƠN
Đầu tiên, tôi xin gửi lời cám ơn chân thành tới Cô hướng dẫn của tôi TS Lê ThanhVan Trong suốt qua trình thực hiện luận văn, Cô đã luôn quan tâm theo sát và hỗ trợtôi Những lời động viên và hướng dẫn tận tình của Cô là nguồn động lực lớn nhất
cho toi hoàn thành luận văn này.
Tôi xin gửi lời cảm ơn đến quý Thây, Cô ở Khoa Khoa Học Máy Tính — Trường ĐạiHọc Bách Khoa, cùng với tri thức và tâm huyết của mình đã truyền đạt vốn kiến thứcquý báu trong suốt thời gian tôi học tập tại trường
Tôi cũng xin gửi lời cám ơn đến bạn Trần Ngọc Cường, Huỳnh Nguyên Lộc, NguyễnHuynh về những hỗ trợ và chia sẻ trong suốt quá trình tôi thực hiện luận văn này.Và cuối cùng tôi xin gửi lời cám ơn sâu sắc đến gia đình, bạn bè và những người thanđã luôn là chỗ dựa tinh thần vững chắc, c6 vũ cho tôi trong suốt quá trình học tập,
nghiên cứu.
TP Hồ Chí Minh tháng 11/2013
Trương Trọng Nghĩa
Trang 5MỤC LỤCLOI CAM ON ITOM TAT LUAN VAN VI
ABSTRACT VII
LOI CAM DOAN VII
1 Giới thiệu 1
1.1 Lý do chọn đỀtài ee ee |1.2 Phatbiéuvandé 0000000000000000000000 2
3 Phương pháp dé nghị cho van dé so sánh người dùng trên MXH 233.1 Xây dựng hồ sơ (profile) người dùng 23
I
Trang 63.2 So sánh hai hỗ sơ người dùng với nhau
3.3.2 Phương pháp dựa trên xác định trọng số tốt nhất (FOF)
3.3.3 Phương pháp dựa trên tiền topo (MCP)
4 Hiện thực và kết quả thực nghiệm4.1 Dữ liệu thực nghiệm và giải thuật so sánh người dùng trên dữ liệu
4.1.1 So sánh về nơi ở và quê quán
4.1.2 So sánh về tuổi ee xo4.1.3 So sánh về trường lớp cc c ẶẶẶ4.1.4 So sánh về các nội dung vănbản
4.1.5 Mức độ tương tự tổng hợp
42 Thực th giảithuật ẶẶ ẶẶ Ặ ẶỢ4.2.1 Sơ đồ hệ thống thực nghiệm
4.2.2 Tạo ra tập dữ liệu để thực nghiệm
4.2.3 Giới hạn không gian tìm kiếm và thực thi giải thuật
4.3 Đánh giá giải thuật Ặ Ặ Ặ Q QQ Q ee4.3.1 Tính toán trọng số tối ưu cho phương pháp FOF
4.3.2 So sánh giữa hai phương pháp FOF vàMCP
5_ Kết luậnTÀI LIỆU THAM KHẢO
Il
34344142434343444445464850535860
Trang 7MỤC LỤC HÌNH
Oo Fe AN DB A + CÔ) k2 =
=- —= m—= =Wo NYO = =
Phân loại dt liệu trên MXH 6
Mô hình cua LDA(Wikipedla) 15
Không gian tiền topo 0 ee 18Quá trình mởrộng 1 Ặ Ặ Ặ QẶẶQ 19Hệ thống tư vẫn có khai thác thông tin người dùng 22
Phương pháp phát hiện tập trọng số tot nhat 28
Phương pháp dựa trên không gian tintopo - 29
Phan chứa các liên kết trên MXH truongxua.vn 35
Phần chứa hoạt động trên MXH truongxua.vn 36
Sơ đồ hệthống QC Q Q Q0 44Phân phối của thứ hạng trong kết quả trả về của FOF_ 52
So sánh thời gian thực thi của phương pháp FOF vàMCP_ 56
Tỉ lệ phân phối kích thước không gian tìm kiếm 57
IV
Trang 8Lựa chọn mức ngưỡng cho phương pháp MCP 48
Tổng số lượng các phan tử trong khoảng 0-50_ 52
Tập mức ngưỡng cua MCP {0.3, 0.5, 0.75,0.75,0.3} %4
Tập mức ngưỡng cua MCP {0.5, 0.7, 0.75,0.75,0.5} %4
Tập mức ngưỡng cua MCP {0.7, 1.0, 1.0,1.0,0.7} 55
Trang 9TÓM TẮT LUẬN VĂNSự phát triển của mạng xã hội trực tuyến nói riêng về số lượng cũng như nội dung đãlàm cho người sử dụng các dịch vụ trực tuyến đứng trước một khối lượng thong tinkhong lồ Dé giúp các mang xã hội có những thong tin hữu ích nhất tới người dùng,các hệ thống tư van dựa trên so sánh những thông tin cá nhân của người dùng được
sử dụng.
Luận văn trình bày những van dé cần giải quyết khi so sánh những người dùng trên
mạng xã hội như thu thập những thong tin, so sánh các thông tin, cũng như phương
pháp tạo ra một tập người dùng tương tự một cách tổng quát Mặt khác, luận văn cũngthực hiện một thử nghiệm thực tế bang dit liệu được lấy từ một MXH cụ thé tại Việt
Nam.
Dé xây dựng được tập người dùng tương tự của một người dùng nào đó trong mộtmạng xã hội, trước hết một không gian tim kiếm tương ứng sẽ được tạo ra, sau đó haiphương pháp khác nhau được áp dụng lên tập không gian tìm kiếm này nhăm tạo ra
tập người dùng tương tự.
Một phương pháp dựa trên mức độ tương tự tổng quát khi so sánh một người dùngvới những người dùng khác trong không gian tìm kiếm Trong quá trình so sánh này,những điểm số thành phần tương ứng khi so sánh các thuộc tính riêng được sẽ cộnglại theo tập trọng số dé tao ra mức độ tương tự tong quat Mot gia tri K duoc dat ra délay K người dùng có mức độ tương tự cao nhất, đây cũng là tập người dùng tương tự.Phương pháp còn lại sử dụng sử dung lý thuyết của không gian tiền topo, trong đó,một tập hợp E được định nghĩa bao gồm người dùng và không gian tìm kiếm tươngứng Trên E, một ánh xạ được định nghĩa để tạo ra một không gian tiền topo và tìm racác bao đóng giả Các bao đóng giả sẽ được tập hợp lại để làm tập người dùng tươngtự Đối với từng tiêu chí khác nhau, hai phương pháp được so sánh với nhau dé rútra kết luận về những ưu điểm và những nhược điểm tùy thuộc vào các trường hợp cụthể
VỊ
Trang 10The development of online social network recently has affected the users because ofthe information overload Then, the recommeder system based on matching users’profile has been researched to cope with that problem to provide much more usefuldata to end user.
This thesis suggest methods of matching users’ profile included these steps : profiling,matching each of their information, and creating a shorted list Those methods hasbeen tested by analyzing a dataset from a real social network in Vietnam.
To provide a shorted list of a certain user, a search space is constructed, then twomethods are used to generate a set of the most similar users in that search space.One method based on calculating the general similarity between querying user andall other users in the search space In this process, the similarity of each atrribute issummed with a set of weights to create the general similarity Then, a number K isdefined to retrieve top K users have highest general similarity.
The other method is based on pretopology theory by exploit the relationship amonguser profiles A set # is constructed includes the querying user and the correspondingsearch space In set E, a map is defined to create a pretopology space and to findpseudo clousures Those pseudo closures is collected to create a set of similar users.For each standard, each method is evaluated and draw a conclusion about its ownadvantages and disadvantage.
VH
Trang 11LỜI CAM ĐOAN
Tôi xin cam đoan răng, ngoài những tài liệu tham khảo và các tài liệu khác như đãchú thích nguồn gốc đính kèm thì toàn bộ nội dung trong báo cáo này đều là kết quả
nghiên cứu của chính tôi và do tôi tự soạn thảo.
Nếu có bất cứ sai phạm nào so với lời cam kết, tôi xin chịu các hình thức xử lý theo
quy định.
Trương Trọng Nghĩa
VUl
Trang 12Chương 1 Giới thiệu
Mang xã hội (MXH) là một loại dịch vụ được xây dựng trên hệ thống mạng internetnhăm kết nỗi người dùng trong mạng với bạn bè, gia đình, kế cả những người ít quenbiết trong cuộc sống thật Những MXH được biết đến nhiều nhất cũng như có lượngngười dùng nhiều nhất có thé kế đến là Facebook, Twitter, MySpace, về sau có thêmGoogle+ Những MXH đều có những tính năng chung đó là cho phép người dùngchia sẻ hình ảnh, thông tin, tô chức các sự kiện, trò chuyện, và ngay cả chơi những tròchơi trực tuyến
1.1 Lý do chọn đề tàiKết nối những người dùng với nhau là van đề sống còn đối với một MXH Dé hiệnthực van dé này, các MXH can phải giải quyết hai van dé chính đó là mở rộng mạng
lưới cho những người dùng đã hoạt động và giup người dùng mới đăng ký tao ra những
mối quan hệ khởi đầu Trong số nhiều phương pháp được sử dụng để giải quyết khókhăn trên thì phương pháp thường được dùng nhất là so sánh các hồ sơ của những
người dùng với nhau.
Trong giai đoạn đầu khi người dùng mới đăng ký hoạt động trên một MXH, nhữngthông tin của người dùng còn ít, nên phương pháp dé mở rộng các kết nối là tìm kiếmnhững người dùng có địa chỉ thư điện tử tôn tại trong danh bạ thư điện tử của ngườidùng mới Một khi những mỗi quan hệ khởi đầu đã được tạo ra, ta sẽ dùng nhữngphương pháp khác để mở rộng thêm từ những mối quan hệ đó
Những nghiên cứu về van dé này trong các MXH nước ngoài đã được thực hiện chitiết, nhưng ở Việt Nam, tuy có nhiều MXH nhiều người dùng (trên 1 triệu) MXH taiViệt Nam cũng có những đặc trưng tiêu biểu như đã nêu ở trên, vẫn có chức năngchính là kết nối người dùng với nhau nhưng van dé so sánh hồ sơ người dùng dé tìmra những người có khả năng kết bạn mới không nhận được nhiều sự quan tâm
Vì vậy, đề tài được thực hiện với mong muốn đưa ra một giải pháp tong quat về việctìm kiếm những người dùng có liên quan trên một MXH thông qua việc so sánh hồ sơ
Trang 13người dùng với nhau Trong đó bao gồm thu thập dữ liệu của người dùng, tiền xử lýcác loại dữ liệu, tạo ra mô hình chủ dé ân dựa trên Latent Dirichlet Allocation (LDA).những phương pháp so sánh đối với từng loại dữ liệu khác nhau, xác định không gian
tìm kiêm,
1.2 Phát biểu vấn đềBài toán so sánh những hồ sơ của những người dùng trên MXH được phát biểu như sau: cho một tập người dùng M trên MXH, M = {7m,ma,1m›, mạ} mỗi người dùngđược đại diện bằng tập thuộc tính A = {Z¡ đ,as, a„} Đối với một người dùngbat kỳ m;, ta phải tim một tập những người dùng tương tự M = {m!,m?,m3, ,m"}sao cho m? # mj, M CM được sap xép theo một tiêu chí nhất định
1.3 Y nghĩa của đề tàiĐề tài góp phan đưa ra giải pháp có thể ứng dụng vào thực tế cho van dé so sánh
người dùng trên MXH cũng như xây dựng một tập người dùng tương tự trong phạm
vi các MXH băng tiếng Việt Trong đó có ứng dụng những đặc tính của không giantiền topo, đưa ra những kỹ thuật xử lý các thuộc tính của người dùng để nâng cao tínhchính xác Ngoài ra, những giải pháp được nêu ra trong dé tài duoc so sánh với nhaudé đưa ra một giải pháp tốt nhất tùy vào mục đích sử dung cụ thé
1.4 Cau trúc luận văn
Sau phan giới thiệu, những phan tiếp theo của luận văn được tổ chức như sau :— Chương 2: Trình bày các kiến thức nên tảng liên quand đến đề tài như đặc trưng
của MXH, mô hình chủ đề, xử lý văn bản tiếng Việt, không gian tiền topo.— Chương 3 : Phương pháp được đưa ra để giải quyết bài toán bao gồm việc so
sánh giữa hai hồ sơ người dùng với nhau và tao ra một tập người dùng tương tự.— Chương 4: Hiện thực giải pháp được nêu ra trong phần 3 băng cách áp dụng lên
một MXH thực tế tại Việt Nam— Chương 5 : Tổng kết các kết quả của luận văn va đề xuất hướng phát triển
Trang 14Chương 2 Kiến thức nền tảngNội dung của chương 2 là tổng quan những khái niệm cơ bản và những nghiên cứuliên quan góp phan vào việc phát triển dé tài Những thành phan được dé cập theo thứtự bao gôm :
— Tổng quát về những đặc trưng của MXH làm cho MXH khác với những trangtin tức truyền thống và những thuộc tính của người dùng có trên MXH
— Tầm quan trọng của việc thu thập và phân tích dữ liệu người dùng nói chung và
2.1 Đặc trưng của MXH
Những tính chất và dữ liệu trên MXH có liên quan đề tài nên phần này sẽ điểm qua cácđặc trưng có trên MXH có nhiều điểm khác biệt so với một trang thông tin trực tuyếntruyền thống [° '] Những đặc điểm của MXH rat có ảnh hưởng lên những giải phápthực hiện trên nó như tim kiếm bạn bè, tim chủ dé đang được quan tâm, Những
đặc trưng của một MXH đó là :
— Dựa trên người dùng : Người dùng là trung tâm của một MXH có quyền quảngbá và tổ chức thông tin Họ có toàn quyền quyết định những nội dung đượcquảng bá sẽ được truyền theo hướng nào : bạn bè, một nhóm, hoặc riêng tư.Những nội dung trên MXH thường là tự do, không có cau trúc nhất định.— Tính tương tac : MXH không chỉ là một nơi để chứa các khu vực trò chuyện
(chat room) và những diễn đàn (forum) mà còn có thé chơi trò chơi trực tuyến
Trang 15chung, làm những bài trắc nghiệm vui, chia sẻ hình ảnh và ý tưởng Đó cũng làmột cách dé gắn kết và có những giây phút vui vẻ với bạn bè.
— Cộng đồng : Những người dùng trong MXH sẽ có những sở thích hoặc sự quan
điểm chung đối với các vẫn đề khác nhau trong cuộc sống Do đó, họ có thé kết
bạn với những người dùng khác có chung các đặc điểm Một ví dụ đơn giản chotính cộng đồng là giúp những người bạn cũ có khả năng tim ra nhau nếu như họcùng tham gia vào một cộng đồng những người học chung trường
— Các mỗi quan hệ: Cũng giống như cộng đồng, mối quan hệ là một trong nhữngnên tang để xây dựng MXH Khi người dùng có nhiều mối quan hệ cũng là lúchọ càng tiễn gần đến trung tâm của MXH, đơn cử như người dùng sau khi cậpnhật một thông tin quan trọng, thì nội dung của nó có thé được lan truyén VỚItốc độ và phạm vi lớn trên MXH thông qua các mối quan hệ bạn bè
— Cảm nhận cá nhân : là một đặc trưng quan trọng không chỉ có ở MXH mà có ở
những trang thông tin truyền thống Tuy nhiên, MXH cho phép người dùng dễdàng thể hiện những cảm nhận, cảm xúc cua cá nhân trong phạm vi của bạn bèđể nhận được nhiều sự phản hồi nhanh chóng
MXH có nhiều loại thông tin, mỗi thông tin lại cần có một phương pháp so sánh khácnhau [| '] Những thuộc tính của người dùng có thé được chia thành các loại như tronghình 1, có những thông tin so sánh trực tiếp, có loại thông tin phải qua so sánh giántiếp Chỉ tiết khi so sánh những thuộc tính này sẽ được nêu rõ hơn ở các phần sau
Trang 16C Thuộc tính trên MXH }——
Nhân khẩu học Sở thích Hoạt động trên MXH^ ^ , Tạo thêm mối quan hệ | Bình luận
Nơi ở Nhạc/ Ban nhạc/ Tác giả Gởi lời mời ` wc | ike)ne Phi Phan hôi lời mời Chia sẻ
Quê quán im a ; Choi trd choi
Re A ot Hinh anh, phim ‘hoi trò chơiTuôi Nghệ sĩ Viết bl ,
Giới tính Trang web let blogNghé nghiép Tro chuyệnene hems Gởi thư điện tử
Tôn giáo Tu VAO cv,sự Goi tap tin
Trang thái hôn nhân | Thuộc tính tĩnh Thuộc tính động
(do người dùng cung câp) (do hệ thông theo dõi)
Hình 1: Phân loại dữ liệu tren MXH
Thông tin trên MXH có thé chia thành hai loại chính : một loại là những thông tin cóthé xem là tĩnh, ít khi thay đối được cung cấp bởi người dùng như các thông tin vềnhân khẩu hoc, sở thích và một loại là những thông tin thay đổi theo thời gian do hệthống thu thập được bao gồm những hoạt động trên MXH như chia sẻ thông tin, viếtblog, những lần đăng nhập,
MXH có nhiều đặc trưng hữu ích giúp kết nối mọi người với nhau, trong đó nội dungcác thông tin là một thành phần có thể được sử dụng cho việc so sánh các người dùngvới nhau Ngoài nội dung ra, MXH cũng có nhiều thông tin để khai thác như các mốiquan hệ, những hoạt động chung trên các cộng đồng, bày tỏ ý kiến về những van déđang được quan tâm và các cảm nhận cá nhân, tạo ra nhiều chiều phân tích khác.Đề có được những thông tin có giá trị từ MXH ké cả thông tin dễ thay và những thôngtin cần phải thông qua những công cụ trung gian, ta cần phải có một cơ chế biểu diễnvà suy diễn các dữ liệu của người dùng Phân dưới đây sẽ cho thấy tầm quan trọng của
việc thu thập và phân tích dữ liệu của người dùng cũng như các phương pháp được sửdụng cho mục đích này.
Trang 172.2 Thu thập và phân tích dữ liệu người dùng (Profiling)Một hồ sơ (profile) của người dùng là những đặc trưng quan trọng hoặc những hiểubiết về người dùng Ví dụ như trong ngữ cảnh của một ứng dụng phan mềm, một hồsơ chứa những thông tin về một người dùng là sự khác nhau về sở thích, kiến thứcnền, và mục tiêu khi sử dụng phần mềm Khám phá được những điểm khác nhau giữanhững người dùng là nhân tố cơ bản để phát triển dịch vụ hướng tới từng cá nhân
người dùng [''].
Nội dung của một hồ sơ người dùng thay đổi tùy theo từng lĩnh vực (domain) Vídụ như trong lĩnh vực báo chí trực tuyến, hồ sơ người dùng bao gồm thể loại tin tứcngười dùng hay đọc hay không thích đọc, trang nào được xem nhiều, và thói quen đọccủa người dùng Trong lĩnh vực quản lý thời gian biểu, hồ sơ người dùng sẽ bao gồmngày thang, mức độ ưu tiên các công việc khi người dung lập kế hoạch Đối với một
MXH thì những thông tin cá nhân như tên, tudi, cong việc đang lam, sở thích, mỗi
quan hệ, những đánh dấu (tag), và cả những nội dung người dùng cập nhật chính làhồ sơ người dùng Tùy vào từng loại MXH khác nhau mà những hồ sơ người dùng cóthay đôi như có thêm hoặc không có một số thuộc tính
Hồ sơ người dùng khác nhau từ lĩnh vực này tới lĩnh vực khác cũng như thể loại thôngtin cần thu thập Hỗ sơ người dùng có thể cung cấp trực tiếp thong tin không cầnqua xử lý hoặc cần phải có những giải thuật thích hợp dé suy diễn ra những thông tinkhông thé nhìn thay một cách rõ ràng Có nhiều giải thuật dé thực hiện điều này như
sử dụng lược đồ kết quả, mạng Bayes, luật kết hợp, giải thuật di truyền, mạng nơron
Mục đích của việc xây dựng hồ sơ người dùng khác nhau tùy theo ứng dụng sử dụng.Trong một hệ thích nghỉ (adaptive system), hồ sơ người dùng cung cấp cho hệ thongtạo ra những hành vi khác nhau đối với những người dùng khác nhau Trong hệ thôngtrợ giúp học tập, hồ sơ người dùng được sử dụng để hướng dẫn quá trình học tập theolượng kiến thức và kiểu học Trong thương mại điện tử, hồ sơ người dùng được dùngđể tạo ra những tư vẫn cá nhân về sản phẩm Trong việc quản lý tri thức, một kỹ năng
mà một nhân viên có được, vai trò của nhân viền trong công ty, và hiệu suat làm việc
Trang 18được sử dụng bởi người quan lý dé tìm kếm một vị trí công việc phù hợp nhất Còntrong một hệ thống tu vấn (recommeder system), hồ sơ người dùng có thé bao gồmnhững lần đánh giá sản phẩm như phim ảnh, tin tức hoặc sách, được sử dụng dé timkiếm những sản phẩm mà người dùng đó có thể quan tâm hoặc những người có cùng
so thích.
Đối với một MXH, xây dựng hồ sơ người dùng có rất nhiều lợi ích như tìm kiếm bạnbè, phát hiện cộng đồng (community detection)[ ::] phát hiện lừa đảo trực tuyến nhưgiả mạo hồ sơ những người dùng khác [' '] tim ra chủ dé dang được nhiều ngườiquan tâm như phân xu hướng (Trending) trên MXH Twitter ['], quảng cáo dựa trênngữ cảnh (contextual advertising) [| ], phát hiện người dùng sử dụng nhiều MXH['']
MXH và trang thông tin thông thường đều có những đặc điểm chung như có các nộidung văn bản, có các thông tin về người dùng như đánh giá (rating) các sản phẩm nhưphim, nhạc Do đó, đối với bài toán được nêu ra ta có thể dùng những phương phápcô điển như lọc cộng tac (collaborative filtering) [-] lọc dựa trên nội dung (content-based filtering) hoặc ta có thé kết hợp cả hai phương pháp với những kiểu dữ liệu phù
hợp.
Tuy nhiên một MXH có những điểm khác biệt như sự liên kết bằng các mối quan
hệ (relationship) giữa những người dùng với nhau vì vậy MXH có thêm một phương
pháp loc dựa trên yếu t6 xã hội (social filtering) Ta có thé dùng thông tin này để so
sánh những người dùng ví dụ như họ cùng học một trường trong quá khứ, cùng tham
gia một cộng đồng hay đơn giản là dựa trên những người bạn chung (mutual friend).Trong quá trình so sánh hồ sơ những người dùng trong MXH, những thuộc tính códạng văn bản như trạng thái, nội dung các liên kết được chia sẻ có vai trò quan trọngtrong việc xác định người dùng những vấn đề mà họ đang quan tâm Nếu hai hồ sơngười dùng có nhiều điểm tương đồng về những van đề dang quan tam thì có thé đượcgiới thiệu với nhau Do đó, phần sau đây sẽ trình bày về vấn đề xử lý và so sánh các
văn bản.
Trang 192.3 Phương pháp tính độ tương tự giữa các văn ban và xử lý văn bản tiếng ViệtTính toán mức độ tương tự của các văn bản có nhiều ứng dụng trong việc phân loạivăn bản, phân nhóm văn bản Đề so sánh các văn bản với nhau, thông thường ta phảichuyển văn bản về dạng vector có độ dài cố định hoặc dưới dạng một đồ thị Đề cóđược dạng biểu diễn vector của văn bản ta có thé sử dụng phương pháp như thống kêcó tính mức độ quan trọng của từ trong tài liệu TF-IDF hoặc giảm số chiều của vănbản như dùng LSA, pLSA, LDA Dé chuyền về dạng đồ thi, ta có thé sử dụng phương
So sánh các văn bản bat đầu băng việc tiền xử lý văn bản đầu vào thông qua cácbước tiêu biểu như loại bỏ những từ không mang ý nghĩa xác định (stopwords) (ví dụ“những”, “vài”), sau chuyển dạng từ đã biến đổi như tính từ, động từ, hoặc từ bịsai trở thành từ gốc (stemming) Với những ngôn ngữ phức tạp cần phải xác định tậpgồm hai hay nhiều từ đóng góp vào ý nghĩa chung Cuối cùng, văn ban sẽ được tachtừ (tokenization) để tạo ra những từ rời rạc nhau đại diện cho văn bản Sau đó, tùyvào giải thuật mà vector hay đồ thị được tạo ra sẽ khác nhau
TF-IDF là một phương pháp phố biến được dùng dé hình thành vector từ một văn bảntrong một tập hợp Đối với phương pháp nay, một từ điển chứa tat cả các từ trongtập dữ liêu được tạo ra Từ điển được sắp xếp theo một trật tự cỗ định dé có thé dễdàng được truy cập vào băng chỉ số (index) Tương ứng với từ điển này một danhsách các tần số tương ứng với các chỉ mục được ghép lại thành một vector (TF - termfrequency) Tiếp theo, các từ được đánh trong số thé hiện mức độ quan trong của từđó trong một văn ban cụ thé cũng như trong toàn bộ văn bản (IDF) Vector cuối cùng
là tích cua TF va IDF.
Phương pháp giảm số chiéu của van ban xác định một tập không gian khác có thé đạidiện cho tập từ vựng gốc, qua đó làm giảm số chiều của văn bản Ví dụ như LSA,chuyền ma trận văn bản - từ vựng thành các ma trận nhỏ hơn dựa vào phép phân tíchma trận (SVD - Singular Valued Decomposition) và sau đó tạo ra vector Đối vớipLSA va LDA thì khác so với LSA ở chỗ phát hiện ra một tập chủ dé an có trong tập
Trang 20văn bản và sau quá trình suy luận một văn bản có xác xuất thuộc từng chủ dé trong
tap chu dé đó sẽ tao ra một vector với các giá tri là các xác suất
Sau khi có được các vector, thì việc so sánh văn bản trở thành việc so sánh các vector
với nhau Có nhiều tiêu chuẩn tính mức độ tương tự giữa hai vector nhưng cosine vẫnlà tiêu chuẩn được nhiều người sử dụng nhất Chỉ tiết của tiêu chuẩn này như sau :Cho hai vector có cùng số chiều A và B thì mức độ tương tự cosine được tính như theo
Phương pháp sử dụng ontology [27] trước tiên xem văn bản như một đồ thị có hướngbằng cách sử dụng một giải thuật trích xuất các ontology Đồ thị này có đỉnh là cáckhái niệm còn cạnh là một mối quan hệ cha - con giữa đỉnh này với đỉnh khác, mỗiđỉnh con chỉ có đúng một đỉnh cha Dé so sánh các văn bản dưới dạng đồ thị trên, cácđỉnh được so sánh với nhau mức độ tương tự phụ thuộc vào mức độ giống nhau giữahai đồ thị Cách so sánh dựa trên ontology rất hiệu quả với tiếng Anh, nhưng chưathực sự vận hành tốt với tiếng Việt do chưa có một bộ ontology chuẩn dành cho tiếngViệt cũng như van dé bảo trì các ontology này cũng tốn nhiều chi phí [24]
Các văn bản tiếng Việt cũng được tiền xử lý chung như đã mô tả ở phan trên Tuynhiên có một số điểm khác biệt giữa tiếng Việt và tiếng Anh được sử dụng phố biếntrên các MXH đó là tiếng Việt chưa có một bộ định nghĩa chuẩn những từ không mangý nghĩa xác định Mỗi từ trong tiếng Việt chỉ có một dạng duy nhất do đó không cần
Trang 21phải qua bước chuyên dạng về từ gốc.Trong tiếng Anh, bước tách câu thành những từ
hoặc cụm từ có thể thực hiện bằng cách nhận biết các dấu hiệu như khoảng trắng, dau
cham, dau phay giữa các từ Còn đối với tiếng Việt, thì khoảng trang cũng đóng vaitrò phan tách những từ trong cùng một cum từ Điều này sẽ dẫn đến sự nhập nhangkhi tách câu thành từ hoặc cụm từ, do đó van dé xác định một từ thuộc về cụm từ nàolà hết sức quan trọng Hơn nữa một thống kê trong từ điển Vietlex cho thay có hon85% cụm từ có sự kết hợp từ 2 từ trở lên Một cách tông quát, bài toán tách từ có 3phương pháp tiếp cận chính được nêu ra trong [°°]:
— Tiếp cận dựa vào trên luật : Sử dụng từ điển làm nguồn chính dé tách từ trongcâu Một trong những phương pháp cụ thé theo cách tiếp cận này là mô hình sokhớp tối đa (Maximal Matching) Một chuỗi cần tách từ được so sánh với nộidung của một từ điển cho trước dé tạo ra những liên kết có thé của từng từ trongchuỗi Trong những liên kết có thể đó, liên kết nào có chứa ít liên kết nhất nghĩalà những từ trong liên kết là dài nhất được coi là phần tách tốt nhất Cách tiếpcận này tuy đơn giản nhưng thường cho hiệu quả cao khi kết hợp với các kinhnghiệm (heuristic) được rut ra từ việc vận dụng ngôn ngữ trong thực tế
— Tiếp cận dựa vào thống kê : Phương pháp này không cân sử dụng đến một từđiển và các luật dé tach từ mà thay vào đó là thông kê những từ hoặc ky tự hayxuất hiện cùng nhau theo một ngữ cảnh nào đó bằng các huấn luyện thông qua
một tập dữ liệu mẫu
— Tiếp cận dựa trên cả hai phương pháp trên : đây là cách xử lý thường được dùng
quát cao nhưng không quan tâm đến ngữ cảnh của văn bản trong khi cách tiếpcận dựa vào thống kê được lấy trên ngữ cảnh cụ thể nhưng không thể tổng quáthóa cho tất cả các văn bản
Trong số các phương pháp tách từ, có một phương pháp có độ tin cậy khá cao sử dụngmột dạng kết hợp của cả hai phương pháp dựa trên luật và thông kê được mô tả trong[-] Một văn bản được đưa vào được tách thành những cum dựa trên biéu thức chínhquy, sau đó những cụm đó được chuyên dạng thành một đồ thị dùng dé biểu diễn các
10
Trang 22cụm từ có cấu trúc Tiếp theo giải thuật so khớp tối đa được áp dụng sẽ tạo ra tất cảcác phân đoạn có thể của một cụm từ Cuối cùng, một mồ hình bigram (tinh toán khanăng xuất hiện của hai từ là liên tiếp nhau) sẽ được sử dụng để chọn ra một phân đoạncó xác xuất xảy ra cao nhất Giải thuật này đã được đưa vào phần mềm vnTokenizer,và cho thay độ chính xác tương đối cao (trên 95%) đã được xác nhận trong[- -, "J.Chỉ tiết của van dé này là một chủ dé lớn nằm ngoài phạm vi của luận văn.
Mô hình chủ đề là một yếu tô quan trọng khi sử dụng phương pháp làm giảm số chiềuđể tạo ra những vector đại diện cho văn bản Vì vậy, phân sau đây sẽ khái quát về môhình chủ dé, cách tạo ra mô hình chủ dé cũng như suy diễn và lựa chọn tham số thích
dung lượng lớn :
— Phát hiện những chủ đề hoặc những mẫu (pattern) bao phủ tập dữ liệu.— Chú thích các tài liệu dựa trên những chủ đề mà tài liệu đó thể hiện.— Sử dụng các chú thích trên dé tổ chức, tóm tat và tìm kiếm tài liệu.Bằng trực quan, cho một văn bản nói về một chủ đề nào đó ta có thể xác định đượccác từ trong văn bản có xác suất xuất hiện khác nhau ví dụ như cho trước hai văn bản,
499 66
một văn bản nói về loài chó thì nhiều khả năng sẽ xuất hiện các từ “chó”, “sủa” Cònvăn bản nói về loài mèo thì sẽ xuất hiện nhiều từ “mèo”, “meo” Đối với các từ “ăn”,“uống”, “bệnh” thường sẽ có xác xuất xuất hiện giống nhau bất ké đó là văn bản nóivề loài nào
Mặc dù mô hình chủ đề được sử dụng với mục đích ban đầu là xử lý ngôn ngữ tự
H
Trang 23nhiên nhưng về sau, nó đã được ứng dụng trên nhiều lĩnh vực khác như tin sinh học(bioinformatics), xử lý văn ban, xử lý hình ảnh, Một trong những mô hình chủ dépho biến có thé kế đến là LSA được nêu ra sớm nhất ở ["], sau đó là phiên bản mởrộng của LSA có dựa vào thống kê [: '] gọi là pLSA, về sau có thêm LDA [*] Cácphương pháp LSA, pLSA là những phương pháp kinh điển dé giải quyết bài toán timchủ đề an.
LSA có khả năng phân tích mối quan hệ giữa các tập hợp văn bản và các cụm từ trongvăn bản bằng cách tạo ra một tập hợp các khái niệm có liên quan đến văn bản và cụmtừ LSA cho rằng những từ gần nghĩa với nhau sẽ xuất hiện trong những đoạn văntương tự nhau Một ma trận chứa tần số từ xuất hiện trong một văn bản (cột biéu diễncho những từ độc lập nhau còn hàng biểu diễn cho các đoạn văn) Sau đó một kỹ thuậtphân tích ma tran SVD (Singular Value Decomposition) được sử dung dé làm giảm sốchiều của các cột trong khi vẫn giữ được mức độ tương tự giữa các hàng Những từđược tính mức độ tương tự băng cách lay ra hai vector ở bất kỳ hai hang nào và tínhcosine giữa chúng Giá trị càng gan về 1 đại diện cho hai từ tương tự nhau rất cao,còn giá trị gần về 0 nghĩa là hai từ khác nhau
PLSA là một mô hình chủ đề được phát triển thêm từ LSA, trong đó có sử dung cácphương pháp thông kê để phân tích dữ liệu xuất hiện chung Kết quả được đưa ra làmột biéu diễn có số chiêu ít hơn từ những biến có thé quan sát được dựa vào mối quanhệ đối với những biến an
Tuy nhiên, một số nhược điểm đã làm cho các phương pháp này không còn được sử
dụng rộng rãi như trước:
— LSA có hai nhược điểm chính đó là khó dự đoán ý nghĩa của kết quả và mô hìnhcủa LSA không phù hợp với dữ liệu thực tế, vì LSA giả định từ ngữ và văn bảntuân theo phân bố Gauss, trong khi phân bố Poission mới là phân bố thu được.Vì vậy một số giải pháp thay thế mới hơn dựa trên mô hình phân phối đa thứcđược cho là tạo ra kết quả tốt hơn LSA
— pLSA có thé quá phù hợp (overfitting) với tập huẫn luyện, và pLSA không phảilà một phương pháp phân tích dữ liệu theo kiểu tổng quát hoàn chỉnh và không
12
Trang 24có một cách tự nhiên nào để gán các chủ đề cho một tài liệu mới chưa từng xuất
hiện.
LDA vượt qua được những hạn chế của phương pháp pLSA trên băng cách xem trọngsố của các chủ dé là một biến ngẫu nhiên an thay vì một tập hợp các tham số có liênkết với tập huấn luyện, do đó LDA được sử dụng để tạo ra mô hình chủ đề Phần sauđây sẽ mô tả rõ hơn về LDA
2.4.1 Mô hinh sinh chú đề LDA
LDA là một mo hình sinh chủ dé có tưởng chính là coi môi tài liệu như là một phanphôi xác suat của các chủ đê ân, moi chủ dé lại là một phan phôi xác suât khác cua
các từ Mô hình này có thé được biểu diễn bang sơ đồ trong hình 2
Trong hình 2:
— aand Ø là những đối số của phân phối Dirichlet— Ø; and ø, là phan phối của chủ dé trên văn ban i và phan phân phối của từ trên
chủ đề &— Z là chủ dé của một từ trong văn bản
— 1z là một từ xác định trong văn ban
— ø là một ma trận K + V (V là số chiều của tập từ vựng) ma mỗi hàng biểu diễncho phân phối của từ trên một chủ đề
Để tạo ra một văn bản i với mô hình này, ta định ra một số lượng từ nhất định, sau đóchọn hai biến Ø; ~ Dir(a) và g, ~ Dữ(Ø) trong đó Dir(a), Dir(Ø) là các phân phốiDirichlet với tham số tương ứng là a và Ø Sau đó, ta tiếp tục chọn từng từ trong vănban băng cách chon lay một chủ đề z ~ Mul(0;) với một từ wy ~ Mul(g,,) trong đó
13
Trang 25Mul(0;) và Mul(g,,,) là các phân phối đa thức tương ứng với các tham số 6; và ø,
2.4.2 Tạo ra mô hình LDATạo ra mô hình nói chung là một tiến trình xác định những mô hình chủ đề đã gópphan tao ra tat cả các văn bản trong một tập hợp văn bản nao đó Thực tế cho thay quátrình tạo ra mô hình LDA khó có thể đạt được mức độ chính xác tuyệt đối do đó cóhai phương pháp dùng dé xấp xi được sử dụng phố biến là VBI (Variational Bayersian
Inference) [6] va CGS (Collapsed Gibbs Sampling) [11] Phương pháp VBI là phương
pháp được Blei mô ta trong bài báo về LDA của minh Tuy nhiên, phương pháp CGShiện thực đơn giản hơn và sử dụng một số lượng tác vụ ít hơn để tạo ra cùng một giátrị biểu diễn mức độ phức tạp (perplexity) so với VBI do đó phần sau đây sẽ tập trung
— Những ký hiệu ¬7 có nghĩa là những dữ liệu tương ứng khong được tính vào
tong Nz, Nj, Nụy và Ny.— N, là tong số lượng từ được gán cho một chủ đề &— W; là tong số lượng từ duoc gan cho một tài liệu /— Ny, là tong số lần một từ w được gán vào một chủ đề &— Ny là tong số lần một từ trong một tài liệu 7 được gán cho một chủ đề &
14
Trang 26Một vòng lặp của CGS được thực hiện bằng cách lay ngau nhién mot mau cho z¡; theocông thức 2 cho mỗi từ ¿ trong mỗi tài liệu 7 Đối với từng giá tri của Z¡;, CAC tong
Ny, Ni, Nwe được cập nhật tương ứng.
Cho trước một mô hình đã được tạo ra, ta có thé tính toán giá tri gan đúng của g và 0
như trong hai công thức 3 và 4
liệu mới.
2.4.4 Lựa chọn tham số cho mô hình LDAHai tham số có liên quan tới thời gian thực thi giải thuật và dung lượng bộ nhớ là sốlượng chủ dé và số lượng vòng lặp Tổng số chủ dé được lựa chọn sao cho không quálớn vì thời gian thực hiện giải thuật tỉ lệ tuyến tính với số lượng chủ đề và số lượngvòng lặp Còn dung lượng bộ nhớ tỉ lệ với số lượng chủ đề và số lượng tài liệu.Không có một công thức chung cho các tham số đầu vào khi chạy giải thuật tạo ra môhình LDA Tuy nhiền, có nhiều nghiên cứu sử dụng giá tri Ø là 0.01 hoặc 0.1, a đượcdé nghị là 2 T la tong s6 luong chu dé can tao ra va nam trong khoang 50-200 Cactham số này cần dựa vào thực nghiệm để tạo ra sự kết hợp tối ưu giữa chúng
15
Trang 272.5 Không gian tiền topo (pretopology)Không gian tiền topo cho phép định nghĩa một hệ thống mạng lưới phức tạp theo mộtcách đơn giản hơn Nó cung cấp những đặc trưng cho các thành phần, nhóm các thànhphan, và hình thức phát triển dé mô hình động một mạng lướị
Tiền topo có thể được ứng dụng trong lĩnh vực xử lý văn bản như phân loại văn bản[3] và những lĩnh vực khác, nên có thé sẽ ứng dụng được trong bài toán đang xét Mộtứng dụng khác của tiền topo là mô hình hóa việc cháy rừng [5] Trong mô hình nàymật độ cây cối trong rừng là quan trọng có tính quyết định đối với tầm lan rộng củangọn lửạ Nếu như cây cối thưa thớt, ngọn lửa sẽ tắt trước khi nó lan rộng, còn nếunhư cây cối dày đặc thì toàn bộ khu vực sẽ bị cháỵ
Định nghĩa 1: Cho một tập hữu hạn không rỗng E và P(E) là một tập chứa tat cảcác tập con của Ẹ Một không gian tiên topo là một cặp (E,a) trong đó a là một ánhxạ ă) : P(E) > P(E) được gọi là bao đóng gia (pseudo closure) (hỉnh 3 ) và được
định nghĩa là : VẢ, {| © E thì bao đóng giả VẢ, ă1) C Ela:
— ă0) =0
— AC ă4)
Hình 3: Không gian tiền topo
Bao đóng giả có liên quan tới quá trình mở rộng (dialation process) như trong hình 4.
Nghĩa là ặ) có thể được áp dụng vào một tập A theo một trật tu, để tạo nên một mô
hình : A C ă4) Cc aZ (4) Cc Ca"(A).
Sử dụng bao đóng giả ta có thé định nghĩa những phan tử kế cận của một tập hợp hoặcmột phan tử riêng biệt Anh xa ặ) trong tiền topo phụ thuộc vào ứng dụng cụ thé
16
Trang 28nhưng thường được xem là mức độ liên kết của một phần tử trong một tập với nhữngphan tử còn lại của tập Những phân tử thuộc tập a(A) là những phan tử thỏa mối quan
hệ nào đó giữa A và a(A).
Hình 4: Quá trình mở rộng
Định nghĩa 2: Một không gian tiền topo V(E, a) được định nghĩa bởi— VA,B,AC E,BC EvàAc B thia(A) C a(B)
Định nghĩa 3:Một không gian tiền topo Vp(E, a) được định nghĩa bởi
— VA,B,ACE,BCEVaA CB thia(A UB) = a(4) Ua(B)
Dinh nghĩa 4:Một không gian tiền topo Vs(E, a) được định nghĩa bởi
— V4,4€ E,a(A) =c¡a(3))
Khi một tập không thay đổi nữa thì ta đã có một bao đóng, thường được sử dụngtrong hệ thông phân loại (classification system) [3] hoặc hệ thông phân nhóm dữ liệu
(clustering system) [19].Dinh nghĩa 5: A c P(E) được gọi là một bao đóng khi và chỉ khi : A = a(A) Bao
đóng của A € P(E) là một tập đóng nhỏ nhất chứ A ký hiệu là F(A) hoặc FyTrong tiền topo, không gian có thể là một trong các loại: không gian dựa trên khoảngcách giữa các phan tử thuộc một tập (metric space), không gian dựa trên mối quan hệhai ngôi (binary space) và không gian dựa trên giá trị (valued space) trong lý thuyếtđồ thị
Không gian dựa trên khoảng cách giữa các phan tử trong một tập: Gọi # là một tậpcó khoảng cách, thì một khối cầu đóng có một tâm x có bán kính là r được ký hiệu
17
Trang 29— Bix,r) = fy € E,dx.y) < r}
Bao đóng gia được định nghĩa trên # là
— VA € P(E), ăA) = {x e E,P(x,r)n 4 FO}
Không gian dựa trên mỗi quan hệ hai ngôi: Những phan tử trong một tap E được liênkết bằng quan hệ hai ngôi có tính chất phản xạ Rj với 7 € {1, ,nø} được ký hiệu
— Wie {1, ,n}, Rix) = {fy € F,xR/„y}Bao dong gia duoc dinh nghia trén E la
— VA E P(E), ăA) = {x EE, Vie {1, ,nm},R¿(x)n4 z 0}
Không gian dựa trên mối quan hệ giá trị: Các phan tử trong một tap E liên kết vớinhau bằng các giá trị (trong lý thuyết về đồ thi) Gọi v là một ánh xav: Ex ES
N, (x,y) > v(z,y) Bao đóng giả được định nghĩa trên È
— VA€7(F).ă4) = {yeE— 4,3 „e„v(x.y) > s} UA
Tùy vào từng loại van dé mà ta lựa chọn các kiểu không gian cho phù hợp Trước khiáp dụng tiền topo vào một van dé cụ thé ta phải định nghĩa được tập hop E và ánh xa
ặ).
2.6 Hé thong tw van (recommendation system)Hệ thống tu van giúp người dùng lựa chọn những thông tin cần thiết thay vì phải timkiếm trong một số lượng lớn các thông tin có sẵn trong một hệ thống và được ứngdụng trên nhiều lĩnh vuc Đối với những trang bán hàng trực tuyến như Amazon, hệthống tu van có thé sử dụng những thông tin về những người mua hàng trước đây dégiúp cho người mua hiện tại quyết định những sản phẩm nào nên mua nhất, qua đólàm tăng doanh số cũng như sự hài lòng của khách hàng Đối với một MXH, hệ thongtư vấn sẽ đưa ra các gợi ý về bạn bè, quảng cáo mà người sử dụng có thể quan tâm
nhăm đưa ra lợi ích cho người sử dụng mở rộng môi quan hệ trên MXH cũng như có
18
Trang 30thêm nguồn thu từ quảng cáo.Hệ thống tư vẫn được chia làm hai dạng chính đó là tư vấn chung (non-personalized)và tư van riêng (personalized) cho từng người dùng [' -] Hệ thống tư vấn chung cóđặc điểm là đưa ra cùng một danh sách giúp cho người dùng chọn dựa vào nhữngthống kê đơn giản như các mặt hàng được đánh giá cao, hoặc có số lượng bán ra vượtqua một mức ngưỡng nào đó Còn hệ thống tư vấn riêng, có khai thác các thông tincủa từng người dùng riêng biệt băng cách thu thập các thông tin cá nhân, lưu lại nhữnglịch sử mua hàng, truy xuất các liên kết, đánh giá sản phẩm, Sau đó những thôngtin này sẽ được thống kê, so sánh với nhau dé cho ra các tư van cu thé đối với từng
người dùng.
Hệ thống tư van có khai thác thông tin người dùng bao gồm ba mảng chính [' ']: lọcthông tin, so sánh hỗ sơ người dùng - mục (item), va so sánh các hồ sơ người dùng
với nhau Trong mảng lọc thông tin, những phương pháp thường được sử dụng là so
sánh các yếu tố nhân khẩu học (demographic), loc dựa trên nội dung (content-based)và lọc cộng tac (collaborative filtering) Mục tiêu của so sánh hồ sơ người dùng - mụclà tính toán mức độ tương tự giữa hồ sơ người dùng và các thuộc tính mô ta của cácmục để đưa ra những mục có liên quan nhất tới từng người dùng cụ thể Còn so sánhcác hồ sơ người dùng với nhau được dùng để tìm kiếm những người dùng tương tựhoặc tìm ra các nhóm người dùng Những kỹ thuật này có thể được tóm tắt trong hình
3.
19
Trang 31Ky thuật tư van
> Giữa các hô sơ người dùng
v v e Tim kiếm người dùngLọc dữ liệu Sosánh — tương tự ¬
e Tao ra những lân cận
e Cac yếu tố nhân khâu học e Du đoán dựa trên những lân
e Loc cộng tác cậne = Lọc dựa trên nội dung
e - Lai giữa lọc cộng tác và lọc Ly Hồ sơ người dùng - mụcdựa trên nội dung :
So sánh từ khóaĐộ tương tự cosine
Lân cận gần nhất
Phân loại
Hình 5: Hệ thống tư van có khai thác thông tin người dùngTrong số những phương pháp có thể áp dụng cho hệ thống tư vấn thì so sánh các hỗsơ người dùng được sử dụng tương đối nhiều Do đó, khi kiểm tra giải thuật so sánhngười dùng trên một MXH ta sẽ áp dụng một số phương pháp thường được sử dụngcho hệ thống tư van
20
Trang 32Chương 3 Phương pháp đề nghị cho vấn đề so sánh người dùng
trên MXH
Để tính toán mức độ tương tự hay mức độ khác biệt giữa những người dùng với nhau,ta phải chuyển những thông tin trên thành một dang đã chuẩn hóa và có thé so sánhđược nhờ những công thức tính toán với từng dạng dữ liệu khác nhau Phần này cũngnêu ra phương pháp cho việc so sánh giữa các thuộc tính một cách tổng quát có théứng dụng được vào một MXH cụ thé Một hồ sơ người dùng sẽ trải qua các bước laytất cả những thông tin có ý nghĩa Sau đó là giải thuật tính mức độ tương tự được ápdụng bằng cách so sánh các thành phần riêng biệt của từng người dùng cũng như điểmsố chung từ các điểm số thành phần đã tính trước đó
Dé xây dựng một tập người dùng tương tự, ta áp dụng những kết qua của việc xâydựng hồ sơ người dùng, sau đó xác định không gian tìm kiếm dé tìm ra tập nhữngngười dùng có nhiều khả năng có hỗ sơ giống với hồ sơ người dùng cần tìm kiếmnhất Cuối cùng là thực thi giải thuật để tạo ra một danh sách các hồ sơ người dùngcó thứ hạng cụ thé
3.1 Xây dựng hồ so (profile) người dùngHồ sơ người dùng được xây dựng dựa trên cơ sở những thông tin, thuộc tính có liên
quan tới một người dùng và có khả năng ảnh hưởng tới mức độ tương tự giữa các
người dùng với nhau [' '] Nhìn chung, trong một MXH tiêu biểu, ta có thé phân loại
các thuộc tính của người dùng dựa trên mức độ tương tự khi so sánh thành 4 loại như
sau :
— Thuộc tính đơn trị : bao gồm những thuộc tính chỉ có một giá trị duy nhất như
giới tính, họ tên, tôn giáo, quê quán — Thuộc tính da tri: là những thuộc tinh có từ hai gia tri trở lên như ngồn ngữ,
công việc, trường hoc,
— Thuộc tính phân cấp : là những thuộc tính có chia thành những mức khác nhau
như địa chi, sở thích,
21
Trang 33— Thuộc tính văn bản : là những nội dung mà người dùng có thực hiện trên MXH
như cập nhật trạng thái, bình luận một bài viét, Những thuộc tinh nay sẽ mô tả một hỗ sơ của người dùng Những người dùng đượcso sánh với nhau băng các thước đo khác nhau trên từng loại thuộc tính khác nhau
3.2 So sánh hai hồ sơ người dùng với nhau
Phân này sẽ nói vê phương pháp so sánh hai hô sơ người dùng với nhau sau khi trảiqua bước xây dựng hồ sơ người dùng bao gom cách tính các diém sô thành phan vađiêm sô tông quát.
3.2.1 So sánh các thudc tính đơn trị
Các thuộc tính đơn trị của một người dùng x có thé được biểu diễn theo ký hiệu tập
hợp như sau : 4c „„ =
{a&}-Các thuộc tính đơn tri thường được so sánh trực tiếp với nhau như biểu diễn trong
3.2.2 So sánh các thuộc tinh đa trịCác thuộc tinh đa trị được xem như một tập hop, một thuộc tinh da tri của người dùng
x được biểu diễn như sau : Á„„„„ = {đi,đa ,đ„},n EN.Loại thuộc tính này được so sánh dựa trên tổng số những phan tử giống nhau giữa haihồ sơ người dùng Sau đó giá trị này được chuẩn hóa lại bằng cách chia cho số lượngphan tử lớn nhất của thuộc tính đang xét trên hai hỗ sơ người dùng Cho trước hai tập
AX multiple va Ay tiple là hai tap hợp dai diện cho hai thuộc tính da tri của hai người dùngx vày
Ax, tiple ® Ay tiple |
J multiple (x,y) — = M ” (6)
22
Trang 34Trong đó:
— mui; L*,y) là mức độ tương tự cho các thuộc tính da trị
= Í4y„.ưư„ MAY mnie! là lượng số của tập giao giữa X va Y— Mla tông số lượng số tối đa giữa hai tập X và Y, tùy thuộc vào tập nào có nhiều
phân tử hơn theo công thức 7
M — | mm | neu lv» | > |A, multiple | ( 7)
L4; multiple | neu Ax nutipte | < L4; multiple |
3.2.3 So sánh các thuộc tính phân cấp
Đối với các thuộc tính phân cấp, mỗi cấp sẽ được gán một giá trị tương tự Những cấpcàng tong quát mức độ tương tự càng nhỏ còn những cấp chỉ tiết thì mức độ tươngtự sẽ cao hơn Ví dụ như xét thuộc tính quê quán của hai hồ sơ người dùng, nếu
hai người dùng có cùng chung một khu vực càng nhỏ thì mức độ tương tự giữa haingười dùng càng cao : hai người dùng có qué quán ở cùng một huyện sẽ có mức độ
tương tự cao hơn nếu họ ở cùng tỉnh Ta chia các cấp thành những mức khác nhauvị, v›, là, , vy sao cho ly, < Ivy < ly; < < lyn, mỗi mức sẽ được gan một điểmsố sao cho sị > s2 > 53 > > Sp thỏa s1,52,53, ,5n <1
Như vậy mỗi thuộc tinh phân cấp của người dùng x được biéu diễn bởi các cặp {/v, s}
như sau : Ay ico = {{/11, 81}, {9a, 52}, {ñB3,S3}, , (vn, Sn} hn € (N)
Mức độ tương tự giữa các thuộc tính được tinh theo điểm số của mức nhỏ nhất màthuộc tính giữa hai người dùng giống nhau theo công thức 8
maX(S¡, Sj) VJ z L, {{hi, si}, thị, sit} C (A viierachical 1 Ay, crachicat )
Trang 35— max(s¡, s;) là hàm tra về giá tri lớn nhât giữa hai gia trỊ s; và s;.
3.2.4 So sánh các thuộc tính liên tụcCác thuộc tính liên tục được so sánh với nhau bang cách chia ra các khoảng phù hợp
và so sánh các khoảng đó với nhau Gọi 4 = {ay},a>y © R là ký hiệu củaX continuousthuộc tính liên tục của một người dung x Ta định nghĩa một tập các khoảng 7 =
{l,l2,la, ,i„},n € N trong miễn giá tri của các thuộc tính Gọi ƒ{x) : A >]X continuouslà một hàm anh xa một gia tri liên tục vào một tập các khoảng Mức độ tương tự giữachúng được tính toán như trong công thức 9
MA xcontinuons ) —ƒu ¬ |
Seontinuous (x iV ) =l~ M = (9)
Trong đó :— ,/smmmzo„s(X,y) là mức độ tương tự cho các thuộc tính liên tục.
— Mla tông số lượng các khoảng (M = ||)
3.2.5 So sánh các thuộc tinh văn banCác thuộc tính văn bản không thé so sánh dưới dạng thô, do đó văn bản cần phải đượcchuyền về dưới dang vector để có thé so sánh được Phương pháp được lựa chọn ởđây là chuyển các văn bản về một tập các chủ dé và xác suất tương ứng với mỗi chủ déđó dựa trên LDA Sau đó, độ tương tự cosine được áp dụng để tính ra mức độ tương
tự giữa hai vector đại diện cho thông tin văn bản của người dùng.Các nội dung văn bản sau khi được xử lý sẽ tạo ra một vector dựa trên LDA với k
phần tử Mỗi phần tử là một phần phối xác suất trên một chủ đề cỗ định trong mộttập gồm k chủ đề Một thuộc tính văn bản của người dùng x được đại diện bằng một
vector Vy = (Xo,XI,Xa, ,X¿_¡) Dé tính toán mức độ tương tự ta cũng sử dụng cosine
24
Trang 36giữa hai vector như trong công thức 10
k-1
ng,Seoment(% iV ) — hol -_
Trong đó:
— fooment(X,¥) là mức độ tương tự cho các thuộc tinh văn bản.
Các vector biểu diễn nội dung văn bản của x và y là không âm và 0 < ƒ„„„(.y) < 1
3.2.6 Mức độ tương tự tong hợpMức độ tương tự tong hợp được tính bang tổng các mức độ tương tự của những thuộctính riêng biệt như đã nêu ở các phần trước Mỗi thuộc tính sẽ được liên kết với mộttrọng số dé cho thay tầm quan trọng của thuộc tính lên trên mức độ tương tự tổng quát
của những người dùng.
Công thức 11 biểu diễn cách tính mức độ tương tự tong quát
Srorat\®,Y) — arf (x,y) + Ø2ƒ (X,Y) + asf; (x,y) Fee Onfy (X,Y) (11)
Trong do— O1,02,03, , là những trọng sô tương ứng với các mức độ tương tự tương
ứng với các thuộc tính được chon dé so sánh.
— ƒ/¡(x,y).⁄(x,y),⁄(x,y), ,/„(x, y) là những mức độ tương tự thành phân riêng
Trang 37tìm kiếm Một phương pháp dựa trên xác định các trọng số tốt nhất và một phươngpháp dựa trên khái niệm về tiền topo Sơ đồ trong hình 6 và hình 7 minh họa cho hai
tự cao VỚI x.
Trong hình 6, phương pháp phát hiện tập trọng số tốt nhất được thực hiện qua các giaiđoạn như so sánh những thuộc tính của x và thuộc tính tương ứng của các phan tử cótrong không gian tìm kiếm Sau đó, một tông có trọng số của các thuộc tính được tínhtoán để cho ra một mức độ tương tự tong quát, chỉ có K phần tử có mức độ tương tựcao nhất được gom vào tập người dùng tương tự
Trang 38Trong hình 7, phương pháp dựa trên tiền topo được thực hiện sau khi xác định khônggian tìm kiếm bang cách xây dựng một tập hợp E gồm x va không gian tìm kiếm của x.Sau đó ta định nghĩa một ánh xạ ặ) trên E nhằm mục đích tạo ra một không gian tiền
topo (#,ặ)) Trong không gian này, ta xác định các tập bao đóng giả a” (x), những
tập hợp này sẽ được gộp chung lai và ưu tiên sắp xếp theo tăng dan của ø dé tạo thành
tập người dùng tương tự.
3.3.1 Xác định không gian tìm kiếmMột không gian tìm kiếm của người dùng được giới hạn dựa trên khái niệm về bạnchung (mutual friend) Nói một cách đơn giản là “Nếu nhiều người bạn của tôi cóchung một người bạn tên là Alice, có lẽ đó cũng là bạn của tôi” ['] Đối với mộtngười dùng x có nhu cầu tìm kiếm trên MXH, không gian tìm kiém của người này
được định nghĩa như sau:
RC(x) = {Vu,y € F{x)|F(u, y)} (12)
Trong đó:
— RC(x) là không gian tìm kiếm của người dùng x
— F(x) là tập hợp bạn bè của người dùng x— F{(w,y) có nghĩa là z.y là bạn của nhau
Đây có thé gọi là không gian tim kiếm ở mức 1 vì ta chỉ xét tới những người dùnglà bạn của những người bạn của x Ta có thể mở rộng ra không gian tim kiếm mức 2băng cách lập lại công thức 13 với tat cả những người dùng trong RC(x) và hợp tatcả các tập đó lạị Như vậy không gian tìm kiếm lúc này sẽ là hợp của không gian tìmkiếm mức 1 và mức 2 Tương tự như vậy với các mức tiếp theo ta sẽ có được khônggian tìm kiếm tổng quát mức n(n € Ñ)
IRCn—1 (x) |
RC,œ%)= |} RC p11), x7 € RCy—-1(2) (13)
i=l
27