GatorTron:挖掘医疗文本中的宝藏
GatorTron all scripts used in gatortron project 项目地址: https://gitcode.com/gh_mirrors/ga/GatorTron
项目介绍
GatorTron 是一个针对电子健康记录(EHR)系统的自然语言处理(NLP)项目。随着电子健康记录系统的快速普及,大量的实际医疗数据被用于研究。然而,许多关键信息,如家族病史、药物不良反应以及社会、行为和环境因素等,通常仅以叙事性临床文本的形式记录,而非结构化数据。GatorTron 通过命名实体识别(NER)技术,将这些丰富的患者特征从非结构化文本中提取出来,以支持依赖结构化数据的下游应用。
项目技术分析
GatorTron 采用了深度学习和 Transformer 架构,特别是基于 Nvidia 的 Megatron Transformer 语言建模框架。该框架通过模型并行(张量并行和流水线并行)以及跨 DGX SuperPOD 的 1,000 多个 A100 GPU 的加速多节点预训练,训练出了迄今为止最大的临床语言模型。
该模型使用佛罗里达大学健康系统的临床笔记进行训练,覆盖超过一百万名患者,其数据集比现有的最大预训练语言模型的数据集大数百倍。此外,模型还利用了特定领域的词汇表,进一步提升了性能。
项目及技术应用场景
GatorTron 的核心应用场景包括电子健康记录中的信息提取、实体识别、关系提取、问答和自然语言推理等任务。以下是一些具体的应用:
- 实体识别(NER):识别患者记录中的关键信息,如疾病、症状、检查结果等。
- 关系提取(RE):确定不同实体之间的关系,如药物与疾病之间的关联。
- 问答系统(QA):根据患者记录回答特定问题,如药物使用情况、检查结果等。
- 自然语言推理(NLI):理解文本中的逻辑关系,如判断两个句子是否具有相同的含义。
项目特点
- 大规模训练数据:GatorTron 使用超过 500GB 的文本数据,包括 UF notes、PubMed 和 Wikipedia,以及超过 1000 亿个单词,确保模型的泛化能力和准确性。
- 多种模型尺寸:提供不同尺寸的模型,包括 GatorTron-base、GatorTron-medium 和 GatorTron-large,以满足不同计算资源的需求。
- 开源可用:GatorTron 的部分模型已公开可用,可通过指定的渠道获取。
- 性能卓越:在脱敏任务(如从受保护的健康信息中检测和删除个人识别信息)上,GatorTron 展示了卓越的性能,达到了当前的最先进水平。
使用指南
GatorTron 系列模型是编码器仅架构,适用于解决自然语言理解问题,如实体识别、关系提取和机器阅读理解等。模型不适合生成性任务。
以下是使用 Hugging Face 接口加载 GatorTron 中等模型的示例代码:
from transformers import AutoModel, AutoTokenizer, AutoConfig
# 加载模型和分词器
tokenizer = AutoTokenizer.from_pretrained('UFNLP/gatortron-medium')
config = AutoConfig.from_pretrained('UFNLP/gatortron-medium')
model = AutoModel.from_pretrained('UFNLP/gatortron-medium')
# 编码输入文本
encoded_input = tokenizer("Bone scan: Negative for distant metastasis.", return_tensors="pt")
# 获取模型输出
encoded_output = model(**encoded_input)
# 你可以将 encoded_output 传递给下游任务层,以解决不同场景的问题,如 NER、RE、MRC 等。
结语
GatorTron 作为一个强大的临床语言模型,为医疗领域的信息提取和分析提供了新的可能性。通过其卓越的性能和灵活性,GatorTron 将有助于推动电子健康记录的研究和应用,为患者提供更精准的医疗服务。有兴趣的读者可以进一步探索和利用这个开源项目,发挥其在医疗数据处理中的潜力。
GatorTron all scripts used in gatortron project 项目地址: https://gitcode.com/gh_mirrors/ga/GatorTron