机器学习——泰坦尼克号乘客生存预测

前言

本文章是我在完成机器学习课程设计写的总结,共计花费五天左右,在kaggle平台上测试,最高的一次准确率为0.78708。

在使用机器学习相关知识去处理某个实际的问题的时候首先就是从需求理解和问题预处理开始,通过异常数据收集、数据整合、数据分析探索,到模型训练和调优,最后进行模型验证评估。

需求理解和问题预处理是整个流程的基础,在本次课程设计中,目标是判断乘客的生还率,怎样基于已有的特征来预测是否生还。

然后就是数据收集,这里我们用了kaggle平台上的数据集。但是这个数据集是不完整的这就需要我们对数据进行预处理和数据清洗。

需要数据进行清洗、整合和探索性分析,寻找数据的规律和特征,为模型的训练提供支持。在这里数据中存在缺失值,缺失值的填充方法有很多:

①如果缺值的样本占总数比例极高,我们可能就直接舍弃了,作为特征加入的话,可能反倒带入noise,影响最后的结果了

②如果缺值的样本适中,而该属性非连续值特征属性(比如说类目属性),那就把NaN作为一个新类别,加到类别特征中

③如果缺值的样本适中,而该属性为连续值特征属性,有时候我们会考虑给定一个step(比如这里的age,我们可以考虑每隔2/3岁为一个步长),然后把它离散化,之后把NaN作为一个type加到属性类目中。

④有些情况下,缺失的值个数并不是特别多,那我们也可以试着根据已有的值,拟合一下数据,补充上。

同时需要将数据进行因子化,这里我还将差值特别大的特征进行归一化,防止因为差值过大导致欠拟合。

接着就是模型构建,这里我选择了逻辑回归、KNN、SVM三种核函数、深度学习等算法,并进行了模型之间的对比,同时还使用了K折交叉验证,利用bagging算法进行模型融合,防止过拟合,输出预测错误的样本来进行模型调节等等。

一、数据集收集

数据集我是直接用kaggle上的数据集,大家可以自行获取。

链接:数据集https://pan.baidu.com/s/1GjQwk9r6MXigFc8Op0xYdw?pwd=peng

提取码:peng

相关推荐
地球资源数据云3 分钟前
中国陆地生态系统主要植物功能特征空间分布数据
大数据·数据库·人工智能·机器学习
donecoding6 分钟前
Corepack 完全解析:从懵到懂,包管理器自由了
前端·node.js·前端工程化
yqcoder9 分钟前
端经典面试题:为什么 0.1 + 0.2 !== 0.3?
前端·css
吠品10 分钟前
高性能JS数组操作:何时选用push、unshift、splice或扩展运算符?
linux·服务器·数据库
ZC跨境爬虫14 分钟前
跟着 MDN 学 HTML day_12:(HTML网页图片嵌入)
前端·javascript·css·ui·html
洛水水17 分钟前
【Redis入门】一篇详解Redis五大数据结构
数据结构·数据库·redis
光影少年20 分钟前
reeact虚拟DOM、Diff算法原理、key的作用与为什么不能用index
前端·react.js·掘金·金石计划
woodykissme22 分钟前
日产汽车花键测绘,为什么总踩坑?
数据库·汽车·齿轮·渐开线花键
fish_xk24 分钟前
Linux中的指令和权限
linux·运维·服务器
暴力求解25 分钟前
Linux---内核态
linux·运维·服务器