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. 【程序员面试金典】面试题 01.03. URL化

    题目 URL化.编写一种方法,将字符串中的空格全部替换为%20.假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的"真实"长度.(注:用Java实现的话,请使用字符数组实现 ...

  2. P3045 [USACO12FEB]牛券Cow Coupons

    P3045 [USACO12FEB]牛券Cow Coupons 贪心题.先选中 \(c_i\) 最小的 \(k\) 头牛,如果这样就超过 \(m\) ,直接退出,输出答案.否则考虑把后面的牛依次加入, ...

  3. Maven:java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty

    直接参考前面一篇文章中间介绍的第2种方法即可:Maven:sun.security.validator.ValidatorException: PKIX path building failed: s ...

  4. id3算法python实现

    import numpy as npimport operator def createDataSet(): dataSet = [ [1,1,'yes'], [1,1,'yes'], [1,0,'n ...

  5. idea排除要编译的文件

    感觉应该有更好的方式.VS中可以右键文件从项目中排除 如果要恢复选中要恢复的文件,点击 +下的-即可

  6. CodeForces - 446A DZY Loves Sequences(dp)

    题意:给定一个序列a,求最长的连续子序列b的长度,在至多修改b内一个数字(可修改为任何数字)的条件下,使得b严格递增. 分析: 1.因为至多修改一个数字,假设修改a[i], 2.若能使a[i] < ...

  7. Sequence Models Week 3 Trigger word detection

    Trigger Word Detection Welcome to the final programming assignment of this specialization! In this w ...

  8. convolution in frequency domain

    https://blog.csdn.net/myjiayan/article/details/72427995 convolution in frequency domain convolution ...

  9. ubuntu下面嘚一些常用基本命令

    1)环境变量配置: 9 ~/.bashrcor ~/.bash_profile. sudo gedit ~/.bashrc 第一种sudo vim ~/.bashrc export PYTHONPAT ...

  10. Java web实现综合查询+SQL语句拼接

    首先展示图形界: 界面比较简单,但麻雀虽小五脏俱全.因为数据库只有六种数据类型,所以最多添加六个查询框. 测试以下问题: 删除方式是从上往下开始的,如果删除之后会有问题.(后续改进ing) 若干个并且 ...