Lọc cộng tác bằng phương pháp đồng huấn luyện

24 193 0
Lọc cộng tác bằng phương pháp đồng huấn luyện

Đ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

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG PHẠM THỊ HIÊN LỌC CỘNG TÁC BẰNG PHƯƠNG PHÁP ĐỒNG HUẤN LUYỆN Chuyên ngành: Truyền dữ liệu và mạng máy tính Mã số: 60.48.15 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS TỪ MINH PHƯƠNG HÀ NỘI - 2012 1 MỞ ĐẦU Hiện nay, hệ thống tư vấn (recomender system) đã trở thành một trong những công cụ hữu dụng và phổ biến nhất trong các hệ thống thương mại điện tử. Ví dụ như Amazon.com, chacha.vn, Yahoo! news, ebay.com,…v.v. Đã có rất nhiều nghiên cứu về các phương pháp sử dụng trong hệ tư vấn lựa chọn. Và một trong những bước phát triển mới trong lĩnh vực nghiên cứu này là sự ra đời của kỹ thuật lọc cộng tác (collaborative filtering) vào giữa những năm 1990s. Lọc cộng tácphương pháp phổ biến cho việc xây dựng các hệ thống tư vấn. Các thuật toán lọc cộng tác hiện tại thường dựa trên thông tin mua bán hoặclịch sử đánh giá của người dùng để đưa ra các dự đoán dựa trên độ tương đồng về sở thích giữa người dùng với nhau. Mặc dù, những thuật toán này đã được áp dụng trong một số hệ thống tư vấn lựa chọn và đạt được một số thành tựu nhất định, nhưng chúng vẫn còn nhiều hạn chế cần phải giải quyết như vấn đề người dùng mới, vấn đề thưa thớt dữ liệu đánh giá, vấn đề cold-start… Trong nghiên cứu này, em sẽ trình bày một phương pháp mới, đó là, phương pháp lọc cộng tác dựa bằng phương pháp đồng huấn luyện. Phương pháp mới này kết hợp cách tiếp cận theo người dùng và cách tiếp cận theo sản phẩm để huấn luyện bộ dữ liệu đánh giá. Vì kết hợp được 2 khung nhìn nên phương pháp này có thể phát huy những ưu điểm của lọc cộng tác theo người dùng và lọc cộng tác theo sản phẩm và có khả năng khắc phục được các hạn chế hiện thời của các cách tiếp cận này thuần túy này. Nội dung của luận văn được bố cục thành 3 chương như sau: 2  Chương 1 – LỌC CỘNG TÁC Để thấy được động lực cho việc nghiên cứu một phương pháp mới, chương 1 sẽ trình bày tổng quan về lọc cộng tác, các phương pháp lọc cộng tác và các hạn chế của những phương pháp lọc cộng tác này.  Chương 2 – LỌC CỘNG TÁC BẰNG PHƯƠNG PHÁP ĐỒNG HUẤN LUYỆN Chương 2 sẽ trình bày một phương pháp mới được đề xuất - phương pháp lọc cộng tác bằng phương pháp đồng huấn luyện. Xuất phát từ các nghiên cứu về phương pháp đồng huấn luyện để hiểu được những lợi ích có được từ phương pháp này, từ đó nghiên cứu quá trình thực hiện khi áp dụng phương pháp này trong lọc cộng tác.  Chương 3 – THỬ NGHIỆM VÀ ĐÁNH GIÁ Chương 3 sẽ được dành cho việc thực hiện kiểm thử trên bộ dữ liệu thử nghiệm. Từ kết quả thử nghiện thu được sẽ tiến hành đánh giá phương pháp, đồng thời so sánh với kết quả thu được từ các phương pháp trước. Chương 1 – LỌC CỘNG TÁC 1.1 Vấn đề lọc cộng tác 1.2.1 Mô tả bài toán lọc cộng tác Lọc cộng tác là một trong các cách tiếp cận thành công để xây dựng các hệ thống tư vấn lựa chọn. Khác với lọc theo nội dung, lọc cộng tác sẽ dựa trên những đánh giá của nhóm người dùng hợp “gu” với người dùng c để ước lượng giá trị có ích 3 ),( scu của sản phẩm s với người dùng c . Trong kịch bản điển hình của lọc cộng tác, thì có một danh sách m người dùng {   ,  ,…,  } và một danh sách n sản phẩm và {   ,  ,…,  } mỗi người dùng   có một tập các sản phẩm    mà người dùng đó đã đánh giá hoặc các sở thích của họ đã được thu thập qua các hành vi. 1.2 Các phương pháp lọc cộng tác Các kỹ thuật sử dụng cho tư vấn cộng tác được phân thành 3 loại là lọc theo bộ nhớ và lọc theo mô hình và lọc kết hợp. 1.3 Hạn chế của các phương pháp lọc cộng tác  Vấn đề thưa thớt dữ liệu đánh giá: Trong thực tế, nhiều hệ tư vấn lựa chọn thương mại thường đánh giá một tập sản phẩm rất lớn. Và để thực hiện các tư vấn chính xác, hệ thống đầu tiên phải học những sở thích của người dùng từ những đánh giá mà người dùng đã thực hiện. Tuy nhiên, trong bất kỳ hệ tư vấn nào, số các đánh giá đạt được thường là rất nhỏ so với số các đánh giá cần được dự đoán. Do đó, ma trận sản phẩm người dùng sử dụng cho lọc cộng tác sẽ vô cùng thưa thớt và hiệu năng dự đoán cũng như tư vấn của các hệ thống lọc cộng tác là một thách thức lớn. Vấn đề thưa thớt dữ liệu xuất hiện trong một vài tình huống, điển hình là các tình huống sau: Vấn đề “cold – start”: Vấn đề này xảy ra khi một người dùng mới hoặc một sản phẩm mới được nạp vào hệ thống; 4 do không có đủ thông tin nên sẽ rất khó khăn để xác định những người dùng (hoặc sản phẩm) tương đồng với người dùng mới (hoặc sản phẩm mới) này. Những sản phẩm mới sẽ không được tư vấn cho người dùng cho đến khi có một số đánh giá của người dùng cho sản phẩm mới này. Và những người dùng mới thì gần như không thể nhận được các tư vấn tốt do thiếu các đánh giá cho sản phẩm hoặc thiếu thông tin về lịch sử mua bán. Vấn đề giảm “Coverage”: “Coverage” được định nghĩa là phần trăm sản phẩm mà thuật toán có thể đưa ra để tư vấn cho người dùng. Vấn đề “Coverage” bị giảm xảy ra khi số đánh giá của người dùng được xem là nhỏ hơn rất nhiều so với số lượng sản phẩm có trong hệ thống, và hệ tư vấn có thể không có khả năng để tạo ra các tư vấn. Vấn đề “Neighbor transitivity”: Được xem là vấn đề với cơ sở dữ liệu thưa thớt, một người dùng có thể không được xác định là tương đồng với một nhóm người dùng nếu chưa có bất kỳ đánh giá nào cho những sản phẩm giống với nhóm người dùng đã đánh giá. Điều này sẽ làm giảm tính hiệu quả của những hệ tư vấn mà chỉ dựa trên việc so sánh giữa những người dùng để đưa ra các dự đoán.  Khả năng mở rộng: Khi số lượng người dùng và sản phẩm tăng lên nhanh chóng, thì các thuật toán lọc cộng tác truyền thống sẽ gặp phải một loạt các vấn đề về khả năng 5 mở rộng, với yêu cầu tính toán vượt xa so với mức có thể đáp ứng được.  Tính đồng nghĩa: Tính đồng nghĩa ở đây muốn nói đến xu hướng một số sản phẩm giống nhau hoặc tương tự nhau có các tên khác nhau hoặc các bản ghi khác nhau. Hầu hết các hệ thống tư vấn không thể phát hiện ra sự liên kết tiềm ẩn này; do đó đã xem các sản phẩm này là khác nhau. Ví dụ, 2 sản phẩm khác nhau “Children movie” và “Children Film”, thực chất chúng là một sản phẩm nhưng các hệ thống lọc cộng tác dựa trên bộ nhớ không thấy được điều này để tính toán độ tương tự cho chúng. 1.4 Mục tiêu nghiên cứu đề tài Để hạn chế những nhược điểm nêu trên, thì yêu cầu phải có một thuật toán học có thể tận dụng được lợi thế của dữ liệu chưa có nhãn và có khả năng mở rộng tập dữ liệu có nhãn sử dụng tập dữ liệu chưa có nhãn. Đây cũng là nội dung chính trong đề tài nghiên cứu của em. Trong các chương tiếp theo của để tài, em sẽ trình bày một phương pháp có thể đáp ứng được yêu cầu này, trong đó vấn đề lọc cộng tác như một vấn đề đồng huấn luyện. Phương pháp này được thực hiện dựa trên 2 khung nhìn riêng biệt: khung nhìn theo sản phầm và khung nhìn theo người dùng. Bằng cách này, phương pháp có thể tận dụng được những ưu điểm của các cách tiếp cận theo người dùng và theo sản phẩm; bên cạnh đó mỗi khung nhìn có thể khắc phục được nhược điểm của khung còn lại. 6 Chương 2 – LỌC CỘNG TÁC BẰNG PHƯƠNG PHÁP ĐỒNG HUẤN LUYỆN Học nửa giám sát đã thu hút nhiều sự chú ý từ các nhà nghiên cứu bởi một số lượng lớn các ví dụ không có nhãn có thể làm tăng hiệu suất cho thuật toán học khi chỉ có một số ví dụ nhỏ hơn là có nhãn. Blum và Mitchell [16] là những người đầu tiên xem xét việc thiết định bài toán mà tập đặc trưng của mỗi ví dụ có thể được chia thành 2 khung nhìn khác biệt. Xem xét bài toán lọc cộng theo cách tiếp cận đồng huấn luyện, thì 2 khung nhìn được xác định ở đây là khung nhìn theo người dùng và khung nhìn theo sản phẩm. Tập các nhãn được xác định có thể là những giá trị rõ ràng (các giá trị nằm trong đoạn [1,5]). Và cặp người dùng – sản phẩm mà người dùng chưa đánh giá sản phẩm là những mẫu huấn luyện cần được xác định nhãn. Trong phần tiếp theo của chương sau khi mô tả thuật toán đồng huấn luyện, em sẽ trình bày các cách tiếp cận lọc cộng tác bằng đồng huấn luyện bao gồm: Lọc cộng tác bằng phương pháp đồng huấn luyện theo người dùng, lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm và phương pháp kết hợp 2 phương pháp trên trên. 2.1 Phương pháp đồng huấn luyện (Co – Training) 2.1.1 Mô tả thuật toán đồng huấn luyện Thuật toán đồng huấn luyện áp dụng khi tập dữ liệu có sự phân chia đặc trưng tự nhiên. Quá trình đồng huấn luyện được mô tả hình thức như sau: Quá trình đồng huấn luyện được thực hiện như sau [1]. Cho không gian mẫu  =   ×   trong đó,  1 ,  2 7 tương ứng là 2 khung nhìn khác nhau của một mẫu. Mỗi mẫu x đã cho là một cặp ( 1 ,  2 ). Giả sử rằng mỗi khung nhìn là đầy đủ để phân loại đúng. Cho D là một phân phối trên , và cho C 1 , C 2 lần lượt là các lớp khái niệm được định nghĩa tương ứng trên  1 ,  2 . Giả sử rằng tất cả các nhãn của các mẫu có xác suất khác 0 dưới  là phù hợp với hàm mục đích  1 C 1 và cũng phù hợp với hàm mục đích  2 C 2 . Hay nói cách khác, nếu  biểu thị cho khái niệm mục đích kết hợp trên toàn bộ mẫu, thì với bất kỳ mẫu  = ( 1 ,  2 ) được quan sát với nhãn ℓ, chúng ta có f(x) = f(  ) = f(x  ) = ℓ. Trong thực tế, thì điều này có nghĩa là  sẽ gán xác suất bằng 0 cho bất kỳ mẫu nào mà f(x 1 )f(x 2 ). 2.2 Quan sát vấn đề lọc cộng tác theo người dùng Như đã trình bày trong chương 1, phương pháp lọc cộng tác theo người dùng tính toán mức độ tương tự giữa người dùng i  U trên tập những người dùng S i U có tối thiểu  đánh giá chung cho các sản phẩm.     jii PPUjS : (2.4)                         otherwise rrrr rrrr Sjif u jiji ji PPx jjx PPx iix PPx jjxiix i ij , 0 22   (2.5) Các nhãn phân loại chắc chắn chỉ được dự đoán từ những người dùng j  S i theo công thức (2.4). 8         i i Kj ij ij Kj jjx iix u urr rr (2.6)   max:  ijii uSjK (2.7) 2.3 Quan sát vấn đề lọc cộng tác theo sản phẩm Tương tự như đối với sản phẩm, phương pháp lọc cộng tác theo sản phẩm mức độ tương tự giữa sản phẩm x  P trên các cột sản phẩm C y giao nhau tối thiểu  người dùng.     yxx UUPyC : (2.8)                         otherwise rrrr rrrr Cyif p yxyx yx UUi yix UUi xix UUi yiyxix x xy , 0 22   (2.9) Các nhãn phân loại chắc chắn chỉ được dự đoán từ những người dùng y  C x theo công thức (2.8).      x x Ky xy Ky iyxy ix p rp r || (2.10)   max:  xyxx pCyK (2.11) 9 2.4 Kết hợp giữa các kiểu quan sát 2.4.1 Lọc cộng tác bằng phương pháp đồng huấn luyện theo người dùng Phương pháp lọc cộng tác bằng đồng huấn luyện theo người dùng được thực hiện thông qua các vòng lặp t. Tại bước khởi tạo t=0, ma trận dự đoán )( )0()0( ij rR  được lấy bằng chính ma trận đánh giá ban đầu R=(r ij ). Quá trình huấn luyện được thực hiện như trong bảng 2.3 Bảng 2.3 Thuật toán lọc cộng tác bằng phương pháp đồng huấn luyện theo người dùng Đầu vào: Khởi tạo ma trận đánh giá )()( )0(0 ijij rrR  Đầu ra : Ma trận dự đoán   )()( t ij t rR  . Các bước tiến hành: 1. Khởi tạo số bước lặp ban đầu: t0; 2. Bước lặp: Repeat 2.1. Huấn luyện theo người dùng: a) Tìm )()( , t ij t i uS theo công thức (2.4), (2.5). b) Tìm )(t i K theo công thức (2.7). c) Dự đoán )(t ix r theo công thức (2.6). 2.2. Huấn luyện theo sản phẩm: a) Tìm )()( , t xy t x pC theo công thức (2.8), (2.9). b) Tìm )(t x K theo công thức (2.11). c) Dự đoán )(t ix r theo công thức (2.10). 2.3. Tăng bước lặp: tt+1; Until Converges: không có nhãn phân loại nào được bổ sung vào ma trận dự đoán [...]... 0.318 Độ đo Lọc cộng tác theo người dùng Lọc cộng tác theo sản phẩm Lọc cộng tác bằng phương pháp đồng huấn luyện theo người dùng Lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm 21 3.4 So sánh và đánh giá Trong thử nghiệm ban đầu, các phương pháp lọc cộng tác dựa theo người dùng, lọc cộng tác dựa theo sản phẩm và phương pháp mới lọc cộng tác bằng phương pháo đồng huấn luyện được so sánh qua... thử Hình 3.3 Cài đặt kiểm thử thuật toán lọc cộng tác theo sản phẩm 19 3.2.4 Mô tả cài đặt thuật toán bằng phương pháp đồng huấn luyện Việc thực hiện cài đặt thuật toán lọc cộng tác bằng phương pháp đồng huấn luyện sẽ thực hiện theo 2 cách tiếp cận là: lọc cộng tác bằng phương pháp đồng huấn luyện dựa theo người dùng và lọc cộng tác bằng phương pháp đồng huấn luyện dựa theo sản phẩm Điểm khác biệt cơ... thì cách tiếp cận bằng phương pháp đồng huấn luyện theo người dùng làm việc tốt hơn so với phương pháp lọc cộng tác theo người dùng và cách tiếp cận bằng phương pháp đồng huấn luyện theo sản phẩm làm việc tốt hơn so với phương pháp lọc cộng tác theo sản phẩm Theo kết quả kiểm thử, cách tiếp cận bằng phương pháp đồng huấn luyện theo sản phẩm thực hiện chưa tốt bằng phương pháp lọc cộng tác theo người dùng,...10 2.4.2 Lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm Gần giống với lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm, phương pháp này chỉ có một điểm khác trong quá trình huấn luyện đó là thứ tự thực hiện huấn luyện, quá trình huấn luyện theo sản phẩm sẽ được thực hiện trước quá trình huấn luyện theo người dùng Phương pháp này được mô tả hình thức trong... quá trình lọc cộng tác bằng đồng huấn luyện với 1 bước lặp đã bổ sung được các giá trị đánh giá còn thiếu vào tập dữ liệu huấn luyện 13 Chương 3 – THỬ NGHIỆM VÀ ĐÁNH GIÁ Việc cài đặt 3 thuật toán đã được nêu ra ở các phần trước sẽ được trình bày trong chương này; đó là thuật toán lọc cộng tác dựa theo người dùng, lọc cộng tác dựa theo sản phẩm và lọc cộng tác bằng phương pháp đồng huấn luyện Các kết... các phương pháp lọc cộng tác dựa theo người dùng, lọc cộng tác dựa theo sản phẩm và phương pháp mới lọc cộng tác bằng phương pháp đồng huấn luyện được so sánh qua các kết quả thử nghiệm dựa trên 3 độ đo cơ bản là độ nhạy, độ chính xác và F – measure Các kiểm thử được thực hiện ở 3 thuật toán với các tập dữ liệu có độ lớn khác nhau Căn cứ vào các kết quả của kiểm thử thì cách tiếp cận lọc cộng tác bằng. .. lọc cộng tác bằng phương pháp đồng huấn luyện dựa trên người dùng, thuật toán lọc cộng tác bằng phương pháp đồng huấn luyện dựa trên sản phẩm và thuật toán kết hợp sẽ được thực hiện với những thiết định giống với 2 thuật toán lọc cộng tác ở trên 3.2 Phương pháp thử nghiệm Trước tiên, toàn bộ dữ liệu thử nghiệm được chia thành hai phần, một phần Utr được sử dụng làm dữ liệu huấn luyện, phần còn lại Ute... nhau Căn cứ vào các kết quả của kiểm thử thì cách tiếp cận lọc cộng tác bằng phương pháp đồng huấn luyện làm việc tốt hơn các cách tiếp cận lọc cộng tác thuần túy Đặc biệt, trong các trường hợp thưa thớt đánh giá Tuy nhiên, qua kết quả kiểm thử cho thấy rằng trong một số trường hợp phương pháp lọc cộng tác bằng đồng huấn luyện 23 cũng không đem lại lợi ích cho tư vấn Vì vậy, một số hướng nghiên cứu... trình lọc cộng tác theo sản phẩm bổ sung thêm được là ít do ảnh hưởng của tính thưa thớt dữ liệu đánh giá của tập dữ liệu kiểm thử Thứ 2, việc xác định điểm dừng trong cài đặt thuật toán dựa vào số lượng đánh giá chắc chắn được bổ sung vào trong ma trận huấn luyện Trường hợp không có thêm đánh giá nào được bổ sung thì thuật toán sẽ dừng 22 KẾT LUẬN Phương pháp lọc cộng tác bằng phương pháp đồng huấn luyện, ... toán lọc cộng tác dựa trên người dùng: kiểm tra sự đúng đắn của cài đặt thuật toán sử dụng ba kích thước hàng xóm K = 3 Và kiểm nghiệm với các tập 20 người dùng – 20 sản phẩm, 50 người dùng – 60 sản phẩm, 70 người dùng – 50 sản phẩm trên tập dữ liệu MovieLens  Thuật toán lọc cộng tác dựa trên sản phẩm thiết lập tham số giống thuật toán lọc cộng tác dựa theo người dùng  Thuật toán lọc cộng tác bằng phương . lọc cộng tác bằng đồng huấn luyện bao gồm: Lọc cộng tác bằng phương pháp đồng huấn luyện theo người dùng, lọc cộng tác bằng phương pháp đồng huấn luyện. 2.4.2 Lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm Gần giống với lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm, phương pháp

Ngày đăng: 13/02/2014, 12:55

Hình ảnh liên quan

như trong bảng 2.3 - Lọc cộng tác bằng phương pháp đồng huấn luyện

nh.

ư trong bảng 2.3 Xem tại trang 10 của tài liệu.
Bảng 2.4 Thuật toán lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm.  - Lọc cộng tác bằng phương pháp đồng huấn luyện

Bảng 2.4.

Thuật toán lọc cộng tác bằng phương pháp đồng huấn luyện theo sản phẩm. Xem tại trang 11 của tài liệu.
Bảng 2.5 Ma trận đánh giá của lọc cộng tác - Lọc cộng tác bằng phương pháp đồng huấn luyện

Bảng 2.5.

Ma trận đánh giá của lọc cộng tác Xem tại trang 12 của tài liệu.
Bảng 2.6 Ma trận đánh ước lượng theo người dùng Người  - Lọc cộng tác bằng phương pháp đồng huấn luyện

Bảng 2.6.

Ma trận đánh ước lượng theo người dùng Người Xem tại trang 13 của tài liệu.
Bảng 2.7 Ma trận đánh ước lượng theo sản phẩm - Lọc cộng tác bằng phương pháp đồng huấn luyện

Bảng 2.7.

Ma trận đánh ước lượng theo sản phẩm Xem tại trang 13 của tài liệu.
Bảng 3.2 Thiết lập các tham số kiểm thử - Lọc cộng tác bằng phương pháp đồng huấn luyện

Bảng 3.2.

Thiết lập các tham số kiểm thử Xem tại trang 15 của tài liệu.
Hình 3.2 Cài đặt kiểm thử thuật toán lọc cộng tác theo người dùng - Lọc cộng tác bằng phương pháp đồng huấn luyện

Hình 3.2.

Cài đặt kiểm thử thuật toán lọc cộng tác theo người dùng Xem tại trang 18 của tài liệu.
Hình 3.1 Thiết định kiểm thử - Lọc cộng tác bằng phương pháp đồng huấn luyện

Hình 3.1.

Thiết định kiểm thử Xem tại trang 18 của tài liệu.
Hình 3.3 Cài đặt kiểm thử thuật toán lọc cộng tác theo sản phẩm - Lọc cộng tác bằng phương pháp đồng huấn luyện

Hình 3.3.

Cài đặt kiểm thử thuật toán lọc cộng tác theo sản phẩm Xem tại trang 19 của tài liệu.
Hình 3.4 Cài đặt kiểm thử thuật toán lọc cộng tác bằng phương - Lọc cộng tác bằng phương pháp đồng huấn luyện

Hình 3.4.

Cài đặt kiểm thử thuật toán lọc cộng tác bằng phương Xem tại trang 20 của tài liệu.
3.3 Kết quả thử nghiệm - Lọc cộng tác bằng phương pháp đồng huấn luyện

3.3.

Kết quả thử nghiệm Xem tại trang 21 của tài liệu.
Bảng 3.3 Bảng kết quả kiểm thử các thuật toán lọc cộng tác - Lọc cộng tác bằng phương pháp đồng huấn luyện

Bảng 3.3.

Bảng kết quả kiểm thử các thuật toán lọc cộng tác Xem tại trang 21 của tài liệu.

Từ khóa liên quan

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

Tài liệu liên quan