Deep Learning
Für das Fach Deep Learning wurden zu verschiedenen Themen zu diesem Fach Lernkarten erstellt.
Für das Fach Deep Learning wurden zu verschiedenen Themen zu diesem Fach Lernkarten erstellt.
Kartei Details
Karten | 32 |
---|---|
Sprache | Deutsch |
Kategorie | Informatik |
Stufe | Universität |
Erstellt / Aktualisiert | 23.01.2020 / 14.06.2025 |
Weblink |
https://card2brain.ch/box/20200123_deep_learning
|
Einbinden |
<iframe src="https://card2brain.ch/box/20200123_deep_learning/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Was ist DeepLearning?
Deep Learning bezeichnet eine Methode des maschinellen Lernens, die künstliche neuronale Netze (KNN) mit zahlreichen Zwischenschichten (hidden layers) zwischen Eingabeschicht und Ausgabeschicht einsetzt und dadurch eine umfangreiche innere Struktur herausbildet.
Was ist ein Bias im Deep Learning?
Die Aktivierung eines Knotens in einem neuronalen Netzwerk wird wie folgt bestimmt:
output = activation_function (dot_product (Gewichte, Eingaben) + bias)
Dies bedeutet, dass bei der Berechnung der Ausgabe eines Knotens die Eingaben mit Gewichten multipliziert werden und dem Ergebnis ein Bias-Wert hinzugefügt wird. Mit dem Bias-Wert kann die Aktivierungsfunktion nach links oder rechts verschoben werden, um die Daten besser anzupassen. Änderungen an den Gewichten verändern daher die Steilheit der Sigmoidkurve (Funktion mit einer S-förmigen Kurve), während die Vorspannung sie ausgleicht und die gesamte Kurve so verschiebt, dass sie besser passt. Beachten Sie auch, dass der Bias nur die Ausgabewerte beeinflusst und nicht mit den tatsächlichen Eingabedaten interagiert.
Was sind Tensoren?
Tensoren sind Grössen, mit deren Hilfe man Skalare, Vektoren und weitere Grössen analoger Struktur in ein einheitliches Schema zur Beschreibung mathematischer und physikalischer Zusammenhänge einordnen kann.
Zum Beispiel:
scalar = [1] (rank 0)
vector = [1,1] (rank 1)
matrix = [[1,1], [1,1]] (rank 2)
3-tensor = te[ [[1,1],[1,1]] , [[1,1],[1,1]] ] (rank 3)
n-tensor... (rank n)
Was ist ein Gradient?
Der Gradient ist ein mathematischer Operator, genauer ein Differentialoperator, der auf ein Skalarfeld angewandt werden kann und in diesem Fall ein Vektorfeld liefert, das Gradientenfeld genannt wird.
Zum Beispiel, ein Problem in der Bildverarbeitung ist es, in einem Bild zusammenhängende Flächen zu erkennen. Da ein Bild diskrete Werte enthält, benutzt man Filter wie den Sobel-Operator, um ein Gradientenfeld des Bildes zu erhalten.
Was ist ein Hyperparameter?
Ein Hyperparameter ist ein Parameter, der zur Steuerung des Trainingsalgorithmus verwendet wird und dessen Wert im Gegensatz zu anderen Parametern vor dem eigentlichen Training des Modells festgelegt werden muss.
Was ist eine Hyperebene?
Eine Hyperebene wird im n-dimensionalen Raum durch einen Stützvektor und n-1 Richtungsvektoren dargestellt. Eine Hyperebene, die zwei Klassen mit maximaler Entfernung teilt, wird als optimale Hyperebene bezeichnet.
Was ist eine gradientenbasierte Optimierung?
Für manche Lernalgorithmen ist es möglich, den Gradienten in Bezug auf die Hyperparameter zu berechnen und sie durch das Verfahren des steilsten Abstiegs zu optimieren. Ein anderer Ansatz, Gradienten in Bezug auf Hyperparameter zu erhalten, besteht darin, die Schritte eines iterativen Optimierungsalgorithmus automatisch zu differenzieren und sodurch die Kostenfunktion zu minimieren.
Was ist eine Verlustfunktion?
Es ist eine Methode zur Bewertung, wie gut ein spezifischer Algorithmus die angegebenen Daten modelliert. Wenn die Vorhersagen zu stark von den tatsächlichen Ergebnissen abweichen, würde die Verlustfunktion eine sehr große Zahl auslöschen. Mit Hilfe einiger Optimierungsfunktionen lernt die Verlustfunktion nach und nach, den Fehler in der Vorhersage zu reduzieren.
Was sind Optimierer?
Während des Trainings optimieren und ändern wir die Parameter (Gewichte) unseres Modells, um diese Verlustfunktion zu minimieren und unsere Vorhersagen so korrekt wie möglich zu machen. Aber wie genau machst du das?
Hier kommen Optimierer ins Spiel. Sie verknüpfen die Verlustfunktion und die Modellparameter, indem sie das Modell als Reaktion auf die Ausgabe der Verlustfunktion aktualisieren. Einfacher ausgedrückt: Optimierer formen und formen Ihr Modell in die genaueste Form, indem sie mit den Gewichten fummeln. Die Verlustfunktion ist der Wegweiser zum Gelände, der dem Optimierer mitteilt, wann er sich in die richtige oder falsche Richtung bewegt.
Was sind Convolutional Neural Networks?
Ein Convolutional Neural Network (CNN/faltendes neuronales Netzwerk) ist ein künstliches neuronales Netz. Es handelt sich um ein von biologischen Prozessen inspiriertes Konzept im Bereich des maschinellen Lernens. Convolutional Neural Networks finden Anwendung in zahlreichen modernen Technologien der künstlichen Intelligenz, vornehmlich bei der maschinellen Verarbeitung von Bild- oder Audiodaten.
Grundsätzlich besteht die Struktur eines klassischen Convolutional Neural Networks aus einem oder mehreren Convolutional Layer, gefolgt von einem Pooling Layer. Diese Einheit kann sich prinzipiell beliebig oft wiederholen, bei ausreichend Wiederholungen spricht man dann von Deep Convolutional Neural Networks, die in den Bereich Deep Learning fallen.
Was sind Faltungsoperationen?
Faltungsschichten in einem Convolutional Neural Network fassen das Vorhandensein von Merkmalen in einem Eingabebild zusammen.
Was sind Poolingoperation?
Die Pooling-Schicht dient dazu, die räumliche Größe der Darstellung schrittweise zu verringern, die Anzahl der Parameter und den Rechenaufwand im Netzwerk zu verringern und damit auch die Überanpassung zu steuern. Zwei gebräuchliche Pooling-Methoden sind Average Pooling und Max Pooling, die das durchschnittliche Vorhandensein eines Features bzw. das am meisten aktivierte Vorhandensein eines Features zusammenfassen.
Was ist Transfer Learning?
Transfer Learning ist eine maschinelle Lernmethode, bei der ein für eine Aufgabe entwickeltes Modell als Ausgangspunkt für ein Modell für eine zweite Aufgabe wiederverwendet wird. Transferlernen unterscheidet sich vom traditionellen maschinellen Lernen dadurch, dass vorgefertigte Modelle verwendet werden, die für eine andere Aufgabe verwendet wurden, um den Entwicklungsprozess für eine neue Aufgabe oder ein neues Problem zu starten.
Was ist manschinelles Sehen?
Maschinelles Sehen bezeichnet die Fähigkeit von Computern zu visuellem Erkennen. Beim maschinengestützten Sehen werden analoge Bildinformationen erfasst und in digitale Signale umgewandelt. Zu diesem Zweck kommen Videokameras sowie Technologien der Signalverarbeitung zum Einsatz. Grundlage der maschinellen Bilderkennung sind zum einen umfangreiche Bilddatenbanken, die der Maschine einen Abgleich mit in der Außenwelt befindlichen Objekten ermöglichen (Trainingsdaten) und die notwendigen künstlichen neuronalen Netzwerke. Die daraus resultierenden Bildmodelle lernen grundsetzliche Strukturen (z.B. Rundungen, Kanten), Muster, Farben und Objekte. Der Deep Learning Algorithmus zerlegt das Bild in ein Raster (zahlreiche kleinste Quadrate) und extrahiert die Bildinformationen, die jeweils auf eine bestimmte Bildeigenschaft untersucht werden. Durch automatischen Vergleich mehrerer Bilder erkennt das System Muster und berechnet daraufhin die Wahrscheinlichkeit, dass es sich bei dem Bild um einen bestimmten Gegenstand handelt. Die visuellen Inhalte werden beim Computer-gestützten Sehen also unter Nutzung von Deep Lerarning und Neuronalen Netzen erkannt.
Die Möglichkeiten des digitalen Sehens werden beispielsweise eingesetzt für die Erkennung und Zuordnung von:
- optischen Zeichen
- Mustern
- Objekten
Zu den typischen Aufgabengebieten von Computer Vision gehören insbesondere:
- Klassifizierung von Objekten,
- Lokalisierung von Objekten,
- Durchsuchen großer Datenmengen,
- Bewegungsanalyse,
- Beschreibung von Bildern,
- Aufbau von 3D-Bildern aus einzelnen 2D-Darstellungen und
- Rekonstruktion von Bildinhalten
So wird maschinelles Sehen beispielsweise genutzt zur:
- Identifizierung von Unterschriften oder Handschriften,
- Überprüfung von Banknoten,
- Materialprüfung,
- Erkennung und Zuordnung von Pflanzen oder Pflanzenkeimlingen oder
- Analyse medizinischer Abbildungen
- Identifizierung von Personen aufgrund biometrischer Daten,
- Erkennung der Mimik oder Gestik von Personen oder"
Was kann man für maschinelles Sehen verwenden?
Convolutional Neural Networks (Faltungs- und Poolingoperationen) oder Transfer Learning
Was ist eine Textdatenkodierung?
Bei dem, was für Sie als Text auf dem Bildschirm dargestellt wird, handelt es sich um numerische Werte, die in der Textdatei gespeichert sind. Ihr Computer übersetzt diese numerischen Werte in anzeigbare Zeichen. Hierbei wird ein Codierungsstandard verwendet.
Ein Codierungsstandard ist ein numerisches Schema, mit dem jedem Textzeichen in einem Zeichensatz ein numerischer Wert zugeordnet wird. Ein Zeichensatz kann alphabetische Zeichen, Zahlen und andere Symbole enthalten. Unterschiedliche Sprachen weisen normalerweise unterschiedliche Zeichensätze auf, sodass es eine Vielzahl von Codierungsstandards gibt, um die Zeichensätze darzustellen, die in den verschiedenen Sprachen verwendet werden.
Was sind Rekurrente Neuronale Netze?
Bei einem rekurrentes neuronales Netz handelt sich um eine besondere Form des neuronalen Netzes, das sich von einfachen Feed-Forward-Netzen darin unterscheidet, dass Neuronen der gleichen Schicht oder unterschiedlicher Schichten rückgekoppelt sind. Dadurch sind diese neuronalen Netze der Neuronenverschaltung des menschlichen Gehirns ähnlicher. Mithilfe der Verschaltungen ist es möglich, aus einer Menge von Ausgangsdaten zeitlich codierte Informationen zu gewinnen.
Abhängig davon, wie die Neuronen rückgekoppelt sind, existieren verschiedene Arten rekurrenter neuronaler Netze. Das Training solcher Netze ist komplexer und kann den Einsatz besondere mathematischer Verfahren notwendig machen. Typische Anwendungsbereiche der rekurrenten neuronalen Netze sind Handschrifterkennung, Übersetzungen, Spracherkennung und die Vorhersage von Aktienkursen oder dem Wetter.
Abhängig von der Art der Rückkopplung lassen sich vier grundsätzliche Typen rekurrenter neuronaler Netze unterscheiden:
- Direct-Feedback-Netze (direkte Rückkopplungen)
- Indirect-Feedback-Netze (indirekte Rückkopplungen)
- Lateral-Feedback-Netze (seitliche Rückkopplungen)
- Complete-Feedback-Netze (vollständige Rückkopplungen)
Bei Direct-Feedback-Netzen ist der Ausgang eines Neurons ein weiterer Eingang des gleichen Neurons. Netze mit indirekten Rückkopplungen verbinden den Ausgang eines Neurons mit einem Eingang eines Neurons einer vorherigen Schicht. Eine seitliche Rückkopplung stellt eine Verbindung eines Ausgangs eines Neurons mit dem Eingang eines Neurons der gleichen Schicht dar. In Complete-Feedback-Netzen sind alle Neuronenausgänge vollständig mit allen anderen Neuronen verbunden. Es entsteht eine Totalvermaschung der Neuronen.
Was ist LSTM?
Long short-term memory (langes Kurzzeitgedächtnis) ist eine Technik, die zur Verbesserung der Entwicklung von künstlicher Intelligenz wesentlich beigetragen hat.
Beim Trainieren von künstlichen neuronalen Netzen werden Verfahren des Fehlersignalabstiegs genutzt, die man sich wie die Suche eines Bergsteigers nach dem tiefsten Tal vorstellen kann. Bei mehreren vertiefenden Schichten kann dies zu kurz greifen, so wie ein vergesslicher Bergsteiger beim Abstieg im ersten besten Tal landet und sein Dorf in einem tieferen Tal nicht finden kann. Das LSTM-Verfahren löst dieses Problem, indem es für eine LSTM-Zelle zur besseren Erinnerung drei Torsorten verwendet: Ein Eingangstor (Input Gate), ein Merk- und Vergesstor (Forget Gate) und ein Ausgangstor (Output Gate). LSTM ermöglicht auf diese Weise im Gegensatz zu herkömmlichen rekurrenten neuronalen Netzen eine Art Erinnerung an frühere Erfahrungen: Ein Kurzzeitgedächtnis, das lange anhält.
Was kann man für Generatives Deep Learning verwenden?
Deep Dream, Style Transfer von Bilddaten und Generative Adversarial Networks.
Was ist Deep Dream?
DeepDream ist eine Software des Google-Mitarbeiters Alexander Mordvintsev aus dem Bereich Computer Vision, die auf dem Prinzip eines künstlichen neuronalen Netzes basiert. Dabei wird ein Convolutional Neural Network, das eigentlich der Erkennung und Klassifizierung von Inhalten in Bildern dient, zur Veränderung des eingegebenen Bildes verwendet, wobei Strukturen in das Bild eingefügt werden, die beispielsweise Hunden oder Gebäuden ähnlich sehen. Da die Ergebnisse an das Erkennen von Gesichtern oder Tieren in Wolken erinnert, wird dieser Prozess in den Medien gerne „das Träumen eines Computers“ genannt.
Um solche Bilder zu erzeugen, wird zuerst ein neuronales Netz anhand von Beispielbildern so trainiert, dass es die in diesem Datensatz abgebildeten Objekte richtig erkennt. Dabei werden die Parameter des Netzes festgelegt. Anstatt mit diesem Netz nun Bilder zu klassifizieren, verändert DeepDream ein eingegebenes Bild so, dass ausgewählte Teile des Netzes besonders stark aktiviert werden. Der ursprüngliche Lernprozess wird jetzt quasi umgedreht: Hat man vorher Bilder von Hunden gehabt und die Parameter des Netzes so abgeändert, dass die Antwort für diese Eingangsdaten ""Hund"" ergibt, nimmt man jetzt ein beliebiges Bild und lässt die Software das Bild so abändern, dass als Antwort des Netzes ""Hund"" herauskommt. Dies ist jedoch eine grobe Vereinfachung, denn man kann nicht nur eine hohe Aktivierung bestimmter Ausgangsneuronen fordern, deren Antwort menschlich interpretierbar ist, sondern auch für verdeckte Schichten. Für diese ist meist nicht bekannt, welche Bildinhalte für eine hohe Aktivierung sorgen. Dies ist auch stark abhängig davon, mit welchen Bildern das Netz ursprünglich trainiert wurde. Mithilfe von DeepDream kann man dies jedoch visualisieren. Werden beispielsweise hohe Aktivierungen in Teilen der oberen Schichten des Netzes gefordert, sieht man im resultierenden Bild eher simplere Muster aus Kanten und Linien, da diese Teile des Netzes auf einfache Strukturen ansprechen. In tieferen Schichten werden dann komplexere Strukturen erkannt, weshalb in den resultierenden Bildern jene Objekte erkennbar werden, mit denen das Netz trainiert wurde.
Was ist ein Style Transfer von Bilddaten?
Neuronaler Stiltransfer (NST) bezeichnet eine Klasse von Softwarealgorithmen, mit denen digitale Bilder oder Videos bearbeitet werden, um das Erscheinungsbild oder den visuellen Stil eines anderen Bildes zu übernehmen. NST-Algorithmen zeichnen sich durch die Verwendung von tiefen neuronalen Netzen aus, um die Bildtransformation durchzuführen. Übliche Verwendungszwecke für NST sind die Schaffung künstlicher Kunstwerke aus Fotografien, beispielsweise durch Übertragung des Erscheinungsbilds berühmter Gemälde auf vom Benutzer bereitgestellte Fotografien. Einige bemerkenswerte mobile Apps verwenden zu diesem Zweck NST-Techniken, darunter DeepArt und Prisma.
Was sind Generative Adversarial Networks?
"Generative Adversarial Networks bestehen aus zwei künstlichen neuronalen Netzwerken, die ein Nullsummenspiel durchführen. Eines davon erstellt Kandidaten (der Generator), das zweite neuronale Netzwerk bewertet die Kandidaten (der Diskriminator). Typischerweise bildet der Generator von einem Vektor aus latenten Variablen auf den gewünschten Ergebnisraum ab. Das Ziel des Generators ist es zu lernen, Ergebnisse nach einer bestimmten Verteilung zu erzeugen. Der Diskriminator wird hingegen darauf trainiert, die Ergebnisse des Generators von den Daten aus der echten, vorgegebenen Verteilung zu unterscheiden. Die Zielfunktion des Generators besteht dann darin, Ergebnisse zu erzeugen, die der Diskriminator nicht unterscheiden kann. Dadurch soll sich die erzeugte Verteilung nach und nach der echten Verteilung angleichen.
GAN wurden unter anderem zur Erstellung photorealistischer Bilder zur Visualisierung verschiedener Gegenstände, zur Modellierung von Bewegungsmustern in Videos, zur Erstellung von 3D-Modellen von Objekten aus 2D-Bildern und zur Bildbearbeitung astronomischer Bilder verwendet. GANs werden auch zur natürlichen Gestaltung der Nutzerinteraktion mit Chatbots verwendet."
Was ist Deep Reinforcement Learning?
Deep-Reinforcement-Learning (DRL) verwendet Deep-Learning- und Reinforcement-Learning-Prinzipien, um effiziente Algorithmen zu erstellen, die auf Bereiche wie Robotik, Videospiele, Finanzen und Gesundheitswesen angewendet werden können. Durch die Implementierung einer Deep-Learning-Architektur (tiefe neuronale Netze usw.) mit Verstärkungslernalgorithmen (Q-Learning, Schauspieler-Kritiker usw.) kann ein leistungsfähiges Modell (DRL) erstellt werden, das in der Lage ist, auf zuvor unlösbare Probleme zu skalieren. Dies liegt daran, dass DRL normalerweise rohe Sensor- oder Bildsignale als Eingabe verwendet und den Vorteil von End-to-End-Verstärkungslernen sowie den Vorteil von Faltungs-Neuronalen Netzen erhalten kann.
Was ist Backpropagation?
Backpropagation ist ein verbreitetes Verfahren für das Einlernen von künstlichen neuronalen Netzen. Es gehört zur Gruppe der überwachten Lernverfahren. Dazu muss ein externer Lehrer existieren, der zu jedem Zeitpunkt der Eingabe die gewünschte Ausgabe, den Zielwert, kennt. Die Rückwärtspropagierung ist ein Spezialfall eines allgemeinen Gradientenverfahrens in der Optimierung, basierend auf dem mittleren quadratischen Fehler.
Der Backpropagation-Algorithmus läuft in folgenden Phasen:
- Ein Eingabemuster wird angelegt und vorwärts durch das Netz propagiert.
- Die Ausgabe des Netzes wird mit der gewünschten Ausgabe verglichen. Die Differenz der beiden Werte wird als Fehler des Netzes erachtet.
- Der Fehler wird nun wieder über die Ausgabe- zur Eingabeschicht zurück propagiert. Dabei werden die Gewichtungen der Neuronenverbindungen abhängig von ihrem Einfluss auf den Fehler geändert. Dies garantiert bei einem erneuten Anlegen der Eingabe eine Annäherung an die gewünschte Ausgabe.
Was ist Q-Learning?
"Q-Learning ist ein modellfreier Reinforcement Learning Algorithmus. Das Ziel von Q-Learning ist es, eine Richtlinie zu erlernen, die einem Agenten mitteilt, welche Maßnahmen unter welchen Umständen er ergreifen soll. Es erfordert kein Modell der Umgebung und kann Probleme mit stochastischen Übergängen (Übergangswahrscheinlichkeiten) und Belohnungen bewältigen, ohne dass Anpassungen erforderlich sind.
Für jeden endlichen Markov-Entscheidungsprozess (FMDP) findet Q-Learning eine Richtlinie, die in dem Sinne optimal ist, dass sie den erwarteten Wert der Gesamtbelohnung ausgehend vom aktuellen Status über alle aufeinander folgenden Schritte maximiert. Q-Learning kann eine optimale Strategie zur Auswahl von Maßnahmen für einen bestimmten FMDP, eine unbegrenzte Erkundungszeit und eine teilweise zufällige Strategie identifizieren. ""Q"" bezeichnet die Funktion, die die Belohnung zurückgibt, die zur Bereitstellung der Verstärkung verwendet wurde, und steht für die ""Qualität"" einer in einem bestimmten Zustand durchgeführten Aktion."
Was ist der Unterschied zwischen Bildklassifikation, Objekterkennung und Objektsegmentierung?
- Bildklassifizierung bezieht sich auf den Task, Informationsklassen aus einem Multiband-Raster-Bild zu extrahieren.
- Objekterkennung beschreibt Verfahren zum Identifizieren bekannter Objekte innerhalb eines Objektraums mittels optischer, akustischer oder anderer physikalischer Erkennungsverfahren.
- Die Erzeugung von inhaltlich zusammenhängenden Regionen durch Zusammenfassung benachbarter Pixel oder Voxel entsprechend einem bestimmten Homogenitätskriterium bezeichnet man als ObjektSegmentierung."
Nenne verschiedene Verfahren der Objekterkennung und -segmentierung.
- Pixelorientierte Verfahren --> Pixelorientierte Verfahren treffen für jeden einzelnen Bildpunkt die Entscheidung, ob er zu einem bestimmten Segment gehört oder nicht.
- Kantenorientierte Verfahren --> In diesen Verfahren wird im Bild nach Kanten oder Objektübergängen gesucht. Viele Algorithmen liefern noch keine geschlossenen Kantenzüge, diese müssen erst mit weiteren Verfahren zusammengefügt werden, damit sie Objekte einschließen.
- Regionenorientierte Verfahren --> Die regionenorientierten Verfahren betrachten Punktmengen als Gesamtheit und versuchen dadurch zusammenhängende Objekte zu finden.
- Texturorientierte Verfahren --> Manche Bildobjekte besitzen keine einheitliche Farbe, sondern eine einheitliche Textur. Beispielsweise kann ein Objekt Rillen besitzen, die dann in der Fotografie als abwechselnde Streifen dunkler und heller Farbe erscheinen.
- Modellbasierte Verfahren --> Hierbei wird ein Modell der gesuchten Objekte zugrunde gelegt. Dies kann beispielsweise die Form betreffen. Man setzt also Wissen über das Bild mit ein. "
Was ist Interpretability und Explainability?
"Bei der Interpretierbarkeit geht es darum, inwieweit eine Ursache und Wirkung innerhalb eines Systems beobachtet werden kann. Oder anders ausgedrückt: Inwieweit können Sie vorhersagen, was bei einer Änderung der Eingabe oder der algorithmischen Parameter passieren wird? Ich kann mir einen Algorithmus ansehen und sehen, was hier passiert.
Erklärbarkeit hingegen ist das Ausmaß, in dem die interne Mechanik einer Maschine oder eines Deep-Learning-Systems in menschlichen Begriffen erklärt werden kann. Es ist leicht, den subtilen Unterschied bei der Interpretierbarkeit zu übersehen, aber denken Sie daran: Interpretierbarkeit bedeutet, die Mechanik erkennen zu können, ohne unbedingt zu wissen, warum. Erklärbarkeit heißt, buchstäblich erklären zu können, was passiert.
Stellen Sie sich das so vor: Sagen Sie, Sie machen in der Schule ein wissenschaftliches Experiment. Das Experiment ist möglicherweise interpretierbar, sofern Sie sehen können, was Sie gerade tun. Es ist jedoch nur dann wirklich erklärbar, wenn Sie sich mit der Chemie befassen, die hinter dem steht, was Sie sehen können."
Was ist ein Markov'sche Entscheidungsprozess?
Markovsche Entscheidungprozesse ind zustandsdiskrete stochastische Prozesse, bei denen in Zuständen Entscheidungen getroffen werden können, so dass das zukünftige Verhalten vom aktuellen Prozesszustand und der getroffenen Entscheidung abhängt, nicht aber von der Vergangenheit. Das Verhalten ist stochastisch und wird durch Zustandsübergangswahrscheinlichkeiten oder -raten beschrieben. Jede Entscheidung ist mit zustands- und entscheidungsabhängigen Kosten bewertet. Ziel der Optimierung ist die Bestimmung einer optimalen Politik (d.h. Sequenz von Entscheidungen), die den Erwartungswert der Kosten oder abgezinsten Kosten für einen vorgegebenen Zeithorizont minimiert.
Ein MEP liegt vor, wenn ein Roboter durch ein Labyrinth zu einem Ziel navigieren muss. Dabei ist die Menge der Zustände die Menge der Positionen des Roboters und die Aktionen sind die möglichen Richtungen, in die sich der Roboter bewegen kann.
Was ist OpenAI Gym?
OpenAI ist ein Unternehmen, welches sich, kontrolliert durch die Non-Profit-Organisation OpenAI Inc, mit der Erforschung von künstlicher Intelligenz beschäftigt. Das Ziel von OpenAI ist, künstliche Intelligenz auf Open-Source-Basis auf eine Art und Weise zu entwickeln und zu vermarkten, dass sie der Gesellschaft Vorteile bringt und nicht schadet.
Ab 2016 hat OpenAI ihre Plattform „OpenAI Gym“ entwickelt, die sich mit Reinforcement Learning befasst. Dabei wird angestrebt ein Basissystem anzubieten, das leicht aufzusetzen ist und eine große Bandbreite an verschiedenen Entwicklungsumgebungen unterstützt. OpenAI Gym versucht damit eine Standardisierung für die Veröffentlichung von Ergebnissen in der Erforschung von künstlicher Intelligenz anzubieten, um Publikationen leichter vergleichen und reproduzieren zu können.
Beschreibe die Elemente des Reinforcement Learning (Reward, Agent, Environment, Actions, Observations).
Reinforcement Learning ist der Zweig des maschinellen Lernens, bei dem es um das Treffen von Entscheidungssequenzen geht. Es wird davon ausgegangen, dass sich ein "Agent" in einer Umgebung ("Environment") befindet. Bei jedem Schritt ergreift der Agent eine "Aktion" und erhält eine Beobachtung ("Observation") und Belohnung ("Reward") von der Umgebung. Ein RL-Algorithmus zielt darauf ab, die Gesamtbelohnung des Agenten in einer zuvor unbekannten Umgebung durch einen Lernprozess zu maximieren, der normalerweise viel Ausprobieren beinhaltet.
Wie ist das scheiss AngryMirror Projekt aufgebaut?
Backend:
- Mit Backend/getphoto.py wurden von jeder Person Gesichter aufgenommen und in Backend/output/person abgelegt.
- Backend/train_tripletloss.py trainiert die Support Vector Machine auf die Gesichter
- Backend/realtime_face_and_emotion_recognition.py startet die Face Detection, Recognition und Emotion Detection
Frontend:
- Verarbeitung der ZeroMQ-Nachrichten ist im MagicMirror/modules/compliments/node_helper.js
- Interaktion mit anderen Modulen ist in MagicMirror/modules/compliments/compliments.js implementiert.
- Beispielnachrichten können mit MagicMirror/modules/compliments/send_example.py verschickt werden.
- zum Start im MagicMirror-Verzeichnis "npm install && npm start" ausführen.
Module:
- Spotify
- Kalender eintrag
- Youtube Video
- Comic