SNIPE - Scalable and Generalized Neural Information Processing Engine

SNIPE (hier für Unterseite klicken) ist eine ausführlich dokumentierte JAVA-Bibliothek, welche ein schnelles, feature-reiches und einfach benutzbares Framework für Neuronale Netze implementiert. Es ist ursprünglich für den Einsatz in Hochleistungssimulationen konzipiert, in denen sehr viele, auch große Netze gleichzeitig trainiert und ausgeführt werden und dementsprechend optimiert. Viel Spaß damit!

Das Design und die Implementierung von SNIPE wurde so konzipiert, dass es jedem der folgenden Ziele gerecht wird:

  • Generalisierte Datenstruktur für beliebige Netzwerktopologien, so dass praktisch alle Netzwerktopologien realisiert oder auf einfache Weise manuell modelliert werden können.
  • Direkt eingebaute, schnell und einfach zu verwendende Lernverfahren sowohl für gradientenbasiertes Lernen als auch für Evolutionäre Algorithmen.
  • Mechanismen für Design und Kontrolle von großen Mengen von Netzen
  • Optimal schnelle Propagierung von Daten durch das Netz, im Gegensatz zu landläufigen und häufig implementierten Datenstrukturen. Dies soll auch für topologische Spezialfälle, wie Multi-Layer-Perceptrons oder sehr dünn besetzte Netzwerke gelten. Obendrein soll der Rechenaufwand bei Topologieänderungen gering sein.
  • Geringer Speicherverbrauch - wächst nur linear mit der Zahl der Synapsen und nicht quadratisch zur Zahl der Neurone.
  • In-situ-Datenverarbeitung - Keine Vorverarbeitung der netzinternen Datenstrukturen vor Benutzung gerade editierter Netze notwendig, also auch kein diesbezüglicher Speicher- und Rechenzeitverbrauch.
  • Gebrauch von Lowlevel-Datenstrukturen (arrays) für einfache Portabilität. Es ist nicht das Ziel, das letzte bisschen asymptotischer Komplexität aus dem Framework herauszuquetschen, sondern es in der Praxis schlank, benutzbar und schnell zu halten.
  • Kein objektorientierter Overload. Ich habe schon Implementierungen gesehen, die eigene Objekte für Synapsen und Neurone vorsehen.

Comments




DFZRT
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf del.icio.us
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Digg
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Furl
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Reddit
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Ask
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Google
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Netscape
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf StumbleUpon
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Technorati
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Live Bookmarks
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Yahoo! Myweb
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Newsvine
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Yahoo! Bookmarks
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Twitter
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf myAOL
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Slashdot
  • Bookmark "SNIPE - Scalable and Generalized Neural Information Processing Engine" auf Mister Wong
Recent changes RSS feed Creative Commons License Donate Minima Template by Wikidesign Driven by DokuWiki