Kaggleの医療データから診断ツールを自作してみた話【糖尿病リスク予測 × データサイエンス入門】
はじめまして、rakuです。今回は、Kaggleで公開されている医療系データセットを活用して、糖尿病リスクを予測する診断ツールを構築したプロジェクトについてご紹介します。
「データサイエンスの勉強はしているけれど、何を作ればいいか分からない」
「成果物をブログやポートフォリオにまとめたいけど、手が止まってしまう」
そんな初学者の方に向けて、「小さく始めて、実際に動くものを作る」ための道筋を共有できればと思います。
プロジェクト概要:なぜ糖尿病予測?
糖尿病は現代病とも言われるほど、誰にでも関係する疾患です。生活習慣や体格、年齢など多くの要因が影響します。
今回は、アメリカCDC提供の大規模健康調査データ(Behavioral Risk Factor Surveillance System:BRFSS)を用いて、「あなたの糖尿病リスクを予測する」Web診断ツールを作ってみました。
使用データと分析環境
データ:Kaggle公開のBRFSS2021加工版(数万件の匿名健康データ)
環境:Google Colab + Python(pandas, scikit-learn, xgboost など)
モデル構築:
特徴量選択(SHAPで影響の大きい項目を確認)
XGBoostベースの分類モデル
SHAPにより「GenHlth(自覚的健康評価)」「HighBP(高血圧)」「Age(年齢)」「BMI(体格指数)」が特に重要と判明
モデルをAPI化 → Renderで無料公開
予測モデルを joblib で保存し、FastAPI + Uvicorn を使ってAPI化。
デプロイは無料で使える Render を活用しました。
Web診断フォームからAPIにPOSTすると、即座に予測結果(糖尿病リスク)とアドバイスが返ってきます。
※無償版Renderではアクセスに数秒かかる場合があります。
WordPress連携:診断フォームの実装
構築したAPIをWordPressブログ記事に組み込むには、以下の工夫を行いました:
HTML+JavaScriptで診断フォームを作成
読者が選択した項目をAPIへ送信し、結果をHTMLで表示
表示されるアドバイスには、SHAPによる寄与度に基づいた説明を反映(例:「BMIが高い方はリスクが高い傾向があります」)
公開中の診断ツール(本記事)
実際の診断はこちらのブログ記事から体験できます(WordPress + API連携)
糖尿病リスク予測診断ツール|生活習慣からAIで予測
ぜひ一度チェックしてみてください!
初学者の学びとして最高のプロジェクトだった
このプロジェクトで得られた学びは以下のとおりです:
「なんとなく作る」から「動くプロダクトを共有する」へ
APIの設計・デプロイ・セキュリティまで含めた実装力の向上
WordPressなど非エンジニア向けCMSとの連携方法を体得
今後の展望
より多くのデータを使った精度向上
読者個人の傾向に応じたアドバイス自動生成(NLP応用)
英語対応やスマホUI強化によるグローバル展開
データ・参考リンク
データ出典:Kaggle Dataset: Diabetes Health Indicators
開発環境:Google Colab + FastAPI + Render + WordPress
モデル説明:XGBoost + SHAP分析
最後に
このプロジェクトを通じて、「勉強した知識を自分の形にする」ことの楽しさを強く実感しました。
「ポートフォリオに載せられる作品を作りたい」「とにかく何か動くものを作ってみたい」という方は、ぜひ似たテーマでチャレンジしてみてください!
Discussion