2
LỜI CAM ĐOAN
Tôi Lu t t nghi p là công trình nghiên
c u c a b i s ng d n c a TS t Sang
Kt qu lu n là trung tha b t kì công trình nào khác
Hà Ni, ngày tháng
Tác gi
Xác nh n c ng d n v m hoàn thành ca Lut nghi p và cho phép b o v :
Hà Ni, ngày 21 tháng 10
ng d n
t Sang
Trang 33
MỤ C LỤC
MC LC 3
DANH MC HÌNH NH 5
DANH MC CÁC BNG 6
DANH MC CÁC T T TT 7 VI NG QUAN V H TH NG G I Ý 8
1.1 H thng g i ý 8
1.2 ng d ng th c tin 8
1.3 Phát bi u toán h c 9
10
2.1 Ma tr n 10
10
n 10
nh th c c a ma tr n 11
2.1.4 Ma tr n ngh o 11
2.1.5 H ng c a Ma tr n 12
2.1.6 Ma tr n unitary 12
2.1.7 Giá tr riêng ca ma tr n và vec- 12
2.1.8 Ma tr n gi ngh o 12
2.1.9 Ma tr n tr c giao 13
n v h c máy 13
2.2.1 H c có giám sát và h c không giám sát 13
2.2.2 Phân l p và h i quy 14
2.2.3 Overfitting và Underfitting 15
2.2.4 T p hu n luy n, t p validation và t p ki m tra 16
2.2.5 Bias và variance 17
2.2.6 ng overfitting 19
2.2.7 La chn mô hình 20
Trang 44
i thi u 21
HU T ÁP D NG TRONG H G I Ý 22
m TF.IDF 22
3.2 Ch s ng Jaccard 23
ng cosine 24
m s chi u không gian 25
3.4.1 Gii thiu 25
n SVD 27
m s chi u không gian 29
3.5 m giá tr hàm gradient descent 30
3.5.1 Gradient Descent (GD) 30
3.5.2 Stochastic Gradient Descent (SGD) 31
NH G I Ý 33
4.1 D u 33 li t t c a m t mô hình 33
4.3 Các mô hình 34
34
38
n h p 45
Global Baseline 45
46
NGHI M CÁC MÔ HÌNH G I Ý 54
5.1 Mô t d u 54 li 5.2 Các mô hình và k t qu th nghi m 58
64
KT LUN 66
TÀI LIU THAM KH O 67
Trang 55
DANH MỤC HÌNH ẢNH
Hình 1 - Mô t k t qu c bng hai mô hình phân loi và hi quy [11] 14
Hình 2 - Mô hình underfitting, fitting và overfitting v i d u [23] 16 li Hình 3 - S a giá tri c bias và variance theo m hc d li u hu n luy n c a mô hình [22] 18
Hình 4 Giá tr- c a hàm m c tiêu trên t p hu n luy n [16] 20
Hình 5 - D u trong không gian ba chili c biu di n b i m t ph ng hai chi u [8] 25
Hình 6 - D u nhìn th y bi u dili ng th ng [8] 26
Hình 7 - Phân rã SVD c a m t ma tr n [9] 29
Hình 8 - Cách làm gi m s chiu b ng phân rã SVD [9] 29
Hình 9 - Ma trn nhc sau khi thc hin gi m s chi u [9] 30
Hình 10 - S di chuy n c a hàm m
và Stochastic Gradient Descent [5] 31
Hình 11 - Ma tra h g i ý và cách l y t p d u ki m tra [10] 33 li Hình 12 - Bi th hi n quá trình hong c a CB [3] 37
Hình 13 - Mô t n v quá trình g i ý c a CF [7] 38
Hình 14 - ng c a ma tr n khi c p nh t ti 51
Hình 15 Ví d- v m t bn ghi d li u trong t p tin "users.dat" 54
Hình 16 Ví d- v m t bn ghi d li u trong t 56
Hình 17 Ví d- v m t bn ghi trong t 58
Hình 18 - C p nh t Stoch astic Gradient Descent vi (0.001, 0.002), k=1 64
Trang 66
DANH MỤC CÁC BẢNG
B ng 1: K t qu c a mô hình CB 61
B ng 2: K t qu i dùng- i dùng CF 62
B ng 3: K t qu c a mô hình s n ph m-s n ph m CF 62
B ng 4: K t qu chn mô hình c a mô hình LF 64
Trang 88
CHƯƠNG 1: TỔNG QUAN V H TH NG G I Ý Ề Ệ Ố Ợ
1.1 H ệ thống gợi ý
H thng g i ý (Recommender Systems - RS) là m t d ng c a h thng l c thông tin (information filtering), nó c s d ng d oán s thích (preference) hay x p h ng (rating) mà ng i dùng có th dành cho m t mc thông tin (item)nào ó mà ch h a xem xét t i trong quá kh (item có th là bài báo, b phim,
o n video clip, sách, ) [11] nh m g i ý các m c thông tin th quan c
b i ng i dùng H ng gth i ý s a ra các g i ý d a trên quá trình thu thp, x
lý và phân tích d li u t ngi dùng D li u ó c chia làm lo là 2 i tường
minh (explicit) bng cách yêu c u ng i dùng ph n h i tr tic p và tiềm ẩn
(implicit) b ng cách t ng suy lun d a trên nh ng t ng tác c a ng i dùng
v i h thng nh : s l n nh p chut, thi gian quan sát Trong h u h t các trng
h p, bài toán g i ý c coi là bài toán d oán vi c x p h ng (rating) c a các
ý minh ý to giúp cho
phó tình quá thông tin ý thành trong công và trong
ý là vào hành vi thói quen, nhu trong quá
thích trong lai
1.2 ng d ng thỨ ụ ự c tiễn
H g i ý có th c tri n khai trên h u h t các h thi
i dùng Ph bi n nh t là các h th ng trên n n web Ph bi n nh t là các h thng v phim nh, nh u s n ph m nói chung khác Không
Trang 99
nh ng v y, h g c áp d ng cho các chuyên gia, nhà nghiên c u, nhà hàng, h thng tài chính, b o hi
Ta có th nhn th y các h g i ý xung quanh chúng ta có r t nhi
u áp dng nh ng h th luôn luôn giúp
i dùng tìm kim thông tin, s n ph m m t cách nhanh chóng nh t có th
V i nh ng ng d y, h g n nhi u l i ích to l n cho
c i dùng và h thng áp d ng nó V i dùng, chúng ta luôn có th nhanh chóng ti p c c nh ng ngu n thông tin phù h p, chính xác Ti t ki c thi gian m V i các n u áp d ng t t các h g i ý s i
n hình nhhay Google
Trang 13H c máy là m c nghiên c u c a trí tu nhân t c
hu n luy n, máy móc có th gi i quy t m t s công vi c c th Ví d : máy có th
hc cách phân lo ng x a i cchúng
Trong khuôn kh lu này, tác gi không tìm hi u sâu v h c máy S chtìm hi u v t s bic áp d ng trong hc máy
2.2.1 H c có giám sát và h c không giám sát ọ ọ
Học có giám sát
H c có giám sát là quá trình mô hình h c máy s c hun luy n trên m t tp
d lic dán nhãn hoc gán giá tr u ra mong mu n
Ma quá trình hc m t gi thit (có th là m t phân lóp hoc m t hàm m p vi tp d li u hu n luy n u vào
T gi thi c t h trên, mô hình s áp d ng gi thi liu
c dán nhãn
Ví d : trong bài toán nh n di n ch vi t, trong quá trình hu n luy n, mô hình
s c nh n di n các nh là các ch vi t v i nhãn c th Sau quá trình hun luy n,
t ch vi t b t kì vào thì mô hình s t qu là m t trong các nhãn
c h c, chính là nh n di n ch vi
Trang 1414
H c không giám sát ọ
c v c có giám sát, h c không giám sát s c
hu n luy n trên t p d li u mà m i d li u vào không có thông tin v nhãn hay giá tr u ra mong mu n
Ma quá trình h c không giám sát là tìm ra các c m d li u ho c phát
hi n ra các c u trúc, quan h t n t i trong tp d li
Mô hình ht qu c quy v bài toán phân l p hay bài toán
h i quy ph thuc vào d liu ra cc gi thit
N u mô hình h t qu là m t hàm liên t
hng hu ra là các giá tr r i r n l p
Hình 1 - Mô tả ế k t quả đạ t đư c bằ ợ ng hai mô hình phân lo i và h i quy [11] ạ ồ
Qua hình v , ta th y, k t qu c a bài toán phân l p là ta chia d liu vào thành hai nhóm d u Còn trong bài toán h i quy, ta s li c m t hàm liên t c
ng hng th ng) d a trên các d li u vào th a mãn m t hàm m c tiêu
Trang 1515
Nhng ví d v bài toán phân l
- Nhn di n ch s vi c hu n luy n, mô hình s phân nhóm thành 10 nhóm Mng v i m t nhãn là m t s t n 9 Sau khi
t hình nh m nh n di n, máy ph i cho bi t c vào nhóm
c phân lo i
- Phân lo n t : mô hình s c hu n luy c cho
c không Khi nh n m n t mi thì mô hình ph i cho bi
c nhóm nào
Ví d v bài toán h i quy:
- D phi u trên th ng d a trên l ch s và các nhân t nh
n nó K t qu s là m t hàm liên t c theo th d phi u t i thi gian ta ch c n l y giá tr i thc
- D i ca mi da theo nh c
Hing này x y ra khi mô hình quá ph c t p và thay vì mô t chính xác d
li c nhi u và sai s ng u nhiên trong d li u Mô hình b overfitting khi s tham s c t qua s bi n c n quan sát c a d liu Lúc này, mô hình s ch i t p d u hu n luy n mà không có kh li
li u ngoài t p này
Hing overfitting s x y ra khi t p hu n luy kh u
di c hu n luy n trên các t p này
Nó d b d n vi c mô hình b u t t p hu n luyli
ng phát tri n m i
Trang 1616
Underfitting
Underfitting là hi c l i v i hi ng overfitting Mô hình hc
c t t p hu n luy n so v i th c t m b t
c h t các bi c bi u di n b i t p hu n luy n Và t t nhiên, khi áp d ng vào
vi c d u m i thì mô hình hoàn toàn không có kh li
t p hu n luy n mô hình u dic ht các nhân t
Hình 2 - Mô hình underfitting, fitting và overfitting v ới dữ liệ u [23]
Hình 2 là m t mô t v các tr ng thái underfitting, fitting và overfitting c a
m t mô hình Ta th y, Trong hình th nh t, mô hình h c m ng
thn so v i d li
ph i thì mô hình h c quá sát nh ng d u hu n luy n mà không t p trung th li
hic mô hình Hình gi a cho th y hàm h i quy nh c t p
c n t t v lii d u th c t Mô hình này có th d t nh ng d u m li i
2.2.4 T p hu n luy n, t p validation và t p ki m tra ậ ấ ệ ậ ậ ể
Trong h c máy, v i các b tham s khác nhau ta s c m t mô hình khác nhau Vì v y, c n có m u mô hình nào tt
xem xét v m t d u li
c c a quá trình h
- V i b d liu vào, áp d sinh ra mô hình vi
mt b tham s d liu vào chính là t p hu n luy n
Trang 17tt nht c trên Tp d lic s d ng i là tp kim tra
V y, t i sao c n t p validation và t p ki m tra tách bi t c
ch n l a ra mô hình t t nh t,
thì tc ch n l y, mô
ng thông tin c a t p validation này N u
ng h p mô hình b overfitting và s d ng tr c ti p t p validation này cho vi c
ng mô hình, thì s không th ph n ch t c a d li
c n m t b d li c l có th ng cho mô hình hc
c T i quynh xem có s d c mô hình này không
2.2.5 Bias và variance
Định nghĩa
Bias là giá tr sai khác gi a các giá tr d i giá tr
thc c a d li y, n u kho ng cách t giá tr th n giá tr d a
mô hình càng l c l i n u giá tr thc
càng g n giá tr d u Ta luôn hi v ng mô li
hình có giá tr bias nh nh t có th
V giá tr variance, gi s ta có m c hu n luy n tr n m t t p d
liu hu n luy t d sung thêm li
cho t p hu n luy n và ta hu n luy
li sai khác gi a hai giá tr d a hai mô hình v i
d lic g variance này càng nh
càng t t Càng nh , ch ng t c r t g n v i d u th c t nên li
khi thêm d u hu n luy n mli i quá nhi u mô hình hi n có
Trang 1818
Bias-variance trade-off
Ta th y, h c máy luôn hi v ng giá tr bias và variance càng nh càng t t Tuy nhiên, nt b d u hu n luy n thì giá tr bias s càng li lúc càng gi variance s c gii thích thông qua hình v:
Hình 3 - S ự thay đổi củ a giá tr bias và variance theo m ị ức độ ọ h c d u hu n ữ liệ ấ
m bc nhi u thông tin v Tuy nhiên, càng hng b u này dn bias
c a mô hình s càng ngày càng nh ng tr thành hàm bi u
di n d u hu n luy li i t c a mô hình có s bi n quá nhi u, m ng nh i hoàn toàn c u trúc c a hàm này D n
n variance c
Thông qua hình 3 ta th c m t mô hình t t thì c n ph i có m t s
i gi a giá tr bias và giá tr variance Bias và variance cân b ng s giúp cho
Trang 1919
c nh ng quy lu t c a d li quá phc tp
Trang 2020
Hình 4 - Giá trị ủ c a hàm m c tiêu trên t p hu n luy n [16] ụ ậ ấ ệ
ch ng b overfitting thì mô hình s d ng l i ngay khi giá tr hàm m c tiêu
t thích h p cho quá trình h c c n th c
hi n các vòng l p trên t p hu n luy n Sau m i l n l p (mô hình h c trên h t t p
hu n luy n), mô hình tính l i giá tr c a hàm m c tiêu trên t p hu n luy n và trên
t p validation N u giá tr trên t p t
ph n t x p x y, các t p này không b trùng l p nhau ph n t nào c
M i l s d ng k-1 t p làm d u hu n luy n, còn t p con li còn l i s làm t p validation L p l t l m i t u là t p validation Sau khi hu n luy n ra mô hình, tính giá tr hàm m p validation (m t trong k t p) Trung bình giá tr sai s c a t p validation s k c coi là giá tr c á m c tiêu c
Trang 21Holdout validation là mng hc bi t ca k-fold cross validation v i k
= 2 Chia d u làm 2 ph n b ng nhau li và u, là t p hu n luy n còn
là t i c l là t p validation còn là t p hu n luy cho hai t p d u r li c giá tr sai s
c s d ng cho các t p d li l n
Leave-one-out cross validation
ng hc bi t c a k-fold cross validation
v i b ng s d u c a t p d li lip cho nh ng t p d liu nh
2.3 Trung bình bình phƣơn ốg t i thi ểu
Trang 22cn b ng ca hai vec
-TF là t n s xu t hi n c a m t c m t trong m n
f(t,d) là t n s xu t hi n c a cm t n d
Trang 23m TF.IDF là tích c a hai giá tr :
T giá tr này ta có th thy, m t t khóa xu t hi n nhi u trong duy nh t m t
m TF.IDF c a c m t này s càng cao và có kh thành t khóa c
hóa vec- d ng công th c:
Trang 24Theo công thc cosine cho hai vec-
Ta th y, giá tr ng c a hai vec-
l n c a chúng Hai vec- ng s có giá tr ng cosine là 1,
vuông góc thì giá tr này b ng 0 và n ng thì s -1 Hoàn toàn không là
ph thu l n vec-
c áp d ng trong
không gian nhi u chi u
Ví d : Gi s chúng ta nghiên c u v vi c phân lo i các tài li n Tiêu
phân lo i là d a vào t n su t xu t hi n c a các c m t
i m t c m t s i di n cho m ng trong không gian Có c m t thì m i
n s c ánh x vào m t không gian n chi c vec-i
di n cho m n, ta có th ng b
ng cosine gin càng có nhi u t gi ng nhau thì
(kh ng cn
Trang 25d liu n m (ho c g n) trên cùng m t m t ph y, ta có th bi u
di d u ch vli i vic biu di n m t ph
u d li u (h u h c cho trong không gian có s chi u là , thì D
ta có th bi u di n d li i d ng m t ma tr c D x D Ta có th gi m s chi u c a ma tr n này b ng v i giá tr h ng c a ma tr ng là
s hàng (c c l p tuy n tính c a ma tr n T t c các hàng (c u có th
bi u di n thông quá các hàng (c c lp tuy n tính này
Ví d : Ta có các d li c cho trong không gian ba chi u và
c bi u di n b i ma tr n:
Hi n t i, h c a ma tr n trên là:
Tuy nhiên, ta nh n th y:
Trang 2626
y, ma tr n trên có hàng th ba ph thuc tuy n tính vào hàng th nh t
và hàng th hai Ta có k t lun:
chi u c a d li u có th c gi m xu ng còn hai Vì ch c n v i hai chi u (ví d : , ) ta có th bi u di toàn b d liu
c cho
Tuy nhiên, không phc mt không gian con có s chiu nh gian d li biu din ht d liu hing hp:
Hình 6 - D u nhìn th ữ liệ ấy biể u di n xung ễ quanh đườ ng th ng [8] ẳ
D lic cho không hoàn toàn nng th Tuy nhiên, các d li hi n s phân b này Ta hoàn toàn có th l (m t chi i di n cho các d li u (hai chi
bi u di n cho d li
Trang 2929
áp d ng cho các tính toán nh , không phù
h p cho các ma tr c l n Bên ci thu t tính toán SVD r t t n
th i gian
3.4.3 Phương pháp giả m số chi u không gian ề
c s d ng trong vi c làm gi m s chi u không gian
là phân rã ma tr n d u b ng gi i thu t SVD Ta s xét m t ví d li u hi
Trang 3030
Hình 9 - Ma trậ n nh ận đượ c sau khi th c hi n gi m s chi u [9] ự ệ ả ố ề
T hi u qu trong quá trình x thì ta s
d ng ma tr u này nthao tác trên các ma trn phân rã
Ta thy, ma trn xp x có hng nh u Vi tính cht ca SVD, thì ma trn này là ma trn xp x tt nht vi ma tru vi hng
Ta có hàm tìm cc tr ca hàm này thì ta phi gi o hàm:
Tuy nhiên, trong th c t vi c gi
gi n và không ph c hi áp d
tìm giá tr c c tr này mà không quá t n công
M t cách d hình dung, hàm là m t hàm liên t th ng
v trí hi n t i, theo chi u gi m c o hàm b c nh t thì sau mt s l n h u h c lp, ta s c giá tr c tr c
Công thc c
là tham s t i l n l p th k
Trang 3131
là learning rate (giá tr này có th c c nh ho i trong quá trình lp)
c c c tr th 3.5.2 Stochastic Gradient Descent (SGD)
Nguyên lý c a Stochastic Gradient Descent ủ
Hình 10 - S di chuy n c a hàm m ự ể ủ ục tiêu theo hai phươ ng pháp Gradient Descent
và Stochastic Gradient Descent [5]
Trang 32c tiêu:
Lúc này, giá tr chính là momentum
Trang 3333
CHƯƠNG IV: CÁC MÔ HÌNH G I Ý Ợ
4.1 D ữ liệu
a m t h g i ý có th r ng, có th là thích ho c không thích, có th là giá tr s trong kho ng [1,5] ho c là trong m t s l a ch n nh nh
th ng nhn trong các ví d , ta s c d li tr s nguyên trong kho ng 5] [1 1 c th hi u nh t
và 5 là tt nhn ph m
4.2 Cách đánh giá độ ố t t của m t mô hình ộ
Sau khi áp d ng các mô hình, h g i ý s có th c d
c a t t c i dùng v i t t c s n ph m (khi d li m t s u ki n) Khi
Trang 3434
T b d u m u, chúng ta s tách ra kho ng 20% d li li làm d liu
ki m tra mô hình Ch s d ng 80% d u m li thit lp mô hình
c mô hình và d i dùng v i s n
ph m trong h thng, chúng ta s áp d ng p i thiu cho các d i 20% d li c tách ra làm d li u ki m tra
n t c a CNN s (vi mt ni dung tóm tt ngn) và cho
i dùng ch c chi tit Các h thng có s ng sn phm ln mà mt trang web không th truyn ti hc Vì vy, cn có mt cách thc
chn nhng sn phm phù h hin th i dùng
s phân tích n i dung chi ti t c a các s n ph i
i nghi tìm ra nhm chung trong các s n ph