是否可以在 encog 中指定最小和最大权重值?

Is it possible to specify minimum and maximum weight values in encog?

我试图指定 BasicNetwork 的最小和最大权重约束,但我就是找不到实现它的方法。是否可以设置这些约束条件?

您可以这样做,以下代码将权重限制在 -10 和 +10 之间。您可以将其直接放入 HelloWorldXOR 示例中。 flat.getWeights只是权重的一维数组,因此您可以根据需要修改它们。

    VectorAlgebra va = new VectorAlgebra();
    FlatNetwork flat = network.getFlat();
    do {
        train.iteration();
        va.clampComponents(flat.getWeights(), 5);
        System.out.println("Epoch #" + epoch + " Error:" + train.getError());
        epoch++;
    } while(train.getError() > 0.01);