fbpx

2018 年機器學習面試最常問的問題 ( 1 – 1 )

原文 : Top Machine Learning Interview Questions for 2018 (Part-1)  註: 原文有 18 個問題,我們將分三單元來翻譯

這些機器學習面試問題,是面試中排名前幾名的真正被問到的問題。

為了審核機器學習工程師或資料科學家的應徵者,典型的流程以多輪進行。

  1. 基本的篩選輪-目標是檢查在這一輪最低合適的人
  2. 演算法設計回合-一些公司有這一回合,但大多數沒有。 這包括檢查被面試者的程式碼/演算法技能
  3. 機器學習案例研究——在這一輪中,你將被給一個在 Kaggle 生產線上的機器學習案例研究問題。 你必須在一個小時內解決它
  4. Bar Raiser/招聘經理——這種面試通常由團隊中最資深的人或者來自另一個團隊的非常資深的人(在亞馬遜被稱為 Bar raiser 輪)來進行,他們會檢查候選人是否符合公司範圍內的技術能力。 這通常是最後一輪

典型的第一輪面試包括三個部分。 首先,簡單介紹一下你自己。

其次,簡要介紹一下你的相關專案。

典型的面試官會從你的個人資料中詢問相關的工作開始。 根據你過去的機器學習專案經驗,面試官可能會問你如何改進它。

比如說,你做了一個推薦( recommendations )的專案,面試官可能會問:

  • 你將如何改進這些建議?
  • 你會如何做排名?
  • 你做過端到端的機器學習專案嗎? 如果答案是肯定的,那麼面臨的挑戰是什麼。 你如何解決冷啟動( cold start )的問題?
  • 你將如何提升推薦的速度?

然後(第三部分) ,面試官將繼續檢查你的機器學習的基本知識 :

Q1: 什麼是機器學習?

機器學習是一個研究領域,它賦予電腦從經驗中學習和改進的能力,不需要明確地教授或程式設計。 在傳統程式中,規則被編入程式中做決策,但在機器學習中,程式根據資料進行學習以做決策。

Q2. 為什麼我們需要機器學習?

最直覺和突出的例子是自動駕駛汽車,但是讓我們用更結構化的方式來回答這個問題。 機器學習被需要來解決以下各種問題 :

傳統解決方案 : 需要長而複雜的規則集( set of rules )並且經常需要手動調優的問題。 這類問題如電子郵件過濾器。 你注意到一些詞,如 4U、促銷、信用卡、免費、令人驚艷( amazing )等等,發現電子郵件是一個垃圾郵件。 這個列表可能非常長,一旦垃圾郵件傳送者注意到你開始忽略這些詞,就會更改。 用傳統的程式設計方法很難處理這個問題。 機器學習演算法能很好地檢測垃圾郵件,並且工作得更好。

使用傳統方法根本無法解決的複雜問題。 語音識別就是這類問題的其中之一。機器學習演算法可以很好地解決這些問題。

波動的環境: 一個機器學習系統可以適應新的資料,並學會在這個新的資料集運作良好。

深入瞭解複雜、大量的資料。 例如,你的企業從客戶那裡收集大量資料。 機器學習演算法可以洞察這些資料,否則不容易從別的方法發掘出來。
For more details visit Machine Learning Specialization

更多詳情請訪問機器學習專業化

Q3. 監督和非監督式學習的區別是什麼? 舉兩個例子。

根據定義,監督的演算法和非監督式學習演算法是根據訓練時需要的監督來分類的。 監督的學習演算法根據被標好的資料工作,也就是說,資料有一個期望的解決方案( solution )或者一個標籤。

另一方面,非監督式學習演算法處理未標記的資料,這意味著這些資料不包含演算法所期望的解決方案( solution )。

有監督的演算法例子:

  • 線性迴歸( Linear Regression  )
  • 神經網路 / 深度學習( Neural Networks/Deep Learning  )
  • 決策樹( Decision Trees )
  • 支援向量機(Support Vector Machine,SVM )
  • K最近鄰居( K-Nearest neighbours )

無監督演算法的例子:

  • 叢集演算法 ( Clustering Algorithms )– K-means, 階級試叢集分析( Hierarchical Clustering Analysis,HCA)
  • 視覺化( Visualization )和降維( Dimensionality reduction )– 主成分降維 (PCA)
  • 關聯規則學習( Association rule learning )

Q4. 監督推薦還是非監督式學習推薦?

推薦演算法很有趣,因為其中有些是有監督的,有些是無監督的。 根據你的個人資料、以前的購買記錄、瀏覽的頁面都屬於監督式學習。 但是也有一些基於熱銷產品的推薦,基於國家 / 地區的推薦,這些都屬於非監督式學習。

更多詳情請訪問機器學習專業化

Q5. 解釋 PCA?

PCA 是 Principal Component Analysis (主成分分析)的縮寫。主成分分析( PCA )是一種降低資料維數的程序,資料維數由許多相互之間密切或輕微關聯的變數組成,同時儘可能保留資料中的變化。 採用 PCA 的資料必須是可擴張的資料,PAC 的結果對資料的相對擴張很敏感。

舉個例子,假設你有一個 2D 空間的資料集,你需要選擇一個超平面( hyperplane )來投射這個資料集。 超平面的選擇必須使方差( variance )保持到最大值。 在下面的圖中,當從一個表示(representation )轉換到另一個表示(從左到右)時,超空間 C1 (實線)保留了資料集中的最大方差,而 C2 (虛線)保留的方差很少。

Q6.  你知道哪些監督式學習演算法則?

你需要根據自己對演算法的熟練程度來回答這個問題。 現在有很多監督式學習演算法,如迴歸、決策樹、神經網路、支援向量機等。 在這些監督式學習中,最流行和最簡單的演算法就是線性迴歸演算法。 讓我簡單地解釋一下。

比如說我們需要根據一些歷史資料來預測一個縣的居民收入。 線性迴歸可以用來解決這個問題。線性迴歸模型是輸入包含權重( weights )的特徵( features )的線性函數( linear function ),定義了模型( model )和偏差項( bias term )如下所示。

在該等式中,y_hat 是預測結果,x_i 是輸入,並且 theta_i 是模型參數或權重。 theta_0 是偏差( bias )。

通過評估均方根誤差( Root Mean Square Error,RMSE )來測量該模型的表現。在實踐中,均方誤差被最小化以找到值,使得 MSE 最小。  MSE 如下:

 續集 :  2018 年機器學習面試最常問的問題 ( 1 – 2 )

CLOUD x LAB 的實驗室功能介紹

NEW YEAR 20% off

Soft&Share 為 Cloudxlab 聯盟,獲授權翻譯 CloudxLab 上所有資訊

 歡迎使用 e-mail 訂閱 Soft & Share 

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: