Skip to content

yuto0226/Perceptron-Java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

類神經網路 Artificial Neural Network

Java 單層感知機實作 Single-Layer Perceptron coding in Java

+++

此程式碼由成德高中810038羅崧瑋所撰寫

為自主學習之項目 若有不足請見諒

+++

學習資料

程式碼注意事項

  • Perceptron.java 主程式

  • train.java

    net函數

    公式: $net=\displaystyle\sum_{i=1}^n x i\times w_i= x 1*w_ 1-\Theta$

    public double Sigma(final double x) {
            net = (x * w - e);
            return net;
        }

    正確率函數

    公式: $正確率=1-\frac{錯誤次數}{總次數}$

        public float per(int wr, int dataset) {
            			//錯誤次數   //總次數
            return (1 - (wr * 1.00f / dataset));
        }
  • Data.java

    產生亂數

    利用 Java 內建Math.random()函數生成 max ~ min 的隨機亂數

    public double data(double max,double min){
            double x=(int)(Math.random() * (max - min + 1) + min);
            return (int)x;
        }
  • actFunction.java

    激活函數

    • Sigmoid

      公式: $y(x)=\frac{1}{1-E^{-net}}$

      public static float Sigmoid(double net){
              double y=(float)1/(1+Math.pow(Math.E,-1*net));
              return (float) y;
          }
    • ReLU

      公式: $$ f(n)= \begin{cases} 0 & \text for &\ x<0 \ x & \text for &\ x \ge 0 \end{cases} $$

      public static float ReLU(double net) {
              double y=(net>0)?net:0;
              return (float)y;
          }

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages