机器学习(公式推导与代码实现)--sklearn机器学习库
阅读原文时间:2023年07月09日阅读:3

一.scikit-learn概述

  sklearn全称是scikit-learn,它是一个基于Python的机器学习类库,主要建立在NumPy、Pandas、SciPy和Matplotlib等类库之上,基本上覆盖了常见了分类、回归、聚类、降维、模型选择和预处理模块。

下图是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:https://scikit-learn.org/stable/

[2]scikit-learn(sklearn)官方文档中文版:https://sklearn.apachecn.org/#/?id=scikit-learn-sklearn-官方文档中文版

[3]scikit-learn安装:https://scikit-learn.org/stable/install.html

[4]scikit-learn用户指南:https://scikit-learn.org/stable/user_guide.html

[5]scikit-learn API参考:https://scikit-learn.org/stable/modules/classes.html

[6]scikit-learn例子:https://scikit-learn.org/stable/auto_examples/index.html

[7]scikit-learn博客:https://blog.scikit-learn.org/

[8]scikit-learn教程:https://scikit-learn.org/stable/tutorial/index.html

[9]scikit-learn FAQ:https://scikit-learn.org/stable/faq.html

[10]scikit-learn GitHub:https://github.com/scikit-learn/scikit-learn

[11]scikit-learn不同版本文档:https://scikit-learn.org/dev/versions.html

[12]scikit-learn wiki:https://github.com/scikit-learn/scikit-learn/wiki

[13]scikit-learn版本更新日志:https://scikit-learn.org/stable/whats_new/v1.1.html

[14]scikit-learn开发指南:https://scikit-learn.org/dev/developers/index.html

[15]scikit-learn相关类库:https://scikit-learn.org/stable/related_projects.html

[16]Hugging Face:https://huggingface.co/

[17]《机器学习:公式推导与代码实现》