本项目是阿里天池大赛的一个经典赛题,《瑞金医院MMC人工智能辅助构建知识图谱大赛》,赛题要求选手在糖尿病相关的学术论文和临床指南的基础上,做实体的标注,也就是NLP领域常说的,命名实体识别(Named Entity Recognition, NER)任务。

天池赛题地址:https://tianchi.aliyun.com/competition/entrance/231687/information

视频讲解:https://www.bilibili.com/video/BV18Y411K7QD(合集)

效果预览

输入:每个糖尿病患者,无论是病情轻重,不论是注射胰岛素,还是口服降糖药,都必须合理地控制饮食。
输出:[['Disease', '糖尿病'], ['Drug', '胰岛素'], ['Drug', '口服降糖药']]

类别名称和定义

疾病相关:

1、疾病名称 (Disease),如I型糖尿病。

2、病因(Reason),疾病的成因、危险因素及机制。比如“糖尿病是由于胰岛素抵抗导致”,胰岛素抵抗是属于病因。

3、临床表现 (Symptom),包括症状、体征,病人直接表现出来的和需要医生进行查体得出来的判断。如"头晕" "便血" 等。

4、检查方法(Test),包括实验室检查方法,影像学检查方法,辅助试验,对于疾病有诊断及鉴别意义的项目等,如甘油三酯。

5、检查指标值(Test_Value),指标的具体数值,阴性阳性,有无,增减,高低等,如”>11.3 mmol/L”。

治疗相关:

6、药品名称(Drug),包括常规用药及化疗用药,比如胰岛素。

7、用药频率(Frequency),包括用药的频率和症状的频率,比如一天两次。

8、用药剂量(Amount),比如500mg/d。

9、用药方法(Method):比如早晚,餐前餐后,口服,静脉注射,吸入等。

10、非药治疗(Treatment),在医院环境下进行的非药物性治疗,包括放疗,中医治疗方法等,比如推拿、按摩、针灸、理疗,不包括饮食、运动、营养等。

11、手术(Operation),包括手术名称,如代谢手术等。

12、不良反应(SideEff),用药后的不良反应。

常规实体:

13、部位(Anatomy),包括解剖部位和生物组织,比如人体各个部位和器官,胰岛细胞。

14、程度(level),包括病情严重程度,治疗后缓解程度等。

15、持续时间(Duration),包括症状持续时间,用药持续时间,如“头晕一周”的“一周”。

模型图示

三方库

pip install numpy
pip install pandas
pip install scikit-learn
pip install torch==1.12.0
pip install pytorch-crf==0.7.2
pip install seqeval

课程说明

1、实战项目课,不讲太多理论,对模型基础知识不了解的需要先补课;

2、逐行手敲浪费时间,复制或者 debug 学不会。取折中方案,部分复制,断点调试,加必要解释说明。

本文链接:http://www.ichenhua.cn/edu/note/453

版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!