python中尖峰神经网络的感受野算法

python中尖峰神经网络的感受野算法,python,encoding,neural-network,dataset,gaussian,Python,Encoding,Neural Network,Dataset,Gaussian,我想用python计算尖峰神经网络的感受野(例如高斯)。假设我想对iris数据集进行编码,并将其转换为尖峰序列。我与Brian framework合作,正在寻找一种对数据集进行编码的方法 有什么方法可以自动完成吗?甚至是任何解释转变过程的网站?我读过几篇论文,但这个过程有部分解释 提前感谢重叠高斯RF,您需要知道每个变量的最小值(I_min)和最大值(I_max)。然后,(同样对于每个变量)创建一个N输入神经元数组,位于N重叠高斯峰处。使用以下公式在变量范围内均匀地隔开神经元(这当然是伪代码):

我想用python计算尖峰神经网络的感受野(例如高斯)。假设我想对iris数据集进行编码,并将其转换为尖峰序列。我与Brian framework合作,正在寻找一种对数据集进行编码的方法

有什么方法可以自动完成吗?甚至是任何解释转变过程的网站?我读过几篇论文,但这个过程有部分解释


提前感谢重叠高斯RF,您需要知道每个变量的最小值(
I_min
)和最大值(
I_max
)。然后,(同样对于每个变量)创建一个
N
输入神经元数组,位于
N
重叠高斯峰处。使用以下公式在变量范围内均匀地隔开神经元(这当然是伪代码):


beta
控制高斯曲线的宽度。更多细节请参见论文。

这个问题太宽泛、定义不清、模糊,无法在这里得到有意义的答案。没有通用工具可以满足您的要求。我投票决定结束。我不是说一个通用工具,我只是指自动(代码?功能?)。这是一种非常常见的编码具有连续特征的数据集的方法,奇怪的是没有找到一个很好的解释和标准解决方案来解决这个问题。非常感谢cantordust。是的,我知道这篇文章,但我不明白是什么把它们转化为尖峰时间延迟。在图2中,我看不到三角形和左下图之间的关系。每个神经元的延迟等于当前值的垂直偏移量。因此,在本例中,您有
v=0.75
。画一条垂直线,看看它与每一条线相交的地方。交点为您提供一个偏移。对于神经元1,垂直线与高斯线在
0.8左右相交,因此神经元1在
(1-0.8)=0.2时触发。这就是下图中的小破折号所表示的。交叉点越高,延误越小。我希望这有帮助!顺便说一句,我发现画高斯倒数很有用。然后延迟变成垂直偏移,而不是(1-偏移)。好的,康托德,我已经理解了这个数字,你的回答非常有用。为了在其他论文中理解同样的方法,我在中找到了另一个例子。在图10中,这种方法非常相似,但我无法理解12个神经元的尖峰序列是如何形成的(−1.−1, 14, 200, −1, 119, 7, −1.−1.−1.−1.−1) 可以转化为延迟:为什么y轴的范围是0-400?如何设置禁射区?如何使用spike火车(−1.−1, 14, 200, −1, 119, 7, −1.−1.−1.−1.−1) 在Brian framework中,该示例与第一篇文章中的示例完全相同,不同之处在于垂直范围已扩展到
400
(我假定这是以毫秒为单位)。它们甚至显示了精确的交点和相应的偏移。通常只有少数输入神经元会激发,在这种情况下是延迟
>0的神经元。无点火区通常为最大值的
90%
(在这种情况下为
360
)。Re Brian,您必须阅读文档以了解如何设置网络。
range = I_max - I_min
for (i = 1..N)
    gaussian_i_mean = I_min + range * (2*i - 3) / (2 * (N - 2))
    gaussian_i_sd = range / (beta * (N - 2))
end for