1. Trang chủ
  2. » Kinh Doanh - Tiếp Thị

Xây dựng ứng dụng tư vấn nhạc chuông

53 2K 8
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Xây dựng ứng dụng tư vấn nhạc chuông
Thể loại Luận văn
Định dạng
Số trang 53
Dung lượng 6,91 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Xây dựng ứng dụng tư vấn nhạc chuông

Trang 1

XÂY DỰNG ỨNG DỤNG TƯ VẤN NHẠC CHUÔNG

Trang 2

Mục lục

Mục lục 2

Các thuật ngữ được sử dụng trong tài liệu 4

Bảng biểu 5

Hình vẽ 6

Giới thiệu 7

Chương 1: Lọc cộng tác 9

1.1.Giới thiệu về lọc cộng tác 9

1.2.Lọc cộng tác dựa trên bộ nhớ 12

1.2.1.Tính toán độ tương tự 15

1.2.2 Tính toán dự đoán và tư vấn 17

1.3.Lọc cộng tác dựa trên mô hình 18

1.4.Ưu điểm và những thách thức trong lọc cộng tác 21

1.2.1 Ưu điểm của lọc cộng tác 21

1.2.1.1 Có thể lọc thông tin thuộc bất kỳ loại nào 21

1.2.1.2 Không cần xác định thông tin mô tả yêu cầu 21

1.2.1.3 Người dùng có thể nhận được những gợi ý bất ngờ 22

1.2.1.4 Khả năng ứng dụng thực tiễn cao 22

1.2.2 Khó khăn và thách thức trong lọc cộng tác 22

1.2.2.1 Sự thưa thớt dữ liệu 23

1.2.2.2 Khả năng mở rộng 25

1.2.2.3 Tính đồng nghĩa 26

1.2.2.4 Sự mập mờ 27

1.2.2.5 Sự tấn công 27

Chương 2: Lọc cộng tác có sử dụng độ tương quan gián tiếp 29

2.1 Mô hình 29

2.2 Thuật toán 32

2.3 Độ phức tạp thuật toán 35

Chương 3: Ứng dụng 37

3.1 Chức năng hệ thống 37

3.1.1 Search module 37

3.1.2 Auth module 38

3.1.3 Management module 38

3.1.4 Recommendation module 39

3.1.5 Download module 39

3.1.6 User profile module 39

3.2 Use-case 40

3.2.1 Package view 40

3.2.2 Use case diagram 41

3.2.2.1 <<package>> search module 41

3.2.2.2 <<package>> auth module 42

3.2.2.3 <<package>> management module 44

3.2.2.4 <<package>> recommendation module 44

3.2.2.5 <<package>> user profile module 44

Trang 3

3.3 Thiết kế kiến trúc hệ thống 45 KẾT LUẬN 51 Tài liệu tham khảo 51

Trang 4

Các thuật ngữ được sử dụng trong tài liệu

STT Tên tiếng anh Tên tiếng việt Giải thích

1 User Người dùng Chỉ những người sử dụng, người dùng hệ

thống…

2 Item Sản phẩm, mục Chỉ những mục trên hệ thống như: sản

phẩm, phim, ảnh, bản nhạc, trang web, đoạn văn bản,…

3 Rating Đánh giá Chỉ mức độ thích của một người dùng

với sản phẩm (item) Rating có thể có nhiều biểu hiện: như đánh giá thích hoặc không thích, hay đánh già theo mức độ từ

1 – 5 đại diện từ không thích đến rất thích Trong tài liệu này, các đánh giá được biểu diễn dưới dạng ma trận user – item hay ma trận người dùng – sản phẩm

Trang 5

Bảng biểu

Trang 6

Hình vẽ

Trang 7

Giới thiệu

Sự phát triển của internet đã mở ra cho con người rất nhiều cơ hội mới, nhưng cũng đầy thách thức Với internet, con người có cơ hội được tiếp cận với nguồn thông tin gần như vô hạn và vẫn đang tăng lên một cách nhanh chóng[?] Tuy nhiên, việc chọn được đúng thông tin cần thiết từ nguồn tin khổng lồ đó không hề đơn giản Con người càng ngày càng mất nhiều thời gian vào việc tìm kiếm và chọn lọc thông tin Vấn đề này được gọi là quá tải thông tin Những nghiên cứu nhằm

giải quyết vấn đề này dẫn đến sự ra đời của một ngành khoa học mới, đó là lọc thông tin (information filtering)[?].

Tư vấn lựa chọn là một trong những phương pháp lọc tin được quan tâm nhiều nhất Hệ tư vấn lựa chọn là những hệ thống có thể “hiểu” được người dùng và

có thể đưa ra được những gợi ý cho người dùng

Những hệ tư vấn là những hệ tư vấn dựa trên nội dung[?], những hệ tư vấn này so sánh nội dung của item (chỉ mục) với những sở thích của người dùng đã cung cấp, từ đó dự đoánh khả năng người dùng sẽ thích item đó Tuy nhiên, phương pháp tư vấn dựa trên nội dung chỉ phù hợp với những item dạng văn bản Trong những hệ thống thương mại điện tử, việc so sánh nội dung của item với sở thích của người dùng quả không dễ dàng Hay với những item không phải dạng văn bản như phim, ảnh, âm nhạc… thì việc so sánh nội dung của nó quả là vấn đề nan giải Trong những trường hợp này, việc tư vấn dựa trên nội dung gặp phải khó khăn rất lớn

Đầu những năm 90 của thế kỷ XX, một hướng nghiên cứu mới cho các hệ

tư vấn lựa chọn, đó là lọc cộng tác[?] Ngay từ khi ra đời, các hệ tư vấn dựa trên lọc cộng tác đã thể hiện được những ưu điểm cùng tính kinh tế của mình Nó nhanh chóng thu hút được sự quan tâm nghiên cứu và đã được ứng dụng thành công trong khá nhiều hệ thống thương mại như www.amazon.com, www.ebay.com,

Trang 8

Trong đồ án này, tôi sẽ trình bày về hệ tư vấn lựa chọn với lọc cộng tác Trong đồ án này tôi sẽ đưa ra những lý thuyết cơ bản nhất về lọc cộng tác (mục 1.1), những đặc điểm cũng như những ưu điểm và các khó khăn, thách thức của lọc cộng tác (mục 1.2), hai mô hình sử dụng của lọc cộng tác là lọc cộng tác dựa trên bộ nhớ (mục 1.3) và lọc cộng tác dựa trên mô hỉnh (mục 1.4) Trong đồ án này, tôi sẽ xây dựng một hệ tư vấn người dùng với kỹ thuật lọc cộng tác, đó là “hệ thống tư vấn nhạc chuông điện thoại”.

Cấu trúc của đồ án như sau:

Chương 1: Trình bày về những vấn đề cơ bản nhất của lọc cộng tác, như định nghĩa, các lý thuyết cơ bản được sử dụng trong lọc cộng tác, những ưu điểm cùng khó khăn thách thức của lọc cộng tác Hai mô hình của lọc cộng tác là dựa trên

bộ nhớ và dựa trên mô hình cũng được trình bày trong chương này

Chương 2: Tôi sẽ trình bày chi tiết một phương pháp lọc cộng tác dựa trên

bộ nhớ, trong đó có sử dụng độ tương tự gián tiếp giữa hai người dùng Với thuật toán này, chúng ta có thể khắc phục được phần nào cá vấn đề của lọc cộng tác đã được trình bày ở chương 1

Chương 3: Tôi sẽ trình bày về ứng dụng “tư vấn nhạc chuông điện thoại”

Trang 9

Chương 1: Lọc cộng tác

Trong chương này, tôi sẽ giới thiệu về lọc cộng tác Những đặc trưng, những

ưu điểm cùng những thách thức đối với lọc cộng tác Đồng thời, tôi cũng sẽ trình bày về hai môi hình cơ sở của lọc cộng tác: lọc cộng tác dựa trên bộ nhớ và lọc cộng tác dựa trên mô hình

“collabrative filtering” (lọc cộng tác) Giả thuyết của lọc cộng tác là: “nếu người dùng i và j dánh giá cho n sản phẩm tương tự nhau, hoặc có hành vi tương tự nhau (như: xem, mua, nghe…) thì họ sẽ có các đánh giá tương tự nhau đối với các sản phẩm khác”.

Trong hầu hết những hệ lọc cộng tác, dữ liệu luôn sẵn sàng dưới dạng những đánh giá của người dùng về sản phẩm Cụ thể, ta đặt U là tập người dùng, P là tập

Trang 10

sản phẩm, và dữ liệu D là tập bộ ba (i, x, r), trong đó là một người dùng,

là một sản phẩm, và là trọng số của sản phẩm x do người dùng i đánh giá Để đơn giản những kỹ hiệu này, chúng ta biểu diễn r ix là trọng số của của người

dùng i cho sản phẩm x – tức là r ix = (i, x, r) Hơn nữa, ứng với mỗi người dùng

chúng ta biểu diễn là tập các sản phẩm được đánh giá bởi người dùng

i Tương tự thế, là tập người dùng đã đưa đánh giá cho sản phẩm x

Dựa vào mỗi người dùng và sản phẩm , dự đoán trọng số sản

phẩm chính là dự đoán trọng số của người dùng i cho sản phẩm x Mở rộng của vấn

đề này là tìm tập k sản phẩm mà rất có thể người dùng sẽ quan tâm là công việc

chính trong các hệ tư vấn hiện nay Giả sử rằng chúng ta có một hệ thống dự đoán

các đánh giá của người dùng lên các sản phẩm mới, và dựa vào đó ta có thể lấy ra k

sản phẩm được dự đoán có trọng số cao nhất Cuối cùng, hai vấn đề quan trọng nhất

đó là làm thế nào để tìm được tập k người dùng tương tự với người dùng i nhất dựa trên thị hiếu về sản phẩm hay làm thế nào để tìm ra tập k sản phẩm tương tự với sản phẩm x nhất để có thể đưa ra các dự đoán trọng số đánh giá của người dùng và sản

phẩm tương ứng Trong lọc cộng tác, các kỹ thuật này được chia thành hai nhóm chính là phương pháp tiếp cận dựa trên bộ nhớ (mục 1.3) và phương pháp tiếp cận dựa trên mô hình (mục 1.4)

Với phương pháp lọc cộng tác dựa trên bộ nhớ, các hệ thống thường có xu hướng sử dụng toàn bộ dữ liệu đánh giá của người dùng để dự đoán đánh giá của người dùng nào đó về một sản phẩm mới Nhờ lợi thế là có khả năng đưa trực tiếp

dữ liệu mới vào bảng dữ liệu, do đó nó đạt được khá nhiều thành công khi được áp dụng vào thực tế Cũng do đó mà các kỹ thuật này thường đưa ra các dự đoán chính xác hơn trong các hệ trự tuyến – nơi mà ở đó luôn có dữ liệu mới được cập nhật Kỹ thuật này đã được áp dụng khá thành công trong nhiều hệ thống thương mại như

Trang 11

www.amazon.com, www.ebay.com, Tuy nhiên, chúng ta sẽ nhận thấy rằng các hệ thống thế này thường gặp phải vấn đề đó là sự thưa thớt dữ liệu.

Hình 1.1 Trang tư vấn của www.amazon.com

Có thể dễ dàng nhận ra một vài giới hạn trong kỹ thuật lọc cộng tác dựa trên bộ

nhớ Như trên thực tế, giá trị tương tự (mục 1.2.1) là dựa trên các đánh giá trên cùng

sản phẩm hoặc được đưa ra bởi cùng người dùng, vì vậy khi dữ liệu ít thì nó không còn đáng tin cậy nữa Để đạt được hiệu suất dự đoán tốt hơn và khắc phục những thiếu sót của thuật toán lọc cộng tác dựa trên bộ nhớ, phương pháp lọc cộng tác dựa

trên mô hình ra đời (mục 1.3) Phương pháp tiếp cận dựa trên mô hình không sử

dụng tất cả các dữ liệu đã có để đưa ra dự đoán Thay vào đó, chúng nắm bắt thông tin trong từng bước giống như một sự thỏa thuận về mô hình các sở thích của người dùng Những phương pháp như vậy có nhiều thuận lợi trong việc cung cấp nhanh và

có những dự đoán chính xác, giảm thiểu đi tính nhạy cảm trong trường hợp ít dữ

Trang 12

liệu Tuy nhiên, chúng thường yêu cầu nhiều thời gian để nắm bắt mô hình, làm giảm đi hiệu quả trong việc cài đặt trên các ứng dụng trực tuyến – nơi mà dữ liệu thường xuyên được thêm vào

Hình 1.2 Trang tư vấn của www.movilens.org

1.2 Lọc cộng tác dựa trên bộ nhớ

Phương pháp lọc cộng tác dựa trên bộ nhớ có đặc trưng cơ bản là nó thường sử dụng toàn bộ dữ liệu đã có để dự đoán đánh giá của một người dùng nào đó về sản phẩm mới Nhờ lợi thế là nó có khả năng đưa trực tiếp dữ liệu mới vào bảng dữ liệu, do đó nó đạt được khá nhiều thành công khi được áp dụng vào các ứng dụng thực tế Cũng do đó mà các kỹ thuật này thường đưa ra các dự đoán chính xác hơn trong các hệ trự tuyến – nơi mà ở đó luôn có dữ liệu mới được cập nhật Tuy nhiên, chúng ta sẽ nhận thấy rằng các hệ thống thế này thường gặp phải vấn đề đó là sự thưa thớt dữ liệu[?]

Trang 13

Thông thường, có hai cách tiếp cận dựa trên bộ nhớ: hệ dựa trên người dùng – tức dự đoán dựa trên sự tương tự giữa các người dùng và hệ dựa trên sản phẩm –

dự đoán dựa trên sự tương tự giữa các sản phẩm Hệ dựa trên người dùng xác định

sự tương tự giữa hai người dùng thông qua việc so sánh các đánh giá của họ trên

cùng sản phẩm, sau đó dự đoán đánh giá sản phẩm y bởi người dùng i, hay chính là đánh giá trung bình của những người dùng tương tự với người dùng i Độ tương tự giữa người dùng i và người dùng j có thể được tính theo công thức sau:

(2.1)

Trong đó sim(r, r’) là độ đo tương tự đối xứng giữa trọng số r và r’, a ij là số hạng tiêu chuẩn, thường là một hằng số Một ví dụ cho độ đo tương tự này là hệ số nhân Gaussian được xác định là trong đó là một tham số, chúng ta

có thể sử dụng a ij = |P i ∩ P j | như là một số hạng tiêu chuẩn, từ đó độ đo tương tự

của người dùng được định nghĩa như sau:

(2.2)

Sau khi đã tính toán được độ tương tự giữa các người dùng, chúng ta có thể

dự đoán đánh giá của người dùng i trên sản phẩm y như sau:

(2.3)

Nếu u ij nằm trong khoảng [0,1] thì là một sự kết hợp lồi của rij và giá trị

cũng nằm trong khoảng [0,1] giống r ij Chú ý rằng hầu hết những hệ thống điển hình giới hạn các định giá được sử dụng để dự đoán tới nhiều thứ liên quan nhất Có hai

cách tiếp cận chung để làm việc này là: chỉ xem trọng số đánh giá của người dùng j

Trang 14

hoặc chỉ xem trọng số của tập N người dùng tương tự nhất với người dùng i

Những hệ dựa trên sản phẩm thì xử lý theo phương pháp ngược lại: Chúng

tính sự tương tự giữa sản phẩm x và y thông qua so sánh trọng số đánh giá được tạo

ra bởi cùng người dùng i trên sản phẩm x và y, nghĩa là:

(2.4)

Trong đó b xy là số hạng tiêu chuẩn Trọng số đánh giá được dự đoán bởi

người dùng i về sản phẩm y sẽ thu được như trọng số trung bình của người dùng i

về các sản phẩm x tương tự với y, công thức tính là:

(2.5)

Trong khi khung làm việc nói chung để dự đoán các đánh giá chỉ có khả năng sử dụng những độ tương tự xuất hiện đơn giản thì các hệ lọc cộng tác điển hình sử dụng độ đo tương tự phức tạp hơn như độ đo tương tự không gian vecto được tính như sau:

(2.6)

Ta cũng có thể dùng độ đo tương quan Pearson

Phương pháp lọc cộng tác dựa trên bộ nhớ có đặc trưng cơ bản là nó thường sử dụng toàn bộ dữ liệu đã có để dự đoán đánh giá của một người dùng nào đó về sản phẩm mới Nhờ lợi thế là nó có khả năng đưa trực tiếp dữ liệu mới vào bảng dữ liệu, do đó nó đạt được khá nhiều thành công khi được áp dụng và các ứng dụng

Trang 15

thực tế Cũng do đó mà các kỹ thuật này thường đưa ra các dự đoán chính xác hơn trong các hệ tư vấn trực tuyến – nơi mà ở đó luôn có dữ liệu mới được cập nhật Tuy nhiên, chúng ta sẽ nhận thấy rằng các hệ thống này thường gặp phải vấn đề đó

là sự thưa thớt dữ liệu

Thông thường, có hai cách tiếp cận dựa trên bộ nhớ: hệ tư vấn trên người dùng – tức dự đoán dựa trên sự tương tự giữa các người dùng và hệ dựa trên item –

dự đoán dựa trên sự tương tự giữa các sản phẩm Hệ dựa trên người dùng xác định

sự tương tự giữa hai người dùng thông qua việc so sánh các đánh giá của họ trên

cùng sản phẩm, sau đó dự đoán đánh giá sản phẩm y bởi người dùng i, hay chính là đánh giá trung bình của người dùng tương tự với người dùng i Những hệ dựa trên item thì xử lý theo phương pháp ngược lại Chúng tính sự tương tự giữa sản phẩm x

và y, thông qua so sánh trong số đánh giá được tạo ra bởi người dùng i trên sản phẩm x và y Từ đó đưa ra dự đoán đánh giá của người dùng i lên sản phẩm y.

Thuật toán lọc cộng tác dựa trên tập hàng xóm là thuật toán lọc cộng tác dựa

trên bộ nhớ Trong thuật toán dựa trên tập hàng xóm, K người dùng gần nhất với người dùng i sẽ được chọn ra để tính toán Để chọn ra K hàng xóm gần nhất với người dùng, chúng ta cần tính toán độ tương tự của người dùng i với những người dùng khác Sau có được K hàng xóm gần nhất với người dùng I, ta có thể đưa ra dự đoán đánh giá của người dùng I với sản phẩm y dựa trên những đánh giá của K hàng

xóm đó

1.2.1.Tính toán độ tương tự

Tính toán độ tương tự giữa người dùng hoặc sản phẩm là bước đầu tiên trong thuật toán lọc cộng tác dựa trên bộ nhớ Chẳng hạn, với thuật toán lọc cộng tác dựa

trên người dùng, bước đầu tiên chúng ta phải tính toán độ tương tự u ij giữa hai

người dùng i và j dựa trên dữ liệu là những đánh giá của họ trên cùng một sản

phẩm Độ tương tự giữa hai người dùng có thể được tính theo công thức sau:

Trang 16

Trong đó sim(r, r’) là độ đo tương tự đối xứng giữa trọng số r và r’, a ij là số hạng tiêu chuẩn, thường là một hằng số Một ví dụ cho độ đo tương tự này là hệ số

nhân Gaussian được xác định là trong đó là một tham số, chúng ta

có thể sử dụng a ij = |P i ∩ P j | như là một số hạng tiêu chuẩn, từ đó độ đo tương tự

của người dùng được định nghĩa như sau:

Trong một vài trường hợp cụ thể, chúng ta cần sử dụng những công thức tính

độ tương quan khác như tương quan Pearson, hay độ tương tự cosine giữa các

vector nhằm nâng cao hiệu năng dự đoán

Với độ tương quan Pearson, độ tương tự u ij giữa hai người dùng i và j được

đánh giá bằng việc tính toán độ tương quan tuyến tính giữa hai vector Công thức

tính toán độ tương quan Pearson cho hai người dùng i và j là:

P

x i x i x P j x j

P P

x i x i j x j ij

r r r

r

r r r r u

2 ,

2 ,

, ,

Trong đó, xP iP j là tập sản phẩm mà người dùng i và người dùng j cùng

đánh giá, r i,x là đánh giá của người dùng i lên sản phẩm x, r i là đánh giá trung

bình của người dùng i.

Chúng ta cũng có thể tính toán độ tương tự giữa hai người dùng sử dụng độ tương tự cosine giữa hai vector

Trang 17

Trong đó phép toán • biểu thị phép nhân vector giữa hai vector i và j

1.2.2 Tính toán dự đoán và tư vấn

Đưa ra được những dự đoán hoặc lời gợi ý là một bước quan trọng trong hệ

tư vấn lọc cộng tác Sau khi tính toán độ tương tự giữa các người dùng hay giữa các sản phẩm Ta có thể đưa ra những dự đoán bằng cách tính trung bình các dự đoán của những hàng xóm

Trong thuật toán lọc cộng tác dựa trên hàng xóm, tập con những hàng xóm gần nhất của người dùng thực sự được lựa chọn dựa trên độ tương tự của chúng với anh hoặc chị ta, và tập hợp trọng số của những đánh giá đó được dùng để sinh ra dự đoán cho người dùng chính Công thức dự đoán đánh giá của người dùng khi sử dụng độ tương quan Pearson sẽ là:

Ta có thể biểu diễn thuật toán KNN sử dụng độ tương quan Pearson như

trong lưu đồ thuật toán dưới đây:

Trang 18

1.3 Lọc cộng tác dựa trên mô hình

Ngược lại với phương pháp dựa trên bộ nhớ, phương pháp tiếp cận dựa trên mô hình không sử dụng tất cả dữ liệu đã có để đưa ra dự đoán Thay vào đó, chúng nắm bắt thông tin trong từng bước giống như một sự thỏa thuận về mô hình các sở thích của người dùng Những phương pháp như vậy có nhiều thuận lợi trong việc cung cấp nhanh và có những dự đoán chính xác, giảm thiểu đi tính nhạy cảm trong trường hợp ít dữ liệu Tuy nhiên, chúng thường yêu cầu nhiều thời gian để nắm bắt

mô hình, làm giảm đi hiệu quả trong việc cài đặt trên các ứng dụng trực tuyến – nơi

mà dữ liệu thường xuyên được thêm vào

Kỹ thuật lọc cộng tác dựa trên mô hình đơn giản và phổ biến nhất là dựa trên mạng xác suất Bayes[?] Một mạng bayes được biểu diễn như hình vẽ dưới đây:

Trang 19

Trong đó, các node biểu diễn biến ngẫu nhiên C, cùng tập các vector đầu vào

X 1 , X 2 ,…, X m là tập các giá trị mà biễn ngẫu nhiên C có thể nhận.

Quá trình huấn luyện đòi hỏi ta phải tính toán P(C = c) – tức xác suất của biến ngẫu nhiên C nhận giá trị c, và P(Xj = x|C = c) – là xác suất biến ngẫu nhiên X j

nhận giá trị x khi biết rằng C có giá trị c Những xác suất này được tính theo công

thức dưới đây:

Để áp dụng mạng Bayes vào việc dự đoán, chúng ta sẽ học đọc lập với mỗi sản phẩm y Chúng ta huấn luyện máy với sản phẩm y bằng việc sử dụng tất cả người u dùng trên tập dữ liệu Vector đầu vào cho học máy với mỗi sản phẩm y bao

gồm tất cả những đánh giá của trên những sản phẩm còn lại Chúng ta đặt sản phẩm

y là biến ngẫu nhiên, các sản phẩm còn lại là tập thuộc tính Chúng ta có công thức bayes:

Trang 20

Để học, mạng dự đoán bayes cần tính toán P(R y = v) và P(R j = w|R y = v) Luật học của bayes được trình bày trong công thức 4.10 và 4.11 có thể được áp

dụng mà không cần thay đổi gì, nhưng để tránh những trường hợp xác suất bằng 0 Luật học cần được sửa đổi, và chúng ta có 2 công thức như của 4.14 và 4.15 Thuật toán tư vấn dựa trên mô hình với mạng bayes như sau:

Trang 21

1.4 Ưu điểm và những thách thức trong lọc cộng tác

1.2.1 Ưu điểm của lọc cộng tác

Ngay từ khi ra đời, các hệ thống lọc cộng tác đã thể hiện sự ưu việt hơn các

hệ tư vấn lựa chọn dựa trên lọc nội dung Những ưu điểm của hệ lọc cộng tác như:

có thể lọc kết hợp nhiều loại thông tin, không cần mô tả thông tin chi tiết về item hay người dùng có thể nhận được những tư vấn bất ngờ, và đặc biệt, các hệ lọc cộng tác có thể dễ cài đặt hơn nhiều

1.2.1.1 Có thể lọc thông tin thuộc bất kỳ loại nào

Lọc cộng tác dựa trên đánh giá của người dùng về hàng hóa, sản phẩm, phim, tài liệu,… không có giới hạn về lĩnh vực, không cần phải phân tích, hiểu hoặc đánh chỉ sổ cho nội dung cần lọc Ưu điểm này đã khắc phục được một trong những hạn chế chính của lọc theo nội dung bởi lọc theo nội dung đòi hỏi các mục cần phải

có nội dung được cấu trúc tốt và yêu cầu một quá trình phân tích chuyển đổi, trích

ra những thành phần đặc trưng Lọc theo nội dung chỉ phù hợp với dữ liệu văn bản Với những lĩnh vực không thuộc tài liệu văn bản như phim, âm nhac,… thì lọc theo nội dung vẫn cần phải có sự chuyển đổi thích hợp để đưa về dạng tài liệu như là tên diễn viên, đạo diễn, nhận xét của người dùng… Những phân tích chuyển đổi này rất tốn kém công sức để thu nhập, tính toán Thêm vào đó, với lọc cộng tác, nhiều lĩnh vực khác nhau có thể cùng sử dụng chung một phương pháp, cùng nền tảng Cùng một hệ thống lọc cộng tác có thể áp dụng để lọc các bản tin, sản phẩm, hàng hóa, phim, âm nhạc, tranh ảnh và sách…

1.2.1.2 Không cần xác định thông tin mô tả yêu cầu

Trong lọc theo nội dung, hệ thống cần phải xây dựng kho thông tin mô tả yêu cầu, sở thích của người dùng dưới dạng tiểu sử Hệ thống lọc cộng tác không yêu cầu phải mô tả những thông tin này một cách tường minh Các hàng hóa, sản phẩm được lọc và gợi ý cho người dùng dựa vào mối quan hệ, sự tương đồng sâu xa giữa

Trang 22

người dùng với nhau thể hiện thông qua những đánh giá của họ trên các hàng hóa, sản phẩm của hệ thống Ví dụ, lọc cộng tác có thẻ được sử dụng để xây dựng hệ tư vấn lựa chọn gợi ý những tài liệu được viết tốt trong khi lọc nội dung lại khó khăn trong việc phân biệt giữa các tài liệu viết tồi với các tài liệu viết tốt vì chỉ dựa trên thống kê, không thực sự dựa trên quan điểm suy nghĩ của con người.

1.2.1.3 Người dùng có thể nhận được những gợi ý bất ngờ

Gợi ý bất ngờ là những gợi ý về các sản phẩm, hàng hóa không chứa những thông tin mà người dùng đang thực sự tìm kiếm Đó là bởi vì trong lọc cộng tác, một mục được gợi ý cho người dùng nếu một người dùng khác có sở thích tương đồng quan tâm, do đó hoàn toàn có khả năng người dùng có sở thích tương đồng quan tâm lại không phải là cái mà người được tư vấn đang tìm kiếm Còn trong lọc nội dung, người dùng phải cung cấp cho hệ thống mô tả về những mục quan tâm và

hệ thống sẽ chỉ gợi ý cho người dùng những mục khoản thỏa mãn mô tả đó

1.2.1.4 Khả năng ứng dụng thực tiễn cao

Nghiên cứu đầu tiên về lọc cộng tác được thực hiện vào năm 1994 (Resnick

et al 1994[?]) Từ đó đến nay, các nghiên cứu cũng như ứng dụng vào thương mại

của lọc cộng tác đã phát triển khá nhanh và rộng Một số công ty đã được thành lập

để thương mại hóa công nghệ này, trong đó có cả Net Perceptions (www.netperceptions.com) vốn bắt nguồn từ những nghiên cứu của Đại học Minnesota, và cả website mua bán lớn nhất thế giới Amazon (www.amazon.com)

Sự chuyển dịch thành công của lọc cộng tác từ nghiên cứu sang thương mại trong một thời gian ngắn một phần là do ưu điểm, tính hữu ích, cùng với khả năng ứng dụng lớn của nó đã được công nhận

1.2.2 Khó khăn và thách thức trong lọc cộng tác

Các thuật toán tư vấn trong thương mại điện tử thường hoạt động trong một môi trường mang tính thách thức, đặc biệt là trong các công ty mua sắm trực tuyến lớn

Trang 23

như eBay, Amazon Thường thì một hệ thống tư vấn với các giải pháp nhanh chóng

và chính xác sẽ thu hút sự thích thú của khách hàng và mang lại lợi nhuận cho các công ty Đối với các hệ thống lọc cộng tác, việc đưa ra những dự báo hay các gợi ý chất lượng cao phụ thuộc vào khả năng xác định tối đa các thách thức của chúng, đây cũng chính là các đặc trưng của các nhiệm vụ của lọc cộng tác

1.2.2.1 Sự thưa thớt dữ liệu

Trong thực tế, rất nhiều hệ tư vấn thương mại được sử dụng để đánh giá

hàng loạt các sản phẩm rất lớn Vì vậy, ma trận user – item được sử dụng trong lọc

cộng tác sẽ cực kỳ thưa thớt và hiệu suất thành công cho các dự đoán hay gợi ý của

hệ thống lọc cộng tác đưa ra trở thành một thách thức lớn

Các thách thức về sự thưa thớt dữ liệu thường xuất hiện trong nhiều tình

huống, đặc biệt vấn đề khởi động lạnh (Cold start) diễn ra khi một người dùng mới

hay sản phẩm mới vừa được thêm vào hệ thống và việc tìm những sự tương đồng thật khó khăn vì không đủ thông tin Trong một vài trường hợp, vấn đề Cold start còn được gọi là vấn đề người dùng mới hay vấn đề sản phẩm mới Các sản phẩm mới không thể được đưa vào hệ thống nếu không có người dùng nào đánh giá chúng, và người dùng mới không thể có sự gợi ý tốt nếu thiếu trọng số hoặc bản liệt

kê về những đánh giá hay mua sắm trước đây của họ Độ bao phủ được định nghĩa như là phần trăm của các sản phẩm thuật toán cung cấp để đưa ra tư vấn Vấn đề giảm độ bao phủ xảy ra khi số lượng các đánh giá của người dùng có thể nhỏ hơn so với số lượng các sản phẩm trong hệ thống và hệ tư vấn không có khả năng sinh ra tư vấn cho họ Neighbor transitivity (tính tịnh tiến hàng xóm) đề cập tới vấn đề về cơ

sở dữ liệu thưa thớt Ở đó, những người dùng với thị hiếu tương tự nhau không được xác định nếu họ không cùng đánh gái về các sản phẩm giống nhau Vấn đề này đã làm giảm hiệu năng của hệ tư vấn dựa vào sự so sánh từng cặp giữa các người dùng từ đó sinh ra các dự đoán

Trang 24

Để giảm bớt vấn đề thưa thớt dữ liệu, có rất nhiều phương pháp được đưa ra

Kỹ thuật giảm chiều SVD[?] là một trong số đó Nhiệm vụ chính của kỹ thuật này là

bỏ qua người dùng hoặc sản phẩm không tiêu biểu và không quan trọng để giảm

chiều của ma trận user – item một cách trực tiếp LSI (Latent Semantic Indexing)[?]

được sử dụng trong vấn đề truy vấn thông tin đã rất thành công khi tính toán dựa

trên SVD để tìm ra độ tương tự giữa các người dùng thông qua việc biểu diễn họ trong không gian đã giảm chiều Bên cạnh đó, Goldberg et al [?] đã phát triển eigentaste áp dụng PCA (Principle Component Analysis)[?], một kỹ thuật phân tích

hệ số có liên hệ gần gũi nhau được mô tả đầu tiên bởi Pearson vào năm 1901[?]

nhằm giảm số chiều không gian Tuy nhiên, một khi người dùng hoặc sản phẩm nào

đó bị loại bỏ thì những thông tin hữu ích cho việc tư vấn liên quan đến họ cũng bị loại mất và chấ tượng tư vấn có thể bị giảm xuống

Thuật toán lọc cộng tác lại hay còn gọi là thuật toán content – boosted collaborative filtering[?] rất hữu ích trong việc giải quyết vấn đề thưa thớt bởi ở đó thông tin nội dung mở rộng được dùng để tìm ra những dự đoán cho người dùng hoặc sản phẩm mới Trong Ziegler et al[?], một phương pháp lọc cộng tác lai đã được đưa ra nhằm khai thác thông tin phân loại chính cho các sản phẩm cần phân loại chính xác và nó thường được dùng trong các vấn đề thưa thớt dữ liệu của các

hệ tư vấn lọc cộng tác, dựa trên các hồ sơ cá nhân được tạo ra nhờ sự suy luận của điểm được ghi trong các chủ thể con và trong sự đa dạng của chủ đề[?] Schein et al cũng đã đưa ra phương thức biến tiềm ẩn của mô hình khía cạnh cho vấn đề khởi động lạnh Đây chính là sự kết hợp giữa thông tin cộng tác và nội dung trong mô hình lọc Kim và Li đưa ra mô hình xác suất để giải quyết vấn đề khởi động lạnh, các sản phẩm được sắp xếp thành các nhóm và những dự đoán người dùng tạo ra được xem là sự phân loại Gausian[?] với trọng số đánh giá tương ứng

Thuật toán lọc cộng tác dựa trên mô hình như TAN – ELR[?] tập trung vào vấn đề thưa thớt thông qua việc cung cấp nhiều hơn những dự đoán chính xác cho

dữ liệu thưa thớt Một vài kỹ thuật lọc cộng tác dựa trên mô hình mới được đưa ra

Trang 25

bao gồm kỹ thuật truy vấn liên kết, áp dụng với thuật toán hạt hóa mở rộng nhằm khai thác sự liên kết bổ sung giữa những người dùng nhờ trọng số đánh giá và các bản tiểu sử của họ[?] MMMF[?] hay còn gọi là ma trận lồi, …

Kỹ thuật giảm chiều như SVD có thể giải quyết vấn đề này và cung cấp tư

vấn cho chất lượng tốt, nhưng chúng trải qua những bước tính toán thừa số ma trận

rất phức tạp Một thuật toán lọc cộng tác cải tiến SVD[?] tính toán lại chiều SVD sử

dụng những người dùng đã có sẵn Khi có một tập trọng số đánh giá mới được thêm vào cơ sở dữ liệu, thuật toán sử dụng kỹ thuật lấp đầy[?] để xây dựng hệ thống cải tiến mà không cần tính toán lại mô hình có chiều thấp hơn từ vạch xuất phát Vì vậy, nó tạo ra hệ tư vấn có khả năng mở rộng cao

Thuật toán lọc cộng tác dựa trên mô hình, như thuật toán độ tương quan

Pearson[?] trên sản phẩm có thể đạt được khả năng mở rộng thích hợp Thay vì việc tính toán độ tương tự giữa tất cả các cặp sản phẩm, lọc cộng tác Pearson dựa trên

sản phẩm tính toán độ tương tự chỉ giữa những cặp sản phẩm có liên quan đến nhau

của cùng một người dùng[?] Một thuật toán lọc cộng tác Bayes đơn giản cũng giải

quyết vấn đề mở rộng thông qua việc đưa ra những dự đoán dựa trên trọng số có sẵn[?] Thuật toán lọc cộng tác dựa trên mô hình ví dụ như clustering tập trung vào vấn đề mở rộng tại vị trí mà các cụm có độ tương tự cao và có ít tư vấn cho người

Trang 26

dùng hơn thay vì trên toàn bộ cớ sở dữ liệu, nhưng cũng cần phải cân bằng giữa hiệu suất mở rộng và dự đoán.

1.2.2.3 Tính đồng nghĩa

Tính đồng nghĩa đề cập đến số những sản phẩm giống hoặc rất tương tự nhau chỉ khác nhau về tên hoặc mục từ Hầu hết các hệ tư vấn không có khả năng khám phá ra mối liên quan về mặt ngữ nghĩa này vì vậy nghiên cứu về những sản phẩm này là rất khác nhau Chẳng hạn, nếu nhìn vào hai sản phẩm có tên như sau

“children movie” và “children film”, thực tế đây là hai sản phẩm giống nhau,

nhưng các hệ thống lọc cộng tác lại đưa kết quả không khớp giữa chúng khi tính toán độ tương tự Thật ra, độ biến thiên trong cách dùng thuật ngữ mô tả nói chung rất lớn Vì vậy, tính phổ biến của từ đồng nghĩa làm giảm hiệu suất của các hệ tư vấn lọc cộng tác

Các cố gắng trước đây nhằm giải quyết vấn đề về tính đồng nghĩa phụ thuộc nhiều vào sự triển khai thuật ngữ một cách tự động hoặc có tri thức hoặc thông qua việc xây dựng từ điển liệt kê và các từ đồng nghĩa với nhau Trở ngại cho các phương thức tự động chính là một số sản phẩm được bổ sung có thể có nghĩa khác với dự định, dẫn đến giảm sút nhanh chóng hiệu suất tư vấn[?]

Kỹ thuật SVD, cụ thể là phương thức Latent Semantic Indexing(LSI)[?] có khả năng giải quyết vấn đề từ đồng nghĩa SVD đưa ra một ma trận lớn các tài liệu

thuật ngữ liên quan đến dữ liệu và xây dựng một không gian ngữ nghĩa mà ở đó các

thuật ngữ và tài liệu liên quan mật thiết với nhau SVD cho phép sắp xếp không gian

nhằm mang lại những mẫu liên kết trong dữ liệu, và bỏ qua những mẫu nhỏ hơn và

ít quan trọng hơn HIệu suất của LSI trong việc giải quyết vấn đề tính đồng nghĩa là

tạo ra mức độ recall cao hơn tại những nơi mà mức độ chính xác ban đầu khá thấp,

làm cho những cải thiện tương ứng lớn Tuy nhiên, hiệu suất của phương thức LSI

tại mức thấp nhất của recall khá là ít[?]

Ngày đăng: 28/01/2013, 17:18

HÌNH ẢNH LIÊN QUAN

Hình 1.1 Trang tư vấn của www.amazon.com - Xây dựng ứng dụng tư vấn nhạc chuông
Hình 1.1 Trang tư vấn của www.amazon.com (Trang 11)
Hình 1.2 Trang tư vấn của www.movilens.org - Xây dựng ứng dụng tư vấn nhạc chuông
Hình 1.2 Trang tư vấn của www.movilens.org (Trang 12)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w