速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

Amazon Comprehend Medical, 针对医疗保健客户的自然语言处理

  • 2019-10-15
  • 本文字数:2731 字

    阅读完需:约 9 分钟

Amazon Comprehend Medical, 针对医疗保健客户的自然语言处理

作为肠胃科医生和皮肤科医生的后代,在我的成长过程中一直充满了各种晦涩难懂的对话,包含无穷无尽的复杂医学术语:人类解剖学、外科手术、药物名称……以及它们的缩略词。充满求知欲的小孩想知道他的父母是否对这些奇怪的话语感到难以理解,这真的是一段有趣的经历。


因此,非常高兴能发布 Amazon Comprehend Medical,这是 Amazon Comprehend 针对医疗保健客户的延伸。


关于 Amazon Comprehend 的简介


Amazon Comprehend 于去年在 AWS re:Invent 启用。简单来说,该自然语言处理服务针对语言检测、个体分类、情感分析和关键词提取提供了简洁实时 的 API。此外,它还允许您采用名为“主题建模”的无导师学习技术自动编组文本档案。


使用 FINRA、LexisNexis 或 Isentia、Amazon Comprehend 可以理解一般用途的文本。然而,鉴于临床资料非常特殊的属性,医疗保健客户已经要求我们设立专为其特殊需求而定制的 Amazon Comprehend 版本。


隆重推出 Amazon Comprehend Medical


Amazon Comprehend Medical 设于 Amazon Comprehend 顶部,并增加了以下功能:


  • 支持在大量医疗术语词汇中进行个体提取和个体识别:解剖、病情、手术、药物、缩略词等。

  • 在这些类目和子类中精确查找个体提取 API (detect_entities) 。

  • 受保护健康信息提取 API (detect_phi) 可以查找详细联系信息、医疗记录号等。

  • 提醒:Amazon Comprehend Medical 可能无法准确识别所有情况下的受保护健康信息,无法满足 HIPAA 的受保护健康信息去识别化要求。您有责任审阅 Amazon Comprehend Medical 提供的任何输出信息,以确保其满足您的需求。


现在,让我向您展示如何使用这一新服务。首先,我将使用 AWS 控制台,然后会运行一个简单的 Python 示例。


在 AWS 控制台上使用 Amazon Comprehend Medical


打开 AWS 控制台,所有需要做的是粘贴部分文本并点击“分析”按钮。



正在分析文本立即处理文档。个体被提取出来并突出显示:我们看到个人信息为橙色,药物为红色,解剖学信息为紫色,病情为绿色。



Amazon Comprehend Medical


准确获得个人识别信息。对于在交流或出版前需要对文档隐去姓名资料的研究者而言,这是非常重要的。而且,“皮疹”和“睡眠障碍”被准确检测为由医生诊断出的病情(‘Dx’ 是“诊断”的速记写法)。也会检测到药物。


然而,Amazon Comprehend Medical 不仅限于简单的医疗术语提取。它还可以理解复杂的关系,如药物剂量或详细的诊断信息。这有一个很好的例子。



Amazon Comprehend Medical


如您所见,Amazon Comprehend Medical 可以找出 ‘po‘ 和 ‘qhs‘ 等缩略词:第一个表示药物为口服,第二个则为 ‘quaque hora somni‘(是的,拉丁语)的缩略词,即为睡前。


现在,让我们稍微深入一点,运行一个 Python 示例。


用 AWS SDK 针对 Python 使用 Amazon Comprehend Medical


首先,我们输入 boto3 SDK,创建一个服务客户端。


import boto3comprehend = boto3.client(service_name='comprehendmedical')
复制代码


现在,我们在文本样本中调用 detect_entity API,并打印检测到的个体。


text = "Pt is 40yo mother, software engineer HPI : Sleeping trouble on present dosage of Clonidine.Severe Rash  on face and leg, slightly itchy  Meds : Vyvanse 50 mgs po at breakfast daily, Clonidine 0.2 mgs -- 1 and 1 / 2 tabs po qhs HEENT : Boggy inferior turbinates, No oropharyngeal lesion Lungs : clear Heart : Regular rhythm Skin :  Papular mild erythematous eruption to hairline Follow-up as scheduled"
result = comprehend.detect_entities(Text=text)entities = result['Entities']for entity in entities: print(entity)
复制代码


看一下该药物个体:它有三个嵌套属性(剂量、路径和频率),三个属性增加了至关重要的上下文。


{u'Id': 3,u'Score': 0.9976208806037903,u'BeginOffset': 145, u'EndOffset': 152,u'Category': u'MEDICATION',u'Type': u'BRAND_NAME',u'Text': u'Vyvanse',u'Traits': [],u'Attributes': [  {u'Id': 4,     u'Score': 0.9681360125541687,     u'BeginOffset': 153, u'EndOffset': 159,     u'Type': u'DOSAGE',     u'Text': u'50 mgs',     u'Traits': []     },  {u'Id': 5,     u'Score': 0.99924635887146,     u'BeginOffset': 160, u'EndOffset': 162,     u'Type': u'ROUTE_OR_MODE',     u'Text': u'po',     u'Traits': []     },  {u'Id': 6,     u'Score': 0.9738683700561523,     u'BeginOffset': 163, u'EndOffset': 181,     u'Type': u'FREQUENCY',     u'Text': u'at breakfast daily',     u'Traits': []     }]}
复制代码


还有另一个例子。该病情个体由“否定”识别完成,意味着未检测到病情,即为该患者没有任何口咽病变。


{u'Category': u'MEDICAL_CONDITION',u'Id': 16,u'Score': 0.9825472235679626,u'BeginOffset': 266, u'EndOffset': 286,u'Type': u'DX_NAME',u'Text': u'oropharyngeal lesion',u'Traits': [    {u'Score': 0.9701067209243774, u'Name': u'NEGATION'},    {u'Score': 0.9053299427032471, u'Name': u'SIGN'}]}
复制代码


我向为您展示的最后一个功能是用 detect_phi API 提取个人信息。


result = comprehend.detect_phi(Text=text) entities = result['Entities'] for entity in entities: print(entity)
复制代码


在该文本中出现了几条个人信息,我们精确提取出了这几条个人信息。


{u'Category': u'PERSONAL_IDENTIFIABLE_INFORMATION',u'BeginOffset': 6, u'EndOffset': 10, u'Text': u'40yo',u'Traits': [],u'Score': 0.997914731502533,u'Type': u'AGE', u'Id': 0}
{u'Category': u'PERSONAL_IDENTIFIABLE_INFORMATION',u'BeginOffset': 19, u'EndOffset': 36, u'Text': u'software engineer',u'Traits': [],u'Score': 0.8865673542022705,u'Type': u'PROFESSION', u'Id': 1}
复制代码


如您所见,Amazon Comprehend 可帮助您提取复杂的信息和关系,同时操作起来特别简单。


再次提醒,请记得 Amazon Comprehend Medical 并非专业医疗设备、诊断或治疗的替代品。您肯定要仔细审阅它提供的任何信息,并在作出决定前根据经验进行判断。


现已推出


我希望这篇博文提供了丰富的有用信息。您现在就可以开始用 Amazon Comprehend Medical 在以下地区开发应用程序:美国东部(弗吉尼亚北部)、美国中部(俄亥俄)、美国西部(俄勒冈)和欧洲(爱尔兰)。


此外,该服务属于 AWS 免费套餐范畴:注册后三个月,前 25000 份(或 250 万字)文本免费。


为什么不在最近的处方或医学考试中试一试,并让我们了解您的想法呢?


— Julien;


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/amazon-comprehend-medical-natural-language-processing-for-healthcare-customers/


2019-10-15 11:16646
用户头像

发布了 1850 篇内容, 共 119.0 次阅读, 收获喜欢 78 次。

关注

评论

发布
暂无评论
发现更多内容

事业-最佳实践-架构-降低系统复杂度

南山

架构设计 架构设计原则 设计原则 复杂度 系统复杂度

事业-最佳实践-架构-理解软件架构的意义

南山

架构 软件架构

一键自动化博客发布工具,用过的人都说好(头条篇)

程序那些事

工具 程序那些事 自动发布

【IT小知识】堡垒机支持哪些私有云平台?

行云管家

网络安全 私有云 等保 堡垒机

中间件是什么?信创中间件有哪些牌子?

行云管家

中间件 信创 堡垒机

【深度解析】那些你不得不知的常见接口协议!

测试人

软件测试

报名倒计时丨职场<火焰杯>测试开发大赛报名仅剩最后3天!

测试人

软件测试

如何用ByteHouse,实现金融场景下的精准营销

Geek_2d6073

CHIMA 回顾|图尔兹携 HySuite 亮相,新一代医疗数据安全方案更全面、更精准、更智能

BinTools图尔兹

数据安全 电子病历 数据库管理 医疗信息化 互联互通

LLM 大模型学习必知必会系列(五):数据预处理(Tokenizer分词器)、模板(Template)设计以及LLM技术选型

汀丶人工智能

人工智能 大模型

【FAQ】HarmonyOS SDK 闭源开放能力 —Map Kit(2)

HarmonyOS SDK

HarmonyOS

事业-最佳实践-架构-框架选型

南山

框架 技术选型 框架选型

火焰杯测试开发大赛赛前辅导——web自动化

霍格沃兹测试开发学社

AI晚报|GPT-4o最新语音交互模式即将上线,微软Build 2024开发者大会即将开幕...

可信AI进展

人工智能

LED显示屏:舞台艺术变革

Dylan

艺术 科技 LED显示屏 led显示屏厂家 舞台表演

那些你不得不知的常见接口协议!

测吧(北京)科技有限公司

测试

报名倒计时丨职场<火焰杯>测试开发大赛报名仅剩最后3天!

测吧(北京)科技有限公司

测试

赛前辅导 | 职场<火焰杯>测试开发大赛赛前辅导-Web自动化测试

测吧(北京)科技有限公司

测试

事业-最佳实践-架构-泛化建模

南山

领域驱动设计 DDD 领域建模 领域模型 泛化

自如开启国际化租房业务布局,中国经验能否复制到全球?

Alter

Databend 开源周报第 145 期

Databend

低代码赋能!让传统工业企业重新夺回数字化转型主动权!

优秀

低代码 数字化转型 工业数字化

即刻职达携手众多企业达成战略合作,共绘人力资源行业创新发展新篇章

新消费日报

融云荣获甲子光年「2024 中国 AI 出海服务创新企业」奖

融云 RongCloud

实战指南:API 集成测试详解

Apifox

测试 后端 集成测试 API 测试工具

Amazon Comprehend Medical, 针对医疗保健客户的自然语言处理_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章