Self Organizing Maps 自映射人工神经网络

2024-04-02 13:32

本文主要是介绍Self Organizing Maps 自映射人工神经网络,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文地址:Self Organizing Maps作者:shiqj1980
the ebook: http://davis.wpi.edu/~matt/courses/soms/
using som in excel:http://www.geocities.com/adotsaha/NN/SOMinExcel.html

 人工神经网络技术在模式识别方面有着独特的优势,神经网络能够进行非线性数据处理,发现复杂的数据关系,其中,自组织映射神经网络( Self-Organizing Map , SOM )可以对模式数据进行自动聚类。
 自组织特征映射是 Kohonen 在 1990 年提出的类似大脑思维的一种人工神经网络方法,它是一种竞争学习算法,可以被认为是一种从 N 维模式空间各点到输出空间少数点的映射。这一映射由系统本身完成,没有外部的监督,即聚类是以自组织的方式实现的。
 SOM 采用无教师学习训练,训练完成后,分类信息存储在网络各节点连接权值向量中,与权值向量相似的输入向量将分为一类。 SOM 包括一维和二维模型,二维 SOM 也称为 KFM(Kohonen Feature Mapping) 。它们的区别在于 KFM 考虑邻近神经元的相互作用,即获胜神经元对周围神经元由于距离的不同会产生不同的影响。
 KFM 的结构如 图 8.3 所示 ,输入网络的是一个 n 维向量的所有 n 个数值,输出单元呈二维排列,个数为 p × p, 输入层与输出层的各单元之间是全连接的,并用 W 表示连接权重。 KFM 的学习过程就是对所有的 G 个样本向量进行迭代学习,直到权值 W 的变化小于某一个确定的阈值或迭代达到一定的次数。测试过程比较简单,对于每一个样本向量,计算其获胜神经元,输出单元相同的样本向量属于同一类。虽然 KFM 有学习过程,但是可以看到这种学习是从所有的样本中自动获取特征,没有教师的参与,因此称为无监督的学习方法。
 Kohonen 认为,神经网络中邻近的各个神经元通过侧向交互作用彼此相互竞争,自适应地发展成检测不同信号的特殊检测器。该思想来自于大脑神经元的特性,即大脑皮层的神经元成二维空间排列,不同区域分工不同,各自对输入模式的不同特征敏感,神经元之间存在信息交互,主要是侧向交互,即某个经元对周围神经元之间存在由近到远的不同的影响作用,而不是简单的侧抑制作用。对邻近神经元的交互作用函数有巴拿马草帽型 (公式 8-22 ) 或矩形型 (公式 8-23 ) 。
这里写图片描述
其中 dcj 是输出单元 c 与邻近单元 j 之间在神经元平面上的距离, R 是交互作用半径。
KFM 的学习过程如下:
这里写图片描述

 学习过程可以采用从全局到局部的策略。采取这种策略时,学习初期可设定较大的交互作用半径 R ,随着学习过程的不断推进,逐步减小 R ,直至不考虑对邻近单元的影响。邻域的形状可以是正方形或者圆形。

  KFM 的聚类结果与 K 均值相似,它的优点是自动提取样本数据中的信息,同时也是一种全局的决策方法,能避免陷入局部最小,缺点在于必须实现人为设定类的数目与学习参数,而且学习时间较长。 KFM 方法克服了 K- 均值聚类的一些缺点:它应用类间的全局关系,能提供大数据集内相似性关系的综合看法,便于研究数据变量值的分布及发现类结构。而且,它具有更稳健更准确的特点,对噪声稳定,一般不依赖于数据分布的形状。

这篇关于Self Organizing Maps 自映射人工神经网络的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Java中基于注解的代码生成工具MapStruct映射使用详解

《Java中基于注解的代码生成工具MapStruct映射使用详解》MapStruct作为一个基于注解的代码生成工具,为我们提供了一种更加优雅、高效的解决方案,本文主要为大家介绍了它的具体使用,感兴趣... 目录介绍优缺点优点缺点核心注解及详细使用语法说明@Mapper@Mapping@Mappings@Co

在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码

《在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码》在MyBatis的XML映射文件中,trim元素用于动态添加SQL语句的一部分,处理前缀、后缀及多余的逗号或连接符,示... 在MyBATis的XML映射文件中,<trim>元素用于动态地添加SQL语句的一部分,例如SET或W

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

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

docker 重启容器且修改服务映射端口

要重启 Docker 容器并修改服务的映射端口,可以按照以下步骤进行操作: 1. 停止当前运行的容器 如果你想重新配置端口,通常需要先停止当前运行的容器。你可以使用以下命令停止容器: docker stop <container_name_or_id> 2. 删除现有容器 为了修改端口映射,你需要删除旧的容器并重新创建一个新的容器。首先运行以下命令删除停止的容器: docker rm

maven项目中程序运行编译的时候出现:编码GBK的不可映射字符

由于JDK是国际版的,我们在用javac.exe编译时,编译程序首先会获得我们操作系统默认采用的编码格式(也即在编译java程序时,若我们不指定源程序文件的编码格式,JDK首先获得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN2k,它的值为GBK),然后JDK就把我们的java源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格

ManyToMany双向外键关联(基于注解)的映射案例(简单版)

学生和老师就是多对多的关系,一个学生有多个学生,一个老师也有多个学生,这里的多对多映射采用中间表连接的映射策略,建立中间表的映射策略,建立中间表分别引入俩边的主键作为外键。通过中间表映射俩个表之间的关系。 下面就以学生类和老师类为例介绍多对多的映射关系的实例 Students类 package mtm_bfk;import java.io.Serializable;import java.

Mybatis查询到多条记录但是映射到list集合只有一条或者条数不对

如果你出现了这个问题。 *. 原因:mybatis是基于当前实体对象的id进行映射的 *.所以在查询字段中加上查询id即可。 搞定!!!!

【高等数学学习记录】映射

【高等数学&学习记录】映射 从事测绘工作多年,深刻感受到基础知识的重要及自身在这方面的短板。 为此,打算重温测绘工作所需基础知识。练好基本功,为测绘工作赋能。 1 知识点 1.1 映射 映射 设 X X X、 Y Y Y是非空集合,若存在法则 f f f,使 X X X中每个元素 x x x,在 Y Y Y中有唯一确定的元素 y y y与之对应,则称 f f f为从 X X X到

NAT技术-将多个内部网络设备映射到一个公共IP地址

问题: 今天上课的时候老师让我们在VMware填同一个子网ip 192.168.196.0,然后给我们的linux镜像都是同一个压缩包,结果我们的静态ip地址都是同一个。 192.168.196.0下面有256个ip地址,范围是192.168.196.0到192.168.196.255。我们几十个人的ip地址怎么会是同一个 linux镜像的ip地址被老师写死了, 1.难道内网的ip可以随便定

使用Mybatis Generator插件生成纯净代码,自定义扩展注释和注释,xml映射文件,不用修改源码!!!

先看效果: (基于Mybatis-generator-core-1.4.0) 生成模型(实体): 根据MySQL库中的tb_prod_info表字段及注释自动生成. package com.ezsyn.cloudstudy.product.dao.entity;import io.swagger.annotations.ApiModelProperty;import lombok.Gette