數據變金礦:一文讀懂序列模型(附用例)

數據變金礦:一文讀懂序列模型(附用例)

翻譯:王雨桐

校對:丁楠雅

本文約3000字,建議閱讀15分鐘。


本文將通過思想實驗和一些應用案例來簡要介紹序列模型的必備知識。

簡介

眾所周知,人工神經網絡(ANN)的設計思路是模仿人腦結構。但是直到10年前,ANN和人類大腦之間唯一的共同點是對實體的命名方式(例如神經元)。由於預測能力較弱並且實際應用的領域較少,這樣的神經網絡幾乎毫無用處。

但是隨著近十年來技術的飛速進步,神經網絡越來越接近人腦,這使得ANN在各個行業中應用得越來越多。

數據變金礦:一文讀懂序列模型(附用例)

本文中,我們將介紹人工神經網絡(ANN)領域的兩大革新,這些革新使得ANN更接近於人類大腦。

目錄

  • ANN領域的兩大革新
  • 思想實驗
  • 序列模型的實際應用
  • 序列生成器
  • 序列到序列NLP模型
  • 一些非文本的序列到序列模型

ANN領域的兩大革新

  1. 隨著GPU極大地提升了計算能力,我們可以大幅度地增加神經元的深度和廣度。然而這樣的人工神經網絡仍然遠遠不及大腦的神經元數量。
  2. ANN現在既可以處理輸入節點的序列數據,也可以處理輸出節點的序列數據。這和我們大腦的工作模式一樣。人類大腦並不是通過二分類來理解複雜的理念的。基於一系列給定的信息,我們形成了“思想”,隨後大腦會通過一系列可以理解的詞彙來表達“思想”。

我們能否在ANN中引入“思想”的概念呢?答案是肯定的,本文將進一步討論這個理念。

數據變金礦:一文讀懂序列模型(附用例)

現實世界的大部分數據都是以序列的形式出現的,這使得序列模型受到越來越多的關注。序列可能是數列、圖片像素序列、視頻序列或者是一段音頻序列。

在過去的十年間,我們已經存儲了近1000PB(或者超過109GB)的非結構化數據,以前我們很難從中提取信息,幸運的是,我們現在有序列模型這樣新型的神經網絡結構,它可以把數據變成金礦。

本文並不討論序列模型背後所有複雜的數學原理,或是提供一些運行序列模型的示例代碼(我將把代碼留給以後的文章)。本文想要提供一些行業內應用序列模型的實際案例,從而幫助你識別出可以通過此類模型解決的商業問題。

為了更好地理解本文,接下來希望你能想象一個場景。請開啟你的分析推理模式吧!

思想實驗

假如現在沃爾瑪指派你負責一個新項目 – WalKiosk,希望你帶領團隊開發出無人自助超市,顧客只需要和沃爾瑪的Kiosk互動就可以完成購物,就好像自動售賣機一樣。沃爾瑪想把這樣的Kiosk應用在美國各地。

Kiosk和普通自助售賣機的關鍵區別是Kiosk不會展示售賣商品的名錄,而是通過音頻開啟一個類似Google 的搜索引擎。顧客走到Kiosks面前,以“OK Walmrt, xxxxxx”這樣的關鍵字開頭,然後說出或輸入想要的商品。下面是一個交互案例(你可以試著評估一下人類售貨員是否能比Kiosk 做的更好):

顧客說“OK Walmrt,,我想要Leonardo DiCaprio 和Nolan搭檔的第一個電影中,第一幕裡他穿的那雙鞋。”使用的是某國語言。

你的團隊要做的是讓Kiosk快速搜索,如果找到一個可靠的答案,就通過客戶諮詢時使用的語言來回復,比如“Leonardo DiCaprio穿的是黑色xxxxx款的Nike鞋。點擊鏈接觀看您所需物品的短視頻介紹。好消息--我們目前有您需要的款式和鞋碼,價格是200美元。由於您是沃爾瑪的忠實用戶,我為您找到了合適的折扣!立即購買僅需150美元。”

如果顧客說“好的我買了”,Kiosk會在顧客付款後立刻交貨。

Kiosk最後說道“感謝XYZ先生今日的惠顧,請為我們的服務提供寶貴建議,以便我們不斷改進”,然後顧客通過文字或語音留下對本次交易的反饋後離開。

這樣一個簡單的交易現在如今的世界裡要佔據你大塊的時間,但是今後只需要不到兩分鐘(如果一切正常的情況下)。

這聽起來是不是很超前?實現Kiosk的功能主要通過一個簡單的結構--序列模型。以下是Kiosk需要具備的功能列表:

  1. 語音識別用於理解顧客所述的內容。
  2. 機器語言翻譯用於將顧客的語言翻譯為指定的語言(比如英語)。
  3. 命名實體/主題提取用於找到步驟2中顧客需要的主要物品。
  4. 關係分類用於標記步驟3中各種實體之間的關係。
  5. 查詢應答(類似Google搜索)通過核心知識圖,找到步驟3和4中實體的關係。
  6. 語音生成將步驟5中找到的所有相關信息生成顧客需要的答案。
  7. 聊天機器人使機器的對話能力更接近於人類。
  8. 文本總結用於將用戶的反饋總結為關鍵點或痛點。
  9. 產品銷售預測用於補充庫存。
數據變金礦:一文讀懂序列模型(附用例)

完成Walkiosk所需的不僅僅是以上九個功能,但是它們足以實現核心想法。九個功能中的任意一個都可以通過單一結構----序列模型構建。

你可以將序列模型想象為一個幾乎保持不變的黑匣子,只需要按這九個功能改變輸入和輸出數據,每個功能的模型架構是相同的。我們可以進一步生成以任何語言為輸入的單一模型,一併完成自助服務過程、報告過程、庫存管理過程。

如果這還不足以幫助你完整了解序列模型,讓我們整理一個序列模型可以實現哪些功能的詳盡列表。

序列模型的實際應用

為了確保列表儘可能涵蓋序列模型的潛在用例,我們基於輸入和輸出序列的類型進行分類。輸入和輸出可以是以下任意一種:標量(Scalar)、趨勢、文本、圖像、音頻和視頻。如果以上六種都可以作為輸出和輸入,我們一共得到36種分類,然而不是每一種組合的研究都已經成熟。

在閱讀下面這個列表之前,你可以先停下來。嘗試寫出你自己的用例列表(可以參考前文的思想實驗)。

列表如下:

輸入

輸出

用例

類型

元素

類型

元素

標量

單個

趨勢

多個

模式生成

音頻

多個

音樂生成

文本

多個

文本生成

圖像

多個

圖片生成

趨勢

多個

標量

單個

股票交易決策

固定時段的績效預測

趨勢

多個

DNA序列分析

時間序列預測

文本

多個

標量

單個

情感分類

話題分類

答案選擇

文本

多個

文本總結

機器翻譯

聊天機器人

命名實體識別

主題提取

詞性標註

文本蘊含

關係分類

趨勢

多個

查詢應答

音頻

多個

語音生成

圖像

多個

標量

單個

面部表情標註

實體分類

文本

多個

圖像描述

圖像

多個

圖像修整

音頻

多個

標量

單個

情感分類

對話人數標註

話題分類

文本

多個

語音識別

會議總結

音頻

多個

語音助理

視頻

多個

標量

單個

行為識別

文本

多個

字幕生成

表格中的名詞解釋:

類型是輸入或輸出的類型。

元素是輸入或輸出序列中元素的數目。

用例是分類中可能的應用方向。

下面我們將介紹一些實際案例,帶你領略序列模型的超能力。

首先,我們先介紹最簡單的—序列生成器

這些生成器通常採用標量作為輸入,標量輸入可以是任意的隨機種子或數據。以下是一些生成器的案例:

數據變金礦:一文讀懂序列模型(附用例)

值得注意的是,我們可以用任何特定類型的數據來訓練模型。例如,如果我們用哈利波特的書來訓練文本生成器(Text generator),很可能會得到一段有關於哈利波特主人公的奇幻文字。如果你足夠幸運,可能會得到一個有實際意義的章節,於是你創造了屬於你的獨創內容。

如果你用爵士樂訓練模型,你可能會通過模型生成同一風格的新曲子。如果你用動物的圖片訓練模型,你可能會看到雜交物種的樣子。

其次,我們介紹最受歡迎的-序列到序列 NLP模型

數據變金礦:一文讀懂序列模型(附用例)

機器語言翻譯(Machine Language Translation)已經達到新的高度,現在正和人工翻譯展開激烈的競爭。如今,你可以輕鬆找到基於序列到序列模型(Sequence to sequence, seq2seq)核心概念的實時翻譯機器。

文本總結(Text Summarization)是序列模型的另一個重要用例。文本總結可以顯著減輕以下工作負擔--閱讀顧客冗長的投訴、電話/通訊監控、彙總顧客對產品的反饋等。

聊天機器人(Chatbot)是另一個重要的用例,目前被廣泛地應用於經營活動、呼叫中心、交流中心和類似Siri、Google Home、Alexa類型的用戶輔助。

最後,我們介紹更多非文本的序列到序列模型

數據變金礦:一文讀懂序列模型(附用例)

語音識別(Speech Recognition)是目前最受投資追捧的一個領域,其在個人Al助理(Alexa、Google Home等)和呼叫中心語音記錄工具等用例中扮演了非常重要的角色。

在上圖提到的三項技術中,目前有市值約10億美元的企業以語音識別為核心競爭力,語音識別中廣泛地使用序列到序列模型。圖像描述(Image Captioning)是最熱門的研究領域之一,它在社交媒體領域有廣泛應用。至於字幕生成(Subtitle Generator),這項技術儘管還沒有達到產品階段,但是目前也在積極地探索中。

尾記

如今數據科學領域的很多牛人都在致力於解決已經存在的問題。然而對於任何成功的數據科學家或分析員來說,識別並提出可以分析解決的問題是同樣重要的任務。後者是非常不同的工作,並且不需要過多的編程經驗或數學背景。你唯一需要做的是通過給定的工具瞭解哪些是可能實現的,而哪些不能。

問題識別是資深的分析專業人士必備的技能。我希望這篇序列模型的入門文章可以激勵你去尋找領域內能以此工具解決的新問題。

原文標題:A Must-Read Introduction to Sequence Modeling (with use cases)

原文鏈接:

https://www.analyticsvidhya.com/blog/2018/04/sequence-modelling-an-introduction-with-practical-use-cases/

譯者簡介

數據變金礦:一文讀懂序列模型(附用例)

王雨桐,統計學在讀,數據科學碩士預備,跑步不停,彈琴不止。夢想把數據可視化當作藝術,目前日常是摸著下巴看機器學習。


分享到:


相關文章: