拉勾教育以数据科学用例赢得分类马拉松
• 从几个月前在Hackathons作为初学者开始,我近成为了Kaggle专家,并且是 Vidhya 的JanataHack Hackathon系列分析的前5名贡献者之一。拉勾IT课小编为大家分解
• 我在这里分享我的知识,并指导初学者使用Binary分类中的分类用例进行竞赛
让我们深入研究二元分类–来自Analytics Vidhya的JanataHack Hackathon系列的保险交叉销售用例,并亲自进行实验
我们的客户是一家为客户提供健康保险的保险公司。现在他们需要我们的帮助来构建模型,以预测过去一年的保单持有人(客户)是否也会对公司提供的车辆保险感兴趣。
保险单是公司承诺为特定的损失,损害,疾病或死亡提供赔偿保证,以换取指定的保险费的一种安排。保费是客户需要定期向保险公司支付此保证金的金额。
例如,我们每年可以为200000卢比的健康保险支付5000卢比的保险费,这样,如果我们在那一年生病并需要住院,保险公司将承担高200000卢比的住院费用。现在,如果我们想知道,当公司只收取5000卢比的保险费时,该如何承担如此高的住院费用,那么,概率的概念就出现了。
例如,像我们一样,每年可能有100名客户支付5000卢比的保险费,但只有少数人(比如2-3人)会在当年住院。这样,每个人都会分担其他人的风险。
就像医疗保险一样,有些车辆保险每年需要客户向保险提供商公司支付一定金额的保险费,这样,如果车辆不幸发生意外,保险提供商公司将提供赔偿(称为“投保”)。
建立模型来预测客户是否会对车辆保险感兴趣对公司非常有帮助,因为它随后可以相应地计划其沟通策略,以覆盖这些客户并优化其业务模型和收入。
分享我的数据科学马拉松方法——如何在20,000多个数据爱好者中达到前10%
在第1部分中,我们学习可以重复,优化和改进的10个步骤,这是帮助你快速入门的良好基础。
现在你已经开始练习,让我们尝试保险用例来测试我们的技能。放心,你将在几个星期的练习中很好地应对任何分类马拉松(带有表格数据)。希望你热情,好奇,并通过竞赛继续这一数据科学之旅!
学习,练习和分类马拉松的10个简单步骤
1. 理解问题陈述并导入包和数据集
2. 执行EDA(探索性数据分析)——了解数据集。探索训练和测试数据,并了解每个列/特征表示什么。检查数据集中目标列是否不平衡
3. 从训练数据检查重复的行
4. 填充/插补缺失值-连续-平均值/中值/任何特定值|分类-其他/正向填充/回填
5. 特征工程–特征选择–选择重要的现有特征| 特征创建或封装–从现有特征创建新特征
6. 将训练数据拆分为特征(独立变量)| 目标(因变量)
7. 数据编码–目标编码,独热编码|数据缩放–MinMaxScaler,StandardScaler,RobustScaler
8. 为二进制分类问题创建基线机器学习模型
9. 结合平均值使用K折交叉验证改进评估指标“ ROC_AUC”并预测目标“Response”
10. 提交结果,检查排行榜并改进“ ROC_AUC”
在GitHub链接上查看PYTHON中完整的工作代码以及可用于学习和练习的输出。只要进行更改,它就会更新!
1. 了解问题陈述并导入包和数据集
数据集说明
变量 说明
id 客户的ID
Gender 客户性别
Age 客户年龄
Driving_License 0:客户没有驾照
1:客户已经有驾照
Region_Code 客户所在地区的代码
Previously_Insured 1:客户已经有车辆保险
0:客户没有车辆保险
Vehicle_Age 车龄
Vehicle_Damage 1:客户过去曾损坏车辆
0:客户过去未曾损坏车辆。
Annual_Premium 客户需要在当年支付的保费金额
Policy_Sales_Channel 与客户联系的渠道的匿名代码,即不同的代理,通过邮件,通过电话,见面等
Vintage 客户已与公司建立联系的天数
Response 1:客户感兴趣
0:客户不感兴趣
现在,为了预测客户是否会对车辆保险感兴趣,我们获得了有关人口统计信息(性别,年龄,区域代码类型),车辆(车辆年龄,损坏),保单(保险费,采购渠道)等信息。
用于检查所有Hackathon中机器学习模型性能差异的评估指标
在这里,我们将ROC_AUC作为评估指标。
受试者工作特征曲线(ROC)是用于二元分类问题的评价度量。这是一条概率曲线,绘制了各种阈值下的TPR(真阳性率)对FPR(假阳性率),并从本质上将“信号”与“噪声”分开。所述的曲线下面积(AUC)是一个分类类别之间进行区分的能力的量度,并且被用作ROC曲线的总结。
AUC越高,模型在区分正类和负类方面的性能越好。
• 当AUC=1时,分类器能够正确区分所有的正类点和负类点。然而,如果AUC为0,那么分类器将预测所有的阴性为阳性,所有的阳性为阴性。
• 当0.5 < AUC < 1时,分类器很有可能将正类别值与负类别值区分开。之所以如此,是因为与假阴性和假阳性相比,分类器能够检测更多数量的真阳性和真阴性。
• 当AUC = 0.5时,分类器无法区分正类别点和负类别点。这意味着分类器将为所有数据点预测随机类别或常量类别。
• 交叉销售:训练数据包含3,81,109个示例,测试数据包含1,27,037个示例。数据再次出现严重失衡——根据训练数据,仅推荐12.2%(总计3,81,109名员工中的46,709名)晋升
• 我在这里分享我的知识,并指导初学者使用Binary分类中的分类用例进行竞赛
让我们深入研究二元分类–来自Analytics Vidhya的JanataHack Hackathon系列的保险交叉销售用例,并亲自进行实验
我们的客户是一家为客户提供健康保险的保险公司。现在他们需要我们的帮助来构建模型,以预测过去一年的保单持有人(客户)是否也会对公司提供的车辆保险感兴趣。
保险单是公司承诺为特定的损失,损害,疾病或死亡提供赔偿保证,以换取指定的保险费的一种安排。保费是客户需要定期向保险公司支付此保证金的金额。
例如,我们每年可以为200000卢比的健康保险支付5000卢比的保险费,这样,如果我们在那一年生病并需要住院,保险公司将承担高200000卢比的住院费用。现在,如果我们想知道,当公司只收取5000卢比的保险费时,该如何承担如此高的住院费用,那么,概率的概念就出现了。
例如,像我们一样,每年可能有100名客户支付5000卢比的保险费,但只有少数人(比如2-3人)会在当年住院。这样,每个人都会分担其他人的风险。
就像医疗保险一样,有些车辆保险每年需要客户向保险提供商公司支付一定金额的保险费,这样,如果车辆不幸发生意外,保险提供商公司将提供赔偿(称为“投保”)。
建立模型来预测客户是否会对车辆保险感兴趣对公司非常有帮助,因为它随后可以相应地计划其沟通策略,以覆盖这些客户并优化其业务模型和收入。
分享我的数据科学马拉松方法——如何在20,000多个数据爱好者中达到前10%
在第1部分中,我们学习可以重复,优化和改进的10个步骤,这是帮助你快速入门的良好基础。
现在你已经开始练习,让我们尝试保险用例来测试我们的技能。放心,你将在几个星期的练习中很好地应对任何分类马拉松(带有表格数据)。希望你热情,好奇,并通过竞赛继续这一数据科学之旅!
学习,练习和分类马拉松的10个简单步骤
1. 理解问题陈述并导入包和数据集
2. 执行EDA(探索性数据分析)——了解数据集。探索训练和测试数据,并了解每个列/特征表示什么。检查数据集中目标列是否不平衡
3. 从训练数据检查重复的行
4. 填充/插补缺失值-连续-平均值/中值/任何特定值|分类-其他/正向填充/回填
5. 特征工程–特征选择–选择重要的现有特征| 特征创建或封装–从现有特征创建新特征
6. 将训练数据拆分为特征(独立变量)| 目标(因变量)
7. 数据编码–目标编码,独热编码|数据缩放–MinMaxScaler,StandardScaler,RobustScaler
8. 为二进制分类问题创建基线机器学习模型
9. 结合平均值使用K折交叉验证改进评估指标“ ROC_AUC”并预测目标“Response”
10. 提交结果,检查排行榜并改进“ ROC_AUC”
在GitHub链接上查看PYTHON中完整的工作代码以及可用于学习和练习的输出。只要进行更改,它就会更新!
1. 了解问题陈述并导入包和数据集
数据集说明
变量 说明
id 客户的ID
Gender 客户性别
Age 客户年龄
Driving_License 0:客户没有驾照
1:客户已经有驾照
Region_Code 客户所在地区的代码
Previously_Insured 1:客户已经有车辆保险
0:客户没有车辆保险
Vehicle_Age 车龄
Vehicle_Damage 1:客户过去曾损坏车辆
0:客户过去未曾损坏车辆。
Annual_Premium 客户需要在当年支付的保费金额
Policy_Sales_Channel 与客户联系的渠道的匿名代码,即不同的代理,通过邮件,通过电话,见面等
Vintage 客户已与公司建立联系的天数
Response 1:客户感兴趣
0:客户不感兴趣
现在,为了预测客户是否会对车辆保险感兴趣,我们获得了有关人口统计信息(性别,年龄,区域代码类型),车辆(车辆年龄,损坏),保单(保险费,采购渠道)等信息。
用于检查所有Hackathon中机器学习模型性能差异的评估指标
在这里,我们将ROC_AUC作为评估指标。
受试者工作特征曲线(ROC)是用于二元分类问题的评价度量。这是一条概率曲线,绘制了各种阈值下的TPR(真阳性率)对FPR(假阳性率),并从本质上将“信号”与“噪声”分开。所述的曲线下面积(AUC)是一个分类类别之间进行区分的能力的量度,并且被用作ROC曲线的总结。
AUC越高,模型在区分正类和负类方面的性能越好。
• 当AUC=1时,分类器能够正确区分所有的正类点和负类点。然而,如果AUC为0,那么分类器将预测所有的阴性为阳性,所有的阳性为阴性。
• 当0.5 < AUC < 1时,分类器很有可能将正类别值与负类别值区分开。之所以如此,是因为与假阴性和假阳性相比,分类器能够检测更多数量的真阳性和真阴性。
• 当AUC = 0.5时,分类器无法区分正类别点和负类别点。这意味着分类器将为所有数据点预测随机类别或常量类别。
• 交叉销售:训练数据包含3,81,109个示例,测试数据包含1,27,037个示例。数据再次出现严重失衡——根据训练数据,仅推荐12.2%(总计3,81,109名员工中的46,709名)晋升