死亡不可避免,但何时死,人工智能或有发言权
中国有句老话,“阎王要你三更死,谁敢留你到五更”。死亡是生命必经的步骤,当它来临时,纵有亿万家财亦不能兑换生命。
借用中医的老话,“药医不死病,医治有缘人”。病人是否还有继续治疗之必要,史书记载,有的神医能够凭多年行医经验推断。比如,神医扁鹊在两千五百年前的春秋时期就已达到了铁口神断,看一眼便判人生死的水平。
然而纵观千年以降,古时尚且神医难求,又何况中医困窘之今日呢?
如今的医疗现实,不论医院或是患者,都希望用尽现有的医疗手段,仿佛这样,晚期疾病——尤其是肿瘤就能被驱赶出病患的身体。
然而结果是残酷的,经过努力施治,花费海量金钱,最终多数病人却躺在病床上插着管子痛苦死去。起码笔者的外祖父与祖母,人生的最后阶段都是如此痛苦地渡过,每每思之,潸然泪下。
在此且不谈过度治疗的事儿,但讲咱们患者自身以及家属孝子们。医院说:那谁,您家老人这病没法治了,放弃治疗吧。可人家家属不同意啊,“凭啥”说不治就不治了捏,您得给试试啊,咱们现在那可是法制社会,恁么都得给个“凭据”,说出个“一二三四五”来。没凭没据的,医院不治,咱病人可不乐意呢。
“凭啥”、“凭据”、“一二三四五”,要的乃是白纸黑字的客观依据。而这客观依据,笔者很负责地告诉人,依据当前人工智能的发展,确实有望实现了。
前百度首席科学家,来自斯坦福大学的网红科学家吴恩达(Andrew Ng),于2017年11月以通讯作者身份发表论文,介绍了他们团队的最新研究结果:建立一套模型,通过二百万例电子病例学习,使其初步具备了预判病人未来一年的死亡率的能力。
专业学术性文章对于大多数不需要做学术科研的人来说,堆砌数据,大篇幅证明,读之乏味。因此,笔者仅节选少许,并做通俗化解读。
一、吴恩达团队的这套深度学习模型,初步具备死亡预测能力
上图展示了模型的预判能力:当Recall值在34%的时候,准确率超过90%。
优点是:人工智能说你一年内会死,那你九成以上活不了一年;
缺点是:在90%的精确率下,只检出了34%“该死之人”,如果要继续找出其他“该死之人”,精确率就会越来越差。
拿度娘做个“恰当”的比喻,在百度搜索输入“独角兽”三个字,前34页出来的基本都是“聪明的独角兽工作室”,“智慧的独角兽工作室”,“独角兽小编文采惊人”这样精准的结果,但从34页之后,就开始频繁出现不准确的搜索结果,例如“独眼兽工作室大老板和小姨子跑路了”这样的八竿子打不着的新闻。
二、对预测结果能给出靠谱的解释
表中展示的是一位94.6%死亡可能性的患者,判断其生命不足一年的主要依据则如表中所述:膀胱癌病史、前列腺癌病史、外伤和手术导致的肺功能不全、手术中的病理会诊结果、MRI和CT结果等,以客观的解读分析取信医生。
为了验证这套智能系统的预测准确性,医生们曾选取50份病历进行抽样核查(在Recall值0.34以内),结果证明预测完全正确。
而吴恩达团队宣称,他们还将近一步改进算法和模型维度,增大学习的数据库样本,从而继续提升预测精度。
因此,预测死亡这件事,将成为被人工智能攻陷的又一领域。届时,机器凭你的电子病历掐指一算,便知道你能活到几时。
- 仿今天头条加载环境文字闪动效果
- Myexclipse创建Junit测试
- 基于ASP.NET MVC(C#)和Quartz.Net组件实现的定时执行任务调度
- 第五章 正则表达式的拆分
- android 防止反编译的若干方法
- 支持Ajax跨域访问ASP.NET Web Api 2(Cors)的简单示例教程演示
- android 股票K线图
- github搭建个人网站
- Android:一个高效的UI才是一个拉风的UI
- 什么是ORM?为什么用ORM?浅析ORM的使用及利弊
- .NET[C#]中实现实体对象深拷贝(克隆/复制)的几种方法
- Android中图片大小和屏幕密度的关系讲解
- C# WINFORM通过委托和事件窗体间(跨窗体)传值(自定义事件参数)--实例详解
- Apache Spark 2.0预览:机器学习模型持久性
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 常用功能加载宏——单元格合并
- 【Rust日报】2020-07-25 RustScan:一个Rust实现的更快的Nmap
- 常用功能加载宏——单元格字符处理
- 【翻译】Rust生命周期常见误区
- 代码管理
- 【翻译】200行代码讲透RUST FUTURES (3)
- ECCV2020 | FReLU:旷视提出一种新的激活函数,实现像素级空间信息建模
- 字符处理——大小写转换编码知识扩展
- 【Rust日报】2020-07-26 - Easy Rust 让Rust文档更容易理解
- VBA使用API_04:标准控件
- OpenCV与图像处理(五)
- 常用功能加载宏——工作表目录
- VBA操作VBA——VBA工程对象
- 前端|3D立体视频翻转动画
- 利用STS临时密钥服务快速搭建直传页面的实践