辨别真假数据科学家必备手册:深度学习45个基础问题(附答案)
簡介
早在2009年,深度學習還只是一個新興領域,只有少數(shù)人認為它是一個多產(chǎn)的研究方向。今天,深度學習正在被用來開發(fā)那些過去被認為是不可能完成的應用。
語音識別,圖像識別,數(shù)據(jù)中的模式識別,照片中的對象分類,字符文本生成,自動駕駛汽車等等只是其中幾個示例。因此,熟悉深度學習及其概念顯得尤為重要。
在這個測試中,我們考察了社區(qū)成員的深度學習基本概念。總共有1070人參加了這項技能測試。
如果你錯過了這次測試,下面這些問題就是你檢查自身技能水平的好機會。
總體結(jié)果
下面是成績的分布圖,有助您評估自己的表現(xiàn)。
你可以在這里獲取到全部的成績,超過200人參加了這項測試,最高得分是35分。這里是成績分布的統(tǒng)計描述:
總體分布
平均分: 16.45
中位數(shù): 20
眾數(shù): 0
看起來很多人很晚才開始比賽,或者只回答了幾個題目就沒有繼續(xù)下去。我并不知道確切的原因,可能是測試題目對大多數(shù)參與者過于困難。
如果你對這個現(xiàn)象背后的原因有任何洞見,歡迎聯(lián)系我們。
有用的資源
·Fundamentals of Deep Learning – Starting with Artificial Neural Network(https://www.analyticsvidhya.com/blog/2016/03/introduction-deep-learning-fundamentals-neural-networks/)
·Practical Guide to implementing Neural Networks in Python (using Theano)(https://www.analyticsvidhya.com/blog/2016/04/neural-networks-python-theano/)
·A Complete Guide on Getting Started with Deep Learning in Python(https://www.analyticsvidhya.com/blog/2016/08/deep-learning-path/)
·Tutorial: Optimizing Neural Networks using Keras (with Image recognition case study)(https://www.analyticsvidhya.com/blog/2016/10/tutorial-optimizing-neural-networks-using-keras-with-image-recognition-case-study/)
·An Introduction to Implementing Neural Networks using TensorFlow(https://www.analyticsvidhya.com/blog/2016/10/an-introduction-to-implementing-neural-networks-using-tensorflow/)
題目和答案
神經(jīng)網(wǎng)絡模型(Neural Network)因受人腦的啟發(fā)而得名。
神經(jīng)網(wǎng)絡由許多神經(jīng)元(Neuron)組成,每個神經(jīng)元接受一個輸入,處理它并給出一個輸出。這里是一個真實的神經(jīng)元的圖解表示。下列關于神經(jīng)元的陳述中哪一個是正確的?
一個神經(jīng)元只有一個輸入和一個輸出
一個神經(jīng)元有多個輸入和一個輸出
一個神經(jīng)元有一個輸入和多個輸出
一個神經(jīng)元有多個輸入和多個輸出
上述都正確
答案:(E)
一個神經(jīng)元可以有一個或多個輸入,和一個或多個輸出。
2下圖是一個神經(jīng)元的數(shù)學表達
神經(jīng)元的組成部分表示為:
-?????? x1, x2,…, xN:表示神經(jīng)元的輸入??梢允禽斎雽拥膶嶋H觀測值,也可以是某一個隱層(Hidden Layer)的中間值
-?????? w1, w2,…,wN:表示每一個輸入的權(quán)重
-?????? bi:表示偏差單元(bias unit)。作為常數(shù)項加到激活函數(shù)的輸入當中,和截距(Intercept)項相似
-?????? a:代表神經(jīng)元的激勵(Activation),可以表示為
-?????? y:神經(jīng)元輸出
考慮上述標注,線性等式(y = mx + c)可以被認為是屬于神經(jīng)元嗎:
A.??????? 是
B.??????? 否
答案:(A)
一個不包含非線性的神經(jīng)元可以看作是線性回歸函數(shù)(Linear Regression Function)。 ?
3假設在一個神經(jīng)元上實現(xiàn)和(AND)函數(shù),下表是和函數(shù)的表述
| X1 | X2 | X1 AND X2 |
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
激活函數(shù)為:
權(quán)重(Weights)和偏差(Bias)哪一組是正確的?
(提示:對哪一組w1, w2, b神經(jīng)元可以實現(xiàn)AND函數(shù))
A. Bias = -1.5, w1 = 1, w2 = 1
B. Bias = 1.5, w1 = 2, w2 = 2
C. Bias = 1, w1 = 1.5, w2 = 1.5
D. 以上都不正確
答案:(A)
1. f(-1.5*1 + 1*0 + 1*0) = f(-1.5) = 0
2. f(-1.5*1 + 1*0 + 1*1) = f(-0.5) = 0
3. f(-1.5*1 + 1*1 + 1*0) = f(-0.5) = 0
4. ?f(-1.5*1 + 1*1+ 1*1) = f(0.5) = 1
帶入測試值,A選項正確
多個神經(jīng)元堆疊在一起構(gòu)成了神經(jīng)網(wǎng)絡,我們舉一個例子,用神經(jīng)網(wǎng)絡模擬同或門(XNOR)。
你可以看見最后一個神經(jīng)元有兩個輸入。所有神經(jīng)元的激活函數(shù)是:
假設X1是0,X2是1,神經(jīng)網(wǎng)絡的輸出是什么?
0
1
答案:(A)
a1輸出: f(0.5*1 + -1*0 + -1*1) = f(-0.5) = 0
a2輸出: f(-1.5*1 + 1*0 + 1*1) = f(-0.5) = 0
a3輸出: f(-0.5*1 + 1*0 + 1*0) = f(-0.5) = 0
正確答案是A
5在一個神經(jīng)網(wǎng)絡里,知道每一個神經(jīng)元的權(quán)重和偏差是最重要的一步。如果以某種方法知道了神經(jīng)元準確的權(quán)重和偏差,你就可以近似任何函數(shù)。實現(xiàn)這個最佳的辦法是什么?
隨機賦值,祈禱它們是正確的
搜索所有權(quán)重和偏差的組合,直到得到最佳值
賦予一個初始值,通過檢查跟最佳值的差值,然后迭代更新權(quán)重
以上都不正確
答案:(C)
選項C是對梯度下降的描述。
6梯度下降算法的正確步驟是什么?
計算預測值和真實值之間的誤差
迭代跟新,直到找到最佳權(quán)重
把輸入傳入網(wǎng)絡,得到輸出值
初始化隨機權(quán)重和偏差
對每一個產(chǎn)生誤差的神經(jīng)元,改變相應的(權(quán)重)值以減小誤差
A. 1, 2, 3, 4, 5
B. 5, 4, 3, 2, 1
C. 3, 2, 1, 5, 4
D. 4, 3, 1, 5, 2
答案:(D)
選項D是正確的?
7假設你有輸入x,y,z,值分別是-2,5,-4。你有神經(jīng)元q和f,函數(shù)分別為q = x + y,f = q * z。函數(shù)的圖示如下圖:
F對x,y和z的梯度分別是?(提示:計算梯度,你必須找到df/dx, df/dy和df/dz)
A. (-3,4,4)
B. (4,4,3)
C. (-4,-4,3)
D. (3,-4,-4)
答案:(C)
選項C是正確的。
8現(xiàn)在回顧之前的內(nèi)容。我們學到了:
-?????? 大腦是有很多叫做神經(jīng)元的東西構(gòu)成,神經(jīng)網(wǎng)絡是對大腦的粗糙的數(shù)學表達。
-?????? 每一個神經(jīng)元都有輸入、處理函數(shù)和輸出。
-?????? 神經(jīng)元堆疊起來形成了網(wǎng)絡,用作近似任何函數(shù)。
-?????? 為了得到最佳的神經(jīng)網(wǎng)絡,我們用梯度下降方法不斷更新模型
給定上述關于神經(jīng)網(wǎng)絡的描述,什么情況下神經(jīng)網(wǎng)絡模型被稱為深度學習模型?
加入更多層,使神經(jīng)網(wǎng)絡的深度增加
有維度更高的數(shù)據(jù)
當這是一個圖形識別的問題時
以上都不正確
答案:(A)
更多層意味著網(wǎng)絡更深。沒有嚴格的定義多少層的模型才叫深度模型,目前如果有超過2層的隱層,那么也可以及叫做深度模型。?
9神經(jīng)網(wǎng)絡可以認為是多個簡單函數(shù)的堆疊。假設我們想重復下圖所示的決策邊界
使用兩個簡單的輸入h1和h2
最終的等式是什么?
A. (h1 AND NOT h2) OR (NOT h1 AND h2)
B. (h1 OR NOT h2) AND (NOT h1 OR h2)
C. (h1 AND h2) OR (h1 OR h2)
D. None of these
答案:(A)
你可以看見,巧妙地合并h1和h2可以很容易地得到復雜的等式。參見這本書的第九章。?
10卷積神經(jīng)網(wǎng)絡可以對一個輸入完成不同種類的變換(旋轉(zhuǎn)或縮放),這個表述正確嗎?
正確
錯誤
答案:(B)
數(shù)據(jù)預處理(也就是旋轉(zhuǎn)、縮放)步驟在把數(shù)據(jù)傳入神經(jīng)網(wǎng)絡之前是必要的,神經(jīng)網(wǎng)絡自己不能完成這些變換。
11下列哪一種操作實現(xiàn)了和神經(jīng)網(wǎng)絡中Dropout類似的效果?
A. Bagging
B. Boosting
C. 堆疊(Stacking)
D. 以上都不正確
答案:(A)
Dropout可以認為是一種極端的Bagging,每一個模型都在單獨的數(shù)據(jù)上訓練,通過和其他模型對應參數(shù)的共享,模型的參數(shù)都進行了很強的正則化。參見這里。
12下列哪哪一項在神經(jīng)網(wǎng)絡中引入了非線性?
隨機梯度下降
修正線性單元(ReLU)
卷積函數(shù)
以上都不正確
答案:(B)
修正線性單元是非線性的激活函數(shù)。?
13訓練神經(jīng)網(wǎng)絡過程中,損失函數(shù)在一些時期(Epoch)不再減小
原因可能是:
學習率(Learning rate)太低
正則參數(shù)太大
卡在了局部最小值
在你看來哪些是可能的原因?
A. 1 and 2
B. 2 and 3
C. 1 and 3
D. 都不是
答案:(D)
以上原因都可能造成這個結(jié)果。
14下列哪項關于模型能力(model capacity)的描述是正確的?(指模型能近似復雜函數(shù)的能力)
隱層層數(shù)增加,模型能力增加
Dropout的比例增加,模型能力增加
學習率增加,模型能力增加
都不正確
答案:(A)
只有選項A正確。?
15如果增加多層感知機(Multilayer Perceptron)的隱層層數(shù),測試集的分類錯誤會減小。這種陳述正確還是錯誤?
正確
錯誤
答案:(B)
并不總是正確。過擬合可能會導致錯誤增加。 ?
16構(gòu)建一個神經(jīng)網(wǎng)絡,將前一層的輸出和它自身作為輸入。
?
下列哪一種架構(gòu)有反饋連接?
循環(huán)神經(jīng)網(wǎng)絡
卷積神經(jīng)網(wǎng)絡
限制玻爾茲曼機
都不是
答案:(A)
選項A正確。
17在感知機中(Perceptron)的任務順序是什么?
初始化隨機權(quán)重
去到數(shù)據(jù)集的下一批(batch)
如果預測值和輸出不一致,改變權(quán)重
對一個輸入樣本,計算輸出值
A. 1, 2, 3, 4
B. 4, 3, 2, 1
C. 3, 1, 2, 4
D. 1, 4, 3, 2
答案:(D)
順序D是正確的。
18假設你需要改變參數(shù)來最小化代價函數(shù)(cost function),可以使用下列哪項技術?
A.??????? 窮舉搜索
B.??????? 隨機搜索
C.??????? Bayesian優(yōu)化
D.??????? 以上任意一種
答案:(D)
以上任意種技術都可以用來更新參數(shù)。
19在哪種情況下,一階梯度下降不一定正確工作(可能會卡住)?
A. ?
B. ???
C.
D. 以上都不正確
答案:(B)
這是鞍點(Saddle Point)的梯度下降的經(jīng)典例子。?
20訓練好的三層卷積神經(jīng)網(wǎng)絡的精確度(Accuracy)vs 參數(shù)數(shù)量(比如特征核的數(shù)量)的圖示如下。
從圖中趨勢可見,如果增加神經(jīng)網(wǎng)絡的寬度,精確度會增加到一個閾值,然后開始降低。這一現(xiàn)象的可能是什么原因是造成的?
即便核數(shù)量(number of kernels)增加,只有一部分核被用于預測
當核數(shù)量增加,神經(jīng)網(wǎng)絡的預測功效(Power)降低
當核數(shù)量增加,其相關性增加,導致過擬合
以上都不正確
答案:(C)
如C選項指出的那樣,可能的原因是核之間的相關性。
21假設我們有一個隱層神經(jīng)網(wǎng)絡,如上所示。隱層在這個網(wǎng)絡中用于降維。現(xiàn)在我們并不是采用這個隱層,而是使用例如主成分分析(Principal Component Analysis, PCA)的降維技術。
使用降維技術的網(wǎng)絡與隱層網(wǎng)絡總是有相同的輸出嗎?
A.是
B.否
答案:(B)
因為PCA用于相關特征而隱層用于有預測能力的特征
22可以用神經(jīng)網(wǎng)絡對函數(shù)(y=1/x)建模嗎?
A.是
B.否
答案:(A)
選項A是正確的,因為激活函數(shù)可以是互反函數(shù)
23下列哪個神經(jīng)網(wǎng)絡結(jié)構(gòu)會發(fā)生權(quán)重共享?
A.卷積神經(jīng)網(wǎng)絡
B.循環(huán)神經(jīng)網(wǎng)絡
C.全連接神經(jīng)網(wǎng)絡
D.選項A和B
答案:(D)
24批規(guī)范化是有幫助的,因為
A.在將所有的輸入傳遞到下一層之前對其進行歸一化(更改)
B.它將返回歸一化的權(quán)重平均值和標準差
C.它是一種非常有效的反向傳播技術
D.這些均不是
答案:(A)
要詳細了解批規(guī)范化,請參閱此視頻。
25我們不是想要絕對零誤差,而是設置一個稱為貝葉斯(bayes)誤差(我們希望實現(xiàn)的誤差)的度量。使用貝葉斯(bayes)誤差的原因是什么?
A.輸入變量可能不包含有關輸出變量的完整信息
B.系統(tǒng)(創(chuàng)建輸入-輸出映射)可以是隨機的
C.有限的訓練數(shù)據(jù)
D.所有
答案:(D)
想在現(xiàn)實中實現(xiàn)準確的預測,是一個神話,所以我們的希望應該放在實現(xiàn)一個“可實現(xiàn)的結(jié)果”上。
26在監(jiān)督學習任務中,輸出層中的神經(jīng)元的數(shù)量應該與類的數(shù)量(其中類的數(shù)量大于2)匹配。對或錯?
A.正確
B.錯誤
答案:(B)
它取決于輸出編碼。如果是獨熱編碼(one-hot encoding) 則正確。但是你可以有兩個輸出囊括四個類,并用二進制值表示出來(00,01,10,11)。
27在神經(jīng)網(wǎng)絡中,以下哪種技術用于解決過擬合?
A.Dropout
B.正則化
C.批規(guī)范化
D.所有
答案:(D)
所有的技術都可以用于處理過擬合。
28Y = ax^2 + bx + c(二次多項式)
這個方程可以用具有線性閾值的單個隱層的神經(jīng)網(wǎng)絡表示嗎?
A.是
B.否
答案:(B)
答案為否。因為簡單來說,有一個線性閾值限制神經(jīng)網(wǎng)絡就會使它成為一個相應的線性變換函數(shù)。
29神經(jīng)網(wǎng)絡中的死神經(jīng)元(dead unit)是什么?
A.在訓練任何其它相鄰單元時,不會更新的單元
B.沒有完全響應任何訓練模式的單元
C.產(chǎn)生最大平方誤差的單元
D.以上均不符合
答案:(A)
30以下哪項是對早期停止的最佳描述?
A.訓練網(wǎng)絡直到達到誤差函數(shù)中的局部最小值
B.在每次訓練期后在測試數(shù)據(jù)集上模擬網(wǎng)絡,當泛化誤差開始增加時停止訓練
C.在中心化權(quán)重更新中添加一個梯度下降加速算子,以便訓練更快地收斂
D.更快的方法是反向傳播,如‘Quickprop’算法
答案:(B)
31如果我們使用的學習率太大該怎么辦?
A.網(wǎng)絡將收斂
B.網(wǎng)絡將無法收斂
C.不確定
答案:(B)
選項B正確,因為錯誤率會變得不穩(wěn)定并且達到非常大的值
32圖1所示的網(wǎng)絡用于訓練識別字符H和T,如下所示:
網(wǎng)絡的輸出是什么?
A.
B.
C.
D.可能是A或B,取決于神經(jīng)網(wǎng)絡的權(quán)重
答案:(D)
不知道神經(jīng)網(wǎng)絡的權(quán)重和偏差是什么,則無法評論它將會給出什么樣的輸出。
33假設在ImageNet數(shù)據(jù)集(對象識別數(shù)據(jù)集)上訓練卷積神經(jīng)網(wǎng)絡。然后給這個訓練模型一個完全白色的圖像作為輸入。這個輸入的輸出概率對于所有類都是相等的。對或錯?
A.正確
B.錯誤
答案:(B)
將存在一些不為白色像素激活的神經(jīng)元作為輸入,所以類不會相等。
34當在卷積神經(jīng)網(wǎng)絡中添加池化層(pooling layer)時,變換的不變性保持穩(wěn)定,這樣的理解是否正確?
A.正確
B.錯誤
答案:(A)
使用池化時會導致出現(xiàn)不變性。
35Q35.當數(shù)據(jù)太大而不能同時在RAM中處理時,哪種梯度技術更有優(yōu)勢?
A.全批量梯度下降(Full Batch Gradient Descent )
B.隨機梯度下降(Stochastic Gradient Descent)
答案:(B)
36該圖表示,使用每個訓練時期的激活函數(shù),-訓練有四個隱藏層的神經(jīng)網(wǎng)絡梯度流。神經(jīng)網(wǎng)絡遭遇了梯度消失問題。
下列哪項正確?
A.隱藏層1對應于D,隱藏層2對應于C,隱藏層3對應于B,隱藏層4對應于A
B.隱藏層1對應于A,隱藏層2對應于B,隱藏層3對應于C,隱藏層4對應于D
答案:(A)
這是對消失梯度描述的問題。由于反向傳播算法進入起始層,學習能力降低。
37對于分類任務,我們不是將神經(jīng)網(wǎng)絡中的隨機權(quán)重初始化,而是將所有權(quán)重設為零。下列哪項是正確的?
A.沒有任何問題,神經(jīng)網(wǎng)絡模型將正常訓練
B.神經(jīng)網(wǎng)絡模型可以訓練,但所有的神經(jīng)元最終將識別同樣的事情
C.神經(jīng)網(wǎng)絡模型不會進行訓練,因為沒有凈梯度變化
D.這些均不會發(fā)生
答案:(B)
38開始時有一個停滯期,這是因為神經(jīng)網(wǎng)絡在進入全局最小值之前陷入局部最小值。
為了避免這種情況,下面的哪個策略有效?
A.增加參數(shù)的數(shù)量,因為網(wǎng)絡不會卡在局部最小值處
B.在開始時把學習率降低10倍,然后使用梯度下降加速算子(momentum)
C.抖動學習速率,即改變幾個時期的學習速率
D.以上均不是
答案:(C)
選項C可以將陷于局部最小值的神經(jīng)網(wǎng)絡提取出來。
39對于圖像識別問題(比如識別照片中的貓),神經(jīng)網(wǎng)絡模型結(jié)構(gòu)更適合解決哪類問題?
A.多層感知器
B.卷積神經(jīng)網(wǎng)絡
C.循環(huán)神經(jīng)網(wǎng)絡
D.感知器
答案:(B)
卷積神經(jīng)網(wǎng)絡將更好地適用于圖像相關問題,因為考慮到圖像附近位置變化的固有性質(zhì)。
40假設在訓練時,你遇到這個問題。在幾次迭代后,錯誤突然增加。
您確定數(shù)據(jù)一定有問題。您將數(shù)據(jù)描繪出來,找到了原始數(shù)據(jù)有點偏離,這可能是導致出現(xiàn)問題的地方。
你將如何應對這個挑戰(zhàn)?
A.歸一化
B.應用PCA然后歸一化
C.對數(shù)據(jù)進行對數(shù)變換
D.以上這些都不符合
答案:(B)
首先您將相關的數(shù)據(jù)去掉,然后將其置零。
41以下哪項是神經(jīng)網(wǎng)絡的決策邊界?
A) B
B) A
C) D
D) C
E) 以上所有
答案:(E)
神經(jīng)網(wǎng)絡被稱為通用函數(shù)擬合器(universal function approximator),所以它理論上可以表示任何決策邊界。?
42在下面的圖中,我們觀察到錯誤有許多“起伏”,我們該為此而擔心嗎?
A.是,因為這意味著神經(jīng)網(wǎng)絡的學習速率有問題。
B.否,只要訓練和驗證錯誤累積減少,我們就不必擔心。
答案:(B)
選項B是正確的,為了減少這些“起伏”,可以嘗試增加批尺寸(batch size)
43什么是影響神經(jīng)網(wǎng)絡的深度選擇的因素?
1.神經(jīng)網(wǎng)絡的類型,例如:多層感知機(Multi-Layer Perceptrons, MLP),卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks, CNN)
2.輸入數(shù)據(jù)
3.計算能力,即硬件和軟件能力
4.學習率
5.輸出函數(shù)映射
A. 1, 2, 4, 5
B. 2, 3, 4, 5
C. 1, 3, 4, 5
D. 以上均是
答案:(D)
所有上述因素對于選擇神經(jīng)網(wǎng)絡模型的深度都是重要的。
44考慮這種情況:您嘗試解決的問題有少量的數(shù)據(jù)。幸運的是,您有一個之前訓練過的針對類似問題的神經(jīng)網(wǎng)絡模型。您將使用以下哪種方法來使用該預先訓練的模型?
A.對于新的數(shù)據(jù)集重新訓練模型
B.在每一層評估模型如何執(zhí)行,只選擇其中的一些
C.只微調(diào)最后幾層
D.凍結(jié)除最后一層之外的所有層,重新訓練最后一層
答案:(D)
如果數(shù)據(jù)集大部分相似,最好的方法是只訓練最后一層,因為前面的所有層都用于特征提取。
45增大卷積核的大小必然會提高卷積神經(jīng)網(wǎng)絡的性能。
A.正確
B.錯誤
答案:(B)
增加核函數(shù)的大小不一定會提高性能。這個問題在很大程度上取決于數(shù)據(jù)集。
原文發(fā)布時間為:2017-02-27
本文來自云棲社區(qū)合作伙伴“大數(shù)據(jù)文摘”,了解相關信息可以關注“BigDataDigest”微信公眾號
總結(jié)
以上是生活随笔為你收集整理的辨别真假数据科学家必备手册:深度学习45个基础问题(附答案)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: context:annotation-c
- 下一篇: 中兴智能视觉大数据:人脸识别技术目前处于