RanaShriii/Lung-Cancer-Detection-Pipeline

GitHub: RanaShriii/Lung-Cancer-Detection-Pipeline

一个端到端的机器学习框架,用于基于临床问卷数据的早期肺癌风险预测和模型比较分析。

Stars: 0 | Forks: 0

# 使用机器学习进行肺癌风险预测 ## 概述 本项目提出一个**端到端的机器学习框架**,用于基于结构化临床问卷数据的**早期肺癌风险预测**。工作流程包括数据预处理、探索性分析、特征选择、多种机器学习模型的对比评估,以及用于二分类任务的神经网络实验。 该实现作为以下研究论文的主要实验流程开发: **基于患者报告临床数据的早期肺癌风险预测机器学习框架** **会议:** MPCON 2026 **状态:** 已接受 • 已发表 • 印刷中 本研究的目标是构建一个可复现、可解释且高效的机器学习流水线,用于基于非侵入性患者报告数据的健康导向风险预测。 # 问题陈述 肺癌的早期诊断通常依赖昂贵或侵入性的诊断方法。本项目探讨是否可以通过机器学习模型,利用**基于问卷的人口统计、生活方式和症状信息**来预测肺癌风险。 目标是开发一个可解释的预测框架,以支持低成本的初步风险评估。 # 数据集描述 数据集包含基于问卷的结构化临床信息,包括: ### 人口统计特征 - 年龄 - 性别 ### 生活方式因素 - 吸烟 - 饮酒 - 同伴压力 ### 症状指标 - 咳嗽 - 喘息 - 胸痛 - 疲劳 - 吞咽困难 - 呼吸短促 - 过敏 - 焦虑 - 黄色手指 - 慢性病 ### 目标变量 ``` 1 → Lung Cancer Present 0 → Lung Cancer Absent ``` 该问题被视为一个**二分类任务**。 # 项目工作流程 ## 1. 数据预处理 实现的预处理流水线包括: - 删除重复项 - 缺失值插补(中位数/众数) - 基于IQR的异常值检测 - 标签编码 - Min-Max归一化 - 分层训练测试集划分(80:20) 目的: - 减少噪声 - 提高模型稳定性 - 处理偏态分布 - 提高泛化能力 ## 2. 探索性数据分析 执行了以下操作: - 特征分布分析 - 相关性分析 - 热图可视化 - 类别平衡检查 - 临床变量间关系分析 EDA在模型训练前帮助识别了有意义的模式。 ## 3. 特征选择 特征选择通过以下方法进行: - 皮尔逊相关系数 - 相关性阈值过滤 - 基于热图的多重共线性检查 所选变量同时保留了: - 统计相关性 - 临床可解释性 ## 4. 机器学习模型 实现并比较了多种经典机器学习算法: ### 经典模型 - 逻辑回归 - K近邻 - 决策树 - 随机森林 - 高斯朴素贝叶斯 - AdaBoost - 支持向量机(RBF核) ## 5. 深度学习模型 使用**TensorFlow/Keras**实现了一个前馈神经网络 架构包括: 输入层 → 隐藏层(ReLU) → Sigmoid输出层 实验了: - 不同学习率 - 不同隐藏层 - 不同训练轮数 - 超参数调优 # 模型评估 模型评估使用了: - 准确率 - 精确率 - 召回率 - F1分数 - ROC-AUC - 分层交叉验证 交叉验证用于提高鲁棒性并减少过拟合。 # 性能总结 | 模型 | 准确率 | AUC | |------|------|------| | 决策树 | ~76% | ~0.80 | | KNN | ~77% | ~0.81 | | 随机森林 | ~81% | ~0.85 | | 高斯朴素贝叶斯 | ~75% | ~0.79 | | AdaBoost | ~80% | ~0.84 | | 逻辑回归 | ~77% | ~0.82 | | SVM (RBF) | ~80% | ~0.86 | | 神经网络 | ~82% | ~0.86 | ### 观察结果 - **随机森林**具有很强的整体稳定性和可解释性。 - **SVM**产生了具有竞争力的ROC-AUC性能。 - **神经网络**达到了相当的准确率,但需要额外调优。 - 集成方法在有限的结构化临床数据上表现良好。 # 使用的技术 ## 编程语言 - Python ## 库与框架 - NumPy - pandas - Matplotlib - scikit-learn - TensorFlow / Keras ## 机器学习概念 - 二分类 - 特征工程 - 统计分析 - 交叉验证 - 超参数调优 - 神经网络 - 模型评估 # 可复现性 为确保实验可复现,工作流程包括: - 固定的随机种子 - 标准化的预处理 - 一致的训练测试集划分 - 交叉验证 - 确定性的评估流水线 这提高了透明度和基准测试的可靠性。 # 仓库结构 ``` ├── 1stProposal.ipynb # Complete implementation notebook ├── survey_lung_cancer.csv # Dataset ├── README.md ``` # 主要成果 ✔ 开发了端到端的健康医疗机器学习流水线 ✔ 比较了经典机器学习和深度学习方法 ✔ 达到了~80–82%的预测准确率 ✔ 展示了可复现的工作流设计 ✔ 贡献于一篇已接受的研究论文 # 未来改进 潜在的扩展包括: - 可解释人工智能 - 超参数优化 - 更大的临床数据集 - 多模态健康预测 - 与医学影像数据的集成 - 使用Flask或FastAPI进行部署 # 研究贡献 本仓库贡献于: **基于患者报告临床数据的早期肺癌风险预测机器学习框架** **会议:** MPCON 2026 **出版状态:** 已接受 • 已发表 • 印刷中 # 免责声明 本项目**仅供研究和教育目的**,不应作为独立的临床诊断系统使用。
标签:Apex, 临床决策支持, 临床数据, 临床调查, 二元分类, 低成本诊断, 分类模型, 医疗健康, 可解释性, 数据管道, 数据预处理, 机器学习, 模型评估, 比较分析, 特征工程, 神经网络, 端到端框架, 肺癌预测, 肿瘤学, 软件工程, 逆向工具, 风险预测