AI產(chǎn)品經(jīng)理基礎(chǔ)(三)-序列模型

RNN是什么

RNN即序列神經(jīng)網(wǎng)絡,通常用來處理人類語言、音樂等具有序列屬性的任務

人類語言本身作為一種符號并沒有意義,只不過是人類對其賦予了意義。而這種意義體現(xiàn)在每個字(語義)以及字的順序(事物關(guān)系)上。RNN相當于在通用神經(jīng)網(wǎng)絡上加入了人類的先驗知識,將文本信息按照序列輸入的方式處理。

RNN基礎(chǔ)結(jié)構(gòu)

RNN通用結(jié)構(gòu)

RNN對序列的基本思路是,在序列任務中前面的數(shù)據(jù)會對當前的計算產(chǎn)生影響。所以前一個cell的激活值會輸入到后一個cell中。這樣就其實就是對序列數(shù)據(jù)的特點做了一定程度的設(shè)計。

但是隨著序列長度變化,激活值不斷堆疊后就會損失一些信息,導致序列前面的信息對后面的影響變?nèi)?。要知道很多時候語言的頭部信息對后面的信息可能有很大的影響。所以目前應用較廣泛的是LSTM模型,在RNN基礎(chǔ)結(jié)構(gòu)上增加了一條長記憶線C,每個cell的X與A會使得C對信息進行補充或者丟失,而具有序列重要信息的C會對A的激活值具有影響。就像是模型附帶了一個小本本,遇到新鮮事兒就記進去,然后在后續(xù)判斷將小本本的信息加入,產(chǎn)出更有可信度的激活值。

LSTM

在RNN應用過程中,逐漸發(fā)現(xiàn)有時候當前局部的計算不僅僅與前面的信息相關(guān),也與后面的信息相關(guān)(特別是翻譯、語音識別等)。所以提出了雙向RNN結(jié)構(gòu),將前面的信息與后面的信息綜合起來做判斷。


雙向RNN

人在進行信息判斷時,有時候不僅僅是綜合整個序列的信息,有時候更會抓住重點去分析以便快速得到更好的答案,在序列模型中每個輸入本身確實有重點,比如吃與食物相關(guān),在分析吃的字詞時只需將注意力分配到與食物相關(guān)得詞上,其他的并不重要,因此提出了注意力模型

如圖所示,經(jīng)過一個雙向RNN處理過的輸出值y,不同的y分配給不同的權(quán)重最終加和起來作為輸入,那么該輸入附帶的信息就會有偏向,從而模型會有更好的效果。


注意力模型

正如前文所說,所有的模型都不完美,在擬合過程中就會出現(xiàn)信息丟失、梯度消失等現(xiàn)象,長短時記憶、雙向計算、注意力機制都是典型的將人類知識加入模型中,使得模型負擔減少,效果更好。

應用

語言模型

語言模型

將語料庫通過RNN模型訓練后,模型就學會了人話的規(guī)律,從而可以在給定條件下判斷下一個字是何字的概率,從而在多個場景有所應用:
1、語音識別
當語音通過聲學系統(tǒng)編碼與解碼處理后,最終要生成句子,由于發(fā)音的相似性句子不僅僅有一個,這些句子可以通過語言模型來評分,只留下人話概率最高的那個就是我們的模型識別結(jié)果。
2、文字/序列生成
經(jīng)過語言模型訓練后,可以從模型中取得話例。比如將0帶入第一個輸入,我們會得到第一個初始詞,再將該詞在第二個輸入中作為輸入值,以此類推最終會生成一個句子,這個句子遵循人話規(guī)律。假如用泰戈爾的詩作為訓練集,我們輸出的就是泰戈爾風格的詩句

同樣得方式可以應用在音樂上,如果將音樂也當做一種序列去訓練,最終我們也可以獲得某種音樂風格的曲子,從而可以實現(xiàn)在文字上以及在音樂上的另類創(chuàng)作。

情感識別

情感識別

將RNN模型對接一個softmax輸出,就可以對句子進行分類,通常用來判斷情感趨向。

除了可以通過分析句子得到情感判斷外,分析詞語也可以。目前詞的使用都是將符號向量映射(Word2Vec算法)到語義空間上,所以詞向量本身就具有語義含義,通過訓練可以做情感分類。

翻譯

翻譯模型

翻譯目前都是用如圖所示結(jié)構(gòu),包含編碼器與解碼器。相當于將語句A通過RNN編碼后灌入另一個模型去解碼為另一個語句B,類似于卷積對圖片的編碼處理,序列模型在編碼解碼過程中也形成了一個表征語義的矩陣,該矩陣的語義表達與語言工具無關(guān),作為兩個語言之間的橋梁實現(xiàn)翻譯功能。借鑒人類翻譯過程中對前后文重點的讀取,翻譯模型會用到注意力機制以達到更好的模型效果

實際上前一陣子出現(xiàn)過AI換臉這種生成式的任務在社區(qū)火爆,特別是色情網(wǎng)站。其實這種生成任務很多時候也會用到這種編碼-解碼樣式的結(jié)構(gòu)

人機對話

目前人機對話包含應用場景:問答型、聊天型、任務型

問答型在很多客服領(lǐng)域應用廣泛,解決了頭部高頻問題。這類任務更多屬于機器學習,對用戶的疑問通過關(guān)鍵字檢測分類至我們預先設(shè)好的問題分類中。

而聊天型機器人最典型的就是微軟小冰,要保持這種開放性對話需要系統(tǒng)知識,不斷產(chǎn)生新的話題。這類Chatbot的目標是實現(xiàn)《her》中的情感陪伴,但是就目前發(fā)展來講,仍然不夠。

任務型機器人目前看起來最具有商業(yè)潛力,市面上的智能音箱基本屬于這類范疇。目標是識別用戶意圖后在封閉的話題區(qū)間內(nèi)進行對話直至滿足用戶需求。


對話業(yè)務

在任務驅(qū)動型的人機對話中,首先就是獲取人的意圖。意圖的識別屬于自然語言理解,屬于一種分類任務。很多智能音箱平臺會推出一些技能,這些技能實際上就對應意圖所對應的領(lǐng)域。通過意圖識別后將業(yè)務處理邏輯落在這些技能上,技能與技能之間其實已經(jīng)沒有關(guān)聯(lián),這樣的方式減輕了訓練難度,使得機器人在特定任務上有更好的表現(xiàn)。

在計算機處理人類請求后,不僅要判斷用戶的意圖分類,還要對請求語進行序列標注(實體識別、實體關(guān)系抽取等),分析出該意圖下哪些必要信息已經(jīng)獲得,哪些信息沒有獲得,這些就是填槽的過程。

用戶的請求往往是含糊不清的,多輪對話就是為了獲取在該意圖下所有的必要信息。整個過程需要對話管理的支持,對話管理實際一個決策過程(策略樹),系統(tǒng)在對話過程中不斷根據(jù)當前狀態(tài)決定下一步應該采取的最優(yōu)動作(如:提供結(jié)果,詢問特定限制條件,澄清或確認需求…)從而最有效的輔助用戶完成信息或服務獲取的任務。對話管理的構(gòu)建更需要人工設(shè)計,但似乎通過強化學習也能得到最佳路徑。

DM對話管理過程中可能需要和用戶交互,就會用到自然語言生成,將系統(tǒng)語義轉(zhuǎn)化為人類語言。這是個有限集,用模板是一種選擇,同樣也可以用語言模型、類似翻譯的編碼解碼模型。

最后

總的來說,NLP的研究比計算機視覺的研究似乎更為復雜,NLP也是當今人工智能的發(fā)展瓶頸,每個從業(yè)人員都明白NLP的發(fā)展對人機交互的沖擊非常巨大,不亞于圖形界面對人機交互的影響。未來世界就在那兒,只是我們不知道何時到來。


image.png

(筆者正尋求NLP、人機對話方向產(chǎn)品職位 微信:cheng390552021)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 前面的文章主要從理論的角度介紹了自然語言人機對話系統(tǒng)所可能涉及到的多個領(lǐng)域的經(jīng)典模型和基礎(chǔ)知識。這篇文章,甚至之后...
    我偏笑_NSNirvana閱讀 14,397評論 2 64
  • 9. 循環(huán)神經(jīng)網(wǎng)絡 場景描述 循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network)是一種主流的深度學習...
    _龍雀閱讀 2,969評論 0 3
  • 編輯|Emily AI前線出品|ID:ai-front 您是否曾經(jīng)利用 Siri、Alexa 或者 Cortana...
    AI前線閱讀 2,733評論 0 1
  • 聊天機器人[http://lib.csdn.net/base/robot](也可以稱為語音助手、聊天助手、對話機器...
    mlion閱讀 2,933評論 1 11
  • 那時候,我們都是第二排,只不過你在靠墻,我在中間。 你上課總喜歡睡覺,可能是大家對你印象都很好,很愛開你玩笑,我也...
    歆啊閱讀 279評論 0 0

友情鏈接更多精彩內(nèi)容