GithubHelp home page GithubHelp logo

fghj96321 / tianchi_competition_diabetes Goto Github PK

View Code? Open in Web Editor NEW

This project forked from whatduck/tianchi_competition_diabetes

0.0 0.0 0.0 187 KB

天池-人工智能辅助糖尿病预测Rank42/2522

Python 30.86% Jupyter Notebook 69.14%

tianchi_competition_diabetes's Introduction

天池大赛-人工智能辅助糖尿病预测复赛42名

赛题描述

心血管病、糖尿病等慢性疾病,每年导致的死亡人数占总死亡人数的80%,每年用于慢病医疗费用占**公共医疗卫生支出的比例超过13%。作为一种常见慢性疾病,糖尿病目前无法根治,但却能通过科学有效的干预、预防和治疗,来降低发病率和提高患者的生活质量。阿里云联合青梧桐健康科技有限公司主办天池精准医疗大赛——人工智能辅助糖尿病遗传风险预测,希望用人工智能的方法处理、分析、解读和应用糖尿病相关大数据,让参赛选手设计高精度,高效,且解释性强的算法来挑战糖尿病精准预测这一科学难题,为学术界和精准医疗提供有力的技术支撑,帮助我们攻克糖尿病。 比赛地址 数据地址

运行环境

  • python 3.5.2
  • numpy
  • pandas
  • xgboost
  • lightgbm
  • sklearn

文件说明

  • pre_test.ipynb 初赛code
  • final_test.ipynb 复赛code
  • else.py 比赛期间尝试的其他方法
  • final.csv 提交结果

分析思路

  • 初赛时,预测血糖浓度,MSE为评判标准,drop大量缺失特征,对连续特征进行简单分箱降噪处理,对缺失值采用尝试采用-999,中位数,众数填充,最终基于本地CV对连续变量采用中位数填充,分类变量采用众数填充。基于可视化观察到一个血糖异常高的值,drop之后,线上提升较大。未进行样本平衡处理时,线上成绩一直在200开外,后想到分类方法,选取血糖浓度10为阈值,将血糖值降序排列后,取前1000个样本和后1000个样本进行训练预测测试集血糖分类,然后分别选用初始训练集血糖浓度高的前500个数据预测分类高的样本,后2000样本预测分类低的样本,线上效果显著,顺利进入复赛。

  • 复赛,预测病人是否患有糖尿病,采用分类模型,f1_score为评分标准,基于原始数据背景,做了许多关于肾脏,心血管,酶细胞,血压的组合特征,尝试多项式组合特征,过拟合十分严重,弃用,尝试auto-sklearn方法,过拟合严重,弃用,最终采用相关系数和随机森林法选取100维特征,通过模型融合得到最终结果。

比赛感悟

  • 过拟合是不可避免的,因此每次换数据之后,排行榜都是大变,有时候可以适当简化特征,简化模型,效果或许会出其不意

其他说明

  • code为三人共同修改,因此我这边版本可能会与最终提交版本有些许差别,但基本**一定不变

tianchi_competition_diabetes's People

Contributors

whatduck avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.