https://m.toutiao.com/is/BoopeVY/?= 一、深度學(xué)習(xí)的定義深度學(xué)習(xí)(Deep Learning),簡(jiǎn)稱:DL,是一種實(shí)現(xiàn)機(jī)器學(xué)習(xí)的技術(shù)。 人工智能(AI)的概念是在1955 年提出的;機(jī)器學(xué)習(xí)(ML)概念是在1990 年提出的;而深度學(xué)習(xí)(DL)概念是在 2010 年提出的。 深度學(xué)習(xí)包含于機(jī)器學(xué)習(xí),而機(jī)器學(xué)習(xí)又包含于人工智能。也就是說,深度學(xué)習(xí)包含于人工智能。 人工智能是目的,是結(jié)果;深度學(xué)習(xí)、機(jī)器學(xué)習(xí)是方法,是工具。 深度學(xué)習(xí)的定義: “一種機(jī)器學(xué)習(xí)的形式,使計(jì)算機(jī)能夠從經(jīng)驗(yàn)中學(xué)習(xí)并以概念層次結(jié)構(gòu)的方式理解世界?!保℅oodfellow 等,麻省理工學(xué)院出版社,Deep Learning) 二、深度學(xué)習(xí)的技術(shù)原理深度學(xué)習(xí)的概念就源于人工神經(jīng)網(wǎng)絡(luò)的研究,含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。 神經(jīng)網(wǎng)絡(luò)是一組粗略模仿人類大腦,用于模式識(shí)別的算法。神經(jīng)網(wǎng)絡(luò)這個(gè)術(shù)語(yǔ)來源于這些系統(tǒng)架構(gòu)設(shè)計(jì)背后的靈感,這些系統(tǒng)是用于模擬生物大腦自身神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu),以便計(jì)算機(jī)能夠執(zhí)行特定的任務(wù)。 普通的神經(jīng)網(wǎng)絡(luò)可能只有幾層,深度學(xué)習(xí)可以達(dá)到十幾層。深度學(xué)習(xí)中的深度二字也代表了神經(jīng)網(wǎng)絡(luò)的層數(shù)。現(xiàn)在流行的深度學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)有'CNN(卷積神經(jīng)網(wǎng)絡(luò))、RNN(循環(huán)神經(jīng)網(wǎng)絡(luò))、DNN(深度神經(jīng)網(wǎng)絡(luò))的等?,F(xiàn)在流行的深度學(xué)習(xí)框架有MXnet,tensorflow,caffe等,而在這些框架之上(或許不太準(zhǔn)確),還有PyTorch,Keras等。 神經(jīng)元分為三種不同類型的層次: 輸入層接收輸入數(shù)據(jù)。 隱藏層對(duì)輸入數(shù)據(jù)進(jìn)行數(shù)學(xué)計(jì)算。 人工神經(jīng)網(wǎng)絡(luò)的輸出層是神經(jīng)元的最后一層,主要作用是為此程序產(chǎn)生給定的輸出。 從X1/X2/X3輸入到輸出的過程,定義了一個(gè)層次的概念,譬如上圖就包括四層,包含最左邊的輸入層,和最右邊的輸出層。如果這是一道選擇題的話,那么題目就是輸入層,而ABCD的選擇結(jié)果就是輸出層,如上圖的L1和L2分別是輸入層和輸出層。 而選擇題解題的過程是不寫出來的,我們叫做”隱藏層“,這里L(fēng)2和L3就是隱藏層,題目越難,給出的信息可能是越多的,而解題所需要的過程就越復(fù)雜的,也就可能需要更多的”隱藏層“來計(jì)算最終的結(jié)果。 最終要來解釋什么是深度學(xué)習(xí)的”深度“了,就是從”輸入層“到”輸出層“所經(jīng)歷層次的數(shù)目,即”隱藏層“的層數(shù),層數(shù)越多,板凳的深度也越深。所以越是復(fù)雜的選擇問題,越需要深度的層次多。例如,AlphaGo的策略網(wǎng)絡(luò)是13層,每一層的神經(jīng)元數(shù)量為192個(gè)。 總結(jié)一句話,深度學(xué)習(xí)就是用多層次的分析和計(jì)算手段,得到結(jié)果的一種方法。深度學(xué)習(xí)是用于建立、模擬人腦進(jìn)行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),并模仿人腦的機(jī)制來解釋數(shù)據(jù)的一種機(jī)器學(xué)習(xí)技術(shù)。 三、深度學(xué)習(xí)的優(yōu)缺點(diǎn)及應(yīng)用基于深度神經(jīng)網(wǎng)絡(luò)的端到端學(xué)習(xí)在最近幾年取得很大的成功,被大量應(yīng)用與計(jì)算機(jī)視覺、語(yǔ)音識(shí)別、自然語(yǔ)音處理、醫(yī)學(xué)圖像處理等領(lǐng)域中。
現(xiàn)在,經(jīng)過深度學(xué)習(xí)訓(xùn)練的圖像識(shí)別,在一些場(chǎng)景中甚至可以比人做得更好:從識(shí)別貓,到辨別血液中癌癥的早期成分,到識(shí)別核磁共振成像中的腫瘤。 很多大牛和公司都在深度學(xué)習(xí)領(lǐng)域探索,并取得了非常多不錯(cuò)的成果。比如Google通過YouTube上的視頻訓(xùn)練出了“貓”,微軟借助對(duì)語(yǔ)言的學(xué)習(xí)在skype上實(shí)現(xiàn)了自動(dòng)語(yǔ)言翻譯器,每年ImageNet上也有很多成果。 在國(guó)內(nèi),深度學(xué)習(xí)也有了落地性的行業(yè)應(yīng)用: 語(yǔ)音識(shí)別技術(shù):智能音箱等產(chǎn)品。 圖像識(shí)別技術(shù):面部識(shí)別,人臉識(shí)別,刷臉解鎖、支付等。 自動(dòng)駕駛技術(shù):百度等公司開發(fā)的自動(dòng)駕駛技術(shù)。 金融領(lǐng)域的如:預(yù)測(cè)股價(jià)、醫(yī)療領(lǐng)域的疾病監(jiān)測(cè),教育領(lǐng)域的技術(shù)賦能等。 四、深度學(xué)習(xí)如何入門?在進(jìn)行深度學(xué)習(xí)前,你需要了解以下知識(shí):數(shù)學(xué):概率、導(dǎo)數(shù)、線性代數(shù)等。 統(tǒng)計(jì):統(tǒng)計(jì)的基礎(chǔ)知識(shí)是進(jìn)行任何機(jī)器學(xué)習(xí)問題所必需的。 工具:具有一定程度的編碼技巧。 機(jī)器學(xué)習(xí):機(jī)器學(xué)習(xí)是深度學(xué)習(xí)的基礎(chǔ)。 在學(xué)習(xí)深度學(xué)習(xí)前,一定要理解機(jī)器學(xué)習(xí)的概念。 在語(yǔ)言的選擇上,Python具有強(qiáng)大的機(jī)器學(xué)習(xí)生態(tài)系統(tǒng),該系統(tǒng)由開發(fā)人員和編碼人員組成,他們?yōu)閜ython用戶提供開源庫(kù)和技術(shù)支持。這使開發(fā)人員為各種算法編寫復(fù)雜代碼的任務(wù)變得更加容易,并且更易于實(shí)施和實(shí)驗(yàn)。 另外,Python是一種可用于開發(fā)和實(shí)現(xiàn)的通用編程語(yǔ)言。這極大地簡(jiǎn)化了從開發(fā)到實(shí)現(xiàn)的過渡。也就是說,一個(gè)可以預(yù)測(cè)機(jī)票價(jià)格的深度學(xué)習(xí)模型不僅可以用python開發(fā),還可以用同樣的形式附在網(wǎng)站上。 建議初學(xué)者使用像Keras這樣的高級(jí)庫(kù),對(duì)算法中隱藏的不必要信息進(jìn)行抽象,并允許訪問可以調(diào)整的參數(shù),使實(shí)驗(yàn)簡(jiǎn)化且提高模型性能。 在R、Julia、C ++和Java等深度學(xué)習(xí)領(lǐng)域,除了Python之外,還有其他的語(yǔ)言。你也可以關(guān)注TensorFlow、Pytorch、Caffe2、DL4J等的發(fā)展,將他們作為庫(kù)的替代品。 如果不熟悉編程,還有一些基于GUI的軟件,不需要編碼,就可以構(gòu)建深度學(xué)習(xí)模型,如Lobe或Google的AutoML等。 近年來,深度學(xué)習(xí)已經(jīng)取得了很大的進(jìn)步,但仍有很大的潛力。在不久的將來,深度學(xué)習(xí)將成為每個(gè)數(shù)據(jù)科學(xué)實(shí)踐者所需的技能。 |
|