当前位置: 首页 > news >正文

Kaggle比赛入门攻略(以 Titanic 为例)

为什么选择 Kaggle 入门比赛?

Kaggle 是全球最大的数据科学竞赛平台。入门比赛 Titanic: Machine Learning from Disaster 是初学者的理想起点,数据量小、结构简单、题目经典。


Step 1:注册并加入比赛

  1. 访问比赛地址:https://www.kaggle.com/c/titanic
  2. 注册或登录 Kaggle 账号
  3. 点击右上角 Join Competition
  4. 同意比赛规则(必须完成这步,才算正式参赛)

Step 2:理解比赛任务与数据

比赛目标:

预测泰坦尼克号乘客的生还情况(二分类问题:0 = 死亡,1 = 生还)

数据文件:

  • train.csv:训练数据(已知生还结果,共891人)
  • test.csv:测试数据(未知生还结果,共418人)
  • gender_submission.csv:官方示例提交文件

Step 3:创建 Notebook 并加载数据

在比赛页面点击 CodeNew Notebook,复制以下代码执行:

import pandas as pd# 加载数据
train_data = pd.read_csv("/kaggle/input/titanic/train.csv")
test_data = pd.read_csv("/kaggle/input/titanic/test.csv")# 查看前几行
train_data.head()

Step 4:数据探索(EDA)

查看性别和生还率的关系:

# 女性生还率
women = train_data.loc[train_data.Sex == 'female']["Survived"]
print("女性生还率:", women.mean())# 男性生还率
men = train_data.loc[train_data.Sex == 'male']["Survived"]
print("男性生还率:", men.mean())

输出显示女性生还率高达 ~75%,男性仅约 19%


Step 5:训练一个简单模型(随机森林)

from sklearn.ensemble import RandomForestClassifier# 选择特征列
features = ["Pclass", "Sex", "SibSp", "Parch"]
X = pd.get_dummies(train_data[features])
X_test = pd.get_dummies(test_data[features])
y = train_data["Survived"]# 模型训练
model = RandomForestClassifier(n_estimators=100, max_depth=5, random_state=1)
model.fit(X, y)# 生成预测结果
predictions = model.predict(X_test)# 保存提交文件
output = pd.DataFrame({'PassengerId': test_data.PassengerId, 'Survived': predictions})
output.to_csv('submission.csv', index=False)
print("预测结果已保存为 submission.csv")

Step 6:提交结果并查看排名

  1. 点击右上角 Save Version → 选择 Save & Run All
  2. 稍等片刻,Notebook 会执行完毕
  3. 在右上角点击版本号 → 进入 Viewer
  4. Data 页点击 Submit 按钮提交
  5. 页面底部可看到你的 Public Score 和排行榜位置

Step 7:下一步可以做什么?

  • 添加更多特征:Age、Fare、Embarked 等
  • 处理缺失值:如用中位数填充 Age
  • 尝试其他模型:Logistic Regression、XGBoost、LightGBM
  • 学习课程:
  • Intro to Machine Learning
  • Pandas 基础

总结

阶段内容
注册参赛加入比赛并同意规则
数据理解train/test 数据结构清晰
创建 Notebook无需本地环境,在线运行
探索数据找到性别、舱位等关键特征
构建模型使用 sklearn 快速上手
提交预测自动保存为 CSV 并提交评分
持续提升学习课程,改进特征,调参优化

如果你成功提交了 Titanic 的预测结果,恭喜你正式迈出了数据科学之路的第一步!

http://www.xdnf.cn/news/236485.html

相关文章:

  • 玩转MCP
  • C# dataGridView分页
  • JMeter WebSocket 压测详细步骤(支持 ws+proto 协议)
  • flutter 专题 五十六 Google 2020开发者大会Flutter专题
  • 驱动车辆诊断测试创新 | 支持诊断测试的模拟器及数据文件转换生成
  • 斯坦福RGA软件 老版本和兼容Windows 11版本可选
  • 在 OpenSearch 中建立有效的混合搜索: 技术和最佳实践
  • PCB设计工艺规范(四)安规要求
  • 变量char2、*char2、pChar3、*pChar3的存储位置
  • 冰冰一号教程网--介绍采用vuepress搭建个人博客
  • CrowdStrike推出新型工具防御恶意AI模型与数据窃取
  • 「Mac畅玩AIGC与多模态10」开发篇06 - 使用自定义翻译插件开发智能体应用
  • ai改写智能助手在线润色,高效产出优质文章!
  • Qt -DFS可视化
  • 乐西高速大凉山1号隧道实现双幅贯通:成都到昭觉9小时变3.5小时
  • 代码随想录打卡|Day31动态规划(最后一块石头的重量2、目标和、一和零)
  • 分割链表题解
  • 2025年“深圳杯”数学建模挑战赛A题-芯片热弹性物理参数估计
  • 记一次 MyBatis 缓存引发的问题
  • 高级测试工程师 的面试题汇总
  • 实验-单总线温度采集与显示(汇编语言与接口技术)
  • 视觉问答大模型速递:Skywork-R1V2-38B
  • 【人工智能】深入探索Python中的自然语言理解:实现实体识别系统
  • 第二部分:赤色的世界
  • 提高设计的综合性能
  • ESP32开发之freeRTOS的信号量
  • 免费在Colab运行Qwen3-0.6B——轻量高性能实战
  • Learning vtkjs之ImplicitBoolean
  • Java大师成长计划之第8天:Java线程基础
  • 树状结构转换工具类