Einstieg ins Machine Learning: Grundlagen, Prinzipien, erste Schritte
()
Über dieses E-Book
Zunächst zeigt Ihnen Dr. Andreas Bühlmeier die mathematischen Grundlagen, die Machine Learning überhaupt erst möglich machen, und stellt einige der wichtigsten und meistgebrauchten Algorithmen vor. Christoph Henkelmann erläutert, wie Texte richtig vorbehandelt werden, damit sie überhaupt von Machine- und Deep-Learning-Algorithmen verarbeitet werden können. Was man dann damit machen kann, und wie man von der Text- und Spracherkennung zur Emotionserkennung kommt, erläutern Shahin Amiriparian, Maximilian Schmitt und Björn Schuller anhand eines ausführlichen Beispiels. Und dass es für erste eigene Versuche mit Machine Learning nicht unbedingt spezialisierte Hardware und neue Programmiersprachen braucht, beweist Oliver Zeigermann, indem er mit TensorFlow.js einfache Anwendungen nur mit JavaScript im Browser erstellt.
Ähnlich wie Einstieg ins Machine Learning
Titel in dieser Serie (100)
TFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 BewertungenAlgorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenEinstieg in Google Go Bewertung: 0 von 5 Sternen0 BewertungenSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Bewertung: 0 von 5 Sternen0 BewertungenIT Wissensmanagement: Theorie und Praxis Bewertung: 0 von 5 Sternen0 BewertungenZend Framework 2: Für Einsteiger und Umsteiger Bewertung: 0 von 5 Sternen0 BewertungenApache Tapestry: Einstieg in die komponentenorientierte Webentwicklung Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Bewertung: 0 von 5 Sternen0 BewertungenJava EE Security Bewertung: 0 von 5 Sternen0 BewertungenAmazon Web Services für .NET Entwickler Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Bewertung: 0 von 5 Sternen0 BewertungenJavaScript auf dem Server Bewertung: 0 von 5 Sternen0 BewertungenHTML5 Security Bewertung: 0 von 5 Sternen0 BewertungenJava 7: Fork-Join-Framework und Phaser Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Bewertung: 0 von 5 Sternen0 BewertungenADF - Mobile Apps entwickeln und Swing ablösen: Mobile Apps entwickeln und Swing ablösen Bewertung: 0 von 5 Sternen0 BewertungenGeolocation mit PHP: Foursquare-API, Google Places & Qype Bewertung: 0 von 5 Sternen0 BewertungenNFC: Near Field Communication für Android-Entwickler Bewertung: 5 von 5 Sternen5/5UX Design für Tablet-Websites: Ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenHTML5 für Mobile Web Bewertung: 0 von 5 Sternen0 BewertungenC++: Kurzportträt einer zeitlosen Sprache Bewertung: 0 von 5 Sternen0 BewertungenÜberzeugende Präsentationen: Konzeption, Technik und Design Bewertung: 0 von 5 Sternen0 BewertungenMobile Business: Was Entscheider morgen wissen müssen Bewertung: 0 von 5 Sternen0 BewertungenEclipse meets Java FX Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Strategie und Planung Bewertung: 0 von 5 Sternen0 BewertungenServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Bewertung: 0 von 5 Sternen0 BewertungenQualitätssicherung mit JavaScript und PHP Bewertung: 0 von 5 Sternen0 BewertungenF#: Ein praktischer Einstieg Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Executive Briefing Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnliche E-Books
Algorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenBlockchain kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenPython programmieren lernen: Der spielerische Einstieg mit Minecraft Bewertung: 0 von 5 Sternen0 BewertungenMachine Learning – kurz & gut: Eine Einführung mit Python, Pandas und Scikit-Learn Bewertung: 5 von 5 Sternen5/5C# 10 – kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenEinstieg in die Datenanalyse mit SPSS Bewertung: 0 von 5 Sternen0 BewertungenDeep Learning – Grundlagen und Implementierung: Neuronale Netze mit Python und PyTorch programmieren Bewertung: 0 von 5 Sternen0 BewertungenDatenbanken: Grundlagen und Entwurf Bewertung: 0 von 5 Sternen0 BewertungenLösungen zum großen Python3 Workbook: Unfangreiche Lösungen zu den Übungsaufgaben Bewertung: 0 von 5 Sternen0 BewertungenPHP for Office: Automatisierte Dokumentenerstellung mit PHPExcel, PHPWord und PHPPowerPoint Bewertung: 1 von 5 Sternen1/5Software entwickeln mit C#, WPF und dem MVVM-Konzept Bewertung: 0 von 5 Sternen0 BewertungenDas große Python3 Workbook: Mit vielen Beispielen und Übungen - Programmieren leicht gemacht! Bewertung: 4 von 5 Sternen4/5Die Eignung Neuronaler Netze für die Mining-Funktionen Clustern und Vorhersage Bewertung: 0 von 5 Sternen0 BewertungenApproximation der Lösungen von Differentialgleichungen mit Wavelets und Einstellung der Parameter Bewertung: 0 von 5 Sternen0 BewertungenC# 6.0 – kurz & gut Bewertung: 5 von 5 Sternen5/5Die nicht zu kurze Kurzeinführung in MATLAB: Erste Schritte in MATLAB Bewertung: 0 von 5 Sternen0 BewertungenOszilloskop und Spektrumanalysator: Kompendium Messtechnik und Sensorik, Teil 5 Bewertung: 5 von 5 Sternen5/5Programmierung in Visual Basic (VB): von der promanalyse zum programm Bewertung: 0 von 5 Sternen0 BewertungenMaschinelles Lernen In Aktion: Einsteigerbuch Für Laien, Schritt-Für-Schritt Anleitung Für Anfänger Bewertung: 0 von 5 Sternen0 BewertungenProjektmanagement kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenMicrosoft KINECT: Programmierung des Sensorsystems Bewertung: 0 von 5 Sternen0 BewertungenNeuronale Netze selbst programmieren: Ein verständlicher Einstieg mit Python Bewertung: 0 von 5 Sternen0 BewertungenEinführung in Programmiersprachen Bewertung: 0 von 5 Sternen0 BewertungenMaker-Projekte mit JavaScript: Mit Espruino und JavaScript aus Alltagsobjekten intelligente Maschinen bauen Bewertung: 0 von 5 Sternen0 BewertungenPython | Schritt für Schritt Programmieren lernen: Der ultimative Anfänger Guide für einen einfachen & schnellen Einstieg Bewertung: 0 von 5 Sternen0 BewertungenProgrammieren lernen mit EV3: Vom Einsteiger zum Meisterprogrammierer mit LEGO® MINDSTORMS® EV3 Bewertung: 0 von 5 Sternen0 BewertungenProgrammieren für Einsteiger: Teil 1 Bewertung: 0 von 5 Sternen0 BewertungenGoogle & mehr: Online-Recherche: Wie Sie exakte Treffer auf Ihre Suchanfragen erhalten Bewertung: 0 von 5 Sternen0 BewertungenSharePoint Kompendium - Bd. 16 Bewertung: 0 von 5 Sternen0 BewertungenC++-Standardbibliothek - kurz & gut Bewertung: 0 von 5 Sternen0 Bewertungen
Künstliche Intelligenz (KI) & Semantik für Sie
Künstliche Intelligenz: Die vierte industrielle Revolution Bewertung: 0 von 5 Sternen0 BewertungenChatGPT: Begegnung mit einer neuen Welt: Lernen Sie Künstliche Intelligenz mit der Gratisversion ChatGPT 3.5 Bewertung: 0 von 5 Sternen0 BewertungenAufstieg der Roboter: Wie unsere Arbeitswelt gerade auf den Kopf gestellt wird - und wie wir darauf reagieren müssen Bewertung: 0 von 5 Sternen0 BewertungenChatGPT – Für Einsteiger: Schreibprofi mit KI, Zeit und Geld sparen ohne peinliche Fehler Bewertung: 0 von 5 Sternen0 BewertungenDigitalotopia: Sind wir bereit für die (R)Evolution der Wirklichkeit? Bewertung: 0 von 5 Sternen0 BewertungenMeistern von ChatGPT: Entriegeln Sie die Kraft der KI für verbesserte Kommunikation und Beziehungen: German Bewertung: 0 von 5 Sternen0 BewertungenDie KI Bibel, mit künstlicher Intelligenz Geld verdienen: Echte Fallbeispiele und Anleitungen zum Umsetzen Bewertung: 1 von 5 Sternen1/5ChatGPT: Epische Reise des Erfolgs - 'Steigern Sie Ihren Reichtum': Mit Screenshots aus dem echten Leben - Erreichen Sie finanzielle Höhen Bewertung: 0 von 5 Sternen0 BewertungenDie Zukunft der Arbeit: Digitalisierung, Automatisierung, KI Bewertung: 0 von 5 Sternen0 BewertungenMenschlicher Geist und Künstliche Intelligenz: Die Entwicklung des Humanen inmitten einer digitalen Welt Bewertung: 0 von 5 Sternen0 BewertungenKünstliche Intelligenz in Sozialen Medien Bewertung: 0 von 5 Sternen0 BewertungenPsychologie des Sozialismus Bewertung: 0 von 5 Sternen0 BewertungenChatbotische Landingpages: Wie du deine Konkurrenz in den digitalen Staub schicken Bewertung: 0 von 5 Sternen0 BewertungenRoboter im Alltag: Maschinen (beinahe) wie Menschen Bewertung: 0 von 5 Sternen0 BewertungenKI-Innovationen: Wie die Technologie die Grenzen verschiebt Künstliche Intelligenz verstehen und nutzen: Ein AI-Buch Bewertung: 0 von 5 Sternen0 BewertungenWissen statt Glauben!: Das Weltbild des neuen Humanismus Bewertung: 0 von 5 Sternen0 BewertungenChatbotische Medien-Gestaltung leicht gemacht: Von der Idee zum viralen Hit Bewertung: 0 von 5 Sternen0 Bewertungen
Rezensionen für Einstieg ins Machine Learning
0 Bewertungen0 Rezensionen
Buchvorschau
Einstieg ins Machine Learning - Shahin Amiriparian
GmbH
1 Mathematische Grundlagen für maschinelles Lernen
Machine Learning ist vor allem durch die Erfolge im Deep Learnig und durch das Potenzial populär geworden, große, unstrukturierte Datenmengen verarbeiten zu können. Die Technologie ist an sich aber nicht neu und hat dabei sehr viele Facetten, was das Thema manchmal unübersichtlich erscheinen lässt. Fundierte mathematische Grundlagen der wichtigsten Ansätze geben den Einstieg, um den Überblick zu behalten.
Machine Learning fasziniert, weil damit Lösungen gefunden werden können, die man vorher so nicht beschreiben konnte. So scheint es fast magisch zu funktionieren, was natürlich nicht der Fall ist, da man ja die Algorithmen programmieren muss. Wenn man neu in das Thema einsteigt, ist es schwierig, den Überblick zu behalten und zu verstehen, wann und warum einzelne Verfahren für bestimmte Aufgaben funktionieren und wann nicht. Darum veranschaulichen wir hier die wichtigsten Ansätze. Anstatt verschiedene Methoden völlig getrennt zu behandeln, gehen wir entlang der Gemeinsamkeiten vor, um dann die verschiedenen Ausprägungen darzustellen, ohne dabei bis ins letzte Detail zu gehen. Es wird überwachtes Lernen, unüberwachtes Lernen sowie Reinforcement-Lernen dargestellt werden.
Die Blackbox-Sicht
Der Einsatz von Machine Learning erfolgt meist nach dem folgenden Muster: Wir haben Eingangsdaten, das können Kameradaten, Börsendaten, Text oder Sonstiges sein. Das System soll diese Daten verarbeiten und dabei lernen, möglichst gut zu funktionieren (dazu später mehr). Die Ausgangsdaten können dann z. B. Klassifizierungen der Eingangsdaten sein, also beispielsweise angeben, ob ein Auto erkannt wurde, ein Fußgänger, oder man eine bestimmte Aktie kaufen sollte. Es wird meist Feedback gegeben, das lauten kann, dass der Ausgang falsch oder richtig gewählt wurde oder welcher Ausgang richtig gewesen wäre (Abb. 1.1). Wenn das Feedback t das gewünschte Ergebnis darstellt und die Differenz von tatsächlichem und gewünschtem Ergebnis zur Optimierung von M herangezogen wird, spricht man vom sogenannten überwachten Lernen (Supervised Learning), womit wir uns als Erstes beschäftigen wollen.
Abbildung 1.1: Ein Machine-Learning-System besitzt immer einen Input, einen Ausgang und bekommt optional Feedback zur Bewertung seiner Ausgaben
Mathematik
Was immer wir als mathematischen Algorithmus aufschreiben können, kann programmiert werden. Im Fall der obigen Zeichnung ist die Abbildung des Eingangs x (Kameradaten) auf den Ausgang y („Auto oder „Fußgänger
) am einfachsten wie folgt zu formulieren: y=f(x).
Das heißt, die Aufgabe des Machine-Learning-Systems f ist, sich selbst so zu verbessern (also zu lernen), dass die gewünschte Größe y erzielt wird. Die Ausgangsgröße y kann oftmals als binär angenommen werden. Wir können diese Aufgabe des Verbesserns auch als Optimierungsaufgabe auffassen, womit genau das wesentliche innere Prinzip des Machine Learnings beschrieben ist. Neben diesem inneren Prinzip sind allerdings viele weitere Dinge zu betrachten. Die Optimierung ist nämlich in komplexe Strukturen einzubauen, damit die gewünschten Resultate erreicht werden können, wie wir im Laufe dieses Kapitels sehen werden.
Die Optimierungen werden meist iterativ umgesetzt. In kleinen Schritten und mit einer Vielzahl von Beispieldaten lernen z. B. neuronale Netze, die ihnen gestellten Aufgaben zu lösen, indem sie sich im Mittel über die Zeit verbessern.
Etwas Mathematik zum Auffrischen:
Vektor
ЄRn, hat die Form
Matrix
Eine m-x-n-Matrix W hat die Form
Skalarprodukt von Matrix und Vektor
Das Skalarprodukt aus einer m-x-n-Matrix W und einem n-dimensionalen Vektor x ist wieder ein Vektor und zwar m-dimensional. Für jedes Element dieses Ergebnisvektors y gilt:
Ableitung einer Funktion
Die Ableitung einer Funktion f(x) wird durch die Steigung der Tangente an diesem Punkt beschrieben. Für die Ableitung f‘(x) der Funktion f(x) kann man einen Satz von Regeln anwenden, z. B. für einfache Fälle die Potenzregel:
Für f(x)=xn gilt f'(x)=nxn-1
d. h. für f(x)=x2 gilt f'(x)=2x
Die Kettenregel:
Für die verkettete Funktion für f(x)=g(h(x)) gilt die Ableitung f'(x)=g'(h(x))h'(x), also das Produkt aus äußerer Ableitung g'(h(x)) und innerer Ableitung h'(x).
Partielle Ableitung
Die partielle Ableitung ist die Ableitung einer Funktion mit mehreren Argumenten nach einem der Argumente. Gekennzeichnet werden partielle Ableitungen mit ∂, also z. B. ∂C(W)/∂wij, was bedeutet, dass C von der Matrix W abhängt, aber wir jetzt nur die einzelne Komponente wij betrachten.
Gradient
Als Gradienten bezeichnet man einen Vektor, wobei die ersten partiellen Ableitungen der Funktion die Einträge des Vektors bilden.
Neuronale Netze
Wie kann unser System f konkreter aussehen? Und wie kann es optimiert werden?
Ein besonders wichtiger Ansatz zur Optimierung des Systems ist von der Biologie inspiriert, d. h. von unserem Wissen darüber, wie Lebewesen lernen. Wir wissen, dass neuronale Verbindungen und ihre Anpassungen dabei eine zentrale Rolle spielen. So entstand ein gerade in jüngster Zeit erfolgreicher Ansatz bereits in den späten 1940er Jahren: die neuronalen Netze. Wir beschäftigen uns hier zunächst mit den einfachsten neuronalen Netzen, um das Grundprinzip zu verstehen, und machen dann weiter mit komplexeren Netzwerken. Das einfachste neuronale Netz ist das sogenannte Perzeptron [1]. Es besteht im einfachsten Fall aus einem Neuron mit mehreren Eingängen, wie in Abbildung 1.2 dargestellt.
Abbildung 1.2: Ein einfaches Modell