机器学习算法竞赛实战--2,问题建模

简介: 我们可以将数据理解分为两个部分,分别是数据基础层和数据描述层当然在问题建模阶段,并不需要对数据有特别深的理解,只需要做基本的分析即可在后面的数据探索阶段,再深入理解数据,从数据中发现关键信息

当参赛者拿到竞赛题目的时候,首先应该考虑的事情就是问题建模,同时完成基线模型的管道搭建,从而能够第一时间获得结果上的反馈帮助后续工作的进行,此外,竞赛的存在都依赖于真实的业务场景和复杂的数据参赛者通常对此会有很多想法,但是线上的提交结果验证的次数往往有限因此合理的切分训练集和验证集以及构建可信的线下验证就变得十分重要。这也是保障模型具有泛化性的基础。


竞赛中的问题建模主要可以分为赛题理解,样本选择,线下评估策略三个部分


一,赛题理解


1,赛题理解


赛题理解其实是从直观上梳理问题,分析问题可解的方法赛题背景,赛题的主要痛点赛题理解的这一部分工作会成为竞赛的重要组成部分和先决条件,通过对赛题的理解,对真实业务的分析我们可以用自身的先验知识进行初步分析,很好的为接下来的部分做出铺垫


2,数据理解:


我们可以将数据理解分为两个部分,分别是数据基础层和数据描述层当然在问题建模阶段,并不需要对数据有特别深的理解,只需要做基本的分析即可在后面的数据探索阶段,再深入理解数据,从数据中发现关键信息


3,评价指标(分类和回归)


db45ba15d24d456e9b3c03c747c87748.png

96b119e12ea94bc290385ee6ef75baf5.png

f728752823004affb54cfe048a5c3cd7.png


在实际的数据集中,经常会出现正负样本不均衡的现象,即负样本比正样本多很多,或者相反而且测试集中正负样本的分布也可能随着时间roc曲线有一个很好的特质,那就是在这种情况下他依然能够保持不变不过roc曲线在竞赛中倒是不常见,反而auc曲线可以说是我们的老朋友,分类问题中经常出现


在互联网的搜索、推荐和广告的排序业务中,AUC是一个极其常见的评价指标。它定义为ROC曲线下的面积,因为ROC曲线一般都处于y=x 这条直线的上方,所以取值范围在0.5和1之间。之所以使用AUC作为评价指标,是因为ROC曲线在很多时候并不能清晰地说明哪个分类器的效果更好,而AUC作为一个数值, 其值越大就代表分类器的效果越好。值得一提的是AUC的排序特性。相对于准确率、召回率等指标,AUC 指标本身和模型预测的概率绝对值无关,它只关注样本间的排序效果,因此特别适合用作排序相关问题建模的评价指标。AUC 是一个概率值,我们随机挑选一个正样本和一个负样本,由当前的分类算法根据计算出的分数将这个正样本排在负样本前面的概率就是AUC值。所以,AUC值越大,当前的分类算法就越有可能将正样本排在负样本值前面,即能够更好地分类。


ae2b094045e5495792a68c92ab0cd859.png


对数损失主要是评价模型预测的根率是否足够准确)它更关注和观察数据的吻合程度,而AUC评价的则是模型把正样本排到前面的能力。由于两个指标评价的侧重点不一样,因此参赛著考虑的问题不同,所选择的评价指标就会不同。对于广告CTR预估问题,如果考虑广告排序效果,武可以选择AUC这样也不会受到极端值的影响。此外,对数损失反映了平均偏差,更偏向于将样本数量多的那类划分准确。


平均绝对误差虽然解决了残差加和的正负底下问题能较好的衡量回归模型的好坏,但是绝对值得存在导致函数不光滑,在某些点上不能求导,即平均绝对误差不是,二阶连续可微的,同时二阶导数总为0


即使是在实际的竞赛当中,主办方提供的数据也有可能存在令参赛者们十分头疼的质量问题。这无疑会对最终预测结果造成很大的影响,因此需要考虑如何选择出合适的样本数据进行训练那么如何才能够选择出合适的样本呢?在回答这个问题之前,先来看看影响结果的具体原因又是什么,这里总结出四个主要原因:分别是数据集过大严重影响了模型的性能,噪声和异常数据导致准确率不够高,样本数据冗余或不相关数据没有给模型带来收益,以及正负样本分布不均衡导致数据存在倾斜。


思考练习:


ca0b506dc6404196a5bd10870a6bc88d.png


(2条消息) 机器学习中的评估指标与损失函数_Yasin_的博客-CSDN博客_余弦相似度 损失函数

https://blog.csdn.net/Yasin0/article/details/94435677

机器学习中的 7 大损失函数实战总结(附Python演练) - 知乎 (zhihu.com)

https://zhuanlan.zhihu.com/p/80370381

【深度学习】一文读懂机器学习常用损失函数(Loss Function) - 腾讯云开发者社区-腾讯云 (tencent.com)

https://cloud.tencent.com/developer/article/1165263

机器学习——损失函数(loss)与评价指标(metric)的区别? - 知乎 (zhihu.com)

https://zhuanlan.zhihu.com/p/373032887

损失函数VS评估指标 - 快到皖里来 - 博客园 (cnblogs.com)

https://www.cnblogs.com/pythonfl/p/13705143.html

机器学习样本分类不平衡问题解决思路 - 知乎 (zhihu.com)

https://zhuanlan.zhihu.com/p/84322912

数据集样本类别不均衡时,训练测试集应该如何做? - 知乎 (zhihu.com)

https://www.zhihu.com/question/373862904

「交叉验证」到底如何选择K值? - 知乎 (zhihu.com)

https://zhuanlan.zhihu.com/p/31924220

交叉验证和超参数调整:如何优化你的机器学习模型 - 知乎 (zhihu.com)

https://zhuanlan.zhihu.com/p/184608795

(2条消息) k折交叉验证优缺点_【机器学习】训练集,验证集,测试集;验证和交叉验证..._呼呼啦啦就瘸了的博客-CSDN博客

https://blog.csdn.net/weixin_35988311/article/details/112540577

你真的了解交叉验证和过拟合吗? - Solong1989 - 博客园 (cnblogs.com)

https://www.cnblogs.com/solong1989/p/9415606.html

分类与回归(如何把分类问题转化为回归问题解决)_matrix_studio的博客-CSDN博客_将分类网络改为回归网络

https://blog.csdn.net/matrix_studio/article/details/121100472

目录
相关文章
|
6天前
|
机器学习/深度学习 数据采集 自然语言处理
理解并应用机器学习算法:神经网络深度解析
【5月更文挑战第15天】本文深入解析了神经网络的基本原理和关键组成,包括神经元、层、权重、偏置及损失函数。介绍了神经网络在图像识别、NLP等领域的应用,并涵盖了从数据预处理、选择网络结构到训练与评估的实践流程。理解并掌握这些知识,有助于更好地运用神经网络解决实际问题。随着技术发展,神经网络未来潜力无限。
|
3天前
|
机器学习/深度学习 算法 数据处理
探索机器学习中的决策树算法
【5月更文挑战第18天】探索机器学习中的决策树算法,一种基于树形结构的监督学习,常用于分类和回归。算法通过递归划分数据,选择最优特征以提高子集纯净度。优点包括直观、高效、健壮和可解释,但易过拟合、对连续数据处理不佳且不稳定。广泛应用于信贷风险评估、医疗诊断和商品推荐等领域。优化方法包括集成学习、特征工程、剪枝策略和参数调优。
|
4天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】K-means算法与PCA算法之间有什么联系?
【5月更文挑战第15天】【机器学习】K-means算法与PCA算法之间有什么联系?
|
4天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】维度灾难问题会如何影响K-means算法?
【5月更文挑战第15天】【机器学习】维度灾难问题会如何影响K-means算法?
|
5天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
【5月更文挑战第14天】【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
|
5天前
|
机器学习/深度学习 运维 算法
【机器学习】可以利用K-means算法找到数据中的离群值吗?
【5月更文挑战第14天】【机器学习】可以利用K-means算法找到数据中的离群值吗?
|
6天前
|
机器学习/深度学习 分布式计算 并行计算
【机器学习】怎样在非常大的数据集上执行K-means算法?
【5月更文挑战第13天】【机器学习】怎样在非常大的数据集上执行K-means算法?
|
6天前
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
|
6天前
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
|
6天前
|
机器学习/深度学习 算法 数据可视化
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
34 1