雷鋒網4月7日消息, OpenAI在官網公佈了一項最新的研究成果, 介紹了一個可以高效學習情感表徵的無監督系統, 目前能夠預測亞馬遜評論中的下一個字元。
研究人員採用了線性模型, 在一個小型但是被廣泛採用的資料集(Standford Sentiment Treebank)上取得了非常高的情感分析準確度:OpenAI得到的準確度為91.8%, 而之前最好的是90.2%。 這一表現可以匹敵之前的監督系統, 而且少用了30~100倍的標記樣本。
此外OpenAI表示, 其模型的表徵還包含了一個獨立的“情感神經元(sentiment neuron)”, 這個“情感神經元”包含了幾乎所有的情感信號。
OpenAI稱, “我們的系統在使用極少訓練資料的情況下,
為了達到完全監督學習的效果, OpenAI的模型選取了兩個變數來代表標記的樣本(綠色和藍色的線條), 每一個變數訓練6920個樣本(灰色虛線)。 OpenAI的L1正則化模型(利用亞馬遜的用戶評論以無監督的方式進行預先訓練)只用了11個標記的樣本,
OpenAI稱, 他們非常驚訝, 因為模型學會了一個可以判斷的特徵, 除了預測亞馬遜使用者評論的下一個字元外, 實際上還能引出情感的概念。 OpenAI相信, 這種現象不是這一模型所特有的, 而是一些大型神經網路的一般性質(共性), 這些大型神經網路通常被訓練用來預測輸入中的下一步驟或者下一維度。
訓練方法
雷鋒網瞭解到, OpenAI首先利用亞馬遜上的8200萬條用戶評論, 訓練了一個有4096個單元的乘性LSTM(multiplicative LSTM, 簡稱mLSTM), 來預測一小段文本中的下一個字元。 團隊採用了4塊英偉達的Pascal GPU, 每小時能夠處理12500個字元,
這4096個單元(其實是浮點數組成的向量)可以看成是模型讀取的字串的特徵向量。 在訓練mLSTM之後, OpenAI將這些單元進行線性組合, 通過現有的監督資料學習組合的權重, 將原本的模型變成了情感分類器。
情感神經元
在用L1正則化訓練線性模型的同時, 令人驚訝的是, OpenAI注意到它使用的學習單元其實非常少。 進一步挖掘後, 研究人員意識到模型中實際上存在著一種可以精准預測情緒值的“情感神經元”。
儘管這一模型僅被訓練用來預測文本中的下一個字元, 但是模型中的情感神經元卻可以將評論歸為負面或者正面兩類。
和其他類似的模型一樣, OpenAI的模型可以用來生成文本;但不同的地方在於, OpenAI可以通過重寫神經元的值來控制合成文字的情感。
上圖是訓練模型生成的合成文本的示例。 研究人員先確定情感神經元的值, 然後從模型中隨機選擇樣本, 以確定評論中的情感。 如下圖所示, 研究人員還通過模型傳遞首碼“I couldn’t figure out(我搞不清楚)”, 然後只選擇高度相似的樣本。
示例
下圖表示情感神經元代表的每個字元的值,紅色的為負,綠色為正。其中“best(最好)”或者“horrendous(可怕的)”這樣有強烈指示性的詞語則會用更深的顏色重點標記。
值得注意的是,在完成句子和短語之後,系統會進行大量更新。例如,在“And about 99.8 percent of that got lost in the film”中,即使“in the film”本身沒有任何情緒內容,但是在“lost”之後模型會進行一次負面更新,而在句子結束後還會有一次大的更新。
無監督學習
有標記的資料是機器學習的燃料。收集資料很容易,但是想要大規模地標記資料則很困難。只有在機器翻譯、語音辨識或者自動駕駛等具有切實效果和回報的領域,大規模地標記資料才是切實可行的。
長久以來,機器學習領域的研究人員一直夢想著開發出能夠學習資料集的準確表徵的無監督學習演算法,希望用很少的標記資料就能夠解決問題。OpenAI的研究意味著,在創建具有優秀表徵學習能力的系統時,簡單地利用大量資料訓練大型無監督下一步預測模型(next-step-prediction model)很可能是一種不錯的方法。
下一步
OpenAI的研究成果代表通用無監督表徵學習又向前邁進了一步。研究人員在探索是否可以通過語言建模來學習高品質的表徵時意外發現了這一結果,並在經過仔細選擇的資料集上擴大了這個現有模型。然而,目前研究人員還不清楚這個潛在的現象的具體成因。
這些結果在長文檔的資料上的表現並不是很好。OpenAI猜測,他們的模型難以記住數百乃至數千個時間步長的資訊。他們認為,下一步可以嘗試採用層次模型(hierarchical model),因為層次模型可以自我調整相應的時間尺度。進一步擴展這些模型,還可能進一步提高表徵保真度( representation fidelity ),以及在情感分析和類似任務方面的表現。
當輸入文本和評論資料的差別越大時,該模型的表現就越差。值得驗證的是,擴展文本樣本的語料庫能否獲得適用於更廣泛領域的同等信息量的表徵?
OpenAI的研究結果表明,大型的下一步預測模型能夠學會出色的無監督表徵。利用大規模的視頻集訓練一個大型的神經網路來預測下一幀畫面,可能會得到對目標、場景、動作分類器的無監督表徵。
總的來說,理解模型、訓練方式、以及資料集的屬性是很重要的,因為它很可能會得到同樣出色的表徵。
via. OpenAI,雷鋒網編譯
示例
下圖表示情感神經元代表的每個字元的值,紅色的為負,綠色為正。其中“best(最好)”或者“horrendous(可怕的)”這樣有強烈指示性的詞語則會用更深的顏色重點標記。
值得注意的是,在完成句子和短語之後,系統會進行大量更新。例如,在“And about 99.8 percent of that got lost in the film”中,即使“in the film”本身沒有任何情緒內容,但是在“lost”之後模型會進行一次負面更新,而在句子結束後還會有一次大的更新。
無監督學習
有標記的資料是機器學習的燃料。收集資料很容易,但是想要大規模地標記資料則很困難。只有在機器翻譯、語音辨識或者自動駕駛等具有切實效果和回報的領域,大規模地標記資料才是切實可行的。
長久以來,機器學習領域的研究人員一直夢想著開發出能夠學習資料集的準確表徵的無監督學習演算法,希望用很少的標記資料就能夠解決問題。OpenAI的研究意味著,在創建具有優秀表徵學習能力的系統時,簡單地利用大量資料訓練大型無監督下一步預測模型(next-step-prediction model)很可能是一種不錯的方法。
下一步
OpenAI的研究成果代表通用無監督表徵學習又向前邁進了一步。研究人員在探索是否可以通過語言建模來學習高品質的表徵時意外發現了這一結果,並在經過仔細選擇的資料集上擴大了這個現有模型。然而,目前研究人員還不清楚這個潛在的現象的具體成因。
這些結果在長文檔的資料上的表現並不是很好。OpenAI猜測,他們的模型難以記住數百乃至數千個時間步長的資訊。他們認為,下一步可以嘗試採用層次模型(hierarchical model),因為層次模型可以自我調整相應的時間尺度。進一步擴展這些模型,還可能進一步提高表徵保真度( representation fidelity ),以及在情感分析和類似任務方面的表現。
當輸入文本和評論資料的差別越大時,該模型的表現就越差。值得驗證的是,擴展文本樣本的語料庫能否獲得適用於更廣泛領域的同等信息量的表徵?
OpenAI的研究結果表明,大型的下一步預測模型能夠學會出色的無監督表徵。利用大規模的視頻集訓練一個大型的神經網路來預測下一幀畫面,可能會得到對目標、場景、動作分類器的無監督表徵。
總的來說,理解模型、訓練方式、以及資料集的屬性是很重要的,因為它很可能會得到同樣出色的表徵。
via. OpenAI,雷鋒網編譯