当前位置: 首页 > 编程日记 > 正文

谷歌新深度学习系统可以促进放射科医生的发展

编译 | 禾木木

出品 | AI科技大本营(ID:rgznai100)

图片

谷歌人工智能研究人员团队在《自然》上发表了一篇新论文,深度学习可以检测出异常胸部 X 光片,其准确度可与专业放射科医生相媲美。

深度学习系统可以帮助放射科医师优先考虑胸部 X 光的检查,还可以在没有经验丰富的放射科医师的紧急情况下作为第一反应工具。研究结果表明,虽然深度学习还没有接近取代放射科医生,但在世界正面临医学专家严重短缺的情况下,它可以帮助提高他们的工作效率。

寻找异常胸部 X 光片

不可否认,人工智能驱动的医学影像分析的进步。现在有数十种医学成像深度学习系统已获得 FDA 和世界其他监管机构的正式批准。

但是这些模型中的大多数的问题在于,它们都是针对非常狭窄的任务进行训练的,例如在 X 射线图像中寻找特定疾病的痕迹和状况。因此,它们仅在放射科医生知道要寻找什么的情况下才有用。

但放射科医生不一定会从寻找特定疾病开始。建立一个可以检测所有可能疾病的系统是极其困难的——如果不是不可能的话。

谷歌的人工智能研究人员在他们的论文中写道:(胸部X射线)异常范围广泛,因此通过构建多个独立的系统来检测每一种可能的情况是不切实际的,每个系统都检测出一个或多个预先指定的条件。

他们的解决方案是创建一个深度学习系统来检测胸部扫描是否正常或包含临床可操作的结果。定义深度学习系统的问题领域是在找到特异性和普遍性之间的平衡。一方面是深度学习模型,它可以执行非常狭窄的任务(例如,检测肺炎或骨折),而代价是不能推广到其他任务(例如,检测结核病)。另一方面,系统可以回答更一般的问题(例如,此 X 射线扫描是否正常或是否需要进一步检查?)

谷歌研究人员的直觉是,即使经过训练的模型没有指出特定疾病,异常检测也会对放射科医生的工作产生很大影响。

研究人员写道:一个可靠的人工智能系统,能够区分正常的 CXR 和异常的 CXR ,有助于及时提高患者的工作和管理。

例如,这样的系统可以帮助降低或排除正常病例,从而加快临床过程。

尽管谷歌的研究人员没有提供他们使用的模型的精确细节,但论文提到了 EfficientNet,这是一个卷积神经网络 (CNN) 家族,以在计算机视觉任务上其他模型的计算成本的一小部分实现最先进的准确性而闻名。

B7 是用于 X 射线异常检测的模型,是 EfficientNet 系列中最大的模型,由 813 层和 6600 万个参数组成(尽管研究人员可能会根据他们的应用调整架构)。有趣的是,研究人员并没有使用谷歌的 TPU 处理器,而是使用了 10 个 Tesla V100 GPU 来训练模型。

避免深度学习模型中不必要的偏差

图片

谷歌的人工智能研究人员采取了几个步骤来确保深度学习系统不会学习到有问题的偏差。

也许 Google 项目中最有趣的部分是为准备训练和测试数据集所做的大量工作。深度学习工程师经常面临的挑战是,他们的模型会发现隐藏在训练数据中的错误偏差。例如,在一个案例中,用于皮肤癌检测的深度学习系统错误地学会了检测皮肤上是否存在尺痕。在其他情况下,模型可能会对不相关的因素变得敏感,例如用于捕获图像的设备品牌。更重要的是,经过训练的模型可以在不同人群中保持其准确性,这一点很重要。

为了确保有问题的偏差不会蔓延到模型中,研究人员使用了六个独立的数据集进行训练和测试。

深度学习模型接受了来自印度五家医院的超过 250,000 次 X 射线扫描的训练。从结果报告中提取的信息,这些示例被标记为“正常”或“异常”。

然后,使用从印度、中国和美国的医院获得的新胸部 X 光片对该模型进行评估,以确保其推广到不同地区。

测试数据还包含训练数据集 TB 和 Covid-19 中未包含的两种疾病的 X 射线扫描,以检查模型对看不见的疾病的表现。

数据集中标签的准确性由三位放射科医生独立审查和确认。

研究人员已公开这些标签,以帮助未来对放射学的深度学习模型进行研究。“为了促进胸部 X 光检查 AI 模型的持续开发,我们将发布来自 3 个放射科医生(810 张图像上的 2430 个标签)的异常标签,用于公开提供的 CXR-14 测试集。我们相信这将对未来的工作有用,因为标签质量对于医疗保健领域的任何人工智能研究都至关重要,”研究人员写道。

通过深度学习增强放射科医生

图片

当深度学习模型和放射科医生一起工作时,结果是提高了速度和生产力。

放射学在深度学习方面有着深厚的学习历史。

2016 年,深度学习先驱 Geoffrey Hinton 说:“我认为如果你是一名放射科医生,你就像一只已经越过悬崖边缘但还没有往下看的土狼,所以它还没有意识到他下面没有地面。人们现在应该停止培训放射科医生。很明显,在五年内,深度学习将比放射科医生做得更好,因为它会获得更多经验,也许可能需要十年的时间,但我们已经有很多放射科医生了。”

但五年后,人工智能并没有让放射科医生失业。事实上,尽管放射科医师的数量有所增加,但全球放射科医师仍然严重短缺,放射科医生的工作不仅仅是查看 X 射线扫描。

在他们的论文中,谷歌研究人员指出,他们的深度学习模型成功地检测到异常 X 射线,其准确性与人类放射科医生是可比的,在某些情况下甚至优于人类放射科医生。然而,他们也指出,该系统的真正好处在于它用于提高放射科医生的工作效率。

为了评估深度学习系统的效率,研究人员在两个模拟场景中对其进行了测试,该模型通过帮助放射科医生确定异常扫描的优先级或排除发现正常的扫描来帮助放射科医生。在这两种情况下,深度学习和放射科医生的结合都有明显的改善了周转时间。

研究人员写道:“无论是部署在相对健康的门诊实践中,还是部署在异常繁忙的住院或门诊环境中,这样的系统都可以帮助优先处理异常 CXR,以加快放射科医生的解释。”

Ben Dickson 是一名软件工程师,也是 TechTalks 的创始人。他撰写有关技术、商业和政治的文章。

参考链接:

https://venturebeat.com/2021/08/12/mural-co-founder-on-running-better-remote-meetings-and-ditching-the-useless-ones/

本文由AI科技大本营翻译,转载请注明出处。

相关文章:

【AngularJS】—— 12 独立作用域

独立作用域的作用 为了便于理解&#xff0c;先看一下下面这个例子&#xff1a; <!doctype html> <html ng-app"myApp"><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><script src"…

nginx虚拟目录设置 alias 和 root

nginx貌似没有虚拟目录的说法&#xff0c;因为它本来就是完完全全根据目录来设计并工作的。 如果非要给nginx安上一个虚拟目录的说法&#xff0c;那就只有alias标签比较“像”&#xff0c;干脆来说说alias标签和root标签的区别吧。 最基本的区别&#xff1a;alias指定的目录是…

避免死锁的一些注意事项

1. 避免嵌套锁&#xff0c; 如果每个线程都只占有一个锁&#xff0c; 则可以很大程度上避免死锁。其死锁的情况是&#xff0c; 线程 1 依次获得 A 对象和 B 对象的锁&#xff0c; 然后决定等另一个线程的信号再继续&#xff0c; 从而先释放了 B 对象的的锁。可是线程 2 需要同时…

这是一个好问题:既然机器可以学习,它们能忘掉吗?

编译 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 很多公司都使用机器学习来分析人们的欲望、厌恶或面孔。研究人员提出了一个不同的问题&#xff1a;我们如何让机器忘记学习&#xff1f; 机器学习正在寻找如何在人工智能软件中诱发选择性失忆的方法。目…

python tar.gz格式压缩、解压

压缩 代码 import tarfile import os def tar(fname):t tarfile.open(fname ".tar.gz", "w:gz")for root, dir, files in os.walk(fname):print root, dir, filesfor file in files:fullpath os.path.join(root, file)t.add(fullpath)t.close()if __nam…

bzoj1251: 序列终结者 (splay)

splay可以用于维护序列&#xff0c;比如noi的维修序列&#xff0c;比如这道 发现当时splay没写总结&#xff0c;也没题解 然后重新写splay竟然耗了一个晚上 结果是因为max【0】没有附最小值&#xff01;&#xff01;血一样的教训 最后祭出inline大法才过&#xff0c;我的splay真…

模型神器组合,yyds!

作者 | 东哥起飞来源 | Python数据科学最近在kaggle上有一个调参神器非常热门&#xff0c;在top方案中频频出现&#xff0c;它就是OPTUNA。知道很多小伙伴苦恼于漫长的调参时间里&#xff0c;这次结合一些自己的经验&#xff0c;给大家带来一个LGBM模型OPTUNA调参的使用教程&am…

理解http响应头中的Date和Age

Date&#xff1a;Date头域表示消息发送的时间&#xff0c;时间的描述格式由rfc822定义。例如&#xff0c;Date: Mon, 04 Jul 2011 05:53:36 GMT。 Age&#xff1a;当代理服务器用自己缓存的实体去响应请求时&#xff0c;用该头部表明该实体从产生到现在经过多长时间了。 比如访…

linux 保留内核中sas驱动的加载导致crash问题

[rootlocalhost ~]# uname -a Linux localhost.localdomain 3.10.0-693.5.2.el7.x86_64 问题描述&#xff0c;在crash的时候&#xff0c;小内核因为分配中断号失败而触发panic&#xff0c;打印如下&#xff1a;&#xff08;备注&#xff1a;本文大内核就是指正常运行的内核&am…

四层和七层负载均衡的区别

负载均衡设备也常被称为"四到七层交换机"&#xff0c;那补充&#xff1a;所谓四层就是基于IP端口的负载均衡&#xff1b;七层就是基于URL等应用层信息的负载均衡&#xff1b;同理&#xff0c;还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。换句换说&…

关于数据库,你可能最想知道的几件事

【CSDN 编者按】随着技术不断更新&#xff0c;数据库的发展可谓全面开花&#xff0c;也吸引了越来越多人的关注&#xff0c;但大家真的都足够了解数据库吗&#xff1f;作者 | 易璜珵 责编 | 侯淼淼出品 | 《新程序员》互联网飞速发展的时代里&#xff0c;数据库、中间件和…

Visual C++ 2012/2013的内存溢出检測工具

在过去&#xff0c;每次编写C/C程序的时候&#xff0c;VLD差点儿是我的标配。有了它&#xff0c;就能够放心地敲代码&#xff0c;随时发现内存溢出。 VLD最高可支持到Visual Studio 2012。不知道以后会不会支持Visual Studio 2013&#xff0c;但反正眼下是不支持的。 相关的讨论…

.NetCore Docker

转载于:https://blog.51cto.com/linhongquan/2047736

集生态之力跨城市数字化之难题,英特尔交上了一份完美答卷

随着数字孪生、人工智能、大数据、云计算、区块链等新兴技术的发展成熟&#xff0c;社会正加大步伐向数字化时代迈进。城市&#xff0c;作为社会民生与经济发展的重要载体&#xff0c;自然站在了数字化建设历程的第一线。当然&#xff0c;数字化城市建设并不是搭建“空中楼阁”…

设置Squid Cache_mem大小

squid代理服务器一般的Unix,Linux都自带。我使用的是CentOS 5.3,Squid是自已编译的。 Squid 默认 cache_mem 100 16 256 打开/etc/squid/squid.conf 配置 $vi /etc/squid/squid.conf #http_port ,是代理的端口&#xff0c;如果没有其他的http服务占用80端口或8080&#xf…

centos iptables关于ping

配置iptables策略后&#xff0c;一般来说INPUT都是DROP然后配置需要通过的 当执行&#xff1a; iptables -P INPUT DROP 后&#xff0c;机器就不能被ping通了&#xff01; 因为icmp没有添加到规则中&#xff01; 于是我执行如下代码&#xff1a; iptables -A INPUT -p icmp -j …

禁止蒙层底部页面跟随滚动

场景概述 弹窗是一种常见的交互方式&#xff0c;而蒙层是弹窗必不可少的元素&#xff0c;用于隔断页面与弹窗区块&#xff0c;暂时阻断页面的交互。但是&#xff0c;在蒙层元素中滑动的时候&#xff0c;滑到内容的尽头时&#xff0c;再继续滑动&#xff0c;蒙层底部的页面会开始…

squid日志文件太大,怎样处理?

Squid 默认的&#xff15;天会压缩一次, 在 /etc/logrotate.d/squid中有设置。如果你修改了日志的位置, 请修改 /etc/logrotate.d/squid /home/log/squid/access.log { weekly rotate 5 copytruncate compress notifempty missingok } /home…

安卓系列七(广播机制)

2019独角兽企业重金招聘Python工程师标准>>> 一、什么是广播接收者 广播接收者&#xff08;BroadcastReceiver&#xff09;用于接收广播Intent&#xff0c;广播Intent的发送是通过调用Context.sendBroadcast()、Context.sendOrderedBroadcast()来实现的。通常一个广…

第九代小冰惊喜登场,多端融合且琴棋书画样样精通

谈及智能助手&#xff0c;相信大家都不会漏过小冰这款具有划时代意义的产品。从最初的微软小冰到现在的第九代小冰&#xff0c;AI的技术在不断的演进&#xff0c;而小冰也从最初的贴心助手变成了如今琴棋书画样样精通的人工智能前沿技术载体。 北京时间2021年9月22日&#xff…

C++对象赋值的四种方式

1. 引用作为参数的方式传递. 1 GetObject(Object& obj) 2 { 3 obj.value value1; 4 } 特点: 在外部构造一个对象. 把该对象以引用的方式传递到函数中. 从而实现对该对象的改变, 该参数实质是一个[out]类型的参数, 而非[in]类型的参数. 这里的引用可以称为别名. 点评: …

金九银十,不要跳槽!

前言:又到了求职的金九银十的黄金月份&#xff0c;我相信有不少小伙伴已经摩拳擦掌的准备寻找下一份工作。就目前国内的面试模式来讲&#xff0c;在面试前积极的准备面试&#xff0c;复习整个 Java 知识体系将变得非常重要&#xff0c;可以很负责任地说一句&#xff0c;复习准备…

FreeMarker标签介绍

FreeMarker标签使用 一、FreeMarker模板文件主要有4个部分组成 1、文本&#xff0c;直接输出的部分 2、注释&#xff0c;即<#--...-->格式不会输出 3、插值&#xff08;Interpolation&#xff09;&#xff1a;即${..}或者#{..}格式的部分,将使用数据模型中的部分替代输…

让Squid 显示本地时间

Squid的Error messages 默认的时间显示的GMT时间&#xff0c;而非本地时间&#xff0c;这个有时候看着很别扭。 下面是修改方法&#xff0c;找到Squid的源文件src/errorpage.c 大概在60多行&#xff0c; { ERR_SQUID_SIGNATURE, "\n<BR clear\"all\">\n&…

linux mysql 命令 大全

linux mysql 命令 大全 1.linux下启动mysql的命令&#xff1a; mysqladmin start /ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysql的命令&#xff1a; mysqladmin restart /ect/init.d/mysql restart (前面为mysql的安装路径) 3.linux下关闭mysql的…

助力5G行业应用扬帆启航,第二届5G毫米波产业高峰论坛圆满召开

当前&#xff0c;5G发展如火如荼&#xff0c;成为引领我国高质量发展的新引擎。5G要想进一步实现向千行百业拓展&#xff0c;离不开全频段的支持&#xff0c;推动5G毫米波发展成为各国共识。为进一步推进5G毫米波产业发展&#xff0c;释放5G全部潜能&#xff0c;助力5G行业应用…

Bootstrap3.x - 源代码分析

参照http://v3.bootcss.com/css/ 文档与源代码colors 比较全面定义总结有意义的颜色。所有uI要用的颜色&#xff0c;都先从已定义的读&#xff0c;这样保证样式的同一性&#xff0c;而且方便以后开发主题库。(建议想自己写css模块的&#xff0c;可以参考一下bootstrap里颜色定义…

清除Squid缓存的小工具

[ 2007-11-2 17:49 | by 张宴 ] 以前我写过一篇《清除指定squid缓存文件的脚本》&#xff0c;但在取URL时存在10%的错误率。如今找到一款老外的程序&#xff0c;可以批量清除某类URL的Squid缓存&#xff0c;支持正则表达式。下载网址&#xff1a;http://www.wa.apana.org.au/~d…

谷歌 AI 编舞师,连张艺兴最喜欢的 Krump 都不在话下

编译 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 舞蹈一直是文化、仪式和庆祝活动的重要组成部分&#xff0c;也是一种自我表达的方式。今天&#xff0c;存在多种形式的舞蹈&#xff0c;从舞厅到迪斯科。然而&#xff0c;舞蹈是一种需要练习的艺术形…

Python 字典(Dictionary)

Python 字典(Dictionary)字典是另一种可变容器模型&#xff0c;且可存储任意类型对象。字典的每个键值(key>value)对用冒号(:)分割&#xff0c;每个对之间用逗号(,)分割&#xff0c;整个字典包括在花括号({})中 ,格式如下所示&#xff1a;d {key1 : value1, key2 : value2 …