前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SOM学习笔记1

SOM学习笔记1

作者头像
数据小冰
发布2022-08-15 14:18:33
4830
发布2022-08-15 14:18:33
举报
文章被收录于专栏:数据小冰
代码语言:javascript
复制
SOM学习笔记小编打算写两篇,内容来自小编前阶段在工作要解决的预警产品质量在多个ATE上走低的问题。第一篇从理论的角度介绍SOM的网络模型、学习算法,第二篇从应用的角度以demo的形式展示实际的应用。

1.SOM是什么

SOM英文全拼是Self-Organizing Maps,中文一般译作自组织映射网络,它是神经网络的一种,由kohonen提出,属于非监督式学习,它模仿人脑神经元对信息的处理方式,通过自身训练,自动对输入的模式进行聚类。

2.SOM网络模型

SOM网络有两层,分别是InputLayer和OutputLayer。InputLayer与OutputLayer通过权值相连,InputLayer即输入层,其输入一般为高维度向量。OutputLayer的神经元一般放置在二维网格中,输出层近邻的神经元也通过权值连接。如下图所示,红色小圆表示输入向量,通过射线(权值)投射到X-Y的平面网格上。

3.内星学习规则

SOM是基于内星学习规则而来的,有必要学习下该规则:

  • 假设输入信息为n维向量,即下图中的(P1,P2,P3,...,Pn),该向量与权值向量(ω1,ω2,ω3,...,ωn)连接,输出到输出神经元Y中,Y采用硬限幅函数作为传递函数,限定输出为1和0
  • 内星模型训练的目标使得神经元Y只对某些特定的输入向量产生兴奋,即在Y出的神经元输出为1
  • 通过学习速率η对权值进行调整,当Y=1时,权值进行调整,当Y=0时,权值不做调整,最终得到的网络权值趋近于各输入向量的平均值

4.SOM学习算法

设定变量:X=[x1,x2,x3,…,xm]为输入样本,每个样本为m维向量。ωi(k)=[ωi1(k), ω i2(k),…,ωin(k)]为第i个输入节点与输出神经元之间的权值向量

初始化:权值使用较小的随机值进行初始化,并对输入向量和权值做归一化处理

将样本输入网络:样本与权值向量做内积,内积值最大的输出神经元赢得竞争,记为获胜神经元

更新权值:对获胜的神经元拓扑邻域内的神经元采用内星规则进行更新 ω(k+1)= ω(k)+ η(x- ω(k))

更新学习速率η及拓扑邻域,并对学习后的权值重新归一化

判断是否收敛。如果中心改变很小或达到预设的迭代次数,结束算法

5.SOM的优缺点

  • 优点
  1. 表示的结果非常容易理解,这点将在第二篇demo中看到
  2. 实现起来比较简单
  • 缺点
  1. 计算复杂度高,对相似性的度量非常敏感
  2. 不能应用存在缺失值的数据集
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-10-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据小冰 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.SOM是什么
  • 2.SOM网络模型
  • 3.内星学习规则
  • 4.SOM学习算法
  • 5.SOM的优缺点
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档