sklearn学习总结(超全⾯)
前⾔
sklearn想必不⽤我多介绍了,⼀句话,她是机器学习领域中最知名的python模块之⼀,若想要在机器学习领域有⼀番建树,必绕不开sklearn
⾸先,放上⼀张官⽹上的sklearn的结构图:
⽬录
1. 分类、回归2. 降维
3. 模型评估与选择4. 数据预处理
⼤类 ⼩类 适⽤问题 实现 说明分类、回归
1.1 ⼴义线性模型 1.1.1 普通最⼩⼆乘法 回归 sklearn.linear_model.LinearRegression
注:本节中所有的回归模型皆为线性回归模型 1.1.2 Ridge/岭回归 回归 sklearn.linear_model.Ridge 解决两类回归问题:⼀是样本少于变量个数⼆是变量间存在共线性
1.1.3 Lasso 回归 sklearn.linear_model.Lasso 适合特征较少的数据
1.1.4 Multi-task Lasso 回归 sklearn.linear_model.MultiTaskLasso y值不是⼀元的回归问题1.1.5 Elastic Net 回归 sklearn.linear_model.ElasticNet 结合了Ridge和Lasso
1.1.6 Multi-task Elastic Net 回归 sklearn.linear_model.MultiTaskElasticNet y值不是⼀元的回归问题1.1.7 Least Angle Regression(LARS) 回归 sklearn.linear_model.Lars 适合⾼维数据1.1.8 LARS Lasso 回归 sklearn.linear_model.LassoLars (1)适合⾼维数据使⽤(2)LARS算法实现的lasso模型
1.1.9 Orthogonal Matching Pursuit (OMP) 回归 sklearn.linear_model.OrthogonalMatchingPursuit 基于贪⼼算法实现1.1.10 贝叶斯回归 回归 sklearn.linear_model.BayesianRidge
sklearn.linear_model.ARDRegression 优点: (1)适⽤于⼿边数据(2)可⽤于在估计过程中包含正规化参数 缺点:耗时
1.1.11 Logistic regression 分类 sklearn.linear_model.LogisticRegression 1.1.12 SGD(随机梯度下降法) 分类
/回归 sklearn.linear_model.SGDClassifier
sklearn.linear_model.SGDRegressor 适⽤于⼤规模数据
1.1.13 Perceptron 分类 sklearn.linear_model.Perceptron 适⽤于⼤规模数据1.1.14 Passive Aggressive Algorithms 分类/回归 sklearn.linear_model.PassiveAggressiveClassifier