Báo cáo Phát triển một số phương pháp lọc thông tin cho hệ tư vấn
TRƯỜNG ………………….
KHOA……………………….
----------
Báo cáo tốt nghiệp
Đề tài:
Phát triển một số phương pháp lọc
thông tin cho hệ tư vấn
LꢀI CAM ꢁOAN
Tôi xin cam ꢀoan ꢀây là công trình nghiên cꢁu cꢂa riêng tôi. Các kꢃt quꢄ
ꢀưꢅc viꢃt chung vꢆi các tác giꢄ khác ꢀꢇu ꢀưꢅc sꢈ ꢀꢉng ý cꢂa ꢀꢉng tác giꢄ trưꢆc
khi ꢀưa vào luꢊn án. Các kꢃt quꢄ nêu trong luꢊn án là trung thꢈc và chưa tꢋng
ꢀưꢅc công bꢌ trong các công trình nào khác.
Tác giꢂ
Nguyễn Duy Phương
1
Lꢃi cꢂm ơn
Thꢈc hiꢍn luꢊn án tiꢃn sꢎ là mꢏt thꢐ thách lꢆn, ꢀòi hꢑi sꢈ kiên trì và tꢊp
trung cao ꢀꢏ. Tôi thꢈc sꢈ hꢒnh phúc vꢆi kꢃt quꢄ ꢀꢒt ꢀưꢅc trong ꢀꢇ tài nghiên
cꢁu cꢂa mình. Nhꢓng kꢃt quꢄ ꢀꢒt ꢀưꢅc không chꢔ là nꢕ lꢈc cá nhân, mà còn có
sꢈ hꢕ trꢅ và giúp ꢀꢖ cꢂa tꢊp thꢗ giáo viên hưꢆng dꢘn, nhà trưꢙng, bꢏ môn, ꢀꢉng
nghiꢍp và gia ꢀình. Tôi muꢌn bày tꢑ tình cꢄm cꢂa mình ꢀꢃn vꢆi hꢚ.
Trưꢆc tiên, tôi xin bày tꢑ sꢈ biꢃt ơn sâu sꢛc ꢀꢃn tꢊp thꢗ giáo viên hưꢆng
dꢘn PGS TS Tꢋ Minh Phương và PGS TS ꢜinh Mꢒnh Tưꢙng. ꢜưꢅc làm viꢍc
vꢆi hai thꢝy là mꢏt cơ hꢏi lꢆn cho tôi hꢚc hꢑi phương pháp nghiên cꢁu. Cꢄm ơn
hai thꢝy rꢞt nhiꢇu vì sꢈ hưꢆng dꢘn tꢊn tình, nghiêm túc và khoa hꢚc.
Tôi xin trân trꢚng cꢄm ơn Bꢏ môn Khoa hꢚc máy tính, Khoa Công nghꢍ
thông tin, Phòng ꢜào tꢒo, Ban giám hiꢍu trưꢙng ꢜꢒi hꢚc Công nghꢍ ꢀã tꢒo ꢀiꢇu
kiꢍn thuꢊn lꢅi cho tôi trong suꢌt quá trình thꢈc hiꢍn luꢊn án.
Tôi xin cꢄm ơn tꢊp thꢗ Lãnh ꢀꢒo Hꢚc Viꢍn Công nghꢍ Bưu chính Viꢟn
thông, cán bꢏ, giꢄng viên khoa Công nghꢍ thông tin – Hꢚc Viꢍn Công nghꢍ
Bưu chính Viꢟn thông ꢀã cꢠ vꢡ ꢀꢏng viên tôi trong quá trình nghiên cꢁu.
Tôi cꢄm ơn tꢞt cꢄ nhꢓng ngưꢙi bꢒn cꢂa tôi, nhꢓng ngưꢙi luôn chia sꢢ và cꢠ
vꢡ tôi trong nhꢓng lúc khó khꢣn và tôi luôn ghi nhꢆ ꢀiꢇu ꢀó.
Cuꢌi cùng, tôi xin bày tꢑ lòng biꢃt ơn vô hꢒn ꢀꢌi vꢆi cha mꢤ và gia ꢀình ꢀã
luôn bên cꢒnh ꢂng hꢏ, giúp ꢀꢖ tôi.
2
MꢄC LꢄC
PHꢥN Mꢦ ꢜꢥU .........................................................................................................
1. Tính cꢞp thiꢃt cꢂa luꢊn án........................................................................... 11
2. Mꢧc tiêu cꢂa luꢊn án................................................................................... 12
3. Các ꢀóng góp cꢂa luꢊn án........................................................................... 13
4. Bꢌ cꢧc cꢂa luꢊn án ...................................................................................... 15
CHꢨƠNG 1. TꢩNG QUAN Vꢪ LꢫC THÔNG TIN CHO Hꢬ Tꢨ VꢭN .........16
1.1. GIꢮI THIꢬU CHUNG................................................................................ 16
1.1.1. Kiꢃn trúc tꢠng quát cꢂa hꢍ thꢌng lꢚc thông tin .................................. 17
1.1.2. Lꢚc thông tin và truy vꢞn thông tin..................................................... 18
1.1.3. Hꢚc máy và lꢚc thông tin..................................................................... 19
1.1.4. Lꢚc thông tin và các hꢍ tư vꢞn............................................................ 21
1.2. PHꢨƠNG PHÁP LꢫC THEO NꢯI DUNG.............................................. 24
1.2.1. Bài toán lꢚc theo nꢏi dung.................................................................. 25
1.2.2. Các phương pháp pháp lꢚc theo nꢏi dung............................................ 25
1.2.2.1. Lꢚc nꢏi dung dꢈa vào bꢏ nhꢆ........................................................ 25
1.2.2.2. Lꢚc nꢏi dung dꢈa vào mô hình...................................................... 28
1.2.3. Nhꢓng vꢞn ꢀꢇ tꢉn tꢒi............................................................................. 29
1.3. PHꢨƠNG PHÁP LꢫC CꢯNG TÁC.......................................................... 30
1.3.1. Bài toán lꢚc cꢏng tác............................................................................. 30
1.3.2. Các phương pháp lꢚc cꢏng tác............................................................. 32
1.3.2.1. Lꢚc cꢏng tác dꢈa trên bꢏ nhꢆ....................................................... 32
1.3.2.2. Lꢚc cꢏng tác dꢈa vào mô hình ..................................................... 35
1.3.3. Nhꢓng vꢞn ꢀꢇ tꢉn tꢒi............................................................................. 38
1.4. PHꢨƠNG PHÁP LꢫC KꢰT HꢱP.............................................................. 39
1.4.1. Bài toán lꢚc kꢃt hꢅp .............................................................................. 39
1.4.2. Các phương pháp lꢚc kꢃt hꢅp............................................................... 40
1.4.3. Nhꢓng vꢞn ꢀꢇ còn tꢉn tꢒi.................................................................... 42
1.5. KꢰT LUꢲN ................................................................................................. 42
3
CHꢨƠNG 2. LꢫC CꢯNG TÁC BꢳNG PHꢨƠNG PHÁP HꢫC ꢜA NHIꢬM......
2.1. ꢜꢴT VꢭN ꢜꢪ............................................................................................. 44
2.1.1. Vꢞn ꢀꢇ dꢓ liꢍu thưa cꢂa lꢚc cꢏng tác .................................................. 44
2.1.2. ꢵnh hưꢶng cꢂa vꢞn ꢀꢇ dꢓ liꢍu thưa .................................................... 45
2.1.3. Các phương pháp hꢒn chꢃ vꢞn ꢀꢇ dꢓ liꢍu thưa................................... 46
2.2. LꢫC CꢯNG TÁC BꢳNG PHÂN LOꢷI ................................................... 48
2.2.1. Phát biꢗu bài toán lꢚc cꢏng tác bꢸng phân loꢒi .................................. 48
2.2.2. Phân loꢒi bꢸng phương pháp Boosting ............................................... 51
2.3. PHÂN LOꢷI VꢮI CÁC ꢜꢴC TRꢨNG CHUNG .................................... 56
2.3.1. Phương pháp hꢚc ꢀa nhiꢍm ................................................................. 56
2.3.2. Boosting ꢀꢉng thꢙi cho nhiꢇu bài toán phân loꢒi............................... 59
2.3.2.1. Xây dꢈng hàm mꢧc tiêu................................................................ 59
2.3.2.2. Xây dꢈng bꢏ phân loꢒi yꢃu........................................................... 60
2.2.2.3. ꢜꢏ phꢁc tꢒp thuꢊt toán.................................................................. 63
2.4. THꢹ NGHIꢬM VÀ KꢰT QUꢵ ................................................................. 65
2.4.1. Phương pháp thꢐ nghiꢍm..................................................................... 65
2.4.2. Dꢓ liꢍu thꢐ nghiꢍm .............................................................................. 65
2.4.3. So sánh và ꢀánh giá dꢈa vào giá trꢺ MAE .......................................... 67
2.4.4. Kꢃt quꢄ thꢐ nghiꢍm.............................................................................. 67
2.4.5. Phân tích kꢃt quꢄ .................................................................................. 69
2.5. KꢰT LUꢲN ................................................................................................. 72
CHꢨƠNG 3. LꢫC KꢰT HꢱP DꢻA TRÊN MÔ HÌNH ꢜꢼ THꢽ............................
3.1. VꢭN ꢜꢪ LꢫC KꢰT HꢱP........................................................................... 73
3.2. LꢫC CꢯNG TÁC DꢻA TRÊN MÔ HÌNH ꢜꢼ THꢽ............................... 75
3.2.1. Phương pháp biꢗu diꢟn ꢀꢉ thꢺ.............................................................. 75
3.2.2. Phương pháp dꢈ ꢀoán trên ꢀꢉ thꢺ Ngưꢙi dùng- Sꢄn phꢾm ................ 76
3.2.2.1. ꢿꣀch ꢀꢉꣁꣂꣃꢺ Ngưꢙi ꣄ꣅng-ꣁꢄn phꢾm ꣂꣃnh ꣀc ꢀꢉꣁꣂꣃꢺꣁcon .............. 78
3.2.2.2. Phương ꣃꣀp dꢈꣁꢀꣀn trên ꢀꢉꣁꣂꣃꢺꣁG+................................................ 80
3.2.2.3. Phương ꣃꣀp dꢈꣁꢀꣀn trên ꢀꢉꣁꣂꣃꢺꣁG- ................................................ 83
4
3.2.2.4. Phương ꣃꣀp dꢈꣁꢀꣀn theo tꢞt ꢄꣁꢀꣀnh ꣀ...................................... 85
3.3. KꢰT HꢱP LꢫC CꢯNG TÁC VÀ LꢫC NꢯI DUNG ............................... 88
3.3.1. Biꢗu diꢟn ꢀꢉ thꢺ kꢃt hꢅp....................................................................... 88
3.3.2. Xây dꢈng liên kꢃt ngưꢙi dùng và nꢏi dung sꢄn phꢾm ....................... 91
3.3.3. Phương pháp dꢈ ꢀoán .......................................................................... 95
3.3.3.1. Lꢚc cꢏng tác dꢈa trên mô hình ꢀꢉ thꢺ kꢃt hꢅp............................. 95
3.3.3.2. Lꢚc nꢏi dung dꢈa trên mô hình ꢀꢉ thꢺ kꢃt hꢅp............................ 95
3.3.3.3. Phương pháp lꢚc kꢃt hꢅp ꢀơn giꢄn............................................... 96
3.3.3.4. Phương pháp kꢃt hꢅp ꢀꢇ xuꢞt ....................................................... 96
3.3.4. Thuꢊt toán lan truyꢇn mꢒng............................................................... 102
3.4. THꢹ NGHIꢬM VÀ KꢰT QUꢵ ............................................................... 103
3.4.1. Dꢓ liꢍu thꢐ nghiꢍm ............................................................................ 104
3.4.2. Phương pháp thꢐ nghiꢍm................................................................... 105
3.4.3. So sánh và ꢀánh giá dꢈa vào Precision, Recall và F-measure......... 105
3.4.4. Phân tích kꢃt quꢄ ................................................................................ 107
3.4.5. Trưꢙng hꢅp dꢓ liꢍu thưa.................................................................... 110
3.5. KꢰT LUꢲN ............................................................................................... 111
KꢰT LUꢲN....................................................................................................... 113
DANH MC CÁC CÔNG TRÌNH CÔNG B꣎............................................. 116
TÀI LIꢬU THAM KHꢵO (TIꢰNG VIꢬT):.................................................... 117
TÀI LIꢬU THAM KHꢵO (TIꢰNG ANH):.................................................... 117
PH LC 1 XÂY DꢻNG Hꢬ TH꣎NG Tꢨ VꢭN LꢻA CHꢫN PHIM DꢻA
TRÊN MÔ HÌNH ꢜꢼ THꢽ KꢰT HꢱP.................................................................127
5
DANH MꢄC CÁC CHꢅ VIꢆT TꢇT
KÝ HIꢈU
AM
AU
DIꢉN GIꢊI
Aspect Model (Mô hình ꢀꢺnh hưꢆng)
Active User (Ngưꢙi dùng hiꢍn thꢙi)
CBF
CF
Content-Based Filtering (Lꢚc dꢈa trên nꢏi dung)
Collaborative Filtering (Lꢚc cꢏng tác)
DAC
DBC
DF
Data Analyser Component (Thành phꢝn phân tích dꢓ liꢍu)
Data-Based Concept (Nguyên lý dꢈa vào dꢓ liꢍu)
Degree of Freedom (Sꢌ bꢊc tꢈ do)
EM
Expectation Maximization (Cꢈc ꢀꢒi k꣏ vꢚng)
Filtering Component (Thành phꢝn lꢚc)
FC
FMM
IBL
IDF
IE
Flexible Mixture Model (Mô hình pha trꢏn linh hoꢒt)
Instance-Based Learning (Hꢚc dꢈa trên ví dꢧ)
Inverse Document Frequency (Tꢝn suꢞt xuꢞt hiꢍn ngưꢅc)
Information Extraction (ꢿꣀch thông tin)
IF
Information Filtering (Lꢚc thông tin)
IO
Information Overload (Quá ꣂꢄi thông tin)
Information Retrieval (Truy vꢞn thông tin)
K Neareast Neighbor (K ngưꢙi láng giꢇng gꢝn nhꢞt)
KNN Pearson Correlation (Phương pháp K ngưꢙi láng giꢇng gꢝn
nhꢞt dꢈa trên ꢀꢏ tương quan Pearson)
IR
KNN
KPC
LC
Learning Component (Thành phꢝn hꢚc)
LL
Lazy Learning (Hꢚc lưꢙi)
LSE
LSM
MAE
MBF
MC
Least Square Estimation (ꢨꢆc lưꢅng bình phương tꢌi thiꢗu)
Latent Semantic Model (Mô hình ngꢓ nghꢎa ꢾn)
Mean Absolute Error (Trung bình giá trꢺ tuyꢍt ꢀꢌi lꢕi)
Memory-Based Filtering (Lꢚc dꢈa vào bꢏ nhꢆ)
Multiclass Classification (Phân loꢒi nhiꢇu lꢆp)
Model-Based Filtering (Lꢚc dꢈa vào mô hình)
Machine Learning (Hꢚc máy)
MDBF
ML
MM
Multinomial Model (Mô hình ꢀa thꢁc)
6
MMM
MTL
PCA
RS
Multinomial Mixture Model (Mô hình pha trꢏn ꢀa thꢁc)
Multi Task Learning (Hꢚc ꢀa nhiꢍm)
Principal Components Analysis (Phân tích thành phꢝn chính)
Recommender System (Hꢍ thꢌng tư vꢞn)
Standard Deviation (ꢜꢏ lꢍch chuꢾn)
SD
SDP
SE
Sparsity Data Problem (Vꢞn ꢀꢇ dꢓ liꢍu thưa)
Standard Error (Lꢕi chuꢾn)
STL
SVD
SVM
TF
Single Task Learning (Phương pháp hꢚc ꢀơn lꢢ)
Singular Value Decomposition (Phân ꣐꣑ꣁgiá trꢺ riêng)
Support Vector Machine (꣒ꣀy hꢕꣁtrꢅꣁ꣓꣔ctơ)
Term Frequency (Tꢝn suꢞt)
UMC
URP
User-Model Component (Thành phꢝn mô hình ngưꢙi dùng)
User Rating Profile (Hꢉꣁsơ ꢀꣀnh ꣀꣁngưꢙi ꣄ꣅng)
7
DANH MꢄC CÁC HÌNH
Hình 1.1. Kiꢃn trúc tꢠng quát cꢂa hꢍ thꢌng lꢚc thông tin....................................17
Hình 1.2. Các thành phꢝn cꢂa hꢍ thꢌng lꢚc cꢏng tác ...........................................31
Hình 2.1. Thuꢊt toán GentleBoost.........................................................................52
Hình 2.2. Phương pháp STL cho bꢌn bài toán phân loꢒi ꢀꢏc lꢊp nhau...............58
Hình 2.3. Phương pháp hꢚc MTL cho bꢌn bài toán phân loꢒi ꢀꢉng thꢙi............58
Hình 2.4. Thuꢊt toán MC-Boost cꢄi tiꢃn sꢐ dꢧng ꢀ꣕c trưng chung cho nhiꢇu bài
toán...........................................................................................................................62
Hình 2.5. Phương pháp duyꢍt tꢊp con các bài toán phân loꢒi..............................64
Hình 3.1. ꢜꢉ thꢺ Ngưꢙi dùng- Sꢄn phꢾm ..............................................................76
Hình 3.2. ꢜꢉ thꢺ G+ biꢗu diꢟn các ꢀánh giá thích hꢅp..........................................79
Hình 3.3. ꢜꢉ thꢺ G- biꢗu diꢟn các ꢀánh giá không thích hꢅp. ..............................80
Hình 3.4. Thuꢊt toán dꢈ ꢀoán trên ꢀꢉꣁꣂꣃꢺꣁG+.........................................................81
Hình 3.5. Thuꢊt toán dꢈ ꢀoán trên ꢀꢉꣁꣂꣃꢺꣁG- .........................................................84
Hình 3.6. Thuꢊt toán dꢈ ꢀoán trên tꢞt cꢄ ꢀánh giá................................................86
Hình 3.7. ꢜꢉ thꢺ kꢃt hꢅp ngưꢙi dùng và nꢏi dung sꢄn phꢾm...............................90
Hình 3.8. ꢜꢉ thꢺ thiꢃt lꢊp liên kꢃt giꢓa ngưꢙi dùng và ꢀ꣕c trưng nꢏi dung ........94
Hình 3.9. Thuꢊt toán dꢈ ꢀoán trên ꢀꢉ thꢺ kꢃt hꢅp.................................................99
Hình 3.10. Thuꢊt toán lan truyꢇn mꢒng...............................................................103
Hình 3.11. Giá trꢺ F-Measure ꢶ các mꢁc ꢀꢏ thưa thꢆt dꢓ liꢍu...........................111
8
DANH MꢄC CÁC BꢊNG
Bꢄng 1.1. Phân loꢒi các phương pháp tư vꢞn và mꢏt sꢌ nghiên cꢁu ꢀiꢗn hình...23
Bꢄng 1.2. Ví dꢧ vꢇ ma trꢊn ꢀánh giá cꢂa lꢚc cꢏng tác..........................................31
Bꢄng 2.1. Ma trꢊn ꢀánh giá ngưꢙi dùng.................................................................45
Bꢄng 2.2. Ma trꢊn ꢀꢝu vào cꢂa lꢚc cꢏng tác..........................................................49
Bꢄng 2.3. Ma trꢊn ꢀꢝu vào bài toán phân loꢒi theo ngưꢙi dùng...........................50
Bꢄng 2.4. Ma trꢊn ꢀꢝu vào bài toán phân loꢒi theo sꢄn phꢾm..............................50
Bꢄng 2.5. Kꢃt quꢄ thꢐ nghiꢍm vꢆi MovieLens .....................................................68
Bꢄng 2.6. Kꢃt quꢄ thꢐ nghiꢍm vꢆi EachMovie .....................................................68
Bꢄng 2.7. Các tham sꢌ thꢌng kê vꢆi K=5 ꢀánh giá biꢃt trưꢆc..............................70
cꢂa tꢊp dꢓ liꢍu MovieLens......................................................................................70
Bꢄng 2.8. Các tham sꢌ thꢌng kê vꢆi K=10 ꢀánh giá biꢃt trưꢆc............................70
cꢂa tꢊp dꢓ liꢍu MovieLens......................................................................................70
Bꢄng 2.9. Các tham sꢌ thꢌng kê vꢆi K=20 ꢀánh giá biꢃt trưꢆc............................71
cꢂa tꢊp dꢓ liꢍu MovieLens......................................................................................71
Bꢄng 2.10. Các tham sꢌ thꢌng kê vꢆi K=5 ꢀánh giá biꢃt trưꢆc............................71
cꢂa tꢊp dꢓ liꢍu EachMovie .....................................................................................71
Bꢄng 2.11. Các tham sꢌ thꢌng kê vꢆi K=10 ꢀánh giá biꢃt trưꢆc .........................71
cꢂa tꢊp dꢓ liꢍu EachMovie .....................................................................................71
Bꢄng 2.12. Các tham sꢌ thꢌng kê vꢆi K=20 ꢀánh giá biꢃt trưꢆc .........................72
cꢂa tꢊp dꢓ liꢍu EachMovie .....................................................................................72
Bꢄng 3.1. Ma trꢊn ꢀánh giá R.................................................................................74
Bꢄng 3.2. Ma trꢊn Sꢄn phꢾm – Nꢏi dung Y...........................................................74
Bꢄng 3.3. Ma trꢊn X biꢗu diꢟn ꢀánh ꢀꢉ thꢺ Ngưꢙi dùng- Sꢄn phꢾm...................76
Bꢄng 3.4. Ma trꢊn X+ biꢗu diꢟn ꣀc ꢀánh giá thích hꢅp........................................79
Bꢄng 3.5. Ma trꢊn X- biꢗu diꢟn ꣀc ꢀánh giá không thích hꢅp............................80
Bꢄng 3.6. Ma trꢊn ꢀánh giá R.................................................................................89
Bꢄng 3.7. Ma trꢊn Ngưꢙi dùng- Sꢄn phꢾm X........................................................89
9
Bꢄng 3.8. Ma trꢊn Sꢄn phꢾm- Nꢏi dung Y ............................................................90
Bꢄng 3.9. Giá trꢺ Precision, Recall, F-Measure kiꢗm nghiꢍm trên tꢊp
MovieLens1 ...........................................................................................................106
Bꢄng 3.10. Giá trꢺ Precision, Recall, F-Measure kiꢗm nghiꢍm trên tꢊp
MovieLens2 ...........................................................................................................107
Bꢄng 3.11. Kꢃt quꢄ kiꢗm nghiꢍm paired t-test vꢆi K=10 sꢄn phꢾm cꢝn tư vꢞn......
trên tꢊp MovileLens1 ............................................................................................108
Bꢄng 3.12. Kꢃt quꢄ kiꢗm nghiꢍm paired t-test vꢆi K=20 sꢄn phꢾm cꢝn tư vꢞn......
trên tꢊp MovileLens1 ............................................................................................109
Bꢄng 3.13. Kꢃt quꢄ kiꢗm nghiꢍm paired t-test vꢆi K=50 sꢄn phꢾm cꢝn tư vꢞn......
trên tꢊp MovieLens1..............................................................................................109
Bꢄng 3.14. Kꢃt quꢄ kiꢗm nghiꢍm paired t-test vꢆi K=10 sꢄn phꢾm cꢝn tư vꢞn......
trên tꢊp MovileLens2 ............................................................................................109
Bꢄng 3.15. Kꢃt quꢄ kiꢗm nghiꢍm paired t-test vꢆi K=20 sꢄn phꢾm cꢝn tư vꢞn......
trên tꢊp MovileLens2 ............................................................................................110
Bꢄng 3.16. Kꢃt quꢄ kiꢗm nghiꢍm paired t-test vꢆi K=50 sꢄn phꢾm cꢝn tư vꢞn......
trên tꢊp MovileLens2 ............................................................................................110
10
PHꢋN Mꢌ ꢁꢋU
1. Tính cꢍp thiꢎt cꢏa luꢐn án
Vꢞn ꢀꢇ quá tꢄi thông tin (Information Overload) ꢀưꢅc J.Denning nêu ra
lꢝn ꢀꢝu tiên vào nꢣm 1982 [49]. Vꢆi nhꢓng lý l꣖ và bꢸng chꢁng thuyꢃt phꢧc,
Denning kh꣗ng ꢀꢺnh khꢄ nꢣng lꢈa chꢚn thông tin hꢓu ích cꢂa ngưꢙi dùng máy
tính s꣖ g꣕p khó khꢣn nghiêm trꢚng bꢶi sꢈ gia tꢣng không ngꢋng lưꢅng thông tin
khꢠng lꢉ ꢀꢃn tꢋ hàng trꢣm kênh truyꢇn hình, hàng triꢍu bꢣng hình, sách, báo, tꢒp
chí, tài liꢍu thông qua các hꢍ thꢌng giao dꢺch ꢀiꢍn tꢐ. Vꢞn ꢀꢇ Denning công bꢌ
ngay lꢊp tꢁc ꢀưꢅc cꢏng ꢀꢉng các nhà khoa hꢚc máy tính nhiꢍt tình hưꢶng ꢁng và
tꢊp trung nghiên cꢁu phương pháp hꢒn chꢃ ꢄnh hưꢶng cꢂa vꢞn ꢀꢇ quá tꢄi thông tin
ꢀꢌi vꢆi ngưꢙi dùng, thúc ꢀꢾy mꢏt lꢎnh vꢈc nghiên cꢁu mꢆi ꢀó là lꢚc thông tin.
Lꢚc thông tin (Information Filtering) là lꢎnh vꢈc nghiên cꢁu các quá trình
꣘ꢚc ꣙ꢑꣁnhꢓng thông tin không thích hꢅp và cung cꢞp thông tin thích hꢅp ꢀꢃn vꢆi
mꢕi ngưꢙi dùng. Lꢚc thông tin ꢀưꢅc xem là phương pháp hiꢍu quꢄ hꢒn chꢃ tình
trꢒng quá tꢄi thông tin ꢀưꢅc quan tâm nhiꢇu nhꢞt hiꢍn nay.
Lꢚc thông tin ꢀưꢅc tiꢃp cꢊn theo hai xu hưꢆng chính, ꢀó là lꢚc dꢈa trên tri
thꢁc và lꢚc dꢈa trên dꢓ liꢍu. Trong trưꢙng hꢅp dꢈa vào tri thꢁc, hꢍ thꢌng thꢈc
hiꢍn lꢚc thông tin bꢸng cách sꢐ dꢧng tꢊp luꢊt xây dꢈng trưꢆc. Nhưꢅc ꢀiꢗm cꢂa
phương pháp này là ꢀꢗ có ꢀưꢅc mꢏt tꢊp luꢊt ꢀꢂ tꢌt ꢀòi hꢑi chi phí nhiꢇu thꢙi gian
và kinh nghiꢍm cꢂa chuyên gia; viꢍc cꢊp nhꢊt các luꢊt không thꢗ thꢈc hiꢍn ꢀưꢅc
tꢈ ꢀꢏng vì nguꢉn dꢓ liꢍu vào thưꢙng không có cꢞu trúc và luôn trong trꢒng thái
biꢃn ꢀꢏng. Chính vì vꢊy, lꢚc dꢈa trên tri thꢁc có xu hưꢆng ít ꢀưꢅc sꢐ dꢧng.
ꢜꢌi vꢆi các hꢍ thꢌng lꢚc dꢈa trên dꢓ liꢍu, các quy tꢛc lꢚc ꢀưꢅc xây dꢈng tꢋ
dꢓ liꢍu mà hꢍ thꢌng thu thꢊp ꢀưꢅc bꢸng các k thuꢊt thꢌng kê ho꣕c các thuꢊt toán
hꢚc máy. Cách tiꢃp cꢊn này cho phép tꢈ ꢀꢏng cꢊp nhꢊt các quy tꢛc lꢚc và không
lꢍ thuꢏc vào tri thꢁc chuyên gia. Hꢍ thꢌng lꢚc dꢈa trên dꢓ liꢍu có khꢄ nꢣng thích
nghi cao và tꢊn dꢧng ꢀưꢅc nguꢉn dꢓ liꢍu. Chính vì vꢊy, cách tiꢃp cꢊn này ꢀưꢅc
quan tâm nghiên cꢁu hơn so vꢆi phương pháp dꢈa vào tri thꢁc.
11
Hꢍ tư vꢞn (Recommender System) là hꢍ thꢌng có khꢄ nꢣng tꢈ ꢀꢏng phân
tích, 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. Nhiꢇu hꢍ tư vꢞn ꢀã ꢀưꢅc thương mꢒi hóa và
triꢗn khai thành công, tiêu biꢗu là hꢍ tư vꢞn cꢂa các hãng Amazon.com,
Netflix.com, Procter & Gamble.
Hꢍ tư vꢞn ꢀưꢅc xây dꢈng dꢈa trên hai k thuꢊt lꢚc thông tin chính: Lꢚc
theo nꢏi dung (Content-Based Filtering) và lꢚc cꢏng tác (Collaborative Filtering).
Lꢚc theo nꢏi dung khai thác nhꢓng khía cꢒnh liên quan ꢀꢃn nꢏi dung thông tin sꢄn
phꢾm ngưꢙi dùng ꢀã tꢋng sꢐ dꢧng hay truy nhꢊp trong quá khꢁ ꢀꢗ tꢒo nên tư vꢞn.
Trái lꢒi, lꢚc cꢏng tác khai thác nhꢓng khía cꢒnh liên quan ꢀꢃn thói quen sꢐ dꢧng
sꢄn phꢾm cꢂa cꢏng ꢀꢉng ngưꢙi dùng có cùng sꢶ thích ꢀꢗ tꢒo nên tư vꢞn.
Trong quá trình nghiên cꢁu và ꢁng dꢧng, bên cꢒnh nhꢓng vꢞn ꢀꢇ chung
cꢂa bài toán lꢚc thông tin thông thưꢙng, xuꢞt hiꢍn mꢏt sꢌ vꢞn ꢀꢇ mang tính ꢀ꣕c
thù ꢀꢌi vꢆi thông tin tư vꢞn như tính thưa thꢆt dꢓ liꢍu huꢞn luyꢍn, xꢐ lý ngưꢙi
dùng mꢆi, hàng hóa mꢆi, yêu cꢝu kꢃt hꢅp các dꢒng thông tin khác nhau, làm viꢍc
vꢆi dꢓ liꢍu kích thưꢆc lꢆn ꢀưꢅc cꢊp nhꢊt thưꢙng xuyên. M꣕c dù ꢀã có nhiꢇu
nghiên cꢁu nhꢛm tꢆi nꢏi dung này, nhưng ꢀây vꢘn là nhꢓng vꢞn ꢀꢇ nghiên cꢁu
mꢶ, có tính thꢙi sꢈ và thu hút sꢈ qua tâm cꢂa cꢏng ꢀꢉng nghiên cꢁu.
ꢜꢇ tài “Phát triển một số phương pháp lọc thông tin cho hệ tư vấn” ꢀưꢅc
thꢈc hiꢍn trong khuôn khꢠ luꢊn án tiꢃn sꢎ chuyên ngành khoa hꢚc máy tính nhꢸm
góp phꢝn giꢄi quyꢃt mꢏt sꢌ vꢞn ꢀꢇ còn tꢉn tꢒi cꢂa lꢚc thông tin cho các hꢍ tư vꢞn.
2. Mꢑc tiêu cꢏa luꢐn án
Mꢧc tiêu cꢂa luꢊn án là nghiên cꢁu áp dꢧng, cꢄi tiꢃn mꢏt sꢌ k thuꢊt hꢚc
máy nhꢸm cꢄi thiꢍn ꢀꢏ chính xác cꢂa lꢚc thông tin trong các hꢍ tư vꢞn. ꢜ꣕c biꢍt,
nghiên cꢁu tꢊp trung vào viꢍc nâng cao kꢃt quꢄ dꢈ ꢀoán nhu cꢝu ngưꢙi dùng
trong trưꢙng hꢅp dꢓ liꢍu thưa, cꢡng như trong trưꢙng hꢅp có cꢄ dꢓ liꢍu sꢶ thích
ngưꢙi dùng và thông tin nꢏi dung sꢄn phꢾm.
12
3. Các ꢒóng góp cꢏa luꢐn án
Đóng góp thứ nhất của luận án là đề xuất áp dụng một kỹ thuật Boosting
cải tiến cho nhiều bài toán phân loại vào lọc cộng tác [3, 81], bao gꢉm:
-
-
-
ꢜꢇ xuꢞt phương pháp giꢄi quyꢃt bài toán lꢚc cꢏng tác bꢸng k thuꢊt
Boosting dꢈa trên biꢗu diꢟn dꢓ liꢍu phù hꢅp cho bài toán phân loꢒi cꢂa
hꢚc máy;
p ꣄ꢧng k thuꢊt Boosting ꢄi tiꢃn cho nhiꢇu bài toán phân loꢒi bꢸng
phương pháp hꢚc ꢀa nhiꢍm dꢈa trên gꢌc quyꢃt ꢀꢺnh (Decision Stump) cho
꣘ꢚc cꢏng ꣂꣀc nhꢸm ꣃꢒn chꢃꣁꢄnh hưꢶng ꢂa vꢞn ꢀꢇꣁdꢓꣁliꢍu thưa;
Thꢐ nghiꢍm và ꢀánh giá kꢃt quꢄ phương pháp cꢄi tiꢃn, ꢀ꣕c biꢍt chú trꢚng
ꢀánh giá kꢃt quꢄ dꢈ ꢀoán trong trưꢙng hꢅp dꢓ liꢍu thưa cꢂa lꢚc cꢏng tác.
Hꢝu hꢃt các phương pháp hꢚc máy cho lꢚc cꢏng tác hiꢍn nay ꢀꢇu thꢈc hiꢍn
nhꢓng nhiꢍm vꢧ hꢚc ꢀơn lꢢ (Single Task Learning) vꢆi giꢄ thiꢃt dꢓ liꢍu huꢞn
luyꢍn và dꢓ liꢍu kiꢗm tra ꢀưꢅc mô tꢄ trong cùng mꢏt không gian các giá trꢺ ꢀ꣕c
trưng vꢆi cùng mꢏt phân bꢌ. Khi phân bꢌ thay ꢀꢠi, tꢊp dꢓ liꢍu huꢞn luyꢍn và dꢓ
liꢍu kiꢗm tra phꢄi xây dꢈng lꢒi. Trên thꢈc tꢃ, viꢍc làm này không phꢄi lúc nào
cꢡng thꢈc hiꢍn ꢀưꢅc làm cho kꢃt quꢄ dꢈ ꢀoán các phương pháp kém tin cꢊy.
M꣕t khác, tꢒi mꢕi thꢙi ꢀiꢗm, phương pháp chꢔ thꢈc hiꢍn mꢏt nhiꢍm vꢧ ꢀơn
lꢢ, kꢃt quꢄ cꢂa mꢕi nhiꢍm vꢧ cꢧ thꢗ hoàn toàn ꢀꢏc lꢊp vꢆi các nhiꢍm vꢧ khác.
Chính vì vꢊy, phương pháp tiꢃp cꢊn này s꣖ g꣕p khó khꢣn khi dꢓ liꢍu huꢞn luyꢍn
thưa thꢆt. ꢜꢗ giꢄi quyꢃt vꢞn ꢀꢇ này, luꢊn án ꢀꢇ xuꢞt áp dꢧng phương pháp hꢚc ꢀa
nhiꢍm (Multi-Task Learning) cho lꢚc cꢏng tác nhꢸm sꢐ dꢧng tꢊp thông tin chung
giꢓa các nhiꢍm vꢧ hꢚc ꢀơn lꢢ. Tꢊp thông tin chung tìm ꢀưꢅc ꢀóng vai trò chia sꢢ
và bꢠ sung thông tin vào quá trình huꢞn luyꢍn cho mꢕi ngưꢙi dùng khác nhau,
góp phꢝn nâng cao kꢃt quꢄ dꢈ ꢀoán và hꢒn chꢃ ꢀưꢅc ꢄnh hưꢶng cꢂa tình trꢒng dꢓ
liꢍu thưa trong lꢚc cꢏng tác.
13
Đóng góp thứ hai của luận án là đề xuất một phương pháp lọc kết hợp dựa
trên mô hình đồ thị [2, 80], bao gꢉm:
-
Biꢗu diꢟn mꢌi liên hꢍ giꢓa các ꢀꢌi tưꢅng tham gia hꢍ thꢌng lꢚc (Ngưꢙi
dùng, sꢄn phꢾm và nꢏi dung sꢄn phꢾm) dꢈa vào mô hình ꢀꢉ thꢺ;
Xây dꢈng phương pháp dꢈ ꢀoán cho lꢚc cꢏng tác dꢈa trên mô hình ꢀꢉ thꢺ.
Xây dꢈng phương pháp trích chꢚn ꢀ꣕c trưng nꢏi dung sꢄn phꢾm dꢈa trên
thói quen sꢐ dꢧng sꢄn phꢾm cꢂa ngưꢙi dùng;
-
-
-
-
-
Cá nhân hóa ꢄnh hưꢶng cꢂa các ꢀ꣕c trưng nꢏi dung ꢀꢌi vꢆi thói quen sꢐ
dꢧng sꢄn phꢾm cꢂa ngưꢙi dùng;
Áp dꢧng thuꢊt toán lan truyꢇn mꢒng trên ꢀꢉ thꢺ kꢃt hꢅp ꢀꢗ dꢈ ꢀoán, phân
bꢠ các sꢄn phꢾm cho mꢕi ngưꢙi dùng;
Thꢐ nghiꢍm và ꢀánh giá kꢃt quꢄ phương pháp ꢀꢇ xuꢞt.
ꢜꢗ tꢊn dꢧng lꢅi thꢃ cꢂa mꢕi phương pháp lꢚc, luꢊn án ꢀꢇ xuꢞt phương pháp
kꢃt hꢅp giꢓa lꢚc cꢏng tác và lꢚc nꢏi dung dꢈa trên biꢗu diꢟn ꢀꢉ thꢺ các ꢀꢌi tưꢅng
tham gia quá trình lꢚc, bao gꢉm: ngưꢙi dùng, sꢄn phꢾm, ꢀánh giá ngưꢙi dùng và
nꢏi dung sꢄn phꢾm.
ꢜꢗ tránh nhꢓng hꢒn chꢃ cꢂa các phương pháp lꢚc kꢃt hꢅp trưꢆc ꢀây (phương
pháp trích chꢚn ꢀ꣕c trưng nꢏi dung chꢔ dꢈa vào nꢏi dung sꢄn phꢾm), luꢊn án ꢀꢇ
xuꢞt phương pháp trích chꢚn ꢀ꣕c trưng nꢏi dung dꢈa vào thói quen ngưꢙi dùng
ꢀꢌi vꢆi sꢄn phꢾm. Dꢈa trên phương pháp này, nhꢓng ꢀ꣕c trưng nꢏi dung ꢀưꢅc
xem là quan trꢚng vꢆi mꢕi ngưꢙi dùng ꢀưꢅc giꢓ lꢒi ꢀꢗ phꢧc vꢧ mꢧc tiêu dꢈ ꢀoán.
Viꢍc tìm ra nhꢓng ꢀ꣕c trưng có ꢄnh hưꢶng quan trꢚng ꢀꢃn thói quen ngưꢙi dùng
không chꢔ làm giꢄm chi phí tính toán cꢂa phương pháp (vì sꢌ lưꢅng các ꢀ꣕c trưng
nꢏi dung quan trꢚng ꢀꢌi vꢆi mꢕi ngưꢙi dùng còn lꢒi rꢞt ít), mà còn loꢒi bꢑ ꢀưꢅc
nhꢓng ꢀ꣕c trưng không ꢄnh hưꢶng ho꣕c ꢄnh hưꢶng không tꢌt ꢀꢃn thói quen sꢐ
dꢧng sꢄn phꢾm cꢂa ngưꢙi dùng.
Phương pháp dꢈ ꢀoán ꢀưꢅc ꢀưa vꢇ bài toán tìm kiꢃm trên ꢀꢉ thꢺ không chꢔ
tꢊn dꢧng ꢀưꢅc các thuꢊt toán hiꢍu quꢄ trên ꢀꢉ thꢺ mà còn tꢊn dꢧng ꢀưꢅc mꢌi liên
hꢍ gián tiꢃp giꢓa các ꢀꢌi tưꢅng tham gia hꢍ thꢌng.
14
Phương pháp lꢚc kꢃt hꢅp ꢀꢇ xuꢞt ꢀưꢅc thꢐ nghiꢍm và áp dꢧng cho hꢍ thꢌng
tư vꢞn lꢈa chꢚn phim ꢀã cho lꢒi kꢃt quꢄ dꢈ ꢀoán tꢌt. Hꢍ thꢌng cho phép xem,
ꢀánh giá, bình luꢊn và gꢅi ý nhꢓng phim ꢀưꢅc xem hꢅp vꢆi sꢶ thích ꢁng vꢆi mꢕi
ngưꢙi dùng. Hꢍ thꢌng gꢉm bꢌn chꢁc nꢣng chính: Chꢁc nꢣng cꢊp nhꢊt, phân tích
thông tin ngưꢙi dùng và sꢄn phꢾm; chꢁc nꢣng hꢚc; chꢁc nꢣng lꢚc và chꢁc nꢣng tư
vꢞn. Trong ꢀó, chꢁc nꢣng hꢚc và lꢚc ꢀưꢅc thꢈc hiꢍn theo phương pháp lꢚc kꢃt
hꢅp ꢀꢇ xuꢞt.
4. Bꢓ cꢑc cꢏa luꢐn án
Nꢏi dung luꢊn án ꢀưꢅc xây dꢈng thành ba chương và mꢏt phꢧ lꢧc, trong ꢀó:
Chꢔơng 1. giꢆi thiꢍu tꢠng quan vꢇ lꢚc thông tin. Trình bày nhꢓng nghiên
cꢁu cơ bꢄn cꢂa lꢚc thông tin, các phương pháp lꢚc thông tin cho hꢍ tư vꢞn và
nhꢓng vꢞn ꢀꢇ cꢝn tiꢃp tꢧc nghiên cꢁu cꢂa mꢕi phương pháp. Trên cơ nhꢓng
nghiên cꢁu cơ bꢄn, xác ꢀꢺnh rõ hưꢆng nghiên cꢁu cꢂa ꢀꢇ tài. Mꢏt kꢃt quꢄ nghiên
cꢁu cơ bꢄn cꢂa ꢀꢇ tài ꢀưꢅc công bꢌ trong [4].
Chꢔơng 2. trình bày phương pháp hꢒn chꢃ ꢄnh hưꢶng cꢂa vꢞn ꢀꢇ dꢓ liꢍu
thưa trong lꢚc cꢏng tác bꢸng phương pháp hꢚc ꢀa nhiꢍm. Nꢏi dung trình bày
trong chương này ꢀưꢅc tꢠng hꢅp dꢈa trên kꢃt ꢄꣁnghiên cꢁu ꢀ꣑ꣁcông bꢌꣁtrong [3,
81].
Chꢔơng 3. trình bày phương pháp kꢃt hꢅp giꢓa lꢚc cꢏng tác và lꢚc nꢏi dung
dꢈa trên mô hình ꢀꢉ thꢺ. Nꢏi dung trình bày trong chương này ꢀưꢅc tꢠng hꢅp tꢋ
kꢃt quꢄ nghiên cꢁu ꢀ꣑ꣁcông bꢌꣁtrong [2, 80]. Cuꢌi cùng là mꢏt sꢌ kꢃt luꢊn và ꢀꢇ
xuꢞt các nghiên cꢁu tiꢃp theo.
Phꢕn phꢑ lꢑc. trình bày thiꢃt kꢃ và xây dꢈng ꢁng dꢧng cho phương pháp lꢚc
kꢃt hꢅp ꢀưꢅc ꢀꢇ xuꢞt trong Chương 3.
15
CHƯƠNG 1
TꢖNG QUAN Vꢗ LꢘC THÔNG TIN CHO Hꢈ TƯ VꢙN
Chương này trình bày nhꢓng vꢞn ꢀꢇ tꢠng quan vꢇ lꢚc thông tin, các
phương pháp lꢚc thông tin cho hꢍ tư vꢞn cùng vꢆi nhꢓng hꢒn chꢃ tꢉn tꢒi mꢕi
phương pháp. Trên cơ sꢶ nhꢓng nghiên cꢁu cơ bꢄn, xác ꢀꢺnh rõ hưꢆng nghiên
cꢁu cꢧ thꢗ cꢂa ꢀꢇ tài. Nhꢓng kꢃt quꢄ nghiên cꢁu cꢂa ꢀꢇ tài s꣖ ꢀưꢅc trình bày
trong các chương tiꢃp theo cꢂa luꢊn án.
Do lꢚc thông tin là lꢎnh vꢈc nghiên cꢁu có phꢒm vi rꢏng lꢆn, sau khi trình
bày ngꢛn vꢇ lꢚc thông tin nói chung, luꢊn án tꢊp trung trình bày vào chꢂ ꢀꢇ
nghiên cꢁu chính cꢂa luꢊn án ꢀó là vꢞn ꢀꢇ lꢚc trong các hꢍ tư vꢞn.
1.1. GIꢚI THIꢈU CHUNG
Lꢚc thông tin (IF) là lꢎnh vꢈc nghiên cꢁu các quá trình cung cꢞp thông tin
thích hꢅp, ngꢣn ngꢋa và gꢖ bꢑ thông tin không thích hꢅp cho mꢕi ngưꢙi dùng
[75, 99]. 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 tính. 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 ꣀy
ꣂ꣠m kiꢃm (Search Engine), lꢚc e-mail dꢈa trên nꢏi dung thư ꣓ꣁ 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 thích 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 thích hꢅp ꢀꢌi vꢆi ngưꢙi dùng. Nguyên lý phꢠ biꢃn ꢀưꢅc dùng trong
16
lꢚc thông tin là nguyên lý dꢈa vào dꢓ liꢍu (Data-Based) và nguyên lý dꢈa vào tri
thꢁc (Knowledge-Based) [99]. 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ꢶ thích 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) [75].
1.1.1. 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
[99]: Thành phꢝn phân tích dꢓ liꢍu (Data Analyser Component), thành phꢝn mô
hình ngưꢙi dùng (User Model Component), thành phꢝn hꢚc (Learning
Component) và thành phꢝn lꢚc ( Filtering Component).
Thành phꢝn mô
hình ngưꢙi dùng
Thông tin ꢀ꣕c tꢄ
ngưꢙi dùng
Nhà cung cꢞp
thông tin
Ngưꢙi dùng
Phꢄn hꢉi
ngưꢙi dùng
Sꢄn phꢾm
phù hꢅp vꢆi
ngưꢙi dùng
Thông tin các
sꢄn phꢾm
Hꢉ sơ ngưꢙi
dùng
Cꢊp nhꢊt thông
tin huꢞn luyꢍn
Biꢗu diꢟn Thông
tin sꢄn phꢾm
Thành phꢝn
hꢚc
Thành phꢝn
phân tích dꢓ
liꢍu
Thành phꢝn lꢚc
Biꢗu diꢟn Thông
tin sꢄn phꢾm
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 tích 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 (ví dꢧ tài liꢍu, thư ꢀiꢍn tꢐ, sách, báo, tꢒp
chí, phim, ꢄnh...). Dꢓ liꢍu vꢇ sꢄn phꢾm ꢀưꢅc phân tích và biꢗu diꢟn theo mꢏt
khuôn dꢒng thích hꢅp, sau ꢀó chuyꢗn ꢀꢃn bꢏ phꢊn lꢚc như Hình 1.1.
17
• 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 tính, 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 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 thích
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.2. Lꢝc thông tin và truy vꢍn thông tin
Belkin và Croft [75] 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 ꢀꢇ. Chính 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
18
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 thích 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 thích 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 chính ꢀưꢅ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ꢶ thích, thói quen hay nhꢓng ꢀ꣕c trưng xã hꢏi, tꢈ nhiên khác
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.1.3. Hꢝc máy và lꢝc thông tin
Hꢝc máy (Machine Learning). Hꢚc máy là lꢎnh vꢈc nghiên cꢁu cꢂa trí
tuꢍ nhân tꢒo tꢊp trung vào viꢍc ra quyꢃt ꢀꢺnh ho꣕c phát hiꢍn tri thꢁc dꢈa trên
dꢓ liꢍu [1, 85, 97]. Các k thuꢊt hꢚc máy ꢀưꢅc sꢐ dꢧng trong viꢍc dꢈ ꢀoán (ví
19
dꢧ dꢈ ꢀoán nhu cꢝu ngưꢙi dùng), phân loꢒi, xꢃp hꢒng (ví dꢧ phân loꢒi, xꢃp
hꢒng thông tin, phân loꢒi ngưꢙi dùng).
Lꢚc thông tin có cùng chung mꢧc tiêu vꢆi hꢚc máy (ML) ꢀó là cung cꢞp
thông tin cꢝn thiꢃt cho mꢕi ngưꢙi dùng dꢈa trên nhꢓng gì có thꢗ hꢚc tꢋ nhꢓng
kinh nghiꢍm cꢂa cꢏng ꢀꢉng trong quá khꢁ. Chính vì vꢊy, thành phꢝn lꢚc thông
tin ꢀưꢅc xây dꢈng theo hai cách tiꢃp cꢊn chính cꢂa hꢚc máy: lọc dựa trên tri
thức và lọc dựa trên dữ liệu.
Lꢝc dꢞa trên tri thꢟc (KBC). Thông tin ꢀưꢅc lꢚc bꢸng cách sꢐ dꢧng
các luꢊt. Mꢕi luꢊt biꢗu diꢟn nhu cꢝu thông tin ngưꢙi dùng ho꣕c mꢏt mꢘu thông
tin cꢝn lꢚc. Mꢕi quyꢃt ꢀꢺnh lꢚc s꣖ ꢀưꢅc thꢈc hiꢍn nꢃu nhꢓng ꢀiꢇu kiꢍn cꢂa luꢊt
ꢀưa ra ꢀưꢅc thꢑa mãn. Ví dꢧ trong hꢍ thꢌng lꢚc thư ꢀiꢍn tꢐ, mꢕi luꢊt có thꢗ
ꢀưꢅc ꢀꢺnh nghꢎa và áp dꢧng cho các trưꢙng tiêu ꢀꢇ thư (Ngưꢙi gꢐi, ngày gꢐi,
chꢂ ꢀꢇ...).
ꢜiꢗm quan trꢚng cꢂa cách tiꢃp cꢊn này là các luꢊt do ngưꢙi dùng
(chuyên gia) cung cꢞp dꢈa trên kinh nghiꢍm hay tri thꢁc cꢂa mình. ꢨu ꢀiꢗm
cꢂa cách tiꢃp cꢊn này là hꢍ thꢌng s꣖ ꢀơn giꢄn hơn do không cꢝn sꢐ dꢧng các k
thuꢊt hꢚc tꢈ ꢀꢏng. Nhưꢅc ꢀiꢗm là viꢍc xây dꢈng các luꢊt lꢚc tꢌt ꢀòi hꢑi nhiꢇu
thꢙi gian, kinh nghiꢍm cꢂa chuyên gia. Viꢍc cꢊp nhꢊt các luꢊt cꢡng không thꢗ
thꢈc hiꢍn tꢈ ꢀꢏng. Do nhưꢅc ꢀiꢗm này, lꢚc dꢈa trên tri thꢁc có xu hưꢆng ít
ꢀưꢅc sꢐ dꢧng.
Lꢝc dꢞa trên dꢠ liꢜu (DBC). Khác vꢆi lꢚc dꢈa trên tri thꢁc, trong cách
tiꢃp cꢊn dꢈa trên dꢓ liꢍu, các quy tꢛc cho thành phꢝn lꢚc ꢀưꢅc xây dꢈng tꢋ dꢓ
liꢍu mà hꢍ thꢌng thu thꢊp ꢀưꢅc bꢸng cách sꢐ dꢧng k thuꢊt thꢌng kê ho꣕c các
thuꢊt toán hꢚc máy. Cách tiꢃp cꢊn này cho phép tꢒo ra và cꢊp nhꢊt quy tꢛc lꢚc
thông tin mà không cꢝn tꢆi tri thꢁc chuyên gia, ꢀꢉng thꢙi chꢞt lưꢅng lꢚc có thꢗ
tꢌt hơn so vꢆi cách tiꢃp cꢊn dꢈa trên tri thꢁc, ꢀ꣕c biꢍt khi có lưꢅng dꢓ liꢍu lꢆn
và thưꢙng xuyên biꢃn ꢀꢏng.
20
Do viꢍc thu thꢊp dꢓ liꢍu ngày càng nhanh và dꢟ, lꢚc dꢈa trên dꢓ liꢍu
ꢀang dꢝn trꢶ thành cách tiꢃp cꢊn chính trong lꢚc thông tin. Chính vì vậy, luận
án sẽ tập trung nghiên cứu kỹ thuật lọc thông tin cho hệ tư vấn dựa trên cách
tiếp cận này.
1.1.4. Lꢝc thông tin và các hꢜ tꢔ vꢍn
Hꢜ tꢔ vꢍn (RS) 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 [25, 26,
40, 51, 53, 54, 67, 70, 83].
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 thích 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. Chính 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 [7].
Do là trưꢙng hꢅp riêng cꢂa hꢍ thꢌng lꢚc tin, hꢍ tư vꢞn có nhiꢇu ꢀ꣕c ꢀiꢗm
cꢂa hꢍ lꢚc tin tiêu biꢗu. Tuy nhiên, do ꢀ꣕c ꢀiꢗm cꢂa dꢓ liꢍu, ngưꢙi dùng và nꢏi
dung, hꢍ tư vꢞn cꢡng như các k thuꢊt ꢀưꢅc sꢐ dꢧng có mꢏt sꢌ khác biꢍt nhꢞt
ꢀꢺnh. Tùy vào phương pháp lꢚc tin, các hꢍ tư vꢞn ꢀưꢅc phân loꢒi thành ba loꢒi:
Tư vấn dựa vào phương pháp lọc theo nội dung (Content-Based Filtering
Recommendation), tư vấn dựa vào phương pháp lọc cộng tác (Collaborative
Filtering Recommendation) và tư vấn dựa vào phương pháp lọc kết hợp (Hybrid
Filtering Recommendation)[36, 107].
21
• Phương pháp tư vấn dựa vào lọc nội dung: 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: Ngưꢙi dùng s꣖ ꢀưꢅc tư vꢞn
mꢏt sꢌ sꢄn phꢾm cꢂa nhꢓng ngưꢙi có sꢶ thích giꢌng hꢚ ꢀã tꢋng ưa thích
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ꢶ
thích giꢌng hꢚ ꢀã tꢋng ưa thích trong quá khꢁ.
Mꢕi phương pháp lꢚc áp dꢧng cho các hꢍ tư vꢞn ꢀưꢅc phân thành hai
hưꢆng tiꢃp cꢊn [36, 107]: lꢚc dꢈa vào bꢏ nhꢆ (Memory-Based Filtering) và lꢚc
dꢈa vào mô hình (Model-Based Filtering).
• Các phương pháp lọc dựa vào bộ nhớ (MBF) [21, 22, 29, 52, 57, 63, 64,
69]: ꢜây là phương pháp lưu lꢒi toàn bꢏ các ví dꢧ huꢞn luyꢍn. Khi cꢝn
dꢈ ꢀoán, hꢍ thꢌng tìm các ví dꢧ huꢞn luyꢍn giꢌng trưꢙng hꢅp cꢝn dꢈ
ꢀoán nhꢞt và ꢀưa ra tư vꢞn dꢈa trên các ví dꢧ này. Trưꢙng hꢅp tiêu biꢗu
cꢂa lꢚc dꢈa vào bꢏ nhꢆ là thuꢊt toán K ngưꢙi láng giꢇng gꢝn nhꢞt
(KNN). ꢨu ꢀiꢗm chính cꢂa phương pháp tiꢃp cꢊn này là ꢀơn giꢄn, dꢟ cài
ꢀ꣕t. Tuy nhiên, phương pháp này có thꢙi gian lꢚc chꢊm do viꢍc dꢈ ꢀoán
ꢀòi hꢑi so sánh và tìm kiꢃm trên toàn bꢏ lưꢅng ngưꢙi dùng và sꢄn phꢾm.
• Phương pháp lọc dựa trên mô hình (MDBF) [27, 30, 32, 33, 34, 35, 37,
41, 43, 45, 90, 95, 96, 108, 109, 121]. Trong phương pháp này, dꢓ liꢍu
ꢀưꢅc sꢐ dꢧng ꢀꢗ xây dꢈng mô hình rút gꢚn, ví dꢧ mô hình xác suꢞt hay
cây quyꢃt ꢀꢺnh. Mô hình này sau ꢀó ꢀưꢅc sꢐ dꢧng ꢀꢗ ꢀưa ra các tư vꢞn.
Phương pháp này cho phép thꢈc hiꢍn viꢍc dꢈ ꢀoán nhanh, do quá trình
dꢈ ꢀoán thꢈc hiꢍn trên mô hình ꢀã hꢚc trưꢆc ꢀó.
22
Bꢄng 1.1 thꢌng kê mꢏt sꢌ nghiên cꢁu tiêu biꢗu các phương pháp lꢚc
thông tin cho hꢍ tư vꢞn [36].
Bꢂng 1.1. Phân loꢒi các phương pháp tư vꢞn và mꢏt sꢌ nghiên cꢁu ꢀiꢗn hình
PHƯƠNG PHÁP TƯ VꢙN DꢡA VÀO LꢘC NꢢI DUNG
Lꢝc nꢣi dung dꢞa vào bꢣ nhꢤ
Các kỹ thuật thông dụng:
Lꢝc nꢣi dung dꢞa vào mô hình
Các kỹ thuật thông dụng:
• Mô hình mꢒng Bayes
• Mô hình phân cꢧm
• Tꢝn suꢞt xuꢞt hiꢍn ngưꢅc
• Phân cꢧm (Clustering)
• Mô hình cây quyꢃt ꢀꢺnh
• Mô hình mꢒng nơ ron nhân tꢒo
Những nghiên cứu điển hình:
• Pazzani [74]
Những nghiên cứu điển hình:
• Balabanovic và Shoham [69]
• Pazzani và Billsus [73]
• Mooney và Roy [92]
• Billsus và Pazzani [30]
• Zhang và các cꢏng sꢈ [113]
PHƯƠNG PHÁP TƯ VꢙN DꢡA VÀO LꢘC CꢢNG TÁC
Lꢝc cꢣng tác dꢞa vào bꢣ nhꢤ
Các kỹ thuật thông dụng:
• K ngưꢙi láng giꢇng gꢝn nhꢞt (K-
Nearest Neighbour) sꢐ dꢧng ꢀꢏ
tương tꢈ cosin ho꣕c các ꢀꢏ
tương quan.
Lꢝc cꢣng tác dꢞa vào mô hình
Các kỹ thuật thông dụng:
• Mô hình mꢒng Bayes
• Mô hình phân cꢧm
• Mô hình cây quyꢃt ꢀꢺnh
• Mô hình mꢒng nơ ron nhân tꢒo
• Mô hình hꢉi qui tuyꢃn tính
• Mô hình thꢌng kê
• Phân cꢧm
• ꢜꢏ tương quan gián tiꢃp
(Indirect Similarity)
• Mô hình ꢀꢉ thꢺ
Những nghiên cứu điển hình:
• Resnick và các cꢏng sꢈ [83]
• Breese và các cꢏng sꢈ [52]
• Nakamura và Abe [11]
• M. Deshpande and G. Karypis
[72]
Những nghiên cứu điển hình:
• Nakamura và Abe [11]
• Umyarov và Alexander
Tuzhilin [15, 16, 17]
• Ungar và Foster [68]
• Aggarwal và các cꢏng sꢈ [24]
• Chien và George [114]
• Condliff và các cꢏng sꢈ [71]
• Kumar và các cꢏng sꢈ [89]
• Shani và các cꢏng sꢈ [41]
• Hofmann [95, 96]
• Sarwar và các cꢏng sꢈ [21]
• Yu và các cꢏng sꢈ [63, 64]
• Herlocker và các cꢏng sꢈ [55]
• Wang và các cꢏng sꢈ [57]
• Bell và Koren [86]
• Desrosiers và Karypis [24]
• Marlin [18]
23
• Goldberg và các cꢏng sꢈ [62]
• Si và Jin [66]
• Getoor và Sahami [65]
• Huang và các cꢏng sꢈ [119]
• DeCoste [31]
• Nikovski và Kulev [33]
• Su và các cꢏng sꢈ [105, 106,
107]
PHƯƠNG PHÁP TƯ VꢙN DꢡA VÀO LꢘC KꢆT HꢥP
Lꢝc kꢎt hꢦp dꢞa vào bꢣ nhꢤ
Các kỹ thuật thông dụng:
Lꢝc kꢎt hꢦp dꢞa vào mô hình
Các kỹ thuật thông dụng:
• Hꢅp nhꢞt mô hình biꢗu diꢟn dꢓ
liꢍu.
• Tꢠ hꢅp tuyꢃn tính kꢃt quꢄ dꢈ
ꢀoán cꢂa cꢄ hai phương pháp.
• Kꢃt hꢅp các ꢀ꣕c tính cꢂa lꢚc
cꢏng tác vào lꢚc nꢏi dung.
• Kꢃt hꢅp các ꢀ꣕c tính cꢂa lꢚc nꢏi
dung vào lꢚc cꢏng tác.
• Hꢅp nhꢞt mô hình dꢈ ꢀoán.
• Hꢅp nhꢞt mô hình biꢗu diꢟn dꢓ
liꢍu và mô hình dꢈ ꢀoán.
• Hꢅp nhꢞt lꢚc cꢏng tác và lꢚc nꢏi
dung trong cùng mô hình.
Những nghiên cứu điển hình:
• Gunawardana và Meek [8]
• Billsus và Pazzani [29]
• Lazanas và Karacapilidis [10]
• Popescul và các cꢏng sꢈ [12]
• Hofmann [96]
Những nghiên cứu điển hình:
• Basu và các cꢏng sꢈ [23]
• Claypool và các cꢏng sꢈ [70]
• Soboroff và Nicolas [46]
• Billsus và Pazzani [30]
• Tran và Cohen [98]
• Huang và các cꢏng sꢈ [120,
121, 122]
• Su và các cꢏng sꢈ [104]
• Balisico và Hofmann [47]
• Good và các cꢏng sꢈ [76]
• Melville và các cꢏng sꢈ [82]
• Adomavicius và các cꢏng sꢈ
[37, 38, 39]
• Anand và Bharadwaj [28]
Formatted: Indent: Left: 0,63 cm
1.2. PHƯƠNG PHÁP LꢘC THEO NꢢI DUNG
Lꢚc theo nꢏi dung là phương pháp thꢈc hiꢍn dꢈa trên viꢍc so sánh nꢏi
dung thông tin hay mô tꢄ hàng hóa, nhꢸm tìm ra nhꢓng sꢄn phꢾm tương tꢈ vꢆi
nhꢓng gì mà ngưꢙi dùng ꢀã tꢋng quan tâm ꢀꢗ giꢆi thiꢍu cho hꢚ nhꢓng sꢄn
phꢾm này [4, 6, 19, 69, 73, 84, 92]. Các phương pháp tiꢃp cꢊn cho lꢚc theo nꢏi
dung có nguꢉn gꢌc tꢋ lꢎnh vꢈc truy vꢞn thông tin, trong ꢀó mꢕi sꢄn phꢾm ꢀưꢅc
biꢗu diꢟn bꢸng mꢏt hꢉ sơ sꢄn phꢾm, mꢕi ngưꢙi dùng ꢀưꢅc biꢗu diꢟn bꢸng mꢏt
24
hꢉ sơ ngưꢙi dùng. Phương pháp dꢈ ꢀoán nꢏi dung nguyên bꢄn cꢂa sꢄn phꢾm
thꢈc hiꢍn dꢈa vào viꢍc xem xét các hꢉ sơ sꢄn phꢾm có mꢁc ꢀꢏ phù hꢅp cao vꢆi
hꢉ sơ ngưꢙi dùng [84].
1.2.1. Bài toán lꢝc theo nꢣi dung
Bài toán lꢚc theo nꢏi dung ꢀưꢅc phát biꢗu như sau. Cho P= {p1, p2,.., pN}
là tꢊp gꢉm N sꢄn phꢾm. Nꢏi dung sꢄn phꢾm p∈P ꢀưꢅc ký hiꢍu là Content(p)
ꢀưꢅc biꢗu diꢟn thông qua tꢊp K ꢀ꣕c trưng nꢏi dung cꢂa P. Tꢊp các ꢀ꣕c trưng
sꢄn phꢾm p ꢀưꢅc xây dꢈng bꢸng các k thuꢊt truy vꢞn thông tin ꢀꢗ thꢈc hiꢍn
mꢧc ꢀích dꢈ ꢀoán nhꢓng sꢄn phꢾm khác tương tꢈ vꢆi p.
Cho U = {u1, u2,.., uM} là tꢊp gꢉm M ngưꢙi dùng. Vꢆi mꢕi ngưꢙi dùng
u∈U, gꢚi ContentBasedProfile(u) là hꢉ sơ ngưꢙi dùng u. Hꢉ sơ cꢂa ngưꢙi
dùng u thꢈc chꢞt là lꢺch sꢐ truy cꢊp ho꣕c ꢀánh giá cꢂa ngưꢙi ꢀó ꢀꢌi vꢆi các sꢄn
phꢾm. ContentBasedProfile(u) ꢀưꢅc xây dꢈng bꢸng cách phân tích nꢏi dung
các sꢄn phꢾm mà ngưꢙi dùng u ꢀã tꢋng truy nhꢊp ho꣕c ꢀánh giá dꢈa trên các
k thuꢊt truy vꢞn thông tin.
Bài toán lꢚc theo nꢏi dung khi ꢀó là dꢈ ꢀoán nhꢓng sꢄn phꢾm mꢆi có nꢏi
dung thích hꢅp vꢆi ngưꢙi dùng dꢈa trên tꢊp hꢉ sơ sꢄn phꢾm Content(p) và hꢉ
sơ ngưꢙi dùng ContendBasedProfile(u).
1.2.2. Các phꢔơng pháp pháp lꢝc theo nꢣi dung
Như ꢀã trình bày ꢶ trên, lꢚc theo nꢏi dung ꢀưꢅc tiꢃp cꢊn theo hai xu hưꢆng:
lꢚc dꢈa trên bꢏ nhꢆ và lꢚc dꢈa trên mô hình. Nꢏi dung cꢧ thꢗ các phương pháp
ꢀưꢅc thꢈc hiꢍn như dưꢆi ꢀây.
1.2.2.1. Lꢝc nꢣi dung dꢞa vào bꢣ nhꢤ
Lꢚc nꢏi dung dꢈa vào bꢏ nhꢆ là phương pháp sꢐ dꢧng toàn bꢏ tꢊp hꢉ sơ sꢄn
phꢾm và tꢊp hꢉ sơ ngưꢙi dùng ꢀꢗ thꢈc hiꢍn huꢞn luyꢍn và dꢈ ꢀoán. Trong phương
pháp này, các sꢄn phꢾm mꢆi ꢀưꢅc tính toán và so sánh vꢆi tꢞt cꢄ hꢉ sơ ngưꢙi
dùng. Nhꢓng sꢄn phꢾm mꢆi có mꢁc ꢀꢏ tương tꢈ cao nhꢞt vꢆi hꢉ sơ ngưꢙi dùng s꣖
25
ꢀưꢅc dùng ꢀꢗ tư vꢞn cho ngưꢙi dùng này. Phương pháp này còn ꢀưꢅc gꢚi là học
lười (Lazy Learning) hay học dựa trên ví dụ (Instance-Based Learning) trong các
tài liꢍu vꢇ hꢚc máy [97].
ꢜꢗ thꢈc hiꢍn lꢚc theo nꢏi dung, ta cꢝn giꢄi quyꢃt hai vꢞn ꢀꢇ: thꢁ nhꢞt là biꢗu
diꢟn Content(p) dưꢆi dꢒng vector trꢚng sꢌ các ꢀ꣕c trưng nꢏi dung, thꢁ hai là tính
ꢀꢏ tương tꢈ giꢓa hꢉ sơ ngưꢙi dùng và hꢉ sơ sꢄn phꢾm.
Phꢔơng pháp biꢧu diꢨn hꢩ sơ sꢂn phꢪm:
Phương pháp ưꢆc lưꢅng trꢚng sꢌ các ꢀ꣕c trưng thông dꢧng nhꢞt thưꢙng
ꢀưꢅc sꢐ dꢧng là phép ꢀo tꢝn suꢞt kꢃt hꢅp vꢆi tꢝn suꢞt xuꢞt hiꢍn ngưꢅc (Term
Frequency / Inverse Document Frequency). Phương pháp ꢀưꢅc thꢈc hiꢍn như sau.
Gꢚi fi,j là sꢌ lꢝn ꢀ꣕c trưng nꢏi dung ki xuꢞt hiꢍn trong sꢄn phꢾm pj. Khi ꢀó tꢝn
suꢞt TFi,j cꢂa ꢀ꣕c trưng nꢏi dung ki trong sꢄn phꢾm pj ꢀưꢅc xác ꢀꢺnh theo công
thꢁc (1.1).
fi, j
TF =
(1.1)
i, j
maxz fz, j
ꢦ ꢀây, max z fz, j là sꢌ lꢝn xuꢞt hiꢍn nhiꢇu nhꢞt cꢂa ꢀ꣕c trưng nꢏi dung kz
trong sꢄn phꢾm pj.
Tuy nhiên, nhꢓng ꢀ꣕c trưng nꢏi dung xuꢞt hiꢍn trong nhiꢇu sꢄn phꢾm không
ꢀưꢅc dùng ꢀꢗ xem xét mꢁc ꢀꢏ tương tꢈ giꢓa các sꢄn phꢾm, thꢊm chí nhꢓng ꢀ꣕c
trưng nꢏi dung này không chꢁa ꢀꢈng nhiꢇu thông tin phꢄn ánh nꢏi dung sꢄn
phꢾm. Chính vì vꢊy, tꢝn suꢞt xuꢞt hiꢍn ngưꢅc IDFi, kꢃt hꢅp vꢆi tꢝn suꢞt TFi,j cho
phép ta chú ý nhiꢇu hơn ꢀꢃn nhꢓng ꢀ꣕c trưng nꢏi dung có trong sꢄn phꢾm này
nhưng ít xuꢞt hiꢍn trong các sꢄn phꢾm khác.
Phương pháp xác ꢀꢺnh tꢝn suꢞt xuꢞt hiꢍn ngưꢅc ꢀưꢅc thꢈc hiꢍn như sau. Giꢄ
sꢐ hꢍ có N sꢄn phꢾm cꢝn ꢀưꢅc phân bꢠ ho꣕c tư vꢞn cho ngưꢙi dùng và ꢀ꣕c trưng
nꢏi dung ki xuꢞt hiꢍn trong ni sꢄn phꢾm. Tꢝn suꢞt xuꢞt hiꢍn ngưꢅc IDFi cꢂa ꢀ꣕c
trưng nꢏi dung ki có tꢝn suꢞt xuꢞt hiꢍn trong sꢄn phꢾm pj là TFi,j ꢀưꢅc xác ꢀꢺnh
theo công thꢁc (1.2), mꢁc ꢀꢏ quan trꢚng hay trꢚng sꢌ cꢂa ꢀ꣕c trưng nꢏi dung ki
ꢀưꢅc xác ꢀꢺnh theo công thꢁc (1.3).
26
N
ni
IDF = log
(1.2)
(1.3)
i
wi, j = TF × IDF
i, j
i
Trong công thꢁc 1.2, nꢃu ni ≅ N hay ꢀ꣕c trưng nꢏi dung ki xuꢞt hiꢍn trong ꢀꢒi
ꢀa sꢌ các sꢄn phꢾm cꢝn phân bꢠ ꢀꢃn ngưꢙi dùng thì trꢚng sꢌ wi,j ≅ 0. Nói cách
khác, nhꢓng ꢀ꣕c trưng nꢏi dung có trong mꢚi sꢄn phꢾm thì ꢀ꣕c trưng ꢀó không
chꢁa nhiꢇu nꢏi dung thông tin phꢄn ánh sꢄn phꢾm. Ngưꢅc lꢒi, nꢃu ꢀ꣕c trưng nꢏi
dung chꢔ xuꢞt hiꢍn trong mꢏt sꢄn phꢾm thì ni = 1, khi ꢀó wi, j = TFi,j. Như vꢊy,
nhꢓng ꢀ꣕c trưng nꢏi dung chꢔ xuꢞt hiꢍn ꢶ mꢏt loꢒi sꢄn phꢾm và không xuꢞt hiꢍn ꢶ
nhꢓng sꢄn phꢾm khác thì nhꢓng ꢀ꣕c trưng nꢏi dung này chꢁa nhiꢇu nꢏi dung
quan trꢚng ꢀꢌi vꢆi sꢄn phꢾm.
Bꢸng cách ưꢆc lưꢅng này, mꢕi sꢄn phꢾm pj∈P ꢀưꢅc biꢗu diꢟn như mꢏt véc
tơ trꢚng sꢌ các ꢀ꣕c trưng nꢏi dung Content(pj) = (w1,j, w2,j,..,wK,j). Trong ꢀó, K là sꢌ
lưꢅng ꢀ꣕c trưng nꢏi dung cꢂa toàn bꢏ sꢄn phꢾm.
Phꢔơng pháp biꢧu diꢨn hꢩ sơ ngꢔꢃi dùng:
Mꢕi hꢉ sơ ngưꢙi dùng ContentBasedProfile(u) cꢡng ꢀưꢅc biꢗu diꢟn bꢸng
mꢏt véc tơ trꢚng sꢌ các ꢀ꣕c trưng nꢏi dung (w1,u, w2,u,.., wK,u) , trong ꢀó mꢕi wk,u
biꢗu thꢺ mꢁc ꢀꢏ quan trꢚng cꢂa ꢀ꣕c trưng nꢏi dung k ꢀꢌi vꢆi ngưꢙi dùng u. Véc tơ
trꢚng sꢌ (w1,u, w2,u,.., wK,u) ꢀưꢅc tính toán bꢸng các k thuꢊt khác nhau tꢋ véc tơ
hꢉ sơ sꢄn phꢾm ꢀã ꢀưꢅc ngưꢙi dùng thưꢙng xuyên truy cꢊp ho꣕c ꢀánh giá.
Balabanovic [69] tính toán véctơ trꢚng sꢌ mꢕi hꢉ sơ ngưꢙi dùng
ContentBasedProfile(u) bꢸng cách lꢞy trung bình cꢏng véc tơ trꢚng sꢌ Content(pj)
trên các tài liꢍu pj∈P mà ngưꢙi dùng ꢀã tꢋng truy cꢊp ho꣕c ꢀánh giá. Pazzani [74]
sꢐ dꢧng bꢏ phân loꢒi Bayes ưꢆc lưꢅng khꢄ nꢣng giꢌng nhau cꢂa sꢄn phꢾm và ꢀꢇ
xuꢞt thuꢊt toán Winnow thꢈc hiꢍn trong nhꢓng trưꢙng hꢅp có nhiꢇu ꢀ꣕c trưng nꢏi
dung.
27
Xác ꢒꢫnh mꢟc ꢒꢣ tꢔơng tꢞ:
Vꢆi cách biꢗu như trên, véctơ trꢚng sꢌ các ꢀ꣕c trưng nꢏi dung sꢄn phꢾm
ContentBasedProfile(u) và Content(p) có cùng sꢌ chiꢇu và ưꢆc lưꢅng theo cùng
mꢏt phương pháp (trong trưꢙng hꢅp này là TF-IDF). Viꢍc xác ꢀꢺnh mꢁc ꢀꢏ thích
hꢅp cꢂa mꢕi sꢄn phꢾm p∈P cho ngưꢙi dùng u ꢀưꢅc xem xét theo mꢁc ꢀꢏ giꢌng
nhau giꢓa véc tơ hꢉ sơ ngưꢙi dùng u∈U và véc hꢉ tơ sꢄn phꢾm p∈P.
r(u, p) = Sim(ContentBased Profile(u),Content(p))
(1.4)
Phương pháp ưꢆc lưꢅng mꢁc ꢀꢏ giꢌng nhau giꢓa véc tơ hꢉ sơ ngưꢙi dùng
u∈U và véc tơ hꢉ sơ sꢄn phꢾm p∈P ꢀưꢅc dùng phꢠ biꢃn là tìm cosin cꢂa hai véc
tơ trꢚng sꢌ
và
.
wu
wp
w u .w p
r (u, p) = cos w u , w p
=
w u × w p
2
2
(1.5)
K
i=1 wi,u wi, p
∑
=
,
K
K
i=1 wi2,u
i=1 wi2, p
∑
∑
ꢦ ꢀây, K là sꢌ lưꢅng ꢀ꣕c trưng nꢏi dung cꢂa hꢍ thꢌng. Trong công thꢁc 1.5,
nꢃu cosin cꢂa hai véc tơ gꢝn vꢆi 1, hay góc tꢒo bꢶi hai véc tơ này nhꢑ thì mꢁc ꢀꢏ
tương tꢈ giꢓa hꢉ sơ ngưꢙi dùng và hꢉ sơ sꢄn phꢾm càng cao. Ngưꢅc lꢒi, nꢃu cosin
cꢂa hai véc tơ gꢝn vꢆi 0, hay góc tꢒo bꢶi hai véc tơ lꢆn thì mꢁc ꢀꢏ phù hꢅp cꢂa
sꢄn phꢾm vꢆi hꢉ sơ ngưꢙi dùng càng thꢞp. Vꢆi cách ꢀo này, nꢃu ngưꢙi dùng u
truy nhꢊp nhiꢇu sꢄn phꢾm liên quan ꢀꢃn mꢏt chꢂ ꢀꢇ nào ꢀó thì hꢍ thꢌng lꢚc theo
nꢏi dung s꣖ phân bꢠ nhꢓng sꢄn phꢾm cꢂa chꢂ ꢀꢇ ꢀó cho ngưꢙi dùng u.
Ngoài cosin, các ꢀꢏ ꢀo tương tꢈ khác như khoꢄng cách Euclid hay ꢀꢏ tương
quan Pearson cꢡng ꢀưꢅc sꢐ dꢧng trong nhꢓng nghiên cꢁu khác nhau.
1.2.2.2. Lꢝc nꢣi dung dꢞa vào mô hình
Lꢚc nꢏi dung dꢈa trên mô hình là phương pháp sꢐ dꢧng tꢊp hꢉ sơ sꢄn phꢾm
và tꢊp hꢉ sơ ngưꢙi dùng ꢀꢗ xây dꢈng nên mô hình huꢞn luyꢍn. Mô hình dꢈ ꢀoán
sau ꢀó s꣖ sꢐ dꢧng kꢃt quꢄ cꢂa mô hình huꢞn luyꢍn ꢀꢗ sinh ra tư vꢞn cho ngưꢙi
28
dùng. Trong cách tiꢃp cꢊn này, lꢚc nꢏi dung có thꢗ sꢐ dꢧng các k thuꢊt hꢚc máy
như mꢒng Bayes, phân cꢧm, cây quyꢃt ꢀꢺnh, mꢒng nơron nhân tꢒo ꢀꢗ tꢒo nên dꢈ
ꢀoán.
Pazzani và Billsus [73] sꢐ dꢧng bꢏ phân loꢒi Bayes dꢈa trên nhꢓng ꢀánh giá
“thích” ho꣕c “không thích” cꢂa ngưꢙi dùng ꢀꢗ phân loꢒi các sꢄn phꢾm. Trong ꢀó,
phương pháp ưꢆc lưꢅng xác suꢞt sꢄn phꢾm pj có thuꢏc lꢆp Ci hay không dꢈa vào
tꢊp các ꢀ꣕c trưng nꢏi dung k1,j ,..,kn,j cꢂa sꢄn phꢾm ꢀó.
(1.6)
P
Ci | k1, j & k2, j &..& kn, j
Panzanni và Billsus giꢄ thiꢃt các ꢀ꣕c trưng nꢏi dung xuꢞt hiꢍn ꢀꢏc lꢊp nhau,
vì vꢊy xác suꢞt ꢶ trên tương ꢁng vꢆi:
P(C ) P(k |C )
(1.7)
∏
i
x, j
i
x
Vì P (kx,j| Ci) và P (Ci) có thꢗ ưꢆc lưꢅng dꢈa vào tꢊp dꢓ liꢍu huꢞn luyꢍn. Do
vꢊy, sꢄn phꢾm pj ꢀưꢅc xem là thuꢏc lꢆp Ci nꢃu xác suꢞt
có giá trꢺ cao nhꢞt thuꢏc lꢆp này.
P Ci | k1, j & k2, j &.. & kn
,
j
Solombo [42] ꢀꢇ xuꢞt mô hình lꢚc thích nghi, trong ꢀó chú trꢚng ꢀꢃn viꢍc
quan sát mꢁc phù hꢅp cꢂa tꢞt cꢄ các sꢄn phꢾm. Zhang [112] ꢀꢇ xuꢞt mô hình tꢌi
ưu tꢊp các sꢄn phꢾm tương tꢈ dꢈa vào giá trꢺ ngưꢖng. Trong ꢀó, giá trꢺ ngưꢖng
ꢀưꢅc ưꢆc lưꢅng dꢈa trên tꢊp sꢄn phꢾm thích hꢅp và tꢊp tài liꢍu không thích hꢅp
vꢆi mꢕi hꢉ sơ ngưꢙi dùng.
1.2.3. Nhꢠng vꢍn ꢒꢬ tꢩn tꢭi
M꣕c dù lꢚc theo nꢏi dung ꢀã áp dꢧng thành công cho nhiꢇu ꢁng dꢧng lꢚc
vꢣn bꢄn, tuy vꢊy phương pháp vꢘn tꢉn tꢒi mꢏt sꢌ vꢞn ꢀꢇ cꢝn tiꢃp tꢧc nghiên cꢁu
giꢄi quyꢃt [36, 107].
• Vấn đề trích chọn đặc trưng. Lꢚc theo nꢏi dung kꢃ thꢋa và phát triꢗn dꢈa
chꢂ yꢃu vào các phương pháp trích chꢚn ꢀ꣕c trưng trong lꢎnh vꢈc truy vꢞn
thông tin. ꢜꢗ có mꢏt tꢊp các ꢀ꣕c trưng ꢀꢝy ꢀꢂ, nꢏi dung tài liꢍu phꢄi ꢀưꢅc
biꢗu diꢟn dưꢆi ꣄ꢒng ꣃꣅꣁhꢅp ꢀꢗ máy tính có thꢗ tꢈ ꢀꢏng phân tích, tính
toán trꢚng sꢌ các ꢀ꣕c trưng nꢏi dung ho꣕c phꢄi ꢀưꢅc thꢈc hiꢍn bán tꢈ
ꢀꢏng. Phương pháp s꣖ khó áp dꢧng trong nhꢓng trưꢙng hơp viꢍc trích
29
Tải về để xem bản đầy đủ
Bạn đang xem 30 trang mẫu của tài liệu "Báo cáo Phát triển một số phương pháp lọc thông tin cho hệ tư vấn", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
bao_cao_phat_trien_mot_so_phuong_phap_loc_thong_tin_cho_he_t.pdf