两小时自学kaggle完成第一个竞赛(新手版):Titanic - Machine Learning from Disaster

323 阅读2分钟

泰坦尼克号 - 灾难中的机器学习

R-C.jpg

  1. 首先必须有最基本的python代码编写的能力,掌握最基本的库,以及对机器学习的简单算法有所了解。

  2. 了解kaggle是个什么性质的平台。

    kaggle 不仅提供了丰富的数据资源和工具,还提供了各种各样的竞赛,让参与者可以用自己的算法和模型来解决实际的问题,赢取奖金和荣誉。

  3. 开始竞赛,阅读题目

    泰坦尼克号的沉没是历史上最臭名昭著的沉船之一。1912 年 4 月 15 日,在她的处女航中,被广泛认为“永不沉没”的泰坦尼克号在与冰山相撞后沉没。不幸的是,没有足够的救生艇供船上的每个人使用,导致2224名乘客和船员中有1502人死亡。虽然生存有一些运气因素,但似乎有些人群比其他人更有可能生存。在这个挑战中,我们要求您构建一个预测模型,使用乘客数据(即姓名、年龄、性别、社会经济阶层等)来回答“什么样的人更有可能生存?”这个问题。

  4. 引用对应的库函数

    import pandas as pd
    import numpy as np
    from sklearn.tree import DecisionTreeRegressor
    
  5. 获取数据

    数据已分为两组:training set (train.csv)和test set (test.csv)

    file_path = r'E:\@DS\python练习\titanic\train.csv'
    file_path2 = r'E:\@DS\python练习\titanic\test.csv'
    data = pd.read_csv(file_path)
    data_test = pd.read_csv(file_path2)
    

    train.csv

image-20230823221657266.png

test.csv

image-20230823221715243.png

  1. 模型选择

    因为是第一次尝试自己作预测,所以我使用的是sklearn库里自带的决策树模块DecisionTreeRegressor,目的是快速完成第一次提交。

    model = DecisionTreeRegressor(random_state=1)
    
  2. 模型拟合

    使用之前创建的模型实例,使用fit拟合数据

    model.fit(data_train_x,data_train_y)
    
  3. 模型预测

    使用之前创建的模型实例,使用predict预测数据

    predict_y = model.predict(data_test)
    
  4. 模型评估

    这个题的模型评估是交给平台的,我的得分是0.7,看起来还不错

  5. 提交数据,获取排名

    虽然评分是0.7,但是排名已经到一万三千多名去了,总共才一万四参加,之后还是得优化一下。

image-20230823183114885.png

做完这个题目虽然时间花的很少,但确实也是做的很简陋,因为这是我第一次完成kaggle的题目,所以怀着很激动的心情,写下这篇文章,记录一下自己这一个月以来学习机器学习,之后开学了,我可以更加认真学习机器学习的理论,争取早点入门。