Künstliche neuronale Netze (KNN)
Samstag, den 23. Juli 2011 um 20:00 Uhr

databaseKünstliche neuronale Netze (KNN) sind der Arbeitsweise des Gehirns nachempfunden und haben gegenüber einer klassischen Computerarchitektur den Vorteil, auch unvollständige oder gestörte Eingaben verarbeiten zu können. Die von neuronalen Netzen ausgehende Faszination besteht darin, dass sie in der Lage sind, in einigen Fällen Probleme von hoher Komplexität mit einfachen Mitteln zu lösen. Das biologische Pendant ist die vereinfacht dargestellte Nervenzelle (man schätzt, dass im Gehirn etwa 100 Milliarden Neuronen bzw. Nervenzellen für die Informationsverarbeitung und –speicherung zuständig sind).

In Hinblick auf eine zu untersuchende Problemstellung ist es für neuronale Netze weder notwendig genauere Untersuchungen durchzuführen, noch ein formales Modell explizit darzustellen. Auch werden keine aufwendigen Algorithmen benötigt, es wird lediglich versucht beliebige Zusammenhänge zu approximieren. Allerdings besteht auch keine Garantie für den Lernerfolg und die Lösungen können unterschiedlich sein. Je nach Anzahl der Neuronen stellt das KNN fast ausschließlich Wechselwirkungen dar.

In unserem neuen Artikel mit dem Namen "Künstliche neuronale Netze in C#" wird die Arbeitsweise von künstlichen neuronalen Netzen beschrieben und mithilfe der theoretischen Grundlagen ein Dekodier-Perzeptron entwickelt. Das einlagige Perzeptron kann mithilfe des überwachten Lernens binären Zahlen ihren Dezimalwert zuordnen. Mithilfe des Backpropagation wird anschließend eine leistungsfähige Bibliothek für künstliche neuronale Netze in C# realisiert. Unter Nutzung der Windows Presentation Foundation (WPF) wird ein grafisches Programm zur optischen Zeicherkennung (OCR) programmiert. In Verbindung mit der entworfenen Bibliothek ist das Programm in der Lage sämtliche Schriftarten zu trainieren und zu erkennen. Sogar Handschriften können antrainiert und anschließend erkannt werden.

 
  • Künstliche neuronale Netze in C#

    Samstag, den 23. Juli 2011 um 20:00 Uhr

    Künstliche neuronale Netze sind Netze aus künstlichen Neuronen. Sie sind ein Zweig der künstlichen Intelligenz und prinzipieller Forschungsgegenstand der Neuroinformatik. In dem folgenden Artikel werden künstliche neuronale Netze beschrieben und die korrespondierenden Algorithmen in C# implementiert. Zum Ende wird eine leistungsfähige Bibliothek entwickelt, mithilfe derer ein Programm (WPF) zur optischen Zeichenerkennung realisiert wird.

  • Speisende Philosophen

    Sonntag, den 20. Februar 2011 um 20:58 Uhr

    Bei dem Philosophenproblem (engl. Dining Philosophers Problem) handelt es sich um ein Fallbeispiel aus dem Bereich der Theoretischen Informatik. Dabei soll das Problem der Nebenläufigkeit illustriert werden und die Gefahr von Deadlocks. Das Problem wurde von Edsger Wybe Dijkstra formuliert und wird seither auch immer als Testproblem für neue Prozeß-Synchronisations-Algorithmen verwendet. In diesem Beispiel wird eine maximal parallele Lösung mit beliebig vielen Philosophen und Sitzplätzen in Java vorgestellt.

  • C/C++ Profiler

    Montag, den 06. September 2010 um 19:56 Uhr

    Profiler sind nützliche Programmierwerkzeuge, die das Laufzeitverhalten von Software analysieren. In der Softwareentwicklung existieren unterschiedliche Problembereiche, die durch ineffiziente Programmierung ausgelöst werden. Ein Profiler hilft dem Entwickler durch Analyse und Vergleich von laufenden Programmen die Problembereiche aufzudecken. Daraus lassen sich Maßnahmen zur strukturellen und algorithmischen Verbesserung des Quellcodes ableiten. Für native C/C++-Programme gibt es eine Reihe kostenfreier Profiler, deren Funktionen in diesem Artikel vorgestellt werden sollen.

  • Client-Server-Modell

    Dienstag, den 24. August 2010 um 11:20 Uhr

    Viele Anwendungen funktionieren in einer Client/Server Umgebung, das bedeutet, dass die Client-Rechner Kontakt aufnehmen zu einem Server, der meist ein Rechner mit sehr großer Eingangs-Ausgangs-Kapazität ist, welcher ihnen die Dienste bereitstellt. Zum Austausch der Daten im Internet hat sich XML mittlerweile als Standard zur Informationsübermittlung durchgesetzt. Zu den wichtigsten Merkmalen zählen die für Menschen lesbare Form und die Plattformunabhängigkeit. In diesem Artikel wird ein Client-Server-Modell in C# entworfen, mit dem serialisierte XML-Dokumente über ein Netzwerk übertragen werden können.

  • Multithreading in C#

    Samstag, den 12. Dezember 2009 um 02:00 Uhr

    In diesem Artikel werden Sie in das wichtige Thema Multithreading mit der Programmiersprache C# eingeführt. Was ist ein Thread und warum sind Threads heute in der Softwareentwicklung allgegenwärtig. Sie werden erfahren wie das .NET Framework mit Threads umgeht. Darüberhinaus werden Sie lernen, wie man Threads erzeugt und verwaltet, Prioritäten setzt, den Threadstatus bestimmt und mit der Threadsynchronisierung dafür sorgt, dass sich Threads nicht gegenseitig in die Quere kommen.


MSDN Virtual Labs

SourceForge

Sun Java

CodeGuru.com
The number one developer site!
  • Writing a Windows Phone 7.5 Camera Application
    Windows Phone Mango now allows programmatic access to the camera, opening doors for developers to write applications that use the built-in camera. Vipul Patel shows you how to build a simple Windows Phone Mango Camera application.

  • Introduction to Lucene.Net
    Rohit Kukreti describes the basic steps to use Lucene.Net within an ASP.Net application.

  • Play Background Audio in Your Windows Phone Apps
    Windows Phone Mango (also called version 7.5) supports multi-tasking, which enables a number of new features, one of which is the ability to play background audio. In this article, we learn how we can play background audio in a Windows Phone application.

  • Kinect for Windows: A New Interface for Your Apps
    Microsoft officially announced that a new Kinect for Windows device will be released on February 1st along with a commercial license. How easy is it to code to?

  • Introduction to Routing Service in WCF 4.0
    Now in WCF 4.0, developers can create services that act as a Router to route messages to other client WCF services based on the requests from the clients. This feature is called WCF Routing Service. Read this article to learn more about it.