本项目旨在运用机器学习方法分析电子医疗健康记录数据,具体而言,我们致力于利用患者入住 ICU 后 24 小时内的特征数据来判断其是否可能患有感染性休克,并预测感染性休克的发作时间以及患者的生存时间。因此,本项目包含三个子任务,需要进行分类预测和回归预测。我们希望通过这项工作,为借助电子医疗数据改善医疗决策的人工智能方法提供有力支持,为患者提供更好的医疗护理和治疗。
子任务一:感染性休克患者分类,根据输入的患者特征判断患者是否是感染性休克患者;
子任务二:感染性休克患者病发时间预测,输入患者入住 ICU 后 24h 的数据,预测患者感染性休克病发时间;
子任务三:感染性休克患者生存时间预测,输入感染性休克患者数据,预测患者生存时间。
在任务一中,我们采用了严格的特征筛选方法,精选出了84种与输出结果密切相关的特征数据,并在模型的选择上采取了多样性策略,不仅仅局限于单一模型,而是结合了多种经典的机器学习算法,进行全面而深入的考虑。
在任务二中,考虑到数据的复杂性以及标签样本的不确定性,我们采用了一种计算差值的方法作为标签生成的依据。具体而言,我们将已知患者感染性休克病发时间与患者疑似感染的时间相减,得到一个时间差值,并将这个时间差值作为标签用于模型的训练和预测输出。这个差值不仅提高了结果的可解释性,使读者能够直观地了解到患者在疑似感染后可能病发的时间,还增强了数据的一致性。通过用时间差值替代原始的长字符型时间戳格式数据,我们进一步提高了医疗数据的可复用性和可优化性。
在任务三中,我们将任务一和任务二的方法相结合,直接使用现有标签作为正负样本进行模型训练。同时,我们保持了数据清洗处理流程和模型的整体稳定性,突显了模型的通用性和资源利用效率。这一综合策略旨在充分利用已有资源,确保模型在不同任务之间的共享性,并为进一步的研究和应用提供了有力支持。
python = 3.8 # python版本
>>> import torch # pytorch版本
>>> print(torch.__version__)
1.13.1
必要的库为: pandas、sklearn、numpy
├ ─ ─ README.md // 中文帮助文档
├ ─ ─ README_en.md // 英文帮助文档(English)
├ ─ ─ EICU_data |— — 1-sepshock_MIMIC_allfeatures |— — sep_shock_admtime
├ ─ ─ EICU_project |— — task1.py |— — task2.py |— — task3.py |— — model.py |— — util_data.py
本项目为 2023 年“大湾区杯”粤港澳 AI for Science 科技竞赛获奖作品,已申请**国家软件著作权和相关授权保护。我们拥抱开源但拒绝直接盗用,核心代码已稍作修改删减,大家可对数据预处理和模型训练的过程自行补充扩展,本项目思路仅供参考!