基于随机森林和Web部署的糖尿病预测

基于随机森林和Web部署的糖尿病预测

项目背景

糖尿病是全球日益严重的健康问题,主要源于我们久坐的生活方式。然而,通过及时发现和适当的医疗干预,其不良影响可以显着减轻。利用技术,尤其是机器学习,可以极大地帮助这种情况的早期发现和管理。这是我们最新项目的关键——一个根据关键健康指标预测糖尿病存在的机器学习模型。

我们的模型建立在最初来自国家糖尿病、消化和肾脏疾病研究所的数据集上,数据来源于 Kaggle。该研究重点关注 21 岁及以上的女性患者,使用怀孕次数、胰岛素水平、体重指数和年龄等参数。我们为这项任务选择了一个简单而有效的随机森林分类器。

项目目标

该项目的旅程具有教育意义且内容丰富,涵盖了机器学习项目的几个关键方面:

  • 数据收集:获取和理解数据集。
  • 描述性分析:通过各种统计方法探索数据集。
  • 数据可视化:通过数据的可视化表示获得见解。
  • 数据预处理:清理和准备建模数据。
  • 数据建模:构建机器学习模型。
  • 模型评估:评估模型的性能。
  • 模型部署:使模型可通过 Web 应用程序访问。

项目应用

该糖尿病预测项目通过运用机器学习技术(随机森林),为早期和便捷的诊断提供了新途径,有潜力彻底改变糖尿病的管理方式,通过为个人和医疗专业人员提供预测性见解来赋能。其在现实世界中的应用具有巨大潜力,能够增强预防性医疗,降低风险,并促进主动的健康策略。

项目效果

请点击下方,观看gif动态

图片[1]-基于随机森林和Web部署的糖尿病预测-点头深度学习网站

用户可以将怀孕次数、胰岛素水平、年龄和体重指数等关键健康指标输入到 Web 应用程序中。根据这些输入,模型预测存在糖尿病的可能性,并将结果显示在新页面上。

模型选择与依赖库

我们选择随机森林作为预测模型,主要是因为它在处理大量数据集时展现出的高效性和准确性,特别是在识别潜在的糖尿病风险因素方面。此外,随机森林能够有效处理特征间的复杂交互关系,且相对于其他复杂模型更易于实现和解释,使之成为理想的选择。

我们将使用PyTorch作为深度学习框架,因为它提供了强大的工具和易用的接口,使模型训练和部署变得更加简单。另外,我们还将使用Flask来构建Web应用程序,以便将训练好的模型部署到网页中。Flask是一个轻量级的Python框架,非常适合快速搭建Web应用程序,并提供了与模型交互的接口。

项目目录

图片[2]-基于随机森林和Web部署的糖尿病预测-点头深度学习网站

code文件是存放代码的,其中static是Web网页中需要显示的图片。

temples是Web网页显示所需的一些布局所用的html文件。

app.py是启动Web网页的程序。

train.py是使用随机森林在该项目上的训练代码。

diabetes-prediction-rfc-model.pkl是train.py脚本训练后保存的模型的权重,建议再执行app.py之前,先执行train.py重新训练权重,防止sk-learn版本更新造成的模型结构变化。

data文件夹中存放的是训练数据。

Diabetes Classification_.ipynb类似train.py,是模型训练脚本的jupyter形式,与其不同的是其中包括很多数据分析。

项目运行

当前项目目录下,启动终端,输入命令 python app.py 即可。可详见上述gif动态图。

如果想重新训练模型,请在项目目录下启动终端,输入命令 python train.py建议重新训练

代码及数据集下载

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容