今年8月,雷鋒網將在深圳舉辦一場盛況空前,且有全球影響力的人工智慧與機器人創新大會。屆時雷鋒網將發布「人工智慧&機器人Top25創新企業榜」榜單。目前,我們正在拜訪人工智慧、機器人領域的相關公司,從中篩選最終入選榜單的公司名單。如果你也想加入我們的榜單之中,請聯繫:2020@leiphone.com。
編者按:本文整理自搜狗公司王硯峰在雷鋒網硬創公開課上的演講。王硯峰是搜狗公司桌面事業部高級總監,桌面研究部和語音交互技術中心負責人。承擔輸入法、號碼通、個性化新聞等搜狗桌面產品在大數據和算法研究方面的工作,通過研究能力提升產品核心品質推動產品創新。同時負責搜狗智能語音交互技術,帶領語音和語義技術團隊實現了業內頂尖的語音交互能力,並致力於智能語音技術的產品化創新。個人主要研究領域為:自然語言處理、機器學習、推薦系統、語義理解、機器智能等。
所謂語義理解簡而言之就是讓機器懂得人的話語,理解人的意圖,並且返回給用戶相應的答案或者內容,來解決用戶需求。如果我們把語音識別作為機器的耳朵,那麼語義理解就是機器的大腦。
比如用戶問「怎麼去天安門」,語義理解需要得到的結果是用戶有出行需求,並且出行的目的地是天安門;如果用戶問「周圍有沒有好吃的川菜」,那麼用戶此時的目的是找餐館,並且對餐館的類型有要求,菜系是川菜;如果用戶說「我想看一些湖人隊最新的消息」,那麼此時用戶的需求是看一些新聞資訊,主體限定在NBA的湖人隊上。
因此可以看到語義理解技術至少有兩個關鍵的因素,第一是自然語言處理技術,利用統計自然語言處理算法提取文本中的實體詞以及依存關係;第二是要有全面而豐富的知識庫,配合自然語言處理技術,才能得到用戶的準確意圖。
結合到上面的例子,如果知識庫中「天安門」是作為一個地名,那麼「怎麼去天安門」,就可以被以很高的準確率劃分為用戶出行意圖。但如果地名庫中有一個數據叫「黑眼圈」,那麼「怎麼去黑眼圈」就非常有可能被劃分到出行,而不是一個知識問答。
從大的範疇來講,我會把語義理解劃分為三個層次。
第一個層次,是限定在一個已有服務相對成熟的垂直領域來解決用戶的實際需求。比如導航、餐飲、旅館、天氣、音樂等領域,這類問題的特點是用戶需求相對收斂,知識庫也相對成熟,並且經過了多年的整理和沉澱已經具有一定的結構化特性,知識之間已經不是孤立的知識點,而是通過知識之間的關係連成了網絡。「知識圖譜」其實就是某種這樣的網絡。限定在垂直領域的語義理解問題因為用戶需求的收斂性和知識庫的成熟,技術上會更容易,同時也會更有能力實際的解決用戶的問題和需求。據統計,在車內通用安吉星或者豐田GBOOK這種車內call center提供的服務中,80%的需求都是問路或者導航,至少這是可以很大程度上通過機器語義理解解決的。在垂直領域下的語義理解,考驗的更多是構建知識庫本身的能力。
第二個層次,就是仍然在解決用戶的實際問題,但是問題本身已經偏長尾,需求本身更加離散,並且知識也沒有很好的結構化。比如「天空為什麼是藍色的」。往往這個時候各個語義理解引擎會藉助於搜尋引擎,但實際上結果相對能夠保證的也只有搜尋引擎整理出來的百科和問答資源。尤其對於問答,目前大部分的語義理解引擎仍然是靠搜索方式來解決,通過搜索技術尋找問答庫中和用戶問題最匹配的問題。而且無論是百度知道還是搜狗問問,問答庫中大部分的問答內容其質量本身也不能得到好的判斷,更不用說需要從大量文本中抽取整理答案了。這對於自然語言理解技術是非常大的考驗,並且目前國內做語義理解的公司整體上都沒有很好的效果,也是搜狗目前正在嘗試突破的話題。
最高的層次,就是做到跟人一樣的交談。現在市面上的對話機器人,以「小冰」為代表,都在渲染這方面的能力。但實際上目前是做不到的。因為人類在自然對話中,會帶入大量的歷史信息,場景信息,感情信息以及預先的認知信息,實際上計算機目前從根本上都沒有一個好的建模方法來描述人類的思想和認知過程,更不要提在思想活動和認知過程之後產生的語言。因此當前機器在這方面的能力,不要說解決用戶實際問題,就連閒聊的對話幾輪下來也經不住用戶的考驗。目前這個能力唯一實際一些的用途的就是在兒童產品中,給沒有邏輯能力和判斷能力的小朋友帶來歡樂。而對於成人,此類產品的用戶留存率從來低的可憐。
因此整體上,語義理解這個領域仍然是剛剛開始,雖然經歷了不錯的發展,但是從技術本質上目前還沒有突破。距離很多公司鼓吹的強人工智慧,還有很長的路要走。
Q:「結合上下文的『多對話解析』」是如何做到的?其中的難點是什麼?
談多輪對話,先要從單輪對話講起。單輪對話完全不需要考慮到用戶的歷史問題,只針對用戶當前問題做答。一般是先對問題進行實體詞識別,然後再結合實體詞上下文對問題進行分類,判斷用戶的意圖分類,然後結合意圖分類和實體詞,得到用戶精確的意圖。所以本質上單輪對話的核心是線性分類問題,隨著類別的增加,問題本身沒有變的更加複雜。並且隨著用戶數據的累積,分類的訓練數據就會不停增加,分類的準確率就會不斷提升,這是一個很經典的機器學習的問題。
而多輪對話在單輪對話的基礎上引入了上下文,因此當前的狀態不僅取決於上文,而且可能取決於上上文或者更遠的上文。因此多輪對話實際上是一個有限狀態機(簡單的說就是是表示有限個狀態以及在這些狀態之間的轉移和動作等行為的數學模型。),用戶從一個狀態跳到另一個狀態的過程,其實就是一輪交互,而且交互反饋是根據上一個狀態生成的。隨著類別的增大,狀態機的規模會非常大的膨脹起來。如果實現一個靜態的狀態機,假定用戶行為是可預測的,那更多是工程能力上的問題。但實際環境下用戶行為往往是不可預測的,會產生出很多新的行為範式,反映出來的就是狀態機會增加更多的狀態以及狀態之間的邊,那麼如何根據用戶產生出來的數據,動態的不停的構建或者調整狀態機,這是多輪交互裡面最大的難點。因為每自動生成一個狀態節點,都需要同時生成一個在這個節點上用戶可理解的反饋方式以及抽象概念。
這是我認為多輪對話中最難的部分,也是即使是當前很流行的一些助手類產品都不支持多輪對話的原因。主要是很難根據用戶數據自動的把多輪交互的能力構建出來。這部分搜狗目前也不能做到自動,仍然需要人的抽象總結能力的介入,尤其是交互話術,還需要人為來定義。
Q:語義理解的準確率,整個行業目前最高能達到多少?如何提高?
這裡談到的準確率主要就是指單輪交互而言了。結合到我在第一個問題中的闡述,語義理解在垂直場景和領域下的準確率已經有了一定的可用性,但是在更開放的場景中以及對話流中,準確率還是低得可憐。
在垂直場景中,假設知識庫以及對應的分類模型已經比較完善,在用戶常見問題上達到80%以上的準確率是可以的。提高的路徑也是比較明確,就是一方面完善知識庫的數據能力,另一方面用更多的用戶語料提升模型的準確度。
Q:如何解決中英文混合語句的語義分析問題(比如,「幫我呼叫Stephen William Hawking」)?中英文區分的難點在哪?
我認為中英文混合語句的語音分析比純粹的中文技術上甚至還更容易,因為英文已經是非常好的斷句了,而不需要中文還要對分詞有所依賴。
目前中英文語義分析問題主要的兩個實際難點,一方面目前的語義產品形態上多和語音相結合,語義拿到的是語音識別的結果。然而中英文混合語音識別錯誤率目前仍然偏高,主要是受到中英文發音建模方式的不同以及語料本身的缺失。錯誤的中英文語音識別結果會加大語義理解的難度。
另一方面語義理解會非常重的依賴知識和對應的服務,而這方面中國網際網路公司和國際上的內容服務商的對接成本和困難要高於國內,但是這個困難不本質。
Q:在深度學習的狀態下,機器能夠對用戶的語言習慣適應到什麼程度?能理解用戶的一些情緒上的語言習慣嗎(如諷刺等話語)?
深度學習在語音圖像方面取得了重大突破,這些年在自然語言處理方面也取得了可觀的進展,體現出來更強的語言理解能力。但是需要強調的是,深度學習比起傳統的機器學習模型,主要是通過提升模型的複雜度來增加模型能力。但是模型本身並不能對人類產生語言的方式進行好的建模,本質上還是統計機器學習的範疇,所以會非常大的依賴數據。實際上深度學習本身也是在大數據這個背景下才得以發揮。因此只要有足夠的用戶話語數據,深度學習還是有能力給出更好的結果。
但是往往用戶的語言還是會取決於對話歷史,而不是單純的只看一句話。因此訓練一個模型,需要大量的對話數據,深度學習的優勢才能體現出來。但目前受限於用戶對話內容的隱私保護,業界拿不到足夠「大」的數據,因此取得的效果也會很有限。
Q:與科大訊飛、思必馳等同行技術的差異化(包括語音識別、語義/邏輯分析)?
語音識別方面,因為我們具有搜狗輸入法這樣大的用戶產品,因此在獲得真實用戶語音語料方面,尤其是噪音環境和口音,我們都具有非常大的優勢。科大訊飛有自己的輸入法,比起來我們的優勢還沒有那麼明顯,而相對思必馳雲知聲這種用戶量小的公司而言這個優勢是巨大的。
相比科大訊飛,搜狗主要的優勢還是在語義理解以及背後的服務上。如前所述,語義理解能力一方面是考驗垂直場景的知識能力,另一方面考驗搜索問答能力。而這方面搜狗的能力是完備的,具有網頁搜索,各類垂搜以及搜狗地圖等產品,而這些都是訊飛不具備的。以導航中的多輪交互為例,如果拿不到地圖核心的結構化數據,多輪交互是無從談起的。
比如北京的用戶要去化工大學昌平校區,首先化工大學在北京有多個分校,其次每個分校都有多個對應的POI,以及用戶很多時候並不具備「化工大學北校區就是昌平校區」這樣的知識,只能通過地標的方式「我想去昌平的那個」來描述。因此如果語音交互模塊不能深度的理解地圖的結構化數據以及地標信息,那麼是很難做到智能交互的。
另外搜狗是一個網際網路產品公司,用戶的理解和產品能力相比起來也會更強,因此在做從技術到產品的轉換過程中,我們更有機會做出來用戶體驗更好價值更大的產品。
Q:有沒有機會實現 Google Now 那樣的功能?比如語音調取應用,檢索其它應用內的信息,自動給出答案。
這個問題不是技術問題而是系統問題。只要從系統權限上可以調用應用,那從語義理解上來講是非常容易的事情,只是簡單地命令識別。
至於檢索其他應用內信息,也是主要是否可以拿到應用服務的數據或者藉口。比如目前國內餐飲方面的語義理解和服務,大眾點評就是非常好的服務方。可以通過合作拿到餐廳的元數據,也可以通過數據協議訪問其平臺和搜索,這樣餐飲的需求就可以直接給出答案。技術上目前都是相對已經很成熟的。
Q:今年8月,雷鋒網(公眾號:雷鋒網)將在深圳舉辦「全球人工智慧與機器人創新大會」(簡稱:GAIR)。想了解下,您對人工智慧的未來趨勢怎麼看?
從大的趨勢上來看,人工智慧的未來一定是樂觀的。目前人工智慧有些過熱,行業以及媒體對人工智慧的期望以及概念的炒作已經遠遠大於其本身的能力了,不過當一個新興行業或者產業在被催生的時候,堆泡沫的過程也是必要的。
我個人是個理性的樂觀派,我相信未來機器一定能替代人去做更多的事情,但是我比較同意Google吳軍老師的觀點,所謂的人工智慧其實只是機器智能,因為目前機器對事物的理解和人對事物的理解是不一樣的。機器智能多數依靠大數據才能完成工作,而人不需要大數據就能去感知、理解和判斷事物。但是只要給你機器足夠多的數據,機器就能創造出無限的可能。當下我們每天在手機上製造的大量數據,未來的物聯網的時代,傳感器、camera和mic會進一步帶來數據上的爆發。那麼機器智能就能借著大數據在各個方面達到更高的高度。就像我們剛才講的語義理解的問題,之所以在人機對話方面處在這麼低的智商水平,也是因為語料庫不夠大,如果未來大數據充足,我相信,機器智能在語義理解方面一定也能解決更多的問題。
眾所周知,在信息處理方面,人工智慧主要解決兩個問題, 第一個是交互和感知,第二個是信息的獲得。交互和感知方面,語音和圖像的識別已經取得了長足進步,錯誤率會越來越低,最終會在技術上徹底解決的。而信息獲取方面,我們都在努力讓信息有更好的表示以及索引方式,讓網際網路上的雜亂信息變得更加知識化結構化,甚至會通過語音和圖像來索引信息觸達信息。 我心目中人工智慧的價值就是在於提升我們獲取信息的能力和效率、讓人與機器的交互更容易、知識獲取更容易。在這個方向上,人工智慧也一定能取得穩定的健康的發展,逐漸改變我們的生活。
至於讓機器有人類的思維包括情感,這與我們目前所講的機器智能其實本質上不是一碼事。這個方向我整體上不看好,也不是我們應該努力的方向,從哲學上說,機器和人只有相互不可替代,才能持續發展。
雷鋒網原創文章,未經授權禁止轉載。詳情見轉載須知。