【机器学习】机器学习基础知识常见问题详解!
作者:胡聯粵,Datawhale面經小組
Q1
?板給了你?個關于癌癥檢測的數據集,你構建了?分類器然后計算了準確率為 98%, 你是否對這個模型滿意?為什么?如果還不算理想,接下來該怎么做?
首先模型主要是找出患有癌癥的患者,模型關注的實際是壞樣本。其次一般來說癌癥的數據集中壞樣本比較少,正負樣本不平衡。
準確率指的是分類正確的樣本占總樣本個數的比率
其中為正確分類樣本的個數,為總樣本分類的個數。
當好樣本(未患病)的樣本數占99%時,模型把所有的樣本全部預測為好樣本也可以獲得99%的準確率,所以當正負樣本非常不平衡時,準確率往往會偏向占比大的類別,因此這個模型使用準確率作為模型的評估方式并不合適。
鑒于模型關注的實際是壞樣本,建議使用召回率(Recall)作為模型的評估函數。
Recall 是分類器所預測正確的正樣本占所有正樣本的比例,取值范圍為[0,1],取值越大,模型預測能力越好。
其次,使用類別不平衡的解決方案:
常見的處理數據不平衡的方法有:重采樣、Tomek links、SMOTE、NearMiss等
除此之外:還可以使用模型處理:使用多種樹模型算法,使用多種重采樣的訓練集,對少數樣本預測錯誤增大懲罰,避免使用Accuracy,可以用confusion matrix,precision,recall,f1-score,AUC,ROC等指標。
Q2
怎么判斷?個訓練好的模型是否過擬合?如果判斷成了過擬合,那通過什么辦法 可以解決過擬合問題?
模型在驗證集合上和訓練集合上表現都很好,而在測試集合上變現很差。
解決過擬合的辦法:
特征降維
添加正則化,降低模型的復雜度
Dropout
Early stopping
交叉驗證
決策樹剪枝
選擇合適的網絡結構
Q3
對于線性回歸,我們可以使? Closed-Form Solution, 因為可以直接把導數設置 為 0,并求出參數。在這個 Closed-Form ?涉及到了求逆矩陣的過程,什么時候不能求出其逆矩陣?這時候如何處理?
什么是閉式解(Closed-Form Solution)?
解析解(Analytical solution) 就是根據嚴格的公式推導,給出任意的自變量就可以求出其因變量,也就是問題的解,然后可以利用這些公式計算相應的問題。所謂的解析解是一種包含分式、三角函數、指數、對數甚至無限級數等基本函數的解的形式。用來求得解析解的方法稱為解析法(Analytical techniques),解析法即是常見的微積分技巧,例如分離變量法等。解析解是一個封閉形式(Closed-form) 的函數,因此對任一自變量,我們皆可將其帶入解析函數求得正確的因變量。因此,解析解也被稱為封閉解(Closed-form solution)。
數值解(Numerical solution) 是采用某種計算方法,如有限元法, 數值逼近法,插值法等得到的解。別人只能利用數值計算的結果,而不能隨意給出自變量并求出計算值。當無法藉由微積分技巧求得解析解時,這時便只能利用數值分析的方式來求得其數值解了。在數值分析的過程中,首先會將原方程加以簡化,以利于后來的數值分析。例如,會先將微分符號改為差分(微分的離散形式)符號等,然后再用傳統的代數方法將原方程改寫成另一種方便求解的形式。這時的求解步驟就是將一自變量帶入,求得因變量的近似解,因此利用此方法所求得的因變量為一個個離散的數值,不像解析解為一連續的分布,而且因為經過上述簡化的操作,其正確性也不如解析法可靠。
簡而言之,解析解就是給出解的具體函數形式,從解的表達式中就可以算出任何對應值;數值解就是用數值方法求出近似解,給出一系列對應的自變量和解。
參考:https://blog.csdn.net/weicao1990/article/details/90742414
什么時候不能求出其逆矩陣?
滿秩矩陣或者方陣才有逆矩陣,當一個矩陣不滿秩,在對角線上存在為0的特征值,求逆的時候無法計算從而不可逆,那我們給它加上一個單位矩陣,這樣它就不為0了,
求解的時候加上單位矩陣其實就是對線性回歸引入正則化的過程
參考:https://zhuanlan.zhihu.com/p/44612139
Q4
關于正則,我們?般采? L2 或者 L1, 這兩個正則之間有什么區別?什么時候需要? L2, 什么時候需要? L1?
L1正則化(也叫Lasso回歸)是在目標函數中加上與系數的絕對值相關的項,而L2正則化(也叫嶺回歸)則是在目標函數中加上與系數的平方相關的項。
Lasso 和嶺回歸系數估計是由橢圓和約束函數域的第一個交點給出的。因為嶺回歸的約束函數域沒有尖角,所以這個交點一般不會產生在一個坐標軸上,也就是說嶺回歸的系數估計全都是非零的。然而,Lasso 約束函數域在每個軸上都有尖角,因此橢圓經常和約束函數域相交。發生這種情況時,其中一個系數就會等于 0。
L2正則化會使參數的絕對值變小,增強模型的穩定性(不會因為數據變化而產生很大的震蕩);而L1正則化會使一些參數為零,可以實現特征稀疏, 增強模型解釋性。
參考:https://blog.csdn.net/zouxy09/article/details/24971995/
Q5
正則項是否是凸函數?請給出證明過程。
相關概念:凸集,凸函數
因此證明正則項是否是凸函數,需要證明:
1. ?在 上二階連續可微
2.的Hessian(海塞)矩陣在 上是半正定
3.半正定矩陣的判定定理之一:若實對稱矩陣的所有順序主子式均為非負,則該矩陣為半 正定矩陣。
參考:https://www.bilibili.com/video/BV1Mh411e7VU?p=2
Q6
什么叫 ElasticNet? 它主要?來解決什么問題?具體如何去優化?
彈性回歸是嶺回歸和lasso回歸的混合技術,它同時使用 L2 和 L1 正則化。當有多個相關的特征時,彈性網絡是有用的。lasso回歸很可能隨機選擇其中一個,而彈性回歸很可能都會選擇。
在高度相關變量的情況下,它支持群體效應。
它對所選變量的數目沒有限制
它具有兩個收縮因子 λ1 和 λ2。
參考:https://www.zhihu.com/search?type=content&q=ElasticNet
Q7
什么叫?成模型,什么叫判別模型?樸素?貝葉斯,邏輯回歸,HMM,語?模型 中哪?個是?成模型,哪?個是判別模型?
生成模型(Generaive Model)一般以概率的方式描述了數據的產生方式,通過對模型采樣就可以產生數據。
判別模型(Discriminative Model)對數據之間的映射關系建模,而不考慮數據本身是如何生成的。判別模型可以根據給定的數據x預測對應的y(回歸),或根據不同的映射結果y來區分(discriminate)給定的數據x (分類)。但模型自身并不能產生數據x 。
生成模型對數據本身建模,更基礎。判別模型只考慮輸入和輸出之間的關系,更直接地面向問題。如果希望用生成模型完成判定模型的任務,一般需要額外的步驟。
_ | 優點 | 缺點 | 代表算法 |
生 成 式 模 型 | 1. ?由于統計了數據的分布情況,所以其實際帶的信息要比判別模型豐富,對于研究單類問題來說也比判別模型靈活性強; | 1. 學習和計算過程比較復雜,由于學習了更多的樣本信息,所以計算量大,如果我們只是做分類,就浪費了這部分的計算量; | 樸素貝葉斯、貝葉斯網絡、隱馬爾可夫模型、隱馬爾可夫模型 |
判 別 式 模 型 | 1. 由于關注的是數據的邊界,所以能清晰的分辨出多類或某一類與其他類之間的差異,所以準確率相對較高; | 1. 不能反映訓練數據本身的特性; | k 近鄰法、決策樹、邏輯斯諦回歸模型、最大熵模型、支持向量機、條件隨機場 |
參考:https://cloud.tencent.com/developer/article/1544597;https://www.zhihu.com/question/22374366/answer/155544744
本文來自Datawhale面經項目開源地址:
https://github.com/datawhalechina/Daily-interview
長按關注Datawhale,更多開源內容一起學習成長↓
往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統計學習方法》的代碼復現專輯 AI基礎下載黃海廣老師《機器學習課程》視頻課黃海廣老師《機器學習課程》711頁完整版課件本站qq群851320808,加入微信群請掃碼:
總結
以上是生活随笔為你收集整理的【机器学习】机器学习基础知识常见问题详解!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 多路RTSP-RTMP转RTMP定制版
- 下一篇: Windows平台RTMP/RTSP播放