本文盤點了數據科學和機器學習面試中的常見問題,著眼于不同類型的面試問題。如果您計劃向數據科學領域轉行,這些問題一定會有所幫助。本文約5000字,閱讀大約需要10分鐘。
技術的不斷進步使得數據和信息的產生速度今非昔比,并且呈現出繼續增長的趨勢。此外,目前對解釋、分析和使用這些數據的技術人員需求也很高,這在未來幾年內會呈指數增長。這些新角色涵蓋了從戰略、運營到管理的所有方面。因此,當前和未來的需求將需要更多的數據科學家、數據工程師、數據戰略家和首席數據官這樣類似的角色。
本文將著眼于不同類型的面試問題。如果您計劃向數據科學領域轉行,這些問題一定會有所幫助。
統計學及數據科學面試題答案
在統計學研究中,統計學中最常見的三個“平均值”是均值,中位數和眾數:
算術平均值:它是統計學中的一個重要概念。算術平均值也可稱為平均值,它是通過將兩個或多個數字/變量相加,然后將總和除以數字/變量的總數而獲得的數量或變量。
中位數:中位數也是觀察一組數據平均情況的一種方法。它是一組數字的中間數字。結果有兩種可能性,因為數據總數可能是奇數,也可能是偶數。如果總數是奇數,則將組中的數字從最小到最大排列。中位數恰好是位于中間的數,兩側的數量相等。如果總數是偶數,則按順序排列數字并選擇兩個中間數字并加上它們然后除以2,它將是該組的中位數。
眾數:眾數也是觀察平均情況的方法之一。眾數是一個數字,指在一組數字中出現最多的數字。有些數列可能沒有任何眾數;有些可能有兩個眾數,稱為雙峰數列。
標準差(Sigma):標準差用于衡量數據在統計數據中的離散程度。
回歸:回歸是統計建模中的一種分析方法。這是衡量變量間關系的統計過程;它決定了一個變量和一系列其他自變量之間關系的強度。
線性回歸:是預測分析中使用的統計技術之一,該技術將確定自變量對因變量的影響強度。
統計學的兩個主要分支:
描述性統計:描述性統計使用類似均值或標準差的指數來總結樣本數據。描述性統計方法包括展示、組織和描述數據。
推斷性統計:推斷統計得出的結論來自隨機變化的數據,如觀察誤差和樣本變異。
相關性:相關性被認為是測量和估計兩個變量間定量關系的最佳技術。相關性可以衡量兩個變量相關程度的強弱。
協方差:協方差對應的兩個變量一同變化,它用于度量兩個隨機變量在周期中的變化程度。這是一個統計術語;它解釋了一對隨機變量之間的關系,其中一個變量的變化時,另一個變量如何變化。
協方差和相關性是兩個數學概念;這兩種方法在統計學中被廣泛使用。相關性和協方差都可以構建關系,并且還可測量兩個隨機變量之間的依賴關系。雖然這兩者在數學上有相似之處,但它們含義并不同。
結合數據分析,統計可以用于分析數據,并幫助企業做出正確的決策。預測性“分析”和“統計”對于分析當前數據和歷史數據以預測未來事件非常有用。
統計數據可用于許多研究領域。以下列舉了統計的應用領域:
科學
技術
商業
生物學
計算機科學
化學
支持決策
提供比較
解釋已經發生的行為
預測未來
估計未知數量
在統計研究中,通過結構化和統一處理,樣本是從統計總體中收集或處理的一組或部分數據,并且樣本中的元素被稱為樣本點。
以下是4種抽樣方法:
聚類抽樣:在聚類抽樣方法中,總體將被分為群組或群集。
簡單隨機抽樣:這種抽樣方法僅僅遵循隨機分配。
分層抽樣:在分層抽樣中,數據將分為組或分層。
系統抽樣:根據系統抽樣方法,每隔k個成員,從總體中抽取一個。
當我們在統計中進行假設檢驗時,p值有助于我們確定結果的顯著性。這些假設檢驗僅僅是為了檢驗關于總體假設的有效性。零假設是指假設和樣本沒有顯著性差異,這種差異指抽樣或實驗本身造成的差異。
數據科學是數據驅動的科學,它還涉及自動化科學方法、算法、系統和過程的跨學科領域,以任何形式(結構化或非結構化)從數據中提取信息和知識。此外,它與數據挖掘有相似之處,它們都從數據中抽象出有用的信息。
數據科學包括數理統計以及計算機科學和應用。此外,結合了統計學、可視化、應用數學、計算機科學等各個領域,數據科學將海量數據轉化為洞見。
同樣,統計學是數據科學的主要組成部分之一。統計學是數學商業的一個分支,它包括數據的收集、分析、解釋、組織和展示。
R語言類面試題答案
R是數據分析軟件,主要的服務對象是分析師、量化分析人員、統計學家、數據科學家等。
R提供的函數是:
均值
中位數
分布
協方差
回歸
非線性模型
混合效果
廣義線性模型(GLM)
廣義加性模型(GAM)等等
在R控制臺中輸入命令(“Rcmdr”)將啟動R Commander GUI。
使用R commander導入R中的數據,有三種方法可以輸入數據。
你可以通過Data<- New Data Set 直接輸入數據
從純文本(ASCII)或其他文件(SPSS,Minitab等)導入數據
通過鍵入數據集的名稱或在對話框中選擇數據集來讀取數據集
雖然R可以輕松連接到DBMS,但不是數據庫
R不包含任何圖形用戶界面
雖然它可以連接到Excel / Microsoft Office,但R語言不提供任何數據的電子表格視圖
在R中,在程序的任何地方,你必須在#sign前面加上代碼行,例如:
減法
除法
注意運算順序
要在R中保存數據,有很多方法,但最簡單的方法是:
Data > Active Data Set > Export Active dataset,將出現一個對話框,當單擊確定時,對話框將根據常用的方式保存數據。
你可以通過cor()函數返回相關系數,cov()函數返回協方差。
在R中,t.test()函數用于進行各種t檢驗。t檢驗是統計學中最常見的檢驗,用于確定兩組的均值是否相等。
With()函數類似于SAS中的DATA,它將表達式應用于數據集。
BY()函數將函數應用于因子的每個水平。它類似于SAS中的BY。
R 有如下這些數據結構:
向量
矩陣
數組
數據框
通用的形式是:
Mymatrix< - matrix (vector, ?nrow=r, ?ncol=c , byrow=FALSE, dimnames = list ( char_vector_ rowname, char_vector_colnames)
在R中,缺失值由NA(Not Available)表示,不可能的值由符號NaN(not a number)表示。
為了重新整理數據,R提供了各種方法,轉置是重塑數據集的最簡單的方法。為了轉置矩陣或數據框,可以使用t()函數。
通過一個或多個BY變量,使得折疊R中的數據變得容易。使用aggregate()函數時,BY變量應該在列表中。
機器學習類面試題答案
機器學習是人工智能的一種應用,它為系統提供了自動學習和改進經驗的能力,而無需明確的編程。此外,機器學習側重于開發可以訪問數據并自主學習的程序。
在很多領域,機器人正在取代人類。這是因為編程使得機器人可以基于從傳感器收集的數據來執行任務。他們從數據中學習并智能地運作。
機器學習中不同類型的算法技術如下:
強化學習
監督學習
無監督學習
半監督學習
轉導
元學習
監督學習是一個需要標記訓練集數據的過程,而無監督學習則不需要數據標記。
無監督學習包括如下:
數據聚類
數據的降維表示
探索數據
探索坐標和相關性
識別異常觀測
監督學習包括如下:
分類
回歸
預測時間序列
注釋字符串
樸素貝葉斯的優點:
分類器比判別模型更快收斂
它可以忽略特征之間的相互作用
樸素貝葉斯的缺點是:
不適用連續性特征
它對數據分布做出了非常強的假設
在數據稀缺的情況下不能很好地工作
樸素貝葉斯是如此的不成熟,因為它假設數據集中所有特征同等重要且獨立。
過擬合:統計模型側重于隨機誤差或噪聲而不是探索關系,或模型過于復雜。
回答:
過擬合的一個重要原因和可能性是用于訓練模型的標準與用于判斷模型功效的標準不同。
避免過擬合方式:
大量數據
交叉驗證
五種常用的機器學習算法:
決策樹
概率網絡
最近鄰
支持向量機
機器學習算法的應用案例:
欺詐檢測
人臉識別
自然語言處理
市場細分
文本分類
生物信息學
參數模型是指參數有限且用于預測新數據的模型,你只需知道模型的參數即可。
非參數模型是指參數數量無限的模型,允許更大的靈活性且用于預測新數據,你需要了解模型的參數并熟悉已收集的觀測數據。
在機器學習中構建假設或模型的三個階段是:
模型構建
模型測試
模型應用
歸納邏輯編程(ILP):是機器學習的一個子領域,它使用代表背景知識和案例的邏輯程序。
分類和回歸之間的區別如下:
分類是關于識別類別的組成,而回歸涉及預測因變量。
這兩種技術都與預測相關。
分類預測類別的歸屬,而回歸預測來自連續集的值。
當模型需要返回數據集中的數據點的歸屬類別時,回歸不是首選。
歸納機器學習和演繹機器學習的區別:機器學習模型通過從一組觀察實例中學習,得出一個廣義結論;演繹學習要基于一些已知結論,得出結果。
決策樹的優點是:
決策樹易于理解
非參數
調整的參數相對較少
機器學習領域專注于深受大腦啟發的深度人工神經網絡。Alexey Grigorevich Ivakhnenko將深度學習網絡帶入大眾視野。如今它已應用于各種領域,如計算機視覺、語音識別和自然語言處理。
有研究表明,淺網和深網都可以適應任何功能,但由于深度網絡有幾個不同類型的隱藏層,因此相比于參數更少的淺模型,它們能夠構建或提取更好的特征。
代價函數:神經網絡對于給定訓練樣本和預期輸出的準確度的度量。它是一個值,而非向量,因為它支撐了整個神經網絡的性能。它可以計算如下平均誤差函數:
其中和期望值Y是我們想要最小化的。
梯度下降:一種基本的優化算法,用于學習最小化代價函數的參數值。此外,它是一種迭代算法,它在最陡下降的方向上移動,由梯度的負值定義。我們計算給定參數的成本函數的梯度下降,并通過以下公式更新參數:
其中是參數向量,α 是學習率,J(
)是成本函數。
反向傳播:一種用于多層神經網絡的訓練算法。在此方法中,我們將誤差從網絡末端移動到網絡內的所有權重,從而進行梯度的高效計算。它包括以下幾個步驟:
訓練的前向傳播以產生輸出。
然后可以使用目標值和輸出值誤差導數來計算輸出激活。
然后我們返回傳播以計算前一個輸出激活的誤差導數,并對所有隱藏層繼續此操作。
使用之前計算的輸出和所有隱藏層的導數,我們計算關于權重的誤差導數。
然后更新權重。
隨機梯度下降:我們僅使用單個訓練樣本來計算梯度和更新參數。
批量梯度下降:我們計算整個數據集的梯度,并在每次迭代時進行更新。
小批量梯度下降:它是最流行的優化算法之一。它是隨機梯度下降的變體,但不是單個訓練示例,使用小批量樣本。
小批量梯度下降的好處
與隨機梯度下降相比,這更有效。
通過找到平面最小值來提高泛化性。
小批量有助于估計整個訓練集的梯度,這有助于我們避免局部最小值。
在反向傳播期間要使用數據標準化。數據規范化背后的主要動機是減少或消除數據冗余。在這里,我們重新調整值以適應特定范圍,以實現更好的收斂。
權重初始化:非常重要的步驟之一。糟糕的權重初始化可能會阻止網絡學習,但良好的權重初始化有助于更快的收斂和整體誤差優化。偏差通常可以初始化為零。設置權重的規則應接近于零,而不是太小。
自編碼:一種使用反向傳播原理的自主機器學習算法,其中目標值設置為等于所提供的輸入。在內部有一個隱藏層,用于描述用于表示輸入的代碼。自編碼的一些重要特征:
它是一種類似于主成分分析(PCA)的無監督機器學習算法
最小化與主成分分析相同的目標函數
它是一個神經網絡
神經網絡的目標輸出是其輸入
玻爾茲曼機(Boltzmann Machine):一種問題解決方案的優化方法。玻爾茲曼機的工作基本是為了優化給定問題的權重和數量。關于玻爾茲曼機的一些要點如下:
它使用循環結構。
由隨機神經元組成,其中包括兩種可能的狀態之一,1或0。
其中的神經元處于連通狀態(自由狀態)或斷開狀態(凍結狀態)。
如果我們在離散Hopfield網絡上應用模擬退火,那么它將成為玻爾茲曼機。
激活函數:一種將非線性引入神經網絡的方法,它有助于學習更復雜的函數。沒有它,神經網絡只能學習線性函數。線性函數是輸入數據的線性組合。
-
機器學習
+關注
關注
66文章
8478瀏覽量
133810 -
線性回歸
+關注
關注
0文章
41瀏覽量
4383 -
數據科學
+關注
關注
0文章
168瀏覽量
10340
原文標題:面試官最愛用的統計學、數據科學、機器學習面試題答案
文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
25個機器學習面試題,你都會嗎?
單片機面試常見問題及答案
嵌入式面試常見問題匯總,絕對實用
Microsoft.Net常見問題集錦(DotNet面試題匯
ic設計工程師面試常見問題_20個面試常見問題盤點
電氣二次常見問題有哪些_40個電氣二次常見問題盤點

評論