機(jī)器學(xué)習(xí)方向的企業(yè)面試題昨天我們分享了第一期,今天我們繼續(xù)分享第二期,還是老規(guī)矩喜歡記得收藏分享給小伙伴~~
1.什么是偏差與方差?
泛化誤差可以分解成偏差的平方加上方差加上噪聲。偏差度量了學(xué)習(xí)算法的期望預(yù)測(cè)和真實(shí)結(jié)果的偏離程度,刻畫(huà)了學(xué)習(xí)算法本身的擬合能力,方差度量了同樣大小的訓(xùn)練集的變動(dòng)所導(dǎo)致的學(xué)習(xí)性能的變化,刻畫(huà)了數(shù)據(jù)擾動(dòng)所造成的影響,噪聲表達(dá)了當(dāng)前任務(wù)上任何學(xué)習(xí)算法所能達(dá)到的期望泛化誤差下界,刻畫(huà)了問(wèn)題本身的難度。偏差和方差一般稱(chēng)為bias和variance,一般訓(xùn)練程度越強(qiáng),偏差越小,方差越大,泛化誤差一般在中間有一個(gè)最小值,如果偏差較大,方差較小,此時(shí)一般稱(chēng)為欠擬合,而偏差較小,方差較大稱(chēng)為過(guò)擬合。
2.采用 EM 算法求解的模型有哪些,為什么不用牛頓法或梯度下降法?
用EM算法求解的模型一般有GMM或者協(xié)同過(guò)濾,k-means其實(shí)也屬于EM。EM算法一定會(huì)收斂,但是可能收斂到局部最優(yōu)。由于求和的項(xiàng)數(shù)將隨著隱變量的數(shù)目指數(shù)上升,會(huì)給梯度計(jì)算帶來(lái)麻煩。
3.SVM、LR、決策樹(shù)的對(duì)比?
模型復(fù)雜度:SVM支持核函數(shù),可處理線性非線性問(wèn)題;LR模型簡(jiǎn)單,訓(xùn)練速度快,適合處理線性問(wèn)題;決策樹(shù)容易過(guò)擬合,需要進(jìn)行剪枝
損失函數(shù):SVM hinge loss; LR L2正則化; adaboost 指數(shù)損失
數(shù)據(jù)敏感度:SVM添加容忍度對(duì)outlier不敏感,只關(guān)心支持向量,且需要先做歸一化; LR對(duì)遠(yuǎn)點(diǎn)敏感
數(shù)據(jù)量:數(shù)據(jù)量大就用LR,數(shù)據(jù)量小且特征少就用SVM非線性核
4.GBDT 和隨機(jī)森林的區(qū)別
隨機(jī)森林采用的是bagging的思想,bagging又稱(chēng)為bootstrap aggreagation,通過(guò)在訓(xùn)練樣本集中進(jìn)行有放回的采樣得到多個(gè)采樣集,基于每個(gè)采樣集訓(xùn)練出一個(gè)基學(xué)習(xí)器,再將基學(xué)習(xí)器結(jié)合。
隨機(jī)森林在對(duì)決策樹(shù)進(jìn)行bagging的基礎(chǔ)上,在決策樹(shù)的訓(xùn)練過(guò)程中引入了隨機(jī)屬性選擇。傳統(tǒng)決策樹(shù)在選擇劃分屬性的時(shí)候是在當(dāng)前節(jié)點(diǎn)屬性集合中選擇最優(yōu)屬性,而隨機(jī)森林則是對(duì)結(jié)點(diǎn)先隨機(jī)選擇包含k個(gè)屬性的子集,再選擇最有屬性,k作為一個(gè)參數(shù)控制了隨機(jī)性的引入程度。
另外,GBDT訓(xùn)練是基于Boosting思想,每一迭代中根據(jù)錯(cuò)誤更新樣本權(quán)重,因此是串行生成的序列化方法,而隨機(jī)森林是bagging的思想,因此是并行化方法。
5.xgboost怎么給特征評(píng)分?
在訓(xùn)練的過(guò)程中,通過(guò)Gini指數(shù)選擇分離點(diǎn)的特征,一個(gè)特征被選中的次數(shù)越多,那么該特征評(píng)分越高。
6.什么是OOB?隨機(jī)森林中OOB是如何計(jì)算的,它有什么優(yōu)缺點(diǎn)?
bagging方法中Bootstrap每次約有1/3的樣本不會(huì)出現(xiàn)在Bootstrap所采集的樣本集合中,當(dāng)然也就沒(méi)有參加決策樹(shù)的建立,把這1/3的數(shù)據(jù)稱(chēng)為袋外數(shù)據(jù)oob(out of bag),它可以用于取代測(cè)試集誤差估計(jì)方法。
袋外數(shù)據(jù)(oob)誤差的計(jì)算方法如下:
對(duì)于已經(jīng)生成的隨機(jī)森林,用袋外數(shù)據(jù)測(cè)試其性能,假設(shè)袋外數(shù)據(jù)總數(shù)為O,用這O個(gè)袋外數(shù)據(jù)作為輸入,帶進(jìn)之前已經(jīng)生成的隨機(jī)森林分類(lèi)器,分類(lèi)器會(huì)給出O個(gè)數(shù)據(jù)相應(yīng)的分類(lèi),因?yàn)檫@O條數(shù)據(jù)的類(lèi)型是已知的,則用正確的分類(lèi)與隨機(jī)森林分類(lèi)器的結(jié)果進(jìn)行比較,統(tǒng)計(jì)隨機(jī)森林分類(lèi)器分類(lèi)錯(cuò)誤的數(shù)目,設(shè)為X,則袋外數(shù)據(jù)誤差大小=X/O;這已經(jīng)經(jīng)過(guò)證明是無(wú)偏估計(jì)的,所以在隨機(jī)森林算法中不需要再進(jìn)行交叉驗(yàn)證或者單獨(dú)的測(cè)試集來(lái)獲取測(cè)試集誤差的無(wú)偏估計(jì)。
7.什么是機(jī)器學(xué)習(xí)?
機(jī)器學(xué)習(xí)是為了應(yīng)對(duì)系統(tǒng)程序設(shè)計(jì),屬于計(jì)算機(jī)科學(xué)類(lèi)的學(xué)科,它能根據(jù)經(jīng)驗(yàn)進(jìn)行自動(dòng)學(xué)習(xí)和提高。例如:一個(gè)由程序操縱的機(jī)器人,它能根據(jù)從傳感器搜集到的數(shù)據(jù),完成一系列的任務(wù)和工作。它能根據(jù)數(shù)據(jù)自動(dòng)地學(xué)習(xí)應(yīng)用程序。
8.機(jī)器學(xué)習(xí)與數(shù)據(jù)挖掘的區(qū)別
機(jī)器語(yǔ)言是指在沒(méi)有明確的程序指令的情況下,給予計(jì)算機(jī)學(xué)習(xí)能力,使它能自主的學(xué)習(xí)、設(shè)計(jì)和擴(kuò)展相關(guān)算法。數(shù)據(jù)挖掘則是一種從非結(jié)構(gòu)化數(shù)據(jù)里面提取知識(shí)或者未知的、人們感興趣的圖片。在這個(gè)過(guò)程中應(yīng)用了機(jī)器學(xué)習(xí)算法。
9.什么是機(jī)器學(xué)習(xí)的過(guò)度擬合現(xiàn)象
在機(jī)器學(xué)習(xí)中,當(dāng)一個(gè)統(tǒng)計(jì)模型首先描述隨機(jī)誤差或噪聲,而不是自身的基本關(guān)系時(shí),過(guò)度擬合就會(huì)出現(xiàn)。當(dāng)一個(gè)模型是過(guò)于復(fù)雜,過(guò)擬合通常容易被發(fā)現(xiàn),因?yàn)橄鄬?duì)于訓(xùn)練數(shù)據(jù)類(lèi)型的數(shù)量,參數(shù)的數(shù)量過(guò)于五花八門(mén)。那么這個(gè)模型由于過(guò)度擬合而效果不佳。
10.過(guò)度擬合產(chǎn)生的原因
由于用于訓(xùn)練模型的標(biāo)準(zhǔn)并不等同于判斷模型效率的標(biāo)準(zhǔn),這導(dǎo)致了產(chǎn)生過(guò)度擬合的可能性。
11.如何避免過(guò)度擬合
當(dāng)你使用較小的數(shù)據(jù)集進(jìn)行機(jī)器學(xué)習(xí)時(shí),容易產(chǎn)生過(guò)度擬合,因此使用較大的數(shù)據(jù)量能避免過(guò)度擬合現(xiàn)象。但是,當(dāng)你不得不使用小型數(shù)據(jù)集進(jìn)行建模時(shí),可以使用被稱(chēng)為交叉驗(yàn)證的技術(shù)。在這種方法中數(shù)據(jù)集被分成兩節(jié),測(cè)試和訓(xùn)練數(shù)據(jù)集,測(cè)試數(shù)據(jù)集只測(cè)試模型,而在訓(xùn)練數(shù)據(jù)集中,數(shù)據(jù)點(diǎn)被用來(lái)建模。
在該技術(shù)中,一個(gè)模型通常是被給定有先驗(yàn)知識(shí)的數(shù)據(jù)集(訓(xùn)練數(shù)據(jù)集)進(jìn)行訓(xùn)練,沒(méi)有先驗(yàn)知識(shí)的數(shù)據(jù)集進(jìn)行測(cè)試。交叉驗(yàn)證的思想是:在訓(xùn)練階段,定義一個(gè)數(shù)據(jù)集用來(lái)測(cè)試模型。
12.什么是感應(yīng)式的機(jī)器學(xué)習(xí)?
感應(yīng)機(jī)器學(xué)習(xí)涉及由實(shí)踐進(jìn)行學(xué)習(xí)的過(guò)程,能從一組可觀測(cè)到的例子的嘗試推導(dǎo)出普遍性規(guī)則。
13.什么是機(jī)器學(xué)習(xí)的五個(gè)流行的算法?
1. 決策樹(shù)2. 神經(jīng)網(wǎng)絡(luò)(反向傳播)3. 概率網(wǎng)絡(luò)4.最鄰近法5. 支持向量機(jī)
14.機(jī)器學(xué)習(xí)有哪些不同的算法技術(shù)?
在機(jī)器學(xué)習(xí)不同類(lèi)型的算法技術(shù)是:
15.在機(jī)器學(xué)習(xí)中,建立假設(shè)或者模型的三個(gè)階段指的是什么?
1.建模 2.模型測(cè)試 3.模型應(yīng)用。
16.什么是訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集?
在類(lèi)似于機(jī)器學(xué)習(xí)的各個(gè)信息科學(xué)相關(guān)領(lǐng)域中,一組數(shù)據(jù)被用來(lái)發(fā)現(xiàn)潛在的預(yù)測(cè)關(guān)系,稱(chēng)為“訓(xùn)練數(shù)據(jù)集”。訓(xùn)練數(shù)據(jù)集是提供給學(xué)習(xí)者的案例,而試驗(yàn)數(shù)據(jù)集是用于測(cè)試由學(xué)習(xí)者提出的假設(shè)關(guān)系的準(zhǔn)確度。
17.請(qǐng)列出機(jī)器學(xué)習(xí)的各種方法?
機(jī)器學(xué)習(xí)的各種方法如下:
概念與分類(lèi)學(xué)習(xí)(Concept Vs Classification Learning)。
符號(hào)與統(tǒng)計(jì)學(xué)習(xí)(Symbolic Vs Statistical Learning)。
歸納與分析學(xué)習(xí)(Inductive Vs Analytical Learning)。
18.什么是非監(jiān)督學(xué)習(xí)的功能?
求數(shù)據(jù)的集群
求出數(shù)據(jù)的低維表達(dá)
查找數(shù)據(jù)有趣的方向
有趣的坐標(biāo)和相關(guān)性
發(fā)現(xiàn)顯著的觀測(cè)值和數(shù)據(jù)集清理
19.什么是監(jiān)督學(xué)習(xí)的功能?
分類(lèi)
語(yǔ)音識(shí)別
回歸
時(shí)間序列預(yù)測(cè)
注釋字符串
20.什么是算法獨(dú)立的機(jī)器學(xué)習(xí)?
機(jī)器學(xué)習(xí)在基礎(chǔ)數(shù)學(xué)領(lǐng)域獨(dú)立于任何特定分類(lèi)器或者學(xué)習(xí)算法,被稱(chēng)為算法獨(dú)立的機(jī)器學(xué)習(xí)。
以上就是這一期的Python機(jī)器學(xué)習(xí)面試題介紹了,同學(xué)們?cè)诿嬖囍岸嗫纯匆欢〞?huì)有幫助的,最后如果你對(duì)Python開(kāi)發(fā)感興趣的話不妨來(lái)跟在線老師了解一下我們的Python培訓(xùn)課程。