給聊天機器人的訓練重點提示
淺談標注
前面講完了「斷詞」,現在來談談與斷詞極相關的「標注」。電腦利用透過標注資料,才能利用斷詞後的詞彙回答出正確的回覆。
對語句的標注有非常多種方式,其中我們最普遍使用到的就是詞性的標注。詞性包含表示人物、地點或事物的名詞;表示動作或事件發生的動詞;描述狀態、修飾名詞的形容詞等等。
詞性標注
詞性必須根據句子的上下文來判斷,我們來看看以下例子:
以上舉例,可以看到「警方將歹徒制服」的「制服」為動詞,是指制裁、被迫屈服;而「公立高中不用穿制服」的「制服」是名詞,是指同一個機構或團體穿的服裝。像這樣,如果電腦知道這兩個詞是屬於不一樣的詞性,就知道它們兩個含有不同的意義。
詞性標注就是幫句子中的每個詞彙,找出自己的語言特徵(詞性)並加上標籤的過程,是自然語言處理(Natural Language Processing, NLP)中十分基礎、但重要的過程。
一般需要先將語句進行斷詞,再進行詞性標注,因此斷詞與標注是息息相關的。不過,詞性的標注也存在著許多困難,例如,一詞多義性、未知詞處理等等。
- 一詞多義性:一詞多義性是很常見的一項難點,電腦不可能知道所有一詞多義的詞彙。舉例來說,如同上面例子的「制服」一樣;或是「研究」這個詞可以當作名詞,例如:自然科學研究,不過「研究」也可以當成動詞,例如:研究自然語言處理。
- 未知詞處理:未知詞即表示某字詞沒有收錄在字典中,無法查詢該詞性,例如:「人名」像「Tim Cook」、或是「公司名稱」如「Apple」、「產品名稱」如「iPhone」等等。
而通常這些問題會利用一些統計的演算法來解決。
詞性標注的方法
- 首先,詞性作為詞語的基本語法屬性,是字詞和句子的關鍵性特徵。然而,中文有各式各樣的標注系統,每個系統所標注的詞性種類也有所不同。
- 我們以中央研究院的中文斷詞系統為例,來看看系統分析出「Juska,創造更便利、更智慧、更人性化的用戶服務體驗。」的結果會呈現出什麼樣子。
- 系統首先進行斷詞,變成「Juska|,|創造|更|便利|、|更|智慧|、|更|人性化|的|用戶|服務|體驗|。」。
- 接著再進行詞性標注,例如「Juska」是英文,所以被標注成「FW」(外文標記);「創造」被標注成「VC」(動作及物動詞);標點符號也有所屬的標注名稱,每一個標注的名稱都有其代表的詞性。
我們雖然教了電腦去斷詞及標注,但當然電腦的標注不是100%準確的,需要透過人類不斷地改良,讓電腦分析的效果越來越好。
標注語句有何意義呢?標注句子的重點可以讓電腦面對大量輸入的語句時,能夠透過已被重點標示出來的字詞快速地進行演算,並為句子做出適當的分類。而下一篇我們就要來看看詞彙之間有什麼關聯性。