經常會聽到有人說,天然語言處理(NLP)是人工智能技術(AI)皇冠上的明珠。那麼,從這句話上就可以看到,目前咱們經常說的NLP實際上是AI技術的一個分支,並且是較難的那一個分支。git
那麼,到底什麼是NLP呢?大概這個問題會在咱們從事NLP研究和學習的過程當中會一直存在,當你處於不一樣的階段,應該會有不一樣的理解。小Dream也只能說一說在目前這個階段,對NLP的一些理解。github
所謂「天然語言」,是相對於計算機語言(計算機可以理解的語言,如彙編、C語言等)而言的,也就是人類平常使用的語言。由於計算機設計之初主要是用於計算,或者完成某一項有明確規則任務。因此計算機語言與人類平常使用的語言存在很大的差別,計算機不能直接理解人類語言的含義,不能直接同人類進行溝通。要想實現計算機的智能化,不可以理解人類語言,是必需要跨越的一道障礙。由於,人類語言承載了人的思考、文化等,是每一個人對外溝通的最主要手段。NLP就是爲了解決這樣一個問題而出現的技術。他但願可以使得計算機可以理解人類的語言,甚至是語言背後的文化與意圖。例如說,當你說「我餓了」,計算機可以明白你肚子餓了,而且提出幫你定外賣;當你說「保護好你的菊花」,計算機可以結合當時的情境,明白你說的菊花究竟是哪一個菊花。學習
1. NLP技術的主要範疇人工智能
1)語音識別翻譯
顧名思義,就是將語音轉化爲文字。這一部分,小Dream還沒機會涉及到,短期應該不會涉及,感興趣的小夥伴能夠出門左轉,百度一下。設計
2)分詞、實體識別等序列標註問題orm
分詞和實體識別是天然語言處理比較基礎的部分,可是很是的重要。小Dream以前涉及過實體識別相關的工做,因此會在下一篇NLP系列文章中介紹相關的工做,敬請關注啦。blog
3)機器翻譯開發
這是NLP領域比較早的一個工做,谷歌的機器翻譯已經可以作到較好的水平。谷歌在2018年,利用attention技術構建的Transformer模型,是目前在這一領域比較大的進展。it
4)對話系統
智能客服,聊天機器人等都須要用到這一項NLP技術。小Dream將來一段時間都會從事這項工做的研究及開發,所這一方面應該作一個較長的連載了。
5)文本摘要
6)天然語言生成
最近,OPENAI發佈的GPT2.0具備很高的天然語言生成能力,預期會對天然語言處理技術產生不小的影響,感興趣的同窗能夠參見以下連接:https://github.com/openai/gpt-2
7)文字蘊含
8)其餘方面
2. NLP技術的難點
1)單詞的邊界界定
在口語中,詞與詞之間一般是連貫的,而界定字詞邊界一般使用的辦法是取用能讓給定的上下文最爲通順且在文法上無誤的一種最佳組合。在書寫上,漢語也沒有詞與詞之間的邊界。
2)詞義的消歧
在各國的語言中,多義詞的現象都比較多。NLP經常須要根據詞語的上下文決定目前的語境環境下,該詞的具體含義。
3)句法的模糊性
天然語言的文法一般是模棱兩可的,針對一個句子一般可能會剖析出多棵剖析樹,而咱們必需要仰賴語意及先後文的資訊才能在其中選擇一棵最爲適合的剖析樹。
4)語言的歸納性
句子經常並不僅是字面上的意思;例如,「你能把鹽遞過來嗎」,一個好的回答應當是把鹽遞過去;在大多數上下文環境中,「能」將是糟糕的回答,雖然說回答「不」或者「太遠了我拿不到」也是能夠接受的。再者,若是一門課程去年沒開設,對於提問「這門課程去年有多少學生沒經過?」回答「去年沒開這門課」要比回答「沒人沒經過」好。
---------------------------------------------------------------------------------------------------------------------------------
經常在想,生活的意義是什麼?掙錢,買房,開豪車或許都很重要。可是真正能讓心裏平靜的每每是親近之人的笑容、獲取知識的知足感。
更多的AI知識,關注「Dream看AI」,用簡單、樸實的語言介紹AI技術。