⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 perceptron.java

📁 java applet实现的bp神经网络和感知器
💻 JAVA
字号:
public class Perceptron {    double x[];     //样本输入    double yd[];    //样本标准    double o[];    double o1[];    double o2[];    //输出    double w[][];   //权值    int inNum;      //输入节点数    int outNum;     //输出节点数    double e;    public Perceptron(int inNum, int outNum) {        this.inNum = inNum;        this.outNum = outNum;        x = new double[inNum]; //输入向量        yd = new double[outNum];        o = new double[outNum];        o1 = new double[outNum];        o2 = new double[outNum];        w = new double[inNum][outNum];        for (int i = 0; i < inNum; i++) {            for (int j = 0; j < outNum; j++) {                w[i][j] = 0.1 * Math.random();            }        }    }    public void train(double p[][], double t[][], int samplenum) {        e = 0.0;        for (int isamp = 0; isamp < samplenum; isamp++)//循环训练一次样本        {            for (int i = 0; i < inNum; i++) {                x[i] = p[isamp][i];            }            for (int i = 0; i < outNum; i++) {                yd[i] = t[isamp][i];            }            for (int j = 0; j < outNum; j++) {                o[j] = 0.0;                for (int i = 0; i < inNum; i++) {                    o[j] = o[j] + w[i][j] * x[i];                }                if (o[j] > 1) {                    o1[j] = 1;                } else {                    o1[j] = 0;                }                if (o1[j] != yd[j]) {                    for (int i = 0; i < inNum; i++) {                        w[i][j] = w[i][j] + 0.02 * (yd[j] - o1[j])*x[i];                    }                    e += (yd[j] - o1[j]) * (yd[j] - o1[j]);                }            }        }    }    public double[] sim(double psim[]) {        for (int i = 0; i < inNum; i++) {            x[i] = psim[i];        }        for (int k = 0; k < outNum; k++) {            o2[k] = 0.0;            for (int j = 0; j < inNum; j++) {                o2[k] = o2[k] + w[j][k] * x[j];            }            if (o2[k] > 1) {                o2[k] = 1;            } else {                o2[k] = 0;            }        }        return o2;    } //end sim}

⌨️ 快捷键说明

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