百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

两个黑箱问题——深度神经网络和脑神经网络

wptr33 2025-02-28 17:40 10 浏览

谷歌DeepMind 团队的研究将认知心理学(cognitive psychology)和深度神经网络(deep neural network,DNN)结合在一起,并发现两者在小样本词汇学习(从一个示例中猜出一个单词的意思,one-shot word learning)过程中具有相似之处——DNN 和脑神经网络都具有形状偏好(shapebias),相关研究论文《Cognitive psychology for deep neural networks: A shape bias case study》被国际机器学习学会(IMLS)收录[1]。深度学习和神经科学的学科交叉对未来的发展方向具有很强的指导意义,这项研究也为DNN 的机理以及脑神经网络的理论基础研究提供了一种可行的解决思路,而真正破解DNN 和脑神经科学的黑箱问题依然任重道远。

两个黑箱问题

DNN 在很多复杂任务上取得了前所未有的进展,如人脸识别、围棋以及Atari游戏,但是其解决方案也远远超出了我们的理解范围,成为了一个名副其实的黑箱。这种黑箱模型在很大程度上能够简单便捷地解决许多实际问题,但是从科学研究和实际应用的角度上看,我们需要理解并改变世界,只有破解DNN 的黑箱问题之后,才能更好地运用并改善该模型,同时提升实际应用中的可靠性。

在这种黑箱问题背景下,建立更加优秀而且可理解的神经网络系统成为一个热门的研究方向。许多研究者都认可:DNN 的图像处理模型与动物的视觉处理通路具有相似之处,动物的视觉处理通路存在感受野、方向选择性以及分级处理等特性,而模仿动物视觉信息处理的DNN 也具有类似的特性;此外,DNN的快速发展也促进了视觉神经科学方面的研究,形成了有效的正反馈;从更加宏观的角度来看,感受野、方向选择性、分级处理这些特性也会使DNN 和动物视觉信息处理在更高层次上具有一定的相似性。这种共同点以及两者相互促进的机制正是开展DNN 黑箱问题与认知心理学的交叉研究的基础。破解DNN 黑箱问题,首当其冲的是为该问题建立一套完整的问题描述方法及实验研究方法;由于DNN 与脑神经网络存在一定的共性,因此DNN 黑箱问题与脑神经科学的交叉研究正是一种行之有效的方法。尽管脑神经网络是一个更加庞大的黑箱,但是人们对于大脑的解码走在DNN黑箱问题的前面,对大脑的研究已经建立了一套系统的研究方法,这套研究方法也可以作为DNN 黑箱问题的基础。

DNN 与脑神经网络的异同点

认知心理学是研究脑神经网络的一门重要学科,认识心理学中一个经典的案例是考察儿童如何识别和标识物体,探索儿童如何从一个示例中猜出一个单词的意义;认知心理学的研究成果表明,儿童会通过采用归纳偏好来消除许多不正确的推理,而且形状偏好强于颜色偏好。在人工智能中,能够进行小样本学习的深度神经网络(matching network),凭借一个孤立样本,就取得了ImageNet 图像分类任务中目前最佳性能,而且该模型也更倾向于形状偏好。小样本学习的能力和形状偏好特性是DNN 与脑神经网络的共性,但是DNN和大脑终究就是两个差异很大的模型,一点小的共性难以弥补两者之间的鸿沟。

首先,DNN 和大脑的拓扑结构有很大的差别,DNN 往往具有非常规则的连接,而真实的脑神经网络之间的连接极其复杂,而且不同物种的脑神经网络连接也会有所不同;如大小鼠、猫和猴存在感受野以及视觉信息分级处理的机制,但是大小鼠没有功能柱,而猫和猴存在功能柱(具有相同感受野并具有相同功能的视皮层神经元,在垂直于皮层表面的方向上呈柱状分布);猫和狗的视锥细胞非常少,对颜色不敏感,猴和树鼩则具有丰富的颜色视觉;青蛙和兔子这类的低等动物的视觉信息处理系统对运动的物体非常敏感;每一类生物在漫长的进化过程中,都已经形成了最适应其生存环境的形态结构,而目前DNN 模型的拓扑结构与任何一种生物的神经网络结构都相去甚远。此外,DNN 的计算方式与大脑的信息处理方式也有很大不同,DNN 一般都是确定性的数学模型,给定输入之后,按照给定的计算流程,所有的中间变量以及最后的输出都是确定的;对于大脑来说,给定一个输入,会得到一个确定的输出,但是中间变量不是确定的(即每次看到一个苹果时,大脑会认出这是一个苹果,但是每次都只观察视觉信息处理过程中很小的一个神经环路时,这个环路的状态是变化的,而这种变化却不影响最终的输出)。从输入到输出,DNN 只有一条确定的路,而大脑每一次都走了一条不同的路,这就是DNN 的确定性与脑神经网络的不确定性之间的矛盾。

加强深度学习与脑科学交叉研究

DeepMind 团队认为这项形状偏好的研究表明:认知心理学工具具有揭示DNN 隐藏计算过程的能力,同时能够提供一个人类词汇学习的计算模型,对此我们持一定的怀疑态度。首先,DNN 和大脑的拓扑结构具有很大的差异,即使二者具有感受野、方向选择性、信息分级处理、以及形状偏好等形同特性,也并不能说明二者的计算过程有多少相似性;此外,学习和记忆也是认知心理学中亟待解决的黑箱问题,在得到透彻理解之前,并不能单方面地成为破解DNN 的黑箱问题的武器。值得肯定的是,深度学习与脑科学的交叉研究是未来必然的发展趋势;在2016 年,《Nature Neuroscience》上的一篇文章介绍了一种对更高层的视觉皮层的神经活动进行建模的目标驱动分层卷积神经网络(Goal-driven hierarchical convolutional neural networks,HCNNs),该研究表明目标驱动的HCNNs 能够揭示视觉皮层信息处理过程形成和发展的机理[2];神经科学和认识心理学并不是单纯的实验科学,只有基于DNN 这一类有效的理论分析方法,才能将二者推向更高的层次;从另一个角度看,随着对脑神经网络认识的深入,人们能够发掘出脑神经网络更多的特性,这些特性很有可能成为不断理解与完善DNN 模型的切入点,成为破解DNN黑箱问题的可行途径。

参考文献

[1] Ritter S, Barrett D G T, Santoro A, etal.Cognitive psychology for deep neural networks: A shape bias casestudy[C/OL]//Proceedings of the 34 th International Conference on Machine Learning. [2017-06-29].https://arxiv.org/pdf/1706.08606.pdf.

[2] Yamins D L K, Dicarlo J J. Usinggoal-driven deep learning models to understand sensory cortex[J]. Nature Neuroscience, 2016,19(3): 356-365.

(责任编辑 刘志远)


作者简介:袁培江,北京航空航天大学机械工程及自动化学院,副教授;苏峰,北京航空航天大学机械工程及自动化学院,硕士研究生。

本文发表在2017年第18期《科技导报》,欢迎关注。本文部分图片来自互联网,版权事宜未及落实,欢迎图片作者与我们联系稿酬事宜。

相关推荐

每天一个编程技巧!掌握这7个神技,代码效率飙升200%

“同事6点下班,你却为改BUG加班到凌晨?不是你不努力,而是没掌握‘偷懒’的艺术!本文揭秘谷歌工程师私藏的7个编程神技,每天1分钟,让你的代码从‘能用’变‘逆天’。文末附《Python高效代码模板》,...

Git重置到某个历史节点(Sourcetree工具)

前言Sourcetree回滚提交和重置当前分支到此次提交的区别?回滚提交是指将改动的代码提交到本地仓库,但未推送到远端仓库的时候。...

git工作区、暂存区、本地仓库、远程仓库的区别和联系

很多程序员天天写代码,提交代码,拉取代码,对git操作非常熟练,但是对git的原理并不甚了解,借助豆包AI,写个文章总结一下。Git的四个核心区域(工作区、暂存区、本地仓库、远程仓库)是版本控制的核...

解锁人生新剧本的密钥:学会让往事退场

开篇:敦煌莫高窟的千年启示在莫高窟321窟的《降魔变》壁画前,讲解员指着斑驳色彩说:"画师刻意保留了历代修补痕迹,因为真正的传承不是定格,而是流动。"就像我们的人生剧本,精彩章节永远...

Reset local repository branch to be just like remote repository HEAD

技术背景在使用Git进行版本控制时,有时会遇到本地分支与远程分支不一致的情况。可能是因为误操作、多人协作时远程分支被更新等原因。这时就需要将本地分支重置为与远程分支的...

Git恢复至之前版本(git恢复到pull之前的版本)

让程序回到提交前的样子:两种解决方法:回退(reset)、反做(revert)方法一:gitreset...

如何将文件重置或回退到特定版本(怎么让文件回到初始状态)

技术背景在使用Git进行版本控制时,经常会遇到需要将文件回退到特定版本的情况。可能是因为当前版本出现了错误,或者想要恢复到之前某个稳定的版本。Git提供了多种方式来实现这一需求。...

git如何正确回滚代码(git命令回滚代码)

方法一,删除远程分支再提交①首先两步保证当前工作区是干净的,并且和远程分支代码一致$gitcocurrentBranch$gitpullorigincurrentBranch$gi...

[git]撤销的相关命令:reset、revert、checkout

基本概念如果不清晰上面的四个概念,请查看廖老师的git教程这里我多说几句:最开始我使用git的时候,我并不明白我为什么写完代码要用git的一些列指令把我的修改存起来。后来用多了,也就明白了为什么。gi...

利用shell脚本将Mysql错误日志保存到数据库中

说明:利用shell脚本将MYSQL的错误日志提取并保存到数据库中步骤:1)创建数据库,创建表CreatedatabaseMysqlCenter;UseMysqlCenter;CREATET...

MySQL 9.3 引入增强的JavaScript支持

MySQL,这一广泛采用的开源关系型数据库管理系统(RDBMS),发布了其9.x系列的第三个更新版本——9.3版,带来了多项新功能。...

python 连接 mysql 数据库(python连接MySQL数据库案例)

用PyMySQL包来连接Python和MySQL。在使用前需要先通过pip来安装PyMySQL包:在windows系统中打开cmd,输入pipinstallPyMySQL ...

mysql导入导出命令(mysql 导入命令)

mysql导入导出命令mysqldump命令的输入是在bin目录下.1.导出整个数据库  mysqldump-u用户名-p数据库名>导出的文件名  mysqldump-uw...

MySQL-SQL介绍(mysql sqlyog)

介绍结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同...

MySQL 误删除数据恢复全攻略:基于 Binlog 的实战指南

在MySQL的世界里,二进制日志(Binlog)就是我们的"时光机"。它默默记录着数据库的每一个重要变更,就像一位忠实的史官,为我们在数据灾难中提供最后的救命稻草。本文将带您深入掌握如...