机器学习赛事(四):快来一起挖掘幸福感

机器学习训练营:
https://tianchi.aliyun.com/s/20d6735792ef867814c90698221d1499

比赛题目

   赛题使用公开数据的问卷调查结果,选取其中多组变量,包括个体变量(性别、年龄、地域、职业、健康、婚姻与政治面貌等等)、家庭变量(父母、配偶、子女、家庭资本等等)、社会态度(公平、信用、公共服务等等),来预测其对幸福感的评价。

   幸福感预测的准确性不是赛题的唯一目的,更希望选手对变量间的关系、变量群的意义有所探索与收获。

数据预处理

   导入数据之后,先对数据进行预处理,寻找缺失值,若缺失值个数超过总样本数的1/2,值剔除该数据特征。其余的缺失值将由均值填补。

def filter_extreme_3sigma(series,n=3): #3 sigma mean = series.mean()std = series.std()max_range = mean + n*stdmin_range = mean - n*stdreturn np.clip(series,min_range,max_range)

   然后用3 sigma 对数据进行异常值处理,对数据进行标准化处理。

scaler=StandardScaler(with_mean=True,with_std=True)
data_train.iloc[:,:127]=scaler.fit_transform(data_train.iloc[:,:127])
data_train

   用KNN算法对其进行分类,并结合标签计算预测的准确率

from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import train_test_split
seed=5
x_train,x_test,y_train,y_test=train_test_split(data_train,y,test_size=0.25,random_state=seed)clf=KNeighborsClassifier(20)
clf.fit(x_train,y_train)
X_pred = clf.predict(x_test)
acc = sum(X_pred == y_test) / X_pred.shape[0]
print("预测的准确率ACC: %.3f" % acc)


   预测的准确率不理想,该用随机森林进行分类预测。

from sklearn.ensemble import RandomForestClassifier
rf=RandomForestClassifier(n_estimators=200,max_features=8,max_depth=20,oob_score=True,random_state=1)
rf.fit(x_train,y_train)
print('oob score:',round(rf.oob_score_,4)*100,'%')
trainpre_y=rf.predict(x_test)
acc = sum(trainpre_y == y_test) / trainpre_y.shape[0]
print("预测的准确率ACC: %.3f" % acc)


   结果与随机森林的差不多。

   可能是对数据的清理上有缺陷,可以再去尝试别的方法,再加上对特征的筛选和对数据进行不平衡处理,得出的结果可能会更好一些。

机器学习赛事(四):快来一起挖掘幸福感相关推荐

  1. 机器学习赛事:快来一起挖掘幸福感

    快来一起挖掘幸福感(完整篇) 本学习笔记为阿里云天池龙珠计划机器学习训练营的学习内容,学习链接为:AI训练营机器学习-阿里云天池 赛题介绍(虽然上面链接里已经有了赛题介绍,但我还是把它摘抄下来了,绝对 ...

  2. 机器学习训练营--快来一起挖掘幸福感吧

    文章目录 前言 一.赛题理解 1.1 实验环境 1.2 背景介绍 1.3 数据信息 1.4 评价指标 二.探索性数据分析(EDA)& 特征工程 2.1 为什么要做探索性数据分析 2.2 探索性 ...

  3. Task10快来一起挖掘幸福感大赛

    Task10快来一起挖掘幸福感大赛 参考资料 机器学习训练营_天池龙珠计划:https://tianchi.aliyun.com/specials/promotion/aicampml?invite_ ...

  4. 天池竞赛入门实战——快来一起挖掘幸福感!

    天池算法大赛是阿里巴巴的(阿里云) 赛题链接: https://tianchi.aliyun.com/competition/entrance/231702/introduction 数据获取 数据清 ...

  5. 斯坦福大学机器学习第四课“逻辑回归(Logistic Regression)”

    斯坦福大学机器学习第四课"逻辑回归(Logistic Regression)" 本次课程主要包括7部分: 1) Classification(分类) 2) Hypothesis R ...

  6. 机器学习(四)——逻辑斯蒂回归(Logistic Regression)

    机器学习(四)--逻辑斯蒂回归(Logistic Regression) 一.算法简介 1.1 概念 二.Logistic回归理论推导 2.1 Logistic回归 2.1.1 参数向量θ 2.2 梯 ...

  7. Coursera公开课笔记: 斯坦福大学机器学习第四课“多变量线性回归(Linear Regression with Multiple Variables)”

    Coursera公开课笔记: 斯坦福大学机器学习第四课"多变量线性回归(Linear Regression with Multiple Variables)" 斯坦福大学机器学习第 ...

  8. 机器学习(四):CART分类树(基础篇)

    机器学习(四):CART分类树(基础篇) 相关的决策树文章: 机器学习(四)ID3决策树 机器学习(四)C4.5决策树 机器学习(四)CART回归树 机器学习(四)决策树绘图 机器学习(四)剪枝技术 ...

  9. 机器学习(四):剪枝技术(基础篇)

    机器学习(四):剪枝技术(基础篇) 相关的决策树文章: 机器学习(四)ID3决策树 机器学习(四)C4.5决策树 机器学习(四)CART分类树 机器学习(四)CART回归树 机器学习(四)决策树绘图 ...

最新文章

  1. 关于DiscuzNT 1.0
  2. 数据库知识点2——关系模型之基本概念
  3. 正确处理 Azure OnStop 事件
  4. 一分钟明白各种SQL语句加的什么锁——《深究Mysql锁》
  5. Android文件系统的结构
  6. Matlab中特征选择reliefF算法使用方法(分类与回归)
  7. UDP协议下数据的传输分析
  8. android 资源如何下沉,关于Android业务模块下沉的一些实践及总结
  9. 程序员需培养企业家式的能力
  10. 华容道6×6图解_解放重卡促销盘点,四款6×4牵引车最低只要27.2万元
  11. SELECT TOP 1 比不加TOP 1 慢的原因分析以及SELECT TOP 1语句执行计划预估原理
  12. mongodb-查询
  13. sift计算描述子代码详解_浅谈SIFT特征描述子
  14. 152-Maximum Product Subarray
  15. 不通用版(从SVN取版本,通过MAVEN生成JAVA包,通过SALTSTACK传送到远程服务器并自动重启TOMCAT服务)PYTHON代码...
  16. 熟悉VB 6.0界面
  17. power design设计数据库
  18. Roslyn 如何获得一个类的引用
  19. mysql 设置忽略大小写
  20. 使用Hourglass网络来理解人体姿态

热门文章

  1. Python - 知识整体框架 (思维导图)
  2. 入门前端-《JavaScript 语言入门教程-实例对象和New对象》
  3. Netflix Conductor 快速入门
  4. 如何用好手机摄影来拯救旅行
  5. Linux的本地DNS缓存服务器
  6. javascript二——事件
  7. sqlserver索引信息查看及重新生成组织索引
  8. 从键盘上输入5个学生的分数,求平均分数,最高分数,最低分数,并统计高于平均分数的人数。
  9. 链团爱拼董事长欧阳胜:敢想敢拼 再创辉煌
  10. Windows和Linux系统开通FTP教程