S˚ dˆng Wikipedia nh˜ nguÁn tài nguyên bên ngoài

Một phần của tài liệu Hỏi đáp tự động sử dụng nhiều nguồn tri thức (Trang 87)

3.4.1 Wikipedia

Wikipedia - bách khoa toàn th˜ m ˜Òc chÂn nh˜ là nguÁn tài nguyên bên ngoài áng tin c™y nhßt dùng ∫ ánh giá Îphù hÒp cıa các câu tr£lÌi. Các nÎi dung trên các trang Wikipedia rßt phong phú, a d§ng và th˜Ìng xuyên ˜Òc c™p nh™t s≥ là nguÁn tài nguyên có Îchính xác cao, chúng có th∫bÍsung thông tin trong viªc ánh giá chßt l˜Òng cıa các câu tr£ lÌi trong các cQA. Nghiên c˘u cÙng ã s˚dˆng các ∞c tr˜ng trích rút t¯câu h‰i và các câu tr£lÌi cıa nó, cÙng nh˜ các ∞c tr˜ng mÓi b¨ng cách s˚ dˆng các tài liªu t¯ Wikipedia. Các th¸c nghiªm s≥ ˜Òc th¸c hiªn b¨ng cách s˚ dˆng Wikipedia phiên b£n ti∏ng Anh vÓi nguÁn thông tin h‰i áp là các c∞p câu h‰i - câu tr£ lÌi ˜Òc trích rút t¯ các hª thËng cQA Yahoo!Answers và StrackOverflow.

3.4.2 S˚ dˆng Wikipedia cho ánh giá Î phù hÒp cıa câu tr£ lÌi

Các câu h‰i non-factiod th˜Ìng là các câu h‰i d§ng why, definition ho∞c how, vv. Lu™n án t™p trung vào viªc ánh giá Î phù hÒp cıa các câu tr£ lÌi cıa các câu h‰i ‡nh nghæa, ó là các câu h‰i th˜Ìng ˜Òc h‰i trong các hª thËng h‰i áp. Nh˜ ã ∑ c™p tr˜Óc ó, lu™n án s˚ dˆng Wikipedia nh˜ là nguÁn tài nguyên bên ngoài ∫ bÍ sung thông tin giúp ánh giá Î phù hÒp cıa các câu

tr£lÌi cıa các câu h‰i ‡nh nghæa.

Thông th˜Ìng các mô hình nghiên c˘u tr˜Óc ây chø d¸a vào thông tin nÎi t§i, t˘c là câu h‰i ¶u vào và câu h‰i dùng ∫ so sánh trong cÏ s d˙ liªu. MÎt trong nh˙ng óng góp chính cıa lu™n án là ∑ xußt s˚dˆng thông tin, tri th˘c t¯ bên ngoài và tích hÒp vào mô hình ∫ mô hình giàu thông tin hÏn d®n tÓi d¸

oán chính xác hÏn. Viªc lu™n án s˚ dˆng thông tin t¯Wikipedia vì nguÁn này ch˘a các thông tin a d§ng. Chúng ta cÙng có th∫ s˚ dˆng các nguÁn thông tin khác d¸a vào mi∑n d˙ liªu chúng ta ang làm viªc.

Mô hình ánh giá Î phù hÒp cıa câu tr£ lÌi

Mô hình cıa hª thËng ánh giá Î phù hÒp cıa câu tr£ lÌi ˜Òc mô t£ nh˜

trong Hình 3.1. Mô hình th¸c hiªn phân tích câu h‰i ∫ tìm ra mˆc tiêu (tên th¸c th∫) mà câu h‰i muËn h‰i, phân tích câu tr£lÌi ˘ng viên và s˚dˆng nguÁn tài nguyên t¯ Wikipedia ∫ ánh giá Î phù hÒp cıa các câu tr£ lÌi ˘ng viên này.

Phân tích câu h‰i

Mô- un này là mÎt thành ph¶n quan trÂng trong hª thËng ánh giá Î phù hÒp cıa các câu tr£lÌi. K∏t qu£cıa mô- un này là viªc xác ‡nh thông tin nòng cËt (mˆc tiêu câu h‰i) mà ng˜Ìi h‰i muËn h‰i hay chính là chı ∑ cıa câu h‰i (tên th¸c th∫). Áng thÌi t¯ viªc phân tích câu h‰i này cÙng s≥ xác ‡nh ˜Òc ki∫u cıa câu tr£ lÌi cho câu h‰i. Vßn ∑ này ˜Òc th¸c hiªn theo các b˜Óc sau: 1. Phân tích mÈi câu h‰i q thành mÎt t™p cıa các câu (sentence) q =

{s1, s2, . . . , sm}, (m = 1, 2, . . . )

2. Xác ‡nh có hay không mÎt câu trong q là câu ‡nh nghæa. i∑u này ˜Òc th¸c hiªn bi s˚ dˆng các m®u câu h‰i nh˜ ˜Òc mô t£ trong B£ng 3.4. B£ng này mô t£ các m®u cıa các câu h‰i ‡nh nghæa cùng vÓi ki∫u cıa câu tr£ lÌi mong Òi.

3. MÈi câu ‡nh nghæa sau ó ˜Òc phân tích ∫ tìm ra mˆc tiêu cıa câu h‰i. Mˆc tiêu cıa câu h‰i  ây ˜Òc xác ‡nh là tên th¸c th∫ mà câu h‰i c¶n

‡nh nghæa.

B£ng 3.4: Các m®u câu h‰i và câu tr£ lÌi ˜Òc s˚dˆng cho câu h‰i ‡nh nghæa

M®u câu h‰i M®u câu tr£ lÌi

Who + to be + <person name>? <person name>+ . . . What + to be + <organization name>? <organization name>+ . . .

Cho ví dˆ, Ëi vÓi câu h‰i “What is atomic radius? Why does it decrease when you go across the row (left to right) and increase down the group?”, câu

‡nh nghæa trích rút ˜Òc là “What is atomic radius?” và mˆc tiêu cıa câu h‰i là “atomic radius”.

Tìm ki∏m các tài liªu Wikipedia liên quan

Mô- un này th¸c hiªn tìm ki∏m các tài liªu Wikipedia mà có liên quan ∏n câu h‰i t¯ mÎt t™p lÓn các tài liªu Wikipedia cho tr˜Óc. D¸a trên mˆc tiêu cıa câu h‰i ∫ tìm các tài liªu Wikipedia mà tiêu ∑ cıa chúng so khÓp ˜Òc vÓi mˆc tiêu này. Khi mÎt tài liªu Wikipedia ˜Òc tìm thßy, nó s≥ ˜Òc s˚ dˆng trong các mô- un ti∏p theo ∫ ánh giá s¸ tin c™y cıa các câu tr£ lÌi. Hình 3.2

Hình 3.2: Minh hÂa tìm ki∏m tài liªu Wikipedia liên quan

Phân tích các câu tr£ lÌi

MÈi câu tr£ lÌi trong cQA có th∫ gÁm nhi∑u câu (sentence). Mˆc ích cıa mô- un này là phân tích các câu tr£ lÌi ˘ng viên ∫ trích rút ra nh˙ng câu tr£

lÌi tËt nhßt t˜Ïng ˘ng cho câu h‰i t¯ mÎt t™p cıa các câu tr£ lÌi ˘ng viên. Nh˙ng câu tr£ lÌi này ˜Òc xác ‡nh bi thu™t toán 1.

Algorithm 1:Thu™t toán xác ‡nh các câu tr£ lÌi cho câu h‰iq.

1 ¶u vào:câu h‰iq, t™p các câu tr£lÌi{a1, a2, ..., an}

2 ¶u ra:câu tr£ lÌi cho câu h‰iq.

3 begin

4 fori= 1!ndo

5 chia câu tr£ lÌiaithành các câu ai={s1, s2, ..., sk}

6 Ai =? 7 forj= 1!kdo 8 score(sj) =similarity(sj, q) 9 if (score(sj)> t)then 10 Ai =Ai[{sj} 11 end 12 end 13 end 14 return (Ai) 15 end Dòng lªnh 5, mÈi câu tr£ lÌi ai ˜Òc tách thành các câu, kí hiªu là

{s1, s2, ..., sk}. MÈi câu h‰i ai s≥ có mÎt t™p Ai ch˘a các sj là câu tr£ lÌi cho câu h‰i q. Dòng lªnh 8 tính toán i∫m sË cho mÈi sj là Î t˜Ïng t¸ gi˙a sj vÓi

câu h‰i q. N∏u i∫m sË này lÓn hÏn mÎt giá tr‡ cho tr˜Óc t (t là mÎt giá tr‡

ng˜Ông ã ˜Òc ‡nh nghæa tr˜Óc) thì câu sj ˜Òc chÂn nh˜ là câu tr£ lÌi cho câu h‰i q và ˜Òc k∏t n§p vào t™p Ai. CuËi cùng, thu™t toán tr£ v∑ Ai là t™p ch˘a các câu tr£ lÌi cho câu h‰i q. Trong thu™t toán 1, s˚dˆng hai vòng l∞p for lÁng nhau (dòng lªnh 4 và 7), trong mÈi thân vòng l∞p chø ch˘a các lªnh vÓi Î

ph˘c t§p h¨ng sË. Do ó Îph˘c t§p cıa thu™t toán 1 là O(n⇥k) trong ó n là sË các câu tr£ lÌi và k là sË câu trong mÈi câu tr£ lÌi. Do k nh‰ hÏn rßt nhi∑u so vÓi n nên Î ph˘c t§p cıa thu™t toán 1 là O(n).

Trích rút các ∞c tr˜ng t¯Wikipedia

Mô- un này th¸c hiªn trích rút các ∞c tr˜ng d¸a trên nguÁn thông tim m

rÎng Wikipedia b¨ng cách tính toán Ît˜Ïng t¸ gi˙a các tài liªu Wikipedia tìm

˜Òc vÓi các câu tr£ lÌi cho câu h‰i (các câu này ã ˜Òc trích rút nh˜ trong thu™t toán 1). Î t˜Ïng t¸ gi˙a các câu tr£ lÌi ˘ng viên và tài liªu Wikipedia

˜Òc tính toán bi thu™t toán 2.

Algorithm 2:Thu™t toán tính toán s¸giËng nhau gi˙a câu tr£ lÌi và tài liªu Wikipedia.

1 ¶u vào:q,{a1, a2, ..., an}, t™p tài liªu Wikipedia{w1, w2, ..., wh}.

2 ¶u ra:score(ai) 3 begin 4 forj= 1!hdo 5 if match(q, wj)then 6 fori= 1!ndo 7 score(ai) = 0 8 forl= 1!k0 do

9 score(ai) =score(ai) +similarity(sl, wj)

10 end 11 end 12 end 13 end 14 return score(ai) 15 end

¶u vào cho thu™t toán 2 bao gÁm câu h‰i q, các câu tr£ lÌi ˘ng viên cıa nó {a1, a2, ..., ak} và mÎt t™p lÓn các tài liªu Wikipedia. Giai o§n ¶u tiên cıa

thu™t toán này s≥ tìm tài liªu Wikipedia mà có tiêu ∑ so khÓp vÓi mˆc tiêu cıa câu h‰i q. Ëi vÓi viªc l¸a chÂn các tài liªu Wikipedia, thu™t toán chø s˚ dˆng ph¶n tóm t≠t (abstract) cıa nó d¸a trên s¸ quan sát cıa chúng tôi r¨ng chúng ch˘a h¶u h∏t các nÎi dung thông tin cıa các ‡nh nghæa mà câu h‰i q muËn h‰i. Giai o§n th˘ hai s≥ tính toán i∫m sË giËng nhau gi˙a ai và mÈi tài liªu Wikipedia ˜Òc l¸a chÂn. Thu™t toán này s˚ dˆng 3 vòng l∞p for lÁng nhau 

các dòng lªnh 4, 6 và 8, do ó Îph˘c t§p cıa thu™t toán là O(h⇥n⇥k0). Tuy nhiên k0 là sËcâu trong mÈi câu tr£ lÌi ai, nó nh‰hÏn nhi∑u so vÓi sËcâu tr£lÌi (n) và sË tài liªu wikipedia (h). Do ó Îph˘c t§p cıa thu™t toán 2 là O(n2).

∫ tính toán similarity(sl, wj) ( Î t˜Ïng t¸ gi˙a câu tr£ lÌi sl và tài liªu Wikipedia wj) lu™n án ∑ xußt s˚ dˆng hai ph˜Ïng pháp. Ph˜Ïng pháp th˘

nhßt là d¸a trên so khÓp t¯ và ph˜Ïng pháp th˘ hai là s˚ dˆng s¸ bi∫u diπn véc-tÏ t¯ (s˚ dˆng mô hình bi∫u diπn word2vec).

Ph˜Ïng pháp 1: ‡nh nghæa s¸ giËng nhau gi˙a câu tr£ lÌi sl và wj d¸a trên t¶n sË xußt hiªn cıa mÈi t¯ trong sl trong wj bi công th˘c 3.2.

similarity(sl, wj) =X

t2sl

f(t, wj)

|sl| (3.2)

Trong ó t là mÎt t¯ trong sl; f(t, wj) là sË l¶n xußt hiªn cıa t¯ t trong tài liªu wj; |sl| là tÍng sË t¯ trong sl.

Ph˜Ïng pháp 2: S˚ dˆng s¸ bi∫u diπn véc-tÏ t¯ ∫ mô hình hóa mËi quan hª gi˙a ls và wj. Tßt c£ các câu trong sl và wj ˜Òc phân tích thành các t¯ tË

và sau ó tßt c£ các t¯ trong sl và wj ˜Òc bi∫u diπn d˜Ói d§ng các véc-tÏ s˚

dˆng mô hình hußn luyªn word2vec. MÈi t¯tu trong sl sau ó s≥ ˜Òc gióng vÓi tßt c£ các t¯ trong wj và l¸a chÂn t¯ có Î t˜Ïng t¸ véc-tÏ lÓn nhßt vÓi tu nh˜

công th˘c 3.3.

score(tu) = max

1v|wj|(word2vec_sim(tu, bv)) (3.3) Trong ó:

|wj|: sË t¯ trong wj.

tu: s¸ bi∫u diπn véc-tÏ t¯ cıa t¯ th˘ u trong sl bv: s¸ bi∫u diπn véc-tÏ t¯ cıa t¯ th˘v trong wj

word2vec_sim(tu, bv): Ît˜Ïng t¸ cosin gi˙a hai s¸ bi∫u diπn véc-tÏ t¯ cıatu

CuËi cùng, i∫m sË t˜Ïng t¸gi˙a sl và wj ˜Òc tính toán bi công th˘c 3.4. similarity(sl, wj) = P|sl| u=1score(tu) |sl| (3.4) Trong ó |sl| là sË l˜Òng các t¯ trong sl. 3.5 Th¸c nghiªm 3.5.1 T™p d˙ liªu Thu th™p d˙ liªu t¯ web. ∫ th¸c hiªn các th¸c nghiªm cıa mình, lu™n án ã thu th™p d˙ liªu t¯ các trang cQA Yahoo!Answer và StackOverflow. Lí do cıa viªc s˚ dˆng d˙ liªu t¯

các cQA này là vì: (1) chúng là các hª thËng cQA lÓn, có ch˘a sËl˜Òng rßt lÓn các câu h‰i và câu tr£ lÌi và ang ˜Òc s˚ dˆng rÎng rãi bi các chuyên gia và ng˜Ìi dùng, (2) các câu h‰i và câu tr£ lÌi thuÎc nhi∑u chı ∑ khác nhau.

∫ th¸c hiªn thu th™p d˙ liªu là các tài liªu HTML t¯các trang Web, nghiên c˘u s˚ dˆng công cˆ Teleport-Pro1. Teleport-Pro là công cˆ ˜Òc thi∏t k∏ ∫

t£i v∑ các tài liªu trên m§ng thông qua giao th˘c HTTP, FPT và th¸c hiªn viªc l˜u tr˙ các tài liªu thu th™p ˜Òc. – ây, lu™n án chÂn các URL t¯ hai website Yahoo!Answer và StackOverflow. Sau ó nghiên c˘u s˚ dˆng Teleport-Pro ∫

t£i v∑ nÎi dung các trang web. Các nÎi dung t£i v∑ th˜Ìng ch˘a các thành ph¶n giao diªn nh˜ JavaScript, Flash, vv. Vì v™y s≥ ph£i lo§i b‰ các thành ph¶n này và chø gi˙l§i ph¶n v´n b£n là nÎi dung chính cıa các trang web này.

K∏t qu£, lu™n án ã thu th™p ˜Òc t¯ Yahoo!Answer t™p d˙ liªu ch˘a 5977 câu h‰i và 15895 câu tr£lÌi t˜Ïng ˘ng. T™p d˙liªu t¯StackOverflow ch˘a 1407 câu h‰i và 4013 câu tr£ lÌi t˜Ïng ˘ng. Tßt c£ các c∞p câu h‰i-câu tr£ lÌi này

∑u ˜Òc trình bày b¨ng ngôn ng˙ ti∏ng Anh. T¯ t™p d˙ liªu này s≥ l¸a chÂn nh˙ng câu h‰i ‡nh nghæa, ó là nh˙ng câu h‰i có ch˘a các câu th‰a mãn các m®u nh˜ trong B£ng 3.4. Sau ó ˜Òc 653 c∞p câu h‰i - câu tr£ lÌi mà các câu h‰i có ch˘a các câu ‡nh nghæa. Nghiên c˘u l¸a chÂn ng®u nhiên 523 c∞p câu h‰i - câu tr£ lÌi ∫ làm d˙ liªu hußn luyªn và ph¶n các câu h‰i - câu tr£lÌi còn l§i làm t™p d˙ liªu ki∫m tra. Trong các t™p d˙ liªu này, mÈi câu tr£ lÌi s≥ ˜Òc gán các nhãn t˜Ïng˘ng là “phù hÒp” ho∞c “không phù hÒp”. Nhãn “phù hÒp” có

nghæa ó là mÎt câu tr£ lÌi tËt cho câu h‰i t˜Ïng ˘ng và nhãn “không phù hÒp” có nghæa là ó không thích hÒp là mÎt câu tr£lÌi cho câu h‰i t˜Ïng˘ng. Ëi vÓi các b˜Óc ti∑n x˚ l˛ cho phân tích các câu h‰i và các câu tr£ lÌi thành các t¯, các câu, nghiên c˘u s˚ dˆng bÎ công cˆ x˚ l˛ ngôn ng˙ t¸ nhiên The Stanford Core NLP2. B£ng 3.5 là mÎt sË thËng kê trên t™p d˙ liªu ˜Òc s˚ dˆng.

B£ng 3.5: MÎt sË thËng kê v∑t™p d˙ liªu T™p d˙liªu C∞p câu h‰i-câu tr£ lÌi Tø lªcâu tr£ lÌi / câu h‰i TB sËt¯ TB sË kí t¸ D˙liªu hußn luyªn 138 - 523 3,79 8,56 43,41 D˙liªu ki∫m tra 34 - 130 3,82 8,22 42,88 D˙ liªu Wikipedia có th∫ §t ˜Òc mÎt cách dπ dàng t¯ https://dumps.wikimedia.org/enwiki/20150901/ ∫ s˚ dˆng cho các nhà nghiên c˘u. D˙ liªu này có sÆn trong ‡nh d§ng cıa database dumps và ˜Òc l˜u tr˙mÎt cách ‡nh kì. Phiên b£n mà lu™n án s˚dˆng trong các th¸c nghiªm ti∏p theo ˜Òc lßy ngày 01/09/2015. T™p d˙ liªu này ch˘a kho£ng 6.4GB d˙

liªu bao gÁm các tiêu ∑ và ph¶n tóm t≠t cıa các bài báo.

3.5.2 Cài ∞t th¸c nghiªm

∫ ánh giá tính hiªu qu£ cıa mô hình ∑ xußt trong ch˜Ïng này, các th¸c nghiªm cÙng s˚ dˆng bÎ phân lo§i SVM. BÎ phân lo§i SVM ˜Òc cài ∞t s˚

dˆng hàm nhân RBF (Radial Basis Function - hàm cÏ s xuyên tâm). ∫ có

˜Òc k∏t qu£ cao nhßt, các th¸c nghiªm ã i∑u chønh tham sËgamma ( ) cıa hàm nhân RBF và h¨ng sËC (tham sËph§t) d¸a trên viªc ki∫m tra chéo t¯t™p d˙ liªu hußn luyªn. BÎtham sËtËi ˜u tìm ˜Òc là = 0,05 và C = 100. ∫ bi∫u diπn các t¯ d˜Ói d§ng véc-tÏ, lu™n án cÙng s˚ dˆng các véc-tÏ t¯ 300 chi∑u ã

˜Òc hußn luyªn tr˜Óc. Các véc-tÏ này ˜Òc l˜u tr˙ và có sÆn t§i GoogleNews- vectors-negative300.bin.gz3. Ëi vÓi viªc l¸a chÂn giá tr‡ ng˜Ông t (trong thu™t toán 1) cho th¸c nghiªm 2, lu™n án s˚dˆng ph˜Ïng pháp th˚nghiªm vÓi nhi∑u giá tr‡ khác nhau cıa t (0,001; 0,005; 0,01; 0,05; 0,1), giá tr‡ tËi ˜u tìm ˜Òc trong t™p này là t = 0,01.

∫ ánh giá hiªu sußt cıa bÎ phân lo§i, các th¸c nghiªm s˚ dˆng các Î o 2http://nlp.stanford.edu/software/

phân lo§i Accuracy, P recision, Recall, F1 measurenh˜ ã ˜Òc trình bày trong ph¶n 1.5.4.

3.5.3 K∏t qu£ th¸c nghiªm

Lu™n án ã ti∏n hành xây d¸ng các th¸c nghiªm khác nhau nh˜ ˜Òc mô t£

d˜Ói ây:

Th¸c nghiªm 1:

Ëi vÓi th¸c nghiªm ¶u tiên, lu™n án muËn i∑u tra nghiên c˘u s¸ k∏t hÒp cıa các t™p ∞c tr˜ng cho nhiªm vˆ ánh giá Î phù hÒp cıa câu tr£ lÌi, nó bao gÁm các ∞c tr˜ng: unigram, bigram, sË t¯ trong câu h‰i, sË t¯ trong câu tr£ lÌi, sË câu trong câu tr£ lÌi, sË l˜Òng bình chÂn cho câu tr£ lÌi, ∞c tr˜ng so khÓp t¯, ∞c tr˜ng d¸a trên s¸bi∫u diπn véc-tÏ t¯. B£ng 3.6 cho bi∏t các k∏t qu£th¸c nghiªm khi s˚dˆng bÎphân lo§i SVM, s˚dˆng k∏t hÒp cıa nhi∑u lo§i

∞c tr˜ng trên làm ¶u vào.

B£ng 3.6: Î chính xác cıa bÎ phân lo§i SVM khi s˚ dˆng k∏t hÒp nhi∑u lo§i ∞ctr˜ng tr˜ng

∞c tr˜ng s˚dˆng Acc P R F1

Unigram, Bigram, sËt¯trong câu h‰i, sËt¯trong câu tr£ lÌi,

sËcâu trong câu tr£lÌi, sËl˜Òng bình chÂn cıa câu tr£lÌi 76,15 53,06 76,47 62,65 Unigram, Bigram, sËt¯trong câu h‰i, sËt¯trong câu tr£ lÌi,

sËcâu trong câu tr£lÌi, sËl˜Òng bình chÂn cıa câu tr£lÌi,

∞c tr˜ng so khÓp t¯, cosine gi˙a qvàa

Một phần của tài liệu Hỏi đáp tự động sử dụng nhiều nguồn tri thức (Trang 87)

Tải bản đầy đủ (PDF)

(187 trang)