myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Knowledge Base » Buchempfehlungen » Künstliche Intelligenz - praktische Beispiele - Buchtipp
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Künstliche Intelligenz - praktische Beispiele - Buchtipp

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
tonka
myCSharp.de-Mitglied

avatar-2860.gif


Dabei seit: 05.12.2006
Beiträge: 373
Entwicklungsumgebung: VS 2005/2008/2010
Herkunft: Österrreich


tonka ist offline

Künstliche Intelligenz - praktische Beispiele - Buchtipp

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

[email protected],

ich versuche schon seit geraumer Zeit mir Wissen bezüglich KI (AI) zu anzueignen. Ich habe mittels google schon sehr viele deutsch- und englischsprachige Beschreibungen, Erklärungen, etc. gefunden. Die Basics habe ich (meiner Meinung nach) verstanden, jedoch fehlt mir noch die "praxisbezogene Ebene". Ich verstehe nicht so ganz wie die neuronalen Netzte und co. für den praktischen(programmiertechnischen) Einsatz nutzbar sind, genauer gesagt -> Wie beziehe ich die Informationen aus dem Netz um diese in einem praktischen Beispiele wie z.B. Mustererkennung zu verwenden.

Solltet ihr ein paar gute Bücher/Links zu dem Thema kennen, die sowohl die Grundlagen als auch den praktischen Einsatz (am besten mit Source-Snippets oder etwaiges) erklären, ich würde mich über jeden Vorschlag freuen.

MfG
Tonka
01.12.2009 13:46 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
gfoidl gfoidl ist männlich
myCSharp.de-Team

avatar-2894.jpg


Dabei seit: 07.06.2009
Beiträge: 6.681
Entwicklungsumgebung: VS 2019
Herkunft: Waidring


gfoidl ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Tonka,

künstliche Intelligenz und Mustererkennung sind sehr weitläufige Begriffe und mir ist kein Buch bekannt dass beides abdeckt, zumal diese Methoden speziell auf das Problem angepasst werden müssen - eine allgemeine Lösung gibt es nicht.

Eine gute Übersicht über die Methoden der KI bietet Andries P. Engelbrecht in  Computational Intelligence. Darin ist auch Pseudocode für die meisten Methoden enthalten. Generell ist es jedoch eine mathematische Abhandlung des Themas, Praxisbeispiel finden sich wenige jedoch werden die Einsatzgebiete gezeigt.

Speziell für C# und neuronale Netze kann als Einführung von Jeff Heaton  Introduction to Neural Networks for C# verwendet werden. Dieses Buch ist praxisorientiert hat aber leider viele Fehler die einen nicht wissenden falsches lehren. Wenn man vorher schon die Grundlagen kennt kann man darüber hinwegblicken und das Kapitel das mit SOM bezeichnet wurde eben als Vector quantization bezeichen, nur als Beispiel. Daher empfehle parall zu diesem Buch auch das  Forum dazu zu beachten in dem ich auf die meisten Fehler hingewiesen habe.

Ich verwende zur Mustererkennung im Zuge von Data-Mining eine Selbst organisierte Karte (SOM, Kohonen-Netz) und für dieses ist Kohonens Monograph  Self-Organizing Maps sozusagen die Bibel dafür. Dieses Buch ist sehr mathematisch (man hat damit Freude oder hasst es - bei mir ersteres) und bietet alles rund um das Thema SOM. Praxisbeispiele sind darin auch enthalten. Aber kein Code sondern nur Formeln - diese sollten sich aber leicht in Code umsetzen lassen.

Für andere Themen wie neuronales Gas, etc. ist es am Besten die Origanalarbeiten der jeweiligen Erfinder zu lesen. Dies sind meist Artikel mit ca. 10 Seiten die eine Einführung in das Thema geben und mit einem typischen Praxisbeispiel für die Anwendung abgeschlossen werden. Dazu ist es vorteilhaft ein Mitglied von zB IEEE zu sein, denn dort werden solche Arbeiten bevorzugt veröffentlicht.
Weiters ist es empfehlenswert sich in dan Universitäten wo die treibenden Kräften sind sich die Dissertationen durchzulesen. Bei der SOM zB ist dies die Helsinki University of Technology.

Ich kann nur eine ziemlich allgemeine Antwort geben da das Thema eben sehr weitreichend ist. Mustererkennung kann Texterkennung, Gesichtserkennung, Data-Mining, etc. sein. Weiters muss auch zwischen Clustern und Klassifizierung unterschieden werden. Ersteres lässt sich durch unüberwachtes Lernen bewerkstelligen letzeres respektive mit überwachten Lernen. Für beide gibt es wiederum verschiedenste Methode die angewandt werden können. Welche zu bevorzugen ist kann auch nicht pauschal beantwortet werden, denn das hängt - wie immer - vom Anwendungsfall ab. Persönlich verwende ich meist fürs Clustern ein (wachsendes) neuronales Gas und für die Klassifizierung die Learning Vector Quantization oder ein Feedforward-Netzwerk - je nachdem was sich bei Referenztest als "besser" herausstellt.

Wie im letzten Absatz kurz angeschnitten gibt es überwachtes und unüberwachtes Lernen. Weiters gibt es eine grobe Unterteilung in vektorbasierte (distanzbasierte) und skalarproduktbasierte Netzwerke. Erstere haben zudem gemein dass sie kompetitiv lernen. Somit unterscheidet sich die "Ausgabe" dieser Netzwerktypen. Die vektorbasierten haben als Ausgabe ein "Siegerneuron" während die skalarproduktbasierten eine reelle Zahl ausgeben. D.h. auch dass erstere distkrete und letztere kontinuierliche Ausgaben haben. Diese Ausgaben gilt es entsprechend zu interpretieren oder durch "Postprocessing" entsprechend aufzuberetein.

Nehemen wir hierzu als Beispiel eine einfache Zeichenerkennung welche als Klassifizierung angesehen werden kann. Dazu eignet sich zB die Learning Vector Quantization (LVQ). Dies ist ein Netzwerk das ähnlich einer SOM aufgebaut ist, das Lernverfahren unterscheidet sich jedoch dahingehend dass die SOM unüberwacht ist und die LVQ ein überwachtes Verfahren. Es gibt auch mehrere Varianten der LVQ - relevant sind meiner Meinung nach nur LVQ-I und OLVQ (sowie die Batch-Varianten davon).

Zurück zum Beispiel: Das Bild des zu erkennenden Buchstaben muss zuerst aufbereitet werden indem es "normalisiert" wird. D.h. ausgerichtet, beschnitten, skaliert, etc. Danach wird die Information jedes Pixels - weiß/schwarz - am Netzwerk angelegt, d.h. jedem Eingabeneuron wird der Wert eines Pixel angelegt. Das (tranierte) Netzwerk verarbeitet diese Information und als Ausgabe bekommt man den Index des Siegerneurons. Da mit dieser Ausgabe nicht viel anzufangen ist muss das Netzwerk im Anschluss an das Training kalibriert werden. D.h. alle zu erkennenden Buchstaben werden dem Netz präsentiert und die Zuordnung Buchstabe <-> Siegerneuron gespeichert - in einer Haschtabelle. Somit kann im Einsatz über dieses Zuordnungstabelle vom Siegerneuron auf den erkannten Buchstaben geschlossen werden.

Im obigen Beispiel würde ein vektorbasiertes Netzwerk verwendet. Das gleiche Beispiel kann auch mit einem skalarproduktbasierten Netzwerk wie einem Multilayer-Perzeptron (MLP) umgesetzt werden - funktioinert allerdings nicht so gut, aber für das Verständnis reicht es.
Hierzu gibt es für die Ausgabe zwei Möglichkeiten:
  • für jede Klasse (Buchstabe) wird ein Ausgabeneuron vorgesehen - für das Beispiel wären dies 26
  • ein Ausgabeneuron und Unterteilung der Klassen durch Bereiche im Ausgabeintervall (-> Defuzzierung der Ausgabe). ZB wenn das Ausgabeintervall [-1,1] ist so könnte das Teilintervall [-1, -1+1/26] für A, [-1+1/26,-1+2/26] für B, ... [1-1/26,1] für Z stehen
Welche der beiden Varianten verwendet wird hängt wieder vom konkreten Anwendungsgall ab.

So, nun hoffe ich dass die Antwort ein wenig hilfreich ist und zuguter letzt sei noch eine weitere wichtige Quelle zu erwähnen: Fragen hier bei myCSharp ;)

mfG Gü

Speedski
01.12.2009 14:47 Beiträge des Benutzers | zu Buddylist hinzufügen
Quintus
myCSharp.de-Mitglied

Dabei seit: 13.12.2009
Beiträge: 5


Quintus ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Gibt es eigentlich auch ein möglichst aktuelles Buch, welches sich mit den Grundlagen der KI allgemein befasst? Also das eine Übersicht über die verschiedenen Ansätze liefert (neuronale Netze z.B.), diese erläutert und dabei garnicht unbedingt allzu sehr ins Detail geht? Dass man einfach mal einen Überblick hat, für welche Aufgaben man welche Art von KI einsetzt und wie diese grob funktioniert.

Bin zwar der Englischen Sprache mächtig, aber bei solch eher komplexn Themen wäre etwas deutsches vielleicht besser, ist halt nunmal kein Roman ;)
13.12.2009 23:33 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Schlopp Schlopp ist männlich
myCSharp.de-Mitglied

avatar-3124.jpg


Dabei seit: 16.05.2008
Beiträge: 297
Entwicklungsumgebung: Visual Studio 2010 Ultimate
Herkunft: Stuttgart, München, Schweiz


Schlopp ist offline Füge Schlopp Deiner Kontaktliste hinzu

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Du könntest mal auf den Webseiten von Universitäten schauen, ob es dort Skripte zu den Vorlesungen zum runterladen gibt. Diese sind zwar meistens mit einem Passwort geschützt, aber manche eben auch nicht.
Ich habe mal bei der Uni Stuttgart eine Einführung in die (verteilte) KI gefunden und diese hatte kein Passwort. Ansonsten hilft es auch, den entsprechenden Professoren eine Mail zu schreiben, und nach dem Passwort zu bitten, die meisten sind ja ganz nett und umgänglich.
14.12.2009 10:24 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Zwischen diesen beiden Beiträgen liegt mehr als ein Jahr.
solick
myCSharp.de-Mitglied

Dabei seit: 01.08.2009
Beiträge: 56


solick ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo, das Thema ist zwar schon etwas älter, aber vielleicht interessiert es ja trotzdem mal jemanden:

Da ich mich mit KI, vor allem mit logischer Programmierung, im Rahmen meiner Diplomarbeit beschäftigt habe, kann ich ein paar gute Bücher zur Einführung in die KI emfpehlen. Diese Behandeln auch andere Bereiche der KI wie:

- Fuzzy Logic
- Suche-Verfahren
- Logik-Programmierung
- künstliche neuronale Netze

etc.

Ertel, Wolfgang: Grundkurs Künstliche Intelligenz. Eine praxisorientierte Einführung. 2. Auflage. Wiesbaden: Vieweg+Teubner, 2009

Lämmel, Uwe; Cleve, Jürgen: Künstliche Intelligenz. München: Carl Hanser Verlag, 2008

Mainzer, Klaus: KI – Künstliche Intelligenz. Grundlagen intelligenter Systeme. Darmstadt: Wissenschaftliche Buchgesellschaft 2003

Beste Grüße solick

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von solick am 24.07.2011 17:30.

24.07.2011 17:30 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 11 Jahre.
Der letzte Beitrag ist älter als 9 Jahre.
Antwort erstellen


© Copyright 2003-2021 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 15.01.2021 21:44