# 10. 自然語言處理

自然語言處理(Natural Language Processing, a.k.a NLP), 是AI以及語言學的分支學科. 在這個領域中, 主要是在探討如何處理/運用自然語言.

在NLP中, 有幾個研究上的難點:

* 單詞的邊界界定: 口語上, 詞之間通常都是連貫的, 而通常斷定字詞邊界的方式是取用能讓給定的context最為通順且在文法上沒有錯誤的最佳組合. 在書寫上, 中文也沒有詞與詞之間的邊界. 所以斷詞這件事在中文NLP上其實是滿困難的一件事.
* 詞義的消歧: 很多詞不會只有一種意思, 必須選出能使句意最為通順的.
* 句法的模糊性: 自然語言的文法有些時候是模稜兩可的, 所以必須要仰賴語義及context的資訊才能parse出比較適合的結果.
* 有瑕疵的或不規範的輸入: 可能會遇到外國口音或地方口音, 抑或是OCR錯誤.

在接下來的範例, 中文NLP會使用[jieba](https://github.com/fxsjy/jieba)這個library.
