機器學習(公式推導與代碼實現)–sklearn機器學習庫
- 2022 年 8 月 3 日
- 筆記
- 機器學習(公式推導與代碼實現)
一.scikit-learn概述
1.sklearn模型
sklearn全稱是scikit-learn,它是一個基於Python的機器學習類庫,主要建立在NumPy、Pandas、SciPy和Matplotlib等類庫之上,基本上覆蓋了常見了分類、回歸、聚類、降維、模型選擇和預處理模塊。
2.sklearn源碼
下圖是sklearn在GitHub上的源代碼,編程語言主要包括:91.4%的Python,6.5%的Cython,1.3%的C++和0.8%的Other。如下所示:
二.模型選擇和預處理
1.模型選擇
解析:網格搜索,交叉驗證
2.預處理
解析:評估指標,數據預處理
三.有監督學習模型
可以將有監督模型分為生成式模型和判別式模型,常見的生成式模型包括樸素貝葉斯、HMM和隱含狄利克雷分配(LDA),其它的基本都是判別式模型。
1.線性模型
解析:線性回歸,對數幾率回歸,LASSO回歸,Ridge回歸,線性判別分析(LDA)
2.\({k}\)近鄰
3.決策樹
解析:ID3,C4.5,CART
4.神經網絡
解析:感知機,神經網絡
5.支持向量機
解析:線性可分,近似線性可分,線性不可分
6.集成模型
(1)Boosting
解析:AdaBoost,GBDT,XGBoost,LightGBM,CatBoost
(2)Bagging
解析:隨機森林
四.無監督學習模型
1.聚類
解析:\(k\)均值聚類,層次聚類,譜聚類
2.降維
解析:主成分分析(PCA),奇異值分解(SVD)
五.概率模型
1.最大信息熵模型
2.貝葉斯概率模型
解析:樸素貝葉斯,貝葉斯網絡
3.期望最大化(EM)算法
4.概率圖模型
解析:隱馬爾科夫模型(HMM),條件隨機場(CRF)
5.馬爾可夫鏈蒙特卡洛(MCMC)
參考文獻:
[1]scikit-learn://scikit-learn.org/stable/
[2]scikit-learn(sklearn)官方文檔中文版://sklearn.apachecn.org/#/?id=scikit-learn-sklearn-官方文檔中文版
[3]scikit-learn安裝://scikit-learn.org/stable/install.html
[4]scikit-learn用戶指南://scikit-learn.org/stable/user_guide.html
[5]scikit-learn API參考://scikit-learn.org/stable/modules/classes.html
[6]scikit-learn例子://scikit-learn.org/stable/auto_examples/index.html
[7]scikit-learn博客://blog.scikit-learn.org/
[8]scikit-learn教程://scikit-learn.org/stable/tutorial/index.html
[9]scikit-learn FAQ://scikit-learn.org/stable/faq.html
[10]scikit-learn GitHub://github.com/scikit-learn/scikit-learn
[11]scikit-learn不同版本文檔://scikit-learn.org/dev/versions.html
[12]scikit-learn wiki://github.com/scikit-learn/scikit-learn/wiki
[13]scikit-learn版本更新日誌://scikit-learn.org/stable/whats_new/v1.1.html
[14]scikit-learn開發指南://scikit-learn.org/dev/developers/index.html
[15]scikit-learn相關類庫://scikit-learn.org/stable/related_projects.html
[16]Hugging Face://huggingface.co/
[17]《機器學習:公式推導與代碼實現》