randweight.java

来自「用java实现的神经网络bp的核心算法」· Java 代码 · 共 43 行

JAVA
43
字号
/*
 * RandWeight.java
 *
 * Created on 2007年11月6日, 上午11:11
 *
 */

package neuralNetwork;
import java.util.*;
import myUtil.*;
/**
 * this class was used to generate random weights.
 * @author yuhui_bear
 */
public class RandWeight {
    Random rand ;
    int weightCNT ,dendrities , TotalNeuron;
    double Range ;
    public RandWeight(int neurons , int branch){
        rand = new Random();
        weightCNT = neurons;
        TotalNeuron = neurons;
        dendrities = branch;
        Range = 2 * 3 / Math.sqrt(branch) ;
    }
    
    public  double[] nextWeight(){
        double[] frand = new double[dendrities];
//        int i =0;
        for (int  i = 0 ;i<dendrities;i++){
            frand[i] = Range * ( 1 -  weightCNT / TotalNeuron);
        }
        return frand;
    }
    public static double[] nextWeight(int linkin){
        Random rand = new Random();
        double[] frand = new double[linkin];
        for (int i = 0 ;i<linkin;i++){
                frand[i] =3/Math.sqrt(linkin)*rand.nextFloat() -0.5;
        }
        return frand;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?