问题标签 [biological-neural-network]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
68 浏览

neural-network - 训练神经网络 -

我打算使用神经网络对用户进行身份验证。例如,Coursera使用了相同的想法——他们通过用户的打字模式来验证用户。

我将为此使用神经网络。输入将是归一化和统计上干净的值的向量。输出 - 这是当前用户的可能性有多大。

在使用之前,将从用户那里收集训练数据集。

但是,我担心在训练期间我只会为当前用户提供数据集。不会提供识别错误用户的数据。

也许您可以建议是否有必要提供不正确的用户数据进行培训?或者也许有一些网络类型/配置更适合这个?

提前致谢!

0 投票
1 回答
502 浏览

java - Improvements for an evolutionary algorithm with ANNs solving XOR

I'm supposed to implement an artificial neural network (ANN) with 2 input, 2 hidden and 1 output neuron that can solve the XOR problem. The weights of the network should be optimized using an evolutionary algorithm. The activation function for each neuron and the fitness function for each ANN are given. The following picture sums up the problem and introduces the variable names I used:

enter image description here

Now I tried my very best to solve the problem, but even with an evolutionary algorithm using a population size of 1000 ANNs and 2000 generations my best fitness is never better than 0.75. My code includes a ANN class with the neurons, activation and fitness function and a Main class that includes the evolutionary algorithm and that optimizes the weights for the ANNs. Here is the code:

Each ANN is initialized with random weights between -1 and 1 and able to mutate, i.e. return a mutation that differs in one weight wich is chosen randomly.

The Main class has the evolutionary algorithm and uses elitism and rank-based selection to create the next generation of each population, i.e. the 100 best ANNs are copied the remaining 900 are mutations of previously successful ANNs.

Even though, I put quite some thought into this and used techniques that I learned, the result is not satisfying. For some reason the optimal weights seem to drift to -1 for each weight. How does that make sense? Is the range of -1 to 1 for the weights a good choice? Should I also introduce crossovers in addition to the mutations? I know this is a very specific problem, but I would greatly appreciate some help!

0 投票
1 回答
180 浏览

artificial-intelligence - 如何根据 NN 中的输入和输出确定最佳隐藏层和神经元?

我在这里主要指的是这篇论文:http: //clgiles.ist.psu.edu/papers/UMD-CS-TR-3617.what.size.neural.net.to.use.pdf

当前设置

我目前正在尝试将我正在使用的神经遗传 AI解决方案移植到一个多用途的多代理工具中。因此,例如,它应该作为游戏引擎中的 AI 工作,用于在实体周围移动并让他们射击并摧毁敌人(例如,4 个输入,如距离 x,y 和角度 x,y 和 2 个输出,如左加速,对)。

到目前为止的状态是,我使用的基因组数量与确定最合适的代理的代理数量相同。20% 的最适合的智能体相互结合(选择 zz、zw 基因组),并为新种群分别创造 2 个婴儿。每个新一代的新种群的其余部分是在旧种群中随机选择的,包括最适合的基因组。

这对启动 AI 非常有效,在50-100 代之后,它在 Breakout 克隆和一个可以射击和四处移动的小型坦克游戏中几乎是人类无法击败的。

正如我想为每种“代理类型”使用进化种群的想法一样,现在的问题是是否有可能确定隐藏层的数量和隐藏层中神经元的数量。

我的坦克游戏设置是 4 个输入、3 个输出和 1 个隐藏层,其中 12 个神经元工作得最好(大约 50 代才能真正强大)。

我的突破游戏设置是 6 个输入、2 个输出和 2 个隐藏层,其中 12 个神经元似乎效果最好。

完成研究

所以,回到论文:在第 32 页上,您可以看到似乎每个隐藏层有更多的神经元当然需要更多的时间来启动,但是中间的神经元越多,进入函数而没有噪音的机会就越大.

我目前只使用成功比上次尝试更好的适应度增加来启动我的 AI。

所以在坦克游戏中,这意味着他成功地击中了另一辆坦克(打伤他4次更好,然后敌人死了)并赢得了回合。

在突围游戏中,它类似于我有一个 AI 可以移动并收集积分的桨。这里的“中枪”或负面处理是它忘记了接球。因此,潜在的噪声输入将是取决于 4 个输入值(球 x、y、degx、degy)的 2 个输出值(向左移动、向右移动)。

问题

那么,你认为对于隐藏层的数量和神经元的数量进行什么样的计算可以是一个很好的折衷方案,因为没有噪音会扼杀基因组进化?

在您可以说“它进一步发展”之前,最少的代理数量是多少?我目前的训练设置总是围绕有 50 个并行学习的代理(所以他们基本上在“幕后”并行模拟 50 个游戏)。

0 投票
0 回答
41 浏览

python - Python:将相同的代码放在单独的脚本中并使用 execfile 执行时的不同性能

我有一个network.py包含以下内容的脚本:

此脚本引发TypeError, 因为simulation_clock未作为参数传递给NeuronGroup.

但是,如果我按如下方式拆分我的代码

它运行顺利 - 即,没有TypeError

我的问题的答案可能部分与 的细节有关NeuronGroup,但它也比这更笼统:为什么通常相同的确切代码- 在这种情况下simulation_clock = Clock(dt=dt)- 与其余代码并execfile在与其余代码相同的脚本中调用时?

关于 的细节NeuronGroup,当提供 no 作为参数时,将调用以下函数(使用默认关键字参数)Clock,以查找 的已定义实例Clock

由于某种原因,此函数无法找到在以 .Clock调用的单独文件中定义的实例execfile。所以我想这是一个brian引起普遍问题的错误。(如果社区觉得这个问题太具体,我会删除它。)

0 投票
1 回答
1169 浏览

machine-learning - 泄漏集成和激发神经元模型

我最近一直在研究神经网络。它们很棒,但至少可以说有点晦涩难懂。我对大量使用集成和激发神经元模型的液态机器特别感兴趣。不过,这完全逃脱了我。这里有一些问题:

  1. 泄漏集成和激发神经元的完美神经元配置是什么: https ://en.wikipedia.org/wiki/Biological_neuron_model#Leaky_integrate-and-fire ?IE 如果泄漏的整合和激发神经元是人工的,不受生物限制的限制。

  2. 然后它会适合典型的人工神经元结构还是会保留其泄漏性?

  3. 简单地说,泄漏的集成和激发神经元是如何工作的?它如何适合液态机器(如果你碰巧知道我知道有点晦涩)。

如果您知道这些问题的答案,请随时回复!

谢谢!

0 投票
1 回答
659 浏览

machine-learning - 液体状态机:与尖峰神经网络模型有何不同

我对“水库计算世界”很陌生,而且我听说液态机器 (LSM) 是某种尖峰神经元网络模型 (SNN)。两者在实现方面究竟有什么区别。

我需要澄清的另一个方面是关于他们的对应物“回声状态网络 (ESN) 的泄漏积分器模型”。我从论坛中的另一个答案中发现,“在我看来(我可能是错的)这两种方法之间的最大区别在于单个单元。在液态机器中使用类似生物的神经元,而在 Echo 状态中使用更多的模拟单元。因此,就“非常短期记忆”而言,液态方法中每个单独的神经元都会记住自己的历史,而在回声状态方法中,每个单独的神经元仅根据当前状态做出反应,而记忆存储在单元之间的活动中.

请告诉我这是否正确,如果不是,它们背后的实际概念是什么。

0 投票
1 回答
262 浏览

java - 运行 jnml 导致错误:无法找到或加载主类 org.neuroml.JNeuroML

运行jNeuroML时,出现以下错误:

我如何解决它?

0 投票
2 回答
315 浏览

machine-learning - 尖峰神经网络

我在哪里可以找到关于尖峰神经网络的一些好的理论描述?我无法收集有关这种网络的资源,人们称之为第三代人工神经网络(甚至不知道为什么)。

0 投票
1 回答
12 浏览

neuroscience - 如何在 NeuroML 中的一个单元上声明多个特定电容?

通常,比电容在 biophysicalProperties 部分中声明并适用于整个细胞。例如:

如何为电池的不同部分分配不同的比电容值?例如,一个值用于胞体,另一个用于树突。

0 投票
1 回答
50 浏览

neuroscience - 运行 nrniv 时显示 GUI?

使用 nrniv 命令运行 NEURON 模拟器时如何打开 GUI?

在此处输入图像描述