news 2026/6/21 22:52:08

Day26 复习日

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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行确认格式正确
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 14:30:59

树莓派课程设计小项目图解说明:4B连接LCD屏核心要点

树莓派4B连接LCD屏实战指南:从选型到驱动,一次讲透在高校电子类课程设计中,树莓派早已不是“新鲜玩意”。但每当学生拿到一块小屏幕、一根FPC排线,面对那密密麻麻的GPIO引脚时,问题还是来了:到底怎么让这块…

作者头像 李华
网站建设 2026/6/15 12:39:55

VR-Reversal完整教程:5分钟掌握3D视频转2D的终极技巧

想要在普通屏幕上观看3D视频吗?VR-Reversal就是你的完美解决方案!🎯 这款基于MPV播放器的开源工具,能够将侧并排格式的3D视频实时转换为2D格式,让你自由探索视频的每一个角落,还能记录头部运动轨迹&#xf…

作者头像 李华
网站建设 2026/6/19 2:25:02

WebSailor:3B小模型如何突破网页导航难题

WebSailor:3B小模型如何突破网页导航难题 【免费下载链接】WebSailor-3B 项目地址: https://ai.gitcode.com/hf_mirrors/Alibaba-NLP/WebSailor-3B 导语:阿里巴巴达摩院(Alibaba-NLP)近日推出WebSailor训练方法&#xff0…

作者头像 李华
网站建设 2026/6/15 16:18:50

三步解锁Windows 10隐藏技能:PC秒变安卓设备完整指南

还在为Windows 10无法运行Android应用而烦恼吗?现在,通过Windows Subsystem for Android,你的老旧PC也能焕发新生,轻松畅享移动应用生态。本教程将为你揭秘这一神奇功能的完整部署流程。 【免费下载链接】WSA-Windows-10 This is …

作者头像 李华
网站建设 2026/6/15 10:30:08

打造企业级.NET Core管理系统的完整实战指南

打造企业级.NET Core管理系统的完整实战指南 【免费下载链接】YiShaAdmin 基于 .NET Core MVC 的权限管理系统,代码易读易懂、界面简洁美观 项目地址: https://gitcode.com/GitHub_Trending/yi/YiShaAdmin 在数字化转型浪潮中,企业迫切需要高效、…

作者头像 李华