SNN_LIF模型
LIF模型
Leaky integrity-Fire(LIF)模型
输入信号直接影响神经元的状态,即神经元膜电位,只有当膜电位上升到阈值的时候,才会产生输出信号。
- 膜电位:细胞膜两侧的电位差。只有当膜电位到达阈值的时候,才会发送脉冲信号,影响下一个神经元。
- 动作电位:细胞膜受到外界刺激之后产生的电位变化。
- 静息电位:细胞膜未收到外界刺激的时候的电位。
- 过程:细胞膜受到脉冲刺激之后,变化过程为\(极化\to 去极化 \to 阈值\to 再极化\to 超极化\to 极化\to 不应期\)
基本思想:如果上一个神经元输入不超过阈值的时候,获得的电位会回到静息状态;如果神经元接收到的脉冲进行积分之后到达阈值,会发射一个脉冲信号,对下一个神经元进行刺激,激发之后会引起不应期,即使给予刺激也不会给出相应的反应。
公式:
\(q=\int I(t)dt\) 细胞膜电位积累,给细胞膜充电的过程
细胞膜的等效电流公式:
\(I(t)=I_R+I_C\)
\(I_C=C\frac{du(t)}{dt}\)
\(I_R=\frac{u(t)-u_{res}}{R}\)
\(RC\dot{u}(t)+u(t)-RI(t)=0\)
对方程进行求解:
\(u(t)=RI(t)+C_1e^{-\frac{t}{RC}}\)
计算\(t=0\)的时候,\(u(t)=u_0\),\(C_1\)的值为:
\(C_1=u_0-RI(t)\)
最终得出:
\(u(t)=RI(t)+[u_0-RI(t)]e^{-\frac{t}{RC}}\)
如果\(I(t)=0\),则\(u(t)=u_0e^{-\frac{t}{RC}}\)
如果要输入给计算机计算,则需要进行离散化和递归求解:
\(\tau\frac{du(t)}{dt}=-u(t)+RI(t)\)
\(\tau\frac{u(t+\Delta t)-u(t)}{\Delta t}=-u(t)+RI(t),\Delta t\to 0\)
\(u(t+\Delta t)=u(t)+\frac{\Delta t}{\tau}[-u(t)+RI(t)]\)
仿真参数设计:
仿真步长:0.001
初始状态:\(I(0)=0\)
\(R=5\times 10^{7}\)
\(C=1\times 10^{-10}\)
Python实现:
import matplotlib.pyplot as plt
def LIF(u,R=5e7,C=1e-10,I=0,step_time=1e-3):
u = u + step_time/(R*C)*(-u + R*I)
return u
u = 0.9
num_step = 100
u_trace = []
for step in range(num_step):
u_trace.append(u)
u = LIF(u)
plt.plot(u_trace)
plt.xlabel("Time step")
plt.ylabel("Membrane Potential")
plt.title("LIF")
plt.xlim([0, 50])
plt.ylim([0, 1])
plt.show()
SNN_LIF模型的更多相关文章
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...
- ASP.NET Core MVC/WebAPi 模型绑定探索
前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用 ...
- ASP.NET路由模型解析
大家好,我又来吹牛逼了 ~-_-~ 转载请注明出处:来自吹牛逼之<ASP.NET路由模型解析> 背景:很多人知道Asp.Net中路由怎么用的,却不知道路由模型内部的运行原理,今天我就给大家 ...
- 高性能IO模型浅析
高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking ...
- 探索ASP.NET MVC5系列之~~~4.模型篇---包含模型常用特性和过度提交防御
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
- 隐马尔科夫模型python实现简单拼音输入法
在网上看到一篇关于隐马尔科夫模型的介绍,觉得简直不能再神奇,又在网上找到大神的一篇关于如何用隐马尔可夫模型实现中文拼音输入的博客,无奈大神没给可以运行的代码,只能纯手动网上找到了结巴分词的词库,根据此 ...
- webapi - 模型验证
本次要和大家分享的是webapi的模型验证,讲解的内容可能不单单是做验证,但都是围绕模型来说明的:首先来吐槽下,今天下午老板为自己买了套新办公家具,看起来挺好说明老板有钱,不好的是我们干技术的又成了搬 ...
- 谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...
- 【NLP】蓦然回首:谈谈学习模型的评估系列文章(一)
统计角度窥视模型概念 作者:白宁超 2016年7月18日17:18:43 摘要:写本文的初衷源于基于HMM模型序列标注的一个实验,实验完成之后,迫切想知道采用的序列标注模型的好坏,有哪些指标可以度量. ...
- 【NLP】揭秘马尔可夫模型神秘面纱系列文章(一)
初识马尔可夫和马尔可夫链 作者:白宁超 2016年7月10日20:34:20 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学习自然语言处 ...
随机推荐
- 2021-7-29 MySql的简单使用
创建表格 先判断users表是否存在,然后设置user_id为无符号(UNSIGNED)自动增长(AUTO_INCREMENT)的整型 并通过PRIMARY KEY设置user_id为主键 ENG ...
- 基础版本:用KNN算法实现预测facebook签到位置模型的训练(内含数据集下载)
实现模型的训练一般的流程便是 # 导包 # 导入数据 # 数据处理 # 特征工程 # KNN算法预估流程 # 模型评估 接下来便实现以上流程 实现该模型训练我们需要导入一下的函数 1 # 导包 2 3 ...
- jQuery事件冒泡和默行为
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- AcWing 第 92 场周赛 C题 4866. 最大数量 题解
原题链接 链表 + 并查集乱搞做法: 思路 首先可以发现,想要让度数尽量大,那我们应该构造成菊花图,即下图所示: 对于每个需求,我们可以知道,如果之前他们没有连在一起,那我们一定得把他们连在一起,该过 ...
- ubuntu20.4操作指令合集
每个指令前面尽量加上sudo,避免麻烦的权限问题 下载软件:sudo apt install 包名 开启/关闭防火墙(开启/关闭所有端口):sudo ufw enable/disable 防火墙状态: ...
- Log4j疯狂写日志问题排查
一.问题是怎么发现的 最近有个 Java 系统上线后不久就收到了磁盘使用率告警,磁盘使用率已经超过了 90% 以上,并且磁盘使用率还在不停增长. 二.问题带来的影响 由于服务器磁盘被打满,导致了系统正 ...
- next.js 源码解析 - getStaticProps、getStaticPaths 篇
好久前写了关于 getStaticProps 和 getStaticPaths 的内容,然而半年过去了源码解析就一直忘记了,不久前有人提醒才想起来,补下坑. 本文主要是解读下 getStaticPro ...
- [远程Call]32位远程多参数带返回调用
[远程Call]32位远程多参数带返回调用 引子 在Windows上可以使用CreateRemoteThread实现远程Call,但是有不带返回值且只能传递一个参数的限制. 解决思路 将多个参数利用V ...
- 数据可视化【原创】vue复合数字形式展示
做数据可视化的时候,经常碰到需要很灵活的数字形式展示. 先上个效果图: 如图包括名称,数量,别名,单位,上升下降,环比等等的复合数据展示,并且需要支持样式灵活配置. 此组件包括2个模块,父容器组件bo ...
- 解决CentOS 7出现docker-compose: command not found
解决CentOS 7出现docker-compose: command not found 1. 安装docker-compose 既然使用了docker-compose那自然得安装了 在GitHub ...