问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

泰坦尼克号幸存者预测:从数据挖掘到特征工程

创作时间:
作者:
@小白创作中心

泰坦尼克号幸存者预测:从数据挖掘到特征工程

引用
CSDN
1.
https://blog.csdn.net/weixin_55629186/article/details/137679890

泰坦尼克号数据集是一个经典的数据科学案例,包含了1912年泰坦尼克号沉船事件中乘客和船员的详细信息。这个数据集常被用于各种数据分析和机器学习项目,特别是二分类预测问题,即预测乘客是否能在这场海难中幸存。本文将详细介绍如何通过数据挖掘和特征工程来预测泰坦尼克号的幸存者。

数据挖掘概述

数据挖掘的基本流程如下:

  • 数据读取与数据探索(统计分析)
  • 读取数据与概览
  • 单变量分析:单个变量对标签的影响
  • 多变量分析:多个变量对标签的影响
  • 统计绘图
  • 相关性分析(特征相关性热力图)
  • 数据清洗与预处理
  • 缺失值处理
  • 标准化、归一化
  • 特征工程
  • 建模与预测
  • 数据集切分
  • 多模型评估优化对比:交叉验证、网格搜索
  • 集成学习:提升算法(XGBoost、GBDT、LightGBM)、多种算法集成(神经网络)

特征工程概述

特征工程是机器学习工作流程中重要的组成部分,它是将原始数据转化成模型可理解的形式的过程。如何基于给定数据来发挥更大的数据价值就是特征工程要做的事情。

在2016年的一项调查中发现,数据科学家的工作中,有超过80%的时间都在获取、清洗和组织数据;构造机器学习流水线的时间不到20%。可见特征工程的重要性。

特征工程在机器学习流程中的位置如下:特征工程处在原始数据和特征之间。它的任务就是将原始数据翻译成特征的过程,这个过程将数据转换为能更好的表示业务逻辑的特征,从而提高机器学习的性能。

特征工程主要包括数据预处理、特征选择与提取等。

相关性分析

相关性分析是指对两个或多个具备相关性的变量进行分析,从而衡量变量的相关密切程度(线性相关性)。

热力图(Heatmap)是一种数据相关性可视化工具,它通过使用颜色的深浅来展示数据矩阵中数值的大小或密度。通常来说,颜色越深,相关度越高。

可以使用Pandas中的corr()函数来计算两个变量之间的相关系数。两个变量之间相关系数的计算公式为:

即两个变量X、Y的Pearson相关系数ρX,Y等于它们之间的协方差cov(X,Y)除以它们各自的标准差的乘积σXσY。

值得注意的是,该相关系数只能度量变量之间的线性相关性;也就是说,相关系数越高,则变量间的线性相关程度越高。

常见的相关系数有:

  • 皮尔森(Pearson)相关系数:最常用,适用于数据呈正态分布的场景,正态图可查看正态性,散点图展示数据关系
  • 斯皮尔曼(Spearman)相关系数:适用于数据不满足正态分布的场景,正态图可查看正态性,散点图展示数据关系
  • 肯德尔(Kendall)相关系数:适用于数据的一致性判断,通常用于非关系研究,如评委打分,数据排名等

按照相关的方向,相关性可以分为正相关和负相关。因此相关系数的取值始终在[-1,1]之间:

  • -1:表示两个变量之间完全负线性相关
  • 0:表示两个变量之间不存在线性相关
  • 1:表示两个变量之间存在完全正线性相关

通常情况下通过以下取值范围判断变量的正相关强度:

相关系数
正相关强度
0.8-1.0
极强相关或完全相关
0.6-0.8
强相关
0.4-0.6
中等程度相关
0.2-0.4
弱相关
0.0-0.2
极弱相关或无相关

通过绘制热力图,我们可以探究各个特征变量之间的相关性,进而探究特征之间是否存在多重共线性。

1)计算相关系数

# 计算特征之间的相关系数
data_corr = data[['PassengerId', 'Survived', 'Pclass', 'Age', 'SibSp', 'Parch', 'Fare']]
print(data_corr.corr().to_string())

2)绘制相关性热力图

Seaborn是基于Matplotlib的Python数据可视化库。Seaborn在Matplotlib基础上进行了更高级的封装,它提供了一个高级界面,使得作图更加方便快捷。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号