TM book学习记录--第一章

news2024/11/25 3:43:19

Tsetlin Machines

记录一下学习TM的过程,主要是对书本An Introduction to Tsetlin Machines的学习。

第一章

TM的整体架构
作者使用了2个例子来举例说明,我们这里选择车辆和飞机来进行举例。
也就通过5个特征,4个轮子,是否载人,是否有翅膀,是否蓝色,是否黄色来进行判断车辆和飞机。

1.1布尔特征

Tsetlin 机器观察它识别的物体(或现象)根据物体的特征。 每个特征都是一个对象属性,要么
是 True 或 False,使其成为布尔值。
在这里插入图片描述
就算是同一个类也会有不同特征。
在这里插入图片描述
大黑点表示1,小黑点表示0。从上面可以看出,对车辆识别的关键是,是不是四轮,颜色之类的是其次的。
这个表格在后面会用到很多次。

1.2 使用与和非创建模式

if-then规则
if 条件 then 类别
(与)Four Wheels and Transports People then car
可以对应上表当中的1,2,3,4,3个车和1个飞机。
(非) if Four Wheels and Transports People and not Wings then Car .
没有翅膀这个特征是其能分辨汽车和飞机。
特征和否定特征被称为文字。

1.3 通过识别和消除反馈来学习频繁模式

在这里插入图片描述

if Four Wheels and Transports People and Blue then Car .它的记忆模式,此后的变化都是在次基础上的。
注意这里是有指明是蓝色车辆,保留在内存中,直到将其删除。如果一辆车出现另一种颜色时,规则不会将该对象识别为汽车(详细的说明在后面)。
这里补充一个概率,我的理解是记忆程度。
使用1-5和6-10来表示记忆程度。1-5表示忘记,6-10表示记住,数字大小表示程度。
在这里插入图片描述
4轮就表示记忆得最深,翅膀和黄色就几乎没有被记忆。
每个特征和它的否定版本共存于记忆之中。如果“四轮”为真,那么“非四轮”就变为“假”,所以TM通过
忘记计算结果为 False 的文字组合,也就是只记忆结果为True的文字。
学习单一规则
理解完整的 Tsetlin 机器如何学习的关键是学习单个 if-then 规则如何自行学习。 通过独立学习,每个规则变得更加独立并且更容易理解。 这样的好处是,独立学习还可以适应并行处理。 多个规则如何间接协调而无需
互相了解,提供简单而有效的方法

在这里插入图片描述

随机初始化,每个位置初始值为5。初始化确实不会影响学习的最终结果,因为 Tsetlin 机器是自我纠正的。
这与所谓的神经网络学习形成对比。(神经网络学习对初始化更敏感)
当遇到需要学习的目标的时候会进行下面的操作:
(1) 检测目标文字
(2) 1成立的话,记住该对象的 True 文字。通过增加其在内存中的位置来实现文字,直到10为止。
通过将 False 文字推向最大程度来忘记它们, 通过减少字面量的位置可以忘记它,直到1为止
这种反馈的名称是“识别反馈”,因为它使规则的条件部分模仿观察到的对象。
(3) 也就是1不满足,直接将该文字的所有值全部删除,也就是到1的位置。
这种类型的反馈的名称是擦除反馈,因 它会删除规则的条件部分。

记忆和遗忘速度。 记忆值决定规则记住文字的速度有多快。 相反,遗忘值决定在没有观察的情况下,规则被遗忘的速度有多快。 如果你增加记忆值并减少遗忘值,规则将记住文字的时间更长。 更长时间地记住文字可以让规则
保留更多细节。 在极端情况下,记忆值为 1.0 且忘记值 0.0 使规则记住单个对象的每个 True 文字。相反,记住值 0.0 并忘记值 1.0 会使规则失效 记住任何东西。 通常保持这种关系:忘记值+记住值=1.0。 原因是你可以从另一个获取一个,因此您只需指定其中之一。 或者,您可以将“记忆值”固定为 1.0。
第一个例子遍历表1.1中的数据,使用Memorize Value 0.1和Forget Value 0.9。 考虑一个预测汽车的规则。检测类型为“汽车”,因此“识别”或“删除反馈”均适用。 它有五个真实文字:四轮、载人,没有翅膀,不是黄色,蓝色。 其余的文字都是 False(上面表格对应的第一个)。
一开始,记忆值为忘记状态,也就是处于5的位置,和上面的初始化是一样的,(1)状态肯定为true。
在这里插入图片描述
实线箭头可视化了“识别反馈”如何随机增量文字的记忆值。 因为记忆小值为 0.1,只会发生少量增量,因此
短箭头。 四轮、载人和蓝色。 然后不是翅膀也不是黄色留在原处,由图中的灰色箭头表示。这里他们2个没有增加的原因是增加的记忆值是随机的,而TM设置了一个阈值0.5,只有增加的值大于0.5,它的记忆值才会增加,这里他们两个是因为随机化给到的值小于0.5才没有增加。
相反,图中的虚线箭头可视化随机递减 对于 False 文字。 这些箭头被可视化为更长,因为遗忘值更高(0.9)。
现在规则更新为:
if Four Wheels and Transports People and Blue then Car

第二个例子对应表格的第二个,这时候车的颜色对不上,因此,使用“删除反馈”。作为可视化,擦除反馈随机减少所有的记忆位置的文字。 执行这些减量,使用四轮和没有翅膀来模拟随机化(由灰色箭头表示)。
在这里插入图片描述
新的规则就变成了:
if Four Wheels then Car .
第三个例子对应表格的第三个,这次规则的条件匹配上
在这里插入图片描述
在这里插入图片描述

规则就变成了
if Four Wheels and Transports People then Car .
可以发现,变化从一辆车到另一辆车,每种颜色的出现频率太低,难以记住,不是四轮,不是载人,有翅膀很快就被遗忘了,而4轮和载人的特征比较容易记住。

1.4 通过拒绝反馈提高辨别能力

上面我们讨论的是对一个类car的分类,但是4轮,载客满足这个的还有飞机或者其他的。所以需要额外的反馈来区分。
当它面对与其类别不同的物体,直接跳过(2)、(3)Recognize and Erase Feedback,直接进行下面的步骤(4):
(4)通过评估对象的文字来检查规则的条件部分是否为 True。如果条件部分为 True,则记住该对象的所有为 False 的 Forgotten 文字。当前类别选择遗忘的信息。
下面举个例子,
在这里插入图片描述
之前是car,现在遇到了plane,对应表格中4,
a Plane with Four Wheels that Transports People, is Blue (not Yellow), and has Wings
not Four Wheels, not Transports People, not Wings, Yellow, and not Blue.
4个车轮,载人,有翅膀,蓝色(非黄色)到 没有4个车轮,不载人,没有翅膀,黄色(非蓝色)
它吧, not Wings没有翅膀变成了条件有5-6
在这里插入图片描述

这时条件变成:
if Four Wheels and Transports People and not Wings then Car .
下次规则面临时一架飞机,它不再需要更新,因为它的状况将是错误的,not wings和wings。现在它可以区分汽车和飞机。

1.5 将各个部分放在一起——几条规则如何协调

分类。 Tsetlin 机器通过投票对输入进行分类。也就是说,单个规则本身并不能获得对类别的最终决定权。相反,它为其类别投票,多数票决定输出。
示例:表格中的4,按照之前的学习会得到下面的规则条件:
R1 if Four Wheels and Transports People and not Wings then Car .
R2 if Wings then Plane.

规则 R1 与车辆不匹配,因为它指定的不是 Wings。 因此,汽车没有投票权。 另一方面,规则 R2 匹配。 所以,飞机得到了
投票并赢得多数票。 Tsetlin 机器然后输出 Plane。当然条件可能不止这些,TM越多,需要投票的次数越多。

1.6 学习协调

现已经知道单个规则是如何学习的。 接下来讨论多个规则如何协调学习,在对象分类中发挥不同的作用。
TM通过投票差值协调多个规则的学习。 选票差额是一个整数,用于在获胜类别和失败类别之间创建差额。 如果您将选票差额设置为 2,您就告诉 Tsetlin 机器获胜类别必须比失败类别多出两票。 然后,它必须尝试在学习过程中对其观察到的每个对象满足这一要求。 通过这种方式,Tsetlin 机器创建了补充规则。 在下文中,您可以使用 2 的投票差额来进行说明。
1.观察一个新对象及其类。 观察包括对象的文字(参见第 1.1 节)。
2. 使用文字的真值评估每个规则的条件(参见第 1.2 节)。
3. 计算投票总和(参见第1.5节):
a) 确定条件为 True 的规则。 使用这些进行投票。
b) 将支持该对象类别的票数相加。
c) 减去支持其他类别的票数。
d) 将求和结果称为v。
e) 如果大于 2,则将 v 设置为投票余量 2;如果小于,则将 v 设置为 -2.
4. 遍历每条规则,if(Rand() <=(2-v)/4) 则给出反馈,执行下面规则:
a) 如果规则属于这个类,则提供规则“识别”或“删除”反馈(参见第 1.3 节)。
b) 如果它属于另一个类,则给出规则“拒绝反馈”(参考第 1.4 节)。
5.回到1.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1049807.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

三、git的安装和配置

一、安装 1.官网下载&#xff1a;https://git-scm.com/download 下载最新版本&#xff0c;点击红框或篮筐处即可 2.点击下载好的安装包安装这个软件 3.一直点击next&#xff0c;直到出现install&#xff0c;点击install&#xff0c;安装完成后点击finish&#xff1a; 下载完成…

Redis原理(二):Redis数据结构(下)

文章目录 1.7 Redis数据结构-SkipList1.7 Redis数据结构-RedisObject1.8 Redis数据结构-String1.9 Redis数据结构-List2.0 Redis数据结构-Set结构2.1、Redis数据结构-ZSET2.2 、Redis数据结构-Hash1.7 Redis数据结构-SkipList SkipList(跳表)首先是链表,但与传统链表相比有…

Java基于微信小程序的自习室系统

文章目录 1 简介2 技术栈3 需求分析3.1用户需求分析3.1.1 学生用户3.1.3 管理员用户 4 数据库设计4.4.1 ER图设计4.4.2 数据库表设计 **第五章 系统实现**5.1小程序功能的实现5.2管理员模块的实现5.2.1 留言管理5.2.2 学生信息管理5.2.3 公告管理5.2.4 高校自习室信息管理5.2.5…

速码!!BGP最全学习笔记:路由反射器实验配置

实验&#xff1a;配置路由反射器 1. 实验目的 熟悉路由反射器的应用场景掌握路由反射器的配置方法 2. 实验拓扑 实验拓扑如图所示&#xff1a; 想要华为数通配套实验拓扑和配置笔记的朋友们点赞关注&#xff0c;评论区留下邮箱发给你! 3. 实验步骤 &#xff08;1&am…

Python绘图系统22:实现系统菜单

文章目录 文件菜单子部件开关 Python绘图系统&#xff1a; 前置源码&#xff1a; Python打造动态绘图系统&#x1f4c8;一 三维绘图系统 &#x1f4c8;二 多图绘制系统&#x1f4c8;三 坐 标 轴 定 制&#x1f4c8;四 定制绘图风格 &#x1f4c8;五 数据生成导入&#x1f4c8;…

uni-app:顶部导航栏图标titleImage

效果 文件 pages.json 代码 "pages": [//pages数组中第一项表示应用启动页&#xff0c;参考&#xff1a;https://uniapp.dcloud.io/collocation/pages{"path": "pages/search/index/index","style": {"titleImage":"…

开源博客项目Blog .NET Core源码学习(3:数据库操作方式)

开源博客项目Blog采用SqlSugar模块连接并操作数据库&#xff0c;本文学习并记录项目中使用SqlSugar的方式和方法。   首先&#xff0c;数据库连接信息放在了App.Hosting项目的appsettings.json中DbConfig节&#xff0c;支持在DbConfig节配置多个数据库连接信息&#xff0c;以…

第二招牌战略洞察|王老吉与加多宝共同的课题:受困于第二招牌

王老吉频繁出新产品&#xff0c;却难觅结构性增长。王老吉曾经凭借凉茶单品反超可口可乐&#xff0c;却在2015年后面临增速下滑、市场规模逐年缩小的增长困境。事实上&#xff0c;王老吉所在的凉茶市场现已成为存量市场&#xff0c;甚至在不断激化的竞争中逐年萎缩。为了打破原…

Python 基于 Yolov8 + CPU 实现物体检测

目录 一、开发环境 二、安装 Python 基于 Yolov8 物体检测关联库 2.1 打开命令提示符&#xff08;cmd&#xff09;或终端&#xff0c;安装库 2.2 关联库安装过程遇到的问题 三、基于 Yolov8 物体检测代码实现&#xff08;完整&#xff09; 3.1 Yolov8 物体检测完整代码…

复杂链表的深度拷贝

给定一个链表&#xff0c;每个结点包含一个额外增加的随机指针&#xff0c;该指针可以指向链表中的任何结点 或空结点。 要求返回这个链表的深度拷贝。 我们想要拷贝这个指针就要考虑到 1.不仅仅拷贝出来的指针next是相同的&#xff0c;rondom也要相同 2.拷贝完后不改变原链表 …

智慧安防视频监控技术+AI智能分析算法助力美好乡村建设

上期我们聊到AI智能视频监控技术如何助力美好乡村建设&#xff1f;的相关方案&#xff0c;收到了很多粉丝的讨论与关注&#xff0c;视频监控只是乡村建设极其基础的一环&#xff0c;基于视频监控平台的AI智能算法&#xff0c;将人工智能融合到安防监控之中&#xff0c;才能让乡…

设计模式3、工厂方法模式 Factory Method

解释说明&#xff1a;定义一个用于创建对象的接口&#xff0c;但是让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类 抽象工厂&#xff08;AbstractFactory&#xff09;&#xff1a;提供了创建产品的接口&#xff0c;调用者通过它访问具体工厂的工厂方法…

2009-2018年31省份旅游收入(入境、国内、总收入;第三产值;GDP)

2009&#xff0d;2018年31省份旅游收入&#xff08;入境、国内、总收入&#xff1b;第三产值&#xff1b;GDP&#xff09; 1、时间&#xff1a;2009-2018年 2、指标&#xff1a; 汇率、入境旅游收入&#xff08;万美元&#xff09;、国内旅游收入&#xff08;亿元&#xff0…

REASUNOS瑞森半导体-MOS管系列在服务器电源上的应用

一、前言 服务器电源是指使用在服务器上的电源&#xff08;POWER&#xff09;&#xff0c;它和PC电源一样&#xff0c;都是一种开关电源&#xff0c;指能够将交流电转换为服务器所需直流电的电源。 服务器电源按照标准可以分为ATX电源和SSI电源等。ATX标准使用较为普遍&…

DAP-seq在植物转录因子的应用案例助你打通研究思路

众所周知&#xff0c;转录因子 (Transcription Factors, TFs)是指能够以序列特异性方式结合DNA并且调节转录的蛋白质。TF与特异性DNA序列结合调节转录&#xff0c;同时会和其它功能蛋白结合调控下游基因的转录和翻译过程&#xff0c;也会和增强子等其它顺式作用元件结合&#x…

MySQL基础篇-基本sql语句

目录 1.SQL分类 2.SQL-DDL 2.1 数据库操作 查询 创建 删除 使用某个数据库 2.2 数据表操作 创建表 查询表 修改表 3.SQL-DML(增删改) 3.1 插入 3.2 修改 3.3 删除 4.SQL-DQL(查) 4.1 基础查询 4.2 条件查询 4.3 聚合函数查询 4.4 分组查询 4.5 排序查询 …

在EXCEL中构建加载项之创建加载项的目的及规范要求

【分享成果&#xff0c;随喜正能量】一句南无阿弥陀佛&#xff0c;本是释迦牟尼佛所证的无上正等正觉法&#xff0c;洒在娑婆世界的众生海中&#xff0c;只为末世众生能够以信愿之心抓住此救命稻草&#xff0c;要知道今世人此生的处境&#xff0c;可能只剩这道要么极乐要么三涂…

C++之 lambda表达式

lambda表达式 lambda表达式概念lambda表达式语法lambda表达式底层原理 lambda表达式概念 我们在以往需要对某些数据进行排序时&#xff0c;比如一个数组&#xff0c;我们就需要用到sort()函数&#xff1a; int main() {int arr[] { 3,1,2,4,8,7,5,9 };//升序sort(arr, arr …

day36-xml

1.xml 1.1概述【理解】 万维网联盟(W3C) 万维网联盟(W3C)创建于1994年&#xff0c;又称W3C理事会。1994年10月在麻省理工学院计算机科学实验室成立。 建立者&#xff1a; Tim Berners-Lee (蒂姆伯纳斯李)。 是Web技术领域最具权威和影响力的国际中立性技术标准机构。 到目前为…

使用 KerasCV YOLOv8 进行物体检测--附完整实现源码

YOLO 目标检测模型已应用于无数应用,从监控系统到自动驾驶车辆。但是,当在 KerasCV 框架下将 YOLOv8 的这种能力配对时会发生什么呢?最近,KerasCV 将著名的 YOLOv8 检测模型集成到其库中。在本文中,我们将探讨如何使用自定义数据集微调 YOLOv8。在此过程中,我们还将涵盖以…