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. jmeter --- 压测时,如何让串联压测多个接口

    1.新建测试计划,在测试计划里勾选“独立运行每个线程组” 2.分别在每个线程组,添加聚合报告,以得到每个线程组的压测结果 3.设置不同接口压测的vu等,并为每个线程组,设置合理的启动延迟时间

  2. HDU - 4405 Aeroplane chess(期望dp)

    题意:沿着x轴从0走到大于等于N的某处,每一步的步数由骰子(1,2,3,4,5,6)决定,若恰好走到x轴上某飞行路线的起点,则不计入扔骰子数.问从0走到大于等于N的某处的期望的扔骰子次数. 分析: 1 ...

  3. 【golang】golang的一些知识要点

    特殊常量iota: 1.iota的值在遇到const关键字时将被重置为0 2.const中每新增一行常量声明将使iota计数一次,也就是自动加一. 3.iota只能在常量定义中使用. iota常见使用 ...

  4. 如何下载Github的工程到本地,完成修改并提交

    2019-02-22 对以下方法做了测试 可以生效 1 在Github上添加密钥 方法是:https://www.cnblogs.com/jason-beijing/p/9110187.html 2 ...

  5. 洛谷 P2543 [AHOI2004]奇怪的字符串

    题目传送门 解题思路: 本题朴素求最长公共子序列即可,但是空间不够,怎么办呢? 空间不够,滚动数组来救 AC代码: #include<iostream> #include<cstdi ...

  6. 微信小程序手绘地图实现之《Canvas》

    环境:微信SDK2.9+   + uniapp (可切换直接使用.map.js不限制环境) 正题: 先创建一个地图组件 <template> <view class="cu ...

  7. mysql数据库索引优化

    参考 :http://www.cnblogs.com/yangmei123/archive/2016/04/10/5375723.html MySQL数据库的优化:    数据库优化的目的:     ...

  8. Essay写作用对标点符号很重要!

    很多留学生在essay写作中对于标点符号的正确使用可能不是太清楚,今天Meeloun小编给大家整理了一些关于标点符号的正确打开方式,希望可以帮到同学们! Colloquialism俗语: 如果要在写作 ...

  9. vnpy交易接口学习

    1.按照github中环境准备要求,配置好环境要求. https://github.com/vnpy/vnpy mongdb安装在D:\Program Files\MongoDB\Server\3.4 ...

  10. Keras + Flask 提供接口服务的坑~~~

    最近在搞Keras,训练完的模型要提供个预测服务出来.就想了个办法,通过Flask提供一个http服务,后来发现也能正常跑,但是每次预测都需要加载模型,效率非常低. 然后就把模型加载到全局,每次要用的 ...