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

Day26 复习日

@浙大疏锦行

kaggle参与比赛注意事项:

仅可使用官方提供的数据集,在平台内完成数据预处理且不得修改数据集结构,提交文件需为仅含指定列的 CSV 格式,遵守每日提交次数限制;代码需使用平台支持的库、包含完整可复现流程且为原创,禁止抄袭或依赖外部缓存、已训练模型权重,个人参赛不可与他人协作共享代码或结果,同时需确保提交文件大小符合限制,模型训练目标需与竞赛评估指标一致。

参与比赛代码:

# 1. 导入必要库 import pandas as pd import numpy as np from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.impute import SimpleImputer from sklearn.preprocessing import OneHotEncoder from sklearn.compose import ColumnTransformer from sklearn.pipeline import Pipeline from sklearn.metrics import accuracy_score # 2. 加载数据集 train_data = pd.read_csv('/kaggle/input/titanic/train.csv') test_data = pd.read_csv('/kaggle/input/titanic/test.csv') submission_template = pd.read_csv('/kaggle/input/titanic/gender_submission.csv') # 3. 分离特征与标签(训练集) X = train_data.drop(['Survived', 'PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1) # 剔除无关特征 y = train_data['Survived'] test_passenger_ids = test_data['PassengerId'] # 保存测试集ID用于提交 X_test = test_data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1) # 测试集特征处理 # 4. 定义预处理流程(处理缺失值+编码分类特征) # 分类特征:Sex, Embarked;数值特征:Pclass, Age, SibSp, Parch, Fare categorical_features = ['Sex', 'Embarked'] numerical_features = ['Pclass', 'Age', 'SibSp', 'Parch', 'Fare'] # 数值特征预处理:用中位数填充缺失值 numerical_transformer = SimpleImputer(strategy='median') # 分类特征预处理:用最频繁值填充缺失值+独热编码 categorical_transformer = Pipeline(steps=[ ('imputer', SimpleImputer(strategy='most_frequent')), ('onehot', OneHotEncoder(handle_unknown='ignore')) # 忽略测试集未出现的分类值 ]) # 整合预处理流程 preprocessor = ColumnTransformer( transformers=[ ('num', numerical_transformer, numerical_features), ('cat', categorical_transformer, categorical_features) ]) # 5. 构建模型管道(预处理+训练) model = Pipeline(steps=[ ('preprocessor', preprocessor), ('classifier', RandomForestClassifier(n_estimators=100, random_state=42)) # 随机森林模型 ]) # 6. 训练模型(可拆分验证集评估效果) X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.2, random_state=42) model.fit(X_train, y_train) # 验证集评估(可选,用于优化模型) y_val_pred = model.predict(X_val) val_accuracy = accuracy_score(y_val, y_val_pred) print(f"验证集准确率:{val_accuracy:.4f}") # 7. 用完整训练集重新训练(提升模型泛化能力) model.fit(X, y) # 8. 测试集预测 y_test_pred = model.predict(X_test) # 9. 生成提交文件 submission = pd.DataFrame({ 'PassengerId': test_passenger_ids, 'Survived': y_test_pred }) # 保存提交文件(Kaggle会自动识别该路径下的文件用于提交) submission.to_csv('/kaggle/working/titanic_submission.csv', index=False) print("提交文件生成完成!") print(submission.head()) # 查看前5行确认格式正确
http://www.jsqmd.com/news/190696/

相关文章:

  • 三步解锁Windows 10隐藏技能:PC秒变安卓设备完整指南
  • OpenRGB终极指南:一个软件掌控所有RGB设备,告别品牌壁垒
  • 架构整洁之道:从混乱代码到优雅设计的蜕变之路
  • 人工智能之核心基础 机器学习 第六章 朴素贝叶斯
  • Qwen3双模式AI:6bit量化本地推理新突破
  • 2026年知名的刀塔机数控车床厂家推荐及选择参考 - 行业平台推荐
  • OpenRGB统一控制指南:跨平台管理多品牌RGB设备
  • Google EmbeddingGemma:300M参数的多语言嵌入新选择
  • pycharm版本控制对比IndexTTS2不同版本差异
  • Qwen3-Next 80B-FP8:超长大模型推理新突破
  • 微信小程序自定义导航栏终极解决方案:高效适配全机型
  • tinymce图片上传功能展示IndexTTS2效果对比图
  • 复古翻页时钟屏保:为你的Windows桌面注入经典时间美学
  • mrpack-install:Modrinth Modpack服务器快速部署指南
  • 闲置Joy-Con变身PC手柄:零成本改造完全指南
  • AMD以47.27%的份额距Intel的55.47%仅一步之遥
  • 百度百科词条申请:让IndexTTS2被更多人知道
  • Windows 10运行Android子系统终极解决方案完整指南
  • ESP32开发环境在Arduino IDE下的项目应用
  • 基于YOLOv8模型的行人车辆多目标检测计数与跟踪系统
  • Ext2Read:Windows下完美访问Linux EXT分区的终极解决方案
  • 5分钟快速上手:OpenRGB跨平台RGB灯光控制神器
  • Fritzing可视化设计操作指南:从零实现连接
  • 树莓派课程设计小项目图解说明:4B连接LCD屏核心要点
  • 如何利用行政区划数据构建智慧城市可视化决策系统
  • Qwen2.5推理模型:对话推理新体验,规则强化学习揭秘
  • 告别手忙脚乱:WeakAuras伴侣让魔兽世界光环管理如此简单
  • ASMR音频批量下载工具:高效获取asmr.one平台资源
  • Realtek Wi-Fi 6驱动完整安装指南:轻松实现高速网络体验
  • OpenAI弃用立讯转向富士康,AI硬件供应链的重构与博弈