学习记录:机器学习案例——泰坦尼克号生存预测(一)逻辑回归和随机森林

友情提示:由于笔记是实时记载,可能中途有问题又退回去,但笔记仍继续写,本文不是教程,只是个人笔记,从开始到成功的过程一一记录,如何解决问题。感兴趣可以参考,直接越过失败的部分就可以了。

2026年4月7日

加州房价预测与波士顿房价预测2个线性回归机器学习例子已经完成。接下来继续学习机器学习的其他模型,先学习分类问题。以泰坦尼克号为例,学习核心算法:逻辑回归、随机森林。房价预测那个叫线性回归!

第1步:下载数据集

去Kaggle官网下载这两个文件(需要注册账号):

  • train.csv - 训练数据(891人,包含是否幸存)

  • test.csv - 测试数据(418人,需要你预测)

1、打开网址https://www.kaggle.com/注册账号

先注册账号,提示 Captcha must be filled out.

解决办法:

以Edge浏览器为例(Chrome步骤类似):

  1. 安装插件:打开Edge浏览器,点击右上角“...”→“扩展”→“管理扩展”→“获取Microsoft Edge扩展”,搜索 Header Editor,点击“获取”

  2. 导入规则

    • 点击浏览器右上角的拼图图标,找到Header Editor,点击“扩展选项”

    • 找到“导出和导入”区域

    • 在“下载规则”输入框中粘贴这个地址:

      text

      https://github.azurezeng.com/static/HE-GoogleRedirect.json
    • 点击“下载”按钮,然后点击“保存”

  3. 刷新重试:关闭设置页面,回到Kaggle注册页面按F5刷新,现在应该能看到人机验证框了,勾选即可

如果地址失效,可以尝试备用地址:https://azurezeng.com/static/HE-GoogleRedirect.json

注册成功进入Kaggle主页

2、找到数据集并下载

到哪里找数据集啊?屡步为艰!查找资料,步骤如下:

点击Competitions项,在Search框输入Titanic

显示搜索结果,再点击Competitions标签

点击第一行结果Spaceship Titanic(后来发现不是这个,应该选第2个,下载方法步骤一样),再点击右上角的加入竞赛按钮(Join Competition)(不知道是不是一定要加才行,不加可能无法下载数据集,不清楚)

然后再新界面中,点击data标签,点击download all按钮,可以下载数据集,共3个文件。

初步学习一下数据集,查阅相关资料,发现这个不是经典泰坦尼克项目,是后续的一个科幻版本!好吧,暂且舍弃,以后再说,继续找经典版本。

应该选第二个项目

操作步骤同上。点击data标签,点击download all按钮,可以下载数据集,共3个文件。

3、数据集概述

数据已被分成两组:

  • 训练集(train.csv)

  • 测试集(test.csv)

训练集 用于构建机器学习模型。训练集中提供了每位乘客的真实结果(即"答案")。模型将基于乘客的性别、舱位等级等特征进行训练。也可以使用特征工程创建新特征。

(简单理解:训练集 = 带答案的练习题)

测试集 用于检验模型在未见数据上的表现。测试集中不提供每位乘客的真实结果。任务是根据训练好的模型预测测试集中每位乘客是否在泰坦尼克号沉没中幸存。

(简单理解:测试集 = 没答案的考试题)

此外,还提供了 gender_submission.csv 文件,该文件展示了一组预测结果(假设所有女性乘客幸存、所有男性乘客遇难),作为提交文件的格式示例。

(简单理解:提交文件 = 答题卡,按这个格式填上自己的预测结果即可上传)

关于竞赛评分

提交预测文件后,Kaggle 会将预测结果与测试集隐藏的真实答案进行比对,计算出预测准确率(例如:预测对了80%的乘客),并显示在公开排行榜上。该竞赛永久开放,可以随时提交并查看排名,每日最多提交10次。

第一次得知还可以参加竞赛,孤陋寡闻!踏入AI的大门,很是有趣!终于往前迈进一点点,继续加油!

第2步:新建VSCode工程,新建Titanic.py

新建文件夹TitanicPredictsurvival,并将数据集拷贝到文件夹。打开VSCode,选择File菜单Open Folder项,打开文件夹TitanicPredictsurvival,新建Python文件,保存为itanic.py,编写代码。

数据集给出的是比较原始的数据,需要根据自己的需求选择哪些作为特征。这个叫做特征工程

原始数据的样子

Kaggle 给的 train.csv 打开长这样:

PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
103Braund, Mr. Owen Harrismale2210A/5 211717.25NaNS
211Cumings, Mrs. John Bradleyfemale3810PC 1759971.28C85C

问题:

  • Age 有缺失值(NaN)

  • Cabin 大部分缺失

  • Name 是文本,需要提取信息

  • Sex 是文字,需要转成数字

不能直接丢进模型,必须预处理!

选择特征是建模的重要环节,没有绝对"正确"的答案!不同的特征选择会得到不同的准确率。可以多尝试几组对比,特征工程被称为"艺术"——需要反复尝试和验证。

代码如下:

运行结果:

运行成功!后续再学习每个步骤!今天到此!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值