天池精准医疗大赛-血糖预测
2018-02-05 20:12
375 查看
先说结果
预赛排名110+,没能进复赛。A榜0.81,170名的样子;B榜0.64,110名的样子。
各位前排大佬还是太厉害了,B榜最后第一名是0.59。
第一次做比赛,结果勉强还能接受吧。
大概认真做了两个礼拜的样子,还是有一定收获的。
问题与数据
初赛的题目是,根据人的一些指标,预测血糖值。指标基本是验血得到的,共有越40个。根据MSE评分,每天有两次测评机会。
初赛数据量,训练集大约是5000多,测试集1000。
数据量还是比较小的,选了这样一个小数据量的比赛。觉得小数据量运行起来比较方便,不需要性能特别强大的机器;这个问题看起来也比较简单,很明显是一个回归问题,我这样一个新手容易下手。
其实后来发现这个比赛还是比较坑的:
测试集特别小,导致异常值对结果影响大,猜对一个异常值有很大收益。
数据分布不平衡,特别高的值比较少,但是对MSE影响大
缺失值特别多,有的特征缺失了80%以上
思路
以血糖7为分隔点,将训练集分为正常和不正常两个部分。先用logistics回归做二分类;再对正常和不正常两个部分,分别用xgboost做回归;对于每一个测试样本,用logistics计算其属于正常和不正常的概率,再用两个xgboost回归得到两个值,将这两个值按概率加权求和作为最终结果。
数据预处理
为了充分利用数据,A榜公布答案后,把A榜的数据也放入了训练集。缺失值处理:
缺失值太多了,所以缺失值的处理其实很关键,但是我们没找到特别有效的缺失值填补办法。
最终采用均值填充。尝试过knn、svd等方法,效果不佳。
这里用了一个python库,
fancyimpute,用起来特别方便。
特征处理:
1. 丢弃了id、体检日期
2. 添加了 总胆固醇/高密度脂蛋白胆固醇,尿素/肌酐
3. 特征生成:开方、平方、取log、相乘
4. 数值型特征:对偏差大的特征,采用boxcox进行调整;非数值型特征,one hot
id这个放进特征里面,肯定是会过拟合的,所以删掉。体检日期one-hot之后,效果确实会变好一点,但是后来还是觉得删掉会比较好。
添加的两个特征是看资料找到的,应该是有一定医学意义的。
特征生成尝试了很多种方式,实际最后只有取log是有点用的。也看到有说用xgboost每棵树叶子的预测作为特征的,试了下完全没用。我们好尝试了加减乘除生成的特征,用上之后特征变的巨多,而且基本都没用。
训练集合里面有一个血糖高达38的值,去掉之后线下会变好,但是觉得如果去掉了可能高值会预测不出来,所以后来没有去掉。后来想了想可能去掉会好一点,这个高值的其他指标其实都还比较正常的。
特征选择
使用sklearn提供的SelectKBest,基于互信息和皮尔逊系数进行特征选择(效果不佳)使用RFE进行特征选择(比较有效果)
根据系数的办法选出来的特征试了下都没什么用。。
RFE是比较有用的,在原本的40个特征下用RFE,发现去掉一些特征效果反而会变好?
调参方法
logistics二分类器,能调的参数比较少,调整参数的效果也不明显xgboost,使用grid search调整参数
还看到一个用Bayesian什么的调参的工具,比grid search快不少
评价方法
为了保证模型稳定,采用了交叉验证实际上cv数据集切分的不一样,对cv的结果影响也很大。如果某一份数据里面有个很大的血糖值,它的mse一定会爆炸。
所以线下cv时,用测试集的均值预测测试集得到一个mse,自己模型的mse与这个mse相比,作为判断模型好坏的依据。
线上和线下差的还是比较多的,就mse而言,线上一直都比线下好;线下有所改进,线上可能反而变差了。应该还是测试集太小的原因吧。
小总结
因为线下和线上不一致的原因,所以一直没啥改进。数据集太小了,导致改个seed结果都会很不一样。就这个比赛而言,数据量还是太小了,后面还是试试kaggle去吧。
相关文章推荐
- 实战天池精准医疗大赛——复赛之妊娠糖尿病与基因数据分析
- 实战天池精准医疗大赛之一_数据分析
- 实战天池精准医疗大赛之二_再接再厉
- 实战天池精准医疗大赛之三_分类回归与排序
- 实战天池精准医疗大赛之四_初赛总结
- [置顶] 数据挖掘实战之天池精准医疗大赛(6)——特征工程2
- [置顶] 数据挖掘实战之天池精准医疗大赛(5)——特征工程1
- [置顶] 数据挖掘实战之天池精准医疗大赛(1)——赛题与数据
- [置顶] 数据挖掘实战之天池精准医疗大赛(7)——模型构建与总结
- 挑战早期肺癌诊断 阿里云启动天池医疗AI大赛
- 比赛三两事-天池工业AI大赛-智能制造质量预测-初赛
- 天池工业AI大赛-智能制造质量预测
- 天池医疗AI大赛支持有感
- 天池阿里音乐流行趋势预测大赛--初赛
- 天池_阿里音乐流行趋势预测大赛(1) —— 赛题分析
- [天池竞赛系列]阿里音乐流行趋势预测大赛初赛三等奖思路
- 阿里云天池医疗AI大赛第一季迎来最后决赛,医疗AI面临哪些机遇与阻碍
- 天池工业AI大赛-智能制造质量预测 比赛历程和技术方案总结复赛48名
- 天池新人实战赛----阿里移动推荐算法大赛(离线赛与平台赛)
- 第5届大学生软件设计大赛赛题-航班延误预测讨论