Lernen Sie Deep Learning von Grund auf in Java.

※Hinweis Dieser Artikel ist auf niedrigem Niveau, weil es viele autarke Elemente gibt, die ich für mich selbst schreibe und die gerade erst anfangen, dieses Buch zu lesen Der Inhalt ist möglicherweise falsch oder der Code ist möglicherweise seltsam. Außerdem erkläre ich die Begriffe nicht so oft, daher denke ich, dass sie für Leute, die sich mit maschinellem Lernen nicht auskennen, bedeutungslos sind. Ich werde diesen Artikel schrittweise aktualisieren.

(Einzelschicht) Perceptron-Implementierung

Perceptron: Eine Art Algorithmus. Der Algorithmus, der die Grundlage des neuronalen Netzwerks bildete. Eine Schrittfunktion wird als Aktivierungsfunktion verwendet. Mit einer einzelnen Schicht kann nur ein linearer Bereich ausgedrückt werden.

** Drücken Sie AND, OR und NAND aus, indem Sie die Vorspannung und das Gewicht jedes Eingangssignals an den Konstruktor übergeben. ** **.

public class PerceptronSample {

    private double b, w1, w2;

    PerceptronSample(double b, double w1, double w2){
        this.b = b;
        this.w1 = w1;
        this.w2 = w2;
    }

    int perceptron(int x1, int x2){
       double tmp = (x1*w1 + x2*w2) + b; //Summe
        return tmp > 0 ? 1: 0;
    }




    public static void main(String[] args) {

        PerceptronSample perceptronSample = new PerceptronSample(-0.5, 0.3, 0.3); 
        //vorspannen,Eingabe 1,Eingabe 2
        //Diesmal UND Schaltung


        System.out.println("" +
                perceptronSample.perceptron(0, 0) +
                perceptronSample.perceptron(1, 0) +
                perceptronSample.perceptron(0, 1) +
                perceptronSample.perceptron(1, 1)
        );

    }

}

Das Ergebnis ist 0001.

Drücken Sie XOR mit einem mehrschichtigen Perzeptron aus.

Eine tiefere Schicht Perceptron. Es kann Probleme lösen, die mit einschichtigem Perzeptron nicht gelöst werden können.

XOR wird durch NAND, OR und AND ausgedrückt.

public class MultilayerPerceptronSample {

    private double b, w1, w2;

    MultilayerPerceptronSample(double b, double w1, double w2){
        this.b = b;
        this.w1 = w1;
        this.w2 = w2;
    }

    int perceptron(int x1, int x2, MultilayerPerceptronSample m1, MultilayerPerceptronSample m2){

        if (m1 != null && m2 != null){
            int x[] = {x1, x2};
            x1 = m1.perceptron(x[0], x[1], null, null);
            x2 = m2.perceptron(x[0], x[1], null, null);
            double tmp = (x1*w1 + x2*w2) + b;
            return tmp > 0.0 ? 1 : 0;
        }else {
        double tmp = (x1*w1 + x2*w2) + b; //Summe

        return tmp > 0.0 ? 1 : 0;
        }
    }






    public static void main(String[] args) {

        MultilayerPerceptronSample AND = new MultilayerPerceptronSample(-0.5, 0.3, 0.3);
        MultilayerPerceptronSample NAND = new MultilayerPerceptronSample(0.5, -0.3, -0.3);
        MultilayerPerceptronSample OR = new MultilayerPerceptronSample(-0.3, 0.5, 0.5);




        System.out.println(" " +
                AND.perceptron(0, 0, NAND, OR)+
                AND.perceptron(1, 0, NAND, OR)+
                AND.perceptron(0, 1, NAND, OR)+
                AND.perceptron(1, 1, NAND, OR)


        );


    }

}

Recommended Posts

Lernen Sie Deep Learning von Grund auf in Java.
[Deep Learning von Grund auf neu] in Java 3. Neuronales Netzwerk
Deep Learning Java von Grund auf 6.4 Regularisierung
Deep Learning Java von Grund auf neu Kapitel 1 Einführung
Deep Learning Java von Grund auf 6.1 Parameteraktualisierung
Deep Learning Java von Grund auf neu Kapitel 2 Perceptron
Deep Learning Java von Grund auf 6.3 Batch-Normalisierung
Deep Learning von Grund auf neu Java Kapitel 4 Lernen neuronaler Netze
Deep Learning Java von Grund auf neu Kapitel 3 Neuronales Netzwerk
Deep Learning Java von Grund auf 6.2 Anfangswert des Gewichts
[Deep Learning von Grund auf neu] in Java 1. Zur Zeit Differenzierung und teilweise Differenzierung
Deep Learning Java von Grund auf neu Kapitel 5 Methode zur Fehlerrückübertragung
Erste Schritte für tiefes Lernen in Java
Schnellstes PC-Setup für tiefes Lernen von Grund auf
Java-Leben von vorne anfangen
Deep Copy Collection in Java
Objektorientiertes Kind !? Ich habe Deep Learning mit Java ausprobiert (Testversion)
Java lernen (0)
Java Scratch Scratch
Lassen Sie uns auf Deep Java Library (DJL) eingehen, eine von AWS veröffentlichte Bibliothek, die Deep Learning in Java verarbeiten kann.
Rufen Sie Java-Methoden aus JavaScript auf, das in Java ausgeführt wird
OCR in Java (Zeichenerkennung aus Bildern)
Schlüssel vom Wert in Java Map umkehren
Abrufen des Verlaufs vom Zabbix-Server in Java
GetInstance () aus einer @ Singleton-Klasse in Groovy aus Java
Lassen Sie uns Java studieren
9 stärksten Websites zum Erlernen von Java durch Selbststudium
Für JAVA-Lernen (2018-03-16-01)
Tauchen Sie ein in die Funktionsweise von HashMap in Java
Java-Lerntag 5
Partisierung in Java
Java-Methodenaufruf von RPG (Methodenaufruf in eigener Klasse)
Die Geschichte des Lernens von Java in der ersten Programmierung
Änderungen in Java 11
Janken in Java
So erhalten Sie eine Klasse von Element in Java
Textextraktion in Java aus PDF mit pdfbox-2.0.8
Erfassen und speichern Sie die Selen-Installation in Java
Holen Sie sich Unixtime (Sekunden) von ZonedDateTime in Scala / Java
[Java] Studiennotizen
Java 8 studieren (wiederholbar)
Java-Studienmemorandum
Umfangsrate in Java
Studieren Sie Java Silver 1
Generieren Sie OffsetDateTime aus Clock und LocalDateTime in Java
FizzBuzz in Java
[Java] KFunction von Method / Constructor in Java abrufen [Kotlin]
Java-Lerntag 2
Java-Lerntag 1
Versuchen Sie, synchronisierte Methoden aus mehreren Threads in Java aufzurufen
Erstellen Sie die VS Code + WSL + Java + Gradle-Umgebung von Grund auf neu
Löschen Sie alle aus dem Java SDK in Azure CosmosDB
[Persönliches Memo] Erstellen Sie eine einfache, tiefe Kopie mit Java
[Hinweis] Erstellen Sie mit Docker eine Java-Umgebung von Grund auf neu
Subtrahieren Sie Enum-Konstanten von Zeichenfolgen und Werten in Java zurück
Rufen Sie ein in Swift geschriebenes Programm von Processing (Java) auf.
Schnell lernen Java "Einführung?" Teil 3 Von der Programmierung wegreden
Lesen Sie JSON in Java