Google 教你如何打造聰明的聊天機器人
一般情況下,我們和電腦説話都覺得很費勁,因為它們有點望文生義。但是,Google正在教電腦如何理解人類語音和文本的博大精深。
現在,Google把其算法開放給第三方的軟件開發人員。有了這些工具,程序員就能開發基於語言的應用和服務,比現在許多的聊天機器人更加善解人意。而程序員大概會迷上Google正在完善的強大的機器學習技術。
Google對語法和句法的掌握有助於其提供更準確的搜索結果,而且會隨着越來越多的設備和服務都依賴於語音控制變得越來越重要。
基於Google軟件的智能手機已經可以聲控,而且Google正在開發類似於亞馬遜Echo的家庭設備,它很大程度上依賴語音交互。所以Google開放工具,使語言理解更容易有很大的戰略意義。
“我們的大多數用户都通過語言與我們互動。”Google自然語言理解和機器學習的領導人Fernando Pereira説。 “他們通過打字或説話來問問題,所以,為了讓用户滿意,我們必須使系統了解用户想要的是什麼。”
Google還發布了名為SyntaxNet的工具,可以基於其上下文背景和普遍使用學會理解單詞和短語的意思。它適用於Google原先發布的名為TensorFlow的深度學習框架,同時,它還是迄今使用TensorFlow構建的最複雜和最精密的部件。
Google還發布了英語預先訓練解析器,稱為Parsey McParseface(一發言人稱,該公司在幫它起名字時很困擾,直到有人建議這個琅琅上口的名字)。文本被送入分析器後會自動分解成這樣的句法成分:如名詞,動詞,主體和對象。這使得計算機更容易正確解析不明確的查詢或命令。
Google通常依賴於數據和機器學習,當然的確有些其他的方法,如Facebook試圖通過提供大量未標註主要數據給計算機,從而培養它們解析語言的能力。但是,Google的語言理解項目,是專業人士建設的。八年多來,語言專家一直在努力為Google註釋文本。而最近這些標註在大型深度學習神經網絡取得了很大進展。
對計算機而言,理解語言是非常困難的,因為語言往往是模糊的。即使是像“Find me cats in hats”一樣簡單的搜索查詢,也會出現歧義,可以解釋為帶帽子的貓或者坐在帽子上的貓。人類可以使用常識來辨別這樣歧義的句子,而Google的技術則是採用機器學習。其深度學習系統,通過語法文字的培訓,判斷出最有可能正確的語句結構。而在剛才的“cats in hats”例子裏,Google會假定搜索者感興趣的是時尚前衞帶帽子的貓。
Google產品經理Dave Orr,負責尋找語言理解研究的商業應用,向外媒記者展示了該技術。他把幾篇MIT科技評論的文章放進內部版本的語言解析器。它犯了幾個微不足道的錯誤,但總體來説其註釋的準確性令人印象深刻,能正確識別句法結構或捕獲標題的含義。 “這是人類能創造的最好的解析器,”奧爾説, “我們認為這是接近人類的水平。”
在內部,Google結合了自然語言系統和稱為知識圖譜的語義信息數據庫。這使得它能夠識別特定對象,人物,地點等概念,並作出相應的反應。該系統通常也能夠通過將單詞與出現在一個類似的上下文比較,正確將新單詞分類。迄今為止,該技術適用於15種語言。有些語言對語言分析更有挑戰性,培訓起來更加困難,奧爾説。
然而,該技術遠遠還沒能夠完全理解英語。 “我們的系統在結構合理,精心編輯的文本表現得最好。”Pereira説, “社交媒體和搜索查詢的不規律更有挑戰性。我們已經取得了進展,但有很多的空間。”
仍然有很多歧義的地方需要人類程度的常識——我們從經驗中學習的東西,從我們的朋友和我們的父母得到的建議,”Pereira説。 “這種豐富的解決問題能力正是我們系統的缺失。”
研究語言理解的斯坦福大學教授Noah Goodman説,改進語法的理解僅僅是電腦需要掌握語言的開始。 “語法肯定是語言的重要組成部分,”他説。 “但是,從語法到語義學;從淺層語義到推斷深層含義都是很大的進步。”
via TR
資料來源:雷鋒網
作者/編輯:潔穎