Neuronale Netzwerke in unterschiedlichen Technologien

vorhergehende Artikel in: Rants
04.06.2016

Nachdem man im Web auch mal Hello World in zig unterschiedlichsten Programmiersprachen findet habe ich überlegt, als Teil meiner Weiterbildung ein komplexeres Projekt in unterschiedlichsten Sprachen umzusetzen. Das würde mir erlauben, Neues zu lernen, Altes aufzupolieren und Vergleiche anzustellen.

Die Netzwerke

Die Aufgaben

  • Generator für Merkmalsvektoren und Samples
  • Netzwerkimplementierung mindestens für Lernschritt
  • Visualisierung mittels Renderer
    • Gnuplot
    • SVG (Generieren eines DOM-Tree und Serialisierung desselben)

Die Sprachen

  • Java
  • Python
  • C# (Mono)
  • Javascript
  • Julia
  • C++

Aktualisierung vom 4. Juni 2016

Eine weitere Art der Visualisierung wurde (für Java) hinzugefügt: Interaktive dreidimensionale Inspektionen des entstehenden Netzwerkes sind mittels Java3D jetzt möglich. Die hier gezeigten Beispiele zeigen das Ergebnis des Lernens eines Growing Neural Gas Netzwerkes mit dem Benchmark-Inputgenerator (zum Vergleich nochmals der Renderer basierend auf JFree, der aber nur eine zweidimensionale Projektion auf eine Ebene des Koordinatensystems dastellen kann).

Artikel, die hierher verlinken

Erste Julia-Implementierung

07.03.2017

Nach längerer Pause meines Projektes zum Lernen neuer Sprachen wurde über den Jahreswechsel ausgegraben und ich fand endlich mal die Zeit, meine ersten Versuche mit Julia zu unternehmen

Github-Repository für Weiterbildung

12.06.2016

Die bereits kurz vorgestellte Idee des Lernens durch Umsetzung eines etwas komplexeren, jedoch immer noch überschaubaren Projektes nimmt Formen an...

Vergleichende Bytecode-Analyse

04.06.2016

Nachdem ich in einem meiner vorherigen Artikel über Pläne zu meiner Weiterbildung schrieb, habe ich nochmals einen Gedanken wieder aufgegriffen, mit dem ich mir schon verschiedentlich die Zeit vertrieb...

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Synchronisierung von Lorenz-Systemen III

    23.10.2020

    Nachdem ich in einem vorhergehenden Artikel auf das Problem des kleinen Parameterraums im Zusammenhang mit der Nutzung synchronisierter chaotischer Systeme hingewiesen hatte will ixch hier untersuchen, wie sensibel solche Systeme auf Abweichungen der Parameterwerte zwischen treibendem und getriebenen System reagieren

    Weiterlesen

Neueste Artikel

  • Plugin zur Arbeit mit Markdown für NeoVim

    Ich habe neulich beschrieben, dass ich aktuell mehr und mehr bemerke, dass Dinge, für die ich in meinem NeoVim-Setup Plugins benutzt habe sehr gut auch mit Bordmitteln funktionieren.

    Weiterlesen
  • Raspbian Upgrade von 11 (Bullseye) nach 12 (Bookworm)

    Ich habe neulich wieder einmal eine Upgrade- und Backup-Sitzung mit meinen diversen Linuxinstallationen veranstaltet. Der Zeitpunkt schien mir gekommen, da es eine neue stable Variante von Debian (Trixie) gibt.

    Weiterlesen
  • Meine praktischen Erfahrungen mit ollama (llava)

    Ich diskutiere immer wieder gern über das was heute Machine Intelligence oder Artificial Intelligence ( oder wie die ganzen anderen hohlen Phrasen heißen, die dafür heutzutage als Buzzwords missbraucht werden). Das geschieht online, in meinem $dayjob oder auch privat. Meine Meinung steht fest: das ist alles Quatsch und steht in keiner Relation zum Nutzen

    Weiterlesen

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.