面試必備問題集錦
1.為什麼必須在神經網路中引入非線性?
答:否則,我們將獲得一個由多個線性函式組成的線性函式,那麼就成了線性模型。線性模型的引數數量非常少,因此建模的複雜性也會非常有限。
2.說明解決神經網路中梯度消失問題的兩種方法。
答:使用ReLU啟用函式代替S啟用函式。
使用Xavier初始化。
3.在影像分類任務中,相較於使用密集神經網路(Dense Neural Network,DNN),使用卷積神經網路(Convolutional Neural Network,CNN)有哪些優勢?
答:雖然兩種模型都可以捕獲彼此靠近的畫素之間的關係,但CNN具有以下屬性:
它是平移不變的:對於過濾器而言,畫素的確切位置是無關的。
更不容易發生過度擬合:一般而言CNN中的引數比DNN要少很多。
方便我們更好地理解模型:我們可以檢視過濾器的權重,並視覺化神經網路的學習成果。
分層性質:透過使用較簡單的模式描述複雜的模式來學習模式。
4. 說明在影像分類任務中視覺化CNN特徵的兩種方法。
答:輸入遮擋:遮擋輸入影像的一部分,看看哪部分對分類的影響最大。 例如,針對某個訓練好的影像分類模型,將下列影像作為輸入。如果我們看到第三幅影像被分類為狗狗的機率為98%,而第二幅影像的準確率僅為65%,則說明眼睛對於對分類的影響更大。
啟用最大化:建立一個人造的輸入影像,以最大化目標響應(梯度上升)。
5. 在最佳化學習速率時,分別嘗試學習速率:0.1、0.2,…,0.5是好辦法嗎?
答:這種方法並不好,建議使用對數比例來最佳化學習速率。
6. 假設一個神經網路擁有3層的結構和ReLU啟用函式。如果我們用同一個值初始化所有權重,結果會怎樣?如果我們只有1層(即線性/邏輯迴歸)會怎樣?
答:如果所有權重的初始值都相同,則無法破壞對稱性。也就是說,所有梯度都會更新成同一個值,而且神經網路將無法學習。但是,如果神經網路只有1層的話,成本函式是凸形的(線性/ S型),因此權重始終會收斂到最佳點,無論初始值是什麼(收斂可能會較慢)。
7.解釋Adam最佳化器的概念。
答:Adam結合了兩個想法來改善收斂性:每個引數更新可加快收斂速度;動量可避免卡在鞍點上。
8.比較批處理,小批處理和隨機梯度下降。
答:批處理是指在估計資料時獲取整個資料;小批處理是透過對幾個資料點進行取樣來進行小批次處理;而隨機梯度下降是指在每個時期更新一個資料點的梯度。我們需要權衡梯度計算的準確度與儲存在記憶體中的批次大小。此外,透過在每個epoch新增隨機噪聲,我們可以透過小批處理(而非整個批處理)實現正規化效果。
9.什麼是資料擴充?舉個例子。
答:資料擴充是一種技術,透過操作原始資料來增加輸入資料。例如,對於影像,我們可以執行以下操作:旋轉影像、翻轉影像、新增高斯模糊等。
10. 解釋GAN的概念。
答:GAN(Generative Adversarial Network)即生成對抗網路,通常由兩個神經網路D和G組成,其中D指的是判別器(Discriminator),而G指生成網路(Generative Network)。這種模型的目標是建立資料,例如建立與真實影像並無二樣的影像。假設我們想要建立一隻貓的對抗示例。神經網路G負責生成影像,而神經網路D則負責判斷影像是否是貓。G的目標是“愚弄”D——將G的輸出始終分類為貓。
11.使用Batchnorm有什麼優勢?
答:Batchnorm能夠加快訓練過程,而且(一些噪音的副產品)還具有調節作用。
12.什麼是多工學習?應該在什麼時候使用?
答:當我們使用少量資料處理多個任務時,多工處理將很有用,而且我們還可以使用在其他任務的大型資料集上訓練好的模型。透過“硬”方式(即相同的引數)或“軟”方式(即對成本函式進行正則化/懲罰)共享模型的引數。
13.什麼是端到端學習?列舉一些優點。
答:端到端學習通常是一個模型,該模型能夠獲取原始資料並直接輸出所需的結果,而無需任何中間任務或功能工程。其優點包括:無需手工構建功能,而且通常可以降低偏差。
14.如果在最後一層中,我們先使用ReLU啟用函式,然後再使用Sigmoid函式,會怎樣?
答:由於ReLU始終會輸出非負結果,因此該神經網路會將所有輸入預測成同一個類別。
15.如何解決梯度爆炸的問題?
答:解決梯度爆炸問題的一個最簡單的方法就是梯度修剪,即當梯度的絕對值大於M(M是一個很大的數字)時,設梯度為±M。
16.使用批次梯度下降法時,是否有必要打亂訓練資料?
答:沒有必要。因為每個epoch的梯度計算都會使用整個訓練資料,所以打亂順序也沒有任何影響。
17.當使用小批次梯度下降時,為什麼打亂資料很重要?
答:如果不打亂資料的順序,那麼假設我們訓練一個神經網路分類器,且有兩個類別:A和B,那麼各個epoch中的所有小批次都會完全相同,這會導致收斂速度變慢,甚至導致神經網路對資料的順序產生傾向性。
18.列舉遷移學習的超引數。
答:保留多少層、新增多少層、凍結多少層。
19. 測試集上是否需要使用dropout?
答:不可以使用!dropout只能用於訓練集。dropout是訓練過程中應用的一種正則化技術。
20.說明為什麼神經網路中的dropout可以作為正則化。
答:關於dropout的工作原理有幾種解釋。我們可以將其視為模型平均的一種形式:我們可以在每一步中“去掉”模型的一部分並取平均值。另外,它還會增加噪音,自然會產生調節的效果。最後,它還可以稀釋權重,從根本上阻止神經網路中神經元的共適應。
21. 舉個適合多對一RNN架構的例子。
答:例如:情緒分析,語音中的性別識別等。
22.我們什麼時候不能使用BiLSTM?說明在使用BiLSTM我們必須做的假設。
答:在所有雙向模型中,我們都可以假設在給定的“時間”內訪問序列的下一個元素。文字資料(例如情感分析、翻譯等)就是這種情況,而時間序列資料則不屬於這種情況。
23. 判斷對錯:將L2正則化新增到RNN有助於解決梯度消失的問題。
答:錯誤!新增L2正則化會將權重縮小為零,在某些情況下這實際上會讓梯度消失的問題更嚴重。
24. 假設訓練錯誤/成本很高,而且驗證成本/錯誤幾乎與之相等。這是什麼意思?我們應該做些什麼?
答:這表明欠擬合。我們可以新增更多引數,增加模型的複雜性或減少正則化。
25. 說明為何L2正則化可以解釋為一種權重衰減。
答:假設我們的成本函式為C(w),我們再加上一個c|w|2。使用梯度下降時,迭代如下:
w = w -grad(C)(w) — 2cw = (1–2c)w — grad(C)(w)
在該等式中,權重乘以因子<1
今天就到這裡,後面有機會再整理一下大家吧!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69920915/viewspace-2767933/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 面試題集錦面試題
- 【英語面試常見問題集錦】面試
- 2019年阿里必問面試題集錦(收藏不看系列),你懂得!阿里面試題
- 後端 面試題集錦後端面試題
- Java 進階面試問題必備Java面試
- PHP開發工程師面試問題集錦PHP工程師面試
- flutter問題集錦Flutter
- kafka問題集錦Kafka
- 面試題集錦-SpringBoot面試題Spring Boot
- 前端必備,JavaScript面試問題及答案前端JavaScript面試
- Partition管理問題集錦
- ArchLinux 問題集錦Linux
- 後臺開發常問面試題集錦(問題搬運工,附連結)面試題
- JDBC常見面試題集錦(二)JDBC面試題
- JDBC常見面試題集錦(一)JDBC面試題
- C++詞彙集錦程式設計人必備C++程式設計
- Python面試必備的7大問題Python面試
- Flutter開發者必備面試問題與答案05Flutter面試
- GO面試題集錦快答[持續更新]Go面試題
- 阿里巴巴Java面試題錦集阿里Java面試題
- 2017年JAVA面試題錦集Java面試題
- iOS面試問答集錦,從容應對各種面試技術難題!iOS面試
- 面試集錦(九)git面試Git
- 面試集錦(十二)hashMap面試HashMap
- Linux 問題處理集錦Linux
- java 入門篇 問題集錦Java
- Android開發問題集錦Android
- Java常見問題集錦(轉)Java
- 面試必備,Linux面試題和答案!Linux面試題
- Android大廠面試題錦集(BATTMDJD小米)Android面試題BAT
- 經典的Java面試題及回答集錦Java面試題
- 經典的Java基礎面試題集錦Java面試題
- 【轉】外企英文面試經典考題集錦面試
- J2EE面試題集錦(附答案)面試題
- 測試面試題集錦(六)| 軟素質篇與反問面試官篇(附答案)面試題
- Mac電腦裝機必備十大軟體集錦Mac
- 面試集錦(三)spring面試Spring
- 【面試必備】常見Java面試題大綜合Java面試題