Answer to Question 1-1
Zwei Herausforderungen bei der Modellierung der Perzeption von Text sind:

1. **Individualität und Kontextabhängigkeit**: Jeder Leser versteht Text auf seine eigene Weise, je nach ihrem Hintergrundwissen, Erfahrung und Kontext, in dem sie den Text lesen. Zum Beispiel kann die gleiche Botschaft in einem Roman unterschiedlich interpretiert werden, je nachdem, ob der Leser bereits vorherige Informationen über die Charaktere oder die Handlung hat.

2. **Multimodalität**: Texte können mit anderen Medien wie Grafiken, Schriftarten, Farben und sogar tonalen Eigenschaften des geschriebenen Textes (z.B. durch Unterstreichungen oder Fettdruck) kombiniert sein, was die Perzeption komplexer macht. Ein Beispiel hierfür ist eine Online-Nachricht, in der ein wichtiger Punkt hervorgehoben wird, indem er fettgedruckt ist; die Wahrnehmung dieses Punkts könnte durch diese visuelle Markierung verstärkt werden.

Diese Herausforderungen erfordern komplexe Modelle, die nicht nur den reinen Textinhalt berücksichtigen, sondern auch die individuellen Leserattribute und den Kontext sowie die multimodalen Aspekte des Textes.





****************************************************************************************
****************************************************************************************




Answer to Question 1-2
a) Das N-Gramm-Sprachmodell basiert auf der Annahme, dass die Wahrscheinlichkeit eines Wortes im Kontext der vorhergehenden n-1 Wörter bestimmt wird. Es geht davon aus, dass es eine statistische Regularität in der Weise ausgedrückt wird, wie Wörter in einer Sprache nebeneinander auftreten.

b) In einem Tri-Gramm-Sprachmodell betrachtet man die Wahrscheinlichkeit eines Wortes im Kontext der beiden vorhergehenden Wörter. Die Wahrscheinlichkeitsgleichung für den Satz "This is the exam of Advanced AI" würde wie folgt aussehen:

P("exam"| "this", "is") * P("Advanced"| "exam", "the") * P("AI"| "Advanced", "of")

Die tatsächliche Zahl oder Wahrscheinlichkeit jedes einzelnen Elements würde durch die Anzahl der Auftretensfrequenzen in einem trainierten Modell berechnet werden.





****************************************************************************************
****************************************************************************************




Answer to Question 1-3
a) Der Prozess zur Erstellung eines BPE-Vokabulars mit einer Größe von 15 aus den Sätzen "I study in KIT. I like AI and NLP." würde wie folgt ablaufen:

1. Zunächst werden alle Wörter und Trennzeichen ohne Beachtung der Groß- und Kleinschreibung erfasst.
2. Die häufigsten Byte-Paar-Kombinationen (eine Sequenz von zwei Bytes) werden gezählt, bis eine Größe von 15 erreicht wird. Diese Kombinationen bilden das BPE-Vokabular.

Beispielvokabular: 
['I', ' ', 's', 't', 'u', 'd', 'y', 'i', 'n', 'K', 'I', 'T', '.', 'A', 'I', 'N', 'L', 'P']

b) Verwenden des generierten BPE-Vokabulars zum Tokenisieren des Satzes "I like KIT.":

1. Zunächst wird der Satz in Wörter ohne Beachtung der Groß- und Kleinschreibung aufgeteilt.
2. Jedes Wort wird in seine Byte-Paar-Kombinationen unterteilt, wobei die im Vokabular enthaltenen Kombinationen verwendet werden.

Tokenisierung des Satzes "I like KIT.":
['I', ' ', 'l', 'i', 'k', 'e', 'K', 'I', 'T']





****************************************************************************************
****************************************************************************************




Answer to Question 1-4
a) Die BILOU-Kennzeichnung für den Satz wäre wie folgt:

B-University: When I study at B-Karlsruhe Institute of Technology, my favorite course was B-Course Advanced Artificial Intelligence organized by B-Lab ISL, B-Lab AI4LT, and B-Lab H2T labs.

In dieser Sequenz werden die Entitäten als Begin (B), Inner (I) oder Last (L) gekennzeichnet. Da es keine Overlapping-Entitäten gibt und jede Entität nur einmal vorkommt, sind alle Entitäten entweder Beginnen oder Letzter in ihrer jeweiligen Kategorie.

b) Das Sequenzkennzeichnungsmodell würde insgesamt 5 Klassen haben: eine Klasse für jedes der fünf Label (B-University, I-University, B-Course, B-Lab, I-Lab). Die Klassen "L-University", "L-Course" und "L-Lab" sind nicht erforderlich, da jede Entität nur einen Beginn oder Endpunkt hat.





****************************************************************************************
****************************************************************************************




Answer to Question 2-1
a) Ein Trainingsbeispiel für CBOW würde wie folgt aussehen: Wir wählen ein Wort als "Zielwort" und betrachten die Wörter in einem Fenster von 2 Wörtern vor und nach dem Zielwort. Angenommen, wir verwenden das Wort "smarter" als Zielwort, dann wäre der Kontext (oder umgebende Wörter) "Human", "than", "large" und "language". Das CBOW-Modell würde versuchen, das Zielwort zu predictieren, wenn es die Kontextwörter sieht.

Ein Trainingsbeispiel für Skip-Gram wäre entgegengesetzt: Hier würden wir das Zielwort verwenden und versuchen, die umgebenden Wörter vorherzusagen. Im Falle des Wortes "smarter", würde das Modell versuchen, die Wörter "Human", "than", "large" und "language" zu predictieren, wenn es an "smarter" denkt.

b) Die Herausforderung beim Skip-Gram-Modell besteht darin, dass es für jedes Zielwort und jedes Kontextwort eine separate Vorhersage-Musterlernungsaufgabe gibt. Dies führt zu einer sehr großen Anzahl von Trainingsbeispielen, insbesondere wenn das Fenster groß ist oder wenn das Vokabular sehr umfangreich ist. Eine L\u00f6sung hierfür ist die Verwendung des "Hierarchischen Softmax" (auch bekannt als Huffman-Tree). Dabei wird ein binärer Baum aufgebaut, der die Wahrscheinlichkeit jedes Kontextwortes für ein bestimmtes Zielwort darstellt. Anstatt für jedes umgebende Wort eine Vorhersage zu machen, würde das Modell bei jeder Schicht des Baums entscheiden, ob es weiter nach oben oder in eine andere Richtung geht, bis es an den Endknoten (das Kontextwort) ankommt. Im Falle unseres Beispiels und dem Wort "smarter" als Zielwort, würde das Modell für jedes umgebende Wort den Weg durch den Baum finden, der zum jeweiligen Kontextwort führt.





****************************************************************************************
****************************************************************************************




Answer to Question 2-2
a) Das Problem bei diesem Modell besteht darin, dass der Encoder Teil des Transformerraufs ist, der die Information aus den Eingabezeichenfolgen extrahiert und diese dann für den Decoder in einem latenten Representation-Format bereitstellt. Indem man den Encoder durch Worteinbettungen ersetzt, wird dieser Prozess der信息的抽象和编码丢失。Worteinbettungen sind statische Vektoren, die nur eine bestimmte Bedeutung oder Kontext für jedes Wort bereitstellen, aber nicht die komplexen Abhängigkeiten und Strukturen zwischen Wörtern in einem Satz berücksichtigen. Ohne den Encoder, der diese Abhängigkeiten durch self-Attention erfasst, wird der Decoder möglicherweise wichtige Kontextinformationen verpassen und somit fehlerhafte Übersetzungen produzieren.

b) Ein Beispiel für zwei Sätze, die definitiv falsch übersetzt werden könnten, wäre:

Original: "Ich habe gestern eine Party besucht."
Falsche Übersetzung: "I visited a party yesterday."

Original: "Ich bin gestern zur Schule gegangen und habe eine Party besucht."
Falsche Übersetzung: "I went to school yesterday and attended a meeting."

In diesen Beispielen könnte der fehlende Encoder nicht in der Lage sein, den Kontext zu verstehen, dass "Party" im ersten Satz ein separates Ereignis ist und im zweiten Satz Teil des Schulbesuchs war. Ohne die richtige Verarbeitung von Abhängigkeiten zwischen Wörtern würde der Decoder möglicherweise die Bedeutung falsch interpretieren.





****************************************************************************************
****************************************************************************************




Answer to Question 2-3
a) Die Trainingsstrategie, die wav2vec2.0 implementiert, um kontextbezogene Darstellungen zu fördern, heißt "Masked Language Modeling" (MLM). Dabei werden zufällig ausgewählte Teile des Audiosignals (meist einzelne oder kleine Abschnitte von Zeitpunkten) maskiert oder entfernt. Das Modell muss dann diese fehlenden Abschnitte vorhersehen, wodurch es lernt, kontextuelle Informationen aus den verbleibenden Daten abzuleiten. Der kontrastive Fehler spielt hierbei eine Rolle, da er dazu beiträgt, die Latentrepräsentationen (Z) des Feature-Encoders so zu gestalten, dass sie für das korrekte Vorhersagen der maskierten Abschnitte nützlich sind.

b) Neben dem kontrastiven Fehler gibt es noch eine weitere Verlustfunktion im Vortrainingsprozess von wav2vec2.0, die "Contrastive Predictive Coding" (CPC) genannt wird. Diese Verlustfunktion dient dazu, den Kontext-Encoder zu trainieren, um fortlaufende Sequenzen von Latentrepräsentationen (Z) vorherzusagen, anstatt einzelne maskierte Werte wie bei MLM. Die Notwendigkeit dieser Verlustfunktion liegt darin, dass sie das Modell ermutigt, die kontinuierliche Zeitabhängigkeit im Sprachsignal zu erfassen und so eine bessere understanding der fluessenden Sprache zu ermöglichen. CPC trägt dazu bei, die räumliche Abhängigkeit zwischen den Tonen und Silben in der Sprache zu erlernen, was für eine effektive Verarbeitung von kontextuellen Informationen entscheidend ist.





****************************************************************************************
****************************************************************************************




Answer to Question 3-1
Ja, ich würde meinem Freund zustimmen. Ein bidirektionales Modell kann nützlich sein, da es beide Richtungen einer Sequenz berücksichtigt: von links nach rechts und von rechts nach links. In der Texterzeugung aus Bildern könnte dies bedeuten, dass das Modell Details sowohl vom Anfang als auch vom Ende des zu generierenden Textes berücksichtigen kann. Dies kann die Kontextualisierung verbessern und somit die Qualität der generierten Beschreibungen erhöhen, da es Informationen aus beiden Richtungen nutzen kann. Ein unidirektionales Modell hingegen würde nur eine Richtung berücksichtigen, was möglicherweise zu einem geringeren Verständnis des Gesamtkontextes führen könnte.





****************************************************************************************
****************************************************************************************




Answer to Question 3-2
Um Wörter außerhalb des Vokabulars in einem Encoder-Decoder-Modell für maschinelle Übersetzung zu behandeln, könnte man eine Methode wie den "Out-of-Vocabulary (OOV)-Wortbehandlung" verwenden. Eine gängige Technik ist das Einführen von "Unkown Word Tokens" oder "Special Tokens", die speziell für unbekannte Wörter reserviert sind. Diese Token repräsentieren die Abwesenheit eines bestimmten Wortes im Vokabular.

Wenn ein Wort im Eingabesatz nicht im Vokabular enthalten ist, wird es durch das Unkown Word Token ersetzt. Das Modell lernt dann, wie solche Wörter im Kontext des Satzes interpretiert werden können. Allerdings kann dies zu folgendem Problem führen:

Potenzielles Problem: Verlust von Semantik und Genauigkeit
Da unbekannte Wörter durch ein einzelnes Token ersetzt werden, kann das Modell den spezifischen Kontext oder die Bedeutung des fehlenden Wortes nicht erfassen. Dies führt oft zu einer Verminderung der Übersetzungsgenauigkeit, besonders wenn bestimmte Wörter im Zielsprachkorpus häufiger vorkommen oder eine wichtige Bedeutung für den Satz haben.





****************************************************************************************
****************************************************************************************




Answer to Question 3-3
a) Multi-Head in der self-attention bezieht sich darauf, dass die self-attention mehrmals mit verschiedenen linear transformierten Versionen des Eingabesignales durchgeführt wird. Jeder Head kann eine spezifische Abhängigkeit oder Struktur in den Daten erfassen, und die Ergebnisse aller Heads werden dann kombiniert, um eine umfassendere Verständnis der Sequenz zu liefern. Dies ist wichtig, weil es dem Modell ermöglicht, verschiedene Aspekte der Informationen in der Sequenz parallel und unabhängig voneinander zu verarbeiten.

b) Aufgrund der fehlenden Padding-Informationen und der Tatsache, dass wir nur die Gewichtsmatrix der self-attention im Decoder betrachten, würde ich die maskierten Gewichte mit "X" kennzeichnen, wenn es Elemente gibt, die nicht angenommen werden sollen. Im Allgemeinen passiert dies, wenn eine Query-Position versucht, auf einen Key in einer nachfolgenden Position zu verweisen, die bereits im Decoder ausgelassen wurde (daher ist der Key-Wert für diese Position nicht mehr verfügbar). Da keine konkrete Tabelle gegeben ist, kann ich hier keine spezifische Zeile oder Spalte bezeichnen. Im Allgemeinen würde man jedoch eine Maske erstellen, die die Diagonalen und alle Positionen rechts davon in der Gewichtsmatrix als "X" markiert, um den Zugriff auf zukünftige Elemente zu verhindern.





****************************************************************************************
****************************************************************************************




Answer to Question 3-4
a) Die Konfusionsmatrix zeigt die Anzahl der korrekten und fehlerhaften Vorhersagen für jede Klasse. Hier sind die Ergebnisse:

|          | Vorhersage 1 (Klasse 1) | Vorhersage 2 (Klasse 2) |
|----------|------------------------|-------------------------|
| Wirklich 1 (Klasse 1) | True Positive (TP)     | False Negative (FN)      |
| Wirklich 2 (Klasse 2) | False Positive (FP)    | True Negative (TN)       |

b) Die Gleichungen für Präzision und Recall sind:
- Präzision = TP / (TP + FP)
- Recall = TP / (TP + FN)

c) Ein Beispiel zur Verzerrung bei ausschließlicher Verwendung der Präzision könnte sein, dass das Modell hauptsächlich positive Beispiele vorhersagt, um eine hohe Präzision zu erreichen. Wenn es jedoch viele negative Beispiele gibt, die als positiv falsch klassifiziert werden, kann das Modell trotz hoher Präzision nicht gut auf die gesamte Datensatzrepräsentation reagieren.

Ein Beispiel zur Verzerrung bei ausschließlicher Verwendung des Recalls könnte sein, dass das Modell sehr empfindlich auf positive Beispiele reagiert und versucht, alle positiven Beispiele zu finden. Dies kann zu einer hohen Anzahl von False Positives führen, was bedeutet, dass es auch viele negative Beispiele als positive falsch klassifiziert. In diesem Fall hat das Modell einen hohen Recall, aber eine niedrige Präzision, da es viele falsche Vorhersagen enthält.





****************************************************************************************
****************************************************************************************




Answer to Question 4-1
Um die Faltung der beiden kontinuierlichen Funktionen $g(t)$ und $h(t)$ grafisch zu bestimmen, müssen wir zunächst beide Funktionen kennen. Leider sind in diesem Fall keine spezifischen Gleichungen oder Formen für $g(t)$ und $h(t)$ gegeben. Daher kann ich nicht direkt die Faltung berechnen.

In der Regel würde man jedoch folgende Schritte durchführen:

1. Überlagerung: Plotten Sie beide Funktionen $g(t)$ und $h(t)$ auf demselben Diagramm, wobei $h(t)$ entweder horizontal oder vertikal verschoben wird (je nachdem, ob die Faltung im Zeit- oder Frequenzbereich durchgeführt wird).

2. Integration: Die Faltung einer Funktion $f(t) = g(t) * h(t)$ entspricht der Integrale von $g(\tau)$ multipliziert mit $h(t - \tau)$ über alle $\tau$:

   $$ f(t) = \int_{-\infty}^{\infty} g(\tau) \cdot h(t - \tau) d\tau $$

3. Markieren relevante Punkte: In der Faltung werden die Maxima und Minima des resultierenden Signals $f(t)$ als wichtige Punkte betrachtet, da sie charakteristisch für die Interaktion von $g(t)$ und $h(t)$ sind.

Da keine konkreten Funktionen gegeben sind, kann ich Ihnen leider nicht direkt eine Abbildung der Faltung präsentieren. Wenn Sie mir jedoch die spezifischen Gleichungen oder Formen für $g(t)$ und $h(t)$ geben würden, könnte ich Ihnen bei der Berechnung helfen.





****************************************************************************************
****************************************************************************************




Answer to Question 4-2
Die diskrete Faltung von zwei Funktionen u[t] und v[t] wird berechnet, indem man jede Ausprägung von u[t] multipliziert mit der entsprechenden Ausprägung von v[t-shift], wobei der Shift für alle möglichen Werte von t durchlaufen wird. Die Faltung ist symmetrisch im Zeitbereich, deshalb müssen wir die Überlappungsbereiche berücksichtigen.

Die Funktionen sind wie folgt definiert:
u[t] = {1, 3, 0.5, 1, 0.5, 0, ...}
v[t] = {1, 2, 3, 0, ...}

Um die Faltung zu berechnen, müssen wir für jeden Zeitpunkt t die Multiplikationen von u[t] mit v[t-shift] für alle shift-Werte durchlaufen und die Ergebnisse addieren.

Die Berechnung der Faltung u*v erfolgt wie folgt:

u[0]*v[-1] = 0 (kein Wert für v[-1])
u[0]*v[0] = 1*1 = 1
u[3]*v[2] = 1*2 = 2
u[4]*v[3] = 0.5*3 = 1.5
u[1]*v[1] = 3*1 = 3
u[2]*v[2] = 0.5*2 = 1
u[3]*v[3] = 1*3 = 3
u[4]*v[4] = 0.5*3 = 1.5

Die Faltung u*v ist dann die Summe dieser Werte:
u[v] = {1, 3+2, 1+3+1.5, 0.5+1.5, 0, ...} = {1, 6, 5.5, 2, 0, ...}

Die Faltung u*v ist eine Funktion mit den Werten:
u[v] = {1, 6, 5.5, 2, 0, ...}





****************************************************************************************
****************************************************************************************




Answer to Question 4-3
a) Das Sampling-Theorem besagt, dass eine kontinuierliche Signalfrequenz f ohne Verluste in der digitalen Welt representiert werden kann, wenn diese Signalfrequenz mindestens zweimal so hoch ist wie die höchste frequenzbestimmende Komponente (Bandbreite) des Signals. Dies wird auch als Nyquist-Kriterium bezeichnet.

b) Wenn das Sampling-Theorem nicht eingehalten wird, tritt ein Phänomen auf, das als Aliasing bezeichnet wird. Dabei werden höhere Frequenzen irreversibel mit niedrigeren Frequenzen vermischt, da sie im digitalen Bereich nicht mehr unterscheidbar sind. Das kann zu Verzerrungen und Verlust von Informationen führen.

c) Eine Skizze zur Veranschaulichung des Aliasing könnte wie folgt aussehen: Man zeichnet eine sinusförmige Funktion f(t) mit einer bestimmten Frequenz (z.B. 10 Hz) in der Zeitdomäne. Unmittelbar daneben zeichnet man eine weitere Sinusfunktion mit höherer Frequenz (z.B. 40 Hz), die im Bereich des Sampling-Frequenzbereichs (z.B. 20 Hz) überlapt.

Die beiden Signale werden in der digitalen Welt als ein einzelnes Signal betrachtet, da sie innerhalb des Sampling-Rasters nicht mehr unterscheidbar sind. Die höhere Frequenz wird also auf eine niedrigere Frequenz "aliasing". In der Skizze würde man die beiden Sinuswellen zeichnen und durch das Sampling-Raster (eine Linie für jede Halbe Periode der Sampling-Frequenz) zeigen, wie sie im digitalen Bereich zusammenfallen.





****************************************************************************************
****************************************************************************************




Answer to Question 4-4
Um die Erkennungsgenauigkeit (ACC) zu berechnen, müssen wir zunächst den WER (Wortfehlerrate) zwischen der Referenzhypothese und der Hypothese berechnen. Der WER wird durch den Vergleich von Wörtern in beiden Sätzen bestimmt und gibt an, wie viele Wörter falsch oder ausgelassen wurden.

Die Referenzhypothese lautet: "I need to book a flight to New York for next week"
Die Hypothese lautet: "I need to cook light in Newark four next weeks"

Um den WER zu berechnen, vergleichen wir die Wörter und zählen die Fehler:

1. "book" wird zu "cook" (falsches Wort)
2. "flight" wird nicht gefunden (ausgelassen)
3. "to" wird nicht gefunden (ausgelassen)
4. "New York" wird zu "light in Newark" (falsche Wörter und Orte)
5. "for next week" wird zu "four next weeks" (falsches Wort und fehlende Bestimmtheit)

Insgesamt haben wir 6 Fehler: 1 ausgelassenes Wort, 2 falsche Worte und 3 Veränderungen von Wörtern oder Orten.

Der WER ist definiert als der Anteil der verglichenen Wörter, die fehlerhaft sind, geteilt durch den Gesamtzahl der Wörter in beiden Sätzen. Da beide Sätze insgesamt 10 Wörter enthalten und 6 Fehler vorliegen, ist der WER:

WER = 6 / 10 = 0.6

Die Erkennungsgenauigkeit ACC wird dann als 1-WER berechnet:

ACC = 1 - WER
ACC = 1 - 0.6
ACC = 0.4

Als Prozentzahl gerundet ergibt sich eine Erkennungsgenauigkeit von 40%.

Lösungsweg:
1. Vergleich der Referenzhypothese mit der Hypothese.
2. Zählen der Fehler: ausgelassene, falsche oder veränderte Wörter und Orte.
3. Berechnung des WER als Fehleranteil.
4. Berechnung von ACC als 1 minus WER.
5. Runden auf eine Prozentzahl.





****************************************************************************************
****************************************************************************************




Answer to Question 5-1
Eine Methode zur Bildsegmentierung, die für das Erkennen von Objektinstanzen in der Szene verwendet werden kann, ist die Region Growing. Diese Methode basiert auf dem Konzept, ähnliche Pixel in der Szene zusammenzufassen, um einzelne Objekte zu identifizieren.

Wie funktioniert die Region Growing-Methode:

1. Startpunkt: Der Prozess beginnt mit einem oder mehreren Seed-Pixeln, die manuell ausgewählt oder automatisch anhand von vorherigen Kenntnissen über das zu segmentierende Objekt bestimmt werden können.

2. Kriterien festlegen: Man legt bestimmte Kriterien für Farbe, Intensität, Textur oder Gradientenfest, die die Pixel erfüllen müssen, um als Teil des gleichen Objekts betrachtet zu werden.

3. Propagation: Die Methode propagiert dann die Segmente aus den Seed-Pixeln nach Nachbarn, indem sie die Kriterien auf diese überprüft. Wenn ein Nachbarpixel den festgelegten Kriterien entspricht, wird er dem aktuellen Segment hinzugefügt.

4. Verbinden von Segmenten: Wenn zwei oder mehr Segmente nahe genug aneinander liegen und ihre Pixelwerte innerhalb eines akzeptablen Bereichs fallen, werden sie zu einem größeren Segment zusammengefasst.

5. Iteration: Dieser Prozess wird fortgesetzt, bis keine weiteren Pixel den Kriterien entsprechen oder alle Pixel in einer Szene zugeordnet wurden.

6. Endgültige Segmentierung: Am Ende des Verfahrens erhalten wir eine Segmentierung der Szene, bei der jedes Objekt als separates Segment identifiziert ist.

In Anbetracht der RGB-D-Videos, die gegeben sind, kann Region Growing auch auf den Depth-Kanal (D) angewendet werden, um zusätzliche Informationen über die räumliche Struktur der Szene zu nutzen. Dies kann die Segmentierung verbessern, indem es hilft, Objekte von Hintergrund abzugrenzen und die 3D-Struktur der Szene berücksichtigt.

Es ist jedoch wichtig zu beachten, dass Region Growing möglicherweise nicht für alle Szenen geeignet ist. Andere Methoden wie das Segmentation durch Kontrastverstärkung (Canny Edge Detection), Markov Random Fields oder Deep Learning-basierte Segmentierungsmethoden (wie Instance Segmentation) könnten je nach Anforderungen und Komplexität der Aufgabe besser funktionieren.





****************************************************************************************
****************************************************************************************




Answer to Question 5-2
Der Störungskraftterm in der Formulierung von Dynamic Movement Primitives (DMPs) wird benötigt, um Flexibilität und Anpassungsfähigkeit bei der Ausführung einer Aktion zu ermöglichen. In unserem Fall des Wasser Einschenkens kann dieser Term helfen, unvorhergesehene Änderungen oder Störungen im System, wie zum Beispiel kleine Verschiebungen des Glases oder Veränderungen in der Gewichtsverteilung während des Schwenkens, zu kompensieren. Er ermöglicht es dem Roboter, die ursprüngliche Bewegungsabfolge angemessen anzupassen, um dennoch eine erfolgreiche Aktion auszuführen, auch wenn sich die Umgebungsbedingungen leicht ändern.





****************************************************************************************
****************************************************************************************




Answer to Question 5-3
Die Gleichung für die lokal gewichtete Regression mit radialen Basisfunktionen (LWR-RBF) zur Approximation des Störungskraftterms kann wie folgt ausgedrückt werden:

\[ f(x) = \sum_{i=1}^{N} w_i \cdot \phi(||x - c_i||; \sigma) \]

Hier sind die Variablen und Parameter definiert:

- \( N \): Anzahl der Trainingsdaten (Demonstrationen)
- \( x \): Ein neuer Eingabevektor, für den die Störungskraft approximiert werden soll
- \( w_i \): Gewichtsvektor des \( i \)-ten Trainingspunkts
- \( c_i \): Zentrum der \( i \)-ten RBF (entspricht dem Inputvektor des \( i \)-ten Trainingspunkts)
- \( \phi(\cdot; \sigma) \): Radiale Basisfunktion mit einer Standardeabweichung \( \sigma \)
- \( ||\cdot|| \): Abstandsnormierung, oft die euklidische Norm

Die RBF ist in der Regel definiert als:

\[ \phi(d; \sigma) = \exp(-\frac{d^2}{2\sigma^2}) \]

 Dabei ist \( d \) der Abstand zwischen dem neuen Eingabevektor \( x \) und dem Zentrum der RBF \( c_i \).

Die Gewichtsvektoren \( w_i \) werden normalerweise so gewichtet, dass die Nachbarschaft jedes Trainingspunkts in Bezug auf den aktuellen Inputvektor \( x \) berücksichtigt wird. Dies bedeutet, dass Punkte mit ähnlichen Eingabewerten im Vergleich zu \( x \) höhere Gewichte haben als solche mit sehr unterschiedlichen Werten.

Die Wahl von \( \sigma \) ist wichtig, da sie die Reichweite der RBF bestimmt und damit die Art und Weise beeinflusst, wie die Funktionen sich über den Trainingsdatensatz ausbreiten. Ein kleinerer \( \sigma \) führt zu einer stärker lokalisierten Approximation, während ein größerer \( \sigma \) eine smoother Überlagerung der RBFs erzeugt.

Insgesamt dient die LWR-RBF-Methode dazu, den Störungskraftterm für das Wasser Einschenken von den menschlichen Demonstrationen zu lernen und auf neue Eingaben anzuwenden.





****************************************************************************************
****************************************************************************************




Answer to Question 5-4
Ja, ein Dynamisches Movement Primitive (DMP) kann aus fünf menschlichen Demonstrationen für eine bestimmte Aktion wie das Einschenken von Wasser gelernt werden. DMPs sind probabilistische Modelle, die Bewegungen in Form von Atomen oder Primitives beschreiben und diese durch adaptive Regressionsprozesse aus mehreren Beispielen lernen können. In diesem Fall könnten die fünf RGB-D-Videos als Input genutzt werden, um den Roboter die Bewegungsabfolge des Einschenkens zu teachen.

Jedes Video würde dazu dienen, eine Demonstration der Aktion zu liefern, und die DMPs würden die kinematischen Merkmale wie Position, Geschwindigkeit und Acceleration aus diesen Beispielen extrahieren. Durch das Kombinieren dieser Informationen aus den fünf Demonstrationsvideos könnte ein robustes DMP-Modell entstehen, das die charakteristischen Aspekte der Aktion abbildet.

Die Lernphase des DMPs würde involve die Identifikation von Baselinemustern und die Gewichtung der Beziehung zwischen den räumlichen und temporalen Komponenten der Bewegung. Dabei werden die Demonstrationsdaten verwendet, um die Parameter des DMP-Modells zu optimieren, das dann in der Lage wäre, die Aktion nachzuvollziehen oder auszuführen.

Insgesamt ermöglicht das Vorhandensein von fünf Demonstrationen eine bessere Generalisierung und Robustheit des Lernalgorithmus, da er mehr Daten zur Verfügung hat, um mögliche Varianzen in der Art und Weise abzubilden, wie die Aktion ausgeführt wird.





****************************************************************************************
****************************************************************************************




Answer to Question 5-5
Ich w\u00e4hle das Bewegungsprimitiv "Path Following" (Pfadfolgen) um die demonstrierte Aktion zu modellieren. Dieses Primitiv ermöglicht es dem Roboter, einen vorgegebenen Pfad zu verfolgen, der hier speziell so entworfen werden kann, dass er das Hindernis umgeht. Der via-point wird als wichtiger Punkt innerhalb des Pfads eingeplant, an den der Roboter navigieren muss, während er die Aktion Wasser einschenken ausführt. Path Following ermöglicht es dem Robotersystem, flexible und komplexe Routen zu bewältigen, insbesondere wenn diese Routen durch menschliche Demonstrationen beeinflusst werden.

Um dies in die Lernprozesse des Roboters einzubauen, w\u00fcrdeten wir wahrscheinlich eine kombinierte Methode aus Imitationslernen (um die Demonstrationsdaten zu nutzen) und Planungsalgorithmen verwenden, um den optimalen Pfad inklusive des via-points zu generieren. Das Imitationslernen würde die menschlichen Trajektorien extrahieren und diese dann in eine Representation wie beispielsweise einen Kontrollpunkt-Netzwerk (CPN) oder einen dynamischen Programmierungsbaum (DPB) umwandeln. Diese Representationen können dann bei der Pfadplanung genutzt werden, um den via-point unter Berücksichtigung der Hindernisse und der ursprünglichen Demonstrationsdaten einzubauen.

Insgesamt ermöglicht das Bewegungsprimitiv Path Following eine flexible Anpassung an die Umgebung, während es den Roboter in der Lage keeps, die Aktion Wasser einschenken korrekt auszuführen und gleichzeitig ein Hindernis zu umgehen.





****************************************************************************************
****************************************************************************************




Answer to Question 5-6
Symbolische Architekturen basieren auf der Vorstellung, dass kognitive Prozesse durch Manipulation von symbolischen Strukturen in der Form von Bedeutungstragenden Einheiten (wie Wörtern, Konzepten oder Prädikaten) abgebildet werden. Diese Architekturen verwenden Regelbasierte Systeme und deduktive推理 to verarbeiten Informationen. Ein Beispiel für eine symbolische Architektur ist das Modell von Newell und Simon's "Shrunk" oder die kognitive Modellierung in der KI.

Emergente Architekturen, dagegen, entstehen aus den Interaktionen vieler einfachere Komponenten, wie Neuronen oder Agenten, ohne dass explizit symbolische Repräsentationen verwendet werden. Diese Architekturen basieren auf der Idee des Emergenz, bei dem komplexe Verhaltensweisen und kognitive Fähigkeiten aus den Regeln und Interaktionen einfacher Einheiten entstehen. Beispiele für emergente Architekturen sind neuronale Netze oder evolutionary algorithms.

Hybride Architekturen versuchen, die Stärken beider Ansätze zu vereinen. Sie integrieren symbolische Prozesse in emergente Systeme oder umgekehrt, um eine breitere Palette von kognitiven Fähigkeiten abzudecken. Eine hybride Architektur könnte zum Beispiel neuronale Netze verwenden, die mit symbolischen Prädikaten arbeiten oder emergente Verhaltensweisen durch symbolische Regeln beeinflusst werden. Dies ermöglicht es diesen Architekturen, sowohl bottom-up (durch den Aufbau aus einfachen Einheiten) als auch top-down (durch explizit formulierte Regeln und Informationen) zu arbeiten.





****************************************************************************************
****************************************************************************************




Answer to Question 5-7
a) Der durch $\alpha_i(t)$ gegebene Vergessen-Mechanismus basiert auf einem zeitbasierten Verfall (a). Parameter $\\beta_i$ beschreibt die Grundaktivierung eines Datums $i$, das bedeutet, wie aktiv das Datum im Gedächtnis ist, bevor es verblasst. Parameter $d$ hingegen bezieht sich auf die Varianz der Normalverteilung und entscheidet darüber, wie schnell das Aktivierungslevel des Datums abnimmt (der Zeitabfall).

b) Bei $t=3$ betrachten wir die Aktivierungen $\alpha_{i_1}$, $\alpha_{i_2}$ und $\alpha_{i_3}$ für die Daten $i_1$, $i_2$ und $i_3$. Da alle $\beta_i$ gleich sind, können wir ohne Verlust der Allgemeinheit annehmen, dass $\beta = 1$. Die Gleichungen lauten dann:

$$\alpha_{i_1}(t=3) = r_{i_1,0} + r_{i_1,1} + r_{i_1,2} \cdot \mathcal{N}(1, d)(3)$$
$$\alpha_{i_2}(t=3) = r_{i_2,0} + r_{i_2,1} + r_{i_2,2} \cdot \mathcal{N}(2, d)(3)$$
$$\alpha_{i_3}(t=3) = r_{i_3,0} + r_{i_3,2} \cdot \mathcal{N}(2, d)(3)$$

Da $r_{i,1}$ für alle Daten 1 ist (da sie zu $t=1$ hinzugefügt wurden), und $r_{i,0}$ für alle 0 ist (da das Gedächtnis initially leer war), reduzieren sich die Gleichungen auf:

$$\alpha_{i_1}(t=3) = 2 + \mathcal{N}(1, d)(3)$$
$$\alpha_{i_2}(t=3) = 2 + \mathcal{N}(2, d)(3)$$
$$\alpha_{i_3}(t=3) = \mathcal{N}(2, d)(3)$$

Da $\mathcal{N}(1, d)(3)$ und $\mathcal{N}(2, d)(3)$ Normalverteilungen mit Mittelwert 1 bzw. 2 sind, ist die Aktivierung von $i_3$ immer kleiner als die von $i_2$, da es nicht bei $t=1$ abgerufen wurde. Die Aktivierung von $i_1$ könnte größer oder kleiner sein als die von $i_2$, je nachdem, ob der Zufallswert in der Normalverteilung $\mathcal{N}(1, d)(3)$ näher bei 1 liegt (was eine höhere Aktivierung bedeutet) oder weiter entfernt ist. Ohne weitere Informationen über den Zufallsparameter können wir nicht bestimmen, ob $\alpha_{i_1}$ größer oder kleiner als $\alpha_{i_2}$ ist.

Zur Vereinfachung des Symbols $\\mathcal{N}$ für die Berechnung der Normalverteilung könnte man eine Tabellengenerierung verwenden, um die Werte der Verteilung zu berechnen, oder einen Computerprogramm wie MATLAB oder Python verwenden, um die Zufallszahlen aus der Verteilung abzurufen.





****************************************************************************************
****************************************************************************************




