ade*_*ago 15 javascript artificial-intelligence training-data neural-network synaptic.js
我想用这个神经网络绘制 StackOverflow 的标志:
理想情况下,NN 应该变成[r, g, b] = f([x, y])。换句话说,它应该为给定的坐标对返回 RGB 颜色。FFNN 非常适用于简单的形状,如圆形或盒子。例如,经过数千个 epoch 后,一个圆看起来像这样:
自己试试:https : //codepen.io/adelriosantiago/pen/PoNGeLw
然而,即使经过数千次迭代,StackOverflow 的标志也更加复杂,因此 FFNN 的结果有些糟糕:
从左到右:
自己试试:https : //codepen.io/adelriosantiago/pen/xxVEjeJ
一些感兴趣的参数是synaptic.Architect.Perceptron定义和learningRate值。
你能改进这个片段吗?如果是这样,请解释你做了什么。如果有更好的 NN 架构来处理此类工作,您能否提供一个示例?
附加信息:
通过添加另一层,您可以获得更好的结果:
let perceptron = new synaptic.Architect.Perceptron(2, 15, 10, 3)
Run Code Online (Sandbox Code Playgroud)
您可以做一些小的改进来提高效率(微不足道):这是我优化的代码:
let perceptron = new synaptic.Architect.Perceptron(2, 15, 10, 3)
Run Code Online (Sandbox Code Playgroud)
编辑:我制作了另一个 CodePen,效果更好:
https://codepen.io/xurei/pen/KKzWLxg
顺便说一句,它很可能过度拟合。感知器定义:
let perceptron = new synaptic.Architect.Perceptron(2, 8, 15, 7, 3)
Run Code Online (Sandbox Code Playgroud)