Answer to Question 1-1
a) Falsch. One-Hot-Wortrepräsentationen sind eine Art, Wörter als eindeutige Bitmuster zu codieren, aber sie sind nicht geeignet für die Identifizierung von Synonymen, da sie keine semantischen Informationen enthalten.

b) Falsch. Die deutsche Sprache ist morphologisch reicher als die englische, da es in der deutschen Sprache viele flektierte Formen von Wörtern gibt, während englische Wörter im Allgemeinen weniger flektiert sind.

c) Falsch. In der Hierarchie der Sprache steht die Syntax auf einer höheren Ebene als die Semantik, da die Syntax die Regeln beschreibt, wie Wörter in Satze zusammengefügt werden, während die Semantik sich auf die Bedeutung der Wörter und Satze konzentriert.

d) Falsch. Word2Vec wird nicht anhand der globalen Worthäufigkeitsmatrix trainiert, sondern nutzt stattdessen den Kontext von Wörtern in Satzen (nächste/nachfolgende Wörter) zur Generierung von Wortvektoren.

e) Richtig. Byte-Pair-Encoding (BPE) segmentiert Wörter in Teilwörter, indem es häufigere Wörter als einzelne Einheiten behält und seltener vorkommende Wörter in Teilsegmente aufteilt, um Ressourcen effizienter zu nutzen.

f) Richtig. Conditional Random Fields (CRFs) ermöglichen eine einfachere Integration neuer Merkmale im Vergleich zu Hidden Markov Models (HMMs), da CRFs eine direktere Verknüpfung zwischen den Merkmalen und den Labeln ermöglicht, ohne die Notwendigkeit von independence assumptions wie bei HMMs.





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




Answer to Question 1-2
Zwei Gründe, warum dense Word Embeddings im NLP gegenüber spärlichen Merkmalen bevorzugt werden, sind:

1. **Dynamische Semantik**: Dense Word Embeddings können die semantischen Verbindungen zwischen Wörtern besser erfassen. Sie stellen eine kontinuierliche Vektorrepräsentation für jedes Wort bereit, die die Ähnlichkeit von Bedeutungen auf der Grundlage der räumlichen Nähe in diesem Vektorraum abbildet. Dies ermöglicht es dem Modell, die Bedeutung von Wörtern im Kontext zu verstehen und flexibler zu sein, da Änderungen im Kontext die Vektorposition beeinflussen können.

2. **Effizienz**: Dense Word Embeddings können oft effizienter verarbeitet werden als spärliche Merkmale, da sie weniger Speicher benötigen und schneller berechnet werden können. Spärliche Merkmale, die oft als one-hot-Encodings implementiert werden, können für jedes Wort eine große Anzahl von nicht-verwendeten Einträgen enthalten, was zu ineffizienten Speicher- und Rechenressourcen führt. Dense Vektoren nutzen die Ressourcen besser, indem sie nur relevante Informationen enthalten.





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




Answer to Question 1-3
a) Um Repräsentationen für die Produkte zu erstellen, die ähnliche Ideen wie beim Lernen von Wortrepräsentationen verwenden, würde ich ein Verfahren wie das Word2Vec-Modell anwenden. Hierbei werden die Produkte als Vektoren modelliert, die die relativen Häufigkeiten ihrer gemeinsamen Einkaufsverhalten widerspiegeln. Eine spezifische Methode zur Erstellung dieser Vektoren ist das CBOW (Continuous Bag of Words) oder das Skip-Gram-Modell. 

Für das CBOW-Modell würde ich die Co-Purchase-Matrix verwenden, um die Wahrscheinlichkeit vorherzusagen, dass ein Produkt $j$ in der Nähe von einem gegebenen Produkt $i$ (in der Matrix) auftaucht. Dazu würde ich für jedes Produkt $i$ die Summe der Vektoren aller Produkte $j$ in der Umgebung (z.B. in der Umkreis von einigen Spalten) berechnen. Diese Summe bildet dann die Repräsentation von Produkt $i$.

Für das Skip-Gram-Modell würde ich die Vektoren für Produkte $i$ trainieren, indem ich versuche, die Wahrscheinlichkeit vorherzusagen, dass Produkte $j$ in der Umgebung von $i$ auftreten, basierend auf der Repräsentation von $i$. Hier würde ich für jedes Produkt $i$ die Vektoren für alle Produkte $j$ in einer bestimmten Entfernung (z.B. in einer festgelegten Anzahl von Spalten) berechnen.

In beiden Fällen würde ich die Vektoren iterativ aktualisieren, um die Wahrscheinlichkeitsvorhersagen zu optimieren, bis die Modelle konvergieren.

b) Nachdem wir die Produktrepräsentationen erstellt haben, können wir Nutzern, die Interesse an einem bestimmten Produkt $p$ gezeigt haben, ähnliche Produkte empfehlen. Dazu vergleichen wir den Vektor von Produkt $p$ mit den Vektoren aller anderen Produkte in der Matrix. Wir berechnen den Cosinus-Winkel zwischen diesen Vektoren, der die Ähnlichkeit zwischen den Produkten misst. Produkte mit dem kleinsten Winkel (also der größten Ähnlichkeit) werden als ähnliche Produkte empfehlenswert angesehen.

Um die Empfehlungen zu präsentieren, wählen wir die Produkte mit den Top-$k$ kleinsten Winkeln aus, wobei $k$ die Anzahl der zu empfehlenden Produkte ist. Diese Empfehlungen können dann an den Benutzer weitergegeben werden, um ihm ähnliche Produkte vorzuschlagen, die er möglicherweise auch interessant finden könnte.





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




Answer to Question 1-4
a) Eine Eigenschaft von CNNs, die für die Spam-Erkennung von Vorteil ist, ist ihre Fähigkeit, lokale Muster in der Eingabe zu erkennen. CNNs verwenden Convolutional Layers, die Filter durchlaufen, um spezifische Merkmale in den Daten zu extrahieren. Diese Fähigkeit ist besonders nützlich, da es ermöglicht, Schlüsselwörter oder Mustern in E-Mails zu identifizieren, ohne die gesamte E-Mail als Einheit zu betrachten. Bei RNNs, die sequentiell die Daten verarbeiten, ist dies nicht so effizient, da sie sich auf die Verarbeitung der Reihenfolge der Wörter konzentrieren und nicht direkt auf lokale Strukturen abzielen.

b) Ein CNN-basiertes Modell für die Spam-Erkennung könnte wie folgt aussehen:
- Eingabe: Die E-Mail-Textdaten werden in Token aufgeteilt und zu einem Vektor oder einem Tensor transformiert, der die Bedeutung der Wörter oder Zeichen repräsentiert (z.B. durch ein Embedding). Die Größe der Feature-Map hängt von der Anzahl der Convolutional Layers und Filtern ab, die zum Extrahieren von Merkmalen verwendet werden. Angenommen, es gibt zwei Conv-Layers mit je 128 Filtern und einer Filtergröße von 3x3, die auf einen Eingabedatenblock von 100 Wörtern angewendet werden. Die erste Feature-Map wäre dann (100 - 2) x 128 = 98 x 128, und die zweite Feature-Map wäre (98 - 2) x 128 = 96 x 128.
- Zwischenoperationen: Nach den Convolutional Layers können Max-Pooling oder Average-Pooling Operationen verwendet werden, um die Dimensionen zu reduzieren und die Merkmale zu extrahieren. Danach kann ein Fully Connected Layer (Dense Layer) hinzugefügt werden, um die Merkmale zu klassifizieren.
- Ausgabe: Das Modell gibt eine Klassifizierung aus, die angibt, ob die E-Mail als Spam oder nicht-Spam betrachtet wird. Dies könnte eine einzelne Ausgabeneuronen mit einer Aktivierungsfunktion wie Softmax sein, die die Wahrscheinlichkeit für jede Klasse berechnet.

c) Eine alternative Metrik zur Klassifizierungsgenauigkeit, die Tom verwenden sollte, ist der F1-Score. Der F1-Score berücksichtigt sowohl die Präzision (Anteil der korrekt als Spam identifizierten E-Mails) als auch die Recall (Anteil der tatsächlich spammerischen E-Mails, die als Spam erkannt wurden). Dies ist nützlich, da es eine bessere Balance zwischen False Positives (nicht-spammerischen E-Mails, die als Spam markiert werden) und False Negatives (spammerischen E-Mails, die nicht erkannt werden) bietet. Insbesondere bei unbalanced Daten, wie hier der Fall, ist der F1-Score eine bessere Option als die Klassifizierungsgenauigkeit, da es auf die Leistung im Hinblick auf die unterrepräsentierte Klasse (hier: Spam) fokussiert.





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




Answer to Question 1-5
a) Das von Ihnen vorgeschlagene Modell könnte ein Transformer-basiertes Modell wie den Transformer-Encoder sein, da es keine RNNs enthält und eine effiziente parallele Verarbeitung ermöglicht. Die Eingabe des Modells wäre eine Sequenz von Token, die aus den medizinischen Dokumenten extrahiert wurden. Diese Token werden zu Vektoren mit Hilfe von vortrainierten Word Embeddings, wie zum Beispiel GloVe, transformiert. Die Zwischenoperationen beinhalten das Anpassen der Eingabevektoren durch das Addieren von Positionse嵌dings, um die Position der Wörter in der Sequenz zu berücksichtigen. Dann werden diese transformierten Vektoren durch die Multi-Head Self-Attention-Mechanismen des Encoders verarbeitet, bei dem jeder Head eine separate Abhängigkeit zwischen Wörtern in der Sequenz erfasst. Nachdem alle Heads die Verarbeitung abgeschlossen haben, werden ihre Ergebnisse kombiniert und durch ein Fully-Connected-Layer gefiltert, um die Ausgabe zu erzeugen. Die Ausgabe wäre eine Reihe von Klassenwahrscheinlichkeiten, die die Wahrscheinlichkeit beinhalten, dass ein bestimmter Token eine Krankheitsbezeichnung darstellt.

b) Eine Herausforderung des Einsatzes von vortrainierten Word Embeddings wie GloVe besteht darin, dass sie möglicherweise nicht speziell auf medizinische Terminologie und Kontext ausgebildet sind. Dies kann zu einer mangelnden Repräsentation von medizinisch spezifischen Begriffen führen, die in den Dokumenten vorkommen. Um dieses Problem zu lösen, kann man das Modell mit einem Schritt der prätrainierten Word Embeddings auf einem großen Korpus medizinischer Texte vorbereiten. Diese prätrainierten Embeddings können dann als Startpunkt für den fine-tuning-Prozess des endgültigen Modells verwendet werden, das speziell auf die Extraktion von Krankheitsbezeichnungen trainiert wird. Durch den fine-tuning-Prozess lernt das Modell die spezifischen Merkmale und Kontexte der medizinischen Daten besser zu verstehen und kann so die Repräsentation der Krankheitsbezeichnungen verbessern.





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




Answer to Question 2-1
a) Für das Unigramm-Modell berechnen wir die Wahrscheinlichkeit jedes Wortes basierend auf seinen Vorkommen im Korpus. Die Wahrscheinlichkeit für "there" ist $p(there) = \frac{count(there)}{N} = \frac{110}{10000}$ und die Wahrscheinlichkeit für "their" ist $p(their) = \frac{count(their)}{N} = \frac{50}{10000}$. 

Für Satz (1): "He saw their football in the park"
Da "their" korrekt ist, betrachten wir die Wahrscheinlichkeit des Satzes mit "their" und "there":
$p(He saw their football in the park) = p(He) * p(saw) * p(their) * p(football) * p(in) * p(the) * p(part)$
$p(He saw there football in the park) = p(He) * p(saw) * p(there) * p(football) * p(in) * p(the) * p(part)$

Da wir nur die Wahrscheinlichkeit von "their" und "there" ändern, vergleichen wir diese beiden Wörter:
$p(there) / p(their) = \frac{110/10000}{50/10000} = 2.2$

Das Modell würde also voraussagen, dass "there" die korrekte Schreibweise ist, was falsch wäre.

Für Satz (2): "He saw their was a football"
Analog zu Satz (1) vergleichen wir die Wahrscheinlichkeit von "their" und "there":
$p(He saw their was a football) = p(He) * p(saw) * p(their) * p(was) * p(a) * p(football)$
$p(He saw there was a football) = p(He) * p(saw) * p(there) * p(was) * p(a) * p(football)$

Hier wäre die Wahrscheinlichkeit für "there" höher als die für "their", also würde das Modell "there" voraussagen, was korrekt wäre.

Das Unigramm-Modell ist nicht eine gute Lösung, da es keine Informationen über Kontext oder Nachfolgerwörter berücksichtigt. Es basiert nur auf den einzelnen Wörtern und nicht auf der Kombination von Wörtern in einem Satz.

b) Das Bigram-Modell berücksichtigt die Wahrscheinlichkeit von Wortpaaren, was bedeutet, dass es den Kontext der Wörter berücksichtigt. Dies könnte besser sein, weil es die Wahrscheinlichkeit von "their" und "there" in Bezug auf das vorherige Wort berücksichtigt, was bei der Entscheidung zwischen diesen beiden Wörtern hilfreich sein könnte.

Ein Problem des Bigram-Modells in der Praxis ist, dass es viele fehlende Bigramme geben wird (d.h. es gibt keine Vorkommen von bestimmten Wortpaaren im Korpus). In solchen Fällen müssen Nachbarschaftswörter oder smoothing-Techniken verwendet werden, um die Wahrscheinlichkeit abzuschätzen. Außerdem kann das Modell sehr komplex werden, wenn es auf längeren Kontexten (wie Trigramme oder更大的n-grams) basiert, was zu mehr Rechenzeit und benötigter Speicher führt.





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




Answer to Question 2-2
a) Bei einer Maskierungsrate von 20% wird die Maske auf der Abbildung "figures/Mask_under_MLM.pdf" auf vier Wörter angewendet. Diese Wörter werden zufällig ausgewählt und durch [MASK] ersetzt. Die genauen Positionen sind nicht auf der Abbildung angegeben, aber sie können z.B. die Wörter $w_2$, $w_4$, $w_7$ und $w_{10}$ sein.

b) MLM benötigt in der Regel mehr Iterationen über die Trainingsdaten als CLM, da bei MLM die Wörter in der Sequenz sowohl vor als auch nach der Maske trainiert werden müssen, während bei CLM nur das Vorhersageverhalten des nächsten Wortes trainiert wird. CLM kann daher mit weniger Durchläufen die gleiche Leistung erzielen, da es sich auf die kontinuierliche Vorhersage der nächsten Wortposition konzentriert.

c) Bei MLM muss die Eingabesequenz nicht um eine Position nach rechts verschoben werden, weil es sich um eine autonome Methode handelt, bei der jedes Wort unabhängig von den vorherigen Wörtern trainiert wird. Im Gegensatz dazu muss bei CLM das Modell vorhersehen, wie das Wort nach dem Start-Token und den vorhandenen Wörtern folgt, was eine sequentielle Abhängigkeit erfordert.

d) PrefixLM ist oft leistungsfähiger als CLM, weil es die gesamte Präfixsequenz als Input nutzt, was zu einer besseren Kontextabhängigkeit führt. Das Modell lernt, die Kontextinformationen über die gesamte Sequenz hinweg zu verstehen, was bei CLM nur bis zum vorherigen Wort möglich ist. Auf der Abbildung "figures/Illustration_of_language_model_training.png" wird dies durch die Darstellung der trainierten Sequenzen dargestellt, bei denen bei PrefixLM der gesamte Prefix für die Vorhersage des nächsten Wortes verwendet wird, während bei CLM nur der vorherige Wortkontext verfügbar ist.





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




Answer to Question 2-3
a) Nein, die kontextuellen Embeddings für die beiden "left" im Satz werden unterschiedlich sein. Das liegt daran, dass das Positional Encoding in BERT-Architekturen eine wichtige Rolle spielt, um den Kontext der Wörter im Satz zu berücksichtigen. Ohne Positional Encoding kann das Modell nicht unterscheiden, ob "left" das erste oder das zweite Mal im Satz erscheint. Die Self-Attention-Mechanismus in BERT beruht auf der Verarbeitung von Queries, Keys und Values. Jede Token-Representation im Satz wird als Query, Key und Value verwendet, um mit anderen Token-Representations zu interagieren. Da die beiden "left" unterschiedliche Positionen im Satz einnehmen, würden sie ohne Positional Encoding in der Self-Attention dieselben Queries, Keys und Values haben, was zu einer Verwirrung führen würde, da das Modell nicht erkennen kann, dass sie in unterschiedlichen Kontexten vorkommen.

b) Ja, wir können das Skalarprodukt (dot-product) Attention verwenden, da die Dimensionen der Query und des Keys nicht unbedingt gleich sein müssen. Im Skalarprodukt Attention werden die Queries und Keys miteinander multipliziert, um die Attention-Weighting zu berechnen. Hier ist die Dimension der Query 1024 und die Dimension des Keys 512. Das Skalarprodukt kann berechnet werden, indem man die Query-Dimension auf die Key-Dimension abkoppelt (oder umgekehrt), indem man die Query-Dimension auf die Größe des Keys hochrechnet oder die Key-Dimension auf die Größe der Query hochrechnet. Dies führt zu einer geminderten Dimension für die Multiplikation, die dennoch eine gültige Attention-Score-Berechnung ermöglicht.

c) Das Positional Encoding in der Gleichung (1) ist eine spezielle Funktion, die für jede Position $i$ und jede Merkmalsdimension $d$ unterschiedliche Werte generiert. Die Sinus- und Kosinus-Funktionen sind periodisch und wechseln ihre Signale für jede Position $i$. Da verschiedene Dimensionen unterschiedliche Frequenzen haben (basierend auf $10000^{d/512}$), wird jedes Token an einer bestimmten Position mit einer einzigartigen Kombination von Sinus- und Kosinus-Werten versehen. Diese einzigartigen Signale ermöglichen es dem Modell, die Position jedes Tokens im Satz zu erkennen, ohne dass trainierbare Parameter erforderlich sind.

Um ein trainierbares Positional Encoding zu erhalten, könnte man einen zusätzlichen Layer hinzufügen, der die Positional-Embeddings mit trainierbaren Gewichten multipliziert oder addiert. Diese Gewichte könnten für jedes Token und jede Dimension initialisiert werden und während des Trainings angepasst werden. Auf diese Weise würde das Modell in der Lage sein, die Positionen im Satz nicht nur aufgrund ihrer relativen Position, sondern auch aufgrund von trainierten Merkmalen zu unterscheiden.





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




Answer to Question 2-4
a) Falsch. Greedy-Decoding benötigt in der Regel weniger Speicherplatz als Beam-Search, da es nur die beste Möglichkeit pro Schritt speichert, während Beam-Search mehrere mögliche Pfade parallel verfolgt.

b) Falsch. Bei Decoding können wir direkt ein Ensemble von Textgenerierungsmodellen mit verschiedenen Vokabularen verwenden, indem wir jedes Modell unabhängig auswerten und die Ausgabe kombinieren oder die Ergebnisse auf verschiedene Weise miteinander verbinden.

c) Richtig. Ohne Normalisierung der Satzwahrscheinlichkeit nach der Sequenzlänge werden kürzere Sequenzen bevorzugt, da ihre Wahrscheinlichkeiten direkt multipliziert werden und längere Sequenzen schnell zu geringeren Werten führen.

d) Richtig. Beim Top-k-Sampling führt ein höherer Wert von k dazu, dass mehr mögliche Wörter in Betracht gezogen werden, was zu einer größeren Vielfalt der generierten Ausgabe führt, da auch seltener vorkommende Wörter in den Kandidatenpool aufgenommen werden.





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




Answer to Question 2-5
Unter den gegebenen Umständen hat der unterschiedliche Wortlaut im Beispiel einen geringeren Einfluss auf den BLEU-Score als auf den COMET-Score. Der BLEU-Score ist ein maschinelles Lernverfahren, das die Übereinstimmung zwischen den gegebenen Übersetzungen und der Referenzübersetzung anhand von übereinstimmenden N-Grammen misst. Da System 1 und System 2 im obigen Beispiel nur einen minimalen Unterschied im Anredepräfix "Sie" und "du" aufweisen, die aber beide korrekt sind, wird der BLEU-Score für beide Systeme vermutlich sehr ähnlich sein.

Im Gegensatz dazu berücksichtigt COMET (Computational Metrics for Evaluation of Translation) auch semantische und stilistische Aspekte der Übersetzungen. Da die Anrede in der deutschen Kultur einen unterschiedlichen Ton und möglicherweise eine leicht unterschiedliche Bedeutung oder Empfindung ausdrückt (formaler vs. informeller), könnte COMET den Unterschied zwischen "Sie" und "du" als relevantere Kriterien betrachten und dementsprechend einen unterschiedlichen Score zuordnen.

Zusammenfassend würde der unterschiedliche Wortlaut im obigen Beispiel eher COMET als BLEU stark beeinflussen, da COMET eine umfassendere Bewertung der Übersetzungsfähigkeiten anstrebt, während BLEU primär auf der lexikalischen Übereinstimmung basiert.





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




Answer to Question 3-1
a) Direct Prompting erfordert die geringste Anzahl der trainierten Parameter, da es lediglich darum geht, die vorhandenen Large Language Model-Parameter zu verwenden, indem man es mit einer Prompt-Struktur anleitet. In-Context Learning liegt zwischen Direct Prompting und Promptless Finetuning, da es einige zusätzliche Eingabebeispiele benötigt, um den Kontext zu liefern, aber keine separaten trainierten Parameter. Promptless Finetuning erfordert die meisten trainierten Parameter, da das gesamte Modell angepasst wird, um spezifisch auf die Aufgabe zu reagieren.

b) Direct Prompting benötigt den geringsten Speicherbedarf für die Inferenz, da es nur die ursprünglichen Large Language Model-Parameter verwendet und keine zusätzlichen Parameter für die Anpassung enthält. In-Context Learning benötigt mehr Speicher, da es mehr Eingabebeispiele im Kontext beinhaltet, aber immer noch weniger als ein vollständig angepasstes Modell. Promptless Finetuning hat den höchsten Speicherbedarf, da es ein vollständig angepasstes Modell mit allen neuen trainierten Parametern verwendet.

c) Wenn nur 8 Eingabe-Ausgabe-Paare zur Verfügung stehen, wäre der Ansatz Direct Prompting am besten geeignet. Dies liegt daran, dass es keine neuen trainierten Parameter erfordert und somit auch nicht so viele Beispiele wie bei Finetuning notwendig sind, um das Modell effektiv anzupassen. Mit nur 8 Paaren wäre es schwierig, ein vollständig angepasstes Modell zu trainieren, während Direct Prompting möglicherweise trotzdem gute Ergebnisse liefern kann.





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




Answer to Question 3-2
a) Für die Finetuning-Phase mit Adapters werden pro Schicht neue Parameter hinzugefügt. Jeder Adapter besteht aus zwei linearen Projektionen, also einer für die Reduzierung der Dimension und einer für die Wiedervergrößerung auf die ursprüngliche Dimension (1024). Da es 12 Schichten gibt, werden pro Schicht 2 mal 256 neue Parameter für die linearen Projektionen hinzugefügt. Das sind insgesamt 2 (Projektionen) * 12 (Schichten) * 256 (Dimension) = 6144 neue Parameter.

b) Bei Prompt-Tuning werden 50 Tokens hinzugefügt, die trainiert werden. Jedes dieser Tokens hat eine Embedding-Dimension von 1024, da dies die Dimension der Token-Embeddings im Modell ist. Daher werden in der Finetuning-Phase 50 * 1024 = 51200 neue Parameter trainiert.

c) Eine mögliche Erklärung dafür, dass das Modell mit Prompt-Tuning trotz weniger Trainingsparametern Speicherprobleme hat, könnte sein, dass die Prompt-Tokens direkt in den LSTM-Schichten des Decoders eingefügt werden, wodurch die Speicherbelastung pro Schicht erhöht wird. Im Gegensatz dazu werden Adapters zwischen den Schichten eingefügt, ohne die Struktur der Schichten selbst zu verändern.

d) Der Hauptunterschied zwischen Prompt-Tuning und Prefix-Tuning liegt in der Art, wie die vorgefertigten Sequenzen eingefügt werden. Prompt-Tuning fügt die vorgefertigten Tokens direkt in die Schichten ein, während Prefix-Tuning eine vorgefertigte Sequenz als Eingabe vor dem Modell hinzufügt. Ein Vorteil von Prompt-Tuning ist, dass es die Flexibilität bietet, verschiedene Teile des Modells anzupassen, was für verschiedene Aufgaben nützlich sein kann. Ein Nachteil ist, dass es möglicherweise mehr Speicher erfordert, da die Prompt-Tokens direkt in die LSTM-Schichten eingefügt werden, was zu einer erhöhten Rechenbelastung führen kann.





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




Answer to Question 3-3
a) Um das vortrainierte Modell für die Verwendung von Informationen aus dem Objekterkennungsmodell anzupassen, können wir das Encoder-Decoder-Modell erweitern, indem wir eine zusätzliche Eingabe-Schicht hinzufügen. Diese Schicht würde die Liste der erkannten Objekte als Eingabe entgegennehmen. Die Eingabe des Modells würde dann bestehen aus zwei Teilen: dem Texteingabesatz und der Liste der Objekte. Das Modell würde diese Informationen kombinieren, bevor es zur \u00dcbersetzung fortschreitet. Wenn eine Objektbezeichnung nicht im Vokabular des \u00dcbersetzungsmodells enthalten ist, können wir entweder eine spezielle "unkown-object"-Kategorie einfügen oder das Modell so trainieren, dass es unbekannte Bezeichnungen entweder ignoriert oder durch den Kontext interpretiert.

b) Um zu analysieren, ob das Modell die Informationen aus dem Objekterkennungsmodell nutzt, können wir eine experimentelle Methode anwenden. Wir können zwei Versionen des Modells erstellen: eine, die nur den Texteingabesatz verwendet, und eine, die beide Eingabearten nutzt. Dann können wir die \u00dcbersetzungsqualität beider Modelle vergleichen. Wenn das Modell mit Bildinformationen bessere Ergebnisse liefert, ist dies ein Indikator dafür, dass es die Informationen nutzt. Wir können auch statistische Tests anwenden, um die Signifikanz des Unterschieds zu überprüfen.

c) Um das vortrainierte \u00dcbersetzungsmodell für die Verwendung des kodierten Bildes anzupassen, können wir das Modell so ändern, dass es einen zusätzlichen Bildinput-Teil enthält. Dies könnte durch eine Fusionungsschicht erfolgen, die den 1024-dimensionalen Bildvektor mit den Textembedding-Vektoren kombiniert. Um die Dimensionenübereinstimmung zu gewährleisten, können wir entweder den Bildvektor auf die Dimension des Textembeddings abwärts skalieren oder die Textembedding-Dimension auf die Größe des Bildvektors anpassen. Eine Möglichkeit besteht darin, die Textembedding-Dimension zu erhöhen, indem man einen linearen Layer hinzufügt, der die Dimensionen erhöht, ohne die Bedeutung zu ändern. Wenn die Dimensionen nicht übereinstimmen, kann das Modell Schwierigkeiten haben, die Informationen effektiv zu kombinieren, was zu einer verschlechterten Leistung führen kann.





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




Answer to Question 3-4
a) Retrieval-Augmented Generation (RAG) ist ein Ansatz, bei dem ein Large Language Model (LLM) mit einer Retrieval-Komponente kombiniert wird. Im Gegensatz zur traditionellen Generierung, bei der ein LLM alle Informationen aus seiner internen Vorhersagefunktion bezieht, kann RAG bei der Erstellung von Texten auf relevante Informationen aus externen Quellen zugreifen. Diese Informationen können aus einem Index oder einem Datenkorpus stammen. RAG kann die Wahrheitsgehalt von LLMs verbessern, indem es den Modellen ermöglicht, sich auf korrekte Informationen aus dem Retrieval-System zu stützen, anstatt nur auf ihrer internen Wissensbasis zu vertrauen, die möglicherweise unvollständig oder fehlerhaft sein kann.

b) Es ist möglicherweise einfacher, Halluzinationen bei maschinellen Übersetzungen zu erkennen als bei allgemeiner Texterstellung mit LLMs, da Übersetzungen oft eine klarere Struktur und ein festgelegtes Korpus von Quelltexten haben. Halluzinationen können sich in Übersetzungen als ungewöhnliche oder unpassende Übersetzungen von Wörtern oder Phrasen äußern, die leichter von menschlichen Experten erkannt werden können. Im Vergleich dazu kann die allgemeine Texterstellung von LLMs sehr variabel und unvorhersehbar sein, was die Identifizierung von Halluzinationen schwieriger macht.

c) Wenn lange Dokumente bei der Training von LLMs abgeschnitten werden, kann dies zu Modellhalluzinationen führen, da wichtige Kontextinformationen verloren gehen. Diese Informationen sind für die korrekte Verständnis- und Generierung von Textabschnitten unerlässlich. Um das Problem zu entschärfen, können Methoden wie zufälliges Sampling oder das Partitionieren von Dokumenten in kürzere Abschnitte verwendet werden, um sicherzustellen, dass der Modelltrainingsinput ausreichend kontextreicher Informationen enthält. Auch das Fügen von Referenzen oder Kontexten aus anderen Quellen hinzu kann helfen, den Kontext zu erweitern und Halluzinationen zu reduzieren.





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




