请帮助我理解神经元网络中的单位事物。从书中我了解到输入层中的单元表示训练元组的属性。但是,目前尚不清楚它是如何做到的。
这是图表:
输入单元有两条“思路”。第一个可能是 X1 代表 attr1 , X2 代表 attr2 ...否则,它可能是 X1 , X2 , X3 代表 attr1 ,但 X1 代表 Value.VALUE_ONE ,..., X3 代表 Value.VALUE_THREE 。所以至少,如果 attr1 = Value.VALUE_TWO ,那么它会加权并同时送到第二层。
public class Tuple
{
private Value attr1
private Value attr2
private Value attr3
}
public enum Value
{
VALUE_ONE,
VALUE_TWO,
VALUE_THREE
}
第二个问题是隐藏的图层单元。如何确定它在隐藏层中的单位数以及它们在模型中的含义?
答案 0 :(得分:0)
"单位"只是浮点值。
那里发生的所有计算都是向量乘法,因此可以使用矩阵乘法和GPU硬件很好地并行化。
一般计算如下:
double v phi(double[] x, double[] w, double theta) {
double sum = theta;
for(int i = 0; i < x.length; i++)
sum += x[i] * w[i];
return tanh(sum);
}
除了您不想自己在Java代码中执行此操作。您希望以并行方式在GPU上执行此操作,因为这将快100倍。