Kaggle机器学习入门实战 -- Titanic乘客生还预测

简介:

如果你打算研究机器学习或是今后想从事数据科学相关的工作,Kaggle应该是一个绕不过去的名字。

Kaggle是2010年在旧金山创立的一个数据建模和数据分析竞赛平台,在很短的时间内就声名鹊起,去年被google收购,在业界具有很高的知名度和权威性,企业可以在上面发布数据和想要解决的问题,并进行“悬赏”,数据科学家和机器学习的爱好者们可以基于这个平台提交自己的模型和预测结果,平台会根据测试集对参赛者进行评分排名,排名最高几位可以分享奖金,更重要的是,kaggle为全世界数据分析及机器学习爱好者们提供了一个交流学习的平台,里面不乏机器学习的顶尖高手,各大公司也常年在kaggle上招募比赛名次好的团队和选手,良好的kaggle竞赛履历绝对是简历上的加分项,如果你参加过多次Featured(商业问题,有奖金)和Research(学术类)类型的比赛,并且多次进入TOP10%甚至TOP5%,那么你只用蹲在家里,猎头自会找上门。

Kaggle分为5个大的板块:

- Competitions(竞赛)

分为商业竞赛、学术类竞赛、入门级竞赛和一些由大公司如Google、Fackbook不定时举办的邀请赛。

- Datasets(数据集)

公司或个人贡献的各类型的数据集,搞机器学习最怕找不到数据,kaggle给大家获取数据练习提供了一些捷径。

- Kernels(数据分析及建模)

有点类似GitHub的代码管理,说直白点就是给用户提供了云上的数据分析和建模的环境,不过涉及到代码上传,我厂童鞋请慎用...

- Discussion(讨论区)

里面有全世界各地的数据科学、机器学习的专家和爱好者,针对题目、算法、建模等热烈的讨论,冥思苦想几天的问题看看大牛们的解题思路说不定就秒懂。

- Jobs(工作)

一些公司会直接在kaggle上放出数据挖掘、机器学习类的岗位,基本都是欧美的中小型公司。


一、Kaggle竞赛的一般步骤

下图是kaggle竞赛步骤的简单示意图,中间迭代的步骤也可以看做是一般机器学习建模及验证的步骤,需要特别注意的是,比赛结束以前,kaggle提供用来验证的测试数据集是Public数据集,提供给大家进行及时验证和反馈模型效果的,所以在Publlic Leaderboard上的排名和得分并不是最终结果,待比赛结束后,会用Private数据集进行最终的计分和排名,目的是防止模型过拟合,能真正在未知数据上取得好成绩的才是优秀的模型。


image.png

好了,说了这么多,不在Kaggle上刷刷榜,怎么好意思说自己在学习数据挖掘和机器学习呢:-),我们以Kaggle上最为知名的入门题目 Titanic: Machine Learning from Disaster(利用机器学习预测泰坦尼克乘客是否生还)为例,看看怎么玩Kaggle。

二、软件环境

sklearn + numpy + pandas + seaborn

我使用的是sklearn,很成熟的机器学习框架,最新版本也支持深度神经网络,当然数据处理和可视化还需要用到numpy,pandas,seaborn,当然你也可以使用tensorflow等其他框架,kaggle并不要求上传模型本身,只需要预测结果就可以了,强烈推荐大家使用python3.6的科学发行版Anaconda,这些库里面都有。


三、理解题目&下载数据

题目地址:https://www.kaggle.com/c/titanic
这是Kaggle上热度最高的题目,迄今为止参赛的队伍已经超过10000支,基本上所有参与Kaggle的人都会拿这个题目练手。所以题目虽简单,但取得好的名次也不容易。


目录
相关文章
|
3月前
|
机器学习/深度学习 数据采集 算法
深入了解机器学习:从入门到应用
【10月更文挑战第6天】深入了解机器学习:从入门到应用
|
20天前
|
机器学习/深度学习 传感器 运维
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
本文探讨了时间序列分析中数据缺失的问题,并通过实际案例展示了如何利用机器学习技术进行缺失值补充。文章构建了一个模拟的能源生产数据集,采用线性回归和决策树回归两种方法进行缺失值补充,并从统计特征、自相关性、趋势和季节性等多个维度进行了详细评估。结果显示,决策树方法在处理复杂非线性模式和保持数据局部特征方面表现更佳,而线性回归方法则适用于简单的线性趋势数据。文章最后总结了两种方法的优劣,并给出了实际应用建议。
57 7
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
|
2月前
|
机器学习/深度学习 数据采集
机器学习入门——使用Scikit-Learn构建分类器
机器学习入门——使用Scikit-Learn构建分类器
|
2月前
|
机器学习/深度学习 数据采集 数据可视化
Python数据科学实战:从Pandas到机器学习
Python数据科学实战:从Pandas到机器学习
|
2月前
|
机器学习/深度学习 TensorFlow API
机器学习实战:TensorFlow在图像识别中的应用探索
【10月更文挑战第28天】随着深度学习技术的发展,图像识别取得了显著进步。TensorFlow作为Google开源的机器学习框架,凭借其强大的功能和灵活的API,在图像识别任务中广泛应用。本文通过实战案例,探讨TensorFlow在图像识别中的优势与挑战,展示如何使用TensorFlow构建和训练卷积神经网络(CNN),并评估模型的性能。尽管面临学习曲线和资源消耗等挑战,TensorFlow仍展现出广阔的应用前景。
76 5
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI的奥秘:机器学习入门指南
【10月更文挑战第30天】本篇文章是一份初学者友好的机器学习入门指南,旨在帮助读者理解并开始实践机器学习。我们将介绍机器学习的基本概念,包括监督学习、无监督学习和强化学习等。我们还将提供一些实用的代码示例,以帮助读者更好地理解和应用这些概念。无论你是编程新手,还是有一定经验的开发者,这篇文章都将为你提供一个清晰的机器学习入门路径。
45 2
|
2月前
|
机器学习/深度学习 人工智能 TensorFlow
基于TensorFlow的深度学习模型训练与优化实战
基于TensorFlow的深度学习模型训练与优化实战
103 0
|
2月前
|
机器学习/深度学习 人工智能 算法
机器学习基础:使用Python和Scikit-learn入门
机器学习基础:使用Python和Scikit-learn入门
38 1
|
2月前
|
机器学习/深度学习 数据采集 人工智能
机器学习入门:Python与scikit-learn实战
机器学习入门:Python与scikit-learn实战
66 0
|
2月前
|
机器学习/深度学习 算法 Python
机器学习入门:理解并实现K-近邻算法
机器学习入门:理解并实现K-近邻算法
39 0