Python机器学习(sklearn)——分类模型评估与调参总结(上)

简介: Python机器学习(sklearn)——分类模型评估与调参总结

1.如果只划分测试集和训练集 经验是75%作为训练集
sklearn中的train_test_split()默认这样划分
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split()

2.通常使用sklearn中的score方法计算结果的精度(正确预测比例)

3.KNN算法有两个重要参数:邻居个数和数据点之间距离的度量方法
在实践中,选择较小的邻居个数(例如3或5个)效果较好,sklearn中默认使用欧氏距离
构建KNN模型速度很快,若训练集很大(特征数多或样本数多),预测速度可能较慢
对于稀疏数据集(大多数特征值为0),KNN效果很不好

4.普通最小二乘法,即要求预测值和真实值均方误差最小
均方误差为预测值和真实值只差的平方和除以样本数

5.训练集和测试集之间的分数差异是过拟合的明显标志
例如,训练集0.95 测试集0.61

6.线性回归防止过拟合可以采用岭回归(L2正则化)
from sklearn,linear_model import Ridge
ridge = Ridge().fit(X_train,y_train)
线性回归中的score为R^2
岭回归的结果,训练集分数可能低于线性回归,但测试集分数一般高于线性回归
默认岭回归的alpha = 1.0
岭回归惩罚了系数的L2范数或w的欧式长度
增大alpha会使得各个系数wi更加趋向0,从而提高泛化性能
可以比较alpha为10 和 0.1的scores
当岭回归alpha = 0时,即线性回归

7.学习曲线:回归问题中,横轴为训练集大小,纵轴为score(R^2),绘制训练集和测试集曲线

8.如果有足够多的数据,正则化就不太重要了

9.线性回归防止过拟合可以采用Lasso回归(L1正则化)
因为Lasso会使得部分特征的系数(w)为0,所以相当于做特征筛选
只呈现重要的特征
from sklearn,linear_model import Lasso
ridge = Lasso().fit(X_train,y_train)
默认的alpha = 1
可能会欠拟合(训练集和测试集的score都不高)
我们此时应该减小alpha,增大max_iter(运行迭代的最大次数)
from sklearn,linear_model import Lasso
ridge = Lasso(alpha = 0.1,max_iter = 100000).fit(X_train,y_train)
如果alpha太小,则可能过拟合,即与线性回归效果相似

10.Lasso回归和岭回归一般会首选后者
如果特征很多,认为只有几个是重要的,则选择Lasso
如果为了模型的可解释性,选择Lasso(因为类似特征选择)

11.sklearn中逻辑回归和线性支持向量机都默认使用L2正则化
若换为L1正则化:
LogisticRegression(penalty = "l1").fit(X_train,y_train)
使用参数C表示正则化强度,C越小,正则化越强。
默认C=1
LogisticRegression(C=100).fit(X_train,y_train)
有时训练集测试集分数都很高,但是分数接近,可能是欠拟合
此时增大C,使正则化减弱看看结果分数

12.线性模型训练速度非常快,预测速度也很快,适合在大数据集上使用,也适合稀疏数据

13.朴素贝叶斯分类器速度更快(相比于线性分类器逻辑斯特回归和线性支持向量机)
但是其泛化能力比线性分类器差

14.sklearn中提供三种朴素贝叶斯分类器
GaussianNB课用于任意连续数据
BernoulliNB假定输入数据为二分类数据
MultinomialNB假定输入的数据为计数数据(即每个特征代表某个对象的整数计数,比如一个单词在句中出现的次数)
后两个主要用于文本分类

15.决策树也可用于回归任务,预测时基于每个节点的测试对树进行遍历,最终找到新数据点所属的叶节点
这一数据点的输出即为此叶节点中所有训练点的平均目标值。

16.决策树可以采用预剪枝和后剪枝来防止过拟合
sklearn中只实现了预剪枝
预剪枝限制条件可以包括
限制树的最大深度
限制叶节点的最大数目
规定一个节点中数据点的最小数目防止继续划分

17.决策树graphviz可视化图中的samples给出该节点中的样本数
values给出每个类别的样本数

18.特征重要性指标可以看决策树的特征重要性,每个特征值介于0和1之间
tree.feature_importance_
且加和为1
0表示特征没用到
1表示完美预测目标值

19.决策树回归不能外推,也不能在训练数据范围之外进行预测

20.决策树优点:
(1)较小的树模型可视化容易,容易解释理解
(2)算法不受数据缩放影响(因为每个特征单独处理),特征不需要预处理(归一化 标准化)
特别是特征尺度大小相差大或者二元特征和连续特征同时存在时
决策树缺点:
既使预剪枝,也经常过拟合,泛化能力差,所以大多数情况采用集成模型代替单棵决策树。

原文发布时间为:2018-07-20
本文作者:王大伟
本文来自云栖社区合作伙伴“Python爱好者社区”,了解相关信息可以关注“Python爱好者社区

目录
打赏
0
0
0
0
73529
分享
相关文章
特征时序化建模:基于特征缓慢变化维度历史追踪的机器学习模型性能优化方法
本文探讨了数据基础设施设计中常见的一个问题:数据仓库或数据湖仓中的表格缺乏构建高性能机器学习模型所需的历史记录,导致模型性能受限。为解决这一问题,文章介绍了缓慢变化维度(SCD)技术,特别是Type II类型的应用。通过SCD,可以有效追踪维度表的历史变更,确保模型训练数据包含完整的时序信息,从而提升预测准确性。文章还从数据工程师、数据科学家和产品经理的不同视角提供了实施建议,强调历史数据追踪对提升模型性能和业务洞察的重要性,并建议采用渐进式策略逐步引入SCD设计模式。
159 8
特征时序化建模:基于特征缓慢变化维度历史追踪的机器学习模型性能优化方法
PAI Model Gallery 支持云上一键部署 DeepSeek-V3、DeepSeek-R1 系列模型
DeepSeek 系列模型以其卓越性能在全球范围内备受瞩目,多次评测中表现优异,性能接近甚至超越国际顶尖闭源模型(如OpenAI的GPT-4、Claude-3.5-Sonnet等)。企业用户和开发者可使用 PAI 平台一键部署 DeepSeek 系列模型,实现 DeepSeek 系列模型与现有业务的高效融合。
云上一键部署通义千问 QwQ-32B 模型,阿里云 PAI 最佳实践
3月6日阿里云发布并开源了全新推理模型通义千问 QwQ-32B,在一系列权威基准测试中,千问QwQ-32B模型表现异常出色,几乎完全超越了OpenAI-o1-mini,性能比肩Deepseek-R1,且部署成本大幅降低。并集成了与智能体 Agent 相关的能力,够在使用工具的同时进行批判性思考,并根据环境反馈调整推理过程。阿里云人工智能平台 PAI-Model Gallery 现已经支持一键部署 QwQ-32B,本实践带您部署体验专属 QwQ-32B模型服务。
DistilQwen2.5蒸馏小模型在PAI-ModelGallery的训练、评测、压缩及部署实践
DistilQwen2.5 是阿里云人工智能平台 PAI 推出的全新蒸馏大语言模型系列。通过黑盒化和白盒化蒸馏结合的自研蒸馏链路,DistilQwen2.5各个尺寸的模型在多个基准测试数据集上比原始 Qwen2.5 模型有明显效果提升。这一系列模型在移动设备、边缘计算等资源受限的环境中具有更高的性能,在较小参数规模下,显著降低了所需的计算资源和推理时长。阿里云的人工智能平台 PAI,作为一站式的机器学习和深度学习平台,对 DistilQwen2.5 模型系列提供了全面的技术支持。本文详细介绍在 PAI 平台使用 DistilQwen2.5 蒸馏小模型的全链路最佳实践。
基于机器学习的数据分析:PLC采集的生产数据预测设备故障模型
本文介绍如何利用Python和Scikit-learn构建基于PLC数据的设备故障预测模型。通过实时采集温度、振动、电流等参数,进行数据预处理和特征提取,选择合适的机器学习模型(如随机森林、XGBoost),并优化模型性能。文章还分享了边缘计算部署方案及常见问题排查,强调模型预测应结合定期维护,确保系统稳定运行。
81 0
云上一键部署 DeepSeek-V3 模型,阿里云 PAI-Model Gallery 最佳实践
本文介绍了如何在阿里云 PAI 平台上一键部署 DeepSeek-V3 模型,通过这一过程,用户能够轻松地利用 DeepSeek-V3 模型进行实时交互和 API 推理,从而加速 AI 应用的开发和部署。
机器学习算法的优化与改进:提升模型性能的策略与方法
机器学习算法的优化与改进:提升模型性能的策略与方法
504 13
机器学习算法的优化与改进:提升模型性能的策略与方法
FastAPI + ONNX 部署机器学习模型最佳实践
本文介绍了如何结合FastAPI和ONNX实现机器学习模型的高效部署。面对模型兼容性、性能瓶颈、服务稳定性和安全性等挑战,FastAPI与ONNX提供了高性能、易于开发维护、跨框架支持和活跃社区的优势。通过将模型转换为ONNX格式、构建FastAPI应用、进行性能优化及考虑安全性,可以简化部署流程,提升推理性能,确保服务的可靠性与安全性。最后,以手写数字识别模型为例,展示了完整的部署过程,帮助读者更好地理解和应用这些技术。
147 20
全网首发 | PAI Model Gallery一键部署阶跃星辰Step-Video-T2V、Step-Audio-Chat模型
Step-Video-T2V 是一个最先进的 (SoTA) 文本转视频预训练模型,具有 300 亿个参数,能够生成高达 204 帧的视频;Step-Audio 则是行业内首个产品级的开源语音交互模型,通过结合 130B 参数的大语言模型,语音识别模型与语音合成模型,实现了端到端的文本、语音对话生成,能和用户自然地进行高质量对话。PAI Model Gallery 已支持阶跃星辰最新发布的 Step-Video-T2V 文生视频模型与 Step-Audio-Chat 大语言模型的一键部署,本文将详细介绍具体操作步骤。
多元线性回归:机器学习中的经典模型探讨
多元线性回归是统计学和机器学习中广泛应用的回归分析方法,通过分析多个自变量与因变量之间的关系,帮助理解和预测数据行为。本文深入探讨其理论背景、数学原理、模型构建及实际应用,涵盖房价预测、销售预测和医疗研究等领域。文章还讨论了多重共线性、过拟合等挑战,并展望了未来发展方向,如模型压缩与高效推理、跨模态学习和自监督学习。通过理解这些内容,读者可以更好地运用多元线性回归解决实际问题。

热门文章

最新文章