认知科学与类脑计算 笔记草稿 非最终版
认知科学——研究人的智能 系统的智能
类脑计算——借鉴生物大脑的处理方式 从结构和功能模拟生物神经系统
研究大脑是如何运作的》神经元如何编码? 如何进行通信和计算?
获得研究和设计类脑结构的能力
类脑计算特点:每个神经元独立放电(异步)、事件驱动、存内计算(存算一体)
脉冲:动作电位
传统神经网络是同步的
脉冲神经网络是离散的,自己可以自发放电的
人工审计网络神经元的原理:
是空间域的
第二章
脉冲神经网络的原理:
自带时间维度
神经系统的生理学基础
神经系统基本组成
神经系统由 神经元 和 神经胶质细胞:
神经元:信息处理 信息传递
最基本信息处理单元 具有兴奋性 能被激活并以脉冲形式传递
神经胶质细胞:对神经元提供支持保护 结构支撑 后勤部
动态极化:电信号单向传播
连接特异性:神经元仅在特定接触点与特定突出相连
神经元结构
树突:输入
胞体:处理
轴突:输出
突触——两个神经元的轴突、树突连接处
轴突(输出)方向——前膜
轴突(输入)方向——后膜
传递的时候存在电信号-化学信号-电信号
神经元类型
感觉神经元——两个轴突,将传感器的信息传到中枢神经系统中
运动神经元——
中间神经元——
神经元电位
神经元的细胞膜
神经元的细胞膜是双层磷脂分子层构成
离子通道——离子传导通道
由跨膜蛋白质组成
具有选择通透性
部分离子通道是被动的,保持敞开
部分离子通道是受控的
特性:
离子选择性
门控特性
跨膜传导
NaK离子泵
由跨膜蛋白质组成
水解一个单位ATP,泵出3个NA 泵入两个K
膜电位=VIN-VOUT 一般为负(细胞内带负电,胞外带正电)
离子流动造成内外电压差,从而发射脉冲
膜电位下神经元的状态
极化——两极分化,差异很大 静息电位
去极化——动作电位
复极化——动作电位
超极化——动作电位
静息电位的形成——浓度差 = 电位差平衡
上面是没信号的时候,下面是有信号的时候
第三章 神经信号与突触传递
神经信号
信号是由脉冲组成,受刺激后,脉冲的频率随着刺激强度增加而升高,但幅度不变
若没有达到预制就不会产生动作电位。
特征:
信号的幅度和形态恒定
全由全无01
单向传播,从轴突胞体传递到轴突末梢
幅度不由传播距离衰减
四个问题:如何 表示信息 传递信息 如何存储 如何特征提取
动作电位的形成(如何产生的)
Na开Na进,压差变小
K开K出,压差变大
K继续开,K流出,压差变大 超极化
K关回归静息电位
突出信息传递(如何传递)
分为
化学突触(囊泡释放神经递质,和突触后膜结合 单向的) 和
电突触(间隙远小于化学突触,允许离子直接通过,不需要转换为化学信号! 双向的)
到达后膜后会形成一个突触后电位
兴奋性突触后电位(EPSP):去极化 电压上升
抑制性突出后电位 IPSP:超极化 电压下降
动作电位与局部电位
这些都是局部电位(多点输入),真正的输出要看谁更强EPSP>IPSP
突触后神经元动作电位的产生
产生部位:轴突始段
产生的动作电位会沿着轴突传递到末梢(影响下一个输入),一方面传导胞体和树突使其恢复到静息电位(初始化)
神经递质与受体
判断一个物质是否是神经递质,要满足:
1. 在神经元中合成(合成)
2. 存储在突触前末梢,并在一定条件下克岩大量释放(触发)
3. 克岩将其其从作用位点移除(删除)
突触整合
空间求和:来自不同突触位置的EPSPIPSP在突触后膜叠加
时间求和:统一突触在短时间内多次释放递质(叠加)
神经环路(有什么影响)
神经元-(突触+神经元)神经环路-大脑
前馈兴奋
信息流经一系列兴奋神经元
会聚 发散神经元
神经信息处理和人工智能算法
第四章 神经元模型与计算机制(考点)
MP神经元
特点:
不应期(神经元受刺激后不能再响应新刺激了,起飞后再撸也没有反应了)
现在DL的人工神经元
输入输出都是连续的值,不涉及时间的累积。
MP神经元不可以反向传播修改权重
脉冲神经元
拥有时间维度 计算更简单
☆考察点
Hodgkin-Huxley模型(如何构建可计算的神经元)
Il是指一直开放的通道,n^4是指膜上有四个na离子通道,m^3h指有两种k门
公式是由基尔霍夫电流定律得到的,g是电导,门的值是其开放概率,必须全部开放才能通过
LIF模型leaky-integrate-and-Fire
HH模型的计算代价很大,但生物拟合性很棒,我们找一个折中,LIF模型
基于突触输入的神经计算
时间窗:
突出权重表示:
电流阈值机制:叠加电流、无输入自衰减、不应期
课堂考点☆公式推导 区别
星马梦缘:
突触分为两种,通过两种情况会激发突触后电位,EPSP IPSP,原理,然后讲的局部电位和动作电位,空间求和 时间求和
MP神经元和现代神经元的区别
星马梦缘:
脉冲神经元特性
脉冲神经元和人工神经元的区别
周期和频率要会计算
第五章
神经信息编码
感知编码机制——各种感官如何获取信息
如何将触觉、视觉、听觉信息转换为01的形式,进行编码
2类思路:
模拟生物的感知系统
借助统计和概率模型进行编码
大脑如何获取信息的?
通过感知神经元讲外界刺激转换为脉冲信息
触觉:
形变触发离子通道变化,产生动作电位
听觉:
声音传播到耳蜗中讲声波转换为脉冲。声音传递到耳朵后引发毛细胞形变,外毛细胞起放大作用,内毛细胞传递声波为信号到神经
有些对高音、低音有反应,各个细胞对不同的频率强度的声音其反应
这是一种稀疏编码,仅将敏感的声音上传到神经网络
视觉:
视网膜——神经元如何用脉冲表达图像的?
看到一副图片
亮暗
看到图片后,会有部分神经元先感受到图像,有些后感受到图像,且激活的数量也不愿意
神经节细胞,有感受野(中心-环绕结构),有oncenter,offcenter两种。只有中心是暗点才会有强烈的脉冲发出
颜色
具体什么颜色都可以通过分析脉冲的频率得到。
味觉
一个细胞响应多个味道,一个味道也有多个细胞感受
嗅觉
一个气味由多个神经元表示
脉冲编码——将外界信号转为脉冲序列
在外界信息经过神经编码后,以时空脉冲模式参与计算。
一般分为频率速率编码和时间编码(编码信息以时间延迟多少,编码信息以频率大小)
比率编码——刺激和脉冲频率成正比
延迟编码——大刺激延迟时间比较小
间隔编码——
相位编码——
频率编码:一个时间窗内,脉冲个数与输入成正比
优点:抗噪性强,容易通过实验测量放电率
缺点:忽略脉冲精确时间(先后)中包含的信息
时间编码:
生物对刺激的反应可以达到毫秒级,神经编码的分辨率是在毫秒级,反馈快
方法、延迟、计算复杂度、鲁棒性、承载信息量
频率编码有多个脉冲表示信息,有多次表达的机会。什么时候发放并不重要
而时间编码只有依次表达信息的机会。能传递更多信息。
典型的编码算法
频率编码
适合图像编码任务
频率编码生成的脉冲序列在一定程度上保留了输入的实数值信息,表达方式简介,因此在深度脉冲神经网络中被广泛采用
均匀编码
将像素归一化到0-1之间,作为发放频率,脉冲在窗口内均匀分布(间隔一样)
脉冲发放越早,说明刺激越大(只需要看第一个脉冲就能知道谁最大)
泊松编码
展开成列向量,然后每个时刻随机生成一个值,当列向量的值大于时刻值就会产生脉冲
考点★ 时间编码
时滞编码——刺激越大,响应越快
首次脉冲发放时间编码(延迟编码特例)
等级排序编码
分桶思想,划分刺激等级,每个等级的同时发出
相位编码
群体编码/簇编码
用一组脉冲发放表达信息,兼顾了频率编码和时间编码(一次发放多个脉冲)
有两个地方携带信息:脉冲数量和脉冲间隔
ISI是输出间隔,P是像素值,像素值越大,ISI越小,间隔越小
各编码差异(爆发式编码)
如何压缩信息
如何压缩脉冲信息,感受野细胞的数量是10^8,但神经节细胞是10^6,让神经细胞感受到
编码
对其:每个点都找到其最近的峰值对应上
压缩:将其映射到同一个脉冲细胞上
空间信息通过行为保留,可以从单个脉冲细胞找回去是谁发放的
网络直接编码
使得编码方式可以被学习,之前的映射都是死的,无法自学习。
直接将信号输入到脉冲神经网络
感知设备直接编码
意识是安全可控的小概率事件
第六章 神经可塑性 神经元会自学习
大脑能够做记忆的基础
神经系统的两大挑战一个是保持可塑性,一个是维持稳定性。
依据所处的环境改变神经系统的功能,以适应环境。
同时改变后也能维持稳定性。
可塑性是大脑主动调节结构和功能的能力:
结构可塑性:在学习过程中,形成新的网络结构(自学习性)
功能可塑性:在受损时,将受损区域的功能转移到健康区域(恢复能力)
本质上是通过改变突触的联系和结构实现的。
突触可塑性
神经网络的调控分为突触可塑性,和神经元自身行为的调节
【突触的强度可以增强减弱】也i就是权重的强弱是可变的。
如何在生理机制上改变的呢?
1.通过改变突触前神经递质的释放量来实现。
2.通过突触后受体的可用数量
反应在离子通道电流的幅度上。
---
电活动水平决定神经网络的整体动态,影响神经元与突触的功能调节
神经元内部一起直接的精确定时
神经调质物质
突触可塑性有什么作用?
是神经结构发展,记忆形成和学习过程种的关键机制。体现了突触效应随时间动态变化的能力。
有不同的时间 持续时间 和 触发机制
短期突触可塑性
由突触前脉冲序列激发
短期突触抑制
短期突出增强
突触前(发射端)释放的神经递质增加
神经促进/脉冲促进(最短)
当前脉冲紧随前一个脉冲出现
突触增强(较长)
在重复刺激后增加释放可能性
后强直性
长期突触可塑性
前后脉冲序列触发的
在电刺激诱发动作电位脉冲后,突触反应水平持续增强,持续若干小时。
在原有的受体,增加离子通透性。(AMPA受体由于接收高频释放的na把mg从NMDA通道中挤出来了,使其可以响应谷氨酸。)
增加受体。
释放CO,促进递质的释放
长期突触抑制
长期突出增强
LTD LTX 虽然效果相反,但是诱导机制相同
同质可塑性
同质突触可塑性具有输入特异性,刺激仅对单个位置的受体增强/减弱可塑性,但不会影响其他位置的受体。
异质可塑性
在异质突触可塑性中,一个特定神经元的连接突触强度改变,也会影响其他位置的突触强度。在类比学习中很有用
稳态可塑性
LTP会产生级联反应,一个神经元被放大后,下一个神经元的输入和频率也会增加。
稳态可塑性是对长期活动水平变化的补偿,使其稳定。
通过缩放能力,保持输入等比缩放,防止无限发放。
第七章
无监督学习
赫布规则
一起发放的神经元会连接在一起
A发放B也发放,A轴突和B突触足够近,且能反复持续刺激B,使其产生脉冲,那么从A到B的突触效能就会增强。一段时间后,哪怕来的是低频电位,B的输出依然很高
☆ 脉冲时序依赖可塑性(继承赫布规则)STDP
A必须先发放,才能触发B的发放。
一种根据神经元输入与输出脉冲的相对时间关系,来调整
必须是前神经元先发放脉冲,后神经元才发放脉冲,则突触权重会增加。
如果突触后脉冲先于突触前脉冲发放,则突触权重会降低。
MP神经元构成的Perception单层感知机(可以求梯度)
感知机的处理任务建立在“线性二分类”的条件上。
输入N维,输出-1 +1
最小化损失函数
选择初始值wb-选一个样本-计算结果-如果误分类-更新权重和偏置,直到没有误分类点
MLP多层感知机 的训练(可以求梯度)
前向传播-误差计算-反向传播-参数更新
mlp的表达能力强,能提取更多特征。解决非线性的问题。且引入隐藏层,可以学习高级特征。
输入层接收原始特征,隐藏层通过权重和偏置wb堆信息加权组合并施加
前向传播:计算第n层的输出值,计算输出值和实际值的残差,再求导,将误差反向传递。
反向传播:基于梯度下降,先计算最后一次输出值,在计算损失函数,从后往前传,每一层更新参数。
脉冲神经元-脉冲神经网络 的训练(离散 无监督学习)
☆考点 有监督/无监督学习的区别
无需外部教师信号,自主探索环境规律。
减少外部资源依赖,更快适应环境(资源效率,演化适应)
反向传播是监督学习的一种。‘无监督学习依赖于突触可塑性机制。
有可塑性才能支持无监督学习。
赫布学习规则
根据突触前后神经元的活动,改变突触权重的调整方式。(反向传播需要考虑后面所有层的误差来调整)
一起发放的神经元会连接在一起
A发放B也发放,A轴突和B突触足够近,且能反复持续刺激B,使其产生脉冲,那么从A到B的突触效能就会增强。一段时间后,哪怕来的是低频电位,B的输出依然很高
揭示了神经元集群同步激活形成功能连结的机制:
任何两个同时/重复处于活跃的细胞都会区域形成关联。
巴甫洛夫的狗(铃声响 和 发放食物两个活动模式反复出现时,铃声响会触发后系神经元)
Hebb学习规则满足局部性
突触权重只与前后突触的频率有关(以及本身wij),因此频率模型中突触权值的改变量可以表达为:
标准的Hebb学习规则
协同性:同时活跃才会增强突触权重
请注意,这里是变化量,不是值
前后神经元频率越大,权重变化量越大
标准的Hebb学习规则+突触权重约束
如果没有约束,权重会无限增加
将常量C(wij)定义为一个函数,与此前权重有关。
当权重接近于1,则基本不变化
基于衰减的Hebb学习规则
前两者都没有考虑减小权重的情况。
现在考虑如果没有刺激的话,yw会随时间逐渐衰减,指数衰减
当权重接近1时,更容易衰减;当权重接近0时,更容易增强
基于前门控的Hebb规则
前面都把前后神经元同等对待:
(是否更新)只有当前门j激活时,才会发生权重更新。
(更新多少)更新多少由(vi-vθ)决定
BCM规则
我们希望阈值vθ动态变化,取这段时间的平均值。
后续每个神经元响应一类输入,也就是感受野的形成。
基于后门控的Hebb规则
有一些前神经元活跃,大于vθ则增强,vθ变大,其他竞争不过就减弱
协变规则(只考虑相关性,不考虑强度)
只有同时强弱才会变强
总结
Hebb规则的特性
协同性:同时活跃才增强
有界性:软边界(基于衰减)
竞争性(BCM):归一化,并限制权重的总和不变
STDP学习规则
仅依靠脉冲频率并不能完全反应如初可塑性的实际作用。
突触效能的改变方向还和发放的精确时许有关,这就是STDP,对Hebb增加的时间维度
时间窗口
权重依赖的STDP
防止再STDP中权重无限增加/减弱,硬边界,到wmax就卡掉
软边界
硬边界可能导致权重在边界附近“饱和”,显著影响突触的动态调节能力。而软边界使权重逐渐趋于上下限,但不会完全固定。
较大的权重增长速度会减慢,而较小的权重减小速度会逐渐变缓,
公式表示为:
狄拉克函数 开关函数
在线STDP
每个神经元可以发放多个脉冲,那么计算Δt就需要计算多组脉冲,计算是困难的。
因此引入迹trace实现,用于记录脉冲活动的累计效应。收到一个脉冲就加1,然后后续衰减,
如果检测到突触后的发放,则可以找到此刻突触前神经元的值
只有当t=tf的时候才触发STP STD,xj(t=tf)是衰减函数计算出来的遗留值(迹),A是权重,δ狄拉克函数只是一个开关
三元STDP
不仅看一对脉冲,而是
每个突触维护一个突触前迹apre,两个突触后迹apost1 apost2
当一个突触前脉冲到达时,apre增加1,指数衰减,突触后脉冲的时间常数不同而已
当到达时,不仅要看前迹,还要看另一个不同衰减常熟的后迹apost2
带约束,相当于softmax,总和不变L瓜分比例
STDP特性分析:
快速响应:训练会使得反应更快
时间精度:
强使劲相关性的输入增强,噪声减弱
题目
STDP的应用
重复脉冲模式检测
可以在带有噪音的序列中搜寻到重复的有效信息序列
基于快速响应且加强响应的特性,具有重复的脉冲在多次迭代后会更早触发,更强
WTA Winner_Take_All 饮者通吃
真正剩下的神经元是对其响应对强烈的神经元
输出神经元激活后会发放抑制信号给同层神经元
如何用多个神经元学习一个/多个模式
增强鲁棒性,让多个神经元学习一个模式,但间隔发放(通过抑制连接实现)
多模式 多个神经元
会通过STDP和WTA机制会自动分配
STDP 识别手写数字
侧向抑制作用,导致兴奋性神经元之间的竞争
只用这个网络结构:
输入层是28*28个神经元,对应图片像素点。神经元需要发放脉冲,如何将像素转为脉冲呢?将频率和像素的灰度成正比。先把发放率设为像素点的强度,如果大了就除以2。太小了就乘以2。
处理层:
包括兴奋层(红色)和抑制层(灰色),输入层跟兴奋层全连接。
兴奋层和抑制层一对一连接。确保前面的兴奋层发放,则抑制神经元也发放。
而抑制层反链接到兴奋层的所有神经元,除了自己对应的神经元。(这样就能实现赢者通吃,会筛选对反应最强烈的神经元)
无监督无法执行分类,用0-9的样本测试输出层,谁的响应最大,就对应谁
要求输出兴奋性是可以权重可视化、兴奋性神经元个数与准确率的关系、训练样本个数与训练准确率的关系、混淆矩阵、错误样本
第八章 脉冲神经网络监督学习算法
如何将成熟的ANN网络的反向传播应用在脉冲网络中
SNN的难度:高效学习突出权重和时序特征
经典人工神经网络学习算法
t是输出
更新
☆ 考点
输出是0.3388
单层脉冲神经网络学习算法
Tempotron 用于训练单层网络的。电压驱动 解决基于时间编码的模式识别的问题
解决二分类问题。让匹配模式是神经元发放。
用单个神经元实现二分类
如果预测1对了,就不修改。如果不是,就调节最高电位的权重。使其超过发放阈值
正样本的修正
这个θ是指01函数,为1则为1.
结合负样本:
如何更新网络
Tmax可以通过离散点枚举最高的或者前面的公式计算。
然后假设在最大点附近导数为零,则后面这一项可以去掉:
多酚类
拓展temptron'到多个分类场景,那么就需要将输出神经元扩大到C个。
训练时,则样本k对应的神经元应该发放,其他神经元不发放。
如何识别:
1.那个神经元发放就选那个,或者谁发放早就选最早的。
2.选择拥有最大膜电位的类别
另一种适合于单层神经网络训练的方法: 远程监督学习算法 ReSuMe 动态权重调节法
temptron是依赖于架构的,换架构整个公式就要换。
而ReSuMe与神经元模型无关,只与STDP机制有关。(非监督学习变得监督学习化)
Tempton只关注一个脉冲发布发放,而ReSume是关注整个脉冲序列。↓
希望输出序列和目标序列同时发放。
第一个位置发放的太早了,因此要降低权重,将提前的时间作为减小的权重。
第二个位置应该发放了却延迟发放了,因此要增加权重,将延迟的时间作为增加的权重。
ad初始状态。
Sd是期望的发放情况
So是实际的发放情况
两者的值是0/1,如果期望发放却没发放,就是1X后面的调整量。
深度多层脉冲神经网络学习算法
浅层的缺点:无法解决复杂任务。
深度SNN有很多挑战
时间维度有信息、数据离散
尝试改BP改到SNN上使用。
那么最重要的是不可微的特性。
基于代理梯度的学习方法——梯度求不了就找伪梯度
基于脉冲发放时间的学习方法——
基于代理梯度的学习方法
但是由于激活函数是突变的,导数要么是0要么是无穷
用平滑曲线拟合阶跃函数
STBP 时空反向传播算法
时间的传播:神经元还需要接受自己上一刻的信息,因此有回环
要同时考虑在时间和空间的误差反向传播
1.迭代LIF模型
2.时空反向传播训练框架
3.代理梯度函数
迭代LIF神经元模型
神经元的膜电压由 输入 和 自身漏电 决定的
I代表前一层的wXi。
神经元的u(t)可以通过末次放电的u(t-1)近似
神经元的膜电压和输入和自身漏电决定的
上标代表t+1时刻、第n层的第i个神经元接受到的输入
输入由前一层的输出传入,o是n-1层的,j是指把前一层所有与i相连的神经元都纳入考虑,l(n-1)是指前一层与i相连的神经元
u是电压,电压由前一层的输入和自身的漏电
构成
最后一层是门控函数只输出0/1
f是遗忘门(漏电),o是输出门(是否超过阈值)。
反向传播过程
最后要计算L对每一层的wb的导数。
考虑电压是如何来的?(空间+时间)
空间上是来自前一层的脉冲
在这一时刻完成一整个网络的传播。
时间域上,由前一个时间漏电得到的!!!!!!!
所以这个式子就包括了空间域和时间域的传递信息。
uf是时间域,代表漏电的衰减,后面的x+b是空间域由前一层传递过来的。
utn2会输出otn2,o会输出给下一层。
还会把自身的漏电电压uf传递给下一个时刻的自身。
相当于是先传播一层,然后再把自身的值通过漏电函数传给下一刻的自身。
如何通过损失函数回传
第一种情况:如果是最后一层·
我们必须看整个时间域内的所有输出,取平均作为输出值,和目标值做差得到损失值。
相当于是这一列的红色o输出。
注意,这里o对u求导是g函数,也就是门控阶跃函数,因此无法求导,需要用伪梯度。
一会再解决这个问题
第二种情况:当在最后一个时间步,但是不是最后一个输出层
相当于没有来自上一层的反向传播值了,但是要考虑来自前层(n+1)的反向传播值。
第三种情况:是输出层,但是不是组后一个时间步
第四种情况:既不是最后一个时间步,也不是最后一个n
代理梯度函数
他们都是狄拉克函数的近似。
但是如果u太大太小,还是会出现梯度消失的问题。
其尖锐程度由α决定。
共同特点:
中心在阈值附近
远离阈值为0
阈值附近最大
积分面积为1
mem_update膜电压更新——传入四个值:卷积操作 被卷积的x 上一个时刻的mem和spike
得到新的电压和脉冲
用总数 平均 最后一层最后一个时刻作为output、
不用做time循环了,都封装好了,用spikingjelly
转换算法 ANN-SNN Conversion(精度不变)
将ANN转为SNN,将权重copy过来。两个网络结构一致。
通过类比ANN和SNN的两个层之间的映射关系。可以发现如果输入的一样的话,输出就应该一样。
即Rsl近似al时,前一层发放率==激活值。经过缩放和设置阈值之后就能得到一样的输出。
那么我们的目的就是让二者的发放率==激活值
第一种映射方式 Ratecoding 将激活值映射到频率上
假设不漏电也没有不应期,就一直积累。不是每个时间步看要不要发放。积累到阈值θ的多倍,然后统一发放多个脉冲。
为了凑这个下取整式子,是第L层的脉冲发放频率,
相当于一个没有leaky的IF的神经元 无不应期
转换流程
精度损失的来源
欠激活 过激活 脉冲随机性 都可以通过找到合适的阈值 权重来平衡
那怎么办?
如何找到合适的权重 阈值
如何进行限制阈值?
归一化的 database和modelbase方案什么区别 ☆ 考点
防止单步的发放率》1或太低
是基于训练集的最大值的,如果测试集的分布不同,最大值就不一样,就没用了。
另一种映射方式——TTFS 将激活值映射到时序上
time to first spike之发放一次,根据发放时间先后代表权重。
映射
如果定义时间窗口为t的话,对应的发放时刻应该是t=1-a。a是强度,越强,t小,t不能无限大。
K是狄拉克函数,只考虑当前发放的时间晚于前一层发放的时间(你不能在接受到前一层刺激之前就发放。)
当计算的V值等于θ=1阈值时,就发放。
时间窗口每一层都是不一样的。
当T=1时,tli=l+1-al,每一层的时间窗口是独立的。
那么越后面时间窗口就越大?
如果共享窗口,那么可能出现后一层的发放时间算出来比前一层的输出还早。
其他问题——过早放电
核心是引入了时间的积累。需要有一个“动量“的变化,会有延迟。
ANN SNN不对应。
正输入先到,负数入后到,原本是不发放,但是发放了的。
漏放电问题
由于正负输入的时间差很小,原本应该发放的,由于负输入先输入的时间累计,导致正输入无法在时间窗口内发放。
动态分配时间窗口
在前一个神经元发放之前(时间窗口前)阈值设置为无穷大,必须进入时间窗口时(所有神经元的脉冲都到达后)设置阈值为1,离开时间窗口如果都没有发发放,就强制发放。
如果ANN本身就不发放,你强制最后一刻发放对吗?你怎么知道前一层所有的都发放了?时间窗口如何设置起始点?为什么不用串行,按照每一层一个固定的时间片,
时间扭曲问题![]()
由于权重不同,哪怕输入的激活值一致,输出的时间刻也不一样。
我们希望训练的时候使得Lw=0,让网络自己找到权重和小于1的。
或者硬约束。
题目
1. STBP 代码分析:Forward 与 Backward
问题:在这段代码中,forward 和 backward 分别实现了什么?为什么不能直接使用真实的阶跃函数导数?
解答:
forward(前向传播):
实现了脉冲发放函数(Spike Generation)。
代码return input.gt(thresh).float()判断输入膜电位(input)是否大于阈值(thresh)。如果大于,输出为1(发放脉冲);否则输出为0。backward(反向传播):
实现了代理梯度(Surrogate Gradient)。
代码temp = abs(input - thresh) < lens创建了一个矩形窗口(脉冲发射时刻附近的一个窄区间)。在反向传播中,它用这个窗口内的非零梯度值(通常是1或某种高斯/矩形函数值)来近似真正的梯度。为什么不能直接用真实阶跃函数导数?
真实的阶跃函数(如Heaviside函数)在阈值处是不可导的(导数为无穷大或未定义),而在其他地方导数为0。
直接使用真实导数会导致梯度消失问题:由于脉冲生成的导数几乎处处为0,如果使用真实导数,误差梯度在反向传播时无法回传,网络参数(权重)将无法更新。因此,必须使用代理梯度来模拟脉冲的导数,使梯度能够顺利传播。
2. Data-based Normalization 权重缩放
问题:在 />
3. Rate-based vs. TTFS-based ANN-SNN 转换的区别
问题:请比较 rate-based ANN-SNN 转换和 TTFS-based ANN-SNN 转换的主要区别。
解答:
| 比较维度 | Rate-based (基于发放率) | TTFS-based (基于首次脉冲时间) |
|---|---|---|
| 信息编码方式 | 脉冲数量(频率):通过在一个时间窗口内统计发放的脉冲总数来表示数值。数值越大,发放频率越高。 | 脉冲时间:通过首个脉冲发生的时间来编码信息。时间越早,表示数值越大(或越小,取决于定义)。 |
| 时间窗口 | 需要较长的时间窗口(Timesteps)来保证统计稳定性,延迟高。 | 时间窗口短,延迟低,往往只需几毫秒就可以完成信息传递。 |
| 转换原理 | 将 ANN 的 ReLU 激活值映射到 SNN 脉冲发放率(归一化)。 | 将 ANN 的 ReLU 输出映射为 SNN 中神经元到达阈值的时间点。 |
| 模拟复杂度 | 相对简单,易从现有 ANN 迁移,但模拟时间长。 | 相对复杂,对时间同步和相对数值关系要求高。 |
| 硬件优势 | 传统脉冲神经网络芯片容易支持。 | 更适合强调低延迟和低能耗的硬件应用场景。 |
总结:Rate-based 更看重统计平均,适合图像分类等非实时任务;TTFS-based 更看重时间序列的精准度,适合需要极低延迟的实时处理任务。
第九章 类脑计算应用
神经形态相机有两类:
运行的大致原理:亮度变化阈值产生事件。亮度增加减少产生ONOFF
有点是什么?异步 稀疏 稿时间分辨率
事件流编码方式 如何处理和使用
二值事件帧编码
TimeSUrface编码
如果有密集的事件发生,值就会更大,保留局部时间信息。控制tau控制衰减率,本次离上一次越近,就越强。
语音处理
是否有人生
说了什么
生源从哪里来
首先要检测是否有任说话
然后识别指令
第十章 脑机接口
分类: 头皮 皮层 深层
群公告
课件地址:
https://icloud.sdu.edu.cn/link/AA7E9E1E6B642044518F8F0834E5828D72
文件夹名:认知科学与类脑计算
提取码:leinaojisuan
大作业
第16周开始 一节理论课 2界实验课
完成速度 越早完成越好 要做PPT 展示一下
要包含 选题 用什么编码方法 用什么网络 网络结构 用什么训练算法(STBP STDP) 结果如何(和现有结果更好)要有对比 越丰富 【我用不用某个方案,对模型的最后效果如何】
一定要模块化构建,方便写去掉某个方案的效果变化。
不超过两分钟
准备代码
现场复现其中一个结果 对比试验的结果
选择简答 计算
sduneuromorphiccomputing@outlook.com
