shaistashahid-ai/Patient-Intelligence-Pipeline
GitHub: shaistashahid-ai/Patient-Intelligence-Pipeline
结合时间序列分析、相似性搜索与多种机器学习分类器,基于可穿戴生命体征数据实现患者异常检测和自动诊断预测的医疗数据分析 Pipeline。
Stars: 0 | Forks: 0
# 患者智能 Pipeline:时间序列分析、相似性搜索与临床诊断分类
## 概述
本项目使用模拟的患者监测数据集,实现了一个用于预测性医疗分析的完整患者智能 Pipeline。该系统结合了时间序列分析、趋势检测、相似性搜索和监督机器学习技术,旨在识别患者病情恶化、发现临床相似的患者特征,并根据历史生命体征数据自动分类患者诊断。
本项目作为 **DS-3002 Data Mining – Assignment #3 (Spring 2026)** 的一部分,在 FAST-NUCES 开发。
## 目标
该项目解决了三个主要的医疗分析挑战:
1. 检测患者生命体征随时间变化的趋势和异常。
2. 使用基于距离的相似性度量识别临床相似的患者。
3. 构建并比较多个机器学习模型,以实现自动诊断预测。
## 数据集
**数据集:** 模拟患者生命体征数据集
**特征:**
* 约 60,000 条记录
* 500 名患者
* 每名患者约 120 次读数
* 每 6 小时收集一次读数,持续 30 天
### 特征字段
| 特征 | 描述 |
| ---------------------- | ------------------------- |
| PatientID | 匿名患者标识符 |
| Timestamp | 读数时间戳 |
| HeartRate | 心率 (bpm) |
| BloodPressureSystolic | 收缩压 |
| BloodPressureDiastolic | 舒张压 |
| BloodOxygenLevel | 血氧饱和度 (%) |
| BodyTemperature | 体温 (°C) |
| RespiratoryRate | 每分钟呼吸次数 |
| SleepHours | 睡眠时长 |
| StressLevel | 压力评分 (1–10) |
| Age | 患者年龄 |
| Gender | 患者性别 |
| Diagnosis | 目标类别标签 |
### 诊断类别
* Healthy
* Hypertension
* Diabetes
* Arrhythmia
* Sleep Disorder
## 数据预处理
预处理 pipeline 执行以下操作:
* 时间戳解析与验证
* 缺失值检测
* 生理范围过滤
* 数据集清洗
* 按患者构建时间序列
* 特征工程
### 患者级特征
针对每名患者和生命体征:
* 均值
* 标准差
* 最小值
* 最大值
* 线性趋势斜率
这些特征被用于相似性搜索和分类任务。
## Part A:时间序列分析与趋势检测
### 技术
* 心率时间序列可视化
* 描述性统计
* 变异系数分析
* 移动平均平滑
* 时间序列分解
* 趋势检测
* 统计异常检测
### 方法
* 7 点滚动均值
* 14 点滚动均值
* 加法季节性分解
* 个性化阈值异常检测 (μ ± 2σ)
### 输出
* 患者趋势可视化
* 趋势分析报告
* 异常汇总
* 对检测到的模式的临床解释
## Part B:相似性搜索与患者匹配
### 距离度量
* Euclidean Distance
* Manhattan Distance
### 时间序列相似性
* Dynamic Time Warping (DTW)
### 应用
* 最近邻患者检索
* 临床病例匹配
* 风险特征识别
* 新患者诊断支持
## Part C:监督分类
实现并比较了五种机器学习模型。
### 1. Decision Tree
* Entropy 或 Gini 准则
* 深度调优
* 特征重要性分析
### 2. 基于规则的分类
* 决策树规则提取
* 可解释的临床规则
### 3. k-Nearest Neighbour (kNN)
* 超参数调优
* Euclidean 与 Manhattan 比较
### 4. Naïve Bayes
* Gaussian Naïve Bayes
* 特征分布分析
### 5. Support Vector Machine (SVM)
* One-vs-Rest 多分类策略
* RBF Kernel
* Polynomial Kernel
* 交叉验证调优
## 评估指标
每个分类器使用以下指标进行评估:
* Accuracy
* Precision (Macro)
* Recall (Macro)
* F1 Score (Macro)
* 混淆矩阵
## 使用技术
* Python 3.x
* Pandas
* NumPy
* Matplotlib
* Seaborn
* Scikit-learn
* Statsmodels
* dtaidistance
* tslearn
* imodels
## 安装说明
```
git clone https://github.com/your-username/patient-intelligence-pipeline.git
cd patient-intelligence-pipeline
pip install -r requirements.txt
```
## 预期成果
完成的 pipeline 提供:
* 检测异常的患者轨迹
* 识别临床相似的患者
* 自动诊断预测
* 对经典机器学习方法的比较评估
* 用于医疗分析的可解释决策支持
## 许可证
本项目仅用于教育和学术目的。
FAST-NUCES
标签:Apex, 分类算法, 医疗数据分析, 可穿戴设备数据, 异常检测, 时间序列分析, 机器学习, 相似性搜索, 逆向工具