-
1 # 易學智慧
-
2 # AI時刻
想要智慧類產品真正聽懂你在講什麼,那就一定離不開NLP技術。
NLP (Natural Language Processing 自然語言處理) 是人工智慧(AI)的一個子領域。整個NLP領域大體分為三個不同的技術層面。第一個:閒聊(Chit Chat),第二個:問答(Q&A),第三個是面向任務型的NLP(Task Oriented)。
比如說一個使用者跟機器人說,我覺得德國隊是足球踢得最好的一個國家,非常不錯。機器人看似給出了一個非常智慧的回答,它說我覺得不對,應該是阿根廷。表面上看似聊得很好,事實上機器人其實根本不知道你說的話的意思,也並不知道自己在說什麼。它只是前期對人類對話進行了大量的資料獲取,透過統計學的規律來找到規律,發現對話人說了上面一句話的時候,把這些語言和詞彙堆砌起來(拼到一起),最有可能是對A的一個回覆,這是統計學上的一個大機率的能夠滿意回覆它的這樣的情形。但是這樣是遠遠不夠的。要想讓機器人理解你所說的話,並且形成自己的邏輯思考,最終再去形成有效的溝通。這就要依託NLP技術的快速發展。
-
3 # 我的瀋陽
不管什麼NLP,都需要落地場景,我們用校園這個場景舉例:
我們在校園落地大資料產品,大量使用了自然語言處理技術,在使用過程中發現越接近場景,演算法就越需要最佳化來適應這個環境特點。一開始我們並沒有在乎這些細節,因為網路上開放的“分詞詞庫”,“情感詞庫”很多也很成熟,我們直接呼叫就可以得到不錯的結果。直到有一天我們發現,我們的機器漏掉了非常多的關鍵詞彙,而這些漏掉的才真正的重要,就像錯過了才知道後悔一樣。而且很多時候,我們的機器會犯下一些愚蠢錯誤,就像“A食堂比B食堂貴,所以我選擇這家”,機器就無法理解到底選擇的是哪家。
於是,我們潛下心來研究符合校園特點的自然語言處理技術,試圖讓機器更加智慧,讓它能夠理解我們的語言,甚至捕獲到我們”校園“這個語境下的“轉意”和“情感”。我們一直向著這個方向努力,支撐這個發展的三種理論,即摩爾定律、深度學習和數學模型。而奠基所有這些的基礎,就是我們常提到的“校園大資料”。
有了校園大資料,特別是言論資料,就有了言論模型,我們基於大量的資料,分析出特點,構建符合校園特徵的詞庫用於分詞,比如在校園中,考研與升學、掛科與不及格都可以看作是近義詞,因為他們在純數學演算法中的距離更近。
可以說,當我們深入研究符合校園的“文字語義理解系統”之初就遇到了難點,這些難點容易被忽略掉,越簡單的事情往往越複雜。為了機器能夠更好的理解語言,我們從字、詞、句、文四個層次構建模型,可以說我們過五關斬六將實現我們獨特的符合校園場景的自然語言處理技術。
第一關,我們需要解決“分詞“的問題
比如:卓智人工智慧研究院,可以分解為”卓智、人工智慧、研究院“,但實際的結果讓人哭笑不得,機器把它這樣分解“智人、人工、智慧、研究”,因為在這個語境下,機器難以理解“卓智”是一家公司。這裡面涉及“分詞顆粒度、區域性轉義、同義詞、指代歸屬、上下文依賴”等問題。
在校園場景中,可以舉幾個簡單的例子便於大家理解:
【顆粒度】卓智大資料研究院/大資料/研究院
【區域性轉義】金融風暴“洗禮”/美元持續“疲軟”
【同義近義詞】考研=升學、掛科=不及格
【上下文依賴】什麼意思,小意思,我方便一下
【指代歸屬】北京大學=北大=我校
為了解決校園中這些語境的需求,我們發現通用的詞庫已經不能滿足需求,於是我們著手構建符合校園特徵的詞庫,反覆的測試我們的分詞結果,並賦予機器這種技能,經過一段時間的積累,我們已經能夠在校園這個語言環境中更加準確的分詞。
第二關,我們需要理解“語義“
先舉幾個例子:
【領域感知理解】對於“儀表”這個詞語,在工程專業代表“儀表裝置”,但生活中代表一個人的“形象”。
【省略、雙關、反諷、假借、暗喻】你覺得可以?結合標點符號,應該代表“不可以”
【歧義句理解】限量簽名網球拍賣了。問題是網球“拍賣”,還是“網球拍”賣了
類似這種歧義非常多,在詞語、句子、指代、修飾範圍等各種情況下均會發生。常見的“省略”、“雙關”、“反諷”、“假借”、“暗喻”等說法,更加大了正確理解文字的難度,所以必須要從詞法、句法、語義、上下文、以及領域知識等方面共同處理來消除歧義問題。為了解決這些特定語境,特定場景下的語義,我們根據校園的專業劃分,言論發表場景,增加了不同領域的詞庫權重,來適應這些內容,得到了較好的效果。
第三關,構建校園的“知識圖譜”
構建校園的知識圖譜,對於正確理解校園中的自然語言是非常重要的事情,比如:“張主任”到底是指哪個部門的?這就需要了解“說話人”的從屬關係,來輔助判斷。舉個例子:
【實體抽取】人名、專業名詞、課程名稱、法規等
【關係抽取】指標關聯,動作關聯,從屬關聯等
【屬性抽取】時間,型號,班級,電話號段等
基於校園的知識圖譜,機器就可以判斷,“張主任”在純數學計算結果中約等於資訊中心的“張明”主任。
第四關,逐層理解語義
我們在做“脫敏工具”時發現,一篇文章中出現了高敏感詞彙,並不代表這篇文章是敏感的或者是負面的。相反,整篇文章並不包含敏感詞彙,但文章確是負面的。為了解決這個問題,我們讓機器分層理解。
在詞這一層級,分析詞彙與詞彙間的關係;
在句法的層級分析句子結構和短串關係;
最終根據權重理解整篇文章。
第五關,為校園場景定製語言模型
1.根據不同的專業領域構建語言模型,例如:不同領域的特定語法(定金和訂金)等
3.積累行業語言詞庫:醫科大學、工程技術專業、政法專業、金融專業具有獨特的語言詞庫和名詞詞庫,比如:政法專業的“取保候審”、金融專業的“同業拆借”等詞彙。
除了以上五關外,我們發現在校園中有獨特的敏感詞庫需求,於是我們提供了一套詞庫管理工具,讓學校自主新增敏感詞,並標出敏感度。但單純依賴詞庫、詞典這樣的傳統方法,效果會隨著時間迅速降低,於是我們開始研究機器(演算法)對新樣本的適應能力,讓機器具備“舉一反三”的能力,具備學習能力的機器可以自動最佳化模型,泛化能力加強,效果持續提升,這樣機器會越來越理解校園中的自然語言。
我們不懈的努力,只為在校園語言分析中可以提高1%的準確度。
-
4 # 心裡美NLP
nlp不是忽悠,它是非常牛逼的技術,學好之後給人帶來巨大的改變,只不過國內的老師不行,或者將nlp用在錯誤的方向,所以找到厲害的導師很關鍵,國內除了李中營,張國偉,安小明之外,其他基本上是半吊子出身,要學就跟他們學很不錯!
回覆列表
NLP研究背景
NLP到底是不是忽悠,我們首先要看NLP研究的目的在哪裡。隨著人工智慧的發展,人類急需一種能夠實現人機互動的方法。我們的世界大量充斥著沒有結構化的資料,而是非結構化的資料,例如我們人類交流的話語,但是這些對於機器而言是無法理解的。NLP 的目標是讓計算機/機器在理解語言上像人類一樣智慧。最終目標是彌補人類交流(自然語言)和計算機理解(機器語言)之間的差距[1]。所以自然語言處理(NLP)的研究顯得尤為重要和迫切。
NLP研究成果那麼NLP現在的成果有哪些以及是否已經初步具備了實際應用所需的能力,這才是我們關注的,也就是它是否還在忽悠。下面簡單列舉幾個NLP應用的領域:
文字分類(以fastText為例)
fastText是Facebook於2016年開源的一個詞向量計算和文字分類工具,在文字分類任務中fastText(淺層網路)往往能取得和深度網路相媲美的精度,卻在訓練時間上比深度網路快許多數量級。在標準的多核CPU上, 能夠在10分鐘之內訓練10億詞級別語料庫的詞向量,能夠在1分鐘之內分類有30多萬類別的50多萬條句子[2]。
情感分析
情感分析一般主要是指利用機器提取文字中人們對某人或某物的態度,從而發現潛在的問題。這裡我們所說的情感分析主要針對態度(attitude)。例如使用 IMDB 電影評論資料集來測試 Word2Vec 在情感分析中的有效性。資料集中包含了 25,000 條積極評論,25,000 條消極評論和 50,000 條未標記的電影評論,最後的預測準確率達到了86%[3]。
關鍵詞提取
關鍵詞提取的演算法有很多,比較主流的有Ti-idf,textrank,LDA等等,在關鍵詞提取領域效果顯著。
道阻且長透過這些例子,我們可以看出NLP已經在實際應用領域發揮了一定的作用,在未來有著很大的進步空間。但是目前來說NLP的研發確實有著很多困難的地方,特別是在中文方面(下面參考自百度百科[4]):
詞義的消歧
很多字詞並不是只有一個意思,它們的語意需要聯絡上下文來推斷。
句法的模糊性
由於一些詞在不同情境下詞性會發生變化,還有不同情境下可能和不同的詞搭配為短語,這給句法剖析樹的構建帶來了很大的問題。例如“你還不意思意思?”、“我不懂你意思”,兩句話裡的意思一個是動詞,一個是名詞。
有瑕疵的或不規範的輸入
例如錯別字,或者順序錯誤,或者在語音識別中輸入的方言
語言行為與計劃
句子常常並不只是字面上的意思;例如,“今年有人達標嗎”,但是可能結合語境這場考核還未開始,所以直接回答“有”或“沒有”都不好,可能最好的回答是“還未開始考核”。所以總的來說NLP並不能說是忽悠人,目前也取得了很多成果,但是仍然有很多面臨的挑戰。
參考網址:
[1] https://blog.csdn.net/zhouguangfei0717/article/details/80048443
[2] https://www.jianshu.com/p/b627cb31aab7
[3] http://python.jobbole.com/87811/
[4]https://baike.baidu.com/item/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86/365730