STDP

Henry Markram提出STDP,Spike Timing Dependent Plasticity学习方法。它根据神经元学习的先后顺序,调整神经元之间连接的强弱。

对于一个神经元i而言:

如果在其他神经元j传递信息之后,它才产生反应,那么类似于因果关系,它和传递信息的神经元之间连接G(j→i)会加强;

如果它产生反应之后,其他神经元j才传递信息来,那么这个信息就有可能被忽略,即该神经元与传递信息的神经元间的连接G(j→i)会减弱。
用类似(3)中的例子。

如果每次你跳完一段新疆舞后,就给狗食物吃,次数多了,狗在看你跳舞时,变会认为离吃食物时间不远了,而流口水;但是如果每次你在给狗吃东西之后才跳一段新疆舞,那么狗会认为你有病,大倒胃口,“控制”流口水的神经元与传递你跳新疆舞的神经元之间的连接就被减弱了

 

Hebb学习规则

03-14
### STDP Version 3 (STDP3) 的实现与使用 #### 背景介绍 时空依赖可塑性(Spike-Timing Dependent Plasticity, STDP)是一种基于赫布学习规则的学习机制,其核心在于通过突触前后神经元发放动作电位的时间差来调整突触强度。STDP版本的发展反映了对其更深层次的理解和应用需求的变化。STDP3作为改进版之一,通常涉及更为复杂的参数设置和功能扩展。 在文献中提到的STDP模型中,存在多种变体用于优化性能或适应特定应用场景[^2]。这些变体可能引入额外的因素,例如树突位置的影响、非线性的积分特性以及抑制性和调制输入的作用[^1]。 #### 参数定义 对于STDP3的具体实现,以下是几个关键参数及其作用: - **η (\( \eta \))**: 学习率,控制每次更新时权重改变的程度。 - **\( w_{max} \)**: 最大允许权重值,防止权重无限增长。 - **μ (\( \mu \))**: 更新过程中对先前权重状态的依赖程度。 - **目标轨迹 \( x_{tar} \)**: 定义了期望的突触前活动水平相对于突触后放电时间的关系。 具体而言,当考虑不同形式的STDP规则对比实验时,上述参数被用来微调网络行为以达到最佳分类效果或其他指定任务指标。 #### Python 实现示例 下面给出一段简单的Python代码片段展示如何模拟基本的STDP过程,并假设这是接近STDP3的一种简化表示方式: ```python import numpy as np def stdp_rule(pre_spike_times, post_spike_time, weights, eta=0.1, mu=0.5, w_max=1.0): delta_t = pre_spike_times - post_spike_time # Define the STDP window function dw = np.where(delta_t >= 0, eta * np.exp(-delta_t / tau_plus), # LTP for positive Δt -eta * mu * np.exp(delta_t / tau_minus)) # LTD for negative Δt new_weights = weights + dw return np.clip(new_weights, 0, w_max) tau_plus = 20e-3 # Time constant for potentiation (in seconds) tau_minus = 30e-3 # Time constant for depression (in seconds) # Example usage with dummy data pre_spikes = np.array([0.01, 0.02]) # Pre-synaptic spike times in sec. post_spike = 0.015 # Post-synaptic spike time in sec. weights = np.array([0.4, 0.6]) updated_weights = stdp_rule(pre_spikes, post_spike, weights) print(updated_weights) ``` 此函数实现了标准的双指数型STDP曲线计算逻辑,其中`dw`代表依据Δt计算得出的权重量化变化量;最终返回经过裁剪后的最新权重向量确保不会超出预设范围\[0,w_{max}\]. #### 注意事项 如果尝试运行某些旧有项目可能会遇到兼容性问题比如缺少`weave`库的情况,则需按照提示单独安装相应包解决此类错误消息如:`ValueError: num must be 1 <= num <= 3, not 0`表明索引越界需要修正访问数组元素的方式或者重新审视数据结构设计合理性[^3]。 --- ###
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值