C(SU )= {pЄ P| p(ƒ )= (ƒ) với tất cả các ƒЄ SU }
4.6 Quá trình huấn luyện WSD cho dịch máy thống kê
Trong các thực nghiệm về WSD, các nhà nghiên cứu thường hay sử dụng các tập dữ liệu do các nhà ngôn ngữ gán nhãn thủ công chẳng hạn như Senseval hay SemCor. Tuy nhiên các tập dữ liệu này là quá bé để có thể dùng cho một ứng dụng như dịch máy thống kê. Để thuận tiện cho nghiên cứu của mình, chúng tôi đã sử dụng tập dữ liệu cho WSD được sinh một cách tự động sử dụng kho ngữ
liệu song ngữ. Thông tin dóng hàng từ được sử dụng như một ánh xạ giữa các từ nguồn và từ đích. Các từ đích là các nghĩa của các từ nguồn. Do việc ánh xạ dóng hàng từ là không chính xác tuyệt đối nên dữ liệu thu được có nhiễu ở mức độ nhất định.
Ban đầu, các dữ liệu song ngữ đã thu thập được đưa vào thủ tục sinh dữ liệu huấn luyện. Sau đó, dữ liệu huấn luyện được dùng để huấn luyện mô hình WSD. Mô hình WSD sau khi đã được huấn luyện có thể được dùng làm thuộc tính cho SMT.
4.6.1 Sinh tự động ngữ liệu huấn luyện WSD
Thủ tục sinh ngữ liệu tự động:
• Input: một kho ngữ liệu song ngữ đã được dóng giữa các câu và các từ trong câu. Câu tiếng Anh đã được gán nhãn từ loại.
• Output: các tập ngữ liệu huấn luyện mô hình WSD cho các cụm từ nguồn. • Thuật toán:
o Bước 1: Thu thập các cụm từ nguồn và các cụm từ đích cùng với các vị trí xuất hiện trong kho ngữ liệu song ngữ.
o Bước 2: Với mỗi cụm từ, dựa vào thông tin ở trên, sinh ra tập ngữ liệu huấn luyện.
Chú ý là trong bước 1 chỉ thu thập các cụm từ (s,t) tương ứng với dóng hàng từ [8].
- Tồn tại một liên kết từ s đến t
- Không có từ nào nằm ngoài s có liên kết tới một từ trong t.
Hình 35. Quá trình sinh dữ liệu huấn luyện
Ví dụ:
- Một phần của file chứa các câu tiếng Việt:
“Các ca_khúc trong album “ Ngọn gió thảo_nguyên” mang âm_hưởng nhạc đồng_quê.”
- Một phần của file chứa các câu tiếng Anh:
“The songs on “ Prairie Wind ” are influenced by country music .”
- Một phần của file chứa các câu tiếng Anh cùng với POS tag:
“The_DT songs_NNS on_IN “_” Prairie_JJ Wind_NN “_” are_VBP influenced_VBN by_IN country_NN music_NN ._.”
- Một phần của file dóng hàng từ:
“0-0 1-0 1-1 2-2 2-3 3-4 4-5 4-6 4-7 4-9 5-5 5-10 6-8 7-10 8-10 9-10 10- 12 11-11 12-13”
- Một phần của file từ điển: Relatives NNS relative Replies NNS reply Reservations NNS reservation Restrictions NNS restriction Retained VBD retain Rights NNS right Robbed VBN rob
Mỗi dòng của file từ điển chứa nội dung: dạng bề mặt (surface form) của từ, POS tag, lemma.
Sau đây là ví dụ về mẫu huấn luyện được rút ra từ kho ngữ liệu Anh-Việt của chúng tôi.
<instance id="#3#3@@634" docsrc="unknown">
<answer instance="#3#3@@634" senseid="âm_nhạc"/> <context>
but/CC the/DT mobile/JJ <head> music/NN </head> industry/NN is/VBZ confident/JJ that/IN the/DT days/NNS of/IN dedicated/JJ MP3/NNP players/NNS are/VBP numbered/VBN ./.
</context> </instance>
Các từ đang được xem xét là từ được đặt trong cặp <head> và </head>. Ngữ cảnh của từ là câu nằm trong cặp tag <context> và </context>. Các thông tin từ loại được cho ngay sau mỗi từ trong câu ngữ cảnh.
Một điều chú ý là từ kho ngữ liệu song ngữ đã được dóng hàng từ, ta sẽ sinh ra tập ngữ liệu huấn luyện cho tất cả các cụm từ có trong ngôn ngữ nguồn. Mỗi một cụm từ sẽ có một tập ngữ liệu huấn luyện. Sau này, khi huấn luyện WSD, mô hình sẽ sử dụng tập ngữ liệu huấn luyện này để đưa ra mô hình cho cụm từ tương ứng. Mỗi từ, cụm từ sẽ có một mô hình riêng.
4.6.2 Các thuộc tính WSD
Chúng tôi sử dụng các thuộc tính thường hay sử dụng trong các nghiên cứu WSD gần đây.
- Bag of words: tập các từ xuất hiện trong ngữ cảnh 100 từ đứng trước và
100 từ đứng sau từ đang xét.
- Collocation of words: collocation chứa từ đang xét và có độ dài không
vượt quá 4.
- Ordered words: từ cùng với thông tin vị trí của nó. Độ rộng ngữ cảnh là
±3.
- Collocation of POSs: tương tự collocation of words nhưng chỉ bao gồm
các nhãn từ loại.
- Ordered POSs: tương tự ordered words nhưng chỉ bao gồm các nhãn từ
Trên đây là các thuộc tính WSD mà sử dụng ngữ cảnh là toàn văn bản (whole_context). Tuy nhiên để đơn giản, ta có thể chọn ngữ cảnh huấn luyện là địa phương (local_context). Trong ngữ cảnh địa phương, thuộc tính Bag of words bị bỏ đi.
4.6.3 Huấn luyện mô hình WSD
Ngữ liệu huấn luyện sinh ra ở bước trên được đưa vào thủ tục huấn luyện WSD. Đầu tiên, bộ huấn luyện sẽ trích chọn đặc trưng từ bộ ngữ liệu huấn luyện, sau đó, các đặc trưng này được mã hóa dưới dạng số để dễ xử lý và lưu trữ. Sau khi đã mã hóa, các thông số mã hóa sẽ được đưa ra file phục vụ cho quá trình mã hóa file test sau này (để file test và file train được mã hóa giống nhau, cần ghi lại các thông số trong quá trình mã hóa file train). File này được đặt với phần mở rộng là .features. Ví dụ một phần của file “her.features”:
Nữ_Hoàng $->$ 26 bà $->$ 10 bà_ta $->$ 16 bà_ấy $->$ 13 cho cô_ấy $->$ 32 của bà $->$ 0 của bà_ta $->$ 22 của bà_ấy $->$ 18
Do chúng ta chỉ sử dụng các file chứa các mã hóa trong các quá trình training và testing, nên file này (chứa ánh xạ của các đặc trưng) sẽ cung cấp thông tin giúp ta mã hóa chính xác file test, tương ứng với file training. File chứa các thông số mã hóa được lưu dưới dạng sau
“class_id id1 id2 id3 ...”
trong đó, idi là đại diện cho đặc trưng (feature) thứ i và class_id là đại diện cho nghĩa của từ đang xét trong câu đó.
Các đặc trưng này (sau khi đã được mã hóa) sẽ được đưa ra file để sử dụng cho quá trình huấn luyện. Ví dụ một phần trong file đã được mã hóa của cụm “to get”.
0 104 133 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177.
Trong câu được mã hóa ở trên, nghĩa của từ đang xét là nghĩa thứ nhất (mã hóa 0) và các idi đứng sau là các đặc trưng được extract từ câu đó.
Sau bước này, bộ huấn luyện sẽ đọc file mã hóa và đưa ra mô hình WSD cho mỗi từ, cụm từ cùng với các đặc trưng đã được thu thập trong ngữ liệu huấn luyện. Bộ huấn luyện sử dụng MEM để huấn luyện mô hình WSD. Sau khi huấn luyện, mô hình sẽ được ghi ra file. Mô hình sẽ chứa các tham số phục vụ cho quá trình testing. Ví dụ một file mô hình của cụm “manage to” là:
startNumclasses 7 endNumclasses startVectorOfLambda 0.325273 0.325273 ………… 0.401002 -0.0629863 endVectorOfLambda startVectorOfEmpiricalExpectation_VEE 0.0833333 0.0833333 ………… 0.166667 0.166667 0.25 0.0833333 endVectorOfEmpiricalExpectation_VEE startVectorOfModelExpectation_VME 0.0833298 0.0833298 0.0833298 ………… 0.0833294 0.0833336 endVectorOfModelExpectation_VME startFeature_name_bag 100 0 101 1 102 2 ……. 400 301 401 302 402 303 endFeature_name_bag startFeature_bag 0 0 0 1 …. 6 301 6 302 6 303 endFeature_bag
startSigma 0 endSigma startLabel_bag 0 1 2 3 4 5 6 endLabel_bag
Ý nghĩa của từng thông số như sau:
- Numclasses là số cụm từ đích (số nghĩa) của từ đang xét.
- VectorOfLambda là véc-tơ các tham số λi.
- VectorOfEmpiricalExpectation là véc-tơ các kỳ vọng thực nghiệm của feature thứ i, được tính bằng số lần xuất hiện trên tổng số tập huấn luyện.
- VectorOfModelExpectation là véc-tơ các kỳ vọng của mô hình tương ứng với feature i, kỳ vọng này càng gần kỳ vọng thực nghiệm thì mô hình càng tốt.
- Feature bag là dữ liệu chứa label (từ đích, nghĩa) và các feature tương ứng với label đó.
- Sigma là Gaussian Prior
- Label bag là véc-tơ các label (từ đích, nghĩa) của từ đang xét.
Trong quá trình test, khi cho một câu vào, chương trình sẽ tự động cắt câu thành các cụm từ và tìm mô hình tương ứng của cụm từ đó. Dựa vào mô hình đã được sinh trong quá trình training, chương trình đưa ra véc-tơ các nghĩa của cụm từ và các xác suất tương ứng của các nghĩa đó, phục vụ cho việc tính điểm trong mô hình log-linear. Sau đây là ví dụ véc-tơ các nghĩa và véc-tơ xác suất tương ứng của cụm từ “the end”.
Với câu test là:
<instance id="#9#10@@0" docsrc="unknown">
<answer instance="#9#10@@0" senseid="somesense"/> <context>
she/PRP always/VBZ manages/NNS to/TO get/VB her/PRP$ own/JJ way/NN in/IN <head> the/DT end/NN </head> ./.
</context> </instance>
Thì véc-tơ các nghĩa là:
“cuối hoàn_tất đoạn_kết sau việc_lập khi_hết_hạn sau_khi lâu_dài kết_thúc cuối_cùng_thì phần_cuối”
0.0263309 0.000552088 0.000621553 0.00112177 0.00081666 0.00152087 0.000801372 0.941572 0.00072273 0.0253659 0.000574223 0.000801372 0.941572 0.00072273 0.0253659 0.000574223
Theo véc-tơ xác suất này thì xác suất của nghĩa thứ 7 là cao nhất và “the end” được dịch thành “lâu_dài”.
Chương V: