Projektvorstellung: ANNSI [Artificial Neural Network Simulator]



  • Danke für dein Feedback.

    Bei uns sind hidden Neuronen gleich Middle Neuronen.
    Wir hatten eine interne Einigung darüber, Hidden neuronen als Middle zu bezeichnen.

    Und ja, es gibt nur diese 3 Varianten 😉

    In der Demoversion verwenden wir nur 3-Schichtige Netze,
    aber es existiert eine interne pre alpha version mit n-beliebigen Schichten.
    (Sie erscheint demnächst) Aber wie du schon festgestellt hast, lässt sich jede beliebige
    Funktion auch mit 3 Schichten realisieren, deshalb ist das kein großes Problem.

    Für unüberwachtes Lernen verwenden wir Kohonen-Netze und weitere Klassifikationsmethoden(die Algos sind zu lang
    um sie hier noch vollständig zu posten. bzw. können die sowieso überall gefunden werden).

    Gruß
    MAD-Crew



  • Ich faends prima wenn ihr eine plattformunabhaengige Version baut, die dann gerne nur ein Kommandozeileninterface hat, das dann z.B. ein einfaches Dateiformat lesen kann (gerne ASCII). So nach dem Motto

    ./train_ann datafile.txt
    ./test_ann datafile.txt
    ./test_ann -
    1 0 0 1 0.5 20 10
    > class A
    


  • Hallo Korbian,

    danke für deine Vorschläge und wir freuen uns natürlich darüber.

    Unsere Primärplattform ist Windows, aber wenn es eine Nachfrage
    nach Plattformunabhängigen Versionen (ich schätz mal, du willst
    eine Linuxversion) besteht, sind wir natürlich für die Implementierung
    bereit. Alle Wünsche können bei uns direkt einfließen.

    Die zum Download bereitgestellte Version ist nur eine kostenlose Demo
    für das Projekt. Diese Demoversion wird auch mit der Hauptversion
    weiterentwickelt und immer kostenlos bleiben.

    Aber unsere Hauptversion wird konstenpflichtig sein, um die ganze
    Entwicklungsarbeit und den Server zu finanzieren. Diese Version
    erscheint demnächst(Preis: 3.99Eu pro Lizenz).
    Da wir nur an der Kostendeckung interessiert sind, und nicht an Gewinn,
    reicht uns dieser geringe Preis durchaus (vgl. Membrain).

    Es gibt viele Vorteile, unter anderem verbesserte Scriptunterstützung,
    die deinem Wunsch entspricht.

    Gruß
    MAD-Crew



  • Klingt gut! Fuer Kaeufer waere es interessant wie eure Software auf standardproblemen evaluiert. Es gibt im netz eine grosse sammlung von unterschiedlichen Datensaetzen, es waere sicherlich eine tolle Ergaenzung fuer euer Angebot zu sagen, wie ihr drauf abschneidet!



  • Danke für den Hinweis, wir werden in der nächsten Version mehr Beispiele für echte Probleme einbauen und sie mit ausführlichen Statistiken evaluieren.

    Gruß,
    MadCrew



  • wenn schon simulator, dann sollte er SCHNELL sein,
    um mein netz auszutrainieren brauche ich 2 Tage, und das
    mit openmp und 4 mal 2.4GHz.

    und solche simulatoren werden imho sogar in weight-changes-per-second
    gemessen, darauf solltet ihr rücksicht nehmen, niemand nimmt einen
    simulator, wenn er das wirkliche problem
    (zB ein netz mit dimensionen 100-1000-50)
    damit garnicht simulieren kann (weils ewig dauert)

    aber nette idee



  • Dass er bisher nicht besonders schnell ist, stimmt eindeutig.
    Das Projekt wurde bisher auch noch nicht geschwindigkeitsoptimiert,
    sondern mehr auf reine Funktion an sich getestet.

    Weil zu Debug Zwecken u.ä. bisher der Lernvorgang noch grafisch dargestellt wird
    und die Algorithmen noch nicht optimal sind, ist es eben noch nicht sehr schnell.

    Auf Geschwindigkeit wird das ganze dann optimiert, wenn wir unsere weiteren Wunschfunktionen eingebaut haben.

    Danke für dein Feedback!

    Gruß,
    Mad-Crew



  • Treb schrieb:

    wenn schon simulator, dann sollte er SCHNELL sein,
    um mein netz auszutrainieren brauche ich 2 Tage, und das
    mit openmp und 4 mal 2.4GHz.

    Wenn man fragen darf, wie groß ist denn dein Netz und was stellst du damit an? 🙂 (rein aus Neugier)

    EDIT: oder war das auf den Simulator, hier im Thread, bezogen? 😉



  • Na sowas^^ Genauso etwas baue ich ja grade auch 😉 Wollte demnächst hier die erste Version vorstellen, und jetzt kommt ihr mir einfach zuvor 😉

    EDIT:
    Naja, mein tool hat keine grafische Oberfläche sondern wird über die Kommandozeile gesteuert oder als Library in eigene Programme eingebunden... Sobald "Backpropagation" funktioniert, stelle ich es vor...



  • Hallo,

    es freut mich, dass es sich mehr Leute mit dem Thema beschäftigen.
    Stelle dein Programm unbedingt vor.

    Die Einbindung in Programmiersprachen wird bei uns später eingeführt(auch in der Demoversion).

    Gruß
    MADCrew



  • TheTester schrieb:

    Treb schrieb:

    wenn schon simulator, dann sollte er SCHNELL sein,
    um mein netz auszutrainieren brauche ich 2 Tage, und das
    mit openmp und 4 mal 2.4GHz.

    Wenn man fragen darf, wie groß ist denn dein Netz und was stellst du damit an? 🙂 (rein aus Neugier)

    EDIT: oder war das auf den Simulator, hier im Thread, bezogen? 😉

    ich baue gerade ein spracherkennungsprogramm, in dem ich neurale-netze zur
    schätzung von phonem-wahrscheinlichkeiten benutze, angefangen habe ich mit
    multi-layer-perceptrons
    eingabe : 143-dimensional
    zwischenschicht : 1000 neuronen
    ausgabe : 41-dimensional
    (anzahl der gewichte auszurechnen, sei dem geneigten leser überlassen 😃 )

    so ein netz zu trainieren kann schonmal 2-4 tage dauern...
    Intel Q6600 ( 4*2.4Ghz), mit openmp programmiert,
    unter linux bringt das dann 396% prozessorlast

    nun benutze ich aber LSTM-netze, die zu trainieren kann zwar genausolange
    dauern, sie sind aber genauer für meine aufgabe



  • Hallo,

    es gibt eine neue Revision von ANNSI. Die aktuelle Version ist jetzt 0.6.2.358

    Das Programm befindet sich aber noch in der alpha phase.
    Es gibt folgende Änderungen:
    - Der Netzfehler kann als Diagramm dargestellt werden.
    Der Fehlerverlauf kann jetzt auch beim Training beobachtet werden
    - Darstellung von Trainingsdaten
    - Stop/Resume Möglichkeit für das Training
    - Bessere und effektivere Neuronenselektion.
    (Die Neuronen "springen" jetzt nicht mehr bei der Auswahl, zentrierung von Neuronen)
    - Anzeigen der aktuellen Position
    - Performancegewinn von 10% (da das keine neue Hauptversion ist, wurde es nicht sehr optimiert,
    ist jedoch fürs nächste release besser geplant)
    - Designänderungen (war unter manchen themes nicht optimal)

    weitere Neuerungen sind:
    - Ein Updater für ANNSI(kann auch für eigene externe Programme frei verwendet werden).
    Ist mitgeliefert oder kann über die Herstellerseite bezogen werden.
    - Supportforum für ANNSI, KNN und weitere Themen

    An was wird aktuell gearbeitet?
    ANNSI ist nicht unseres einziges Projekt, aber wir arbeiten weiter an einer
    plattformunabhängigen (zumindest für Linux) Portierung mit vielen neuen Features.
    (mit GTK+ für GUI, OpenGL für Grafikrendering).

    ANNSI Projekt/Download Seite: http://annsi.badworld-crew.com/
    Herstellerseite: http://badworld-crew.com
    Supportforum: http://board.badworld-crew.com/

    Gruß MADCrew



  • Ahja schönes Projekt 🙂

    Habe auch schon öfter in dem Bereich programmiert und finde es immer wieder spannend 😉 Backpropagation hab ich auch schon hinter mich gebracht mit allen möglichen Mods (Momentum, etc. ). Ist doch immer wieder ein interessantes Thema 😉 Momentan bastel ich an einem Simulator für Rekurrente Neuronale Netze (RNN) mit hoher biologischer Plausibilität ( vgl. Izhikevich Neuronen Modell ). Dient aber bisher keinem besonderen Zweck - ich steh halt auf Spikes 😃 Ich werds wohl als Erweiterung meiner Diplomarbeit betrachten und dann versuchen das ganze für ne Texterkennung zu nutzen um überhaupt einen Sinn in dem Projekt zu haben 😉


Anmelden zum Antworten