任務和限制
理論上,NLP是一種很吸引人的人機互動方式。早期的語言處理系統如SHRDLU,當它們處於一個有限的“積木世界”,運用有限的辭彙表會話時,工作得相當好。這使得研究員們對此系統相當樂觀,然而,當把這個系統拓展到充滿了現實世界的含糊與不確定性的環境中時,他們很快喪失了信心。
由於理解(understanding)自然語言,需要關於外在世界的廣泛知識以及運用操作這些知識的能力,自然語言認知,同時也被視為一個人工智慧完備(AI-complete)的問題。同時,在自然語言處理中,"理解"的定義也變成一個主要的問題。有關理解定義問題的研究已經引發關注。
實際問題
一些NLP面臨的問題實例:
句子“我們把香蕉給猴子,因為它們餓了”和“我們把香蕉給猴子,因為它們熟透了”有同樣的結構。但是代詞“它們”在第一句中指的是“猴子”,在第二句中指的是“香蕉”。如果不了解猴子和香蕉的屬性,無法區分。
主要範疇
文本朗讀(Text to speech)/語音合成(Speech synthesis)
語音識別(Speech recognition)
中文自動分詞(Chinese word segmentation)
詞性標註(Part-of-speech tagging)
句法分析(Parsing)
自然語言生成(Natural language generation)
文本分類(Text categorization)
信息檢索(Information retrieval)
信息抽取(Information extraction)
文字校對(Text-proofing)
問答系統(Question answering)
機器翻譯(Machine translation)
自動摘要(Automatic summarization)
文字蘊涵(Textual entailment)
研究難點
單詞的邊界界定
在口語中,詞與詞之間通常是連貫的,而界定字詞邊界通常使用的辦法是取用能讓給定的上下文最為通順且在文法上無誤的一種最佳組合。在書寫上,漢語也沒有詞與詞之間的邊界。
詞義的消歧
許多字詞不單只有一個意思,因而我們必須選出使句意最為通順的解釋。
句法的模糊性
自然語言的文法通常是模稜兩可的,針對一個句子通常可能會剖析(Parse)出多棵剖析樹(Parse Tree),而我們必須要仰賴語意及前後文的資訊才能在其中選擇一棵最為適合的剖析樹。
有瑕疵的或不規範的輸入
例如語音處理時遇到外國口音或地方口音,或者在文本的處理中處理拼寫,語法或者光學字元識別(OCR)的錯誤。
語言行為與計畫
句子常常並不只是字面上的意思;例如,“你能把鹽遞過來嗎”,一個好的回答應當是把鹽遞過去;在大多數上下文環境中,“能”將是糟糕的回答,雖說回答“不”或者“太遠了我拿不到”也是可以接受的。再者,如果一門課程去年沒開設,對於提問“這門課程去年有多少學生沒通過?”回答“去年沒開這門課”要比回答“沒人沒通過”好。
自然語言處理
統計自然語言處理運用了推測學、機率、統計的方法來解決上述,尤其是針對容易高度模糊的長串句子,當套用實際文法進行分析產生出成千上萬筆可能性時所引發之難題。處理這些高度模糊句子所採用消歧的方法通常運用到語料庫以及馬可夫模型(Markov models)。統計自然語言處理的技術主要由同樣自人工智慧下與學習行為相關的子領域:機器學習及資料採掘所演進而成。