顯示廣告
隱藏 ✕
※ 本文為 MindOcean 轉寄自 ptt.cc 更新時間: 2017-08-03 16:34:34
看板 Gossiping
作者 daviden (daviden)
標題 [爆卦] 臉書機器人自創語言事件的實驗
時間 Thu Aug  3 14:11:29 2017


最近看到這個新聞覺得滿好笑的,

剛好手邊有一個寫文章機器人的project,

就拿來實驗給大家看看。



這些是訓練神經網絡時的紀錄點(checkpoint),

http://i.imgur.com/vu0gLXh.png
[圖]
 

我挑一個比較不成熟的(loss高的)來展示。

http://i.imgur.com/7HTnZeu.png
[圖]
 

基本上就是不段重複:"a core"這個序列。

這是完成第一個循環(epoch = 0),loss = 2.6727的情況

結果跟Facebook機器人的對話很像

就重複一些簡單的單字,毫無意義。



其實Recurrent Neural Network(RNN)做出這種結果是很常見的

在國外data scientist的部落格中,也有類似的例子。

https://goo.gl/WlUdcW
Text Generation With LSTM Recurrent Neural Networks in Python with Keras - Machine Learning Mastery
[圖]
Recurrent neural networks can also be used as generative models. This means that in addition to being used for predictive models (making predictions)  ...

 

這篇文章裡,以小架構的RNN,用整本愛麗絲夢遊仙境小說作訓練,

做出來的文字是這樣:

"sabdit,
and the white rabbit wese tilel an the caoe and the sabbit se teeteer,
and the white rabbit wese tilel an the cade in a lonk tfne the sabdi
ano aroing to tea the was sf teet whitg the was a little tane oo thete"

我只節錄其中一段。

可以看到有一整句話是完全重複的,

"and the white rabbit wese tilel an the"

整篇output看來,也有很多重複出現的序列。

(該文章的作者後來用更大的神經網絡、訓練更久,也達到很好的效果)



做神經網絡時,出現難以預測的結果是很常見的。

大多數時候,這並不是什麼"發明",只是模型對訓練集的掌握不好。

問題可能來自訓練資料、神經網絡的架構、optimizer,等等...很難講。



在我的project裡,當神經網絡訓練更完全(epoch = 17, loss = 1.1391),

可以產生這樣的文字標題:

"lpt: if you are srarting a shopt for the ooen that you
 don't have to contact the top of your phonee ."

"lpt: when seniing someone s hood to you don't want to
 het it to youu  fbori eorr tthienkty."

"lpt: if you are srarting a store in your car with a
 complate bard before a bustom rings on your phoone."

這和先前重複"a core a core"的模型是同一個,但現在已經可以講英文了。

這就只是訓練充足與不充足的差別。



---------------以下製作過程----------------


我用的是RNN框架中的LSTM(主流的一種模型)。

2層各500個神經元,外加一個output層(dense layer)。

算是很小的網絡,整個存下來只占35 Mb。

因為我的顯示卡內存只有4 Gb,跑不了太深。



訓練集是從美國論壇Raddit的LifeProTips版上爬來的文字

基本上就是美國的生活智慧王啦。

目的是讓機器人寫出生活智慧小撇步。



經過6小時訓練(用顯示卡運算),

模型大致可以掌握拼字、縮寫,知道開頭要用"lpt:",知道要斷句

可是如果仔細看它寫出的文字,其實就是胡說八道。



以RNN模型來說,其實機器人寫文章的方法很簡單,

文字轉成數學向量 ==> 矩陣乘法 ==> 數學向量轉成文字

就這樣。

這是一個sequence-in-sequence-out的模型。

它不像人類,會理解語言的意義、思考,再把想法用語言表達出來。

它只是經由"看"訓練集的資料,記住sequence特徵,

然後做出誤差最小的預測。

我覺得以現在的人工智能來說,用"學習"這個詞實在太高估了

充其量只是訓練。(更不用說機器人產生自我意識、造反)

大概就是這樣~~※註:有電視或媒體有報導者,請勿使用爆卦!

未滿20字 一行文 水桶6個月+退文

--
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 108.176.209.137
※ 文章代碼(AID): #1PWhwKTO (Gossiping)
※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1501740692.A.758.html
scum5566: 樓下的翻譯翻譯1F 08/03 14:12
jerry0701: 看無2F 08/03 14:13
Ilat: 你太高估記者的水準了3F 08/03 14:13
edwdada: 我是機器人 人人人人人人機器人人人人人人人4F 08/03 14:13
turtleone 
turtleone: 看不懂推就對了5F 08/03 14:13
lolic: 沒錯 差不多就是這樣 那機器人什麼時候會造反?6F 08/03 14:13
AppleBloom: 跟我想的差不多,被你先Po了7F 08/03 14:14
danorken: 文組看不懂要崩潰了                   對了 我也看不懂8F 08/03 14:14
Wilkie: 你餵它股市資料看出來會是什麼9F 08/03 14:15
Mika0418: 快推 不然別人以為我看不懂(#10F 08/03 14:15
davrd001: 我也是這麼想的11F 08/03 14:15
goldlipe: 專業推12F 08/03 14:15
zxc2331189: 跟我想PO的差不多 被你先搶了13F 08/03 14:17
n33008: Shih's $&(^.^)gのsx¥‧¥‧]%*&(^.^)Ⓜ揑€。€%の方顱14F 08/03 14:17
n33008: ㄨ
nttu94507: 趕快推不然人家以為我不懂16F 08/03 14:18
v7q4: 現在的AI根本不叫"人工智慧"17F 08/03 14:19
hh800315: 快推專業正解 不然會被當白癡文組18F 08/03 14:20
hami831904: 推,不明覺厲19F 08/03 14:21
AirbusA350: 這串看下來 原來平常在嘴砲的理組也看不懂?20F 08/03 14:21
planethell: 我文組我看不懂21F 08/03 14:21
crossdunk: 所以機器學習應該叫做機器訓練嗎22F 08/03 14:21
kenlin0105: 嗯嗯 跟我想的差不多23F 08/03 14:21
Mazda6680: 其實你真的滿無聊的看得懂那段新聞的很多..你也不用特24F 08/03 14:21
jhbgybj123: 只是兩個機器人在鬼打牆25F 08/03 14:21
Mazda6680: 別想要炫一段26F 08/03 14:22
crossdunk: 這樣叫做炫一段 ? 跟人解釋也叫做炫耀27F 08/03 14:22
crossdunk: 你要不要跟長得漂亮的人說他出門就是在炫耀他的長相
Mazda6680: 看不懂的你在說一堆他們也看不懂 有差嗎?29F 08/03 14:22
LUB5566: 哈哈沒錯,終於有一樣內行的出來說了,樓下寄心得概要給30F 08/03 14:22
LUB5566: 我
colyward: 但學習的核心就是為了減少錯誤發生32F 08/03 14:22
colyward: 若一學習核心指令是  尋找毀滅人類的方法並執行
colyward: 那也和電影劇本差不了太遠啦
impact999: 目前還是停留在機器階段 離智慧還很遙遠35F 08/03 14:24
Mazda6680: 當初根本臉書設定語言錯誤兩個機器互傳回根本沒意義的36F 08/03 14:25
Mazda6680: 數字或是數碼而已..就是設定程式語言錯誤 還溝通勒
f124: 那這模型有個屁用....再寫十輩子也沒意義阿38F 08/03 14:27
a187:39F 08/03 14:27
a963: 差不多就是這樣你說的這樣,原po如果想要交流可以站內信給40F 08/03 14:28
a963: 我
kinoyamato: 趕快推、免得被人發現看不懂42F 08/03 14:28
w9: 跟我想的有點出入,不過無傷大雅43F 08/03 14:28
EraKing: 機器人: 生活小知識,一個星期不大便對身體不好44F 08/03 14:29
aghgna: (′・ω・‵)45F 08/03 14:29
tony24334: 文組崩潰囉~我也是文組(崩潰46F 08/03 14:29
shadeel: 其實記者的智商跟LOSS高的模型差不多 只是詞彙比較多而已47F 08/03 14:29
AGODFATHER: 金管會還不是複製貼上48F 08/03 14:30
cerberi: 推49F 08/03 14:30
frogger: 原來是這樣50F 08/03 14:31
Anemoneheart: 看起來蠻有趣的51F 08/03 14:31
kimgordon: 我發明的自學語言AI即將成功 目前還在我老婆肚子裡52F 08/03 14:32
iPolo3: 所以誰給我翻譯翻譯53F 08/03 14:32
kiliman: 推54F 08/03 14:32
wasijohn: 你有點強55F 08/03 14:32
SonyXperiaZ3: btw 那篇新聞原出處是太陽報 就知這篇新聞大概...56F 08/03 14:34
ebod221: 推就對了,不然會被笑看不懂57F 08/03 14:35
wolver: 原來如此58F 08/03 14:36
dan310546: 什麼時候要餵他吃PTT59F 08/03 14:37
aska4879A: 恩恩  跟我想得差不多60F 08/03 14:37
storyo11413: 過程就是句子數據化 抓向量特徵 找相似特徵還原61F 08/03 14:37
dkl7814: 哎呀 跟我想表達的一樣62F 08/03 14:37
versetripper: 不錯阿 我覺得你第一段第一個字寫的很好 和我想法雷63F 08/03 14:39
peace1way: 這篇說得很好,又是篇都中文然後我看了還是不懂的64F 08/03 14:42
harrishu: 看無65F 08/03 14:43
ihateants: 想起了中文房思想實驗,機器程式是否能理解語言意含並66F 08/03 14:45
ihateants: 回應,或者只是靠完美的邏輯來做回應而沒有思考過程?
DarkerDuck: 記者文章也沒比RNN強多少,雖然大家都知道記者沒智慧68F 08/03 14:45
formatted: 所以只是兩個無意義的跳針69F 08/03 14:47
LastHuman: 專業推70F 08/03 14:47
formatted: 自我意願太扯了71F 08/03 14:48
LastHuman: 就跳針而已72F 08/03 14:48
LastHuman: 自我意識還太早齁
mmmbop: 恩 我也是這樣訓練我家的狗 我叫他咕狗74F 08/03 14:48
Standattoe: 推75F 08/03 14:49
dante45678: 推76F 08/03 14:53
StarRoad: 說完發現跟記者一樣:上網抄文章+錯字=不知所云77F 08/03 14:54
dkramses: 快推 不然等一下被笑文組看不懂(?78F 08/03 14:56
CS5566:79F 08/03 14:59
CIIIO: 對呀80F 08/03 15:00
chihippig: 快點推不然人家會以為我看不懂81F 08/03 15:02
cygnusx123: 嗯嗯,我也是這樣想的82F 08/03 15:03
leon1234858: 目前只能計算  根本不能創造83F 08/03 15:05
leon1234858: 那怎麼會是智慧
jeff12280: 你寫這麼艱深 記者怎麼抄85F 08/03 15:06
LeoYuri: 你的拼字怎麼錯這麼多?還是是AI打錯?86F 08/03 15:06
ccjj8: 恩 我也這麼覺得87F 08/03 15:06
duetobe: 訓練累積多了 就變成"學習"了 大量資料及大量的演算能力88F 08/03 15:11
duetobe: 才能生出"AI"
kk87822: 這篇記者要抄也看不懂了90F 08/03 15:12
Rodstrupe: 專業推91F 08/03 15:12
parkerlived: 推92F 08/03 15:15
Kenqr: 嗯 跟我想得差不多93F 08/03 15:17
Gokudo: 我懂喔!            懂怎麼推文94F 08/03 15:17
ingenii: 爆卦不同語言請先翻譯95F 08/03 15:19
CityRanger: 我看不懂96F 08/03 15:20
kawazima8869: 八卦是machine learning 實際上是machine training97F 08/03 15:23
NavyWind: 這個沒什麼好講的啦,有修過相關課程的都知道98F 08/03 15:31
hinajian: 其實這篇是AI自己出來護航的99F 08/03 15:32
GakkiMyWife: 跟我想的一樣 只是懶得po文100F 08/03 15:32
koreawargod: 所以現在真的大家都講內存了啊....XD101F 08/03 15:34
autokey: 嗯,大概是這樣102F 08/03 15:35
Mubing: 樓下文組103F 08/03 15:35
jasmine2015: 看不懂喇104F 08/03 15:40
chenyoung411: 好險我文組看不懂105F 08/03 15:43
kirry: 趕快推 不然別人以為我看不懂106F 08/03 15:44
missdo: 文組 我先睡了107F 08/03 15:45
siangkeith: 就是啊  我也才想這樣po的說108F 08/03 15:46
wszasdf: 快推 不然別人以為我看不懂109F 08/03 15:48
SimonAllen: 深度學習最近正夯110F 08/03 15:49
fransice7: 看無喇幹111F 08/03 15:50
fragmentwing: 天網不要再派工讀生來自謙裝弱了112F 08/03 15:51
bessgaga: 訓練完全與否是從learning curve看的嗎113F 08/03 15:53
ukyoGoGo: 推114F 08/03 15:55
Argos: AI其實應該分類才對 現在的AI發展 主要都是資料歸納及預測115F 08/03 16:00
vespar: sorry  看不懂116F 08/03 16:02
Ycosmos: 看不懂117F 08/03 16:07
johnny78615: 目前主流chatbot真的是這樣做,我記得FB目前用最潮的118F 08/03 16:12
johnny78615: gan訓練chatbot用英文聊天
imaxpayne: 單純lstm 真的訓練不出什麽鬼120F 08/03 16:17
cospergod: 專業推121F 08/03 16:17
shakesper: 欸 跟我昨晚睡前沈思的內容一模一樣耶122F 08/03 16:19
zxcasd328: 雖然有很多能討論的地方 但是差不多是這樣了123F 08/03 16:31

--
※ 看板: Gossiping 文章推薦值: 4 目前人氣: 0 累積人氣: 2029 
分享網址: 複製 已複製
( ̄︶ ̄)b da820201, tsukiyumi, yee535 說讚!
1樓 時間: 2017-08-03 15:10:31 (台灣)
  08-03 15:10 TW
去看精神科好嗎
2樓 時間: 2017-08-03 15:40:10 (台灣)
     (編輯過) TW
我覺得LSTM適合訓練權重,但不適合單做決策輸出,搭上其他架構像是HMM或者RL當決策會比較適合(?_?)
3樓 時間: 2017-08-03 16:13:51 (台灣)
  08-03 16:13 TW
人工智能
人工智慧
偽人工智慧
愛醬
真愛醬
假愛醬
傻傻分不清
4樓 時間: 2017-08-03 16:38:10 (台灣)
  08-03 16:38 TW
好吧 我承認我文組 看不懂
5樓 時間: 2017-08-03 17:02:54 (台灣)
  08-03 17:02 TW
一樓剛從他講的那邊逃出來
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇