机器学习的出现,是否意味着“古典科学”的过时?
作者:Laura Spinney
译者:刘媛媛
原文:Are we witnessing the dawn of post-theory science?
让我们回忆一下,Isaac Newton 被一个苹果砸中头部,然后是怎么提出牛顿第二定律——万有引力的?
大概过程是这样的:大量的实验和数据分析之后,他意识到,力、质量和加速度之间存在根本的关系。然后他制定了一种理论来描述这种关系,表示为一个方程“F=ma”,并用它来预测苹果以外的物体的行为。事实证明,他的预测是正确的(这对于不要求精确度的人们来说是足够)。
现在,我们再来对比一下当今科学发展的新潮流:Facebook 的机器学习工具比任何心理学家都更能预测你的偏好;DeepMind 开发的 AlphaFold,可以根据蛋白质所含的氨基酸对蛋白质结构做出了迄今为止最准确的预测。
它们的诞生对于科学界的研究范式来说究竟意味着什么?换句话说:获取知识的最佳方式是什么?科学又从何而来?
人类的不安
Facebook 和 AlphaFold 没有提供任何理论解释。这些算法只是完成工作并且效果还不错。我们每天都在见证 Facebook 预测的社会影响。AlphaFold 的影响尚未显现,但许多人相信它将改变医学。
一时间,它们的理论基础似乎隐居二线。
2008 年,时任 Wired 杂志的主编 Chris Anderson 预言了一种理论的消亡。他认为,现在已经积累了如此多的数据,而计算机在发现数据间的关系方面比人类表现的更好。很快,古老的科学方法,即假设、预测、检验,将被扔进历史的垃圾箱。人们不再寻找事物的本质原因,而是满足于数据间的相关性。
事后看来,Anderson 所看到的情况是真实的。大量数据的复杂性无法被我们传统理解的理论所捕捉。
德国马克斯普朗克生物控制论研究所所长、计算神经科学家 Peter Dayan 说:“因为不知道它们会是什么样子的,所以我们甚至没有能力写出对描述有用的理论。”
但 Anderson 对理论终结的预测似乎为时过早。尽管 Facebook 和 AlphaFold 这样的无理论基础的预测引擎取得了成功,但理论不会消亡,此处有以下三个原因。
第一个原因是,我们已经意识到 AI,尤其是神经网络这种机器学习形式,无需接受明确的指令即可从数据中学习,它们本身是容易出错的。想想谷歌搜索引擎和亚马逊招聘工具中记录的偏见就可以明白。
第二,人类对没有理论基础的科学方法深感不安。我们就是不喜欢和黑匣子相处。
第三,可能仍然有很多传统类型的理论(即人类可以理解的)可以有效地解释很多事情,只是尚未被发现。
所以理论还没有消亡,但它正在改变——也许还会变得面目全非。普林斯顿大学心理学家 Tom Griffiths 说:“拥有大量数据时的有意义的理论,与仅拥有少量数据时有意义的理论,看起来是完全不同。”
Griffiths 一直在使用神经网络来帮助改进他所在领域的现有理论,即人类决策。一个关于人们在涉及经济风险时如何做出决策的流行理论是前景理论,它由行为经济学家 Daniel Kahneman 和 Amos Tversky 在 1970 年代提出的(后来 Kahneman 获得了诺贝尔奖)。其核心理念是:人并非总是理性的。
图2 Daniel Kahneman,人类行为前景理论的创始人之一
在 2021 年 6 月的 Science杂志上,Griffiths 的小组描述了他们如何在一个庞大的决策数据集上,训练一个神经网络模型,该数据集包含在 10,000 个有风险的选择场景中人们做出的决策,然后比较模型预测有关前景理论的进一步决策的准确度。他们发现前景理论做得很好,但是神经网络在突出理论失败的地方(即预测失败的地方)显示出它的价值(参见“数据实战派”往期报道)。
Griffiths 认为,这些反例反映的信息量更大,因为它们揭示了现实生活中存在的更多复杂性。例如,正如前景理论所描述的那样,人类不断地根据传入的信息权衡概率。但是,当大脑要计算的竞争概率太多时,他们可能会转向不同的策略。例如,受经验法则的指导,股票经纪人的经验法则,可能与青少年比特币交易员的经验法则不同,因为它来自不同的经验。
“我们基本上是在使用机器学习系统,来识别那些观察与理论不一致的情况”,Griffiths 说。
数据集越大,人工智能学习的不一致就越多。最终得到的结果,不是传统意义上的关于人们如何做出决定的精确主张的理论,而是一组受某些约束的主张。
一种描绘它的方式可能是“如果...那么...”类型规则的分支树,这很难用数学来描述,更不用说用语言描述了。
可理解和预测性之间的权衡
人类也不是第一次面临这种局面了。
1980 年代,语音识别软件先驱 Frederick Jelinek 曾说说:每解雇一名团队中的语言学家,语音识别器的性能就能获得提高。
他的意思是,对理论的执着某种程度上阻碍了实践上的进步。
以预测而蛋白质结构的例子来说明。蛋白质的功能很大程度上取决于它的结构,因此,如果你想设计一种药物来阻断或增强给定蛋白质的作用,你需要了解它的结构。
AlphaFold 使用 X 射线晶体学等技术,对实验推导的结构进行了训练,目前它对于有一些实验数据的蛋白质的预测,比那些没有实验数据的蛋白质的预测更可靠。
欧洲生物信息学研究所 (EMBL-EBI) 前主任 Janet Thornton 说:”模型的可靠性是一直在提高的。缺少理论并不会阻止药物设计师使用它,这只会增进我们对生命和治疗的理解。”
图3 由 AlphaFold 程序模拟的蛋白质结构
同时,也有一部分人显然对这种科学发展方向不太满意。
例如,批评者指出,神经网络可能会产生虚假的相关性,尤其是在训练数据集很小的情况下。
而且所有数据集都是有偏见的,毕竟科学家们收集数据的方式不是均匀或中立的,而是始终考虑某些假设,这些假设对谷歌和亚马逊的人工智能造成了破坏性影响。
正如科学哲学家 Sabina Leonelli 解释的那样:“我们使用的数据环境非常扭曲。”
虽然这些问题确实存在,但计算神经科学家Dayan并不认为它们是不可克服的。
他指出,人类也有偏见,而且与人工智能不同,人类是以非常难以审视或纠正的方式。
AI 新科学面临的一个更大的障碍,可能是人类需要解释这个世界——用因果关系来讨论。
2019 年,西雅图华盛顿大学的神经科学家 Bingni Brunton 和 Michael Beyeler 写道:“这种对可解释性的需求,可能阻碍了科学家们对大脑产生新的见解,这种见解只能从大型数据集中出现”。
但他们对此也表示同情。他们说:“如果要将这些见解转化为药物和设备等有用的东西,计算模型必须产生对临床医生、最终用户和行业可解释和信任的洞察力。”
解决如何弥合可解释性差距的——可解释人工智能,已成为热门话题。但这种差距只会越来越大,我们可能会面临权衡取舍:愿意为可解释性放弃多少可预测性?
对 AI 驱动的科学,还有最后一个反对意见是,人们对旧理论方法仍有待发现,其中可能存在有用的地方(即从离散示例中提取的概括)。而且只有人类才能做到这一点,因为它需要直觉。
换句话说,它需要一种对一般规则相关的示例属性,进行本能的归纳总结。
牛顿厉害的一点,他为了提出牛顿第二定律,必须忽略一些数据。例如,他必须想象,事物在真空中下落,不受空气阻力的干扰。
上个月 Nature 发了一篇文章,德国数学家 Christian Stump 在文中表示,人类这种直觉行为是“发明/发现过程的核心”。但他写这篇文章的原因是,DeepMind 建立了一个机器学习程序,该程序帮助人类数学家从以往的数学中获得新的见解与概括。
因此,可以预见的是,2022 年,AI 会在各种科学过程中留下足迹。
我们越将它纳入人类对知识的追求,它就越会改变这种追求。
我们必须学会忍受这一点,并向自己保证这样一件事:人类仍然在问问题,正如 Pablo Picasso 在 1960 年代所说,“计算机是无用的。他们只能给人类答案。”
往
期
回
顾
技术
100行python代码制作鞭炮
资讯
算力超越iPhone,芯片堪比Mac
技术
31个好用的Python字符串方法
资讯
游戏圈地震级消息,微软收购动视暴雪
分享
点收藏
点点赞
点在看
相关文章:

MySQL5.6.16二进制源码安装详解及一键安装实现
一、系统环境 1.1操作系统 [rootlocalhost ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [rootlocalhost ~]# uname -rm 10.0-693.el7.x86_64 x86_64 [rootlocalhost ~]# 1.2 安装前环境监测 1.2.1.SELinux和系统防火墙关闭 检查selinux [rootlocalho…

基于 OpenCV 的表格文本内容提取
作者 | 小白来源 | 小白学视觉小伙伴们可能会觉得从图像中提取文本是一件很麻烦的事情,尤其是需要提取大量文本时。PyTesseract是一种光学字符识别(OCR),该库提了供文本图像。PyTesseract确实有一定的效果,用PyTessera…

Redis以及Redis的php扩展安装无错版
安装Redis 下载最新的 官网:http://redis.io/ 或者 http://code.google.com/p/redis/downloads/list第一步:下载安装编译 #wget http://redis.googlecode.com/files/redis-2.4.4.tar.gz#tar zxvf redis-2.4.4.tar.gz#cd redis-2.4.4#make #make instal…
Android UI SurfaceView的使用-绘制组合图型,并使其移动
绘制容器类: //图形绘制容器 public class Contanier {private List<Contanier> list;private float x0,y0;public Contanier(){listnew ArrayList<Contanier>();}public void draw(Canvas canvas){canvas.save();canvas.translate(getX(), getY());chi…

新型混合共识机制及抗量子特性的 Hcash 主链测试链即将上线
由上海交通大学密码与计算机安全实验室(LoCCS)及上海观源信息科技有限公司负责研发的、具有新型混合共识机制及抗量子特性的 Hcash 主链代码已完成并在 2017 年 12 月18 日之前上传至github: https://github.com/HcashOrg/hcashd https://git…

CentOS 6虚拟机安装
这篇博客已经被合并到这里了: 虚拟机安装CentOS以及SecureCRT设置【完美无错版】 下面不用看了,看上面即可 1.下载虚拟机Oracle VM VirtualBox最新的下载地址: http://download.virtualbox.org/virtualbox/4.1.6/VirtualBox-4.1.6-74713-Win…

开发中新游戏《庞加莱》
三体题材的游戏,表现三体人在三体星上生活和冒险。收集水和物器,躲避火焰与巨日,探索遗迹并与巨型生物战斗。温度会因太阳位置不同而发生变化,进而对环境产生一定影响。 游戏开发中。 ---- 2017-4-27版视频: http://v.…

介绍一个打怪升级练习 Python 的网站,寓教于乐~
作者 | 周萝卜来源 | 萝卜大杂烩这是一个学习 Python 的趣味网站,通过关卡的形式来锻炼 Python 水平。一共有 33 关,每一关都需要利用 Python 知识解题找到答案,然后进入下一关。很考验对 Python 的综合掌握能力,比如有的闯关需要…

hive基本操作与应用
通过hadoop上的hive完成WordCount 启动hadoop ssh localhost cd /usr/local/hadoop ./sbin/start-dfs.sh cd /usr/local/hive/lib service mysql start start-all.sh Hdfs上创建文件夹 hdfs dfs -mkdir test1 hdfs dfs -ls /user/hadoop 上传文件至hdfs hdfs dfs -put ./try.tx…

PHP源代码分析-字符串搜索系列函数实现详解
今天和同事在讨论关键字过虑的算法实现,前几天刚看过布隆过滤算法,于是就想起我们公司内部的查找关键字程序,好奇是怎么实现的。于是查找了一下源代码,原来可以简单地用stripos函数查找, stripos原型如下: …

麻省理工研究:深度图像分类器,居然还会过度解读
作者 | 青苹果来源 | 数据实战派某些情况下,深度学习方法能识别出一些在人类看来毫无意义的图像,而这些图像恰恰也是医疗和自动驾驶决策的潜在隐患所在。换句话说,深度图像分类器可以使用图像的边界,而非对象本身,以超…

Oracle 查询转换之子查询展开
概念:子查询展开(Subquery Unnesting)是优化器处理带子查询的目标sql的一种优化手段,它是指优化器不再将目标sql中子查询当作一个独立的处理单元来单独执行,而是将该子查询转换为它自身和外部查询之间等价的表连接。这种等价连接转…

Xcode中通过删除原先版本的程序来复位App
可以在Xcode菜单中点击 Product->Clean Build Folder (按住Option键,在windows键盘中是Alt键.) 此时Xcode将会从设备中删除(卸载uninstall)任何该app之前部署的版本. 接下来重启Xcode,再试一下,有时这可以修复非常奇怪(really weird)的问题.

深入理解PHP之OpCode
OpCode是一种PHP脚本编译后的中间语言,就像Java的ByteCode,或者.NET的MSL。 此文主要基于《 Understanding OPcode》和 网络,根据个人的理解和修改,特记录下来 :PHP代码: <?phpecho "Hello World";$a 1…

关于 AIOps 的过去与未来,微软亚洲研究院给我们讲了这些故事
作者 | 贾凯强出品 | AI科技大本营(ID:rgznai100)在过去的15年里,云计算实现了飞速发展,而这种发展也为诸多的前沿技术奠定了基础,AIOps便在此环境中获得了良好的发展契机。在数字化转型的浪潮下,云计算已经…

JS 正则表达式 0.001 ~99.999
^(0|[1-9][0-9]?)(\.[0-9]{0,2}[1-9])?$转载于:https://www.cnblogs.com/wahaha603/p/9050130.html

深入浅出PHP(Exploring PHP)
一直以来,横观国内的PHP现状,很少有专门介绍PHP内部机制的书。呵呵,我会随时记录下研究的心得,有机会的时候,汇总成书。:) 今天这篇,我内心是想打算做为一个导论: PHP是一个被广泛应用的脚本语言…

懒人神器 !一个创意十足的 Python 命令行工具
作者 | 写代码的明哥来源 | Python编程时光当听到某些人说 xx 库非常好用的时候,我们总是忍不住想要去亲自试试。有一些库,之所以好用,是对一些库做了更高级的封闭,你装了这个库,就会附带装了 n 多依赖库,就…

Regular Expression Matching
正则匹配 Regular Expression Matching Implement regular expression matching with support for . and *. . Matches any single character. * Matches zero or more of the preceding element.The matching should cover the entire input string (not partial).The functio…
PI校正环节的程序实现推导过程
PI校正环节在经典控制论中非常有用,特别是对负反馈控制系统,基本上都有PI校正环节。1.下面分别说明比例环节和积分环节的作用,以阶跃信号为例。①比例环节单独作用以上分析说明,若只有比例环节的控制系统,阶跃响应也是…

几行 Python 代码实现邮件解析,超赞~
作者 | Yunlor来源 | CSDN博客前言如何通过python实现邮件解析?邮件的格式十分复杂,主要是mime协议,本文主要是从实现出发,具体原理可以自行研究。一、安装通过mailgun开源的Flanker库实现邮件解析。该库包含了邮件地址解析和邮件…

深入理解PHP原理之变量(Variables inside PHP)
或许你知道,或许你不知道,PHP是一个弱类型,动态的脚本语言。所谓弱类型,就是说PHP并不严格验证变量类型(严格来讲,PHP是一个中强类型语言,这部分内容会在以后的文章中叙述),在申明一个变量的时候࿰…

jQuery中的.height()、.innerHeight()和.outerHeight()
jQuery中的.height()、.innerHeight()和.outerHeight()和W3C的盒模型相关的几个获取元素尺寸的方法。对应的宽度获取方法分别为.width()、.innerWidth()和.outerWidth(),在此不详述。1. .height()获取匹配元素集合中的第一个元素的当前计算高度值 或 设置每一个匹配…

Python实战之logging模块使用详解
用Python写代码的时候,在想看的地方写个print xx 就能在控制台上显示打印信息,这样子就能知道它是什么了,但是当我需要看大量的地方或者在一个文件中查看的时候,这时候print就不大方便了,所以Python引入了logging模块来…

深入理解PHP原理之变量作用域
作者:laruence(http://www.laruence.com/)地址: http://www.laruence.com/2008/08/26/463.html PHP变量的内部表示是如何和用户脚本中的变量联系起来的呢?也就是说,如果我在脚本中写下:<?php $var"laruen…

Azure AI的又一里程碑,Neural TTS新模型呈现真人般情感饱满的AI语音
在人与人之间的对话中,即使是同样的字句,也会因为所处情景和情感的不同而表现出丰富的抑扬顿挫,而这种动态性恰恰是各种AI合成语音的“软肋”。相比于人类讲话时丰富多变的语气,AI语音的“心平气和”往往给人带来明显的违和感。 …

VS2010中“工具选项中的VC++目录编辑功能已被否决”解决方法
http://blog.csdn.net/chaijunkun/article/details/6658923 这是VS2010的改变,不能够在“工具-选项”中看到“VC目录”了。 但是呢,我们可以在另外一个地方找到它,请看下边的对比照片。 VS2008中: VS2010中: 打开方式非…

Bminer 7.0.0 ETH挖矿教程(Linux 64)
Bminer产品介绍Bminer是目前最快的挖矿程序,Bminer是基于NVIDIA GPU深度优化的挖矿软件。Bminer支持Equihash和Ethash两种算法的虚拟币,包括:ETH(以太坊),ETC,ZEC(零币),…

深入理解PHP原理之变量分离/引用(Variables Separation)
引自: http://www.laruence.com/ [风雪之隅 ]在前面的文章中我已经介绍了PHP的变量的内部表示(深入理解PHP原理之变量(Variables inside PHP)),以及PHP中作用域的实现机制(深入理解PHP原理之变量作用域(Scope inside PHP))。这节我们就接着前面的文章,继…

C# 属性、索引
属性(property): public string Name {get{return _name;}set{_name value;} } 简写为: public string Name { set; get;} 索引器(index): 索引器为C#程序语言中泪的一种成员,它是的对象可…