Sinh viên Ph m Văn Sơn... N i ếunỂ cơ bản của luận văn bao Ểồm Chương 2: Tìm hiểu về Support Vector Machine Chương 2: Bài toán phân lớp quan điểm Chương 3: Chương trình thực nghiệm..
Trang 1QUAN ĐI M
Đ ÁN T T NGHI P Đ I H C H CHÍNH QUY
Ngành: Công Ngh Thông Tin
Sinh viên th c hi n: Ph m Văn S n Giáo viên h ng d n: Ths Nguy n Th Xuơn H ng
Mã s sinh viên: 120704
H I PHÒNG 12/2012
Trang 21
M C L C
M C L C 1
L I C M N 3
M Đ U 4
CH NG 1: TỊM HI U V SUPPORT VECTOR MACHINE 6
1.1 PHÁT BI U BÀI TOÁN 6
1.1.1 Trình bày tóm t ắt v phân l p d li u 8
1.1.2 T i sao l i s d ng thu t toán SVM trong phân l p d li u 9
1.2 THU T TOÁN SVM 10
1.2.1 Gi i thi u 10
1.2.2 Đ nh nghĩa 10
1.2.3 ụ t ng c a ph ng pháp 10
1.2.4 N i dung ph ng pháp 11
1.2.4.1 C s lý thuy t 11
1.2.4.2 Bài toán phân 2 l p v i SVM 12
1.2.4.3 Bài toán nhi u phân l p v i SVM 13
1.2.4.4 Các b c chính c a ph ng pháp SVM 14
CH NG 2: BÀI TOÁN PHỂN L P QUAN ĐI M 15
2.1 S KI N (Facts) VÀ QUAN ĐI M (Opinions) 15
2.2 NHU C U V THỌNG TIN QUAN ĐI M VÀ NH N XÉT 15 2.3 MÁY TÌM KI M QUAN ĐI M / NH N XÉT 17
Trang 32
2.4 L CH S C A PHÂN TệCH QUAN ĐI M VÀ KHAI THÁC
QUAN ĐI M 18
2.5 XU H NG NGHIÊN C U G N ĐỂY 19
2.5.1 Xác đ nh c m t , quan đi m 19
2.5.2 S d ng tính t và phó t 20
2.5.3 S d ng các đ ng t 21
2.5.4 Xác đ nh chi u h ng, c m t , quan đi m 22
2.6 NHI M V C A PHỂN TệCH QUAN ĐI M 22
2.7 BÀI TOÁN PHÂN L P QUAN ĐI M 22
2.7.1 Phân c c quan đi m và m c đ phân c c 23
2.7.2 Nhi m v c a bài toán phân l p quan đi m 24
2.7.3 Xây d ng mô hình phân l p đ phân lo i tài li u 25
CH NG III: CH NG TRỊNH TH C NGHI M 26
3.1 D LI U TH NGHI M 26
3.2 CÔNG C S D NG 26
3.2.1 Công c sinh SRIML 26
3.2.2 Ngôn ng l p trình java 27
3.2.3 Công c phân l p d li u SVMLight 28
3.3 K t qu th c nghi m 29
K T LU N 34
TÀI LI U THAM KH O 35
Trang 43
L I C M N
Tr c h t, em xin chân thành c m n Tr ng Đ i h c Dân L p H i Phòng Các Th y, Cô trong Khoa Công ngh Thông tin đƣ t o đi u ki n thu n
l i cho em trong su t quá trình h c t p và làm lu n văn t t nghi p
Em xin bày t lòng bi t n sơu sắc c a mình đ i v i Cô Nguy n Th Xuơn H ng, ng i đƣ t n tình h ng d n em th c hi n lu n văn t t nghi p nƠy Cô đƣ đ nh h ng cho lu n văn, đƣ giúp sinh viên có m t môi tr ng h c thu t đ có th trao đổi Ủ t ng, ki n th c đƣ thu th p đ c qua đ c sách, t p chí, tài li u, qua tìm hi u các bài gi ng, cũng nh qua m ng Inernet, đặc bi t
Cô đƣ cho phép sinh viên đ c ti p c n v i kho tài li u t ng đ i đ y đ , có tính c p nh t cao mà cô đƣ dƠy công s u t m
Em xin c m n các Th y, Cô đƣ quan tơm góp Ủ vƠ nh n xét quý báu cho b n đ án c a em
Xin c m n các b n đƣ chia sẻ và góp ý cho tôi trong quá trình hoàn thành lu n văn
H ải Phòng, ngày… tháng… năm……
Sinh viên
Ph m Văn Sơn
Trang 54
M Đ U
Trong th i đ i hi n nay, s phát tri n nh vũ bƣo c a công ngh thông tin (CNTT) đƣ kéo theo s phát tri n c a nhi u lĩnh v c khác Có th nói, CNTT đang lƠm thay đổi hình hài c a n n kinh t th gi i, giúp nhân lo i b c nh ng b c
v ng chắc đ u tiên trên con đ ng c a kinh t tri th c, th ng m i đi n t Ngày nay, con ng i không còn ph i v t v nh c nhằn trong công vi c thu th p d li u vì
đƣ có tr th đắc l c là h th ng máy tính và m ng truy n s li u tri n khai quy
mô toàn c u
Tuy nhiên, s phát tri n v t b c c a CNTT đƣ lƠm tăng s l ng giao d ch thông tin trên m ng Internet m t cách đáng k , đặc bi t lƠ th đi n t , tin t c đi n
t , Theo s li u th ng kê t Brođer et ai (2008) thì c sau kho ng 6 đ n 10 tháng
l ng thông tin đó l i t ng g p đôi, bên c nh đó t c đ thay đổi thông tin cũng c c
kỳ nhanh Ho t đ ng c a các lĩnh v c cũng đặt ra ph i x lý m t kh i l ng thông tin đ s M t yêu c u l n đặt ra đ i v i ch ng ta là làm sao tổ ch c, tìm ki m thông tin m t cách hi u qu nh t và phân lo i thông tin là m t trong nh ng gi i pháp h p lý cho yêu c u nƠy Nh ng v i m t kh i l ng thông tin quá l n vƠ đòi
h i ph i x lý nhanh thì vi c phân lo i th công lƠ đi u không t ng H ng gi i quy t là xây d ng các gi i pháp cho phép thu t toán hóa vƠ ch ng trình hóa trên máy tính đ có th t đ ng phân lo i các thông tin trên
Trong đ tài t t nghi p đ i h c Tr ng Đ i H c Dân L p H i Phòng, em
th c hi n đ tài “TÌM HI U V SUPPORT VECTOR MACHINES CHO BÀI
TOÁN PHÂN L P QUAN ĐI M”
Lý do ch ọn đ tài
V n đ phân l p và d đoán lƠ khơu r t quan tr ng trong h c máy và trong khai phá d li u, phát hi n trí th c Kỹ thu t Support Vector Machines (SVM) đ c đánh giá là công c m nh và tinh vi nh t hi n nay cho nh ng bài toán phân l p phi tuy n Nhi u nh ng ng d ng đƣ vƠ đang đ c xây d ng d a trên kỹ thu t SVM r t
hi u qu
Trang 65
M ục đícể, đối tượng và ph m vi nghiên cứu
Trong khuôn khổ lu n văn s nghiên c u ph n bài toán phân l p quan đi m,
c s lý thuy t c a ph ng pháp SVM và các v n đ liên quan Phân tích nh ng
gi i pháp cho phép m r ng và c i ti n đ nâng cao hi u qu ng d ng c a SVM
Đ a kỹ thu t m vào SVM cho phép phân chia không gian d li u m t cách t t
h n, nhằm lo i b nh ng vùng không đ c phân l p bằng SVM thông th ng
Trình bƠy h ng áp d ng kỹ thu t SVM cũng nh nh ng c i ti n, m r ng
c a nó vào gi i quy t m t s các bài toán ng d ng trong th c ti n
Trình bày tổng quan v bài toán phân l p quan đi m và c th là bài toán phân l p phân c c đ phân chia các tài li u ch a quan đi m là tích c c hay tiêu c c
Tìm hi u d li u quan đi m và vi t ch ng trình th nghi m phân l p phan
c c tài li u s d ng SVM
Ý nỂểĩa kểoa ểọc và thực tiễn
SVM là m t ph ng pháp phân l p hi n đ i và hi u qu , nắm chắc ph ng pháp này s t o n n t ng giúp chúng ta trong vi c phát tri n các gi i pháp phân lo i
và d đoán , xơy d ng đ c nh ng ng d ng quan tr ng trong th c t
ng d ng phân l p SVM cho bài toán phân l p quan đi m lƠ bƠi toán đƣ vƠ đang đ c nghiên c u và phát tri n r ng rƣi vƠ có Ủ nghĩa c v h c thu t l n ng
d ng th c t
N i ếunỂ cơ bản của luận văn bao Ểồm
Chương 2: Tìm hiểu về Support Vector Machine
Chương 2: Bài toán phân lớp quan điểm
Chương 3: Chương trình thực nghiệm
Trang 76
MACHINE
1.1 PHÁT BI U BÀI TOÁN
Support Vector Machines (SVM) là kỹ thu t m i đ i v i vi c phân l p d
li u, lƠ ph ng pháp h c s d ng không gian gi thuy t các hàm tuy n tính trên không gian đặc tr ng nhi u chi u, d a trên lý thuy t t i u vƠ lỦ thuy t th ng kê
Trong kỹ thu t SVM không gian d li u nh p ban đ u s đ c ánh x vào không gian đặc tr ng vƠ trong không gian đặc tr ng nƠy mặt siêu phẳng phân chia
i i
yi f(xi) = yi (w.xi+ b) ≥ 0 , i=1,….,l
trong đó w là vector pháp tuy n n chi u và b là giá tr ng ỡng
Vector pháp tuy n w xác đ nh chi u c a siêu phẳng f(x), còn giá tr ng ỡng b
xác đ nh kho ng cách gi a siêu phẳng và g c
Trang 8
7
Siêu phẳng có kho ng cách v i d li u g n nh t là l n nh t (t c có biên l n
nh t) đ c g i là siêu phẳng t i u
M c đích đặt ra đơy lƠ tìm đ c m t ng ỡng (w,b) phân chia t p m u vào
các l p có nhãn 1 (l p I) và -1 (l p II) nêu trên v i kho ng cách là l n nh t
Hình 2 1: Phân tách theo siêu ph ẳng (w,b) trong không gian
2 chi ều của tập mẫu
Trang 98
1.1.1 Trình bƠy tóm tắt v phơn l p d li u
- Phân l p d li u là m t kỹ thu t trong khai phá d li u đ c s d ng r ng
rãi nh t vƠ đ c nghiên c u m r ng hi n nay
- M c đích: Đ d đoán nh ng nhãn phân l p cho các b d li u hoặc m u m i
Đầu vào: Một tập các mẫu dữ liệu huấn luyện,với một nhãn phân lớp
cho m ỗi mẫu dữ liệu Đầu ra: Bộ phân lớp dựa trên tập huấn luyện,hoặc những nhãn phân lớp
Phân l p d li u d a trên t p hu n luy n và các giá tr trong m t thu c tính phân l p vƠ dùng nó đ xác đ nh l p cho d li u m i
Kỹ thu t phân l p d li u đ c ti n hành bao g m 2 b c:
Bước 1: Xây dựng mô hình từ tập huấn luyện
Bước 2: Sử dụng mô hình – kiểm tra tính đúng đắn của mô hình và dùng
nó để phân lớp dữ liệu mới
Bư c 1 Xây dựng mô hình
Trang 10T l chính xác bằng ph n trăm các m u/b d li u đ c phân l p đúng
b i mô hình trong s các l n ki m tra
Hình 2.4: S ử dụng mô hình
1.1.2 T i sao l i s d ng thu t toán SVM trong phơn l p d li u
SVM r t hi u qu đ gi i quy t bài toán d li u có s chi u l n ( nh c a d
li u bi u di n gene, protein, t bào)
SVM gi i quy t v n đ overfitting r t t t (d li u có nhi u và tách d i nhóm
hoặc d li u hu n luy n quá ít)
LƠ ph ng pháp phơn l p nhanh
Có hi u su t tổng h p t t và hi u su t tính toán cao
Trang 1110
1.2 THU T TOÁN SVM
1.2.1 Gi i thi u
Bài toán phân l p (Classification) và d đoán (Prediction) lƠ hai bƠi toán c
b n và có r t nhi u ng d ng trong t t c các lĩnh v c nh : h c máy, nh n d ng, trí
tu nhân t o, v.v Trong khóa lu n này, chúng em s đi sơu nghiên c u ph ng pháp Support Vector Machines (SVM), m t ph ng pháp r t hi u qu hi n nay
Ph ng pháp SVM đ c coi là công c m nh cho nh ng bài toán phân l p phi tuy n tính đ c các tác gi Vapnik và Chervonenkis phát tri n m nh m năm
1995 Ph ng pháp nƠy th c hi n phân l p d a trên nguyên lý C c ti u hóa R i ro
có C u trúc SRM (Structural Risk Minimization), đ c xem là m t trong các
ph ng pháp phơn l p giám sát không tham s tinh vi nh t cho đ n nay Các hàm công c đa d ng c a SVM cho phép t o không gian chuyên đổi đ xây d ng mặt
SVM là m t ph ng pháp có tính tổng quát cao nên có th đ c áp d ng cho nhi u lo i bài toán nh n d ng và phân lo i
1.2.3 ụ t ng c a ph ng pháp
Cho tr c m t t p hu n luy n, đ c bi u di n trong không gian vector, trong
đó m i tài li u là m t đi m, ph ng pháp nƠy tìm ra m t siêu phẳng quy t đ nh t t
nh t có th chia các đi m trên không gian này thành hai l p riêng bi t t ng ng là
l p + và l p - Ch t l ng c a siêu phẳng nƠy đ c quy t đ nh b i kho ng cách (g i
là biên) c a đi m d li u g n nh t c a m i l p đ n mặt phẳng nƠy Khi đó, kho ng cách biên càng l n thì mặt phẳng quy t đ nh càng t t, đ ng th i vi c phân lo i càng chính xác
Trang 1211
M c đích c a ph ng pháp SVM lƠ tìm đ c kho ng cách biên l n nh t,
đi u nƠy đ c minh h a nh sau:
Hình 2 5: Siêu ph ẳng phân chia dữ liệu học thành 2 lớp + và - với khoảng cách biên lớn
1.2.4 N i dung ph ng pháp
SVM th c ch t là m t bài toán t i u, m c tiêu c a thu t toán nƠy lƠ tìm đ c
m t không gian F và siêu phẳng quy t đ nh f trên F sao cho sai s phân lo i là th p
nh t
Cho t p m u (x1,y1), (x2, y2), ầ (xf, yf) } v i xi ∈ Rn , thu c vào hai l p nhãn: yi∈ {-1,1} là nhãn l p t ng ng c a các xi (-1 bi u th l p I, 1 bi u th l p II)
Ta có, ph ng trình siêu phẳng ch a vect xi trong không gian:
Đặt f(Xi) = sign (Xi W + b) =
-1, Xi W + b < 0
Trang 13đ nh ch ph thu c các Support Vector và nó có kho ng cách đ n mặt phẳng quy t
đ nh là 1/ w
Cho dù các đi m khác b xóa đi thì thu t toán v n cho k t qu gi ng
nh ban đ u Đơy chính lƠ đi m nổi b t c a ph ng pháp SVM so v i các ph ng pháp khác vì t t c các d li u trong t p hu n luy n đ u đ c đùng đ t i u hóa k t
qu
TÓM L I: trong tr ng h p nh phân phân tách tuy n tính, vi c phân l p
đ c th c hi n qua hàm quy t đ nh f(x) = sign(<w.x> + b), hƠm nƠy thu đ c bằng
vi c thay đổi vect chuẩn w, đơy lƠ vect đ c c đ i hóa vi n ch c năng
Vi c m r ng SVM đ phơn đa l p hi n nay v n đang đ c đ u t nghiên
c u Có m t ph ng pháp ti p c n đ gi i quy t v n đ này là xây d ng và k t h p nhi u b phân l p nh phân SVM (Chẳng h n: trong quá trình luy n v i SVM, bài toán phân m l p có th đ c bi n đổi thành bài toán phân 2*m l p, khi đó trong
m i hai l p, hàm quy t đ nh s đ c xác đ nh cho kh năng tổng quát hóa t i đa)
Trong ph ng pháp nƠy có th đ c p t i hai cách là một-đổi-một, một-đối-tất cả
BƠi toán đặt ra lƠ: Xác đ nh hàm phân l p đ phân l p các m u trong t ng lai, nghĩa lƠ v i m t m u d li u m i xi thì c n ph i xác đ nh xiđ c phân vào l p +1 hay l p -1
Đ xác đ nh hàm phân l p d a trên ph ng pháp SVM, ta s ti n hành tìm hai siêu phẳng song song sao cho kho ng cách y gi a chúng là l n nh t có th đ
phân tách hai l p nƠy ra lƠm hai phía HƠm phơn tách t ng ng v i ph ng trình siêu phẳng nằm gi a hai siêu phẳng tìm đ c
Trang 1413
Hình 2 6: Minh h a bài toán 2 phân l p bằng ph ng pháp SVM
Các đi m mà nằm trên hai siêu phẳnỂ pểân tácể được gọi là các Support
Vector Các đi m này s quy t đ nh đ n hàm phân tách d li u
Đ phân nhi u l p thì kỹ thu t SVM nguyên th y s chia không gian d li u
thành 2 ph n và quá trình này lặp l i nhi u l n Khi đó hƠm quy t đ nh phân d li u
Nh v y, bài toán phân nhi u l p s d ng ph ng pháp SVM hoƠn toƠn có th
th c hi n gi ng nh bƠi toán hai l p Bằng cách s d ng chi n l c "một- đối-
Gi s bài toán c n phân lo i có k l p (k > 2), chi n l c "một-đối-một”s
ti n hành k(k-l)/2 l n phân l p nh phân s d ng ph ng pháp SVM M i l p s
ti n hành phân tách v i k-1 l p còn l i đ xác đ nh k-1 hàm phân tách d a vào bài
toán phân hai l p bằng ph ng pháp SVM
Trang 15li u đ chuy n v đo n [-1, 1] hoặc [0, 1]
Ch n hàm h t nhân: L a ch n hàm h t nhân phù h p t ng ng cho t ng bài toán c th đ đ t đ c đ chính xác cao trong quá trình phân l p
Th c hi n vi c ki m tra chéo đ xác đ nh các thám s cho ng đ ng Đi u nƠy cũng quy t đ nh đ n tính chính xác c a quá trình phân l p
S d ng các tham s cho vi c hu n luy n v i t p m u Trong quá trình hu n luy n s s d ng thu t toán t i u hóa kho ng cách gi a các siêu phẳng trong quá trình phân l p, xác đ nh hàm phân l p trong không gian đặc tr ng nh vi c ánh x
d li u vƠo không gian đặc tr ng bằng cách mô t h t nhân, gi i quy t cho c hai
tr ng h p d li u là phân tách và không phân tách tuy n tính trong không gian đặc
tr ng
Ki m th t p d li u Test
Trang 1615
2.1 S KI N (Facts) VÀ QUAN ĐI M (Opinions)
:
S ki n là nh ng bi u hi n khách quan v c th , các s ki n và các thu c tính c a h
u hi n ch quan mô t tình c m, đánh giá hay
c m xúc c a con ng i đ i v i các th c th , s ki
VD: “ ô tô , và d s d ng”
2.2 NHU C U V THÔNG TIN QUAN ĐI M VÀ NH N XÉT
“Nh ng gì ng i khác nghĩ” đƣ luôn luôn lƠ m t ph n quan tr
d ch v khác nhau (ví d nh , các c quan du l ch hoặc bác sĩ), gi a 73% và 87% báo cáo đánh giá đƣ có m t nh h ng đáng k mua hàng c a h Ng i tiêu dùng sẵn sàng tr t 20% đ n 99% m t m 5 sao cao h n so v i
Trang 1716
m t m c đánh giá 4 sao 32% đƣ cung c p m t đánh giá v m t s n phẩm, d ch v thông qua m t h th ng x p h ng tr c tuy n, trong đó có 18% c a công dân tr c tuy n cao c p, có đăng m t bình lu n tr c tuy n hoặc xem xét v m t s n phẩm hay
là nh ng ng i thu th p thông tin v cu c b u c năm 2006 tr c tuy n vƠ trao đổ
thông qua email
Trong s này:
c quan đi m t bên trong c ng đ ng c a h , và 34% cho
bi t m t lý do chính là đ c quan đi m t bên ngoài c ng đ ng
c a h
; 28% cho bi t rằng h u h t các trang web mà h s d ng chia sẻ quan
th c quan đi m c a h , ch ra rằng nhi u ng i không ch đ n gi n là tìm ki m xác nh n
8% đăng tr c tuy n bình lu n chính tr riêng c a h
Theo Horrigan rằng trong khi đa
s ng i s d ng internet c a Mỹ kinh nghi m tích c c trong
tr c tuy n, 58% cho rằng thông tin tr c tuy n , khó hi u
Vì v
Trang 18
17
quan tâm mà ng i dùng cá nhân trong các ý ki n tr c tuy n v s n phẩm và d ch v , nh
V i s bùng nổ c a n n t ng Web 2.0 , di n đƠn th o lu n,
peer-to-peer m ng, và các lo i khác nhau c
ch a t ng có và quy n chia sẻ kinh nghi m và ý ki n c a
l n đang ngƠy cƠng nh n ra, nh ng ti ng nói c a ng i tiêu dùng có th v n d ng
r t l n nh h ng trong vi c hình thành ý ki n c a ng i tiêu dùng
trung thành v th ng hi u c a h , quy t đ nh mua,và v n đ ng cho chính
th ng hi u c a h Công ty có th đáp ng v i nh i tiêu dùng mà h t o ra thông qua n truy n thông xã h i và phân tích
Tuy nhiên, các nhà phân tích ngành công nghi p l u Ủ rằng vi c t n d ng các
ph ng ti n truy n thông m i cho m c đích hình nh s n phẩm đòi h i c
công ngh m i
Các nhà ti p th luôn luôn c n giám sát các ph ng ti n truy n thông cho thông tin liên quan đ n th ng hi u c a mình, cho dù đó lƠ đ i v i các ho t đ ng quan h công chúng, vi ph m gian l n, hoặc tình báo c nh tranh Nh ng phân m nh các ph ng ti n truy thay đổi hành vi c a ng i tiêu dùng đƣ
truy n th ng Technorati c tính rằng 75.000 blog m i
đ c t o ra m i ngày, cùng v i 1,2 tri u bài vi t m i ngày u ý ki n
ng i tiêu dùng th o lu n v s n phẩm và d ch v
h th ng có kh năng t đ ng phân tích c a ng i tiêu dùng
2.3 MÁY TỊM KI M QUAN ĐI M / NH N XÉT
T o h th ng có th x lý thông tin ch quan m t cách hi u qu đòi h i ph i
khắc ph c m t s thách th t ng d ng s đi n vào thông tin quan
tr ng và phổ bi n c n thi n ch s chú ý vào blog tìm ki m hoặc xem xét các lo i tổng quát h n c a tìm ki m đƣ đ c mô t trên