luận văn: nghiên cứu hệ thống khuyến nghị người dùng dựa vào lọc cộng tác

57 1.5K 6
luận văn: nghiên cứu hệ thống khuyến nghị người dùng dựa vào lọc cộng tác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

luận văn: nghiên cứu hệ thống khuyến nghị người dùng dựa vào lọc cộng tác trường đại học quốc gia hà nộiluận văn: nghiên cứu hệ thống khuyến nghị người dùng dựa vào lọc cộng tác trường đại học quốc gia hà nộiluận văn: nghiên cứu hệ thống khuyến nghị người dùng dựa vào lọc cộng tác trường đại học quốc gia hà nội

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ   PHẠM THỊ MY  NGHIÊN CỨU HỆ THỐNG KHUYẾN NGHỊ NGƯỜI DÙNG DỰA VÀO LỌC CỘNG TÁC LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN    HÀ NỘI - 2014 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ    PHẠM THỊ MY    NGHIÊN CỨU HỆ THỐNG KHUYẾN NGHỊ NGƯỜI DÙNG DỰA VÀO LỌC CỘNG TÁC Ngành: Côngnghệthôngtin Chuyênngành:Kỹthuậtphầnmềm Mãsố: 60480103    LUẬNVĂNTHẠCSĨCÔNGNGHỆTHÔNGTIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN VĂN VINH        HÀ NỘI – 2014 1    Lời cam đoan Tôixincamđoanluậnvănnàylà côngtrìnhnghiêncứuhoàntoàncủabảnthân. Trongtoànbộnộidungcủaluậnvăn,nhữngđiềuđượctrìnhbàyhoặclàcủacánhântôi hoặclàđượctổnghợptừnhiềunguồntàiliệu.Tấtcảcáctàiliệuthamkhảođềucóxuất xứrõràngvàđượctríchdẫnhợppháp. Tôixinchịuhoàntoàntráchnhiệmvàchịumọihìnhthứckỷluậttheoquyđịnhcho lờicamđoancủamình.  NamĐịnh,ngày28tháng09năm2014 Ngườicamđoan   Phạm Thị My  2   Lời cảm ơn  Đầutiên,tôixinchânthànhcảmơnthầygiáoNguyễnVănVinhlàcánbộhướng dẫnkhoahọc,thầyđãtậntìnhgiúpđỡvàhướngdẫntôivềcảchuyênmôn,nghiêncứu vàđịnhhướngpháttriểntrongsuốtquátrìnhlàmluậnvăn.  Đểhoànthànhluậnvăntốtnghiệplàcảmộtquátrìnhđầykhókhănvàthửthách tronghọctậpvànghiêncứutạitrườngĐạihọcCôngNghệ.Vàđểcóđượcnhữngthành quảnhưngàyhômnay,ngoàinhữngnỗlựccủabảnthân,khôngthểkhôngnhắctớilà sựđộngviên,giúpđỡcủacácThầy,Côgiáo,bạnbè,đồngnghiệpvàngườithântrong giađình.  TôicũngxingửilờicámơntớicácThầy,CôgiáocủaKhoaCôngNghệThông Tin,vìđãtậntìnhgiảngdạynhữngkiếnthứcbổích,hiệnđạivềlĩnhvựcKỹthuậtphần mềmtôihọctậpvàtạomọiđiềukiệnchotôihọctậpnghiêncứuvàhoànthànhluậnvăn này.  Vớigiađình,tôixinbàytỏlòngbiếtơnsâusắcvìgiađìnhđãluônởbênvàủng hộtôitrênconđườnghọctậpvànghiêncứu.  Cuốicùng,tôicũngxingửilờicàmơnđếnđồngnghiệpvàbạnbètôilànhững ngườiđãđộngviên,tạomọiđiềukiệnchotôilaođộngvàhọctậptrongsuốtthờigian qua.  NamĐịnh,ngày28tháng09năm2014 Học viên  Phạm Thị My 3   Bảng các ký hiệu và chữ viết tắt STT Ký hiệu Diễn giải Tiếng Việt 1 U User Ngườidùng 2 I Item Sảnphẩm 3 R Rating Đánhgiá 4 IR InformationRetrieval Thuthậpthôngtin 5 IF InformationFiltering Lọcthôngtin 6 RS RecommenderSystems Hệthốngkhuyếnnghị 7 CF CollaborativeFiltering Lọccộngtác 8 KNN K-nearestneighbor K-hàngxómgầnnhất 9 RMSE RootMeanSquareError Hàmsaisốbìnhphươngtrungbình 10 MAE Meanabsoluteerror Saisốtuyệtđốitrungbình 11 MF MatrixFactorization Matrậnthừasố 12 GD Gradientdescent Giảmđộlệch 13 SGD Stochasticgradientdescent Giảmđộlệchngẫunhiên   4   Danh mục bảng và biểu đồ Bảng2.1:Vídụ1vềngườidùngđánhgiásảnphẩm 17 Bảng2.2:Vídụ2vềngườidùngđánhgiásảnphẩm 20 Bảng2.3:Vídụ3vềngườidùngđánhgiásảnphẩm 23 Bảng2.4:Matrậnđánhgiádàyđặc 32 Bảng2.5:Matrậnđánhgiáthưathớt 32 Bảng2.6:SosánhgiữaGDvàSGD 43 Bảng3.1:ĐịnhdạngcácbộdữliệuhuấnluyệnvàkiểmtracủaMovielens 48 Bảng3.2:GiátrịRMSEvàRMSE tb thựcnghiệmtrêntậpdữliệuMovielens 50 Danh mục hình ảnh Hình1.1:Môhìnhhệthốnglọcthôngtin 9 Hình1.2:Mộtvídụvềmôhìnhkhuyếnnghịsảnphẩm 10 Hình1.3:Môhìnhkỹthuậtlọcdựatheonộidung 12 Hình2.1:MôhìnhđồthịtínhkhoảngcáchManhattan 18 Hình2.2:MôhìnhđồthịtínhkhoảngcáchEuclidean 19 Hình2.3:MôhìnhđồthịtínhhệsốtươngquanPearson 22 Hình2.4:MôhìnhđồthịtínhhệsốtươngtựCosine 24 Hình2.5:Phươngpháptiếpcậnvùnglâncận 30 Hình2.6:Địnhhướngngườidùngđốivớiphimảnh 31 Hình2.7:Phươngphápmatrậnthừasố 35 Hình2.8:MôhìnhphươngphápGradientdescent 36 Hình2.9:ĐồthịbiểuthịthuậttoánSGDthửnghiệmtrêntậpdữliệucủaNetflix 42 5   MỤC LỤC Lời cam đoan 1 Lời cảm ơn 2 Bảng các ký hiệu và chữ viết tắt 3 Danh mục bảng và biểu đồ 4 Danh mục hình ảnh 4 Mở đầu 7 CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀHỆ THỐNG KHUYẾN NGHỊ 9 1.1. Khái niệm chung: 9 1.1.1. Lọc thông tin (Information Filtering _IF) 9 1.1.2. Hệ thống khuyến nghị (Recommender System) 10 1.1.3. Giới thiệu bài toán về hệ thống khuyến nghị: 11 1.2. Các kỹ thuật lọc cho hệ thống khuyến nghị [4]  11 1.2.1. Kỹ thuật lọc dựa theo nội dung: 12 1.2.2. Kỹ thuật lọc cộng tác (Collaborative Filtering) 12 1.2.3, Kỹ thuật Hybrid 13 1.3. Các phương pháp lọc cộng tác 13 1.3.1, Lọc cộng tác dựa vào bộ nhớ 14 1.3.2, Lọc cộng tác dựa vào mô hình (Model-Based Collaborative Filtering) 14 CHƯƠNG 2: KỸ THUẬT LỌC CỘNG TÁC 16 2.1. Giới thiệu bài toán lọc cộng tác 16 2.2. Các phương pháp tính độ tương tự giữa các người dùng 16 2.2.1. Khoảng cách Manhattan 16 2.2.2. Khoảng cách Euclidean. 18 2.2.3. Hệ số tương quan Pearson. 20 2.2.4. Hệ số tương tự Cosine. 22 2.3. Phương pháp cải tiến K-hàng xóm gần nhất (k-nearest neighbor) 24 2.3.1 Thuật toán KNN dựa trên người dùng. 25 2.3.2 Thuật toán KNN dựa trên sản phẩm: 27 2.4. Mô hình nhân tố ẩn. 29 2.4.1 Phương pháp tiếp cận vùng lân cận (the neighborhood approach) 29 2.4.2 Mô hình nhân tố ẩn (latent factor models) [3]  30 2.4.2.1. Cơ sở lý thuyết 30 2.4.2.2. Bài toán: 31 2.4.3. Phương pháp ma trận thừa số (Matrix Factorization Methods) [6]  32 2.4.4. Thuật toán gradient descent ngẫu nhiên. 35 2.4.4.1. Thuật toán Gradient descent (GD) 35 2.4.4.2.Thuật toán gradient descent ngẫu nhiên 37 2.4.4.3. Thuật toán SGD dùng cho phân tích ma trận (ma trận thừa số) 41 6   2.4.4.4. So sánh giữa thuật toán GD và SGD 43 2.5. Tiêu chuẩn đánh giá 44 2.5.1.Mean absolute error (MAE) 44 2.5.2. Root mean square error (RMSE) 44 CHƯƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁVỚI DỮ LIỆU PHIM ẢNH 46 3.1. Dữ liệu thực nghiệm. 46 3.1.1. Tập dữ liệu thực nghiệm. 46 3.1.2. Thông tin chi tiết về định dạng của bộ dữ liệu của Movielens [15]  47 3.2. Phương pháp thực nghiệm 49 3.2.1. Môi trường thực nghiệm 49 3.2.2. Phương pháp tiến hành thực nghiệm 49 3.3. So sánh và đánh giá kết quả thực nghiệm 50 3.3.1. Kết quả thực nghiệm 50 3.3.2. So sánh và đánh giá 52 3.3.2.1. Các phương pháp cơ sở 52 3.3.2.2. Thuật toán SGD 52 KẾT LUẬN 54 TÀI LIỆU THAM KHẢO 55           7   Mở đầu  Tươngtáccánhânlàhoạtđộng/sựviệcdiễnratrêntoànthếgiới,thậmchícótừ hàngtrămnămtrướcchođếnngàynay.Nhữngnăm1990,tươngtáccánhânítnhiều cũngđãcómặt.Theothườnglệ,khiđivàomộtcửahàngsáchquenthuộc,chủhàngsẽ chàođónnhư:“Cóbáomớingàyhômnayđấy!”,chủhàngbiếtrằngkháchhàngcủa mìnhmuốn điềugìkhiđếnđây.Hoặcchủhàngcóthểgiới thiệucho mộtvàiquyển sáchmàkháchhàngcủamìnhcóthểquantâmdựatrênnhữngsởthíchcủakhách.Hoặc khiđivàoquánnướcquen,ngườiphụcvụsẽhỏi:“Nhưthườnglệchứ?”  Khoảng30nămvềtrước,khibạnmuốnmuachiếctiviởcửahàngđiệnmáythì cóvàisựlựachọnphổbiếnchobạn:PanasonicvàSamsunghayLG.Nhữngnămsau đó,bạncónhiềusựlựachọnphongphúhơn,bạnchọnhãngSamsungthìtrongđócòn nhiềulựachọnnhư:LEDhayLCD,baonhiêuinch?…  Hàngngàycóhàngtrămbàihátđượcthuâm,hàngtrămđầusáchđượcxuấtbản trênthếgiới,trongkhiđócáccửahàngchỉcógiớihạncácđầusáchhoặccácbàihát, cácbộphim…Từđó,cácdịchvụtrựctuyếnđượcrađờivàđápứngnhucầungàycàng caocủangườidùng.  Chođếnngàynay,sựtươngtáccánhânvẫnluôntồntại,thậmchíbạncóhàng triệusự lựachọn.Mỗigiâycácphương tiệntruyềnthôngđược thêmvàomạng.Mỗi phút100tậptinmớicósẵntrênusenet.24/24giờvideođượctảilênYouTube.Mỗigiờ 180cuốnsáchmớiđượcxuấtbản.Mỗingàycàngcóthêmnhiềulựachọncácsảnphẩm đểmuatrongthếgiớithực.  Bạnmuốnmuamộtsốbàinhạc?iTunescókhoảng11triệubàihátđểlựachọn vàhọđãbánđược16tỷbàihátvàotháng10năm2011.Nếubạnmuốnnhiềuhơnsự lựachọnthìcóthểđiđếnSpotifyvới15triệubàihát.Bạnmuốnmuamộtcuốnsách, Amazoncungcấphơn2triệucuốnsáchđểbạnlựachọn.  Trongcuộcsốngcủachúngtangàynay,vớisựpháttriểnkhôngngừngcủacông nghệthôngtin,nguồnthôngtinquáphongphúlàmchobạnkhôngcóđủthờigianđể xemxétlựachọntấtcảcáccuốnsách,phim,tạpchíhaybàihát…bạnkhôngbiếtmình nênxemphimgì,đọccuốnsáchnàophùhợpvớisởthích,nhucầucủabảnthân.  Vấnđềcấpthiếtđặtralàcầnmộthệthốnghỗtrợngườidùngchọnlựanhững sản phẩm phù hợp với nhu cầu của người dùng, từ đó hệ thống khuyến nghị được 8   nghiêncứuvàpháttriểnkhôngngừngnhằmđạthiệuquảnhấttrongviệctươngtácvới ngườidùng.Hệthốngkhuyếnnghị(RecommenderSystems-RS)làgiảipháphiệuquả nhấtgiảiquyếtvấnđềtrên.  Chính vì vậy trong luận văn này, chúng tôi xin được trình bày về hệ thống khuyếnnghị.Trongphạmviluậnvăn,chúngtôitậptrungnghiêncứuvềkỹthuậtlọc cộngtácvàphântíchcácphươngphápcơbảnđểtìmmộtngườihoặcmộtnhómngười gầnnhấtvớingườidùnghiệntạicầnkhuyếnnghị.Đểgiảmthiểusaisốtrongdựđoán chúngtôitrìnhbàynghiêncứucủamìnhvềphươngphápmatrậnthừasốcụthểhơnlà thuậttoángradientdescentngẫunhiên.Nộidungchínhcủaluậnvănnàyđượcchialàm 3chương: Chương 1:Giớithiệutổngquanvềhệthốngkhuyếnnghị Chương 2:Kỹthuậtlọccộngtác Chương 3:Thựcnghiệmvàđánhgiávớidữliệuphimảnh  Trongchương1,chúngtôiđitìmhiểuchungvềhệthốngkhuyếnnghị,cáckỹ thuậtlọcthôngtintronghệthốngkhuyếnnghị:lọcdựavàonộidung,lọccộngtácvàkỹ thuậtkếthợpHybrid,cácphươngpháplọccộngtácnhư:Lọcdựavàobộnhớvàlọc dựavàomôhình.Trongchương2,chúngtôitrìnhbàychitiếthơnvềkỹthuậtlọccộng tác,cácphươngpháptínhđộtươngtựgiữacácngườidùng,phươngphápmatrậnthừa số,thuậttoángradientdescentngẫunhiênvàcáctiêuchuẩnđánhgiádựđoán.Chương 3,chúngtôitiếnhànhthựcnghiệmtrênbộdữliệucủaMovielensvới100.000đánhgiá, sauđódựavàokếtquảthựcnghiệmđểđánhgiá,phântíchvàsosánhtínhhiệuquảcủa từngphươngphápvàthuậttoánđãnêutrongchương2. [...]... thời mô hình huấn luyện và mô hình dự đoán. Ngược lại, lọc dựa vào mô hình xây dựng  mô hình huấn luyện và mô hình dự đoán độc lập nhau. So với lọc cộng tác dựa vào mô  hình, lọc cộng tác dựa vào bộ nhớ được áp dụng rộng rãi hơn do tính hiệu quả, đơn giản  và có độ chính xác khá cao.  1.3.1, Lọc cộng tác dựa vào bộ nhớ   Phương pháp lọc cộng tác dựa vào bộ nhớ  [11] thường sử dụng toàn bộ dữ liệu đã  có của người dùng để dự đoán đánh giá của người đó về một sản phẩm mới. Là phương ... các khuyến nghị dựa trên ảnh hưởng của nhiều người khác nhau, các cộng tác của nhiều  người này  sẽ  trở  thành  khuyến nghị.   Khác  so  với  kỹ  thuật  lọc cộng tác dựa trên  nội  dụng, hệ thống cộng tác dự đoán mức độ phù hợp r(u,p) của một sản phẩm p với người dùng u dựa trên mức độ phù hợp r(ui, p) giữa người dùng ui và p, trong đó ui là người có  cùng sở thích với u. Ví dụ, để gợi ý một bộ phim cho người dùng u, đầu tiên hệ thống   13    cộng tác tìm những người dùng khác có cùng sở thích phim ảnh với u. Sau đó, những bộ ... hàng và tiếp thị có một truyền thống lâu đời. Với những tiến bộ trong công nghệ thông  tin,  nó  đã  phát  triển  và  ngày  càng  tinh  vi  mang  lại  hiệu  quả  cho  các  hệ thống trực  tuyến. Lọc cộng tác,   hệ thống khuyến nghị,   hệ thống trợ  giúp  cá  nhân,  lọc xã  hội,  hệ thống khai thác dữ liệu xã hội, và các hệ thống thích nghi người dùng có thể được gọi  chung là hệ thống lọc thông tin (IF ). Ngày nay, hệ thống lọc thông tin ở khắp mọi nơi, ... THUẬT LỌC CỘNG TÁC   Phương  pháp  khuyến nghị tôi  đang  xem  xét  trong  chương  này  được  gọi  là  lọc cộng tác.   Nó  được  gọi  là  cộng tác bởi  vì  nó  đưa  ra  các  khuyến nghị dựa trên  những  người dùng khác trong thực tế, mọi người cộng tác để đưa ra khuyến nghị.  Nguyên lý  hoạt động của hệ thống khuyến nghị là: giả sử để giới thiệu một cuốn sách cho bạn. Tôi  tìm  kiếm  những  người ... của  người dùng u  cho  một sản phẩm p’ dựa trên các người dùng “láng giềng” với người dùng u. “Láng giềng”  với người dùng u là người dùng khác mà có quan điểm về các sản phẩm tương tự như  người dùng u. Ví dụ: để gợi ý một sản phẩm cho người dùng u, đầu tiên hệ thống cộng tác tìm  những  người dùng khác  có  cùng  sở  thích  với  người dùng u  được  gọi  là  “láng  giềng” với người dùng u. Sau đó, những sản phẩm được các “láng giềng” đánh giá cao ... đấy…  Dẫn  đến,  vấn  đề  khuyến nghị dựa vào một  người dùng gần  nhất  cho  người dùng hiện tại gặp khó khăn. Vì thế, giải pháp đặt ra là nên dựa vào nhiều hơn 1  người dùng tương tự để tiến hành khuyến nghị cho người dùng hiện tại. Tuy nhiên, bốn    25    phương pháp tính độ tương tự được trình bày ở trên chỉ dựa vào người dùng gần nhất để  khuyến nghị cho người dùng hiện tại nên trong phần này chúng tôi sẽ trình bày nghiên ... đề trên là: kỹ thuật  lọc cộng tác (Collaborative Filtering)     Lọc cộng tác cho  hệ thống khuyến nghị được  tiếp  cận  theo  hai  phương  pháp  chính:  Lọc cộng tác dựa vào bộ  nhớ  (Memory-Based  Collaborative  Filtering)  và  lọc cộng tác dựa vào mô hình (Model-Based Collaborative Filtering) . Điểm khác biệt quan  trọng trong hai phương pháp tiếp cận là: Lọc dựa vào bộ nhớ tiến hành xây dựng đồng ... hiện theo hai phương pháp chính: Lọc dựa vào người dùng (User-Based Collaborative  Filtering) và lọc dựa vào sản phẩm (Item-Based Collaborative Filtering) . Hiệu quả của  các phương pháp lọc dựa vào bộ nhớ phụ thuộc vào độ đo tương tự giữa các cặp người dùng hoặc sản phẩm. Phương pháp lọc cộng tác dựa vào bộ nhớ, tôi sẽ trình bày cụ thể  hơn trong chương 2.  1.3.2, Lọc cộng tác dựa vào mô hình (Model-Based Collaborative Filtering)   Phương pháp tiếp cận dựa trên mô hình [17] không sử dụng tất cả dữ liệu đã có để ... này được xây dựng dựa trên những thông tin được người dùng cung cấp trực tiếp (khi  trả lời khảo sát) hoặc gián tiếp (do khai phá thông tin từ các giao dịch của người dùng) .    Hình 1.3: Mô hình kỹ thuật lọc dựa theo nội dung 1.2.2 Kỹ thuật lọc cộng tác  (Collaborative Filtering)   Kỹ thuật lọc cộng tác (Collaborative Filtering)  dựa trên nguyên tắc hoạt động là  các khuyến nghị dựa trên ảnh hưởng của nhiều người khác nhau, các cộng tác của nhiều ... Khai thác những khía cạnh cạnh liên quan đến nội dung thông tin sản phẩm hoặc  người dùng đã từng sử dụng hay truy nhập trong quá khứ để khuyến nghị.  Đây là  kỹ thuật lọc dựa theo nội dung (Content-Based Filtering)   Lựa  chọn  dựa trên  ý  kiến  hay  lời  khuyên  của  những  người dùng khác  về  các  Item. Hệ thống khuyến nghị áp dụng các thuật toán tận dụng các gợi ý được cung  cấp  bởi  một  cộng đồng  người dùng tương  tự  sau  đó  cung  cấp  cho  người dùng . Trongchương1,chúngtôiđitìmhiểuchungvề hệ thống khuyến nghị, cáckỹ thuật lọc thôngtintrong hệ thống khuyến nghị: lọc dựa vào nộidung, lọc cộng tác vàkỹ thuậtkếthợpHybrid,cácphươngpháp lọc cộng tác như: Lọc dựa vào bộnhớvà lọc dựa vào môhình.Trongchương2,chúngtôitrìnhbàychitiếthơnvềkỹthuật lọc cộng tác, cácphươngpháptínhđộtươngtựgiữacác người dùng, phươngphápmatrậnthừa số,thuậttoángradientdescentngẫunhiênvàcáctiêuchuẩnđánhgiádựđoán.Chương 3,chúngtôitiếnhànhthựcnghiệmtrênbộdữliệucủaMovielensvới100.000đánhgiá, sauđó dựa vào kếtquảthựcnghiệmđểđánhgiá,phântíchvàsosánhtínhhiệuquảcủa từngphươngphápvàthuậttoánđãnêutrongchương2. . quả cho các hệ thống trực tuyến. Lọc cộng tác, hệ thống khuyến nghị, hệ thống trợgiúpcánhân, lọc xãhội, hệ thống khaithácdữliệuxãhội,vàcác hệ thống thíchnghi người dùng cóthểđượcgọi chunglà hệ thống lọc thôngtin(IF).Ngàynay, hệ thống lọc thôngtinởkhắpmọinơi, trongmọingànhcôngnghiệpvàdịchvụ,từtiếpthịchosứckhỏe,dulịch,giáodục,giải trí,. phương pháp lọc cộng tác 13 1.3.1, Lọc cộng tác dựa vào bộ nhớ 14 1.3.2, Lọc cộng tác dựa vào mô hình (Model-Based Collaborative Filtering) 14 CHƯƠNG 2: KỸ THUẬT LỌC CỘNG TÁC 16 2.1.

Ngày đăng: 10/05/2015, 16:31

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan