Version [92850]
Dies ist eine alte Version von CIPythonMaster erstellt von ChrisGerlach am 2019-01-04 16:38:15.
File | Last modified | Size |
---|---|---|
Abbknn.PNG | 2023-10-06 18:35 | 15Kb |
Betragsspektrum.PNG | 2023-10-06 18:35 | 14Kb |
Gustafson.PNG | 2023-10-06 18:35 | 203Kb |
MathematischeFormel.PNG | 2023-10-06 18:35 | 4Kb |
MathematischeFormel1.PNG | 2023-10-06 18:35 | 4Kb |
Perzeptron.PNG | 2023-10-06 18:35 | 25Kb |
Phasenspektrum.PNG | 2023-10-06 18:35 | 10Kb |
Python_4.rar | 2023-10-06 18:35 | 2Mb |
Python_4_1.rar | 2023-10-06 18:35 | 288Kb |
Python_5.rar | 2023-10-06 18:35 | 629Kb |
Vorlesung1.rar | 2023-10-06 18:35 | 4Mb |
euklidischeDistanzmass.PNG | 2023-10-06 18:35 | 12Kb |
knn.rar | 2023-10-06 18:35 | 690Kb |
Python Programmierung (Masterstudiengang)
In diesem Tutorium für den Masterstudiengang wird eine Einführung in Python stattfinden. Im spatäteren Verlauf werden wir ein bisschen auf die Vorverarbeitung und verschiedenen Klassifizierungsmethoden, sowie Neuronale Netze eingehen und die Kenntnisse von der Vorlesung Mustererkennung, gehalten von Herrn Porf. Golz, gefestigt.Somit ist es für dieses Tutorium wichtig gewisse Vorkenntnisse von Mustererkennung mitzubringen.
Die Vorbereitung
In der ersten Tutoriumssitzung gehen wir auf die auf die Besonderheiten, sowie die Installation der Entwicklungsumgebung und das Erstellen von Projekten und Umgebungen. Bei der Insterllation und Erstellung der Umgebung muss darauf geachtet werden, mit welcher Python-IDE-Version programmiert wird. Das liegt daran das manche packages nicht mit jeder Version funktionieren. Deshalb muss man gut überlegen, was man vorhart und sich über die Version und deren dazugehörigen packages infomieren. Desweiteren werden Besonderheiten der Skriptsprache Vorgestellt, sowie der Umgang mit Schleifen, Variablen, Listen, wichtigen Datenstrukturen & Exception Handling. In der zweiten Sitzung wird Multithreading & Multiprocessing und Objektorientiertes Programmieren in Python. Dabei stellt sich der interessante Fakt herraus, dass Multithreading nur einen Kern des Prozessors nutzt. Aus diesem Grund kann keine große Effizientssteigerung entstehen.Beim Multiprocessing werden mehrere Kerne des Prozessors genutzt auf denen dann visuelle Threads erstellt werden.
Die Folien und Beispiele zu den Grundlagen können Sie hier herunterladen: Vorlesung1.rar
Klassifizierungen
k-Nearest Neighbors (KNN)
k-Nearest Neighbors ist ein Klassifikationsverfahren, welches aufgrund der k nächsten Nachbarn eine Klassifizierung vornimmt. Diese Bestimmung wird anhand eines Distanzmaßes vorgenommen, das meist gewählt ist das euklidische Distanzberechnung.
Vorgestellt wird eine Eigenimplimentierung und ein Packages, welches diese Klassifizierungsmethode vorimplimentiert enthält.
Die Folien und Beispieldaten zum k-Nearest-Neighbors (KNN) können Sie hier herunterladen: Sorry, a file named knn.zip does not exist.
Bevor wir zum Gustafson-Kessel Algorithmus kommen wird vom Herrn Häuser ein weitere Klassifikationsmethode, der k-Means, dargestellt. Hier zeigt ihn Herr Häuser eine Eigenimplementierung, welche eine Farbskalierung an einem Bild trifft. Schauen sie auf seiner Hochschulwikiseite vorbei: PythonTutoriumBA
Gustafson-Kessel
Der Gustafson-Kessel-Algorithmus ist eine Erweiterung des Fuzzy k-Means. Durch diese Erweiterung ist es möglich den Richtungssinn von Daten zu erfassen.Aber was heißt das ?
Beim Fuzzy k-Means wird immer von einer homogenen kreisrunden Form der Datenwolke ausgegangen, weshalb eliptische Formen oder Datensätze mit einem Richtungssinn schwer zu Klassifizieren sind. Um ein besseres Verständnis für den Fuzzy k-Means zu erlangen, verweise ich auf auf das Bachelortutorium vom Herrn Häuser:**__[[http://wiki.hs-schmalkalden.de/TutoriumPythonProgrammierungBachelor PythonTutoriumBA]]
Um dies zu realisieren wird beim Gustafson-Kessel-Algorithmus ein besonderes Distanzmaß, die Skalierte Mahalanobis Distanz.
Nach der Theorie wird wieder eine Eigenimplementierung dieses Algorihtmuses vorgestellt, um das Verständnis zu festigen.
Die Folien und Beispieldaten zu dem Gustafson-Kessel-Algorithmus können Sie hier herunterladen: Sorry, a file named Python_4_2.zip does not exist.
Diskrete Fourier Tarnsformation
In diesem Abschnitt des Tutoriums wird die Vorverarbeitung durch die Diskrete Fourier Transformation grundlegend erläutert. Durch dieses tutorium soll das Verständnis der DFT und die Wichtigkeit der Vorverarbeitung dargestellt werde, sowie Verständniss für die mathematischen Abbildungen und der Formel der DFT. Wodurch folgende Gliederung gewählt wurde:
1) Aufgabe der DFT
2) Mathematische Darstellung
- Signal
- Frequenzspektrum
- Phasenspektrum
- Betragsspektrum
- Beispiel für DFT
Die DFT hat den Zweck ein Siganl/Funktion, welches Zeitabhängig ist, in eine periodische Funktion welche Frequenzabhängig ist umzuwandeln. Durch diese Transformationen sind mehr Daten vorhanden, weil diese Funktion eine Komplexwertige Funktion ist. Dies ist in sofern wichtig, da fürs Maschinelle Lernen sehr viele Datensätze enorm wichtig sind. Die verschiedenen Abbildungsformen zeigen wir an einem Beispiel. Das Betragsspektrum stellt den Realteil der Komplexwertigen Funktion da. Das Phasenwinkel hingegen den Imaginär Teil der Funktion.
Hier sind Beispielabbildungen des Phasen- und Betragsspektrums, sowie die Mathemtische Formel.
Die Folien und Beispieldaten zum k-Nearest-Neighbors (KNN) können Sie hier herunterladen: Sorry, a file named DFT.zip does not exist.
Neuronale Netze
In diesem Kapitel behandelen wir als erstes das einfachste Neuronale Netz. Das Neuronale Netz hat seinen Namen von den menschlichen Neuronalen Netzten, da wir ein solches Netz simulieren. Dieses nennt sich Pperzeptron. In diesen Neuronalen Netz gibt es keine Hidden-Neurone. Mit diesen Netzwerk können einfache Funktion wie and/or gelernt werden. Im Neuronalen Netz hat jedes Neuron eine eigene wichtung, durch eine Summenbildung des Eingangswertes und das Gewicht dieses Neurons werden Entscheidungen getroffen. Bei komplexeren Neuronalen Netzen kommt es auch drauf an welche Neuronen angesprochen werden.
Das Perzeptron haben wir an dem Beispiel der or-Funktion Vorgestellt. Desweitern haben wir eine Projektaufgabe bei der das Perzeptron auf eine and-Funktion umzuprogrammieren.
Hier ist der Aufbau des Perzeptrons dargestellt:
Die Folien und Beispieldaten zu dem Perzeptron können Sie hier herunterladen: Sorry, a file named NeuronaleNetze.zip does not exist.
Noch mögliche Vorlesungspunkte in kommenden Semestern
- Random Forest
- Vertiefende Beispiele Neuronale Netzte (z.B. Bild Unterscheidung Katze/Hund)
- Vertiefende Beispiele SVM