Tải bản đầy đủ (.pdf) (7 trang)

Bài giảng Xử lý ngôn ngữ tự nhiên (Natural Language Processing): Bài 3 - Lê Thanh Hương

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (447.06 KB, 7 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

<b>Gán nhãn t</b>

<b>ừ</b>

<b> lo</b>

<b>ạ</b>

<b>i</b>



Lê Thanh Hương


1


Lê Thanh Hương
Bộ môn Hệ thống Thông tin
Viện CNTT &TT – Trường ĐHBKHN
Email:


<b>Đị</b>

<b>nh ngh</b>

<b>ĩ</b>

<b>a</b>



z Gán nhãn từ loại (Part of Speech tagging - POS


tagging): mỗi từ trong câu được gán nhãn thẻ từ loại
tương ứng của nó


z Vào : 1 đoạn văn bản đã tách từ + tập nhãn
z Ra: cách gán nhãn chính xác nhất


2
z Ra: cách gán nhãn chính xác nhất


Ví dụ 1
Ví dụ 2
Ví dụ 3
Ví dụ 4
Ví dụ5


¾Gán nhãn làm cho việc phân tích văn bản dễ dàng hơn



<b>T</b>

<b>ạ</b>

<b>i sao c</b>

<b>ầ</b>

<b>n gán nhãn?</b>



z <b>Dễ thực hiện</b>: có thể thực hiện bằng nhiều phương pháp


khác nhau


z Các phương pháp sử dụng ngữ cảnh có thểđem lại
kết quả tốt


Mặ dù ê th hiệ bằ hâ tí h ă bả


3
z Mặc dù nên thực hiện bằng phân tích văn bản


z <b>Các ứng dụng</b>:


z Text-to-speech: record - N: [‘reko:d], V: [ri’ko:d]; lead –
N [led], V: [li:d]


z Tiền xử lý cho PTCP. PTCP thực hiện việc gán nhãn
tốt hơn nhưng đắt hơn


z Nhận dạng tiếng nói, PTCP, tìm kiếm, v.v…


z <b>Dễ đánh giá (có bao nhiêu th</b><i>ẻđược gán nhãn đúng?)</i>


<b>T</b>

<b>ậ</b>

<b>p t</b>

<b>ừ</b>

<b> lo</b>

<b>ạ</b>

<b>i ti</b>

<b>ế</b>

<b>ng Anh</b>



z <b>Lớp đóng </b>(các từ chức năng): số lượng cốđịnh


z Giới từ (Prepositions): on, under, over,…


z Tiểu từ (Particles): abroad, about, around, before, in,


instead, since, without,…


4
z Mạo từ (Articles): a, an, the


z Liên từ (Conjunctions): and, or, but, that,…
z Đại từ (Pronouns): you, me, I, your, what, who,…
z Trợđộng từ (Auxiliary verbs): can, will, may, should,…
z <b>Lớp mở</b>: có thể có thêm từ mới


<b>L</b>

<b>ớ</b>

<b>p t</b>

<b>ừ</b>

<b> m</b>

<b>ở</b>

<b> trong ti</b>

<b>ế</b>

<b>ng Anh</b>



open class
verbs


Proper nouns: IBM, Colorado
nouns


common nouns


count nouns: book, ticket
mass nouns: snow, salt
auxiliaries


Color: red, white
. . .



5
p


adverbs


adjectives Age: old, young
Value: good, bad


Degree adverbs: extremely, very, somewhat
Manner adverbs: slowly, delicately
Temporal adverbs: yesterday, Monday
Locatives adverbs: home, here, downhill


<b>T</b>

<b>ậ</b>

<b>p nhãn cho ti</b>

<b>ế</b>

<b>ng Anh</b>



z

t

p ng

li

u Brown: 87 nhãn


z

3 t

p th

ườ

ng

đượ

c s

d

ng:



¾ Nhỏ: 45 nhãn - Penn treebank (slide sau)


</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

7
I know that blocks the sun.


He always books the violin concert tickets early.
He says that book is interesting.


<b>Penn Treebank – ví d</b>

<b>ụ</b>



z

The grand jury commented on a number of




other topics.



8

Ư

The/DT

grand/JJ

jury/NN

commented/VBD



on/IN

a/DT

number/NN

of/IN

other/JJ


topics/NNS

./.



<b>Khó kh</b>

<b>ă</b>

<b>n trong gán nhãn t</b>

<b>ừ</b>



<b>lo</b>

<b>ạ</b>

<b>i?</b>



… là xử lý nhập nhằng


9


<b>Các ph</b>

<b>ươ</b>

<b>ng pháp gán nhãn t</b>

<b>ừ</b>



<b>lo</b>

<b>ạ</b>

<b>i</b>



z

<b>D</b>

<b>ự</b>

<b>a trên xác su</b>

<b>ấ</b>

<b>t</b>

: d

a trên xác su

t l

n



nh

t, d

a trên mơ hình Markov

n (hidden


markov model – HMM)



Pr (Det N) > Pr (Det Det)



10



Pr (Det-N) > Pr (Det-Det)



z

<b>D</b>

<b>ự</b>

<b>a trên lu</b>

<b>ậ</b>

<b>t</b>



If <m

u>



Then … <gán nhãn th

t

lo

i>



<b>Các cách ti</b>

<b>ế</b>

<b>p c</b>

<b>ậ</b>

<b>n</b>



z

<b>S</b>

<b>ử</b>

<b> d</b>

<b>ụ</b>

<b>ng HMM :</b>

“S

d

ng t

t c

thơng tin

đ

ã



có và

đ

ốn”



z

<b>D</b>

<b>ự</b>

<b>a trên ràng bu</b>

<b>ộ</b>

<b>c ng</b>

<b>ữ</b>

<b> pháp: </b>

“khơng



11


<b>ự</b>

<b>g</b>

<b>ộ</b>

<b>g p</b>

<b>p</b>

g



đ

oán, ch

lo

i tr

nh

ng kh

n

ă

ng sai”



z

<b>D</b>

<b>ự</b>

<b>a trên chuy</b>

<b>ể</b>

<b>n </b>

<b>đổ</b>

<b>i: </b>

Đ

ốn tr

ướ

c, sau

đ

ó



có th

thay

đổ

i”



<b>Gán nhãn d</b>

<b>ự</b>

<b>a trên xác su</b>

<b>ấ</b>

<b>t</b>



Cho câu hoặc 1 xâu các từ, gán nhãn từ loại
thường xảy ra nhất cho các từ trong xâu đó.



<b>Cách thực hiện:</b>


12


z Hidden Markov model (HMM):
Chọn thẻ từ loại làm tối đa xác suất:


<i>P</i>(từ|từ loại)•<i>P</i>(từ loại| n từ loại phía trước)
The/DTgrand/JJjury/NNcommented/VBDon/INa/DT


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

<b>Ví d</b>

<b>ụ</b>

<b> -HMMs</b>



13


Thực hiện học có giám sát, sau đó suy diễn để xác
định thẻ từ loại


<b>Gán nhãn HMM</b>



z <b>Công thức Bigram HMM</b>: chọn <i>t<sub>i </sub></i>cho <i>w<sub>i</sub></i>có nhiều


khả năng nhất khi biết <i>t<sub>i-1 </sub></i>và <i>w<sub>i </sub></i>:


<i>ti </i>= argmaxj<i>P</i>(<i>tj </i>| <i>ti-1 </i>, <i>wi</i>) (1)


z <b>Giảthiếtđơn giản hóa HMM:</b>vấnđềgán nhãn


14
z <b>Giả thiết đơn giản hóa HMM: </b>vấn đề gán nhãn



có thể giải quyết bằng cách dựa trên các từ và
thẻ từ loại bên cạnh nó


<i>ti </i>= argmaxj<i>P</i>(<i>tj </i>| <i>tj-1 </i>)<i>P</i>(<i>wi </i>| <i>tj </i>) (2)


xs chuỗi thẻ


(các thẻđồng xuất hixs tệừn) thường xuất hiện với thẻ tj


<b>Ví d</b>

<b>ụ</b>



1. Secretariat/NNPis/VBZexpected/VBNto/TOrace<b>/</b>VB


tomorrow/NN


2. People/NNS continue/VBP to/TOinquire/VB the/DT


reason/NNfor/INthe/DTrace/NNfor/INouter/JJ


15
space/NN


z Không thểđánh giá bằng cách chỉđếm từ trong tập ngữ
liệu (và chuẩn hóa)


z Muốn 1 động từ theo sau TOnhiều hơn 1 danh từ(to
<i>race, to walk)</i>. Nhưng 1 danh từ cũng có thể theo sau
TO (run to school)



<b>Gi</b>

<b>ả</b>

<b> s</b>

<b>ử</b>

<b> chúng ta có t</b>

<b>ấ</b>

<b>t c</b>

<b>ả</b>

<b> các t</b>

<b>ừ</b>



<b>lo</b>

<b>ạ</b>

<b>i tr</b>

<b>ừ</b>

<b> t</b>

<b>ừ</b>

<b>race</b>



z Chỉ nhìn vào từđứng trước(bigram):


to/TO race/??? NN or VB?


the/DT race/???


I/PP know/VBP that/WDT block/NN blocks/NNS?VBZ?the/DT
sun/NN.


16


z Áp dụng (2):


z Chọn thẻ có xác suất lớn hơn giữa 2 xác suất:


<i>P</i>(VB|TO)<i>P</i>(race|VB) hoặc <i>P</i>(NN|TO)<i>P</i>(race|NN)


xác suất của 1 từ là race khi biết từ loại là VB.
<i>ti </i>= argmaxj<i>P</i>(<i>tj </i>| <i>tj-1 </i>)<i>P</i>(<i>wi </i>| <i>tj </i>)


<b>Tính xác su</b>

<b>ấ</b>

<b>t</b>



Xét <i>P</i>(VB|TO) và <i>P</i>(NN|TO)


z Từ tập ngữ liệu Brown
<i>P</i>(NN|TO)= .021


<i>P</i>(VB|TO)= .340


17
<i>P</i>(race|NN)= 0.00041


<i>P</i>(race|VB)= 0.00003


z <i>P</i>(VB|TO)<i>P</i>(race|VB) = 0.00001
z <i>P</i>(NN|TO)<i>P </i>(race|NN) = 0.000007


¾ <i>racecần phải là động từ nếu đi sau</i>“TO”


<b>Bài t</b>

<b>ậ</b>

<b>p</b>



z I know that blocks the sun.


z He always books the violin concert tickets early.
z He says that book is interesting.


z I/PP know/VBP that/WDT blocks/VBZ the/DT sun/NN.


18


z He/PP always/RB books/VBZ the/DT violin/NN


concert/NN tickets/NNS early/RB.


z I know that block blocks the sun.


z I/PP know/VBP that/DT block/NN blocks/NNS?VBZ?



the/DT sun/NN.


z He/PP says/VBZ that/WDT book/NN is/VBZ


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

<b>Mơ hình </b>

<b>đầ</b>

<b>y </b>

<b>đủ</b>



z Chúng ta cần tìm chuỗi thẻ tốt nhất cho tồn xâu
z Cho xâu từ<i>W, </i>cần tính chuỗi từ loại có xác suất lớn


nhất


<i>T=t<sub>1</sub></i>,<i>t<sub>2 </sub></i>,…, <i>t<sub>n </sub></i>hoặc,


19


(nguyên lý Bayes)


ˆ

<sub>arg max ( |</sub>

<sub>)</sub>


<i>T</i>


<i>T</i>

<i>P T W</i>



τ

=



<b>M</b>

<b>ở</b>

<b> r</b>

<b>ộ</b>

<b>ng s</b>

<b>ử</b>

<b> d</b>

<b>ụ</b>

<b>ng lu</b>

<b>ậ</b>

<b>t chu</b>

<b>ỗ</b>

<b>i</b>



P(A,B) = P(A|B)P(B) = P(B|A)P(A)



P(A,B,C) = P(B,C|A)P(A) = P(C|A,B)P(B|A)P(A)
= P(A)P(B|A)P(C|A,B)


20
P(A,B,C,D…) = P(A)P(B|A)P(C|A,B)P(D|A,B,C..)


1 1 1 1 1 1 1 1


1


( ) (

| )

(

|

...

) ( |

...

)



<i>n</i>


<i>i</i> <i>i</i> <i>i</i> <i>i</i> <i>i</i> <i>i</i> <i>i</i>


<i>i</i>


<i>P T P W T</i>

<i>P w w t</i>

<i>w t t P t w t</i>

− −

<i>w t</i>

− −


=

=



<b>lịch sử nhãn</b>
<b>pr từ</b>


<b>Gi</b>

<b>ả</b>

<b> thi</b>

<b>ế</b>

<b>t trigram</b>



z

Xác su

t 1 t

ch

ph

thu

c vào nhãn c

a nó




1 1 1


(

<i><sub>i</sub></i>

|

...

<i><sub>i</sub></i> <i><sub>i</sub></i>

)

(

<i><sub>i</sub></i>

| )

<i><sub>i</sub></i>

<i>P w w t</i>

<i>t t</i>

=

<i>P w t</i>



21


z

Ta l

y l

ch s

nhãn thông qua 2 nhãn g

n



nh

t (trigram: 2 nhãn g

n nh

t + nhãn hi

n


t

i)



1 1 1


(

<i><sub>i</sub></i>

|

...

<i><sub>i</sub></i> <i><sub>i</sub></i>

)

(

<i><sub>i</sub></i>

| )

<i><sub>i</sub></i>

<i>P w w t</i>

<i>t t</i>

<sub>−</sub>

<i>P w t</i>



1 1 1 2 1


( |

<i><sub>i</sub></i>

...

<i><sub>i</sub></i>

)

( |

<i><sub>i</sub></i> <i><sub>i</sub></i> <i><sub>i</sub></i>

)



<i>P t w t</i>

<i>t</i>

<sub>−</sub>

=

<i>P t t t</i>

<sub>−</sub> <sub>−</sub>


<b>Thay vào công th</b>

<b>ứ</b>

<b>c</b>



<i>n</i> <i>n</i>


P(T)P(W|T) =




22


1 2 1 2 1


3 1


( ) ( | )

( |

<i><sub>i</sub></i> <i><sub>i</sub></i> <i><sub>i</sub></i>

)[

(

<i><sub>i</sub></i>

| )]

<i><sub>i</sub></i>


<i>i</i> <i>i</i>


<i>P t P t</i>

<i>t</i>

<i>P t t t</i>

<sub>−</sub> <sub>−</sub>

<i>P w t</i>



= =




<b>Đ</b>

<b>ánh giá xác su</b>

<b>ấ</b>

<b>t</b>



z Sử dụng quan hệ xác suất từ tập ngữ liệu để


đánh giá xác suất:


2 1


(

)



( |

)

<i>c t t t</i>

<i>i</i> <i>i</i> <i>i</i>


<i>P t t t</i>

− −



23
2 1
1 2
2 1

(

)


( |

)


(

)



<i>i</i> <i>i</i> <i>i</i>


<i>i</i> <i>i</i> <i>i</i>


<i>i</i> <i>i</i>

<i>P t t t</i>



<i>c t t</i>


− −
− −

=


(

, )


(

| )


( )


<i>i</i> <i>i</i>
<i>i</i> <i>i</i>
<i>i</i>


<i>c w t</i>


<i>P w t</i>



<i>c t</i>




=



<b>Bài toán</b>



C

n gi

i quy

ế

t



ˆ

<sub>arg max ( ) (</sub>

<sub>| )</sub>


<i>T</i>

=

<i>P T P W T</i>



24


Bây gi

ta có th

tính

đượ

c t

t c

các tích


P(T)P(W|T)



arg max ( ) (

| )


<i>T</i>


<i>T</i>

<i>P T P W T</i>



τ




</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>Ví d</b>

<b>ụ</b>



<b>NNS</b>


<b>DT</b>



<b>NNS</b>


<b>NNS</b>


25


<b>the</b> <b>dog</b>


<b>VB</b>


<b>saw</b>
<b>VBP</b>


<b>ice-cream</b>


Tìm đường đi tốt nhất?


<b>Tìm </b>

<b>đườ</b>

<b>ng </b>

<b>đ</b>

<b>i có </b>

<b>đ</b>

<b>i</b>

<b>ể</b>

<b>m cao </b>



<b>nh</b>

<b>ấ</b>

<b>t</b>



<b>NNS</b> <b>NNS</b>


<b>75</b>


<b>30</b>


<b>NNS</b>
<b>1</b>



1 2 1 2 1


3 1


( ) ( | )

( |

)[

(

| )]



<i>n</i> <i>n</i>


<i>i</i> <i>i</i> <i>i</i> <i>i</i> <i>i</i>


<i>i</i> <i>i</i>


<i>P t P t</i>

<i>t</i>

<i>P t t t</i>

<sub>−</sub> <sub>−</sub>

<i>P w t</i>



= =




26


<b>the</b> <b>dog</b>


<b>VB</b>
<b>DT</b>


<b>saw</b>
<b>VBP</b>


<b>ice-cream</b>
<b>75</b>



<b>1</b>


<b>60</b>


<b>30</b>
<b>1</b>


<b>NNS</b>
<b>1</b>


<b>52</b>


<b>Cách tìm </b>

<b>đườ</b>

<b>ng </b>

<b>đ</b>

<b>i có </b>

<b>đ</b>

<b>i</b>

<b>ể</b>

<b>m </b>



<b>cao nh</b>

<b>ấ</b>

<b>t</b>



z Sử dụng tìm kiếm kiểu best-first (A*)


1. Tại mỗi bước, chọn k giá trị tốt nhất ( ) . Mỗi giá


trị trong k giá trị này ứng với 1 khả năng kết hợp
nhãn của tất cả các từ


ế ấ


27


2. Khi gán từ tiếp theo, tính lại xác suất. Quay lại



bước 1


z <b>Ưu: </b>nhanh (không cần kiểm tra tất cả các khả năng


kết hợp, chỉ k cái tiềm năng nhất)


z <b>Nhược: </b>có thể khơng trả về kết quả tốt nhất mà chỉ


chấp nhận được


<b>Độ</b>

<b> chính xác</b>



z

> 96%



z

Cách

đơ

n gi

n nh

t?

<b>90%</b>



zGán mỗi từ với từ loại thường xuyên nhất của


28


zGán từ chưa biết = danh từ


z

Ng

ườ

i:

<b>97%+/- 3%</b>

; n

ế

u có th

o lu

n:

<b>100%</b>



<b>Cách ti</b>

<b>ế</b>

<b>p c</b>

<b>ậ</b>

<b>n th</b>

<b>ứ</b>

<b> 2: gán nhãn </b>



<b>d</b>

<b>ự</b>

<b>a trên chuy</b>

<b>ể</b>

<b>n </b>

<b>đổ</b>

<b>i</b>




<b>Transformation-based Learning (TBL):</b>


z Kết hợp cách tiếp cận dựa trên luật và cách tiếp


ậ á ất ửd h á để hỉ h l i thẻ


29


cận xác suất: sử dụng học máy để chỉnh lại thẻ
thông qua vài lần duyệt


z Gán nhãn sử dụng tập luật tổng quát nhất, sau đó


đến tập luật hẹp hơn, thay đổi một số nhãn, và tiếp
tục


<b>Transformation-based painting</b>



</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>Transformation-based painting</b>



31


<b>Transformation-based painting</b>



32


<b>Transformation-based painting</b>



33



<b>Transformation-based painting</b>



34


<b>Transformation-based painting</b>



35


<b>Transformation-based painting</b>



</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

<b>Ví d</b>

<b>ụ</b>

<b> v</b>

<b>ớ</b>

<b>i TBL</b>



37


<b>Ví d</b>

<b>ụ</b>

<b> v</b>

<b>ớ</b>

<b>i TBL</b>



1. Gán mọi từ với nhãn thường xuất hiện nhất


(thường độ chính xác khoảng 90% ). Từ tập ngữ
liệu Brown:


<i>P</i>(NN|race)= 0.98


38


( | )


<i>P</i>(VB|race)= 0.02


2. …expected/VBZ to/ TO race/NN tomorrow/NN



…the/DT race/NNfor/IN outer/JJ space/NN


3. Sử dụng luật chuyển đổi:


Thay<b>NN</b><i>bằng </i><b>VB</b>khi thẻ trước đó là <b>TO</b>


pos: ‘NN’>’VB’ ←pos: ‘TO’ @[-1] o


TO race/VB


<b>Lu</b>

<b>ậ</b>

<b>t gán nhãn t</b>

<b>ừ</b>

<b> lo</b>

<b>ạ</b>

<b>i</b>



39


<b>Lu</b>

<b>ậ</b>

<b>t gán nhãn t</b>

<b>ừ</b>

<b> lo</b>

<b>ạ</b>

<b>i</b>



40


<b>H</b>

<b>ọ</b>

<b>c lu</b>

<b>ậ</b>

<b>t TB trong h</b>

<b>ệ</b>

<b> th</b>

<b>ố</b>

<b>ng TBL</b>



41


<b>Các t</b>

<b>ậ</b>

<b>p ng</b>

<b>ữ</b>

<b> li</b>

<b>ệ</b>

<b>u</b>



z

T

p hu

n luy

n



w0 w1 w2 w3 w4 w5 w6 w7 w8 w9 w10


z

T

p ng

li

u hi

n t

i (CC 1)




42


z

T

p ng

li

u hi

n t

i (CC 1)


dt vb nn dt vb kn dt vb ab dt vb


z

T

p ng

li

u tham kh

o



</div>

<!--links-->

×