广义回归神经网络(GRNN)

news2024/9/20 22:40:25

 一、简介

       广义回归神经网络 (General Regression Neural Network , GRNN) 的概念是由德
国科学家多纳德提出的,是径向基网络的其中一种 。因为其是以数理统计为基
础的,因此 GRNN 可以依据样本数据逼近其中包含的非线性映射关系。即使样本
数量较小,它也可以收敛于最优解。 GRNN 与 BP 网络相比,最大的优点就是在建
模时只需考虑平滑因子这一个变量即可,可以省略许多优化步骤。这样的好处
在于可以大大减少人为因素对测量精度造成的影响。

       GRNN作为径向基神经网络的一种,无需训练过程,通过优化平滑因子来提升预测性能。正是看中了只需考虑一个变量,且精度较高,故有兴趣研究一下。

二、网络结构

       广义回归神经网络是一种具有较好的非线性逼近能力的四层前向传播神经网络,它属于径向基神经网络的一种变形形式,数据输入网络后依次经过输入层、模式层、求和层、输出层后得到输出结果,与反向传播神经网络(BPNN)不通的是该网络没有训练过程,主要通过对模式层的平滑因子进行优化来获得好的输出结果。

可以用如下图解来解释一下工作原理:

       不同于 BP 神经网络的三层拓扑结构, GRNN 是由四层结构组成的,它们分别
输入层 (input layer) ,模式层 (pattern layer) ,求和层 (summation layer) ,输出层 (output
layer)
。其结构图如上图所示。其中, X 1 ~X N 表示 GRNN 的输入, Y 1 ~Y K 表示其相
对应的输出。 

(1) 输入层(input layer)

输入层节点数与输入向量的维数相等,各个节点直接将输入样本传输到模式层中。


(2) 模式层

模式节点数与输入层节点数相同,都为N。模式层的传递函数为径向基函数,表示为:

               

其中输入向量表示为 X 。为高斯函数的宽度系数,在广义回归神经网络中,称之为平滑因子。

(3) 求和层


       求和层中使用两种类型的求和函数对模式层的输出进行求和。第一类计算表达式式为:

                                   

       它表示为模式层中所有的输出的和,其中模式层节点与求和层节点之间的连接权值为 1 ,传递函数可表示为:

                                                         

第二类计算表达式为:

                                         

        它表示为预期的输出样本与模式层节点的输出的加权和,其中模式层节点与求和层节点之间的连接权值为预期的输出数据,即第 i 个输出样本 Y i 中的第 j 个元素。传递函数可以表示为:

                                         

(4) 输出层


输出层节点数与输出向量的维数相等。第二类求和层的输出与第一类求和层的输出相除得到输出层的输出值,即:

                                                

 三、理论基础

 GRNN 的测量结果与学习样本与平滑因子有关。当平滑因子过大时,将会导致测量结果趋于样本数据的均值;相反的,平滑因子过小则会导致测量结果接近训练样本值,从而使神经网络的泛化性能变差,造成测量结果变差。因此,在测量之前需要给 GRNN 选择最佳平滑因子,这样可以使得测量效果最佳。具体公式计算由于较为复杂,这里便不再给出。

四、GRNN的优缺点 

优点: 没有模型参数需要训练, 只调节 Spread 即可, 收敛速度快; 以径向基网络为基础, 具有良好的非线性逼近性能。

缺点: 计算复杂度高, 每个测试样本要与全部的训练样本进行计算; 空间复杂度高, 因为没有模型参数, 对于测试样本全部的训练样本都要参与计算, 因此需要存储全部的训练样本。

参考文献:
[1]郭栋.光学微腔中光热振荡的传感研究[D].浙江工业大学,2019.DOI:10.27463/d.cnki.gzgyu.2019.000101.

[2]https://blog.csdn.net/weixin_42051846/article/details/128765413

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

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

相关文章

家里有猫用宠物空气净化器有用吗?希喂、米家、有哈哪款更好

在快节奏的现代生活中,越来越多的人选择宠物作为心灵的慰藉与生活的伴侣。起初,这份陪伴的需求简单而纯粹,但随着日子一天天过去,那份简单的情感逐渐生根发芽,成长为深厚的责任与爱。我在前两年养了两只猫,…

一款云笔记支持在线协同文档,脑图,白板演示的工具,多个设备同步,让灵感与你同行(附源码)

前言 在快节奏的工作环境中,如何高-效地记录、整理并分享工作笔记已经成为了一项重要的技能。传统的笔记方式往往难以满足跨设备、即时同步以及团队协作的需求,导致信息孤岛和工作效率低下。面对这样的挑战,我们迫切需要一种全新的工具来改变…

【ArcGIS Pro原理第一期】各种空间插值原理:GPI、LPI、IDW等

ArcGIS Pro原理第一期:空间插值原理 空间插值方法概述1.1 全局多项式(global polynomial interpolation, GPI)方法原理使用范围 1.2 局部多项式(local polynomial interpolation, LPI)方法原理精度测量(Mea…

echarts进度

echarts图表集 let numdata["I级",II级,III级,IV级,V级,劣V级] let pricedata40 option {backgroundColor: #0f375f,title: {show: false,text: ,left: center,top: 30%,textStyle: {color: #00D5FF,fontSize: 16,},},tooltip: {show: false},grid: {// show: true,…

鸿蒙界面开发——组件(5):菜单Menu 绑定菜单

菜单组件Menu Menu组件需和bindMenu或bindContextMenu方法配合使用,不支持作为普通组件单独使用。 Menu 以垂直列表形式显示的菜单。包含MenuItem、MenuItemGroup子组件。 Menu()作为菜单的固定容器,无参数。 MenuItem(value?: MenuItemOptions| Cust…

DC-DC开关稳压电路

前面所讲的线性稳压电路具有结构简单、调节方便、输出电压稳定性强、纹波电压小等优点。但是,由于调整管始终工作在放大状态,自身功耗较大,故效率较低,甚至仅为30%~40%。而且,为了解决调整管散热问题,必须安…

Linux-(系统启动、用户管理)

目录 前言 关机&重启命令 基本介绍 注意细节 用户登录和注销 注意: 用户管理 基本介绍 添加用户 指定/修改密码 删除用户 查询用户信息 切换用户 查看当前用户登录用户 用户组 新增组 删除组 查看所有组 修改用户所属组 创建用户时指定用户…

如何在车载中控上进行UI自动化测试

说到车载测试,很多人都很好奇,车载中控是否需要UI自动化测试,从市场反馈来说,在6-7年之前的车载中控测试就已经介入UI自动化测试,那时候还是使用javaUIautomator框架。现在大部分都已经更新为PythonAppium框架进行自动…

Fiddler安卓设备抓包基础

Fiddler安卓设备抓包基础 一、下载二、Fiddler设置三、安卓设备设置四、Fiddler工具页面介绍 一、下载 工具名称:Fiddler 下载地址:官网 二、Fiddler设置 1.打开Fiddler 2.打开Tools > Options > Connections进行如下设置,Fiddler…

【C++ Primer Plus习题】10.7

问题: 解答: main.cpp #include <iostream> #include "plorg.h" using namespace std;int main() {plorg p("Plorga");p.showCI();p.setCI(10);p.showCI();return 0; }plorg.h #pragma once#define SIZE 19 class plorg { private:char m_fillName…

allegro约束管理器的学习

1&#xff09;差分线neck mode的使用 2&#xff09;走线区域规则和间距区域规是不同的 3&#xff09;创建区域规则的步骤 分为三个步骤 1在spacing中创建一个区域规则&#xff1b; 2在region中把区域规则赋予它&#xff1b; 3在pcb中&#xff0c;创建一个constraint region sha…

中国次生林林龄分布数据(2020年)

次生林年龄的全国分布对于了解中国森林生态系统和碳储量至关重要。该数据集采用了一种数据驱动的方法&#xff0c;用于提高植被变化跟踪器和连续变化检测与分类算法的性能&#xff0c;通过使用变化检测算法和密集的陆地卫星时间序列来确定次生林的建立时间。 该数据集主要以tif…

实践reflex:以Personalized Sales个人销售网站为例

reflex 是一个使用纯Python构建全栈web应用的库&#xff0c;但是需要使用node&#xff0c;所以你懂的。 官网&#xff1a;Reflex Web apps in Pure Python 手册&#xff1a;Introduction Pynecone: Pynecone 是一个全栈 Python 框架&#xff0c;可以使用纯 Python 构建高性…

2024级新生数组字符串专题题解

一、题解&#xff1a; 1.A-[NOIP2005]校门外的树_24级新生数组字符串训练题 (nowcoder.com) 这题常见的解法有两种&#xff1a; 第一种是这道题我们可以直接按照题目意思枚举 #include<bits/stdc.h> #define int long long using namespace std;int road[10010];sig…

HarmonyOS开发实战( Beta5.0)DevEco Device Tool开发环境搭建实践

通常在嵌入式开发中&#xff0c;很多开发者习惯于使用Windows进行代码的编辑&#xff0c;比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段&#xff0c;大部分的开发板源码还不支持在Windows环境下进行编译&#xff0c;如Hi3516、Hi3518系列开发板。…

Django+Vue3前后端分离学习(五)(前端登录页面搭建)

1、如果需要使用组合式API&#xff0c;需要安装插件&#xff1a; npm install vite-plugin-vue-setup-extend --save-dev 在vite.config.js里配置&#xff1a; 首先导入: import VueSetupExtend from vite-plugin-vue-setup-extend 添加&#xff1a; 2、创建login.vue 然…

C语言刷题日记(附详解)(4)

一、选填部分 第一题: 下面四个选项中&#xff0c;均是不合法的用户标识符的选项是( ) A. A P_0 do B. float la0 _A C. b-a sizeof int D. b_a temp _123 思路提示&#xff1a;题中所问的是"不合法"的"用户标识符"&#xff0c;要记得&#xff0c;C…

4区升3区的“灌水王者”!7个月还未送审被人评为“小牌大耍”?急投学者注意

【SciencePub学术】本期&#xff0c;给大家介绍的是1本计算机类的SCI——《JOURNAL OF SUPERCOMPUTING》。 优点VS缺点 • 期刊投稿难度较小&#xff0c;接受率较高 • 国人投稿友好&#xff0c;且已经稳定检索了28年 • 去年由中科院4区升为3区 • 普遍反映这本期刊审稿周期…

项目总体框架

一.后端&#xff08;包装servlet&#xff09; 使用BaseServlet进行请求的初步处理&#xff08;利用继承进行执行这个&#xff09; 在BaseServlet中 处理请求的类型找到对象的方法&#xff0c;并使用注解找到参数名&#xff0c;执行参数自动注入。 package com.csdn.controlle…

JAVA数据导出为Excel

目录 一、导入依赖 二、使用的相关类 1、XSSFWorkbook 构造方法 创建表 操作表 保存表 样式和格式 日期处理 密码保护 其他 2、XSSFSheet 获取属性和信息 行操作 列操作 表的属性 合并单元格 保护表 页眉和页脚 注释 其它 3、XSSFRow 获取属性和信息 单…