基于语音识别的智能电子病历(一)

引子

A:“上周开年会了!”

俺:“有啥新的动向?”

A:“今年计划开发基于语音识别的智能电子病历。老板说这个算是国内首创!”

俺:“嗯,俺做这个20多年了。”

A:“语言识别 加 AI 的电子病历!”

俺:“明白,俺都做了20多年了,这个的弯弯绕绕、潮起潮落俺都门清。给你说说?”

起初

说起基于语音识别的智能电子病历来,就不得不说一个医疗的小行业“医疗转录”。医疗转录,是指根据医生的口述录音,利用文字处理软件程序对记录医疗过程的档案文件进行信息转录。医疗转录是一个准确并迅速转录口述的医疗报告等资料的过程,包括对历史记录、体检报告、临床诊断、办公笔记、手术报告、会诊记录、出院小结、信件、精神性评估、实验报告、X光报告和病理报告等资料的转录。我们来分析一下医疗转录服务,数据源头来自医生的语音,最终的结果是电子病历的内容,这不就是基于语音识别的智能电子病历的一个业务实现吗?

医疗转录是如何形成一个小行业的?

这个要从美国的医生开始说起。美国医生的地位非常高,成为一个外科医生,大学最短也要读11年,拿到博士学位,之后还有再读几年医科。俺刚参加工作时,有一次在文字中称呼医生为Doctor,同事指出了俺的错误,应该称呼对方为M.D.(Medicinae Doctor) ,称呼对方为Doctor,是一种不尊重。那么,让一个读了11年大学,学费都超过70万美元的外科医生,一个字母一个字母的录入电子病历,是一件很浪费的事情。于是,有了精细化的分工 ,医疗转录服务 来了最初的时候医生是通过录音磁带或者电话,把语音发给医疗转录服务公司。然后这些公司就根据这些语音生成电子病历的内容。

时间来到了1996年,俺当初工作过那就公司诞生了。这是一家提供医疗转录服务 的公司。2017年拿过全美医疗转录质量评比的第一名。拿过NIST的4次认证。2019年被M*Modal 收购。

时间到了2000-07-15,俺入职了。

概述

系统构成

如果说基于语音识别的智能电子病历是一种思路,那么医疗转录服务就是这个思路的具体实现。我我们先从语音说起,在实际的业务中,一般分2两种业务模式。

  • 整体录音(下图的Full Dictation部分),这种方式每个语音文件包含一个或者多个报告,时长也比较长,3到8分钟长的语音比较多。最终产生的也是一个或者多个医疗报告
  • 局部录音(下图的Partial Dictation部分),这种方式一般是和结构化的电子病历一起使用。语音的内容是电子病历中的一段或者一部分。

医生是如何使用的呢?

整体录音(Full Dictation),通常有有些几种方式接入

  • 医院或者医生通过接口或者网站上传语音文件
  • 医生使用电话进行录音,医生拨打电话进行录音。有T1线路+语音卡,也有网络电话的接入。
  • 医生使用手机APP进行录音。例如这个是2009年发布IOS的APP,android下的APP的界面类似。

         

  • 医生在电脑上访问网站或者使用应用软件进行录音。

局部录音(Partial Dictation),一般是和结构化电子病历或者HIS 做对接。

病人的相关数据也需要和医院对接。这个我们自己开发了一个平台用于和医院对接数据。

上面说的2部分,在下面的图上就是最左边的 Input 和 Dictation

数据的来源处理好后,就进入了WMS(Workflow Management System)部分。这部分是核心,包含的东西特别多。从功能上来说有这么几部分:

  • 医疗行业的特定人群的语音识别
  • 富文本报告编辑器
  • 结构化电子病历(CDA)编辑器
  • 和编辑器互联并支持3键脚踏板的语音播放器
  • 医疗行业的语义分析
  • 整合医疗数据的输入法
  • 语音识别的自动再训练
  • 语义分析的自动再训练
  • 基于医疗知识的拼写检查和内容检查
  • 多级质检系统
  • 报告系统

每个部分其实都有很多可以讲的东西,以后再说。

生成好的报告或者电子病历,有时还要进行电子签名。电子签名的技术简单,就是业务复杂。电子签名一般 Dictator 、Attend 、Ordering 、Referring 、PCP、 DictatorFor  等多个角色 。每个角色都有可能有替代医生。签名规则也比较多 。有些医院的某些报告需要多个角色的合签。有的合签还规定了不同的角色签名的前后顺序。之前做过一次梳理,业务上 240多种不同的业务分支。

最后一步就是把数据送回医院,除了和医院的系统对接之外(每个医院都有不同的接口方式)。还有其他Email 、传真、打印、发布到APP 等方式。传真在国内用的不多,但是在美国还是有很多地方在用。

运营模式

实施一般不收费,公司是根据服务量收费,古早的时候 一般每行是6-8美分。有些复杂的甚至能谈到1毛。现在随着语音识别和AI的运用,价格已经降低了到了4-6美分。这个还分本土服务和国际服务。

  • 本土服务:数据不流出美国本土 。价格会贵1-2分。
  • 国际服务:报告在印度、菲律宾等国家完成。价格便宜。

语音识别和人工智能在这个行业能够很早使用,也是和这种运营模式分不开的。每个公司千方百计的提高工作效率。在同样的工作时长,完成的报告行数越多,报告的质量越好,公司越有竞争力。因为安装一般不收钱,报价比其他公司少1分钱,就可以抢走其他公司的客户。

行业发展

2000年之后 Nuance (已被微软用197亿美元)是第一个大规模使用语音识别的公司。Nuance最早的识别引擎是基于隐含马尔科夫链。对于特定人群来说,基于隐含马尔科夫链还是不错的。因为是为每个医生训练模型,隐马的效果还是不错的。这个版本的内部代号是Dragon,在帮助文件的后半部分都是程序员的照片和聚会照片,是个很特别的帮助。

2010年之后M*Modal(其开发团队被3M用8亿美元收购,2亿现金加6亿股份)开始快速发展,很快成为行业第2。M*Modal的优势主要有以下2点:

  • 结构化电子CDA编辑器和CDA发布
  • 识别的再训练

2020之后出现了一家新的公司Soniox 。这家公司的语义分析不错,特别是对于新报告的处理。

上面说的 M*Modal、 Nuance、Soniox ,我们都长期合作过。另外我们自己也有一个引擎,而且可以兼容 M*Modal、 Nuance的数据格式。能够平滑替代M*Modal和Nuance的服务。目前我们每个月会处理400万分钟的医生的录音。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/587800.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

38-3 Web应用防火墙 - 安装配置WAF

首先需要安装Centos 7 虚拟机:Centos7超详细安装教程_centos7安装教程-CSDN博客 安装配置WAF 在桌面环境中,右键点击打开终端,首先执行以下步骤: 1)安装必要的工具: 输入命令: sudo su yum install -y wget epel-release 2)第二步,安装依赖工具,输入以下命令: y…

云原生Kubernetes: K8S 1.29版本 部署Sonarqube

一、实验 1.环境 (1)主机 表1 主机 主机架构版本IP备注masterK8S master节点1.29.0192.168.204.8 node1K8S node节点1.29.0192.168.204.9node2K8S node节点1.29.0192.168.204.10已部署Kuboard (2)master节点查看集群 1&…

用FPGA+DAC输出“心”形波

1.前言 之前在做信号处理的时候整了一下活,用FPGADAC(数模转换器),输出了一个爱心形状的波形,今天整理资料的时候偶然发现了他,现在把他分享出来。当时将DAC的输出接在示波器上显示如下图所示: …

java中的运算

进制 十进制二进制Binary:0b、0B开头;八进制octal: 0开头十六进制: 0x或者0X开头; 二进制表达式 一个字节,最高位是符号位:0标识正数,1表示负数;计算机底层使用补码的…

香港Web3,步履蹒跚

4月30日,6支香港虚拟资产现货ETF在香港交易所敲钟上市,正式迎来市场首秀。 而在前一周,香港证监会(SFC)官网就已列出华夏基金(香港)、博时国际和嘉实国际三家基金公司的比特币和以太坊现货ETF,并陆续披露了…

Python-快速搭建一个管理平台

目录 📜 准备工作 一、项目介绍 ✨ 二、制作数据库表 添加信息 ⚒️ 三、运行client.exe 🚀 1、连接数据库,选择对应表,生成代码 2、把后端代码依次复制到项目中 3、把前端代码依次复制到前端项目中 4、添加路由 四、运行后端项目…

安卓中级控件(图形、选择按钮、文本输入、对话框)

图形定制 图形Drawable Android把所有能够显示的图形都抽象为Drawable类(可绘制的)。这里的图形不止是图片,还包括色块、画板、背景等。 包含图片在内的图形文件放在res目录的各个drawable目录下,其中drawable目录一般保存描述性…

react完整项目搭建的思路

react完整项目搭建的思路 react完整项目搭建的思路1.使用creacte-react-app初始化项目2.安装所需插件:路由、网络、样式、组件库3.reactjs目录结构组织4. 配置路径别名4.配置路由5.网络配置,对axios进行封装》获取当前环境变量 6.配置代理解决跨域7.配置使用iconfont8.状态管理…

暗区突围steam叫什么 暗区突围无限steam上线时间测试申请预约教程

暗区突围steam叫什么 暗区突围无限steam上线时间 测试申请预约教程 最近暗区突围国际服的上线在游戏圈内引起了不小的波澜,这是一款由腾讯游戏开发的大逃杀类型游戏,玩家们需要在暗区内浴血搏杀,使用各种武器和道具活到最后,来取…

Linux系统中搭建Mosquitto MQTT服务并实现远程访问本地消息代理进行通信

文章目录 1. Linux 搭建 Mosquitto2. Linux 安装Cpolar3. 创建MQTT服务公网连接地址4. 客户端远程连接MQTT服务5. 代码调用MQTT服务6. 固定连接TCP公网地址7. 固定地址连接测试 今天和大家分享一下如何在Linux系统中搭建Mosquitto MQTT协议消息服务端,并结合Cpolar内网穿透工具…

Visual Source Safe 安装与使用教程

1.VSS 的工作原理: Microsott的 vss讲所有的项目源文件(包括各种文件类型)以特有的方式存入数据库。用户成员不能对该数据库中的文件进行直接的修改,而是由版本管理器将该项目的远程序或是子项目的程序拷贝到各个用户成员自己的工作目录下进行调试和修改,然后将修改后的项目…

OpenFeign修改HttpClient为Apache HttpClient 5

OpenFeign中http client 如果不做特殊配置,OpenFeign默认使用JDK自带的HttpURLConnection发送HTTP请求, 由于默认HttpURLConnection没有连接池、性能和效率比较低。所以修改为Apache HttpClient 5。 总结为两步: 加依赖改yml 具体操作请往…

OpenCV如何为等值线创建边界旋转框和椭圆(63)

返回:OpenCV系列文章目录(持续更新中......) 上一篇:OpenCV 为轮廓创建边界框和圆(62) 下一篇:OpenCV的图像矩(64) 目标 在本教程中,您将学习如何: 使用 OpenCV 函数 cv::minAreaRect使用 OpenCV 函数 cv::fitEllipse cv::min…

【C++】学习笔记——string_2

文章目录 六、string类2. 反向迭代器const迭代器 string类对象的容量操作(补)size() 3. string类的元素访问4. string类的修改 未完待续 结合文档食用~ 六、string类 2. 反向迭代器 一般来说,迭代器都是正向的遍历容器,虽然可以…

Cmake的使用

一个c工程可能会涉及到很多的基础库,但是c不像python一样可以直接import,因此引入了Cmake,将多个库链接起来。 参考:CMake系列讲解 - 总目录(由浅入深,实例讲解)_cmake 项目目录-CSDN博客 【C】…

Unity类银河恶魔城学习记录 17-1,2 p166 Aliments fx p167 Blackhole additional vfx

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Entity.cs using System.Collections; using System.Collections.Generic; …

综合性练习(后端代码练习4)——图书管理系统

目录 一、准备工作 二、约定前后端交互接口 1、需求分析 2、接口定义 (1)登录接口 (2)图书列表接口 三、服务器代码 (1)创建一个UserController类,实现登录验证接口 &#xff…

OpenCV Mat对象与CImage对象间的数据传输实例

在用MFC写图像处理程序时,使用OpenCV可以做到事半功倍。但是,如果使用OpenCV4.0或OpenCV4.0以后版本,要显示图像可能会遇到麻烦,因为OpenCV去掉了原有的cvGetWindowHandle()函数,没法再用cvGetWindowHandle()函数来获取…

Linux进程管理与监控

一、相关概念 1、进程的的基本定义 在自身的虚拟地址空间运行的一个独立的程序,从操作系统的角度来看,所有在系统上运行的东西,都可以称为一个进程。 2、进程的分类 系统进程:可以执行内存资源分配和进程切换等管理工作&am…

C#知识|泛型集合List相关方法

哈喽,你好,我是雷工! 以下为泛型集合List相关方法的学习笔记。 01 集合定义 集合定义的时候,无需规定元素的个数。 02 泛型说明 泛型表示一种程序特性,也就是在定义的时候,无需指定特定的类型&#xff…