Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)Phát hiện từ quan điểm mới cho phân tích cảm xúc (Đồ án tốt nghiệp)
B GIÁO D O I H C DÂN L P H I PHÒNG -o0o - ÁN T T NGHI P NGHÀNH CÔNG NGH THÔNG TIN H I PHÒNG 2016 B GIÁO D O I H C DÂN L P H I PHÒNG -o0o - PHÁT HI N T M M I CHO PHÂN TÍCH C M XÚC ÁN T T NGHI I H C H CHÍNH QUY Nghành : Cơng Ngh Thơng Tin H i Phòng 2016 B GIÁO D O I H C DÂN L P H I PHÒNG -o0o - PHÁT HI N T M M I CHO PHÂN TÍCH C M XÚC ÁN T T NGHI I H C H CHÍNH QUY Nghành : Công Ngh Thông Tin Sinh viên th c hi n : Nguy n Danh Long ng d n : Ths Nguy n Th Mã s sinh viên : 1413101003 O B GIÁO D I H C DÂN L P H I PHÒNG -o0o - C NG HÒA XÃ H I CH T NAM c l p T H nh phúc NHI M V THI T K T T NGHI P Sinh viên : Nguy n Danh Long Mã s : 1413101003 L p: CLT 801 Nghành: Công Ngh Thông Tin tài : Phát hi n t m m i cho phân tích c m xúc NHIÊM V N i dung yêu c u c n gi i quy t nhi m v a N i dung b Các yêu c u c n gi i quy t Các s li u c n thi m th c t p thi t k , tình tốn TÀI tài t t nghi p CÁN B NG D TÀI T T NGHI P ng d n th nh t: H tên: H c hàm, h c v : N ng d n: ng d n th hai: H tên: H c hàm, h c v N ng d n: tài t t nghi Yêu c u ph n nhi m v Sinh viên n nhi m v Cán b ng d HI NG n H u Ngh PH N NH N XÉT TÓM T T C A CÁN B NG D N Tinh th c tài t t nghi p: ng c tài t t nghi p (so v i n i dung yêu c u nhi m v tài t t nghi p) m c a cán b ng d n: m ghi b ng s ch ) Ngày .tháng Cán b ng d n ( Ký, ghi rõ h tên ) PH N NH BI A CÁN B TÀI T T NGHI P CH M PH N .) m c a cán b ph n bi n ( m ghi b ng s ch ) Cán b ch m ph n bi n ( Ký, ghi rõ h tên ) M CL C DANH M C B NG 11 L IC L 12 U 13 NG QUAN V PHÂN 1.1 Nhu c u v M 15 m nh n xét 15 1.2 L ch s c m 17 1.3 M t s nghiên c m 18 nh c m t m 18 1.3.2 S d ng tính t phó t 19 1.3.3 S d ng t 20 nh chi ng, c m t 1.4 Nhi m v c m 21 1.5 Bài toán phân l 1.5.1 Phân c m 21 m 21 m m phân c c 22 1.5.2 Nhi m v c a toán phân l NT M 2.1 Gi i thi m 23 M 25 25 28 28 2.2.2 T ng quan thu t toán 28 u ích c a m t m u 29 t m i 31 2.3.1 Ki m tra t l thích h p (LRT) 31 2.3.2 Entropy m u bên trái (Left pattern Entropy) 32 2.3.3 Xác xu t c a m t t m i 32 c không c u thành 33 2.3.5 C k t h p y u t khác 34 2.4 Th c nghi m 35 2.4.1 Chu n b d li u 35 35 v n 36 u ch nh tham s 37 2.4.5 D 2.4.6 c m xúc c a t ng d ng c a t m m i 37 m m i cho phân tích c m xúc 38 NG D NG TÌM T M M I CHO D LI U TI NG VI T 40 tv 40 41 3.3 Th c nghi m 44 3.3.1 D li u 44 3.3.2 X lý d li u 45 K T LU N 49 PH L C 50 TÀI LI U THAM KH O .55 10 Trong thu h p v i d li u ti ng Vi t xu t m t s u ch nh cho phù pháp Các t lo i gán nhãn t lo i cho ti ng Vi t: Theo Nguy d ng cho Ti ng Vi t bao g m: STT Nhãn ng s (2009) nhãn t lo i s Tên N Danh t Np Danh t riêng Nc Danh t ch lo i Nu Danh t V ng t A Tính t P it L nh t M S t 10 R Phó t 11 E Gi i t (k t t ph ) Ví d Ti ng, c, th , nhân dân, c i, chim muông c, Nguy n Du, Vi t Nam, H i Phòng, ng i h c Bách khoa Hà N i, M c t nh, Hóa t nh, Ph t, o Ph t Con, cái, a, b c Mét, cân, gi , n m, nhúm, hào, xu, Ng , ng i, ng i, c, vi t, , t ; thích, yêu, ghét, gi ng, mu n T t, x u, p, cao, th p, r ng Tơi, chúng tơi, h n, nó, y, huynh, i nhân, i ca, M i, t ng, m i, ; các, nh ng, m y M t, i, ,s , Trên, , vài, , n a, i , v a, m i, t ng, xong, r i ; r t, , i, trong, ; c a, tr , ngoài, kh i, 41 12 C Liên t (k t t ng l p) Và, v i, cùng, v y, nhiên, 13 I Thán t 14 T Tr t , tình thái t (ti u t ) 15 B T ti c (hay t n) Internet, email, video, chat 16 Y T vi t t t OPEC, WTO, HIV 17 S Y ut c ut o B t, vô 18 X Các t không phân lo i c cl i Ôi, chao, À, a, á, , y, ch c, , cho, ch B ng 5: Các nhãn t lo i Ti ng Vi t V ch pháp: Ch pháp c a Phó t ti ng Vi ng t ho c tính t m hay c m xúc M t s phó t b m nh di nh n c s d ng ,r Tuy nhiên, Ti ng Vi t không s d ng tr m ts ng h p tr ng t ng t , gi i thích l i (Phó t - Adverbial word) Các t mà ch ng t ho c tính t khá, s , r 42 b (tr t ) Các t tr t hay tình thái t , ho c d u ng t câu bao g m á, , y, ch c, -1 (M u t v ng) Chúng ta s d ng m u t v t phát hi n t m m i Xét theo khía c nh ngơn ng Ti ng Vi t, m t phó t có th b ng t ho c tính t c mt cs d di m hay c m xúc M t m u t v ng m t b ba g t phó t , ký t i di n * m t s tùy ý t ng , t t c bi u th m t t ph tr Áp d ng thu t tốn tìm t m i Input: D: m t t p l n ch a bình lu c gán nhãn Ws: m t t p t gi ng kp: s m c ch n cho m i l n l p kc: s m u t p m u ng c kw: s t c thêm vào m i l n l p K: s t c tr v Output: M t danh sách t m i W L y t t c m u t v ng s d ng bi u th ng D m t n xu t xu t hi n c a m i m u t v ng trích t phù h p v i m i m u; L y kc m u có t n xu t cao nh t t p m u ng c cho t p Pc 1000 t có t n xu t cao nh t t p t ng c Wc; S d m v i m i m u Pc v i U(p); P = {top kp m u} 43 S d trích t m i n u t n m Wc, tính m chúng v i F(w); Wc=Wc W; S p x p t W v i F(w); K t qu danh sách t c x p W; M ng c a ti ng Vi t Ti có th t ch a m t âm ti t hay nhi u âm ti d c gi i thi c am ut v nh kh t t t m i b xu t tt thích h p 3.3 Th c nghi m 3.3.1 D li u S d ng d li n ph m k thu n tho ng, máy tính xách tay, tablet, máy nh, truy c thu th p t m t s di k thu t Vi Ti n x lý d li u: lo i b nh ng t khơng có d u, l i t bình lu n D li u bao g m 6000 bình lu n S d ng công c tách t ti ng Vi t, gán nhãn t lo làm d li u vào cho thu t tốn M t s bình lu n: n tho i ph thông cho nh i l n tu i (cô, bác, b , m ) ho c cho tr (cháu, em) v n ch Smartphone Nokia khơng m t s l a ch n n a, k t b Nokia cho n m m c th i 2tr190k gi gi m có ~800k theo nh n xét c a em (~800k ch lúc em mua ~2m2 chát quá) wifi nhà n, xài viettel gprs ~5-10kb/s, 3g ~45kb/s nói chung ch bác ch V b -4 l n t 44 n n sim1 b lock m ng mobi sau nhiên t unlock ch ch hi u th nên gi viettel sim 3g v t xó tình tr mà em th ng nên ch ng quan tâm l m.máy v n ch ng ng ng l y l i th ph n, nhi u kh thi gh m n trung thành, kh ng th gió chi u hùa theo chi ng nhu c nc u màu Mùa hè nhìn ch c nóng l o em u t i l i v y! Chi c 201 th c t b n c a 200 l i h tr , ph ng cung ng.! haiz chán y s n ph m th c s hoàn h o c Sim c , v n có thi u sót! A em c g ng góp ý nhi t tình r i ph n h i v i Nokia VN! m c em v t nguy nkim r t hài lòng v k t n i wifi máy báo t c 50% báo 'khơng tìm th y máy ch ' hic bác bi t giúp minh v i có bi t up rom khơng? nói chung em v avio 2- có wifi, em tồn nghe online v i down nh - 3.3.2 X lý d li u d ng công c tách t Ti ng Vi t gán nhãn t lo i x lý d li u bình lu n D li u l c sau s d ng công c tách t vntokenizer : n_tho i ph _thông cho nh i l n_tu i ( cô , bác , b , m ) ho c cho tr _con ( cháu , em ) v n ch mua Smartphone Nokia khơng m t s l a_ch n n a , k t 45 b Nokia cho n m m không c u_vã c th i 2tr190k gi gi m có ~ 800k theo nh n_xét c a em ( ~ 800k ch lúc em mua ~ 2m2 chát ) wifi nhà n , xài viettel gprs ~ 5-10kb / s , 3g ~ 45kb / s nói_chung ch ói V b 3-4 l n t n n sim b lock m ng _nhiên t unlock ch ch hi u th _nào nên gi t xó Cá ng ng mà tình_tr mà em th y ng nên ch ng quan_tâm l m máy v n ch y ng l y l i th _ph n , nhi u kh _thi gh m n trung_thành , kh ng th gió chi u hùa theo chi ng nhu_c nc u màu Mùa_hè nhìn ch c nóng l o u t i_sao l i v y ! Chi c 201 th c_t b n_sao c a 200 l i h _tr , ph ng cung_ ng ! haiz y s n_ph m th c_s hoàn_h o c a Nokia có , v n có thi u_sót ! A em c _g ng góp_ý nhi t_tình r i ph n_h i v i Nokia VN ! m c em v t nguy nkim r t hài_lòng v k t_n i wifi máy báo t c 50% báo ' khơng tìm th y máy_ch ' hic bác bi t giúp minh v i có bi t up rom khơng ? nói_chung em v : 1avio - có wifi , em toàn nghe online v i down nh c qua wifi không àh D li u l c sau s d ng công c gán nhãn t lo i vntagger : 46 n/N _/M tho i/N ph /V _/M thông/N cho/E nh ng/L i_l n/N _/M tu i/N (/M cô/N ,/, bác/N ,/, b /N ,/, m /N )/V ho c/CC cho/V tr /A _/M con/Nc (/N cháu/N ,/, em/N )/A thì/C mình/P v n/R ch n/V là/V m t/M s /Nc l a/V _/A ch n/V n a/R ,/, k /V t /E khi/N mình/P b /V Nokia/Np cho/V n m/V m ng/A "/" là/V N96/Np ,/, N97/Np u/V _/N vãn/V c/R / /E cái/Nc th i/N còn/R 2tr190k/M gi /Nu nó/P gi m/V còn/R có/V ~/N 800k/M theo/E nh n/V _/N xét/V c a/E em/N là/V con/N này/P (/M ~/Nu 800k/M ch /C lúc/N em/N mua/V là/V ~/M 2m2/M thì/C chát/A quá/R )/A wifi/V nhà/N n/A ,/, xài/V viettel/N gprs/V ~/N 5-10kb/M //X s/A ,/, còn/C 3g/M thì/C ~/M 45kb/M //X s/N nói/V _/N chung/A là/C ch /N b n/N -4/M l n/N t n/R n/A / còn/R cái/Nc sim/N 1/M b /V lock/V m ng/N mobi/V thì/C sau/N t /P _/M nhiên/N nó/P t /P unlock/V ch /C ch /R hi u/V th /P _/M nào/P nên/C gi v t/V xó/N / _/V tr ng/N v n/R ch /V tình/N /P / mà/C em/N th ng/R ng/V gì/P nên/C ch ng/R quan/N _/M tâm/N l m/R / máy/N ng/R mà/T / ng/N l y/V l i/R th /N _/M ph n/N ,/, nhi u/A con/Nc kh /N _/M thi/V gh m/V / n/R trung/V _/M thành/N ,/, kh ng/N th /R gió/N chi u/N nào/P hùa/V theo/E chi ng/V nhu/N _/M c n/N c 47 i/N khá/R nhi u/A màu/N / Mùa/N _/M hè/N nhìn/V ch c/A nóng/A l m/R i u/V t i/E _/M sao/N l i/R v y/P !/! Chi c/Nc 201/M th c/N _/Np t /V là/V b n/N _/M sao/N c a/E 200/M l i/R h /V _/N tr /V ,/, ph ng/N cung/N _/M y/V s n/N _/M ph m/N nào/P th c/V _/M s /Nc hoàn/V _/A h o/V c a/E Nokia/Np có/V /T ,/, v n/R có/V thi u/A _/A sót/V !/! A/I em/N c /V _/M g ng/N góp/V _/M ý/N nhi t/N _/M tình/N r i/C ph n/V _/M h i/N v i/E Nokia/Np VN/Np !/! mình/P m c/V em/N này/P v /V t /E nguy nkim/N r t/R hài/A _/M lòng/N v t/V _/N n i/V wifi/N máy/N báo/V t c/R 50%/M báo/N '/V khơng/R tìm/V th y/V máy/N _/M ch /N '/N hic/V bác/N nào/P bi t/V giúp/V minh/N v i/E / có/V ai/P bi t/V up/V rom/N con/N nay/P khơng/R ?/? nói/V _/N chung/A là/C em/N v n/R thích/V con/Nc FPT/Np này/P -/- có/V wifi/N ,/, em/N tồn/R nghe/V online/V v i/E down/N nh c/N qua/V wifi/N không/R àh/V 48 K T LU N c m t s k t qu Tìm hi u t ng quan v m hay khai thác quan m v t v i tốn Tìm hi u v m m i d li u, ng d m Tìm hi u v gán nhãn t lo i cho Ti ng Vi t m t s m ngôn ng ti ng Vi t a ch xu t cho ng d ng tìm t m m i cho d li u Ti ng vi t Phân tích d li u thu th p t bình lu n trang m ng xã h i, ti n x lý d li u, tách gán nhãn t lo chu n b d li u cho th c nghi m tài v i nh ng n i dung ki n th c hoàn toàn m i v i em nên vi c c tài li u, trình bày tìm hi u ng d ng m t thách th c không nh Do v i m t kho ng th i gian ng c phép th c hi ng d ng Trong th i gian t i, em s ti p t c phát tri t qu th c nghi m c t nh u ch xu t m r ng phù h p v i ng li u ti p t c th nghi m v i ng li l t qu c Trong m t kho ng th i gian có h n, nên vi c phát tri n trình bày v c khơng tránh kh i nh ng thi u sót Em r t mong nh n c nh ng ý ki a th y cô b n Em xin thân thành c 49 PH L C Công c tách t vntokenizer I) T NG QUAN cs d Vi t (mã hóa b ng b ng mã Unicode UTF-8) dòng l nh: - vnTokenizer.sh n u ch y h tách t n ti ng i d ng u hành Linux/Unix/Mac OS - vnTokenizer.bat n u ch y h u hành MS Windows Yêu c u: Máy c n cài JRE (Java Runtime Environment) phiên b n 1.6 JRE có th t i v t a ch website Java c a Sun Microsystems: http://java.sun.com/ II) D LI U Trong m t l n ch y vnTokenizer có th tách t m t t p ho nhi u t p n m m c ng th i 1) Tách t m t t p: D li u c n cung c d ng thơ (ví d p README.txt này) m1t K t qu : M t t n k t qu tách t gi n ho nh d ng XML, tùy theo l a ch n c 2) Tách t nhi u t p n m m D li u c n cung c p g m m tách t c input) m qu tách t M t t c t t b n ti ng Vi t, nh d i s d ng (xem ví d c: c ch a t c tr ng quét toàn b i s d ng có th 50 n thơ c n ch a k t c input l c nh t kì, ví d ".seg" b ng tùy ch n -e c a dòng l nh (xem ví d K t qu : T p t p k t qu tách t c output, t p có tên v i t ng, t c t p input/abc.txt s có k t qu t p output/abc.txt III) CH 1) Tách t m t t p: vnTokenizer.sh -i -o [] Hai tùy ch n -i -o b t bu tùy ch n không b t bu -xo nh d n thơ i dùng có th cung c p bi u di n k t qu nh d ng m c -nu: không s d ng d u g i (no underscore) ghi k t qu N u tùy ch c s d ng k t qu , âm ti cn iv i b ng ký t g i, mà b ng ký t tr ng -sd: s d ng môc th c hi n tách t N u tùy ch n cs d c tiên vnTokenizer th c hi n input thành m t t c hi n tách t t ng câu m t M nh mơc s d ng, vnTokenizer th c hi n tách t toàn b n Các tùy ch n có th c ph i h ng th i v cho k t qu mong mu n Ví d : a) vnTokenizer.sh -i samples/test0.txt -o samples/test0.tok.txt Tách t t p samples/test0.tok.txt samples/test0.txt ghi k t qu vào t p b) vnTokenizer.sh -i samples/test0.txt -o samples/test0.tok.xml -xo p k t qu samples/test0.tok.xml s d ng XML 51 nh c) vnTokenizer.sh -i samples/test0.txt -o samples/test0.tok.txt -sd d ng mô2) Tách t m m -e : ch c tách t c: Ngoài tùy ch trên, tách t p thêm tùy ch n không b t bu c nh ph n m r ng c a t p c n tách Ví d : a) vnTokenizer.sh -i samples/input -o samples/output Th c hi n tách t t t c t p samples/input/*.txt, ghi k t qu c samples/output b) vnTokenizer.sh -i samples/input -o samples/output -e.xyz Th c hi n tách t t t c t p samples/input/*.xyz, ghi k t qu m c samples/output 52 Công c gán nhãn vntagger I) T NG QUAN n ti ng vi xác cao kho ng 96% c cung c p t p tin jars c c lib d ng 18 nhãn t lo i d ng II) YÊU C U Máy c n cài jre 6.0 tr lên JRE có th t i v t c a Sun Microsystems: http://java.sun.com/ a ch website Java III) CH - vnTagger.sh n u ch y h u hành Linux/Unix/Mac OS - vnTagger.bat n u ch y h d ng phiên b n có giao di Cách gán nhãn m t t u hành MS Windows i dùng n u b n mu n s i dùng, b n nên t i vnToolkit n B n nên cung c p tham s gán nhán (l a ch n tham s -i) t a ch n tham s -o) u th hi n k t qu c a Ví d : /vnTagger.sh -i samples/0.txt -o samples/0.tagged.xml n ti ng vi t có s d ng mã UTF-8 file ct ob -8 Theo m c nh t c tách v i b ng d u cách, b n có th s d ng tách chúng b ng d u g i N u b n mu n t p k t qu m t t n n thay t p XML, s d ng l a ch n -p /vnTagger.sh -i samples/0.txt -o samples/0.tagged.xml -u S xu t v i âm ti c tách b i d u g 53 i ./vnTagger.sh -i samples/0.txt -o samples/0.tagged.xml u -p S xu t v i âm ti n thay t p XML c tách b i d u g i xu t t p Cách ki m tra t N u b n mu n ki s -t t p c n ki m tra xác c a vi c gán nhãn, s d ng tham Ví d : /vnTagger.sh -t samples/1.tagged.txt K t qu ki m tra s IV) S c xu t giao di u n chu n D NG THE API L p c l p cung c c gán nhãn sau : + public String tagText(String text) Gán nhãn m n k t qu m t chu i + public void tagFile(String inputFile, String outputFile, IOutputer outputer) Gán nhãn m t t n k t qu c xu t m t t p + public void tagFile(String inputFile, String outputFile) Gán nhãn m t t m tt nm nh Và m n k t qu ki m tra t + public void testFile(String filename) 54 c xu t m t t p, s d ng TÀI LI U THAM KH O [1] Ph phân l Tìm hi u v support vector machine cho toán án t t nghi p ngành Cơng ngh ng i Phòng, 2012 [2] Lê H ng d n s d ng công c tách t Ti ng Vi t vnTokenizer, version 4.1.1 [3] Lê H ng d n s d ng công c gán nhãn t lo i Ti ng Vi t vnTagger, version 4.1.1 [4] Nguy Tài li ng d n gán nhãn t lo i ti ng Vi t n Th Minh Huy n [5] Guang Qiu, Bing Liu, Jiajun Bu, and Chun Chen 2011 Opinionwordexpansionandtargetextraction Computational linguistics,37(1):9 27 through double propagation [6] MinlieHuang, BoruiYe, YichenWang, HaiqiangChen, JunjunCheng, XiaoyanZhu 2014 In Proceedings of the Association for Computational Linguistics, 2014 55 ... Chính lý trên, phân tích c án t t nghi p c a N nt m m i cho án bao g : T ng quan v m : Phát hi n t m : i m ng d ng tìm t m m i cho d li u Ti ng Vi t Cu i ph n k t lu n 14 NG QUAN V PHÂN TÍCH M 1.1... - PHÁT HI N T M M I CHO PHÂN TÍCH C M XÚC ÁN T T NGHI I H C H CHÍNH QUY Nghành : Cơng Ngh Thơng Tin H i Phòng 2016 B GIÁO D O I H C DÂN L P H I PHÒNG -o0o - PHÁT HI N T M M I CHO PHÂN TÍCH... toán phân l 1.5.1 Phân c m 21 m 21 m m phân c c 22 1.5.2 Nhi m v c a toán phân l NT M 2.1 Gi i thi m 23 M 25 25 28 28 2.2.2 T ng quan thu t toán