中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

深度學習那些好玩且易于實現(xiàn)的案例

2018-07-20    來源:raincent

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

-1. 一個日文的博客——ディープラーニングで新しいポケモン作ろうとしたら妖怪が生まれた

鏈接:http://bohemia.hatenablog.com/entry/2016/08/13/132314

講如何通過利用DCGAN生成Pockmon Go的寵物形象的文章。因為全是日文,我也不是特別懂日文,所以在這里就不班門弄斧了。感興趣的自己看看吧? ?...

0. GitHub - Rochester-NRT/RocAlphaGo: An independent, student-led replication of DeepMind's 2016 Nature publication, "Mastering the game of Go with deep neural networks and tree search" (Nature 529, 484-489, 28 Jan 2016), details of which can be found on their website https://github.com/Rochester-NRT/RocAlphaGo.
鏈接:https://github.com/Rochester-NRT/RocAlphaGo

這個項目火遍大江南北啊,就是第三方根據(jù)AlphaGo的論文給出的實現(xiàn)。最近工作太忙沒空去看具體細節(jié),底層用的是keras,具體的細節(jié)大家可以看看paper。另外今天發(fā)現(xiàn)了一個不錯的slide: http://www.slideshare.net/ShaneSeungwhanMoon/how-alphago-works

當初和李世石大戰(zhàn)的時候有很多”專家“都出來講過這篇paper,包括在下……簡單來說,AlphaGo的架構(gòu)和傳統(tǒng)的圍棋AI相比并沒有傳統(tǒng)的創(chuàng)新,傳統(tǒng)的機器博弈的架構(gòu)包括三部分:

• 主體:AlphaBeta樹
• 走子策略:某一步走哪最好
• 局面靜態(tài)評估:當前誰更厲害

每當對方走出一步棋,我方就開始用走子策略判斷一批優(yōu)秀的候選著法,然后我們開始YY對方,針對我方的每一著,給對方選出一批優(yōu)秀的著法進行對抗,以深入分析我方走子的可行性。然而由于棋局的復雜性,我們無法演繹到比賽結(jié)束,于是到達一定深度后,我們對當前的局勢進行估計,然后根據(jù)這個分數(shù)反推回去,得到我們最好的招數(shù),也就是下棋人常說的”下棋要多看幾步“。

那么AlphaGo的厲害之處就在于,它把其中的第二、三項換成了CNN,CNN一來我們就得到了兩個好處:1)它有強大的非線性映射能力,算出來的招數(shù)很厲害;2)CNN的深度學習能力使得搞圍棋不用像過去搞圍棋的人一樣得花大量時間學圍棋了!這點也是當初DeepMind在介紹Atari時說過的,一招CNN,搞定無數(shù)領域的難題。曾幾何時,我們做博弈的寫評估函數(shù),都得對某種棋有很深的認識,基本上得做到業(yè)余中的佼佼者;現(xiàn)在有了CNN,你還是可以成為佼佼者,但是這方面的作用明顯沒有過去那么有用了。

實際上現(xiàn)在大環(huán)境是什么都可以拿深度學習的東西試試,所以用CNN搞圍棋不奇怪,但是能搞成這個事還是很牛的,而在這其中,訓練數(shù)據(jù)就很關鍵了。個人認為這其中最厲害的還是用增強學習訓練policy的部分,實際上這種完全信息的博弈天生就可以看作馬爾可夫決策過程(MDP),而增強學習又是解決MDP的一把好手。將AlphaBeta樹中的對手想象成Environment中一種看不見的力量,一個Agent的決策模型就自然形成了。至于后續(xù)的增強學習的細節(jié),可以看論文中的介紹。

1. GitHub - jisungk/deepjazz: Deep learning driven jazz generation using Keras & Theano!

鏈接:https://github.com/jisungk/deepjazz

這個是用LSTM寫jazz風格的旋律,也是蠻厲害的!跑起來很容易,庫用的是Theano,python人民的老朋友!相對比較簡單。

首先是music21這個庫,一個很強大的為音樂人士準備的庫(我以前怎么沒發(fā)現(xiàn)這個庫,真心很贊!)

2. 最近AlphaGo太火了,于是乎推薦一個增強學習玩Flappy Bird的代碼:

GitHub - yenchenlin1994/DeepLearningFlappyBird: Flappy Bird hack using Deep Reinforcement Learning (Deep Q-learning).
鏈接:https://github.com/yenchenlin1994/DeepLearningFlappyBird

親測有效,很有意思,相信它足夠好玩,也能激發(fā)大家的興趣

由于我之前用keras和caffe多一些,所以對tensorflow了解不多,這里貼個中文的文檔供大家參考源代碼:

TensorFlow官方文檔中文版_TensorFlow中文教程_TensorFlow開發(fā)中文手冊[PDF]下載
鏈接:https://wiki.jikexueyuan.com/project/tensorflow-zh/

flappy bird的程序主題上有兩個部分,一部分可以算作“預測”,就是根據(jù)模型指示具體的操作,一部分是“學習”,就是根據(jù)對局的信息調(diào)整模型。

整個項目的根基就是這個游戲本身,在增強學習中可以看作是“Environment”,也就是能接收Action并反饋Next State和Reward的。作者使用了別人寫好的現(xiàn)成的程序,不過還是在此基礎上做了一定的修改,使游戲能夠返回這兩個信息。對于Next State,則是下一個時刻的圖畫信息,對于Reward,主要就是能分了,穿過一對管子得一分,死掉得負分。

預測部分:作者采用了E&E的策略,除了以模型進行判定之外,還以一定概率隨機操作。

學習部分:當數(shù)據(jù)集收集到一定數(shù)量后開始學習,對于非完結(jié)的狀態(tài),要根據(jù)Bellman Equation進行Return的計算(Return和Reward有一定的差別)。然后將(state,action,return)扔給模型學習。

模型:CNN,具體的參數(shù)README講得很清楚。

總體來看這就是一個模仿Atari實現(xiàn)的項目,不過他一板一眼地把把Atari的經(jīng)驗借鑒了過來,也做到不錯的智能效果,所以值得一贊。

我仔細地看了關于這個項目的介紹,發(fā)現(xiàn)他的思想和Deep Mind的另一個增強學習的項目很相近,那就是Atari游戲。我找到了一個Github項目,沒有親測,后面有時間會做一下實驗:

GitHub - kuz/DeepMind-Atari-Deep-Q-Learner: The original code from the DeepMind article + my tweaks
鏈接:https://github.com/kuz/DeepMind-Atari-Deep-Q-Learner

兩個項目都是用CNN代替增強學習中的state-action-table,項目中的state就是當前的圖像(4幀),action就是用戶的操作(Flappy Bird就是點一下,昨天和同事聊同事還在說真正游戲里每點一下的輕重是有區(qū)別的,我想這個AI應該沒有考慮這一點),由于這個空間十分大,我們用CNN來表示它,而學習的關鍵,也就是把這個表(模型)學習出來。

先簡單寫一下,回頭詳細地謝謝。

3.深度學習的在github有一個合集:

GitHub - kjw0612/awesome-deep-vision: A curated list of deep learning resources for computer visio
鏈接:https://github.com/kjw0612/awesome-deep-vision

推薦一下,感興趣的話可以過一過

標簽: 代碼

版權(quán)申明:本站文章部分自網(wǎng)絡,如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:人工智能猜世界杯基本都錯了,EA 靠游戲模擬猜對了法國

下一篇:UPS高頻機與工頻機技術與性能之爭中的若干概念