Answer to Question 1-1


Die beiden Ansätze, Word Embeddings und TF-IDF, berücksichtigen den Kontext auf unterschiedliche Weise.

Word Embeddings, wie zum Beispiel word2vec, berücksichtigen den Kontext durch die Verwendung von Kontextwörtern, um die Bedeutung eines Wortes in einem bestimmten Kontext zu bestimmen. Dabei wird ein umliegendes Fenster von Wörtern um ein Zielwort definiert, und das Modell lernt, das Zielwort in diesem Kontext zu repräsentieren. Durch diesen Ansatz kann word2vec die Beziehungen zwischen Wörtern und deren Kontexte erlernen und somit die Bedeutung von Wörtern im Kontext abbilden.

TF-IDF hingegen berücksichtigt den Kontext durch die Häufigkeit von Wörtern in Dokumenten und der gesamten Korpus. Es berechnet die Häufigkeit eines Wortes in einem Dokument im Verhältnis zu seiner Häufigkeit im gesamten Korpus. Dadurch kann TF-IDF die Wichtigkeit eines Wortes in einem bestimmten Dokument im Vergleich zu anderen Dokumenten bestimmen. Allerdings kann TF-IDF nicht die Beziehungen zwischen Wörtern und deren Kontexte erlernen, wie es Word Embeddings können.

Der Hauptunterschied zwischen Word Embeddings und TF-IDF liegt in der Art und Weise, wie sie den Kontext berücksichtigen. Word Embeddings lernen, Wörter in ihrem Kontext zu repräsentieren, während TF-IDF die Häufigkeit von Wörtern in Dokumenten und im Korpus verwendet, um die Wichtigkeit von Wörtern im Kontext zu bestimmen. Word Embeddings sind daher besser geeignet, um Beziehungen zwischen Wörtern und deren Kontexte zu erlernen, während TF-IDF besser geeignet ist, um die Wichtigkeit von Wörtern in Dokumenten im Vergleich zu anderen Dokumenten zu bestimmen.





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




Answer to Question 1-2


Die Segmentierung des Satzes "I love NLP a lot" mit den angegebenen Byte-Pair-Encoding (BPE) Codes in Teilwörter ist wie folgt:

I

love

N

la

t

P

e

a

lot





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




Answer to Question 1-3


Antwort:

a) Die Ausgabeprojektion hat die Form 10.000 x 300. Das erste Dimension repräsentiert das Vokabular mit einer Größe von 10.000, während die zweite Dimension die 300 Dimensionen jedes Wortvektors darstellt.

b) Ich würde nicht zustimmen, dass die Trainingspipeline defekt ist. Der Grund dafür ist, dass die Kontextfenstergröße von 30, 40 und 50 Wörtern wahrscheinlich keinen großen Einfluss auf die trainierten Wortvektoren hat. Die Größe des Kontextfensters beeinflusst die Menge an Kontextinformationen, die für die Vorhersage des Zielworts verwendet wird. Wenn die Kontextfenstergröße zu klein ist, kann das Modell möglicherweise nicht genügend Kontextinformationen erfassen, um das Zielwort korrekt vorherzusagen. Wenn die Kontextfenstergröße jedoch zu groß ist, kann dies zu übermäßigem Rauschen führen, was sich ebenfalls negativ auf die Qualität der trainierten Wortvektoren auswirken kann.

In diesem Fall hat Bart jedoch Kontextfenstergrößen von 30, 40 und 50 Wörtern ausprobiert und keinen Unterschied bei den trainierten Wortvektoren festgestellt. Dies deutet darauf hin, dass die Größe des Kontextfensters für sein spezifisches Trainingsset möglicherweise nicht so wichtig ist. Stattdessen sollte Bart andere Hyperparameter in seiner Trainingspipeline überprüfen, wie z. B. die Lernrate, die Anzahl der Epochen und die Batchgröße, um sicherzustellen, dass sie optimal eingestellt sind.





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




Answer to Question 1-4


a) Richtig. Die Verwendung von Teilwörtern ist für die Verarbeitung morphologisch reicher Sprachen besser als die Verwendung ganzer Wörter, da sie die Anzahl der erforderlichen Wörter reduziert und die Flexibilität bei der Verarbeitung von Wortformen erhöht.

b) Richtig. Wenn wir die Häufigkeit jedes Wortes in einem Korpus haben, können wir ein Unigramm-Sprachmodell ableiten, das die Wahrscheinlichkeit jedes Wortes im Korpus abschätzt.

c) Falsch. One-Hot-Wortrepräsentationen können nicht verwendet werden, um den semantischen Unterschied zwischen zwei Wörtern zu messen, da sie nur eine 0 oder 1 für jedes Wort enthalten und keine Informationen über die Bedeutung der Wörter bereitstellen.

d) Richtig. Bei der Latent Dirichlet Allocation (LDA) wird ein Dokument als eine Verteilung über Wörter modelliert, wobei jedes Wort mit einer bestimmten Wahrscheinlichkeit aus einer bestimmten Themenverteilung gezogen wird.

e) Richtig. Bei der Term Frequency-Inverse Document Frequency (TF-IDF) verringert die Term-Frequency die Bedeutung von Wörtern, die in vielen Dokumenten vorkommen (z.B. Stoppwörter), indem sie die Häufigkeit jedes Wortes im Dokument relativ zur Häufigkeit des Wortes in allen Dokumenten gewichtet.

f) Falsch. Bei der Verwendung von Hidden Markov Modellen (HMMs) für das Part-of-Speech-Tagging sind die verborgenen Zustände nicht die Wörter, sondern die Tags (z.B. Nomen, Verben, Adjektive usw.). Die Wörter werden beobachtet und dienen als Beobachtungen für die verborgenen Zustände.





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




Answer to Question 2-1


a) Für diese Aufgabe können wir ein einfaches lineares Klassifikator-Modell verwenden, das die vortrainierten Word Embeddings als Eingabe verwendet. Die Eingabe ist ein 300-dimensionaler Vektor, der die Einbettung eines Wortes darstellt. Die Zwischenoperationen bestehen aus einem Matrix-Vektor-Produkt, bei dem die Eingabe mit einer 300x3-Matrix multipliziert wird, um die Wahrscheinlichkeiten für jede Klasse zu erhalten. Die Ausgabe ist ein 3-dimensionaler Vektor, der die Wahrscheinlichkeiten für jede Klasse enthält. Die Parameterdimensionen sind 300x3.

b) Das Modell aus Teilaufgabe a) ist nicht geeignet, weil es nicht in der Lage ist, die räumlichen Beziehungen zwischen den Dimensionen des Spektrogramms zu erfassen. Es ist auch nicht in der Lage, die Zeitabhängigkeit der Audio-Eingabe zu berücksichtigen.

c) Ein geeignetes Modell für die Klassifizierung von Audio-Eingaben könnte ein rekurrentes neuronales Netzwerk (RNN) sein, das auf den 80-dimensionalen Spektrogramm-Vektoren basiert. Die Eingabe ist ein Sequenz von 80-dimensionalen Vektoren, die die Spektrogramme darstellen. Die Zwischenoperationen bestehen aus der Verarbeitung der Sequenz durch das RNN, um einen Zustandsvektor zu erhalten, der die Zeitabhängigkeit der Eingabe berücksichtigt. Die Ausgabe ist ein 3-dimensionaler Vektor, der die Wahrscheinlichkeiten für jede Klasse enthält. Die Parameterdimensionen sind abhängig von der Art des RNNs, z.B. 80xN für die Gewichtsmatrix, die die Eingabe mit dem versteckten Zustand multipliziert, und Nx3 für die Gewichtsmatrix, die den versteckten Zustand mit der Ausgabe multipliziert, wobei N die Anzahl der versteckten Einheiten ist.





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




Answer to Question 2-2


a) Der Ansatz zur Sequenzklassifikation ist nicht optimal, weil er die Abhängigkeiten zwischen den Äußerungen nicht berücksichtigt. Zum Beispiel in der 4. Äußerung des Patienten, wenn er sagt "For a week, right?". Diese Äußerung ist eine Bestätigung der Medikation, die der Arzt in der vorherigen Äußerung vorgeschlagen hat. Wenn das Modell nur die letzte Äußerung als Eingabe verwendet, kann es nicht die Abhängigkeit zwischen den Äußerungen erfassen und wird wahrscheinlich einen Fehler machen.

b) Die Aufgabe kann als ein Sequenz-Labeling-Problem modelliert werden. Die Eingabe ist eine Matrix der Dimension anzahl_der_Äußerungen x d, wobei d die Dimension der Satz-Embeddings ist. Die Ausgabe ist eine Sequenz von Dialog-Act-Klassen mit derselben Länge wie die Eingabe-Matrix. Diese Darstellung ist besser geeignet als ein Sequenzgenerierungsproblem, weil die Anzahl der möglichen Dialog-Act-Klassen begrenzt ist und das Modell nicht lernen muss, eine variable Länge von Text auszugeben.

c) Ein mögliches Modell für die Dialog-Act-Identifizierung ist ein rekurrentes neuronales Netzwerk (RNN) mit Long Short-Term Memory (LSTM)-Zellen. Die Eingabe ist die Matrix der Satz-Embeddings, die mit dem Satz-Encoder erstellt wurde. Die Zwischenoperationen bestehen aus der Verarbeitung der Eingabe-Matrix durch das RNN, wobei die vergangenen Äußerungen im Zustand des RNN gespeichert werden. Die Ausgabe ist das Dialog-Act-Label für jede Äußerung, das durch die letzte LSTM-Zelle erzeugt wird. Das RNN wird trainiert, um die korrekte Dialog-Act-Klasse für jede Äußerung vorherzusagen, indem es die Eingabe-Matrix und den korrekten Dialog-Act-Label-Sequenz als Eingabe verwendet.





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




Answer to Question 3-1


a) Autoregressiv bedeutet, dass das Modell die Ausgabe schrittweise erstellt, wobei jede Ausgabe von den vorherigen Ausgaben abhängt. Beim Training wird die tatsächliche Ausgabe verwendet, um die nächste Eingabe vorherzusagen. Beim Testen wird die vorhergesagte Ausgabe anstelle der tatsächlichen Ausgabe verwendet, um die nächste Eingabe vorherzusagen.

b) Die Self-Attention des Transformer-Decoders muss während des Trainings teilweise ausgeblendet (masked out) werden, um sicherzustellen, dass das Modell nur die bisherigen Ausgaben bei der Vorhersage der nächsten Ausgabe berücksichtigt. Wenn die Self-Attention nicht maskiert würde, könnte das Modell zukünftige Ausgaben sehen, was zu Fehlvorhersagen führen würde.

c) Die Decoder-Self-Attention-Gewichtsmatrix sollte wie folgt aussehen:

|      | BoS | E   | F   | G   |
|------|----|-----|-----|-----|
| BoS  | x  |   0 |   0 |   0 |
| E    |    | x   |   0 |   0 |
| F    |    |   0 | x   |   0 |
| G    |    |   0 |   0 | x   |

Die Einträge in der Matrix, die mit "x" markiert sind, sollten ausgeblendet (masked out) werden.

d) Die Attention-Gewichte $\bm{\alpha}_{\texttt{Mary}}$ werden wie folgt berechnet:

$\bm{\alpha}_{\texttt{Mary}} = \text{softmax}(\mathbf{q}_{\texttt{Mary}} \cdot [\mathbf{k}_{\texttt{John}}; \mathbf{k}_{\texttt{loves}}; \mathbf{k}_{\texttt{Mary}}])$

Da die Werte von $\mathbf{q}_{\texttt{Mary}}$ und $[\mathbf{k}_{\texttt{John}}; \mathbf{k}_{\texttt{loves}}; \mathbf{k}_{\texttt{Mary}}]$ unabhängig von der Reihenfolge der Wörter "John" und "Mary" in der Eingabe sind, werden die Attention-Gewichte $\bm{\alpha}_{\texttt{Mary}}$ für beide Sequenzen gleich sein.





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




Answer to Question 3-2


a) Zwei Lösungen für das Problem der unbekannten Wörter im medizinischen Bereich sind:

1) Verwendung eines Wörterbuchs oder einer Ontologie, um die unbekannten Wörter zu ersetzen. Das Wörterbuch oder die Ontologie sollte medizinische Begriffe und deren Synonyme enthalten. Wenn das Modell auf ein unbekanntes Wort stößt, kann es nach einem Synonym im Wörterbuch suchen und es verwenden, um die Bedeutung des Satzes beizubehalten.

2) Verwendung von Embeddings, die auf medizinischen Texten trainiert wurden. Embeddings sind Vektorräume, in denen Wörter mit ähnlicher Bedeutung nahe beieinander liegen. Wenn das Modell auf ein unbekanntes Wort stößt, kann es nach einem ähnlichen Wort im Embedding-Raum suchen und es verwenden, um die Bedeutung des Satzes beizubehalten.

b) ROUGE-n (Recall-Oriented Understudy for Gisting Evaluation) ist eine Metrik zur Bewertung der Qualität von Zusammenfassungen. Sie basiert auf der Übereinstimmung von N-Grammen (Sequenzen von N Wörtern) zwischen der maschinell erstellten Zusammenfassung und einer menschlich erstellten Referenzzusammenfassung. ROUGE-1 misst die Übereinstimmung von Einzelwörtern, ROUGE-2 die Übereinstimmung von Zweiwort-Phrasen und so weiter.

c) Das Modell erhält trotz der nicht-grammatischen Ausgabe hohe ROUGE-2-Werte, weil ROUGE-n nicht die Grammatik der Ausgabe bewertet, sondern nur die Übereinstimmung von N-Grammen. Die Wiederholungen von "amyloid angiopathy" erhöhen die Übereinstimmung mit der Referenzzusammenfassung und somit die ROUGE-2-Werte. Um dieses Problem zu vermeiden, könnte man eine andere Metrik verwenden, die die Grammatik der Ausgabe bewertet, wie zum Beispiel BLEU (Bilingual Evaluation Understudy). Um die Anzahl der Wiederholungen bei der Generierung der Ausgabe zu reduzieren, könnte man eine Technik wie Beam Search verwenden, die die wahrscheinlichsten Wörter auswählt und die Anzahl der Wiederholungen begrenzt.





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




Answer to Question 3-3


Antwort:

a)
Vorteil: BERT ist ein vortrainierter Encoder für Text, der gute Repräsentationen für Texteingaben erzeugen kann. Durch die Verwendung von CTC kann BERT für maschinelle Übersetzungsaufgaben eingesetzt werden.

Nachteil: BERT wurde ursprünglich für die Verarbeitung von Text in einer Sprache entwickelt und nicht für die Übersetzung zwischen Sprachen. Daher könnte es Schwierigkeiten haben, die Abhängigkeiten zwischen Wörtern in zwei verschiedenen Sprachen zu erfassen.

b)
Um das Modell zu verbessern, könnte man eine Encoder-Decoder-Architektur verwenden, bei der BERT als Encoder und ein separater Decoder für die Übersetzung in die Zielsprache eingesetzt wird. Der Decoder könnte beispielsweise ein Transformer-Modell sein, das auf maschineller Übersetzung trainiert wurde. Durch die Verwendung eines separaten Decoders kann das Modell besser auf die Übersetzungsaufgabe abgestimmt werden, während die Stärken von BERT als Encoder genutzt werden.





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




Answer to Question 3-4


a) Ein Modell für die Text-to-SQL-Aufgabe könnte wie folgt aussehen:

1. Tokenisierung: Zerlegen Sie die Frage in einzelne Wörter oder Token.
2. Entitätsextraktion: Identifizieren Sie Entitäten in der Frage, wie z.B. Tabellen- und Spaltennamen.
3. SQL-Schema-Abruf: Greifen Sie auf die Metadaten der Datenbanktabelle zu, um das SQL-Schema abzurufen.
4. SQL-Abfragegenerierung: Generieren Sie die SQL-Abfrage basierend auf den extrahierten Entitäten und dem SQL-Schema.

b) Um mit unbeantwortbaren Fragen umzugehen, könnte man das Modell wie folgt anpassen:

1. Fragevalidierung: Überprüfen Sie die Frage, ob sie beantwortbar ist, indem Sie Schlüsselwörter wie "Wer", "Was", "Wie viele" usw. identifizieren.
2. SQL-Abfragegenerierung: Wenn die Frage beantwortbar ist, generieren Sie die SQL-Abfrage wie oben beschrieben. Wenn nicht, geben Sie eine Fehlermeldung aus, dass die Frage nicht beantwortbar ist.





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




Answer to Question 4-1


a) Der Vorteil dieses Ansatzes ist, dass die Adapter nur auf die spezifische Named Entity Recognition Aufgabe abgestimmt werden müssen, während die BERT-Parameter weiterhin allgemeine Sprachkenntnisse repräsentieren. Dadurch wird verhindert, dass die BERT-Parameter während des Trainings für die Named Entity Recognition verändert werden und ihre allgemeine Sprachkenntnis beeinträchtigt wird.

b) Die Adapter können in jeder Schicht des BERT-Modells eingesetzt werden, nach der ersten linearen Projektion der Self-Attention-Schicht. In der Abbildung wäre dies also direkt nach der (query), (key) und (value) Linear-Projektion der Self-Attention-Schicht 0.

c) Um die Anzahl der zusätzlichen Parameter zu berechnen, müssen wir die Anzahl der Parameter in jeder linearen Projektion der Adapter bestimmen. Die erste lineare Projektion hat 768 * 256 = 196608 Parameter und die zweite lineare Projektion hat 256 * 768 = 196608 Parameter. Da es 12 Schichten im BERT-Modell gibt, erhalten wir insgesamt 12 * (196608 + 196608) = 4718592 zusätzliche Parameter.





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




Answer to Question 4-2


Antwort:

a) Der Ansatz von DPR, Satzrepräsentationen aus dem BERT-CLS-Token zu verwenden, unterscheidet sich vom Pooling von Wortvektoren als Satzrepräsentationen, weil er die Bedeutung des gesamten Satzes besser einfängt. Der CLS-Token ist das erste Token in der Eingabe und wird von BERT als Satzrepräsentation verwendet. Durch die Verwendung des CLS-Tokens als Satzrepräsentation kann das Modell die Beziehungen zwischen den Wörtern im Satz besser erfassen. Die Vorteile dieses Ansatzes sind, dass er die Bedeutung des gesamten Satzes besser einfängt und die Beziehungen zwischen den Wörtern im Satz besser erfasst.

Um die Figur zu zeichnen, würde man ein Rechteck zeichnen, um den BERT-CLS-Token darzustellen. Innerhalb des Rechtecks würde man den Text [CLS] schreiben, um den CLS-Token darzustellen.

b) Die irrelevanten/negativen Paare werden im Trainingsziel von DPR einbezogen, um das Modell dazu zu bringen, irrelevante Passagen von relevanten Passagen zu unterscheiden. Wenn irrelevante/negative Paare im Trainingsziel weggelassen würden, würde das Modell keine Ahnung haben, wie es irrelevante Passagen von relevanten Passagen unterscheiden soll, was zu schlechten Ergebnissen führen würde.





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




