intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Một tiếp cận trong xây dựng hệ thống gợi ý theo ngữ cảnh

Chia sẻ: Lavie Lavie | Ngày: | Loại File: PDF | Số trang:10

130
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài viết Một tiếp cận trong xây dựng hệ thống gợi ý theo ngữ cảnh đề xuất một giải pháp trong xây dựng hệ thống gợi ý theo ngữ cảnh, áp dụng cho gợi ý du lịch nhằm gợi ý các điểm du lịch phù hợp nhất với du khách. Mời các bạn tham khảo.

Chủ đề:
Lưu

Nội dung Text: Một tiếp cận trong xây dựng hệ thống gợi ý theo ngữ cảnh

Kỷ yếu Hội nghị Quốc gia lần thứ VIII về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR); Hà Nội, ngày 9-10/7/2015<br /> DOI: 10.15625/vap.2015.000185<br /> <br /> MỘT TIẾP CẬN TRONG XÂY DỰNG HỆ THỐNG GỢI Ý THEO NGỮ CẢNH<br /> 1<br /> <br /> Lư Chân Thiện1 và Nguyễn Thái Nghe2<br /> <br /> Khoa Kỹ thuật Công nghệ, Trường Cao đẳng Cộng đồng Kiên Giang, E-mail: lcthien_kgcc@yahoo.com<br /> 2<br /> Khoa Công nghệ Thông tin và Truyền thông, Trường Đại học Cần Thơ, E-mail: ntnghe@cit.ctu.edu.vn<br /> <br /> Tóm tắt - Hệ thống gợi ý (Recommender Systems - RS) đang được ứng dụng rộng rãi trong nhiều lĩnh vực (như thương mại điện<br /> tử, giải trí, giáo dục,...) nhằm dự đoán sở thích của người dùng nhờ vào thông tin cá nhân hoặc những phản hồi (đánh giá) của họ.<br /> Bài viết này đề xuất một giải pháp trong xây dựng hệ thống gợi ý theo ngữ cảnh, áp dụng cho gợi ý du lịch nhằm gợi ý các điểm<br /> du lịch phù hợp nhất với du khách. Hệ thống này kết hợp các phương pháp như gợi ý dựa trên ngữ cảnh đầu vào (contextual prefiltering), tích hợp với kỹ thuật phân rã ma trận (matrix factorization) và xử lý ngữ cảnh đầu ra (contextual post-filtering) nhằm tăng độ<br /> chính xác cho hệ thống. Sau khi xây dựng hệ thống và tích hợp các giải thuât gợi ý, chúng tôi thu thập thông tin từ người dùng thực<br /> nhằm đánh giá hiệu quả của hệ thống đã đề xuất. Thực nghiệm cho thấy việc ứng dụng giải pháp này trong hỗ trợ phát triển du lịch là<br /> hoàn toàn khả thi.<br /> Từ khóa: Hệ thống gợi ý theo ngữ cảnh, hệ thống gợi ý du lịch, kỹ thuật phân rã ma trận, lọc cộng tác.<br /> <br /> I. GIỚI THIỆU<br /> Ngành du lịch trong những năm qua đã phát triển mạnh mẽ, đem lại lợi ích to lớn về kinh tế - xã hội, góp phần thúc<br /> đẩy các ngành sản xuất và dịch vụ phát triển. Với tiềm năng du lịch đa dạng và phong phú, Việt Nam là một nước có nhiều<br /> danh lam thắng cảnh, từ đó thu hút không ít khách du lịch cả trong và ngoài nước. Tuy nhiên, khách du lịch thường gặp phải<br /> rất nhiều khó khăn khi đi đến những thành phố lạ lẫm. Họ cần phải nhờ đến sự trợ giúp của hướng dẫn viên du lịch hoặc ít<br /> nhất là phải dựa vào sách hướng dẫn hay bản đồ để có được những thông tin mà họ cần tìm. Tuy nhiên những sự trợ giúp<br /> này cũng có những hạn chế nhất định như: Khách du lịch sẽ có thể khó tìm thấy những thông tin chi tiết về những địa điểm<br /> du lịch cần tham quan để có sự chuẩn bị cần thiết. Hoặc là, những hướng dẫn viên du lịch thường hướng dẫn cho cả đoàn<br /> khách, họ đi theo những tour du lịch đã được định sẵn và chỉ được tham quan những điểm du lịch chính, trong khi những<br /> điểm du lịch thú vị lại không được tham quan, mặc dù cách địa điểm chính rất gần.. Như vậy làm thế nào để hỗ trợ khách<br /> khi đi du lịch có thể dễ dàng tìm thấy những địa điểm phù hợp với họ, phù hợp với những điều kiện ngữ cảnh xung quanh<br /> (như thời tiết, tâm trạng, bạn đồng hành,...).<br /> Để đáp ứng những đòi hỏi trên, việc ứng dụng các công nghệ trong hệ thống gợi ý với các yếu tố ngữ cảnh có thể sẽ<br /> cho kết quả phù hợp. Hệ thống gợi ý (Recommender Systems - RS) là một dạng kỹ thuật trong lọc thông tin, RS đang được<br /> ứng dụng rộng rãi trong nhiều lĩnh vực (như thương mại điện tử, giải trí, giáo dục,...) nhằm dự đoán sở thích của người dùng<br /> nhờ vào thông tin cá nhân hoặc những phản hồi (đánh giá) của họ.<br /> Bài viết này đề xuất một giải pháp xây dựng hệ thống gợi ý dựa trên ngữ cảnh, sau đó ứng dụng giải pháp này cho<br /> bài toán gợi ý các điểm du lịch. Hệ thống có thể vận hành trên nền Web để hỗ trợ khách du lịch nhằm đem lại sự thoải mái<br /> và sự tiện dụng tối đa cho họ khi tham gia vào hệ thống.<br /> Để thực hiện, chúng tôi đã nghiên cứu các phương pháp hiện có và đề xuất phương pháp xây dựng hệ thống bằng<br /> cách kết hợp phương pháp gợi ý dựa trên ngữ cảnh đầu vào (contextual pre-filtering), tích hợp với kỹ thuật phân rã ma trận<br /> (matrix factorization) và xử lý ngữ cảnh đầu ra (contextual post-filtering), đồng thời tìm hiểu và đề xuất hướng khắc phục<br /> vấn đề người dùng mới trong hệ thống. Sau khi xây dựng hệ thống hoàn chỉnh, chúng tôi thu thập ý kiến phản hồi từ người<br /> dùng thực, từ đó đánh giá hiệu quả của hệ thống đã xây dựng.<br /> II. HỆ THỐNG GỢI Ý (RECOMMENDER SYSTEMS - RS) VÀ CÁC NGHIÊN CỨU LIÊN QUAN<br /> Hệ thống gợi ý (RS) là hệ thống có khả năng dự đoán và cung cấp cho người dùng những thông tin, sản phẩm hay<br /> dịch vụ mà họ có thể thích/quan tâm. RS sẽ đưa ra các gợi ý dựa trên phản hồi trong quá khứ của người dùng (như bình<br /> luận, đánh giá,…) trên sản phẩm, bài hát, bộ phim, điểm du lịch,... Các hệ thống gợi ý nổi tiếng hiện có như: gợi ý sản<br /> phẩm của Amazon/Ebay, gợi ý phim/video clip của NetFlix/Youtube,…<br /> RS đã cho thấy được ý nghĩa to lớn của nó trong việc giúp người dùng giải quyết tình trạng quá tải thông tin. Có hai<br /> loại mô hình RS được nghiên cứu và ứng dụng trong thực tiễn đó là: hệ thống gợi ý 2 chiều (2D RS) và hệ thống gợi ý<br /> theo ngữ cảnh (đa chiều, thông thường là 3 chiều – 3D RS).<br /> A. Hệ thống gợi ý hai chiều<br /> Trong hệ thống gợi ý 2 chiều có hai khái niệm chính là người dùng (user) và mục tin (item) cần được gợi ý đến<br /> cho người dùng. Quá trình gợi ý dựa vào các phản hồi (feedbacks/rating) của người dùng về các đối tượng. Ví dụ, đánh giá<br /> của người dùng về các sản phẩm mà họ đã từng mua trên Amazon từ đến<br /> . Nhiệm vụ của RS là dự đoán các<br /> đánh giá của những người dùng đối với những item mà họ chưa thấy/mua và sau đó gợi ý cho họ.<br /> Một cách hình thức, gọi U là tập người dùng (users); I là tập mục tin (items). Tập I có thể rất lớn, từ hàng trăm<br /> ngàn (sách, CD,…) đến hàng triệu (như bài báo, bản tin,…). R là tập các giá trị đánh giá của người dùng trên các mục tin.<br /> <br /> 486<br /> 4<br /> <br /> MỘT TIẾP CẬ TRONG XÂY DỰNG HỆ TH<br /> ẬN<br /> Y<br /> HỐNG GỢI Ý TH<br /> HEO NGỮ CẢNH<br /> H<br /> <br /> Thông thường dữ liệu được biểu diễn tro một ma trận 2 chiều, t<br /> T<br /> g<br /> c<br /> ong<br /> trong đó mỗi dòng là một user, mỗi cột là một item v<br /> u<br /> và<br /> mỗi ô là đánh giá của user trên item tươn ứng). Với m người dùn u ∈ U, cần tìm mục i ∈ I (u chưa xem/<br /> m<br /> t<br /> ng<br /> mỗi<br /> ng<br /> /mua i) sao ch<br /> ho<br /> hàm ̂ đo độ p hợp (xếp hạng/đánh giá của người dù u đạt giá trị lớn nhất trê i:<br /> h<br /> phù<br /> h<br /> á)<br /> ùng<br /> ên<br /> ̂: U × I → R<br /> <br /> (1<br /> 1)<br /> <br /> Các kỹ thuật trong R thường đượ phân thành ba nhóm [1]:<br /> RS<br /> ợc<br /> Dựa t<br /> trên nội dung (content-base filtering): người dùng đư gợi ý nhữ item tương tự như các i<br /> ed<br /> n<br /> ược<br /> ững<br /> g<br /> item từng đượ<br /> ợc<br /> họ đá giá cao;<br /> ánh<br /> - Lọc c<br /> cộng tác (colla<br /> aborative filte<br /> ering): người d<br /> dùng được gợ ý các sản ph mà những người cùng sở thích với h<br /> ợi<br /> hẩm<br /> g<br /> họ<br /> đánh giá cao. Đây là kỹ thuật thư<br /> ường được sử dụng nhất;<br /> ử<br /> - Lai ghép (hybrid): kết hợp cả 2 p<br /> phương pháp trên.<br /> -<br /> <br /> Ý tưởn chính của kỹ thuật lọc cộ tác là dự đoán độ phù h của item i được đánh gi bởi người d<br /> ng<br /> k<br /> ộng<br /> đ<br /> hợp<br /> iá<br /> dùng u dựa trê<br /> ên<br /> tập N(ui,i) giữa người dùng ui và i, trong đó ui là ngườ có cùng sở t<br /> t<br /> ời<br /> thích với u. Ví dụ, để gợi ý một điểm du lịch cho ngườ<br /> ời<br /> dùng u, đầu tiê hệ thống lọ cộng tác tìm những ngườ dùng khác c cùng sở thích với u. Sau đó, những nơ được họ đán<br /> d<br /> ên<br /> ọc<br /> m<br /> ời<br /> có<br /> ơi<br /> nh<br /> giá cao sẽ đượ dùng để gợi ý cho u.<br /> g<br /> ợc<br /> i<br /> B. Hệ thống g ý theo ngữ cảnh (Contex<br /> B<br /> gợi<br /> ữ<br /> xt-aware RS)<br /> Thông thường trong RS hai chiều, người ta thườ biểu diễn dữ liệu vào m trận user-it do vậy ch quan tâm đế<br /> ,<br /> ờng<br /> n<br /> ma<br /> tem<br /> hỉ<br /> ến<br /> người dùng v mục tin là chính chứ kh<br /> n<br /> và<br /> hông quan tâm đến các thô tin ngữ c<br /> m<br /> ông<br /> cảnh (context) bên ngoài có tác động đế<br /> )<br /> ến<br /> quyết định của người dùng hay không. “T<br /> q<br /> a<br /> Thông tin ngữ cảnh là nhữn thông tin c thể mô tả đư hoàn cản của một thự<br /> ữ<br /> ng<br /> có<br /> được<br /> nh<br /> ực<br /> thể” [3]. Ví dụ thời gian, nơi chốn, thời tiết, tâm trạng<br /> t<br /> ụ:<br /> n<br /> g,… là những thông tin ngữ cảnh, chúng có thể ảnh h<br /> g<br /> ữ<br /> g<br /> hưởng đến đán<br /> nh<br /> giá của người dùng đối với các item, từ đ dẫn đến sự ảnh hưởng củ những gợi ý trong RS.<br /> g<br /> đó<br /> ủa<br /> đa<br /> ng<br /> g<br /> h<br /> Với hệ thống gợi ý đ chiều, hàm ̂ được bổ sun thêm thông tin ngữ cảnh (context) và trở thành:<br /> ̂: U × I × C → R<br /> <br /> (C là th<br /> hông tin ngữ c<br /> cảnh)<br /> <br /> trong hệ thống gợi ý du lịch user là khác du lịch, item là những đị điểm du lịch và ngữ cảnh có thể là thờ<br /> g<br /> h,<br /> ch<br /> m<br /> ịa<br /> h,<br /> ời<br /> ví dụ, t<br /> gian (buổi sán<br /> g<br /> ng/tối, cuối tu<br /> uần, mùa, lễ, t<br /> tết,…), bạn đ<br /> đồng hành (đi một mình, đi với bạn trai/<br /> i<br /> /bạn gái, đi vớ gia đình, tr<br /> ới<br /> rẻ<br /> nhỏ…). Những đánh giá ch một điểm d lịch bởi một người dùng có thể sẽ phụ thuộc vào nh<br /> n<br /> g<br /> ho<br /> du<br /> ụ<br /> hững ngữ cảnh đó. Ví dụ và<br /> h<br /> ào<br /> buổi tối mùa x<br /> b<br /> xuân đi cùng gia đình thì đ điểm ABC là hấp dẫn n<br /> địa<br /> C<br /> nhất, nhưng khi đi cùng bạ gái thì có th địa điểm đó<br /> k<br /> ạn<br /> hể<br /> đ<br /> không phù hợp nữa.<br /> k<br /> p<br /> Không gian gợi ý b chiều có th được mô tả trong khối lập phương như ở Hình 1 Ô tô đậm c biết chỉ s<br /> ba<br /> hể<br /> t<br /> n<br /> 1.<br /> cho<br /> số<br /> R(101,7,1) = 6 có ý nghĩa là người dùng có mã số 101 đánh giá sản phẩm có mã số 7 trong điều kiện thời g có mã số 1<br /> R<br /> 1<br /> n<br /> gian<br /> với giá trị đán giá là 6. Trong khối lập phương này không phải ô nào cũng có giá trị, nhữ ô không c giá trị là do<br /> v<br /> nh<br /> T<br /> p<br /> y,<br /> c<br /> ững<br /> có<br /> d<br /> người dùng ch đánh giá. Mục tiêu của hệ thống gợi ý là dự đoán giá trị tại nhữ ô còn thiế đó, từ đó đ ra lời gợi ý<br /> n<br /> hưa<br /> a<br /> i<br /> n<br /> ững<br /> ếu<br /> đưa<br /> đến với người dùng.<br /> đ<br /> <br /> Hình 1. Minh họa cho không gian gợi ý ba chiều (ng<br /> .<br /> guồn [3])<br /> <br /> ếp<br /> hệ<br /> hể<br /> t<br /> ]:<br /> Các phương pháp tiế cận trong h thống gợi ý đa chiều có th được tóm tắt như sau [3]<br /> •<br /> <br /> Xử lý ngữ cảnh đầu và (Contextua pre-filtering Trong tiếp cận này, thô tin về ngữ cảnh được s dụng để lự<br /> ữ<br /> ào<br /> al<br /> g):<br /> p<br /> ông<br /> ữ<br /> sử<br /> ựa<br /> chọn hoặc xây dựng cá thiết lập có liên quan đế dữ liệu (xế hạng). Sau khi lọc thôn tin ngữ cản hệ thống đ<br /> c<br /> ác<br /> ó<br /> ến<br /> ếp<br /> u<br /> ng<br /> nh,<br /> đa<br /> chiều sẽ tr thành hệ th<br /> rở<br /> hống hai chiều và ta có thể sử dụng bất k phương phá gợi ý truyề thống nào t<br /> u<br /> kỳ<br /> áp<br /> ền<br /> trên các dữ liệ<br /> ệu<br /> đã chọn.<br /> <br /> Lư Chân Thiện, N<br /> L<br /> Nguyễn Thái Ngh<br /> he<br /> <br /> •<br /> •<br /> <br /> 48<br /> 87<br /> <br /> Xử lý ngữ cảnh đầu ra (Contextual post-filtering) Trong tiếp cận này, ngữ cảnh thông ti ban đầu bị bỏ qua và xế<br /> ữ<br /> a<br /> ):<br /> in<br /> ếp<br /> hạng được dự đoán bằn cách sử dụ bất kỳ phư<br /> c<br /> ng<br /> ụng<br /> ương pháp gợi ý truyền thống trên toàn bộ dữ liệu. Sa đó, các gợi ý<br /> i<br /> b<br /> au<br /> được điều chỉnh cho mỗ người sử dụ bằng cách sử dụng các thông tin theo ngữ cảnh.<br /> u<br /> ỗi<br /> ụng<br /> h<br /> o<br /> Mô hình h ngữ cảnh (Contextual m<br /> hóa<br /> modeling): Ph<br /> hương pháp nà xây dựng một mô hình d đoán. Ví dụ mô hình nà<br /> ày<br /> m<br /> dự<br /> ụ,<br /> ày<br /> có thể đưa ra xác suất m người dù cụ thể chọ một sản ph<br /> a<br /> một<br /> ùng<br /> ọn<br /> hẩm cụ thể tro một bối cả cụ thể là bao nhiêu. Sa<br /> ong<br /> ảnh<br /> au<br /> đó xác suấ này được dù để điều ch<br /> ất<br /> ùng<br /> hỉnh và tìm ra gợi ý phù hợ<br /> a<br /> ợp.<br /> <br /> C. Các nghiên cứu liên qua<br /> C<br /> n<br /> an<br /> Hiện cũ đã có nhi nghiên cứ về xây dựn hệ thống gợ ý hỗ trợ du lịch, nhưng đa phần là sử dụng phươn<br /> ũng<br /> iều<br /> ứu<br /> ng<br /> ợi<br /> u<br /> ử<br /> ng<br /> pháp lọc theo nội dung (co<br /> p<br /> o<br /> ontent-based filtering) (Ge<br /> ediminas Adomavicius and Alexander T<br /> d<br /> Tuzhilin, 2008 (Francesc<br /> 8),<br /> co<br /> Ricci, 2002), (<br /> R<br /> (Linaza et al., 2011). Ngoài ra, cũng đã c nhiều nghiê cứu xây dự hệ thống gợi ý du lịch trên nền thiết b<br /> i<br /> có<br /> ên<br /> ựng<br /> g<br /> bị<br /> di động, như tr<br /> d<br /> rình bày trong (José et al., 2<br /> g<br /> 2012), (Damia<br /> anos et al., 2014), (Gavalas et al., 2013) (<br /> s<br /> (Manuel et al. 2012).<br /> .,<br /> Ở đây c<br /> chúng tôi sẽ đ xuất xây dự hệ thống gợi ý có tích hợp các phươ pháp như xử lý ngữ cản đầu vào, kế<br /> đề<br /> ựng<br /> ơng<br /> nh<br /> ết<br /> hợp với kỹ thu phân rã ma trận (matrix factorization (Koren et al 2009) (Ngu<br /> h<br /> uật<br /> a<br /> x<br /> n)<br /> l.,<br /> uyễn Thái Ngh 2013), và x lý ngữ cản<br /> he,<br /> xử<br /> nh<br /> đầu ra.<br /> đ<br /> III. PHƯƠ<br /> ƠNG PHÁP Đ XUẤT<br /> ĐỀ<br /> y<br /> ng<br /> ngữ<br /> úng<br /> t<br /> phương pháp như minh họa trong Hình 2<br /> a<br /> 2:<br /> Để xây dựng hệ thốn gợi ý theo n cảnh, chú tôi đề xuất kết hợp các p<br /> Trước tiên xử lý thông tin n cảnh đầu vào, kế đến dùng kỹ thuật p<br /> T<br /> ngữ<br /> phân rã ma trậ để dự đoán kết quả, sau đó xử lý thôn<br /> ận<br /> n<br /> ng<br /> tin ngữ cảnh đ ra.<br /> t<br /> đầu<br /> <br /> Hình 2. Qu trình gợi ý th ngữ cảnh<br /> uy<br /> heo<br /> <br /> A. Xử lý thông tin ngữ cảnh đầu vào<br /> A<br /> g<br /> h<br /> Phương pháp này dù những điều kiện ngữ cảnh hiện tại được cung cấ trực tiếp từ người dùng (sở thích, tâm<br /> g<br /> ùng<br /> c<br /> ấp<br /> ừ<br /> g<br /> m<br /> trạng,…) hoặc từ môi trườn (thời gian, t<br /> t<br /> c<br /> ng<br /> thời tiết, vị trí hiện tại,…) s đó truy vấn tìm kiếm nh<br /> sau<br /> n,<br /> hững nguồn tà nguyên thíc<br /> ài<br /> ch<br /> hợp nhất để đư ra gợi ý. Dữ liệu đầu và là một tập b gồm: ngư dùng, đối t<br /> h<br /> ưa<br /> D<br /> ào<br /> bao<br /> ười<br /> tượng, ngữ cả và những đ<br /> ảnh<br /> đánh giá tươn<br /> ng<br /> ứng. Sau đó dù điều kiện ngữ cảnh hiệ tại của ngườ dùng cung cấp để lọc ra tập dữ liệu có liên quan đế ngữ cảnh đó<br /> ứ<br /> ùng<br /> n<br /> ện<br /> ời<br /> ó<br /> ến<br /> ó.<br /> Sau khi lọc ta có thể bỏ qu thông tin n cảnh, như vậy bài toán gợi ý đa chiề lúc này trở về dạng bài toán gợi ý ha<br /> S<br /> a<br /> ua<br /> ngữ<br /> ư<br /> n<br /> ều<br /> ở<br /> ai<br /> chiều như min họa trong H<br /> c<br /> nh<br /> Hình 3. Từ đâ ta có thể áp dụng bất kỳ phương pháp gợi ý hai ch nào để dự đoán các item<br /> ây,<br /> p<br /> ỳ<br /> p<br /> hiều<br /> ự<br /> m<br /> cho người dùn Lợi ích củ việc này là có thể tái sử dụng tất cả n<br /> c<br /> ng.<br /> ủa<br /> à<br /> ử<br /> những phương pháp gợi ý hai chiều sau khi chiều ng<br /> g<br /> u<br /> gữ<br /> cảnh được thu giảm.<br /> c<br /> u<br /> <br /> Hình 3. Sử dụ phương phá Pre-filtering<br /> ụng<br /> áp<br /> <br /> Ví dụ: Giả sử ta có tập dữ liệu ngữ cảnh gợi ý d lịch như Bả 1, gồm: n<br /> ữ<br /> du<br /> ảng<br /> người dùng (us<br /> ser), địa điểm du lịch (item<br /> m<br /> m),<br /> các thông tin n cảnh (thời gian, bạn đồ hành, thời tiết) và đánh giá của người dùng trên địa điểm du lịch tương ứng.<br /> c<br /> ngữ<br /> i<br /> ồng<br /> i<br /> a<br /> h<br /> Bả 1. Minh hoạ tập dữ liệu du lịch với ngữ cảnh<br /> ảng<br /> ạ<br /> u<br /> <br /> user<br /> 1<br /> 1<br /> 1<br /> 2<br /> 2<br /> 3<br /> 3<br /> 4<br /> <br /> item<br /> 2<br /> 5<br /> 3<br /> 2<br /> 1<br /> 5<br /> 4<br /> 3<br /> <br /> time<br /> Cuối tuần<br /> C<br /> Cuối tuần<br /> C<br /> Lễ - tết<br /> Ngà trong tuần<br /> ày<br /> Lễ - tết<br /> Lễ - tết<br /> Cuối tuần<br /> C<br /> Lễ - tết<br /> <br /> Bạn Đồng hành<br /> g<br /> Bạn b<br /> bè<br /> Một m<br /> mình<br /> Gia đì<br /> ình<br /> Bạn b<br /> bè<br /> Gia đì<br /> ình<br /> Gia đì<br /> ình<br /> Bạn b<br /> bè<br /> Gia đì<br /> ình<br /> <br /> Thời tiết<br /> Trời nắng<br /> Trời âm u<br /> Trời<br /> T trong xan<br /> nh<br /> Trời nắng<br /> Trời<br /> T trong xan<br /> nh<br /> Trời<br /> T trong xan<br /> nh<br /> Trời nắng<br /> Trời<br /> T trong xan<br /> nh<br /> <br /> ra<br /> ate<br /> 4<br /> 1<br /> 5<br /> 2<br /> 3<br /> 4<br /> 3<br /> 5<br /> <br /> 488<br /> 4<br /> <br /> MỘT TIẾP CẬ TRONG XÂY DỰNG HỆ TH<br /> ẬN<br /> Y<br /> HỐNG GỢI Ý TH<br /> HEO NGỮ CẢNH<br /> H<br /> <br /> Để gợi ý cho người dùng với các thông tin ngữ cảnh là: (dịp Lễ - tết, đi cù Gia đình, Trời trong xa<br /> d<br /> ữ<br /> ùng<br /> anh) ta sử dụn<br /> ng<br /> phương pháp x lý ngữ cảnh đầu vào để l ra (các dòn được tô đậ tập dữ liệu như trong Bảng 2.<br /> p<br /> xử<br /> h<br /> lọc<br /> ng<br /> ậm)<br /> u<br /> Bảng 2. Tập dữ liệu sau khi sử dụng Pre-filteri<br /> l<br /> ing<br /> <br /> user<br /> <br /> item<br /> <br /> rate<br /> e<br /> <br /> 1<br /> <br /> 3<br /> <br /> 5<br /> <br /> 2<br /> <br /> 1<br /> <br /> 3<br /> <br /> 3<br /> <br /> 5<br /> <br /> 4<br /> <br /> 4<br /> <br /> 3<br /> <br /> 5<br /> <br /> Như vậ sau khi xử lý xong ta sẽ được một tập dữ liệu hai ch<br /> ậy<br /> hiều. Lúc này, ta có thể áp dụng các thuậ toán trong h<br /> ật<br /> hệ<br /> thống gợi ý tru<br /> t<br /> uyền thống để dự đoán xếp hạng và gợi ý cho người dùng. Trong bài viết này, chúng tôi sử d<br /> ể<br /> p<br /> b<br /> c<br /> dụng một tron<br /> ng<br /> những phương pháp lọc cộn tác dựa trên mô hình đó là kỹ thuật p<br /> n<br /> g<br /> ng<br /> ó<br /> phân rã ma trậ (Matrix Fac<br /> ận<br /> ctorization - M trên tập d<br /> MF)<br /> dữ<br /> liệu đã được x lý ngữ cảnh đầu vào. Kỹ thuật MF có độ tin cậy ca hơn so với các kỹ thuật khác hiện nay (Koren et al<br /> xử<br /> h<br /> ỹ<br /> ó<br /> ao<br /> y<br /> l.,<br /> 2009).<br /> 2<br /> B. Kỹ thuật ph rã ma trậ (Matrix Fac<br /> B<br /> hân<br /> ận<br /> ctorization - M<br /> MF)<br /> Kỹ thuậ phân rã ma trận là việc ch một ma trậ lớn X thành hai ma trận có kích thước nhỏ hơn W v H, sao cho ta<br /> ật<br /> hia<br /> ận<br /> h<br /> c<br /> và<br /> t<br /> có thể xây dựn lại X từ hai ma trận nhỏ h này càng chính xác càng tốt, nghĩa là X ~ WHT, như minh họa tro Hình 4.<br /> c<br /> ng<br /> hơn<br /> c<br /> g<br /> ư<br /> ong<br /> <br /> Hình 4. Minh họa kỹ thuật p<br /> h<br /> phân rã ma trận<br /> K<br /> Trong đ W∈ℜ|U|×K là một ma tr mà mỗi dò u là một v<br /> đó,<br /> rận<br /> òng<br /> véctơ bao gồm K nhân tố ti<br /> m<br /> iềm ẩn (latent factors) mô tả<br /> t<br /> t<br /> |I|×K<br /> người dùng u; và H∈ℜ<br /> n<br /> ;<br /> ận<br /> éctơ bao gồm K nhân tố tiề ẩn mô tả c item i. Gọ<br /> m<br /> ềm<br /> cho<br /> ọi<br /> là một ma trậ mà mỗi dòng i là một vé<br /> wuk và hik là cá phần tử tươ ứng của ha ma trận W và H, khi đó x hạng của người dùng u trên mục tin i được dự đoá<br /> ác<br /> ơng<br /> ai<br /> xếp<br /> án<br /> bởi công thức:<br /> b<br /> :<br /> <br /> K<br /> <br /> ˆ<br /> rui = ∑ wuk hik = w.hT<br /> <br /> (1<br /> 1)<br /> <br /> k =1<br /> <br /> Như vậ vấn đề then chốt của kỹ thuật MF là làm thế nào để tìm được giá trị của hai th số W và H Hai tham s<br /> ậy,<br /> n<br /> ể<br /> á<br /> ham<br /> H.<br /> số<br /> này có được bằ cách tối ư hóa hàm mụ tiêu (object function). Trong RS, hà mục tiêu củ MF hay đượ sử dụng nh<br /> n<br /> ằng<br /> ưu<br /> ục<br /> tive<br /> àm<br /> ủa<br /> ợc<br /> hư<br /> sau:<br /> s<br /> <br /> O MF =<br /> <br /> ∑<br /> <br /> u ,i∈D train<br /> <br /> ˆ<br /> ( rui − rui ) 2 =<br /> <br /> K<br /> ⎛<br /> ⎞<br /> ∑train ⎜ rui − ∑ wuk hik ⎟<br /> t<br /> k =1<br /> ⎝<br /> ⎠<br /> u ,i∈D<br /> <br /> 2<br /> <br /> (2<br /> 2)<br /> <br /> Một tro những kỹ thuật có thể d<br /> ong<br /> dùng để tối ưu hóa hàm mục tiêu là dùng S<br /> c<br /> SGD (Stochas Gradient D<br /> stic<br /> Descent). Để tố<br /> ối<br /> ưu hóa hàm m tiêu (2), tr<br /> ư<br /> mục<br /> rước tiên ta kh tạo các gi trị ngẫu nhi cho W và H, sau đó từ bước cập n<br /> hởi<br /> iá<br /> iên<br /> à<br /> ừng<br /> nhật giá trị củ<br /> ủa<br /> chúng cho đến khi hàm mục tiêu hội tụ v giá trị nhỏ n (converge<br /> c<br /> n<br /> c<br /> về<br /> nhất<br /> ence). Để làm được điều đó ta cần phải x định là nê<br /> m<br /> ó,<br /> xác<br /> ên<br /> tăng hay nên g<br /> t<br /> giảm các giá trị của W và H qua mỗi lần cập nhật, do vậ cần phải tìm đạo hàm từn phần của ch<br /> ị<br /> ậy<br /> m<br /> ng<br /> húng:<br /> <br /> ∂<br /> ˆ<br /> O MF = −2(ruii − rui )hik<br /> ∂wuk<br /> <br /> 3)<br /> (3<br /> <br /> ∂ MF<br /> ˆ<br /> O = −2(rui − rui )wuk<br /> ∂hik<br /> <br /> (4<br /> 4)<br /> <br /> Lư Chân Thiện, N<br /> L<br /> Nguyễn Thái Ngh<br /> he<br /> <br /> 48<br /> 89<br /> <br /> Sau khi tìm đạo hàm, các phần tử c W và H sẽ được cập nhậ ngược hướn với giá trị củ đạo hàm, qu công thức:<br /> i<br /> ,<br /> của<br /> ẽ<br /> ật<br /> ng<br /> ủa<br /> ua<br /> n<br /> old<br /> wukew = wuk − β ⋅<br /> k<br /> <br /> ne<br /> old<br /> hikew = hik − β ⋅<br /> <br /> ∂<br /> old<br /> ˆ<br /> O MF = wuk + 2β ⋅ (rui − rui )hik<br /> ∂wuk<br /> <br /> ∂ MF<br /> old<br /> ˆ<br /> O = hik + 2β ⋅ (rui − rui ) wuk<br /> ∂hik<br /> <br /> 5)<br /> (5<br /> <br /> (6<br /> 6)<br /> <br /> Trong đ β là tốc độ học (learning rate, 0 < β
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2