丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能 正文
發(fā)私信給楊曉凡
發(fā)送

2

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

本文作者: 楊曉凡 2017-08-15 11:36
導(dǎo)語(yǔ):讀書分享(一):第一章前言


BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

雷鋒網(wǎng) AI 科技評(píng)論按:「Deep Learning」這本書是機(jī)器學(xué)習(xí)領(lǐng)域的重磅書籍,三位作者分別是機(jī)器學(xué)習(xí)界名人、GAN的提出者、谷歌大腦研究科學(xué)家 Ian Goodfellow,神經(jīng)網(wǎng)絡(luò)領(lǐng)域創(chuàng)始三位創(chuàng)始人之一的蒙特利爾大學(xué)教授 Yoshua Bengio(也是 Ian Goodfellow的老師)、同在蒙特利爾大學(xué)的神經(jīng)網(wǎng)絡(luò)與數(shù)據(jù)挖掘教授 Aaron Courville。只看作者陣容就知道這本書肯定能夠從深度學(xué)習(xí)的基礎(chǔ)知識(shí)和原理一直講到最新的方法,而且在技術(shù)的應(yīng)用方面也有許多具體介紹。這本書面向的對(duì)象也不僅是學(xué)習(xí)相關(guān)專業(yè)的高校學(xué)生,還能夠?yàn)檠芯咳藛T和業(yè)界的技術(shù)人員提供穩(wěn)妥的指導(dǎo)意見、提供解決問(wèn)題的新鮮思路。

面對(duì)著這樣一本內(nèi)容精彩的好書,不管你有沒有入手開始閱讀,雷鋒網(wǎng) AI 研習(xí)社都希望借此給大家提供一個(gè)共同討論、共同提高的機(jī)會(huì)。所以我們請(qǐng)來(lái)了曾在百度和阿里工作過(guò)的資深算法工程師王奇文與大家一起分享他的讀書感受。

分享人:王奇文,資深算法工程師,曾在百度和阿里工作,先后做過(guò)推薦系統(tǒng)、分布式、數(shù)據(jù)挖掘、用戶建模、聊天機(jī)器人?!八惴飞希频Z前行”。

「Deep learning」讀書分享(一) —— 第一章 前言 Introduction

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

大家好,這次給大家講的是「Deep learning」這本比較有名的書。內(nèi)容比較多,一共20章、600多頁(yè)。我們一步一步來(lái),先講第一章前言。這一部分主要是深度學(xué)習(xí)的一些基本介紹、一些發(fā)展歷史??梢钥匆幌逻@個(gè)封面,一幅漂亮的風(fēng)景畫,紐約中央公園遍地盛開的杜鵑花,仔細(xì)看有點(diǎn)不太正常,對(duì)了,這就計(jì)算機(jī)生成的,確切的說(shuō),是Google deepmind團(tuán)隊(duì)的杰作——夢(mèng)幻公園。下面有個(gè)鏈接就是麻省理工的書籍的開源地址。第二個(gè)地址就是北大的張志華團(tuán)隊(duì)貢獻(xiàn)的中文版,鏈接大家也可以自己去github上找。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

關(guān)于我,我是11年碩士畢業(yè),在BAT里面工作了有六年多,是一個(gè)普通的工程師,也沒有多高的水平。我之前一直做數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)、大數(shù)據(jù)這一塊,去年接觸到深度學(xué)習(xí),比較感興趣,轉(zhuǎn)崗到阿里云,做過(guò)半年的聊天機(jī)器人。所以也是一個(gè)新手、一個(gè)菜鳥,然后實(shí)戰(zhàn)經(jīng)驗(yàn)也不是很多,能力也一般。這次分享不會(huì)保證會(huì)講的很好,但是我會(huì)盡力。

為什么要做這個(gè)分享?第一個(gè)是希望學(xué)習(xí),第二個(gè)的話是希望借這個(gè)分享給我自己施加壓力,因?yàn)槲冶旧硎窃趯W(xué)習(xí)上也是有些惰性的(這本書打印版買了大半年,啃不動(dòng))。第三,這本書其實(shí)量挺大的,有600多頁(yè),單憑我一個(gè)人的力量可能還不夠,所以希望有更多的人加入進(jìn)來(lái),一起分享。

另外再著重強(qiáng)調(diào)一點(diǎn),現(xiàn)在是互聯(lián)網(wǎng)時(shí)代,信息泛濫,我們見到的各種資訊浩如煙海,看起來(lái)很多,但很容易碎片化,東一榔頭西一棒子,不成體系,導(dǎo)致消化不良。所以,真想的學(xué)好一門技術(shù),最好還是要啃磚頭,這種方式是最笨,但是最扎實(shí)的。有個(gè)簡(jiǎn)單的方法,可以驗(yàn)證一門技術(shù)的掌握程度,那就是看多少書。啃的書越多,基礎(chǔ)就越扎實(shí),視野就越廣。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

先給大家介紹一張珍藏已久的圖,我把這張圖放在了自己的Github主頁(yè)上,時(shí)刻提醒自己,注意學(xué)習(xí)方法。這個(gè)圖說(shuō)的是學(xué)習(xí)一門新技術(shù),從剛開始接觸了解,到大概一周后,不同的傳遞方式下,知識(shí)的留存率分別是多少。

先看第一種:聽講,也就是大家現(xiàn)在的狀態(tài),你們聽,我講。這個(gè)留存率大概只有5%,就是說(shuō)你今天聽完以后,到下周我講了什么你可能只記住5%,可能只是幾個(gè)概念“深度學(xué)習(xí)”,或者是我放了幾張圖片、放了一個(gè)gif比較好玩,或者說(shuō)了一句比較有意思的話,你可能只記住這些,這個(gè)留存率才5%;如果你們聽完后,再接著看書、看其他的視頻資料、看別人演示,那么這個(gè)留存率充其量只到30%;再到下面主動(dòng)學(xué)習(xí)這一部分呢,如果你學(xué)完之后跟別人討論,就是50%;然后再動(dòng)手去寫代碼的話,那就75%。最后也就是我現(xiàn)在處的位置90%,這一步,老實(shí)說(shuō),挺難的(從讀書,查資料,消化理解,到做ppt,平均每個(gè)章節(jié)花費(fèi)我4-8小時(shí),甚至更多時(shí)間)。就如果大家真的想學(xué)深度學(xué)習(xí),建議自己嘗試著給別人講,當(dāng)然最好能夠加入進(jìn)來(lái),一起分享(贈(zèng)人玫瑰,手留余香)。(笑)

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

(注:另一個(gè)維度,艾賓浩斯遺忘曲線顯示接觸信息后,20min、1h會(huì)急劇下降到58%,一周后25%,感覺過(guò)高,細(xì)節(jié)大家可以去查查)

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這個(gè)圖右邊是本書的結(jié)構(gòu)圖。這本書跟其他書還不太一樣,剛開始就給出一張圖,總體的描述一下每個(gè)章節(jié)是什么內(nèi)容,章節(jié)和章節(jié)之間的關(guān)系,這個(gè)非常好,有利于我們形成全局觀。

圖里面主要分成三部分,第一部分是數(shù)學(xué)基礎(chǔ),涉及一些數(shù)學(xué)基礎(chǔ)和概念,還有機(jī)器學(xué)習(xí)基礎(chǔ)。數(shù)學(xué)涉及線性代數(shù)、概率論、信息論、數(shù)值分析,還有少量的最優(yōu)化。

第二部分是深度學(xué)習(xí)基本算法。這個(gè)算法主要是幾種典型的神經(jīng)網(wǎng)絡(luò),從DFN,也就是深度前饋網(wǎng)絡(luò),開始,接下來(lái)分別演化到了怎么用正則、怎么優(yōu)化。還有下面一部分的CNN,它是前饋網(wǎng)絡(luò)的一種擴(kuò)展,其實(shí),RNN也是前饋網(wǎng)絡(luò)衍生出來(lái)的,當(dāng)然CNN是絕對(duì)正宗的前饋網(wǎng)絡(luò)。接下來(lái)是實(shí)踐的方法論,就是作者平時(shí)總結(jié)出來(lái)的一些實(shí)踐經(jīng)驗(yàn)。

三部分就是更加深層次的內(nèi)容,涉及線性因子模型,編碼器。這一部分非常重要,關(guān)系到Hinton的RBF,還有多個(gè)RBF堆疊形成的鼎鼎有名的DBN。接下來(lái)有表示學(xué)習(xí)、蒙特卡洛方法、結(jié)構(gòu)概率模型、深度生成模型,也就是最近老出現(xiàn)的,那個(gè)叫GAN的,生成對(duì)抗網(wǎng)絡(luò),很厲害的樣子。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

右上角是這個(gè)章節(jié)的目錄。實(shí)際上書上的內(nèi)容不多,我會(huì)加入自己的一些解釋,把書的結(jié)構(gòu)做一下調(diào)整,相當(dāng)于是重構(gòu),這樣大家理解起來(lái)更方便,這也算是一個(gè)本地化的過(guò)程。

新結(jié)構(gòu)是這樣的,第一,介紹下什么是深度學(xué)習(xí);第二,跟機(jī)器學(xué)習(xí)什么關(guān)系;第三,神經(jīng)網(wǎng)絡(luò)的歷史;第四,深度學(xué)習(xí)為什么現(xiàn)在這么火;第五,深度學(xué)習(xí)能做什么。總體思路就是,只提一些感性的認(rèn)識(shí),而不會(huì)去講具體的細(xì)節(jié)。如果大家想進(jìn)一步了解,請(qǐng)?zhí)?shí)看書,學(xué)知識(shí)不要偷懶,不要偷懶,不要偷懶(今天偷的懶,明天會(huì)加倍償還,這個(gè)時(shí)代在加劇懲罰不學(xué)習(xí)的人)。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

什么是深度學(xué)習(xí)?書里面提到一句話“AI系統(tǒng)必須具備從原始數(shù)據(jù)提取模式的能力”,這個(gè)能力指的是機(jī)器學(xué)習(xí)。算法的性能在很大程度上是依賴于數(shù)據(jù)表示的,也就是“表示學(xué)習(xí)”,這是ML里的一大方向。

傳統(tǒng)的機(jī)器學(xué)習(xí)是怎么做的呢?主要是依賴于人工提取的特征,比如,常用的方式有SIFT,還有HoG、Harr小波等等,都是人工經(jīng)驗(yàn)總結(jié)出來(lái)的。這幾個(gè)特征挺強(qiáng)大,霸占了圖像處理幾十年,但問(wèn)題是,擴(kuò)展起來(lái)很不方便。深度學(xué)習(xí)跟傳統(tǒng)機(jī)器學(xué)習(xí)相比,最明顯的區(qū)別就是,把這些人工提取的過(guò)程都自動(dòng)化。

回過(guò)頭來(lái)想想,什么是深度學(xué)習(xí)?這是我的理解,黃色字體的標(biāo)記的部分,來(lái)源于傳統(tǒng)的神經(jīng)網(wǎng)絡(luò),也就是聯(lián)結(jié)主義(機(jī)器學(xué)習(xí),它有很多方法,其中有聯(lián)結(jié)主義),傳統(tǒng)神經(jīng)網(wǎng)絡(luò)就是屬于聯(lián)結(jié)主義,深度學(xué)習(xí)是傳統(tǒng)神經(jīng)網(wǎng)絡(luò)方法的擴(kuò)展,它是一種延伸,不同的是,用了深度結(jié)構(gòu),多個(gè)簡(jiǎn)單的概念逐層抽象,構(gòu)建復(fù)雜的概念,同時(shí)自動(dòng)發(fā)現(xiàn)、提取分布式特征,注意,有個(gè)分布式。最后學(xué)到一個(gè)好的模型。深度學(xué)習(xí)這個(gè)概念是Geoffery Hinton 2006年首次提出的。

深度學(xué)習(xí)的兩個(gè)重要特點(diǎn),第一個(gè)是特征自動(dòng)提取,傳統(tǒng)信息學(xué)習(xí)里面那一套非常復(fù)雜的特征工程都不用了;第二,逐層抽象,主要通過(guò)深度結(jié)構(gòu)來(lái)實(shí)現(xiàn)。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這個(gè)圖說(shuō)的是什么是表示學(xué)習(xí),不同的表示學(xué)習(xí)會(huì)有什么樣的表現(xiàn)。

圖中就是兩個(gè)分類,這個(gè)圓形的和倒三角的,分別對(duì)應(yīng)兩種類別。如果采用簡(jiǎn)單的線性模型,顯然是分不開的。但是只要經(jīng)過(guò)某種變換后,比如從笛卡爾坐標(biāo)系變到極坐標(biāo)系,畫一條垂直的直線就輕輕松松的分開了。所以說(shuō),數(shù)據(jù)集的表示方法不同,問(wèn)題的難易程度也不同。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這張圖說(shuō)的是,深度學(xué)習(xí)是怎么通過(guò)深度結(jié)構(gòu)解決問(wèn)題的。底層的是一些像素,這里是三個(gè)像素,只取了三種顏色。當(dāng)然這張圖有點(diǎn)誤導(dǎo),看起來(lái)好像就只用這三種顏色,就能完成圖像分類;實(shí)際上不是的。底層對(duì)應(yīng)的是整張圖片,一層一層,由下往上,這是一個(gè)層級(jí)抽象的過(guò)程;第二層是根據(jù)底層像素連接起來(lái)組成一些線段,或者是復(fù)雜一點(diǎn)的邊緣,再到上面一層,形成局部的輪廓,就是一個(gè)角或者一些輪廓線。再往上層抽象,是變成了物體的一部分、或者整體,最后,就能看到近似是一個(gè)人了。

這個(gè)過(guò)程說(shuō)的是,深度學(xué)習(xí)是通過(guò)一些深度結(jié)構(gòu)進(jìn)行逐層抽象,變相的把問(wèn)題一步一步地簡(jiǎn)化。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

既然是深度學(xué)習(xí),那么首先就要問(wèn)一句,到底什么是深度,怎么定義這個(gè)深度?

先看右邊這張圖,這是一個(gè)計(jì)算圖,也就是一個(gè)DAG圖,描述一個(gè)計(jì)算任務(wù)的前后經(jīng)過(guò)。實(shí)際上這個(gè)任務(wù)是傳統(tǒng)機(jī)器學(xué)習(xí)里面的一種方法,叫邏輯回歸,比如說(shuō),輸入了一個(gè)樣本,有兩個(gè)特征X1、X2,分別乘以里面的權(quán)重W1、W2,乘起來(lái),再累加求和,然后套一個(gè)sigmoid激勵(lì)函數(shù),本質(zhì)上就是一個(gè)變換。這個(gè)簡(jiǎn)單的計(jì)算過(guò)程,可以用左邊的圖描述出來(lái),這只是一種描述方法;右邊也是另一種描述方法。區(qū)別是,右邊是邏輯概念意義上的概念,而左邊是計(jì)算步驟上的描述。

左邊的描述方式,網(wǎng)絡(luò)的深度是3,注意,第一層不算。右邊這個(gè)描述方式,只有1層。書里面說(shuō)了,這兩種概念描述都是對(duì)的,就看你喜歡哪一種。通常情況下,我們是以右邊這種為基準(zhǔn)。按照邏輯概念劃分時(shí),又可以繼續(xù)細(xì)分,標(biāo)準(zhǔn)就是要不要包含輸入層。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

看這張圖,這個(gè)是input,就是傳統(tǒng)網(wǎng)絡(luò),一提到神經(jīng)網(wǎng)絡(luò),基本都會(huì)提到這樣的結(jié)構(gòu),一個(gè)輸入,再加上隱含層,再加上一個(gè)輸出層。隱含層可以有多層。這個(gè)輸入,有的地方不算層級(jí),有的算,通常情況下是輸入是不算的,這個(gè)就算是一個(gè)兩層的網(wǎng)絡(luò)

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這塊就說(shuō)一下深度學(xué)習(xí)跟機(jī)器學(xué)習(xí)之間有什么關(guān)系。深度學(xué)習(xí)源于機(jī)器學(xué)習(xí),但是高于機(jī)器學(xué)習(xí)。圖里第二個(gè)是機(jī)器學(xué)習(xí),DL是AI的一大分支,AI 還有其他的方法,這個(gè)只是其中的一個(gè)分支而已。

跟傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相比,深度學(xué)習(xí)的深度體現(xiàn)在復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)上。那么怎樣才叫復(fù)雜呢,一般在4到5層以上,因?yàn)閭鹘y(tǒng)的神經(jīng)網(wǎng)絡(luò)是在2到3層,比如BP網(wǎng)絡(luò),兩到三層,超過(guò)的話就不好訓(xùn)練,也訓(xùn)練不出來(lái),所以基本上只到4到5層左右,不會(huì)有太多。

這個(gè)是一張韋恩圖,描述的各個(gè)概念之間的一些邏輯關(guān)系。這個(gè)就看的相對(duì)直觀一些,最下面的紅框里是機(jī)器學(xué)習(xí),然后里面有一個(gè)流派叫表示學(xué)習(xí),表示學(xué)習(xí)里面又有一個(gè)深度學(xué)習(xí),就這么個(gè)層層嵌套的關(guān)系。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

然后這張圖描述的是不同的學(xué)習(xí)方法,區(qū)別體現(xiàn)在組成結(jié)構(gòu)上。最左邊是一個(gè)規(guī)則系統(tǒng),希望通過(guò)一些邏輯推理去模擬學(xué)習(xí)的過(guò)程,這是最早的一版,人為設(shè)計(jì)的一個(gè)程序,輸入數(shù)據(jù),根據(jù)一定的規(guī)則,得到一個(gè)輸出。它比較簡(jiǎn)單,中間實(shí)際上就兩個(gè)過(guò)程。

接著到下一步傳統(tǒng)的機(jī)器學(xué)習(xí),有什么區(qū)別呢,在上面它有一個(gè)特征映射。

然后再到表示學(xué)習(xí)。表示學(xué)習(xí)的方法里面分成兩部分,左邊一個(gè),還有右邊一個(gè)。左邊一個(gè)跟之前相比的話,在特征工程上會(huì)花了不少精力,特征工程非常復(fù)雜,依賴經(jīng)驗(yàn),人力投入大。深度學(xué)習(xí)是表示學(xué)習(xí)中的一種,在它的基礎(chǔ)上做了一些優(yōu)化,也算是一個(gè)變革,區(qū)別是在于多了這一部分:自動(dòng)提取特征。

這是幾種歷史上的不同的學(xué)習(xí)模型在基本的流程上面的差別。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這一部分講下神經(jīng)網(wǎng)絡(luò)的發(fā)展歷史。一言以蔽之,神經(jīng)網(wǎng)絡(luò)命途多舛,先后經(jīng)歷了三次浪潮,也叫三起兩落(鄧爺爺三起三落)。這個(gè)第三落現(xiàn)在還不清楚,有人可能會(huì)問(wèn),深度學(xué)習(xí)這么火,怎么可能衰落?這個(gè)真不一定,前兩次浪潮之巔上,大家也是這么想的。第一次是在40年到60年左右,起源于控制論,主要是基于那些規(guī)則的方法來(lái)做。控制論時(shí)代,誕生了第一個(gè)人工神經(jīng)元。神經(jīng)元看著挺像現(xiàn)在的樣子,但就一個(gè)神經(jīng)元,沒有什么層級(jí)結(jié)構(gòu),就是多個(gè)輸入得到一個(gè)輸出,要求和、再sigmoid,產(chǎn)生一個(gè)輸出,就是個(gè)神經(jīng)元而已。注意,當(dāng)時(shí),神經(jīng)元里面的權(quán)重是人工設(shè)置的。后來(lái)Hebb學(xué)習(xí)法則指出權(quán)重是可以學(xué)習(xí)出來(lái)的。于是感知器降臨,跟之前的神經(jīng)元相比,除了有多層結(jié)構(gòu),還有權(quán)重從人工設(shè)置變成了自動(dòng)化。感知器的網(wǎng)絡(luò)結(jié)構(gòu)一般2到3層,也就是傳統(tǒng)的前饋網(wǎng)絡(luò)。不過(guò),感知器誕生沒多久,麻省理工的AI 實(shí)驗(yàn)室創(chuàng)始人Marvin Minsky就發(fā)現(xiàn)了這種結(jié)構(gòu)的要害,專門寫了一本書叫「Perceptron」,直指感知器的兩個(gè)核心問(wèn)題,第一個(gè)就是連簡(jiǎn)單的非線性問(wèn)題都解決不了,第二,非線性問(wèn)題理論上可以通過(guò)多層網(wǎng)絡(luò)解決,但是難以訓(xùn)練(在當(dāng)時(shí)基本不可能)。這個(gè)非線性問(wèn)題就是就是數(shù)字邏輯里的異或門。他在書里提到,異或門是神經(jīng)網(wǎng)絡(luò)的命門。果然,由于這兩個(gè)問(wèn)題直指感知器要害,再加上Marvin Minsky強(qiáng)大的影響力,許多研究者紛紛棄城而逃,放棄神經(jīng)網(wǎng)絡(luò)這個(gè)方向,直接導(dǎo)致了第一次寒冬。這個(gè)寒冬持續(xù)時(shí)間很長(zhǎng),長(zhǎng)達(dá)二三十年。

第二次是在86年左右,聯(lián)結(jié)主義時(shí)代。1974年,反向傳播算法第一次提出,但由于是寒冬,并沒有受人重視,直到1986年,Hinton重新發(fā)明了BP算法,效果還不錯(cuò),于是迎來(lái)了第二次興起,大家又開始研究神經(jīng)網(wǎng)絡(luò)。緊接著,又出來(lái)一個(gè)新的模型,也就是Vpnik的支持向量機(jī)(PGM也誕生了。這名字看起來(lái)很奇怪,為什么帶個(gè)“機(jī)”字?因?yàn)榻?jīng)常帶“機(jī)”的神經(jīng)網(wǎng)絡(luò)太火,加這個(gè)字是為了更好的發(fā)表)。跟近似黑盒的BP相比,SVM理論證明非常漂亮,更要命的是,支持向量機(jī)是全局最優(yōu)解,而神經(jīng)網(wǎng)絡(luò)它是局部最優(yōu),于是,BP被SVM打趴了(也算是SVM的復(fù)仇吧),神經(jīng)網(wǎng)絡(luò)進(jìn)入第二次寒冬了。

第三次是2006年,Hinton 坐了十多年冷板凳,潛心研究神經(jīng)網(wǎng)絡(luò),終于提出了自編碼和RBM,網(wǎng)絡(luò)初始權(quán)重不再隨機(jī),而是有了更高的起點(diǎn),再結(jié)合pre-training和fine-tune,解決了多層神經(jīng)網(wǎng)絡(luò)的訓(xùn)練問(wèn)題,同時(shí)提出了深度學(xué)習(xí)這個(gè)概念,標(biāo)記著深度學(xué)習(xí)的正式誕生(Hinton是當(dāng)之無(wú)愧的祖師爺)。這股熱潮一直持續(xù)至到現(xiàn)在,大火到現(xiàn)在已經(jīng)燒了十幾年,越來(lái)越旺,甚至要滅掉機(jī)器學(xué)習(xí)了。什么時(shí)候會(huì)熄滅?這個(gè)真說(shuō)不清楚。。。。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這部分歷史書里面也有簡(jiǎn)單介紹,看這張圖,大概是分成三個(gè)階段。我找了一些別的資料,讓大家看得更加直觀一些。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

底圖的是神經(jīng)網(wǎng)絡(luò)的一個(gè)電腦模擬圖,不同網(wǎng)絡(luò)連接起來(lái),看起來(lái)就是很復(fù)雜很復(fù)雜。但是,再?gòu)?fù)雜也是有簡(jiǎn)單的神經(jīng)元組成。這是一個(gè)神經(jīng)元,生物上一些術(shù)語(yǔ),這些概念大家也都清楚。核心部分就在于神經(jīng)元在突觸之間傳遞信息,從一個(gè)神經(jīng)元到另外一個(gè)神經(jīng)元。兩個(gè)神經(jīng)元之間有電位差,超過(guò)一定閾值時(shí),就釋放化學(xué)信號(hào),神經(jīng)遞質(zhì)。信息傳遞的過(guò)程,從一個(gè)神經(jīng)元到另外一個(gè)神經(jīng)元。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

能不能用數(shù)學(xué)模型去模擬這個(gè)過(guò)程?這個(gè)是進(jìn)一步的簡(jiǎn)化,就是三個(gè)神經(jīng)元刺激傳達(dá)到一個(gè)神經(jīng)元,累加,電位差發(fā)生變化之后,然后出來(lái)兩種結(jié)果,一種是興奮,一種是抑制,它是兩種狀態(tài)。再往下看是信息的接收與傳遞過(guò)程,大家可以看一下。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

接下來(lái)就到了數(shù)學(xué)模型,模擬的就是神經(jīng)元的結(jié)構(gòu)。橢圓形的這一部分就是一個(gè)神經(jīng)元,然后它跟上面有N個(gè)連接,每個(gè)連接的強(qiáng)度不同,對(duì)應(yīng)于神經(jīng)元的粗細(xì);也就是這里面的W1j到Wij的權(quán)重,然后再做一個(gè)累加求和,再加激勵(lì)函數(shù)處理,之后卡一個(gè)閾值,然后決定是不是要輸出。

這是數(shù)學(xué)模型上最根本的模擬,然后變過(guò)來(lái)就是這樣一個(gè)公式。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

現(xiàn)在看一下他一些歷史。這張圖比書里面那張圖更加詳細(xì)。

這三次熱潮,第一次是在58年,感知器誕生,這是第一次興起;第二次BP網(wǎng)絡(luò)誕生;第三次就是CNN和DBN的誕生,分別是Yann LeCun和Hinton兩個(gè)人提出來(lái),就導(dǎo)致了第三次興起。它在網(wǎng)絡(luò)結(jié)構(gòu)上的差別,第一個(gè)是單個(gè)神經(jīng)元、到單層的神經(jīng)網(wǎng)絡(luò),中間還有一個(gè)BP,BP過(guò)程加上了2到3層,會(huì)比這個(gè)更加復(fù)雜一些,最后到深度學(xué)習(xí),他的層數(shù)是很多的,遠(yuǎn)不止前面的2到3層。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

從這張圖上面我們可以對(duì)應(yīng)到具體每個(gè)時(shí)期是哪個(gè)人。第一部分是基于一些邏輯推理的方法,最開始的一個(gè)神經(jīng)元誕生是他們兩個(gè)人提出來(lái)的,MP模型(注意這不是multilayer perceptron,而是兩個(gè)人名的簡(jiǎn)稱,叫M-P更準(zhǔn)確),可以解決與或非問(wèn)題,控制論流行下的電子大腦時(shí)代。再到57年左右是感知器誕生,MLP,它跟之前的區(qū)別是有多個(gè)神經(jīng)元,W1和W2的權(quán)重是可以自動(dòng)訓(xùn)練的(基于Hebb學(xué)習(xí)法則)。這里有個(gè)問(wèn)題,叫異或,這就異或門,也就是異或運(yùn)算,邏輯運(yùn)算的一種,類似的有與或非,而異或是難以用線性模型解決的。這個(gè)異或門就是神經(jīng)網(wǎng)絡(luò)的命門。圖上面靠左的人就是Marvin Minsky,他寫的書就直接導(dǎo)致了第一次寒冬。

然后是多層的感知機(jī),也就是用了最開始的那個(gè)BP神經(jīng)網(wǎng)絡(luò)。這是在74年左右,就是BP神經(jīng)網(wǎng)絡(luò)誕生。那個(gè)時(shí)候美國(guó)和蘇聯(lián)撤走了神經(jīng)網(wǎng)絡(luò)相關(guān)研究經(jīng)費(fèi),好多雜志甚至都不接收神經(jīng)網(wǎng)絡(luò)的論文,所以BP網(wǎng)絡(luò)誕生的時(shí)候是沒有什么影響力。

接下來(lái)是Hinton,他把BP重新設(shè)計(jì)了下。然后,接下來(lái)是支持向量機(jī)誕生,剛才提到一個(gè)它是全局最優(yōu)解,解決問(wèn)題比BP看起來(lái)更加漂亮,所以到這個(gè)時(shí)候就第二次寒冬來(lái)了。就圖上這個(gè)過(guò)程,跟剛才總體的經(jīng)過(guò)是一樣的。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這是幾個(gè)階段,第一個(gè)是單層網(wǎng)絡(luò),第二個(gè)兩層,第三個(gè)多層。這三層網(wǎng)絡(luò)在激活函數(shù)、異或問(wèn)題和復(fù)雜問(wèn)題上有所不同。像單層網(wǎng)絡(luò)因?yàn)橹挥袃煞N狀態(tài),一種激活或者抑制,所以是一個(gè)符號(hào)函數(shù),函數(shù)值是1或者-1,異或函數(shù)解決不了,復(fù)雜問(wèn)題也解決不了。

到了兩層網(wǎng)絡(luò)的時(shí)候,它的結(jié)構(gòu)比之前復(fù)雜了,激活函數(shù)變了,不再是符號(hào)函數(shù),中間是sigmoid。這個(gè)時(shí)候異或問(wèn)題可以解決,但是復(fù)雜問(wèn)題解決不了。到了多層網(wǎng)絡(luò),也就是現(xiàn)在的深度學(xué)習(xí),激活函數(shù)主要是ReLU,比之前的sigmoid要簡(jiǎn)單,異或問(wèn)題可以解決,復(fù)雜問(wèn)題也可以解決。

所以現(xiàn)在深度學(xué)習(xí)模型中的激活函數(shù)主要是ReLU,而不是之前sigmoid。其實(shí)很早之前,大概是八九十年代,ReLU就已經(jīng)出現(xiàn)了,只是當(dāng)時(shí)人們選神經(jīng)網(wǎng)絡(luò)激勵(lì)函數(shù)時(shí),有一種偏執(zhí)的迷信,sigmoid這樣的激勵(lì)函數(shù),處處可導(dǎo)、連續(xù)、數(shù)學(xué)模型也漂亮,而ReLU很顯然在零這個(gè)點(diǎn)是一個(gè)突變,是有問(wèn)題的,不可導(dǎo),所以看起來(lái)不漂亮。盡管它出來(lái)比較早,但是不怎么用它,直到后來(lái),然后在深度學(xué)習(xí)里面經(jīng)過(guò)多次的訓(xùn)練之后發(fā)現(xiàn)它的效果比sigmoid要好得多,因?yàn)閟igmoid存在一個(gè)大問(wèn)題,飽和,往正無(wú)窮或者負(fù)無(wú)窮這兩個(gè)方向看,函數(shù)值趨近于1或者-1,沒什么反應(yīng)了,就只對(duì)就在0附近的值敏感,對(duì)非常大的或者非常小的點(diǎn),淡定的很,不予理睬。這就是飽和問(wèn)題。實(shí)際上,代價(jià)函數(shù)的梯度必須足夠大,而且具有足夠的預(yù)測(cè)性,指引學(xué)習(xí)方向,而飽和函數(shù)破壞了這一目標(biāo)。sigmoid在小數(shù)據(jù)上表現(xiàn)較好,但是大數(shù)據(jù)集不佳,ReLU則由于提升系統(tǒng)識(shí)別性能和仿生的本質(zhì)(神經(jīng)元信號(hào)原理),在大數(shù)據(jù)集情形大顯神威,重要性甚至超過(guò)隱含層權(quán)重。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

剛才是網(wǎng)絡(luò)結(jié)構(gòu)上變化,這個(gè)是在晶體管,就是在計(jì)算能力,還有數(shù)據(jù)、算法這三個(gè)因素,就直接導(dǎo)致深度學(xué)習(xí)的興起。

第一個(gè)因素計(jì)算能力。計(jì)算能力主要是硬件層的,單層神經(jīng)網(wǎng)絡(luò)是在晶體管時(shí)代的,數(shù)據(jù)量也比較少,學(xué)習(xí)算法就是基本的一些簡(jiǎn)單的推理;到了兩層神經(jīng)網(wǎng)絡(luò),主要是用CPU來(lái)算,它的數(shù)據(jù)量大概是一千到一萬(wàn),數(shù)據(jù)量是急劇增長(zhǎng)的,算法主要用的BP。到了多層網(wǎng)絡(luò)時(shí)候是主要通過(guò)集群或者GPU,甚至到現(xiàn)在還有更高級(jí)的TPU,數(shù)據(jù)量也是急劇的膨脹。它的訓(xùn)練方法跟BP相比有不同,這里面用的Pre-training,還有drop-out,主要防止過(guò)擬合的。

這三種不同階段,它的網(wǎng)絡(luò)結(jié)構(gòu)、它的計(jì)算能力、數(shù)據(jù)量算法都是不同的。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這個(gè)說(shuō)一下現(xiàn)在深度學(xué)習(xí)里面比較厲害的大神,Hinton絕對(duì)是這個(gè)領(lǐng)域的祖師爺;Yann LeCun主要在CNN上面貢獻(xiàn)非常多;Bengio主要是在RNN這一塊。這里面還提到一個(gè)人是Jordan,最近好像加入阿里了吧,右邊這個(gè)女的是專門研究概率圖的(跟支持向量機(jī)一起興起)。還有吳恩達(dá),主要這四個(gè)人(不一定準(zhǔn)確,只是四王天王叫起來(lái)比較順口,O(∩_∩)O哈哈~)。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

隨著深度學(xué)習(xí)的大紅大紫,工業(yè)界一直在想辦法爭(zhēng)奪人才,把報(bào)得上名字的大神都找了個(gè)遍,圖上這些大神一個(gè)一個(gè)的也落水了,到工業(yè)界去研究了,只有這個(gè)Bengio還一直處于中立狀態(tài),不過(guò)最近的消息好像他也加入了工業(yè)界。本書的作者是 Ian Goodfellow,GAN的發(fā)明人,Bengio是他的老師。

還有大神們的眾多門生,相繼發(fā)明了word2vec和fasttext,李飛飛及高徒andrej karpathy。。。

關(guān)系錯(cuò)綜復(fù)雜,但數(shù)來(lái)數(shù)去也就那么幾個(gè)人,“近親繁殖”現(xiàn)象嚴(yán)重。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這一部分是簡(jiǎn)單介紹一下前饋網(wǎng)絡(luò)的一些基本結(jié)構(gòu)。它每一種網(wǎng)絡(luò)實(shí)際上是模擬某一個(gè)復(fù)雜的函數(shù),它的目標(biāo)是要學(xué)習(xí)每一層連接里面那個(gè)權(quán)重。權(quán)重達(dá)到了一個(gè)比較好的狀態(tài),就相當(dāng)于這個(gè)函數(shù)已經(jīng)達(dá)到了一個(gè)比較好的近似。書里面強(qiáng)調(diào)了一點(diǎn):神經(jīng)網(wǎng)絡(luò)并不是目的,它不是為了完美的模擬大腦,而只是實(shí)現(xiàn)一種統(tǒng)計(jì)的泛化,類似于一種函數(shù)的近似機(jī)。因?yàn)槿四X是非常復(fù)雜的,現(xiàn)在的網(wǎng)絡(luò)結(jié)構(gòu)遠(yuǎn)遠(yuǎn)達(dá)不到人腦的這種狀態(tài)。

知名的網(wǎng)絡(luò)結(jié)構(gòu)主要兩種,第一種是前饋,也就是說(shuō)信息從一層一層往下流動(dòng),一路向前不回頭(不算誤差反向傳播)。以CNN為例;第二種是反饋,就把上一次訓(xùn)練的狀態(tài)留下來(lái),作為本次的一個(gè)輸入,它是前饋的一種擴(kuò)展,特點(diǎn)是訓(xùn)練時(shí)會(huì)把上一次訓(xùn)練結(jié)果拿過(guò)來(lái)用,再?zèng)Q定下一步的訓(xùn)練。典型例子就是RNN,一邊走一邊回眸一笑,繼續(xù)往前走。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

深度學(xué)習(xí)之所以興起有三個(gè)因素:海量的數(shù)據(jù)、計(jì)算能力、算法的突破。算法里面主要有幾個(gè)RBM、BP,這是優(yōu)化版的BP,還有一些訓(xùn)練方法pre-train,加上一些激活函數(shù)的變化。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這個(gè)圖說(shuō)的是數(shù)據(jù)。最開始的機(jī)器學(xué)習(xí)經(jīng)常提到的Iris數(shù)據(jù)集,量級(jí)才在這個(gè)地方很??;后來(lái)到MNIST,量級(jí)在10的4次方左右;然后到ImageNet,到最后越來(lái)越大,就是說(shuō)現(xiàn)在深度學(xué)習(xí)面臨的問(wèn)題會(huì)比之前復(fù)雜的多,數(shù)據(jù)也復(fù)雜得多。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這個(gè)是MNIST的一個(gè)示例。Hinton給它的一個(gè)形容是機(jī)器學(xué)習(xí)界的果蠅,就像生物實(shí)驗(yàn)里面動(dòng)不動(dòng)研究一些遺傳實(shí)驗(yàn),犧牲了無(wú)數(shù)的果蠅。CNN里面也會(huì)經(jīng)常拿它做練手,這是CNN里面入門的一個(gè)helloword(前饋神經(jīng)網(wǎng)絡(luò)的helloworld是異或問(wèn)題)。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這個(gè)是,隨著硬件性能的提升,模型的復(fù)雜度也越來(lái)越高。這個(gè)模型的復(fù)雜度就類似于大腦的復(fù)雜度,像果蠅的大腦其實(shí)相對(duì)于哺乳動(dòng)物來(lái)說(shuō),沒有那么復(fù)雜。所以大腦越復(fù)雜,它的連接的數(shù)目就越多。果蠅它的量級(jí)就比較小,但哺乳動(dòng)物會(huì)比較高,當(dāng)然人是最高的,也有可能有比人更高級(jí)的生物,只是我們不知道而已(比如普羅米修斯?)。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

現(xiàn)在隨著時(shí)間推移的話,神經(jīng)網(wǎng)絡(luò)也就會(huì)不斷的升級(jí),基本上是每隔2.4年就會(huì)翻一倍。即便是現(xiàn)在最強(qiáng)的神經(jīng)網(wǎng)絡(luò),他的計(jì)算能力還比不上一只青蛙。(據(jù)說(shuō)百度大腦達(dá)到2-3歲嬰兒的水平)

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

接下來(lái)就是神經(jīng)網(wǎng)絡(luò)能做什么,它現(xiàn)在的應(yīng)用面已經(jīng)非常廣了,主要分為圖像、語(yǔ)音、文字、游戲、無(wú)人駕駛等等,大家也都聽的很多了。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

圖像領(lǐng)域的,比如給一張圖像,讓機(jī)器識(shí)別圖像里面的內(nèi)容,比如人、自行車、石頭等等,每個(gè)結(jié)果都給出一定的置信度。圖像領(lǐng)域是深度學(xué)習(xí)威力最大的領(lǐng)域,傳統(tǒng)方法基本都敗北,翻天覆地。語(yǔ)音其次,NLP最難,NLU不好解,尚在改變過(guò)程中。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

再比如好玩一點(diǎn)的,國(guó)民老公和“先定一個(gè)小目標(biāo)一個(gè)億”王健林,能夠根據(jù)圖片識(shí)別出來(lái)是哪個(gè)人。還有明星的,經(jīng)過(guò)整容以后臉都長(zhǎng)的一個(gè)樣,但是機(jī)器識(shí)別就能辨別出來(lái),比如這是王珞丹和白百合。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這里著重提一下圖像領(lǐng)域的應(yīng)用進(jìn)展。這是最開始的一版深度學(xué)習(xí)用于貓狗識(shí)別的例子,這個(gè)地方是一個(gè)多分類。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

還有AlphaGo,和用CNN實(shí)現(xiàn)的玩游戲Flappy Bird。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

圖像識(shí)別的發(fā)展歷史。沿著時(shí)間順序從右往左,2010年以來(lái)識(shí)別錯(cuò)誤率是逐步下降的,在2012年左右有非常大的下降。它的原因是谷歌首次使用了深度學(xué)習(xí)(CNN),直接導(dǎo)致了接近10個(gè)點(diǎn)的下降。到了2014年也是谷歌的新一版的CNN,把錯(cuò)誤率降到了6.7%。再到2015年微軟的殘差網(wǎng)絡(luò),錯(cuò)誤率降到了3.57%。從數(shù)字上看好像沒多大差別,但一方面越往上提升的空間越小,難度越大;第二個(gè),里面有一個(gè)標(biāo)志性的里程碑,人的錯(cuò)誤率是5.1%,而這個(gè)時(shí)候機(jī)器是3.57%,已經(jīng)超過(guò)了,所以這是里程碑式的事件。里面用的數(shù)據(jù)集是李飛飛的開源數(shù)據(jù)集 ImageNet,在2016年的 ImageNet比賽里面中國(guó)團(tuán)隊(duì)就拿下了全部冠軍,今年又拿下了一些冠軍。在圖像識(shí)別領(lǐng)域提升的空間不大了,所以今年以后這個(gè)比賽已經(jīng)停止了,或許是已經(jīng)沒啥提升的空間了。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

這是一些超級(jí)網(wǎng)絡(luò)的圖示,最早的是8層網(wǎng)絡(luò),到了19層,再到22層,已經(jīng)眼花繚亂看不清了。這個(gè)PPT是來(lái)自臺(tái)大的李宏毅,大家可以找一下。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

我今天的分享就到這里,謝謝!

(完)

雷鋒網(wǎng) AI 科技評(píng)論整理,感謝嘉賓分享以及對(duì)文本的校對(duì)和補(bǔ)充!

雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

BAT資深算法工程師「Deep Learning」讀書系列分享(一) | 分享總結(jié)

分享:
相關(guān)文章

讀論文為生

日常笑點(diǎn)滴,學(xué)術(shù)死腦筋
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)