自组织特征映射神经网络-2|学习笔记

简介: 快速学习自组织特征映射神经网络-2

开发者学堂课程【神经网络概览及算法详解自组织特征映射神经网络-2】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/40/detail/935


自组织特征映射神经网络-2


内容介绍:

一、Kohonen算法步骤

二、Kohonen算法结果

 

一、Kohonen算法步骤

克霍宁网络,有一个非常著名的例子,八九年的时候克霍宁本人提出来的,他觉得既然可以按设计一个网络,那能不能去对一些常见的事物应用一下,看看效果,他找了16种动物,对这些动物进行一些属性收集,这动物儿包括猫,牛,狗,等都是一些常见的动物,根据人类的经验,可以判断哪些动物更相似,收集了动物的13个属性。大小,几条腿,有没有翅膀等等这些因素,整理了一个表,

image.png

想通过克霍宁网络对这些动物进行一个分类,观察哪些动物最终输出的二维面阵上比较接近,挨着的,我们就认为它的特征比较相似,我们人,对这些常见的动物还是有一些判别能力的,所以我们可以直观的从结果上来判断这个网络分类的结果好不好。

具体怎么做,第一个是整理数据,把16个动物,通过16个数特征来表示,比如说第一条记录是猫,那么它就在N1这个位置设成一,后边儿的15个值,从N2到N16都是零,第二个动物是牛,那么它就在N2这个位置设成一,其他的位置都是零,类似于用亚变量的方式,把这16个动物,16种动物融入到我们的特征里去。后半部分就是它的13个这个特征。

接着,是要设计网络结构,输入就是29个节点,有16个节点是用来表明它是哪一类动物,有13个节点,是这些动物本身的实际特征,所以是有29个节点,输出,就输入到一个十乘十的二维平面上,有十乘十等于100,总共有16种动物,那一定有相当多的一部分动物,它映射的区域,不止一个,可能多个区域组合起来。那么这个十乘十的平面如图,

image.png

我们最终的结果,是要把这些动物映射到这个平面的不同的小格格里去,然后看哪些动物的格格挨的比较近,那我们就认为这两种动物,或者这几种动物,它在特征上更相似。

接下来我们进行这个模式训练,初始化参数,包含这个权向量初始化,权向量归一化,把权向量,赋了一个零到一之间的随机数,然后建立一个初始邻域,我们假设这个初始邻域的设置为二,就是它能辐射到两个里边去。随着这个训练的次数增加而逐渐减小,

image.png

学习率就是指0.3除以T,随着训练次数增加,学习率按照这个新的(n’=n*e-N)e的N次方衰减,N是距离活动神经元的距离,仔细算了一下。得到获胜神经元及邻域了,

image.png

以第一条数据为例,我第一条数据是猫,我把猫的那个29个值输进来之后,然后和当前权重这个数组相乘,得到一个十乘十的输出,它就得到一堆这个值。因为它十乘十的,它最终是有竞争层,就是有100个神经元,那每个神经元对这个猫的输入都会有一个响应值,把这值全部算出来,找到最大的那个值,最大那个值就0.98,以0.98为中心,辐射两个辐射两个,就是说在标出来这个区域内,这些神经元有机会去更新权重,得到一个输出的机会。

然后公式,新的权重等于原来的权重加上学习率变化的学习率乘以输入和权重的差进行调整,那么,因为获胜神经元就知道了wi(t+1)=wi(t)+η(t,N)[xp-wiy(t)],It都知道了,所以就很容易去更新这个η,然后这个学习率,可以通过η的公式,η衰减的时候,是t除0.3,然后,它是它由这个e的分次方来来计算的。

这个XP,就是第P条输入的值,这个是非常容易算出来的,然后我们来判断是否结束了,是否这个训练可以结束了,就是学习率有没有缩减到一个小于阀值的值,或者训练次数达到约定的值。没有,我们就继续,因为我们这个例子,16条记录,我们就进行1000次训练。

 

二、Kohonen算法结果

最终训练出来,结果就这样,

image.png

用1到16标识了16种动物,然后它映射到十乘十的这个区域上来,不同的颜色不同的标号儿,就表明那类动物映射过来占了这个区域,比如说像这个10和15,是很难区分的,它们映射的区域基本上都重叠了,写的是十,是说最终输出最多的那一个是始态,它排名第二的可能就是15,两个是交叉起来的,然后还可以看到,比如说这个零和一,这还有15,它动物的名字填进来,十是house马,15,zebra是斑马,确实是相对度比较高的,

比如,owl,hawk猫头鹰和鹰还是相近度比较高的,比如像这个猫和牛,他认为相似度比较高,都是四个角,老虎,狼,狗这些相似度都比较高,没有16是,16是eagle,它占的这三个输出的这个格,它排名都不是第一,不是第二。

分别被这个猫头鹰和鹰给占去了,实际上,就是说这个eagle和猫头鹰还有这个hawk相似度是非常非常高的,大家可以自己去理解一下,

image.png

实际上这个实际的输出,和我们对整个这个动物基本的了解感觉还是比较一致的,这就是克霍宁网络,以及介绍的一个实际进行动物分类的例子。

相关文章
|
30天前
|
Ubuntu 网络安全 图形学
Ubuntu学习笔记(二):ubuntu20.04解决右上角网络图标激活失败或者消失,无法连接有线问题。
在Ubuntu 20.04系统中解决网络图标消失和无法连接有线网络问题的方法,其中第三种方法通过检查并确保Windows防火墙中相关服务开启后成功恢复了网络连接。
338 0
Ubuntu学习笔记(二):ubuntu20.04解决右上角网络图标激活失败或者消失,无法连接有线问题。
|
29天前
|
存储 缓存 网络协议
|
4月前
|
编解码 Go 文件存储
【YOLOv8改进 - 特征融合NECK】 DAMO-YOLO之RepGFPN :实时目标检测的创新型特征金字塔网络
【YOLOv8改进 - 特征融合NECK】 DAMO-YOLO之RepGFPN :实时目标检测的创新型特征金字塔网络
|
16天前
|
机器学习/深度学习 计算机视觉 网络架构
【YOLO11改进 - C3k2融合】C3k2融合YOLO-MS的MSBlock : 分层特征融合策略,轻量化网络结构
【YOLO11改进 - C3k2融合】C3k2融合YOLO-MS的MSBlock : 分层特征融合策略,轻量化网络结构
|
22天前
|
网络协议 网络安全 网络架构
|
28天前
|
机器学习/深度学习 数据可视化 Linux
Seaborn可视化学习笔记(一):可视化神经网络权重分布情况
这篇文章是关于如何使用Seaborn库来可视化神经网络权重分布的教程,包括函数信息、测试代码和实际应用示例。
34 0
|
4月前
|
机器学习/深度学习 自然语言处理
像生物网络一样生长,具备结构可塑性的自组织神经网络来了
【7月更文挑战第24天】Sebastian Risi团队发布的arXiv论文探讨了一种模仿生物神经网络生长与适应特性的新型神经网络。LNDP利用结构可塑性和经验依赖学习,能根据活动与奖励动态调整连接,展现自我组织能力。通过基于图变换器的机制,LNDP支持突触动态增删,预先通过可学习随机过程驱动网络发育。实验在Cartpole等任务中验证了LNDP的有效性,尤其在需快速适应的场景下。然而,LNDP在复杂环境下的可扩展性及训练优化仍面临挑战,且其在大规模网络和图像分类等领域的应用尚待探索
85 20
|
3月前
|
存储 SQL 安全
网络安全的守护者:从漏洞到加密技术,提升个人与组织的安全意识
在数字时代的浪潮中,网络安全成为保护信息资产的关键盾牌。本文深入探讨了网络安全的薄弱环节—漏洞,并解析了如何通过加密技术加固这道防线。同时,文章强调了培养安全意识的重要性,指出这是预防网络攻击的第一道门槛。我们将从个人用户到大型组织的角度出发,提供一系列实用的知识分享,旨在增强网络防御能力,构建一个更加安全的网络环境。
|
3月前
|
机器学习/深度学习 自然语言处理 并行计算
【深度学习+面经】Transformer 网络学习笔记
Transformer模型的核心概念、优缺点以及在多个领域的应用,并提供了针对Transformer架构的面试问题及答案。
147 2
|
3月前
|
存储 监控 安全
确保大型组织网络安全的策略与方法
【8月更文挑战第24天】
93 0
下一篇
无影云桌面