📄 nguyenwidrow.java
字号:
/* * Created on 23/10/2004 * * TODO To change the template for this generated file go to * Window - Preferences - Java - Code Generation - Code and Comments */package neuralnetworktoolkit.neuralnetwork.weightinitialization;import neuralnetworktoolkit.neuralnetwork.INeuralNetwork;/** * @author iver * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Generation - Code and Comments */public class NguyenWidrow extends WeightInitialization { /* (non-Javadoc) * @see neuralnetworktoolkit.neuralnetwork.WeightInitialization#initialize() */ public void initialize(INeuralNetwork nn) { int numberOfHiddenNeurons = 0; int numberOfInputs = nn.getInputSize(); double range = 2; double factor; double weight, bias; for (int i = 0; i < nn.getNetworkSize() - 1; i++) { numberOfHiddenNeurons = numberOfHiddenNeurons + nn.getLayer(i).getLayerSize(); } System.out.println("nn: " + numberOfHiddenNeurons); //((0.7h^(1/i))/R) factor = (.7 * Math.pow(numberOfHiddenNeurons, 1 / numberOfInputs))/range; for (int i = (nn.getNetworkSize() - 1); i >= 0; i--) { for (int j = 0; j < nn.getLayer(i).getLayerSize(); j++) { bias = randomNumber(-factor, factor); nn.getLayer(i).setBias(bias, j); for (int k = 0; k < nn.getLayer(i).getWeightSize(j); k++) { weight = randomNumber(0, factor); nn.getLayer(i).setWeight(weight, k, j); } } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -