HTM学习笔记

2024-06-05 13:48
文章标签 学习 笔记 htm

本文主要是介绍HTM学习笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

层级实时记忆(Hierarchical Temporal Memory,HTM)脑皮质学习算法(Cortical Learning Algorithms)。文章内容概要

  • HTM概述HTM Overview
    • 引言
    • HTM原理HTM Principles
      • 层级性Hierarchy
      • 区域Regions
      • 稀疏分布表示Sparse Distributed Representations
      • 时间的角色The role of time
    • 学习Learning
    • 推理Inference
    • 预测Prediction
    • 行为Behavior
  • HTM脑皮质学习算法
    • 术语Terminology
      • 细胞的状态Cell States
      • 树突段Dendrite Segments
      • 突触Synapses
    • 综述Overview
    • 共有的概念Shared Concepts
      • 二值权重Binary Weights
      • 联通值Permanence
      • 树突段Dendrite Segments
      • 潜在突触Potential Synapses
      • 学习Learning
    • 空间沉积池概念Spatial Pooler Concepts
    • 空间沉积池细节Spatial Pooler Details
    • 时间沉积池概念Temporal Pooler Concepts
    • 时间沉积池细节Temporal Pooler Details
    • 单一源与可变源的序列与预测First order versus variable order sequences and prediction
  • 参考文献


HTM概述(HTM Overview)

引言

HTM模仿新大脑皮层结构。

  • 新大脑皮层是智能思维产生的地方。
  • 高级视觉、听觉、触觉、运动、语言及计划都受新大脑皮层控制。
  • 新大脑皮层的神经回路具有高度的统一性,用一套公用算法去实现诸多不同的智能。

HTM为理解新大脑皮层及其机能提供了一个理论框架,目前仅实现了其中的一小部分。

HTM可以被视为一个神经网络。HTM神经元模型(在HTM中称为:细胞)是按列、按层、按区域排列的,且有等级划分。

HTM从根本上将是一个基于记忆的系统。传统的计算机记忆模型是一种平面的组织结构并且没有考虑时间性;HTM的记忆是有等级性的并且本质上是基于时间的,信息总是以分散模式存储。

HTM不仅可以接受人类视觉、触觉、听觉、语言及行为等输入流;还可接受来自非人类感官的输入流,例如雷达和红外线, 或者只是纯信息例如金融数据、天气数据、网络信息、文本等。

HTM原理(HTM Principles)

层级性(Hierarchy)

一个HTM网络是由按层级排列的区域组成的,区域是一个HTM网络的主要记忆和预测单元。层级和区域基本上是同义词,当描述内在功能时使用“区域”,当描述区域对整个层级的影响时,使用“层级”。
图1-1 一个四区域在四层级HTM中的排列

组合多个HTM网络,使得处理来自不同感受器的数据变为可能且更有意义。
图1-2 组合多个HTM网络

层级组织结构的好处就是高效。它显著减少了训练时间和使用的记忆空间,因为每一层级中已学会的模式将以一种新奇的方式在更高的层级中得到重用。以视觉为例,在层级的最底层,存储着视觉区域中极小组成部分的信息,如边和角。这些低级模式在中层级中重组成更复杂的模式,如曲线和条纹。这些中级的模式进一步组合成代表高级对象的模式,如物体。

HTM中需要多少层级,每层级存储多少信息存在一个权衡问题。然而,HTM可以自动从输入和已分配资源的统计资料中得出最佳的表征分配方式。

区域(Regions)

新大脑皮层是一张约2mm厚的巨大的神经细胞层,根据区域相互间的连接方式将其划分为不同的区域。

  • 新大脑皮层的区域在细节上看起来是相似的,不同的是尺寸及其在层级中的位置。
  • 新大脑皮层区域的每一层内有许多相互连接成列的细胞。
  • 新大脑皮层中的“第三层”是神经的主要前馈层之一。

HTM的区域也是由一层成列的高度内联的细胞组成;HTM区域中的细胞略等于新大脑皮层“第三层”区域中的神经细胞。
图1-3 HTM区域的一部分

HTM区域由许多细胞组成,细胞以成列的二维平面形式组织在一起。上图中为一个每列含4个细胞且每一列连接到另一子集的输入,每个细胞和区域中的其它细胞相连。HTM区域以及它的柱状结构等同于新大脑皮层区域中的一层神经细胞。

稀疏分布表示(Sparse Distributed Representations)

大脑中的信息总是通过巨大数量的神经细胞中的一小部分活跃细胞来表示,这种编码方式叫做“稀疏分布表示”

HTM的区域也使用稀疏分布表示,HTM的记忆机制依赖于且仅依赖于稀疏分布表示。HTM区域的输入总是离散表征,但可能并不稀疏,所以HTM区域所做的第一件事就是输入稀疏化。

图1-4 一个含有稀疏分布活跃细胞的HTM区域

时间的角色(The role of time)

时间在学习、推理和预测中扮演着举足轻重的角色。

  • 视觉、听觉、触觉在一般情况下都需要基于时间变化的输入。
  • HTM的任务是学习时间上连续的输入数据流,换句话说是建立一个能知道某些序列后面跟着哪些序列的模型。

HTM的主要功能包括:学习、推理、预测、行为(反应)。但至今每一个HTM区域只执行前三种功能。

学习(Learning)

  • 一个HTM区域通过发现模式并将它们从传感器数据中序列化来了解世界。

    区域并不“知道”当前输入代表着什么,它寻找着一起出现的输入位(bit)组合,也就是我们所说的空间模式。接着它研究这些空间模式怎样依次随着时间的变化而出现,也就是我们所说的实时模式或序列。

  • 单个HTM区域的学习能力是有限的。

    如果一个区域学习的空间模式是简单的,那么就需要一个层级结构来理解复杂信息。

  • HTM区域中的学习算法能够“在线学习”。

    也就是HTM可以通过最新的输入学习。

进过初始化训练后,一个 HTM 可以继续学习或者在训练阶段完成后废除学习功能。另一种选择是只关闭最低层级的学习功能,在更高的层级依然继续学习。当一个 HTM已经学会其世界的基本组成结构,更多的学习会发生在层级中的更高层级内。如果 HTM 遇到以前没有见过的低层级结构,那么HTM将会用更长的时间去学习这些新模式。我们可以从人类身上发现这一特性。学习一个你已经掌握的语言的新单词是相对容易的。然而,如果你尝试学习一个外语中有着不熟悉发音的单词,你会发现这会难很多,因为你不知道这些低层级的发音。

推理(Inference)

当一个HTM学会了模式后,就可以对前所未见的输入进行推理。HTM会在接收输入时与以前学过的空间实时模式进行匹配。

HTM区域与大脑面临相同的问题:输入可能永远不会重复。所以HTM区域和大脑一样必须想办法在训练和推理的时候处理新奇的输入。HTM区域处理新奇输入的方法是采用稀疏分布表示,即比较模式中的一部分来判断是否匹配。

预测(Prediction)

HTM的每一个区域都存储着模式序列。通过当前输入和存储序列的比较,一个区域会形成对接下来输入可能是什么的预测。HTM区域实际上存储的是稀疏分布表示的渐变。在一些实例中,这中渐变可以看做是一种线性序列,就像一段旋律中的音符,但是在多数情况下会同时预测多个可能的输入。HTM区域会依据可追溯到很久之前的上下文环境来产生不同的预测。HTM中大多数空间都被用来存储序列或者存储空间模式之间的渐变。

HTM的预测的关键特性:

  1. 预测是连续的
    当人听歌时,会预测下一个音符;当人下楼梯时,会预测脚在什么时候碰到下一级台阶……,HTM如人一样总是在不停地预测。在HTM区域中,预测不是独立的某一部分,而是贯穿于整个工作机制当中。

  2. 预测发生在层级中的每一层
    HTM的每一层都在预测,如低级区域可能会预测下一个音素,而高级区域可能会预测下一个单词或词组。

  3. 预测对上下文环境是敏感的
    预测是基于过去发生的事,并与现在正在发生的有关。一个HTM区域会根据需要使用先前的环境,并且上下文环境在时间上可长可短(被称为:可变顺序记忆)。

  4. 预测是区域稳定的
    区域的输出就是预测,HTM的特性之一就是区域的输出会变得稳定,在更高层级驻留更长时间。一个区域不仅仅预测接下来发生什么,可以预测的更远。如现实世界中一样,高级意识比低级意识变化的慢得多。

  5. 预测可以告诉我们一个新输入是否是期望的
    每个HTM区域都是一个新鲜事物检测器。因为每个区域都会预测接下来将发生什么,所以当有未预期的事发生时,HTM就会“察觉”。

  6. 预测有助于增强系统的鲁棒性
    预测会使系统推理的结果更倾向于它预测的结果。

行为(Behavior)

我们的行为会影响我们的感知。当我们转动眼球时,视网膜会接收到变化的感官输入,几乎我们的一举一动都会影响到我们所感受到的。感官输入和运动行为是紧密联系在一起的。

新大脑皮层中的大多数区域甚至是在低级感官区域都有运动输出,而不仅仅是初级运动区。

迄今为止,所有的HTM实现都是纯感官的,没有一个运动组件。

HTM脑皮质学习算法

术语(Terminology)

与神经系统科学中的术语概念存在偏差,具体见附录。

细胞的状态(Cell States)

HTM的细胞有三种输出状态:由前馈输入激活(active from feed-forward input)、由横向输入激活(active from lateral input,表示预测)、非激活(inactive)。第一种相当于神经元中动作电位的第一个段脉冲,第二种相当于神经元中较缓慢、较平稳的动作电位。

树突段(Dendrite Segments)

突触(Synapses)

综述(Overview)

共有的概念(Shared Concepts)

二值权重(Binary Weights)

联通值(Permanence)

树突段(Dendrite Segments)

潜在突触(Potential Synapses)

学习(Learning)

空间沉积池概念(Spatial Pooler Concepts)

空间沉积池细节(Spatial Pooler Details)

时间沉积池概念(Temporal Pooler Concepts)

时间沉积池细节(Temporal Pooler Details)

单一源与可变源的序列与预测(First order versus variable order sequences and prediction)


  • HTM概述HTM Overview
    • 引言
    • HTM原理HTM Principles
      • 层级性Hierarchy
      • 区域Regions
      • 稀疏分布表示Sparse Distributed Representations
      • 时间的角色The role of time
    • 学习Learning
    • 推理Inference
    • 预测Prediction
    • 行为Behavior
  • HTM脑皮质学习算法
    • 术语Terminology
      • 细胞的状态Cell States
      • 树突段Dendrite Segments
      • 突触Synapses
    • 综述Overview
    • 共有的概念Shared Concepts
      • 二值权重Binary Weights
      • 联通值Permanence
      • 树突段Dendrite Segments
      • 潜在突触Potential Synapses
      • 学习Learning
    • 空间沉积池概念Spatial Pooler Concepts
    • 空间沉积池细节Spatial Pooler Details
    • 时间沉积池概念Temporal Pooler Concepts
    • 时间沉积池细节Temporal Pooler Details
    • 单一源与可变源的序列与预测First order versus variable order sequences and prediction
  • 参考文献


参考文献

这篇关于HTM学习笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

线性代数|机器学习-P36在图中找聚类

文章目录 1. 常见图结构2. 谱聚类 感觉后面几节课的内容跨越太大,需要补充太多的知识点,教授讲得内容跨越较大,一般一节课的内容是书本上的一章节内容,所以看视频比较吃力,需要先预习课本内容后才能够很好的理解教授讲解的知识点。 1. 常见图结构 假设我们有如下图结构: Adjacency Matrix:行和列表示的是节点的位置,A[i,j]表示的第 i 个节点和第 j 个

Node.js学习记录(二)

目录 一、express 1、初识express 2、安装express 3、创建并启动web服务器 4、监听 GET&POST 请求、响应内容给客户端 5、获取URL中携带的查询参数 6、获取URL中动态参数 7、静态资源托管 二、工具nodemon 三、express路由 1、express中路由 2、路由的匹配 3、路由模块化 4、路由模块添加前缀 四、中间件