Tải bản đầy đủ (.docx) (39 trang)

Tìm hiểu hệ tư vấn cho hệ thống tư vấn tài liệu học tập cho sinh viên trường Đại học Quảng Bình

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.87 MB, 39 trang )

Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

MỤC LỤC
MỤC LỤC
LỜI MỞ ĐẦU
TỔNG QUAN ĐỀ TÀI
1. Lý do chọn đề tài
2. Mục tiêu nghiên cứu
3. Nội dung nghiên cứu
4. Đối tượng, phạm vi, phương pháp nghiên cứu
5. Dự kiến kết quả đạt được của đề tài và khả năng ứng dụng
NỘI DUNG ĐỀ TÀI
I. GIỚI THIỆU VỀ CƠ SỞ THỰC TẬP
1. Chức năng, nhiệm vụ của trung tâm
2. Cơ sở vật chất và nguồn vốn tài liệu
CHƯƠNG 1: TỔNG QUAN VỀ HỆ TƯ VẤN
1.1.Phương pháp lọc tin
1.1.1. Lọc thông tin là gì?
1.2. Hệ tư vấn
1.2.1. Hệ tư vấn (Recommender System)
CHƯƠNG 2: GIỚI THIỆU VỀ HỆ TƯ VẤN DỰA TRÊN PHƯƠNG PHÁP
LỌC CỘNG TÁC.
2.1. Giới thiệu về lọc cộng tác dựa trên sản phẩm
2.2. Lọc cộng tác dựa trên mô hình đồ thị
2.3. Lọc cộng tác dựa vào lọc đồng huấn luyện
2.3 Vấn đề thưa thớt dữ liệu và người dùng mới
CHƯƠNG 3: WEBSITE TƯ VẤN TÀI LIỆU HỌC TẬP CHO SINH VIÊN
3.1. Phát biểu bài toán
3.2. Phân tich yêu câu



SVTH: Hoàng Trọng Hải

1

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

3.5. Kết luận
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
1. Kết luận
2. Hướng phát triển
TÀI LIỆU THAM KHẢO

SVTH: Hoàng Trọng Hải

2

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng
LỜI MỞ ĐẦU


Ngày nay, internet đã trở thành công cụ thiết yếu để kết nối mọi
người trên thế giới, mọi thông tin thời sự, chinh luận, các s ự ki ện di ễn ra
hằng ngày đều có thể đưa lên hoặc tìm thấy ở trên Internet. Chinh đi ều đó
đã tạo ra một cuộc bùng nổ thông tin số. Một số công cụ tìm kiếm với từ
khóa, điển hình như google, yahoo… giúp chúng ta rất nhiều trong tìm
kiếm những thông tin cân thiết. Nhưng với lượng thông tin tăng lên nhanh
chóng, các công cụ tìm kiếm theo từ khóa cũng đang dân tỏ ra không hoàn
toàn đáp ứng được nhu câu của con người. Thêm nữa, đôi khi ng ười dùng
cũng không hiểu hết nhu câu của mình, không biết đ ược t ừ khóa chinh xác
mình muốn tìm kiếm, do đó rất khó để tìm được thông tin mình cân.
Để đạt được những kết quả tốt, những mục tiêu mà bản thân đã đ ặt
ra cho bài luận văn tốt nghiệp quan trọng này, em xin chân thành c ảm ơn
sự chỉ đạo tận tình của TS. Phạm Xuân Hậu - Giảng viên khoa Kỹ thu ật Công nghệ thông tin - Trường ĐH Quảng Bình. Đ ồng th ời, em cũng xin g ửi
lời cảm ơn chân thành tới Ban giám hiệu Trường Đại học Quảng Bình, các
giảng viên khoa Kỹ thuật - Công nghệ thông tin đã tạo m ọi điều kiện thu ận
lợi giúp chúng em được thực hiện khóa luận tốt nghiệp này.
Mặc dù đã hết sức cố gắng hết sức, song lượng kiến th ức còn có h ạn,
cũng như kiến thức thực tế còn it chưa đủ để phục vụ cho công việc, vì v ậy
em mong nhận được sự thông cảm, bỏ qua và đóng góp nh ững ý kiến đ ể
báo cáo thực tập của em được hoàn thiện hơn.
Cuối cùng, em xin chân thành cảm ơn gia đình và bạn bè, đã luôn t ạo
điều kiện, quan tâm, giúp đỡ, động viên em trong suốt quá trình học tập và
hoàn thành khoá luận tốt nghiệp.
Em xin chân thành cảm ơn!

SVTH: Hoàng Trọng Hải

3

Lớp: Đại học CNTT K57



Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

TỔNG QUAN ĐỀ TÀI
1.

Lý do chọn đề tài
Ngày nay, internet đã trở thành công cụ thiết yếu để kết nối mọi
người trên thế giới, mọi thông tin thời sự, chinh luận, các s ự ki ện di ễn ra
hằng ngày đều có thể đưa lên hoặc tìm thấy ở trên Internet. Chinh đi ều đó
đã tạo ra một cuộc bùng nổ thông tin số, số lượng thông tin trao đổi trên
internet đang tăng theo cấp số nhân. Càng ngày bạn càng mất nhiều thời
gian trong việc tìm xem sản phẩm hay thông tin nào phù h ợp v ới mình.
Một số công cụ tìm kiếm với từ khóa, điển hình nh ư google, yahoo…
giúp chúng ta rất nhiều trong tìm kiếm những thông tin c ân thiết. Nh ưng
với lượng thông tin tăng lên nhanh chóng, các công cụ tìm ki ếm theo t ừ
khóa cũng đang dân tỏ ra không hoàn toàn đáp ứng đ ược nhu câu c ủa con
người. Hàng ngày bạn phải bỏ ra quá nhiều th ời gian để lọc nh ững thông
tin tìm kiếm được trên google. Thêm nữa, đôi khi người dùng cũng không
hiểu hết nhu câu của mình, không biết được từ khóa chinh xác mình mu ốn
tìm kiếm, do đó rất khó để tìm được thông tin mình cân.
Nhìn gân hơn nữa, ngay tại trường Đại học Quảng Bình, Trung tâm
học liệu có đến hàng ngàn đâu sách chia thành từng chuyên ngành đ ể sinh
viên lựa chọn. Tuy nhiên, không phải sinh viên nào cũng có th ể ch ọn cho
mình những cuốn sách đúng với chuyên ngành của mình, hoặc sách không
phù hợp với trình độ hiện tại đang theo học.
Nhu câu đặt ra là cân có một hệ tư vấn. Các hệ thống tư v ấn này sẽ

tinh toán và dự đoán khả năng người dùng sẽ thich sản ph ẩm d ựa trên
thông tin như: chuyên ngành, năm học, môn học, sách mà các sinh viên năm
trước đã sử dụng… Từ đó đưa ra những gợi ý về sản phẩm hay thông tin
có thể phù hợp với người dùng nhất.
Trên đây là những lý do để tôi thực hiện đề tài “Tìm hiểu hệ tư vấn
cho hệ thống tư vấn tài liệu học tập cho sinh viên trường Đ ại h ọc
Quảng Bình”.

2.

Mục tiêu nghiên cứu
- Hiểu được hệ tư vấn là gì
- Nắm rõ phương pháp lọc cộng tác trong hệ tư vấn.

3. Nội dung nghiên cứu

- Chương 1: Tổng quan về hệ tư vấn.
SVTH: Hoàng Trọng Hải

4

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

- Chương 2: Giới thiệu về hệ tư vấn dựa trên phương pháp lọc cộng
tác.

- Chương 3: Website tư vấn tài liệu học tập cho sinh viên
4. Đối tượng, phạm vi, phương pháp nghiên cứu

- Đối tượng nghiên cứu: Các phương pháp lọc cộng tác.
- Phạm vi nghiên cứu: Phương pháp lọc cộng tác và th ư viện sách
trường Đại học Quảng Bình.
- Phương pháp nghiên cứu: Nghiên cứu lý thuyết ứng dụng.
5. Dự kiến kết quả đạt được của đề tài và khả năng ứng dụng

- Một tài liệu tham khảo cho sinh viên ngành công nghệ thông tin, công
nghệ phân mềm
- Demo ứng dụng cơ bản.

SVTH: Hoàng Trọng Hải

5

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

NỘI DUNG ĐỀ TÀI
I. GIỚI THIỆU VỀ CƠ SỞ THỰC TẬP
Tên đơn vị: Trung tâm Học liệu - Trường Đại học Quảng Bình
Địa chỉ: 312 Lý Thường Kiệt - Bắc lý - Đồng Hới - Quảng Bình.
Điện thoại: 052. 3819779; 0232.838777
Email: ;

Trung tâm Học liệu Trường Đại học Quảng Bình thành lập ngày 27/3/2013
trên cơ sở Thư viện của Trường ĐHQB. Trung tâm hoạt động trong lĩnh vực
thông tin và thư viện, có nhiệm vụ phục vụ hoạt động giảng dạy, học tập, đào
tạo, nghiên cứu khoa học; triển khai ứng dụng tiến bộ khoa học công nghệ và
quản lý; tổ chức và thực hiện các chương trình đào tạo đại học, dưới đại học,
liên kết đào tạo các ngành khoa học Thông tin và Thư viện, tổ chức hoạt động
nghiên cứu khoa học ngành Thông tin và Thư viện… góp phần quan trọng để
nâng cao chất lượng đào tạo nguồn nhân lực; đồng thời là địa điểm tổ chức các
Hội thảo, Hội nghị trong nước và quốc tế của Trường Đại học Quảng Bình.
Trung tâm hiện có 4 Phòng đọc với 12.000 đầu sách, 2 phòng tự nghiên
tiện nghi thoáng mát; 2 phòng đọc điện tử với 150 máy tính tốc độ cao; phòng
Lab, phòng nghe nhìn có hệ thống máy tính cấu hình mạnh, các dữ liệu như
băng đĩa, bản đồ và bản vẽ sử dụng thuận tiện. Trung tâm còn có các phòng để
phục vụ các hội thảo, hội nghị với phương tiện hiện đại; các ứng dụng như sao
chụp, scan và các dịch vụ khác đảm bảo điều kiện tốt nhất cho giảng dạy, học
tập và nghiên cứu.
1. Chức năng, nhiệm vụ của trung tâm
Chức năng của Trung tâm:
- Là một đơn vị sự nghiệp hoạt động trong lĩnh vực Thông tin và Thư viện;
Phục vụ hoạt động giảng dạy, học tập, đào tạo, nghiên cứu khoa học và triển
khai ứng dụng tiến bộ khoa học công nghệ thông qua việc sử dụng, khai thác các
loại tài liệu có trong thư viện.
- Là một cơ sở đào tạo, tổ chức và thực hiện các chương trình đào tạo đại
học, dưới đại học, liên kết đào tạo các ngành khoa học Thông tin và Thư viện, tổ
chức hoạt động nghiên cứu khoa học ngành Thông tin và Thư viện.
Nhiệm vụ của Trung tâm:

SVTH: Hoàng Trọng Hải

6


Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

- Tổ chức hoạt động và phát triển sự nghiệp thông tin, thư viện trong Nhà
trường.
- Tổ chức hoạt động đào tạo, bồi dưỡng và nghiên cứu khoa học ngành
Thông tin-Thư viện.
- Tổ chức sắp xếp, quản lý nhân sự, công tác nghiệp vụ, chuyên môn của
Trung tâm; quản lý, kiểm kê định kỳ vốn tài liệu, cơ sở vật chất kỹ thuật và các
tài sản khác; tiến hành thanh lý các tài liệu, thiết bị lạc hậu, cũ nát theo quy định
của Nhà nước và quy định của Trường Đại học Quảng Bình.
- Tổ chức các hoạt động tuyên truyền, quảng bá hình ảnh, sản phẩm, dịch
vụ thông tin thư viện của Trung tâm.
- Tổ chức và thực hiện các dịch vụ có thu theo quy định của Nhà nước
nhằm đảm bảo một phần kinh phí của đơn vị.
- Thực hiện các nhiệm vụ khác do Hiệu trưởng trường Đại học Quảng Bình
giao.
2. Cơ sở vật chất và nguồn vốn tài liệu
Sơ đồ:

Các phòng phục vụ chính gồm:
- Phòng đọc và mượn tài liệu:
05
- Phòng Lab, phòng máy tính:
02

- Phòng Hội thảo, chuyên đề:
03
- Phòng nghiên cứu của GV; SV: 02
* Các phòng tự học, tự nghiên cứu, học nhóm, đa phương tiện, ... Phòng
Truyền thống và các dịch vụ khác….
SVTH: Hoàng Trọng Hải

7

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

Nguồn tài nguyên:
- Tổng số lượng bản sách: 98.497 (bản), 12.550 (đầu sách)
Trong đó : Sách Tiếng Việt: 94.092 bản; Sách ngoại văn: 4.405 bản; Khóa
luận, luận văn tốt nghiệp: 600 cuốn; Đĩa CD/CD-ROM: 115 đĩa.
PHÒNG ĐỌC
Phòng đọc 1

Phòng đọc 2

Phòng đọc 3

Phòng đọc 4

Phòng đọc 5


LOẠI TÀI LIỆU

SỐ LƯỢNG
BẢN

Tài liệu đọc tại chỗ gồm: Báo, tạp chí; Luận văn,
luận án, đồ án, khóa luận, tiểu luận...
KHPL: 000-400.
Bao gồm các tài liệu: Tin học thông tin và tác
phẩm tổng quát; Triết học; Tôn giáo; Khoa học xã
hội; Ngôn ngữ (Tiếng Việt)
KHPL: 500-600
Bao gồm các tài liệu: Khoa học tự nhiên và toán
học; Công nghệ (Khoa học ứng dụng)
Phòng đọc ngoại văn.
Bao gồm các tài liệu: Tiếng Anh; Tiếng Pháp;
Tiếng Trung; Tiếng Nhật; Đĩa CD
KHPL: 700-900
Bao gồm các tài liệu: Nghệ thuật; Mĩ thuật; Giải
trí; Văn học; Lịch sử; Địa lý
Tổng:

740

36.155

32.240

4.914


24.448
98.497

- Nguồn tài liệu số:
Tài liệu nội sinh (DSPACE): 1000 file
Nguồn cơ sở dữ liệu khác: Thư viện số: Tài liệu.VN; Proqest: Cục Thông
tin Khoa học và Công nghệ Quốc gia.

SVTH: Hoàng Trọng Hải

8

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

CHƯƠNG 1: TỔNG QUAN VỀ HỆ TƯ VẤN
1.1.
Phương pháp lọc tin
1.1.1. Lọc thông tin là gì?

Lọc thông tin (Information Filtering) là lĩnh vực nghiên cứu các quá
trình cung cấp thông tin thich hợp, ngăn ngừa và gỡ bỏ thông tin không
thich hợp cho mỗi người dùng. Thông tin được cung c ấp (còn đ ược g ọi là
sản phẩm) có thể là văn bản, trang web, phim, ảnh, d ịch v ụ hoặc b ất kỳ
dạng thông tin nào được sản sinh ra từ các ph ương ti ện truy ền thông.

Phạm vi ứng dụng của lọc thông tin trải rộng trong nhiều ứng dụng th ực
tế khác nhau của khoa học máy tinh. Ứng dụng tiêu biểu nh ất c ủa l ọc
thông tin được kể đến là lọc kết quả tìm kiếm trong các máy tìm kiếm
(Search Engine), lọc e-mail dựa trên nội dung thư và hồ sơ người dùng, lọc
thông tin văn bản trên các máy chủ để cung cấp thông tin cho tập th ể hoặc
cá nhân thich hợp, loại bỏ những trang thông tin có ảnh h ưởng không t ốt
đối với người dùng. Đặc biệt, lọc thông tin có vai trò quan tr ọng cho các hệ
thống tư vấn (RS) ứng dụng trong thương mại điện tử.
Các hệ thống lọc thông tin có thể khác nhau về nguyên lý, ph ương
pháp, kỹ thuật, phạm vi ứng dụng nhưng đều th ực hiện mục tiêu cung c ấp
cho người dùng những thông tin cân thiết nhất, loại bỏ nh ững thông tin
không có giá trị hoặc không thich hợp đối v ới ng ười dùng. Nguyên lý ph ổ
biến được dùng trong lọc thông tin là nguyên lý dựa vào d ữ liệu (DataBased) và nguyên lý dựa vào tri thức (Knowledge-Based). Các phương pháp
lọc có thể được thực hiện dựa vào nội dung thông tin sản ph ẩm ho ặc l ọc
dựa trên thói quen sở thich người dùng. Các kỹ thuật l ọc đ ược phát tri ển
dựa trên nền tảng từ lĩnh vực truy vấn thông tin (Information Retrieval),
tách thông tin (Information Extraction), phân loại thông tin (Information
Classificarion). Phạm vi ứng dụng của các hệ thống lọc được áp dụng cho
tất cả các mô hình thương mại điện tử thực tế: Khách hàng - Khách hàng
(Customer to Customer), Nhà cung cấp - Khách hàng (Business to
Customer), Nhà cung cấp - Nhà cung cấp (Business to Business)
1.1.2.

Kiến trúc tổng quát của hệ thống lọc thông tin
Một hệ thống lọc thông tin tổng quát bao gồm bốn thành phân c ơ bản
:
- Thành phân phân tich dữ liệu (Data Analyser Component).
SVTH: Hoàng Trọng Hải

9


Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

- Thành phân mô hình người dùng (User Model Component).
- Thành phân học (Learning Component) .
- Thành phân lọc (Filtering Component).

Hình 1.1. Kiến trúc tổng quát của hệ thống lọc thông tin.
- Thành phân phân tich dữ liệu (DAC) có nhiệm vụ thu th ập d ữ liệu về
sản phẩm từ các nhà cung cấp thông tin (vi dụ tài liệu, th ư đi ện t ử, sách,
báo, tạp chi, phim, ảnh...). Dữ liệu về sản phẩm được phân tich và bi ểu
diễn theo một khuôn dạng thich hợp, sau đó chuy ển đến bộ phận l ọc nh ư
Hình 1.1.
- Thành phân mô hình người dùng (UMC) có th ể “hi ện” ho ặc “ ẩn”
dùng để lấy thông tin về người dùng, như giới tinh, tuổi, n ơi sinh s ống và
thông tin người dùng đã truy vấn trước đó để tạo nên h ồ s ơ ng ười dùng.
Hồ sơ người dùng sau khi tạo ra được chuyển đến thành phân h ọc đ ể th ực
hiện nhiệm vụ huấn luyện.
- Thành phân học (LC) thực hiện huấn luyện trên tập hồ sơ và ph ản
hồi của người dùng theo một thuật toán học máy cụ th ể. Thuật toán h ọc
lấy dữ liệu từ thành phân mô tả người dùng, lấy dữ liệu về sản phẩm đã
được biểu diễn từ thành phân lọc kết hợp với thông tin phản h ồi ng ười
dùng để thực hiện nhiệm vụ huấn luyện. Kết quả quá trình học đ ược
chuyển lại cho bộ phận lọc để thực hiện nhiệm vụ tiếp theo.
- Thành phân lọc (FC) là thành phân quan trọng nhất của hệ th ống, có

nhiệm vụ xem xét sự phù hợp giữa hồ sơ người dùng và biểu diễn d ữ liệu
sản phẩm để đưa ra quyết định phân bổ sản phẩm. Nếu dữ liệu sản ph ẩm
phù hợp với hồ sơ người dùng, sản phẩm sẽ được cung cấp cho ng ười
SVTH: Hoàng Trọng Hải

10

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

dùng đó. Trong trường hợp ngược lại, hệ thống loại bỏ sản ph ẩm kh ỏi
danh sách những sản phẩm phân bổ cho người dùng. Ng ười dùng nh ận
được những sản phẩm thich hợp, xem xét, đánh giá, phản hồi lại cho thành
phân học để phục vụ quá trình lọc tiếp theo.
1.1.3. Lọc thông tin và truy vấn thông tin

Có thể nhìn nhận lọc thông tin và truy vấn thông tin nh ư hai mặt của
cùng một vấn đề. Chinh vì vậy, nhiều đặc trưng cơ bản của l ọc thông tin có
thể tìm thấy trong lĩnh vực truy vấn thông tin (IR). Tuy nhiên, ta có th ể
phân biệt sự khác biệt giữa hai hệ thống này thông qua vi ệc so sánh m ột
số đặc trưng cơ bản dưới đây.
-

Kiểu người dùng. Hệ thống truy vấn thông tin đáp ứng nhu c âu cho t ất c ả
người dùng tại mọi thời điểm mà không cân quan tâm đến h ọ là ai. Trái l ại,
lọc thông tin quan tâm đến những người dùng th ường xuyên s ử d ụng h ệ

thống dùng, có hồ sơ rõ ràng, có mối quan tâm dài hạn đối v ới hệ th ống và

-

luôn nhận được thông tin thich hợp từ hệ thống ở mọi th ời điểm.
Biểu diễn nhu câu thông tin. Hệ thống truy vấn thông tin bi ểu di ễn nhu
câu người dùng bất kỳ dưới dạng một câu truy vấn. Lọc thông tin bi ểu
diễn nhu câu người dùng lâu dài hệ thống dưới dạng m ột h ồ sơ ng ười
dùng. Hồ sơ người dùng không chỉ ghi lại các đặc tr ưng thông tin cá nhân,
mà còn bao hàm các đặc trưng liên quan đến lịch s ử truy c ập hay thói quen

-

sử dụng thông tin của người dùng này.
Mục tiêu hệ thống: Hệ thống truy vấn thông tin quan tâm đến các ph ương
pháp cung cấp thông tin thich hợp cho m ỗi người dùng phù h ợp v ới truy
vấn của người dùng này. Lọc thông tin quan tâm đến các ph ương pháp g ỡ
bỏ dữ liệu hơn là việc nỗ lực tìm kiếm thêm dữ liệu. Cũng vì lý do này, lọc
thông tin được xem là phương pháp giảm tải thông tin chinh đ ược quan

-

tâm nhất hiện nay.
Cơ sở dữ liệu: Hệ thống truy vấn thông tin th ực hiện cung cấp thông tin
trên các cơ sở dữ liệu tĩnh. Lọc thông tin cung cấp thông tin trên c ơ s ở d ữ

-

liệu động, có cấu trúc khác nhau và thường xuyên biến đổi.
Phạm vi tương tác: Hệ thống truy vấn không quan tâm đến s ự t ương tác

giữa những người dùng khác nhau. Lọc thông tin quan tâm đ ến s ự t ương
đồng theo sở thich, thói quen hay những đặc trưng xã hội, t ự nhiên khác
SVTH: Hoàng Trọng Hải

11

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

nhau của tập người dùng. Hệ thống luôn có một mô hình ng ười dùng đ ể
giữ lại những đặc trưng cân thiết cho mỗi người dùng.
1.2.
Hệ tư vấn
1.2.1. Hệ tư vấn (Recommender System)
Hệ tư vấn (Recommender System) là trường hợp riêng của các hệ
thống lọc thông tin. Dựa trên thông tin đã có về người dùng, hệ tư vấn xem
xét trong số lượng rất lớn hàng hóa hay thông tin và t ư v ấn cho người dùng
một danh sách ngắn gọn nhưng đây đủ những hàng hóa mà người dùng có
khả năng quan tâm. Sử dụng hệ tư vấn trong các ứng dụng th ương mại
điện tử sẽ hỗ trợ khách hàng không. cân th ực hiện các thao tác tìm ki ếm
sản phẩm, mà chỉ cân lựa chọn hàng hóa hoặc dịch vụ ưa thich do h ệ
thống cung cấp. Điều này sẽ làm gia tăng năng lực mua, bán c ủa toàn b ộ h ệ
thống. Chinh vì lý do này, hàng loạt các công ty đa quốc gia (Amazon.com,
Netflix.com, CDNOW, J.C. Penney, Procter & Gamble..) đã đ âu t ư và phát
triển thành công công nghệ tư vấn để gia tăng hệ thống khách hàng và bán
hàng qua mạng

Hệ tư vấn là hệ thống có khả năng tự động phân tich, phân loại, lựa
chọn và cung cấp cho người dùng những thông tin, hàng hóa hay dịch v ụ
mà họ quan tâm. Hệ tư vấn được xem như một biến thể điển hình có vai
trò quan trọng trong lọc thông tin.
1.2.2. Bài toán tư vấn

Bài toán tư vấn được các tác giả Adomavicius và Tuzhilin [6] mô tả
như sau:
Gọi U = (u1,u2,u3...,um ) là tập hợp tất cả người dùng trong hệ thống tư
vấn,
I = (i1,i2,i3,...,in) là tập tất cả các sản phẩm có thể tư vấn. Một hàm g = U
x I → R trong đó R là một tập hợp có th ứ t ự, đ ược dùng đ ể đo s ự phù h ợp
của sản phẩm in với người dùng um. Như vậy, với mỗi người dùng u m thuộc
vào U, hệ tư vấn cân chọn ra các sản phẩm ,ch ưa biết v ới ng ười dùng u m
sao cho hàm g đạt giá trị lớn nhất.

SVTH: Hoàng Trọng Hải

12

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

Hình 1.1. Các thành phần chính của hệ thống tư vấn
Đâu tiên, bộ phận học hồ sơ người dùng phân tich các s ở thich ngươi
dùng. Một khi hệ thống hiểu được người dùng quan tâm đ ến đi ều gì, nó

thực thi một thuật toán tư vấn, so sánh, tổ hợp giữa các hồ sơ người dùng
hoặc giữa hồ sơ người dùng với các đặc trưng sản ph ẩm, sau đó ch ọn ra
tập hợp những sản phẩm người dùng có thể ưa thich và g ửi kết quả tư
vấn về sản phẩm, hiển thị tự động cho người dùng.
1.2.3. Các phương pháp lọc trong hệ tư vấn

- Phương pháp tư vấn dựa vào lọc nội dung (Content-Based Filtering)
Hệ
thống tư vấn cho người dùng những sản phẩm mới có nội dung tương
tự với một số sản phẩm họ đã từng mua hoặc từng truy nh ập trong quá
khứ.
- Phương pháp tư vấn dựa vào lọc cộng tác (Collaborative Filtering)
Người dùng sẽ được tư vấn một số sản phẩm của những người có sở thich
giống họ đã từng ưa thich trong quá khứ.
- Phương pháp tư vấn dựa vào lọc kết hợp Hệ thống tư vấn cho người
dùng những sản phẩm tương tự với một số sản phẩm h ọ đã từng mua
hoặc từng truy nhập trong quá khứ và sản phẩm của nh ững ng ười có s ở
thich giống họ đã từng ưa thich trong quá khứ
1.2.3.1.

Phương pháp tư vấn dựa vào lọc nội dung (Content-Based Filtering):
Hệ tư vấn dựa trên nội dung đưa ra các tư vấn dựa trên phỏng đoán
rằng một người có thể thich các sản phẩm có nhiều đặc tr ưng t ương t ự
với các sản phẩm mà họ đã từng ưa thich. Theo đó, đ ộ phù h ợp g(u,i) c ủa
sản phẩm i với người dùng u được đánh giá dựa 6 trên đ ộ phù h ợp g(u, ij),
trong đó ij ∈ I và tương tự về nội dung i.
SVTH: Hoàng Trọng Hải

13


Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

Vi dụ, để gợi ý một bộ phim cho người dùng u, hệ th ống tư vấn sẽ
nhận ra sở thich của u qua các đặc điểm của nh ững bộ phim t ừng đ ược u
đánh giá cao (như thể loại, tên đạo diễn…); sau đó ch ỉ nh ững bộ phim
tương đồng với sở thich của u mới được giới thiệu.

Hình 1.2. Tư vấn dựa trên nội dung

Để cụ thể
hơn, đặt Content(i) là tập thông tin (hay tập các đặc tr ưng) v ề s ản ph ẩm i.
Do hệ thống dựa trên nội dung được thiết kế chủ yếu để dành cho các sản
phẩm dạng văn bản hoặc có các mô tả nội dung (metadata) d ạng văn b ản
nên phương pháp biểu diễn thường được lựa chọn là mô hình không gian
vector (Vector Space Model ). Theo đó, nội dung sản ph ẩm được bi ểu diễn
bởi các từ khóa: Content(i) = (wi1,wi2,…,wik), với wi1,..wik là trọng số của các
từ khóa (như TF-IDF) từ 1 tới k trong không gian từ khóa được xây d ựng từ
trước.
Đặt Profile(u) là hồ sơ về người dùng u, bao gồm các thông tin v ề s ở
thich của u. Những thông tin này có được bằng cách phân tich n ội dung c ủa
các sản phẩm từng được u đánh giá (cho điểm) tr ước đó. Ph ương pháp
được sử dụng thường là các kĩ thuật phân tich từ khóa của IR, do đó,
Profile(u) cũng có thể được định nghĩa như một vector trọng số: Profile(u)
= (wu1, …,wuk) với xui biểu thị độ quan trọng của từ khóa j với người dùng u.
Trong hệ thống tư vấn dựa trên nội dung, độ phù h ợp g(u,i) đ ược xác

định bởi công thức:
g(u,i) = Score(Profile(u), Content(i))
Cả Profile(u), Content(i) đều được biểu diễn bằng vector trọng số t ừ
TF-IDF (tương ứng là các vecto ,) nên ta có thể s ử dụng một công th ức tinh
độ tương tự như độ đo cosin:
SVTH: Hoàng Trọng Hải

14

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

Bên cạnh các phương pháp IR, hệ tư vấn dựa trên nội dung còn s ử
dụng nhiều phương pháp học máy khác như: phân lớp Bayes, cây quyết
định, mạng nơron nhân tạo… Các phương pháp này khác v ới các ph ương
pháp của IR ở chỗ nó dựa trên các mô hình học được từ dữ liệu nền. Vi dụ,
dựa trên tập các trang web đã được người dùng đánh giá là “thich” hay
“không thich” có thể sử dụng phân lớp Bayes để phân l ớp các trang web
chưa được đánh giá.
Một số hạn chế của hệ thống tư vấn dựa trên nội dung:
Theo công trình khảo sát các hệ tư vấn của Adomavicius và Tuzhulin
[6], các hệ thống tư vấn dựa trên nội dung có một vài hạn chế sau đây:
- Sự phân tich nội dung bị hạn chế (Restricted content analysis): Tinh
hiệu quả của hệ tư vấn này phụ thuộc vào việc mô tả một cách đây đủ các
đặc trưng nội dung của sản phẩm. Vì vậy, nội dung s ản ph ẩm ph ải ho ặc
có thể được trich xuất tự động bởi máy tinh hoặc dễ dàng đ ược trich xu ất

bằng tay. Có nhiều trường hợp, yêu câu này rất khó th ực hiện, vi d ụ trong
miền ứng dụng tư vấn dữ liệu đa phương tiện như ảnh đồ h ọa, phim, âm
thanh,… Trich xuất tự động đặc trưng nội dung c ủa các đ ối t ượng d ữ li ệu
này là một bài toán khó, và việc trich xuất bằng tay là không kh ả thi do chi
phi lớn.
- Sự lạm dụng nội dung chuyên môn (Content over-specialisation): S ự
tư vấn chỉ được tạo ra từ phân tich nội dung các sản phẩm đã t ừng đ ược
người dùng ưa thich, trong khi các những đánh giá c ủa ng ười dùng khác có
thể được sử dụng để tư vấn những sản phẩm mới (thậm chi khác loại),
những tư vấn dựa trên nội dung chỉ có thể đưa ra những sản phẩm tương
tự với những gì họ đã từng đánh giá cao tr ước đây. Trong nhi ều tr ường
hợp, những sản phẩm không nên được tư vấn nếu nó quá giống với các
sản phẩm đã được đánh giá từ trước. Một vi dụ điển hình là trong các h ệ
thống tư vấn tin tức, những tin tức tư vấn được đánh giá cao h ơn n ếu nó
không phải là một bản trich dẫn hoặc có nội dung thông tin trùng l ặp.
- Vấn đề người dùng mới (new user problem): Người dùng cân đánh
giá một lượng sản phẩm đủ lớn trước khi hệ thống tư vấn có th ể th ực sự
hiểu sở thich của họ, và đưa ra những tư vấn đáng tin cậy.
1.2.3.2.

Phương pháp tư vấn lọc cộng tác
SVTH: Hoàng Trọng Hải

15

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp


GVHD: Th.S Lê Minh Th ắng

Không giống như phương pháp tư vấn dựa trên nội dung, hệ th ống
cộng tác dự đoán độ phù hợp g(u,i) của một sản phẩm i v ới ng ười dùng u
dựa trên độ phù hợp g(uj , i) giữa người dùng uj và i, trong đó uj là người có
cùng sở thich với u. Vi dụ, để gợi ý một bộ phim 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ở thich v ới u, vi d ụ
cùng thich các bộ phim hành động. Sau đó, nh ững bộ phim đ ược h ọ đánh
giá cao sẽ được dùng để tư vấn cho u.
Có rất nhiều hệ thống cộng tác đã được phát triển nh ư: Grundy,
GroupLens (tin tức), Ringo (âm nhạc), Amazon.com (sách), Phoaks (web)…
Các hệ thống này có thể chia thành hai loại: dựa trên kinh nghi ệm
(heuristic-based hay memory-based) và dựa trên mô hình (model-based) .
1.2.3.2.1. Hệ thống cộng tác dựa trên kinh nghiệm

Các thuật toán dựa trên kinh nghiệm dự đoán hạng của một sản
phẩm dựa trên toàn bộ các sản phẩm đã được đánh giá tr ước đó. Nghĩa là,
độ phù hợp của sản phẩm in với người dùng u m, g(um, in) được tổng hợp từ
đánh giá của những người dùng khác về in (th ường là N ng ười có s ở thich
tương đồng nhất với um).
Theo đó, hướng tiếp cận lọc cộng tác này tổ h ợp các đánh giá ng ười
dùng cùng sở thich này:
Trong đó, m là tập các người dùng cùng sở thich v ới u m.
Một số vi dụ về hàm tổ hợp:
Trong đó, d là hệ số chuẩn hóa

Giá trị trung bình các đánh giá của người dùng uj

Có nhiều cách để tinh độ tương đồng (về sở thich) gi ữa hai ng ười
dùng, nhưng trong hâu hết các phương pháp, độ t ương đồng ch ỉ đ ược tinh

dựa trên các sản phẩm được cả hai người cùng đánh giá. Hai ph ương pháp
SVTH: Hoàng Trọng Hải

16

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

phổ biến nhất là dựa trên độ tương quan (correlation-based) và d ựa trên
cosin (cosine-based).
Biểu diễn những đánh giá quá khứ của hai người dùng u m và uj tương
ứng như sau:
Rm = (rm,1,..., rm,N)
Rj = (rj,1,..., rj,N)
Độ tương đồng dựa trên cosin:

1.2.3.2.2. Hệ thống cộng tác dựa trên mô hình

Khác với phương pháp dựa trên kinh nghiệm, phương pháp d ựa trên
mô hình (model-based) sử dụng kĩ thuật thống kê và h ọc máy trên d ữ liệu
nền (các đánh giá đã biết) để xây dựng nên các mô hình. Mô hình này sau
đó sẽ được dùng để dự đoán hạng của các sản phẩm ch ưa được đánh giá.
Breese đề xuất hướng tiếp cận xác suất cho lọc cộng tác
(collaborative filtering), trong đó công thức sau ước lượng đánh giá c ủa
người dùng u về sản phẩm i (thang điểm đánh giá từ 0 đ ến n):
Billsus và Pazzani [5] đề xuất phương pháp lọc cộng tác trên nền học

máy, trong đó rất nhiều các kĩ thuật học máy (nh ư mạng nơron nhân t ạo)
và các kĩ thuật trich chọn đặc trưng (như SVD – một kĩ thu ật đ ại s ố nh ằm
làm giảm số chiều của ma trận) có thể được sử dụng. Ngoài ra còn nhiều
hướng tiếp cận khác như mô hình thống kê, mô hình bayes, mô hình h ồi
quy tuyến tinh, mô hình entropy cực đại… Hệ thống tư vấn cộng tác kh ắc
phục được nhiều nhược điểm của hệ thống dựa trên nội dung. Một đi ểm
quan trọng là nó có thể xử lý mọi loại dữ liệu và gợi ý m ột loại s ản ph ẩm,
kể cả những sản phẩm mới, khác hoàn toàn so với những gì người dùng
từng xem.
1.2.3.3.

Phương pháp tư vấn kết hợp
Một vài hệ tư vấn kết hợp cả phương pháp cộng tác và dựa trên nội
dung nhằm tránh những hạn chế của cả hai. Có th ể phân thành bốn cách
kết hợp như sau:
SVTH: Hoàng Trọng Hải

17

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

-

Cài đặt hai phương pháp riêng rẽ rồi kết hợp dự đoán của chúng.
Tich hợp các đặc trưng của phương pháp dựa trên nội dung vào h ệ th ống


-

cộng tác.
Tich hợp các đặc trưng của phương pháp cộng tác vào hệ th ống d ựa trên

-

đặc trưng.
Xây dựng mô hình hợp nhất, bao gồm các đặc trưng c ủa cả hai ph ương
pháp.
Kết hợp hai phương pháp riêng rẽ, Có hai kịch bản cho trường
hợp này:

-

Cách 1: Kết hợp kết quả của cả hai phương pháp thành một kết quả chung
duy nhất, sử dụng cách kết hợp tuyến tinh (linear combination) hoặc

-

voting scheme.
Cách 2: Tại mỗi thời điểm, chỉ chọn phương pháp cho kết qu ả t ốt h ơn
(dựa trên một số độ đo chất lượng tư vấn nào đó).
Thêm đặc trưng của mô hình dựa trên nội dung vào mô hình
cộng tác.
Một số hệ thống lai dựa chủ yếu trên các kĩ thuật cộng tác nh ưng v ẫn
duy trì hồ sơ về người dùng (theo dạng của mô hình d ựa trên n ội dung).
Hồ sơ này được dùng để tinh độ tương đồng gi ữa hai người dùng, nh ờ đó
giải quyết được trường hợp có quá it sản phẩm chung đ ược đánh giá b ởi

cả hai người. Một lợi ich khác là các gợi ý sẽ không ch ỉ gi ới h ạn trong các
sản phẩm được đánh giá cao bởi những người cùng sở thich (gián tiếp), mà
còn cả với những sản phẩm có độ tương đồng cao v ới s ở thich c ủa chinh
người dùng đó (trực tiếp).
Thêm đặc trưng của mô hình cộng tác vào mô hình d ựa trên n ội
dung.
Hướng tiếp cận phổ biến nhất là dùng các kĩ thuật giảm s ố chi ều
trên tập hồ sơ của phương pháp dựa trên nội dung.
Hạn chế chinh của hệ thống dạng này là nó cân phải thu thập đ ủ tri
thức, đây cũng là nút thắt cổ chai (bottle- neck) của rất nhiều h ệ th ống tri
tuệ nhân tạo khác. Tuy nhiên, các hệ thống tư vấn dựa trên tri th ức hiện
đang được phát triển trên các lĩnh vực mà miền tri thức của nó có th ể bi ểu
diễn ở dạng mà máy tinh đọc được. Vi dụ, hệ th ống Quickstep và Foxtrot
sử dụng ontology về chủ đề của các bài báo khoa học đ ể gợi ý nh ững bài
báo phù hợp cho người dùng.
SVTH: Hoàng Trọng Hải

18

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

Mô hình hợp nhất hai phương pháp
Trong những năm gần đây đã có khá nhiều nghiên cứu về mô hình hợp
nhất. Basu và cộng sự đề xuất kết hợp đặc trưng của cả hai phương pháp vào
một bộ phân lớp dựa trên luật (rule-based classifier). Ansari và cộng sự giới

thiệu mô hình hồi quy Bayes sử dụng dây Markov Monte Carlo để ước lượng
tham số.

SVTH: Hoàng Trọng Hải

19

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

CHƯƠNG 2: GIỚI THIỆU VỀ HỆ TƯ VẤN DỰA TRÊN PHƯƠNG PHÁP
LỌC CỘNG TÁC.
2.1.

Giới thiệu về lọc cộng tác dựa trên sản phẩm
Giải thuật tư vấn dựa trên sản phẩm nhằm đưa ra các d ự đoán cho
người dùng bởi đối tượng được xét ở đây là sản phẩm. Quá trình t ư v ấn
bằng phương pháp lọc cộng tác dựa trên sản phẩm sẽ tinh toán độ t ương
tự các sản phẩm, sau đó lựa chọn k sản phẩm t ương t ự {i 1, i2,…ik}. Khi
những sản phẩm có độ tương tự nhất được tìm hết, dự đoán được tinh
toán dựa trên trung bình của đánh giá người dùng trên nh ững sản phẩm
tương tự. Cụ thể quá trình tư vấn bằng phương pháp lọc cộng tác dựa trên
sản phẩm.

2.1.1. Lọc cộng tác dựa trên sản phẩm sách


Giả sử sản phẩm ở đây là sách, và người dùng là các sinh viên đăng
nhập vào 1 hệ thống Webstie để mượn sách. Mỗi người dùng được l ưu trữ
trên hệ thống với các hồ sơ bao gồm thông tin cá nhân, và các đánh giá c ủa
người dùng đó với các loại sách, đánh giá theo thang đi ểm t ừ 1 sao đ ến 5
sao, với ý nghĩa là đánh giá càng cao thì người dùng càng thich lo ại sách đó.
Công việc của hệ thống tư vấn là: Khi một người dùng đăng nh ập vào
hệ thống, hệ thống cân tư vấn những loại sách cho người dùng đó và
những loại sách được tư vấn đó được dự đoán là người dùng sẽ đánh giá
cao. Bằng cách hệ thống xem xét các loại sách mà người dùng ch ưa xem, so
sánh độ tương tự giữa loại sách đó với những sách khác. Độ t ương t ự 2 lo ại
sách được tinh dựa trên những người dùng từng đánh giá trên cả 2 lo ại
sách đó theo 1 thuật toán tinh xác suất. Bước cuối cùng của h ệ th ống t ư
vấn là dự đoán đánh giá của người dùng với những sách mà người dùng
chưa sử dụng, lựa chọn những sách được dự đoán có đánh giá cao đ ể đ ưa
vào danh sách tư vấn cho người dùng.
Bước 2: Tinh độ tương tự của 2 sản phẩm theo công thức tinh độ
tương tự Cosine, xây dựng Ma trận tương tự của các sản phẩm.
Trong trường hợp này, cả 2 sản phẩm i, j được biểu diễn thông qua 2
véc-tơ cột n chiều, n = Ui j là số lượng các người dùng cùng đánh giá 2 sản
phẩm i và j. Độ tương tự giữa chúng được đo dựa trên tinh toán cosine góc
giữa 2 véc-tơ đó. Trong ma trận đánh giá m x n, độ t ương t ự gi ữa hai s ản
phẩm i và j, biểu diễn là sim(i,j) được cho bởi công th ức:
SVTH: Hoàng Trọng Hải

20

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp


GVHD: Th.S Lê Minh Th ắng

Sim(i,j) = Cosine( i , j ) = =

(2.1)

Trong đó:
: là đánh giá của người dùng u với sản phẩm i
: là tập các người dùng đã đánh giá cả 2 sản ph ẩm i,j
Dựa vào công thức tính độ tương tự:
Sim(i,j) = Cosine( i , j ) = =

(2.2)

và bảng 1.1 đánh giá người dùng với các sản phẩm, ta có:

P1
P2
P3
P4
P5
P6
P7
P8
P9
Bảng 2.1. Bảng tính độ tương tự theo công thức Cosine
P1
P2
P3

P4
P5
P6
P7
P8
P9

1,00
0
0,89
1
0,83
0
0,74
7
0,64
6
1,00
0
0,00
0
0,00
0
0,74
7

0,891
1,000
0,739
0,824

0,894
0,522
1,000
1,000
1,000

0,83

0,74

0,64

0
0,73

7
0,82

6
0,89

9
1,00

4
0,73

4
0,70


0
0,73

9
1,00

7
1,00

9
0,70

0
1,00

0
1,00

7
0,65

0
0,99

0
0,89

9
0,89


8
1,00

1
0,94

4
0,99

0
1,00

9
1,00

0
0,99

0
0,94

0
0,99

2

9

0


1,000

0,000

0,000

0,747

0,522

1,000

1,000

1,000

0,659

0,894

0,990

0,992

0,998

1,000

1,000


0,949

0,891

0,949

1,000

0,990

1,000

0,854

0,955

0,614

0,854

1,000

0,713

1,000

0,995

0,713


1,000

0,949

0,614

1,000

0,949

1,000

Bảng trên thể hiện độ tương tự giữa các sản phẩm theo cách tinh đ ộ
tương tự cosine.
Sim(i,j) thể hiện độ tương tự của 2 sản ph ẩm i, j, v ới nh ững c ặp s ản
phẩm cùng được đánh giá.
Giá trị này dao động từ 0-1, v ới ý nghĩa 1 là nh ững s ản ph ẩm có giá
trị tương tự nhau hoàn toàn, giá tr ị độ t ương t ự c ủa 2 s ản ph ẩm càng cao
SVTH: Hoàng Trọng Hải

21

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

có nghĩa là 2 sản phẩm đó khả năng đ ược đánh giá t ương đ ồng nhau b ởi

người dùng.
- Thuật toán tính độ tương tự Cosine
Function Cosine (a [ ], b [ ])
Begin
ab, a2, b2 = 0;
For (i=1…n) do
If (a[i]<>0) and (b[i]<>0)
then
Begin
ab = a[i] * b[i] + ab;
a2 = a[i] * a[i] + a2;
b2 = b[i] * b[i] + b2;
end;
return a*b / (sqrt (a2) * sqrt (b2));
End;
Độ phức tạp thuật toán độ đo Cosine: O (n) với n là số lượng ph ân t ử
của mảng a và b.
Bước 3: Tính dự đoán của người dùng đối với sản phẩm dựa trên
những sản phẩm lân cận với sản phẩm dự đoán và đưa ra tư vấn.
Bước quan trọng nhất của hệ thống lọc cộng tác là đưa ra kết quả d ự
đoán. Phân trên đã đưa ra những sản phẩm tương t ự nh ất d ựa trên đ ộ
tương tự, bước tiếp theo là nghiên cứu kỹ mục tiêu xếp hạng của người
dùng và sử dụng kỹ thuật để thu được dự đoán.
Công thức dự đoán dựa trên trung bình đánh giá sản phẩm lân
cận
Dựa vào công thức đơn giản nhất để dự đoán của 1 người dùng u lên 1
sản phẩm i là dựa vào những người dùng lân cận của u mà đã đánh giá s ản
phẩm i. Công thức:
(2.3)
Trong đó :

- N: là tổng các sản phẩm lân cận của i đã được a đánh giá.
- Ti: là tập hợp các sản phẩm i’ lân cận với i mà u đã đánh giá

SVTH: Hoàng Trọng Hải

22

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

Vậy dựa theo phương pháp lọc cộng tác dựa trên sản phẩm, hệ th ống
đã tư vấn thành công cho người dùng u1 với các sản phẩm là P7, P8.
-

Thuật toán dự đoán dựa trên trung bình đánh giá sản ph ẩm lân cận
Function DuDoan(user, item, lancan)
Begin
Tong=0;
dem=0;
For (i=1..n) do
If (R[user,i]>0) and (Cosine[i,item]==lancan)
Then
Begin
Tong = tong + R[user,i];
Dem = dem+1;
End;

return Tong / Dem;
End;
Độ phức tạp thuật toán dự đoán dựa trên trung bình đánh giá: O(n)
với n là số lượng sản phẩm.

2.1.2. Đánh giá phương pháp lọc cộng tác

- Ưu điểm: Xét một cách tổng quát thì hệ này không yêu câu quá
nặng vào việc tinh toán và do đó có th ể đưa ra nh ững tư v ấn có đ ộ chinh
xác cao và nhanh chóng cho một số lượng lớn người dùng.
- Nhược điểm: Vấn đề dữ liệu thưa làm cho việc giải quyết bài toán
đánh giá ban đâu (The First Rater Problem) gặp nhiều khó khăn. Khi hệ
thống có thêm một người dùng mới, người dùng này cân có m ột s ố đánh
giá ban đâu cho một vài sản phẩm thì hệ thống mới có thể dự đoán cho họ
những sản phẩm tiếp theo. Tương tự như vậy đối với các sản phẩm m ới
chưa được bất kỳ người dùng nào đánh giá, sản phẩm này ch ỉ đ ược t ư v ấn
đến người dùng khi có một vài người dùng đánh giá.
2.2.

Lọc cộng tác dựa trên mô hình đồ thị
Lọc cộng tác có thể xem xét như bài toán tìm kiếm trên đồ thị dựa
trên biểu diễn mối quan hệ đánh giá của người dùng đối với các sản ph ẩm.
Mục này trình bày một mô hình đồ thị cho lọc cộng tác.

2.2.1. Phương pháp biểu diễn đồ thị

SVTH: Hoàng Trọng Hải

23


Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

Mô hình đồ thị cho lọc cộng tác có thể mô tả nh ư sau. Cho ma tr ận
đánh giá đâu vào của lọc cộng tác R = (r ij). Gọi X = (xij) là ma trận cấp N×M
có các phân tử được xác định theo công th ức (2.4). Trong đó, x ij = 1 tương
ứng với trạng thái người dùng ui đã đánh giá sản phẩm pj, xij = 0 tương ứng
với trạng thái người dùng chưa đánh giá sản phẩm pj.
(2.4)
Đồ thị biểu diễn đánh giá của người dùng đối với các sản ph ẩm (G ọi
tắt là Người dùng - Sản phẩm) G = (V, E) đ ược bi ểu di ễn theo ma tr ận X,
trong đỉnh V = U ∪ P ( U là tập người dùng, P là tập sản phẩm); tập cạnh E
bao gồm tập các cạnh biểu diễn đánh giá của người dùng đối v ới s ản
phẩm. Cạnh nối giữa đỉnh ui ∈ U và đỉnh pj∈ P được thiết lập nếu người
dùng ui đã đánh giá sản phẩm pj ( xij = 1 ). Trọng số của mỗi cạnh được lấy
tương ứng là rij. Như vậy, trong biểu diễn này đồ thị Người dùng- Sản
phẩm có hai loại cạnh: Cạnh có trọng số dương r ij = +1 biểu diễn người
dùng ui “thich” sản phẩm pj, cạnh có trọng số âm, rij = -1 biểu diễn người
dùng ui “không thich” sản phẩm pj.
Ví dụ: Hệ gồm 5 người dùng U = {u1, u2, u3, u4, u5}, 7 loại s ữa P
={p1, p2, p3, p4, p5, p6, p7,}. Ma trận đánh giá rij đ ược cho trong b ảng 2.9.
Giả sử p1, p2, p4, p5, p6 có đặc tr ưng sữa dành cho trẻ c1 "suy dinh
dưỡng"; p3, p4, p5, p7 có đặc trưng c2 "cao to kh ỏe".
Đồ thị Người dùng - Sản phẩm có hai loại cạnh:
Cạnh có trọng số dương rij = +1 biểu diễn người dùng ui“thich” s ản
phẩm pj, cạnh có trọng số âm rij = -1 biểu diễn người dùng ui “không

thich” sản phẩm pj. Khi đó, đồ thị được biểu diễn như Bảng 2.6.
2.2.2. Phương pháp dự đoán trên đồ thị người dùng - sản ph ẩm

Các phương pháp lọc cộng tác dựa trên độ tương quan th ực hiện
bằng cách xác định những người dùng tương tự nhất v ới người dùng hi ện
thời để tạo nên tư vấn..
Phương pháp dự đoán trên đồ thị Người dùng - Sản phẩm có th ể
được thực hiện thông qua các bước sau:
2.2.2.1.

Tách đồ thị Người dùng-Sản phẩm thành các đồ thị con
Cho đồ thị Người dùng - Sản phẩm G =(V, E) đ ược bi ểu di ễn theo ma
trận X= (xij) cấp N×M. Ký hiệu X+ = (x+ij ) ma trận cấp N×M được xác định

SVTH: Hoàng Trọng Hải

24

Lớp: Đại học CNTT K57


Báo cáo thực tập tốt nghiệp

GVHD: Th.S Lê Minh Th ắng

theo công thức (2.5). Ký hiệu X- = (x-ij ) là ma trận c ấp N×M đ ược xác đ ịnh
theo công thức (2.6).
(2.5)
(2.6)
Đồ thị G+ = (V, E+) được biểu diễn theo ma trận X+ có tập đỉnh đúng

bằng tập đỉnh của G, có tập cạnh E+ bao gồm các cạnh có tr ọng số d ương
của G.

(2.7)

Đồ thị G- = (V, E-) được biểu diễn theo ma trận X có t ập đ ỉnh đúng
bằng tập đỉnh của G, có tập cạnh E bao gồm các cạnh có trọng số âm của G.
(2.8)
2.2.2.2.

Phương pháp dự đoán trên đồ thị có trọng số dương G+
Trọng số đường đi từ đỉnh người dùng u i đến đỉnh sản phẩm pj theo
các cạnh có trọng số dương được ghi nhận là một số dương ph ản ánh m ức
độ “thich” của sản phẩm đối với người dùng. Nh ững đ ường đi có đ ộ dài
lớn sẽ được đánh trọng số thấp, những đường đi có độ dài nh ỏ đ ược đánh
trọng số cao. Những sản phẩm nào có trọng số cao sẽ được dùng để t ư vấn
cho người dùng hiện thời.
Phương pháp dự đoán trên đồ thị G+ được đề xuất d ựa trên vi ệc tinh
toán trọng số các đường đi từ đỉnh người dùng đến đỉnh sản ph ẩm. Nh ững
sản phẩm nào có trọng số cao nhất sẽ được dùng để t ư v ấn cho ng ười
dùng hiện thời.
Để ý rằng, đồ thị G, G+, G- đều là những đồ th ị hai phia, m ột phia là
các đỉnh người dùng, phia còn lại là các đỉnh sản phẩm. Do v ậy, các đ ường
đi từ đỉnh người dùng đến đỉnh sản phẩm luôn có độ dài l ẻ.
Đối với đồ thị hai phia, số các đường đi độ dài L xuất phát t ừ m ột
đỉnh bất kỳ thuộc phia người dùng đến đỉnh bất kỳ thuộc phia s ản ph ẩm
được xác định theo công thức 2.9, trong đó X là ma tr ận bi ểu di ễn đ ồ th ị
hai phia, XT là ma trận chuyển vị của X, L là đ ộ dài đ ường đi.
(2.9)
Để ghi nhận trọng số của các đường đi từ đỉnh sản ph ẩm đến đ ỉnh

người dùng trên đồ thị G+ sao cho những đường đi dài có tr ọng s ố th ấp,
những đường đi ngắn có trọng số cao, ta sử dụng h ằng kh ử nhi ễu α (0< α
≤ 1) theo công thức (2.10), trong đó X+ là ma trận biểu diễn đồ th ị G+,
SVTH: Hoàng Trọng Hải

25

Lớp: Đại học CNTT K57


×