大脑中的学习机制: 海马体与新皮层构成的互补学习系统

2024-05-08 02:48

本文主要是介绍大脑中的学习机制: 海马体与新皮层构成的互补学习系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    写这篇文章的原因是基本没有关于中文大脑互补学习系统(complementary learning systems)的文章。应该说有很多关于互补学习系统的英文论文,这里也是一个总结加一点自己的见解,具体见参考文献。

海马体在学习和记忆中的角色

   

     海马体系统是一个广泛存在于哺乳动物的脑区,在学习和记忆中扮演重要的特殊角色。要确切的定义海马系统的边界是困难的,这里也不去定义。应该说海马体所扮演的角色是很多重的,如下:

     记忆记忆是海马体的基础功能,也是所有智能生命存在的基础,比如我们平时记忆电话号码,记忆单词,学习开车,会用到海马体,海马体不断的记忆关联事件,并且遗忘不重要的信息。尤其大家体会比较深的是记忆单词,如果几天不复习的话就忘记了,尤其是死记硬背的东西很容易遗忘,因为海马体打分机制,这种死记硬背没有与以前信息有多少关联就很容易消失了,而对于某些单词我们不但记忆他的意思还看他的用法及在很多句子中的使用,那么这种记住的单词就不容易忘记且更容易转化为长期记忆。

     导航作用,即通过存储的位置记忆碎片,重构出在当前位置下的地理空间地图(这里叫模式补全,Pattern Completion),比如:我们到了一个陌生的地方,我们就在不断的熟悉该地方的图像和感知数据,如这里是否有标志性建筑,是否有河等等,当我们迷路的时候如果回到以前到过的地方,那么海马体就可以记忆重现,给出一种到过的感觉,甚至可以通过记忆碎片重构出该地区的3D地图,然后不断的感知重放重构达到导航的目的,在计算机视觉中对应的技术为SLAM(simultaneous localization and mapping),但是现在的SLAM没有人的那么强大。

    记忆检索与重构,上面也说了扮演GPS的角色本身就有记忆检索的作用,就是根据当前看到的场景检索出相关的其他事物,而且这种检索很强大,他强大的地方在于可以通过不完整的感知数据检索出以前有过的相关事物,比如我们看到一个人的背影,那么这个背影是不完全的,但是如果这个背影是我们熟悉的人,那么我们就会产生熟悉的感觉,并且会自动的重构出这个人的其他信息,然后去识别,当然识别可能会不准确,因为相似的背影总是存在的,这个时候我们的认知系统会要求补充信息(主动信息收集),如一个人的正面,这个时候就可以达到非常准确的辨别。

    信息整合,上面的两个作用应该也阐述出了信息整合的功能,对于不完整的信息,比如我们在大街上看见一个熟悉的面孔,但是这个时候我们的认知系统不会马上判断这个人,而是先判断这个人可能是谁,再去整合出预测的人平时的信息,包括发型,穿什么样的衣服,穿什么样的鞋子,走路姿态,甚至声音...然后再根据整合的信息与当前这个人的信息加权对比,然后再去判断这个人是谁,当然整合的信息可以不是所有信息,只要当前有效信息达到可靠的预测精度就可以了。可以看到我们判断人更多的是依靠综合的上下文信息,不断检索出事件相应的信息,最后根据检索出的信息作判断,甚至当检索信息仍然不足以判断的时候认知系统还要求主动的收集必要的信息到海马体,如:我们看警察侦查案件的时候,信息往往是不充分的,这个时候信息搜集就是必要的。上面我们也看到了信息整合包含了重建上下文信息的作用,自动关联与记忆检索本身就在重建上下文信息,如看到词汇:医院,就能相应的重建出医生,护士,生病,开刀等等上下文信息。这里的上下文和神经网络模型 RNN,LSTM,NTM所利用的上下文有很大不同。

   自动关联,应该说海马体无时无刻不在自动关联相应的信息,比如我们听歌的时候会关联到当时的心里状态,外部环境,只是说这种关联可能变成了长期的关联,我们有的时候会听到以前听过的歌的时候,会重现出当时的心情。其实这些关联都是潜意识的,有的时候我们并没有意识到,而这种能力或许是无监督学习的关键。

    快速学习,如我们学习打街机游戏,刚开始的时候是不会的,这个时候我们就需要记住在某个状态时应该做哪个操作,即成对的输入-输出映射 input-output pairs mapping,然后不断的这样做,这个时候实际上我们并没有学会,而只是根据状态给出操作,而且反应并不快,这种快速的学习能力和记忆有点类似。

    辅助学习,海马体有记忆的作用,而这种记忆可能是很容易消失的,比如我们学习开车这种重复性很高的技能,那么海马体是如何做的呢?即将记忆转化为技能,而这种转化过程叫学习。应该说这种转化过程是无时无刻不在进行的,只是我们很难意识到,尤其在睡眠期间的记忆重放,那么你是否有在第二天感觉到技能提升呢?这就是海马体辅助新皮层学习,即将关联记忆重放出来使新皮层学习为潜意识的条件反射。这种辅助学习可能是一种权衡机制,如果本身海马体就可以处理当前问题为什么要转化为类似于条件反射的的技能呢?可能是计算复杂度的权衡,如果每时每刻都要海马体去检索当前状态所应该的操作是很耗能量的,所以如果把这种(状态,操作)的成对事件学习为直接映射那么就能达到更快的速度和更少的能量消耗。还有就是海马体的记忆容量是有限的,这么多的成对数据如果转化学习为映射函数那么就能获得更紧凑的表示。

新皮层系统

    新皮层占据成年人整个大脑皮层表面的94%,相对于海马体,新皮层显得更为简洁。新皮层的功能是非常多的,如:把声音转成语言、处理颜色、表达恐惧、辨识面孔、物体识别等等,新皮层的简洁在于每个区都有特定的功能,如辨识,语言等,都在各自的分区内,而海马体是一个相对比较混合的系统。相对于海马体,新皮层的学习速度很慢,比如我们学习骑车,尤其是刚学习的时候,当然这个时候海马体是参与进来了的,理论上说,当我们不再依赖注意力去学习的时候才算新皮层学会了骑车。而在学习的过程中又牵涉到灾难性遗忘(Catastrophic forgetting)与增量学习问题[8-9],比如如果我们用学习开车的这个区域再去学习跳舞,那么就会导致该区域学习开车的技能丢失,那么我们也知道,我们大脑是采取用分区来避免这个差异性比较大的学习造成灾难干扰用人工神经网络来说就是,这两个任务或许有相似的结构但是他们的参数是很不同的,两个任务序列学习会导致前面任务的遗忘。而如骑自行车和骑摩托车是相似的任务,而且往往现实中相似任务是非常多的,如果我们全都用不同的脑区去学习就很浪费脑空间,所以这里就有一个机制来权衡网络的结构和参数,最大化参数和结构的利用,使得相似的任务有相似的激活脑区域。

其他

结构是智能生命的核心,深有感悟

"Structure is always central in biology," said study leader Scott Emmons, Ph.D., professor of genetics and in the Dominick P. Purpura Department of Neuroscience and the Siegfried Ullmann Chair in Molecular Genetics at Einstein. "The structure of DNA revealed how genes work, and the structure of proteins revealed how enzymes function. Now, the structure of the nervous system is revealing how animals behave and how neural connections go wrong to cause disease."

总结

    互补学习系统是一个大脑学习的重要框架,权衡了快速学习和慢速学习,快速学习与慢速学习都有各自的优点和缺陷,快速学习学习速度快但是更加消耗时间与能量,快学习也在为慢学习准备数据,而慢速学习学习速度慢但是可以利用结构和参数信息紧凑的表示任务,且在新皮层工作的时候有快的运行速度,慢学习更像是用空间换时间,这就解释了为什么我们的新皮层很大,因为要容纳非常多的任务,相对而言海马体就小了很多能容纳的任务就很少,现在的神经网络也类似与新皮层系统,也会产生灾难性遗忘,那么如何避免灾难性遗忘与增量学习,需要借鉴于我们大脑的处理方式。

 

 

参考:

    1. Complementary Learning Systems

    2. Conjunctive Representations inLearning and Memory:Principles of Cortical andHippocampal Function

    3. Hippocampal and neocortical contributions to memory: advances in the complementary learning systems framework

    4. Hippocampus, cortex, and basal ganglia: Insightsfrom computational models of complementary learning systems

    5. Modeling Hippocampal and Neocortical Contributionsto Recognition Memory: A Complementary LearningSystems Approach

    6. Why There Are Complementary Learning Systems in the Hippocampusand Neocortex: Insights From the Successes and Failures of Connectionist Models of Learning and Memory

    7. Multiple View Geometry in Computer Vision

    8. Catastrophic Forgetting in Connectionist Networks

    9. Overcoming catastrophic forgetting in neural networks

   10. What Learning Systems do Intelligent Agents Need? Complementary Learning Systems Theory Updated

 

如有错误请不吝指出

这篇关于大脑中的学习机制: 海马体与新皮层构成的互补学习系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/969097

相关文章

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Go语言并发之通知退出机制的实现

《Go语言并发之通知退出机制的实现》本文主要介绍了Go语言并发之通知退出机制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、通知退出机制1.1 进程/main函数退出1.2 通过channel退出1.3 通过cont

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

Java中的xxl-job调度器线程池工作机制

《Java中的xxl-job调度器线程池工作机制》xxl-job通过快慢线程池分离短时与长时任务,动态降级超时任务至慢池,结合异步触发和资源隔离机制,提升高频调度的性能与稳定性,支撑高并发场景下的可靠... 目录⚙️ 一、调度器线程池的核心设计 二、线程池的工作流程 三、线程池配置参数与优化 四、总结:线程

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon