Reservoir Computing

背景:

  1. 神经网络的一种弥补RNN缺点
  2. 神经网 络方法在具体应用过程中也存在一些局限性 .比如前向 结构的神经网络一 般不适 合处理与 时序相 关的机 器学 习问题 , 而在实际应用中出 现的问 题往往 与时 间相关 , 比如预测 、系统辨识 、自适应滤波等等 .递归神经网络虽 然可以用于解决时序相关问题 ,但递归神经网络在实际 应用中存在训练算法过于复杂 、计算量大 、收敛速度慢 以及网络结构难以确定等 问题 .另 外 , 还存 在记忆 渐消 (Fading Memory)问题 , 随时间步骤的加长 , 误差梯度可能消失或者产生畸变 , 所以递归神经网络一般只适合处理短时时序问题 .这些问题都严重阻碍了递归神经网络 在实际问题中的应用 .

摘抄

​ 为了减少训练过程 的计算负 担以 及克服记忆渐消等问题 , Jaeger 于 2001 年提出回声状态网络(Echo State Networks, ESNs)[1] , Maass 于 2002 年提出流体状态机 2 .这两种方法虽然提出的角度不同 , 但其本质都可以认为是对传统的递归神经网 络训练算法的改进 .D Verstraeten 等在文献[ 3] 中以实验 的方式证明了ESNs和LSMs在本质上是一致的,并将其 统一命名为“储备池计算”(Reservoir Computing)

总结:

神经网络方法在具体问题上存在问题

​ 1: 时序问题虽然可以解决, 但存在算法复杂, 计算量大。

​ 2: 收敛速度慢,网络结构难以确定。

​ 3: 记忆渐消问题:随时间步骤的加长 , 误差梯度可能消失或者产生畸变。

RC优势:

​ ESNs 最大的优势是简化了网络的训练过程 , 解决了传 统递归神经网络结构难以确定,训练算法过于复杂的问题 , 同时也克服了 递归网络存在的记忆渐消问题

储备池计算主要理论组成:

  1. 状态回声网络ESNS:
  2. 流体状态机

ESNS数学模型

结构表示

M个输入

N个处理点

L个输出

状态方程和输出方程

总结

状态变量 W,输入输出对状态变量的连接权矩阵W(in),W(back),三项均为随机产生, 产生后就固定不变;

W(out)为训练得到;

f(out)取恒等函数:因为输出层一般线性;

参考文章片段

计算过程

两个阶段:

  1. 采样阶段
  2. 权值计算阶段

采样阶段

摘抄:采样阶段首先任意选定网络的初始状态 , 但是通 常情况下选取网络的初始状态为0 ,即 x(0)=0.训练样 本 ( u (n ) , n = 1 , 2 , ... , M ) 经 过 输 入 连 接 权 W i n , 样 本 数 据 y (n )经 过 反 馈 连 接 权 W b a c k 分 别 被 加 到 储 备 池 , 按 照系统(1)状态方程和输出方程, 依次完成系统状态的计算和相 应输出 y (n )的 计算与收集 .注意每一时刻系统状态 x (n)的计算 , 都 需要将样本数据 y(n)写入到输出单元 .为了计算输出 连接权矩阵 , 需要从某一时刻开始收集(采样)内部状 态变量 .这里假定从 m 时刻开始收集系统状态 , 并以向 量(x1(i),x2(i),...,xN(i))(i=m,m+1, ...,M)为行 构 成 矩 阵 B (M - m + 1 , N ) , 同 时 相 应 的 样 本 数 据 y (n),也被收集,并构成一个列向量 T(M -m +1,1).这里需 要说明的是 :

(1)如果系统包含有输入到输出 、输出到输出的连 接权 , 那么在收集系统的状态矩阵 B 时 , 还需要 收集相 应的输入和输出部分 ;

(2 ) 为 了 消 除 任 意 初 始 状 态 对 系 统 动 态 特 性 的 影 响 , 总是从某一时刻后才 开始收 集系统的 状态 .从 该时 刻开始 , 可以认为系统反 映的是 输入 、输出 样本数 据之 间的映射关系 .

权值计算阶段

储备池的优化

GA;使用进化算法对参数进行优化;

寻优参数包括三个 :

  1. 储备池规模 Nx ,
  2. 内部连接权矩阵的谱半径 ρ(W),
  3. 内部连接权矩阵的 稀疏度

缺点:

遗传算法本身的搜索盲目性导致计算量 过大 , 以及容易陷入局部最优的问题限制了其在储备池参数优化的应用

基于随机梯度下降法的储备池参数优化

比经典 ESNs 更为一般的形式 : x(n +1)=(1 -αΔt) x(n) + Δt f (Winu(n +1) + Wx(n) )

同时也引入了两个全局参数 Δt 和 α, 其中 Δt 是离散化,时间间隔与系统时间常数的比值, α叫做decay rate .

进而建立了针对全局参数 Δt 和 α的随机梯度下降优化算法 .

参考文章:

储备池计算概述彭 宇 1 , 王 建 民 1 , 2 , 彭 喜 元 1

Reservoir Computing论文学习的更多相关文章

  1. Reservoir Computing: Harnessing a Universal Dynamical System

    原文连接:https://sinews.siam.org/Details-Page/reservoir-computing-harnessing-a-universal-dynamical-syste ...

  2. Faster RCNN论文学习

    Faster R-CNN在Fast R-CNN的基础上的改进就是不再使用选择性搜索方法来提取框,效率慢,而是使用RPN网络来取代选择性搜索方法,不仅提高了速度,精确度也更高了 Faster R-CNN ...

  3. 《Explaining and harnessing adversarial examples》 论文学习报告

    <Explaining and harnessing adversarial examples> 论文学习报告 组员:裴建新   赖妍菱    周子玉 2020-03-27 1 背景 Sz ...

  4. 论文学习笔记 - 高光谱 和 LiDAR 融合分类合集

    A³CLNN: Spatial, Spectral and Multiscale Attention ConvLSTM Neural Network for Multisource Remote Se ...

  5. Apache Calcite 论文学习笔记

    特别声明:本文来源于掘金,"预留"发表的[Apache Calcite 论文学习笔记](https://juejin.im/post/5d2ed6a96fb9a07eea32a6f ...

  6. GoogleNet:inceptionV3论文学习

    Rethinking the Inception Architecture for Computer Vision 论文地址:https://arxiv.org/abs/1512.00567 Abst ...

  7. IEEE Trans 2008 Gradient Pursuits论文学习

    之前所学习的论文中求解稀疏解的时候一般采用的都是最小二乘方法进行计算,为了降低计算复杂度和减少内存,这篇论文梯度追踪,属于贪婪算法中一种.主要为三种:梯度(gradient).共轭梯度(conjuga ...

  8. Raft论文学习笔记

    先附上论文链接  https://pdos.csail.mit.edu/6.824/papers/raft-extended.pdf 最近在自学MIT的6.824分布式课程,找到两个比较好的githu ...

  9. 论文学习-系统评估卷积神经网络各项超参数设计的影响-Systematic evaluation of CNN advances on the ImageNet

    博客:blog.shinelee.me | 博客园 | CSDN 写在前面 论文状态:Published in CVIU Volume 161 Issue C, August 2017 论文地址:ht ...

随机推荐

  1. java_05_IO

    java_05_IO 1,动手动脑 使用Files. walkFileTree()找出指定文件夹下所有大于指定大小(比如1M)的文件. 分析思路: 1)找到该文件夹下所有文件. 2)找出其中字节数大于 ...

  2. C++基础--虚函数和纯虚函数

    虚函数的一种重要的应用是在子类重写父类方法上,一般都是在父类中声明的时候用关键字virtual修饰. 在C++中,一个父类的对象指针是可以指向子类的实例化对象,这个时候可以用该对象指针来访问父类的成员 ...

  3. vmware桥接模式-无法内网通-克隆机要删除的文件-ssl

    网卡太多自动模式有时候无法正常通信需要绑定外部网卡 rm /etc/udev/rules.d/-persistent-ipoib.rules vmware报错 Microsoft Runtime DL ...

  4. C#高级编程(第9版) 第06章 数组

    好久没发东西了 , 一停下来就会变懒.... 虽然没完成,也就是它吧 --------------------------------- 以下正文 -------------------------- ...

  5. 启动mysql遇到问题Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

    在mysql的启动过程中有时会遇到下述错误 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 请问mys ...

  6. C#类、对象、方法和属性详解

    C#类.对象.方法和属性详解 一.相关概念: 1.对象:现实世界中的实体(世间万物皆对象) 2.类:具有相似属性和方法的对象的集合 3.面向对象程序设计的特点:封装 继承 多态 4.对象的三要素:属性 ...

  7. 布局基础<kotlin>2,自定义控件(整理自网络)

    引导页 传送门 Android vector标签 PathData 画图 ViewPager 代码清单 activity_main.xml <?xml version="1.0&quo ...

  8. axios请求接口的时候带一个参数

    getHomeInfo () { this.axios.get('/api/index.json?city=' + this.city) .then(this.getHomeInfoSucc) } 尽 ...

  9. NRF24L01多对一、多通道通讯关键代码

    要想24L01多通道通讯成功,务必先单通道调试成功,并且懂得这块芯片通讯的一些基本知识.   一.基本的通讯条件 1.接收端的接收地址(RX_ADDR_Px)等于发射端的发射送地址(TX_ADDR) ...

  10. Go语言之冒泡排序

    package main //main函数 import "fmt" //相当于#include func main() { ar := [], , , , , , , , , } ...