Python算法总结(十)// 优点、缺点和参数

本文详细介绍了Python中常见的机器学习算法,包括逻辑回归、决策树、XGBoost、神经网络MLP和SVM。讨论了各算法的优点、缺点,并列举了关键参数,如逻辑回归的penalty和C参数,决策树的criterion和max_depth参数,XGBoost的max_depth和learning_rate参数,以及SVM的kernel和C参数。这些信息对于理解和调优机器学习模型至关重要。

注:本文总结参考《Python机器学习基础教程》及老师课件,感谢作者!

算法一
逻辑回归
算法优点
(1)模型简单、易于理解、计算代价低
算法缺点
(1)容易欠拟合
关键参数
(1)penalty参数,取值“l1”和 “l2”,如果只是为了解决过拟合,采用L2正则化即可;如果进一步希望一些不重要特征的系数归于零,让模型系数稀疏化,则采用L1正则化。
(2)C参数,取值越大,正则化强度越小。
(3)class_weight参数,调和样本不均衡。
(4)multi_class参数,分类方式的选择,在多元分类问题中需要设置。本案例不涉及。
。。。。。。。。。。。。。。。。。。。
算法二
决策树
算法优点
(1)易于理解和解释
(2)能够同时处理数值型和分类型特征
(3)对数据规范性要求低,无需太多的数据预处理步骤
算法缺点
(1)但sklearn中决策树不支持对缺失值的处理
(2)容易过拟合
(3)决策树不稳定
(4)在拟合决策树时要考虑样本不均衡
关键参数
(1)criterion参数,取值“entropy”和’gini’,衡量不纯度指标。
(2)max_depth参数,剪枝参数,控制树的深度。
(3)min_samples_split参数,剪枝参数,分支节点的最小样本量。
(4)min_samples_leaf参数,剪枝参数,叶子节点的最小样本量。
(5)class_weight参数,调和样本不均衡。
。。。。。。。。。。。。。。。。。。。
算法三
XGBoost
因tree booster强大而闻名
算法优点
(1)并行处理,速度快
(2)内置缺失值处理
(3)XGBoost 允许用户定义自定义优化目标和评价标准
(4)正则化
算法缺点

关键参数
(1)max_depth参数,树的最大深度,典型值:3-10。
(2)learning_rate参数,
(3)n_estimators参数,弱学习器的数量
(4)lambda参数,权重的L2正则化项。
(5)alpha参数,权重的L1正则化项。

附参考XGBoost 的参数介绍
。。。。。。。。。。。。。。。。。。。
算法四
神经网络MLP
算法优点
(1)给定足够的计算时间和数据,仔细调节参数,神经网络相对其他机器学习算法表现往往最好。
算法缺点
(1)需要很长的训练时间
(2)MLP在均匀数据上性能最好。如果数据包含不同种类的特征,基于树的模型可能表现更好。
(3)隐层层权重可视化,但难以解释
关键参数
(1)hidden_layer_sizes参数,层数和每层的隐单元个数。每个隐层的结点个数通常与输入特征个数相近。
(2)activation参数,激活函数
参考这里
(3)alpha参数,正则化参数,变化范围非常大,一般从0.0001到1
(4)solver参数,建议使用’adam’和’lbfgs’

。。。。。。。。。。。。。。。。。。。
算法五
SVM
算法优点
(1)不仅适用于线性模型,也能抓住数据和特征之间的非线性关系
(2)不需要担心多重共线性问题,可避免局部极小化问题,提高泛化性能,解决高维问题
(3)异常点引起的偏差较小
算法缺点
(1)计算复杂度高,在面临大数据量时,计算耗时长
关键参数
(1)核函数kernel参数
在这里插入图片描述

  • 线性核函数和多项式核函数在⾮线性数据上表现会浮动。
  • 多项式核函数多被⽤于图像处理之中。
  • sigmoid核函数,很少被用到。
  • rbf⾼斯径向基核函数基本在任何数据集上都表现不错,属于⽐较万能的核函数。

(2)C参数,硬间隔与软间隔
(3)class_weight参数,调和样本不均衡

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值