Aktionen

Word embeddings: Unterschied zwischen den Versionen

Aus exmediawiki

 
(38 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 11: Zeile 11:
 
----
 
----
 
generell gilt, je mehr Dimensionen ein Vektor besitzt, desto mehr Bedeutung können wir in diesen hineinlegen < problem computational grenze
 
generell gilt, je mehr Dimensionen ein Vektor besitzt, desto mehr Bedeutung können wir in diesen hineinlegen < problem computational grenze
----
+
[[Datei:Word-embeddings.png]]
 +
=Traditionelle Worteinbettungen=
 +
 
 +
==Bag of Words (BOW)==
 +
 
 +
Ist ein sehr einfache Methode einen Text zu Vektorisieren.
 +
 
 +
Jedoch werden keine Information über den Kontex der Wörter behalten.
 +
* Die Reihenfolge der Wörter bleibt in der Vektordarstellung nicht erhalten.
  
 +
Beispiel: Die folgenden Sätze werden folgendermaßen dargestellt werden.<br>
  
 +
“Das ist ein Stift und ein Blatt Papier.” → (1  1  2  1  1  1  1  0  0  0)
  
=Traditionelle Worteinbettungen=
+
“Das ist ein Hund und keine Katze.”    →    (1  1  1  0  1  0  0  1  1  1)
  
==Bag of Words (BOW)==
+
Es ist direkt zu erkennen, dass aus dem Vektor die Bedeutung des zweiten Satzes nicht mehr eindeutig ist.
  
 
==term frequency–inverse document frequency (TFIDF)==
 
==term frequency–inverse document frequency (TFIDF)==
 +
Ein Problem mit dem Bag of Words-Ansatz ist, dass sehr häufige Wörter beginnen, im Dokument zu dominieren (z.B. größere Punktzahl), aber möglicherweise nicht so viel "Informationsgehalt" enthalten. Außerdem wird es längeren Dokumenten mehr Gewicht verleihen als kürzeren Dokumenten.
 +
 +
Ein Ansatz besteht darin, die Häufigkeit der Wörter danach zu skalieren, wie oft sie in allen Dokumenten vorkommen, so dass die Ergebnisse für häufige Wörter wie "die", die auch in allen Dokumenten häufig vorkommen, bestraft werden. Dieser Ansatz zur Bewertung wird als Term Frequency-Inverse Document Frequency, kurz TF-IDF, bezeichnet:
 +
 +
 +
'''Term Frequency: ist eine Bewertung der Häufigkeit des Wortes im aktuellen Dokument:'''
 +
TF = (Anzahl der Erscheinungen von Begriff t in einem Dokument)/(Anzahl der Begriffe im Dokument)
 +
 +
 +
'''Inverse Document Frequency: ist eine Bewertung, wie selten das Wort in allen Dokumenten ist:'''
 +
IDF = 1+log(N/n), wobei N die Anzahl der Dokumente und n die Anzahl der Dokumente ist, in denen ein Begriff t erschienen ist.
  
 
----
 
----
 +
 
=Neuronale Einbettungen / pretrained word embeddings=
 
=Neuronale Einbettungen / pretrained word embeddings=
 
+
[[Datei:Word2viz-queen.png|500px]][[Datei:Queen-julia-vectors.jpg|200px]]
 
==Word2Vec-Algorithmus==
 
==Word2Vec-Algorithmus==
  
 
Der beliebteste Algorithmus für die Berechnung von Einbettungen. Er besteht im Wesentlichen aus einem mini neuronalen Netzwerk, das versucht, ein Sprachmodell zu lernen.  
 
Der beliebteste Algorithmus für die Berechnung von Einbettungen. Er besteht im Wesentlichen aus einem mini neuronalen Netzwerk, das versucht, ein Sprachmodell zu lernen.  
 +
 +
Mikolov et al., 2013: [https://arxiv.org/abs/1301.3781 Efficient Estimation of Word Representations in Vector Space]
 
===CBOW & Skip-Gram===
 
===CBOW & Skip-Gram===
 
[[Datei:cbow-skip.png]]
 
[[Datei:cbow-skip.png]]
 +
----
 
====Continuous Bag-Of-Words (CBOW)====  
 
====Continuous Bag-Of-Words (CBOW)====  
[[Datei:cbow.png]]
 
 
Hier geht es darum, ein Netzwerk zu schaffen, das versucht, das Wort in der Mitte bei einigen umgebenden Wörtern vorherzusagen:  
 
Hier geht es darum, ein Netzwerk zu schaffen, das versucht, das Wort in der Mitte bei einigen umgebenden Wörtern vorherzusagen:  
 
  [W[-3], W[-2], W[-1], W[1], W[2], W[3]] => W[0]
 
  [W[-3], W[-2], W[-1], W[1], W[2], W[3]] => W[0]
 
+
----
 
====Skip-Gram====
 
====Skip-Gram====
 
Skip-Gram ist das Gegenteil von CBOW, es versucht, die umgebenden Wörter vorherzusagen, die das Wort in der Mitte enthält:  
 
Skip-Gram ist das Gegenteil von CBOW, es versucht, die umgebenden Wörter vorherzusagen, die das Wort in der Mitte enthält:  
Zeile 39: Zeile 63:
  
 
'''Die berechneten Netzwerkgewichte sind eigentlich die ''Wort Embeddings'''''
 
'''Die berechneten Netzwerkgewichte sind eigentlich die ''Wort Embeddings'''''
 +
----
  
 
===Word2Vec mit Gensim===
 
===Word2Vec mit Gensim===
Zeile 44: Zeile 69:
  
 
==GloVe==
 
==GloVe==
 +
Word2vec und GloVe sind Embeddings welche durch neuronale Netze erstellt werden. Word2vec wird im Gegensatz zu GloVe ''supervised'' trainiert. Außerdem arbeitet es nicht wie Word2vec direkt mit dem Text,sondern mit einer ''Co-Occurence Matrix'' über die der Kontext der Wörter erhalten bleibt.
 +
 +
Pennington et al., 2014: [https://www.aclweb.org/anthology/D14-1162/ Glove: Global Vectors for Word Representation]
  
 
==FastText==
 
==FastText==
 +
FastText ist im Gegensatz zu word2vec kein Word-Embedding mehr, sondern ein Charachter-Embedding. Somit kann es im Gegensatz zu den word2vec und GloVe Wörter vektorisieren, welche nicht im Trainingsvokabular enthalten waren.
 +
 +
Joulin et al., 2016: [https://arxiv.org/abs/1607.01759 Bag of Tricks for Efficient Text Classification]
  
 
----
 
----
 +
 
=Neuronale NLP Architekturen=
 
=Neuronale NLP Architekturen=
 
+
nächste Woche
 
==Deep Feed Forward Network==
 
==Deep Feed Forward Network==
  
Zeile 57: Zeile 89:
  
 
==ELMo & BERT==
 
==ELMo & BERT==
 +
 +
----
 +
=pitfalls of modern state of the art NLP systems...=
 +
<!--https://towardsdatascience.com/beyond-word-embeddings-part-3-four-common-flaws-in-state-of-the-art-neural-nlp-models-c1d35d3496d0-->
 +
Obwohl neuronales NLP zu vielen Durchbrüchen geführt hat, wie in den vorherigen Beiträgen zu sehen, gibt es immer noch viele Mängel, die von Modellen auf dem neuesten Stand der Technik mit vorab trainierten Worteinbettungen und Aufmerksamkeitsmechanismen gezeigt wurden. Diese Fehler in der neuronalen NLP haben gefährliche Auswirkungen auf Produktionssysteme, die nur wenig oder gar keinen Spielraum für Ungenauigkeit und Unvorhersehbarkeit bieten.
 +
 +
==Oberflächliche Korrelationen==
 +
Eine große Herausforderung bei aktuellen Modellen besteht darin, dass sie oberflächliche Korrelationen in Daten lernen, die zu Modellen führen, die implizite soziale Vorurteile erfassen.
 +
 +
[[Datei:ober-korell.png|600px]]
 +
 +
'''1. Elazar and Goldberg et. al haben frühe Versuche gemacht mit ''adversarial training'' dem System immanente ''biases'' zu beseitigen: https://github.com/yanaiela/demog-text-removal'''
 +
 +
'''2. weiteres Jupyter-Notebook: [https://github.com/Azure-Samples/learnAnalytics-DeepLearning-Azure/blob/master/Students/12-biased-embeddings/how-to-make-a-racist-ai-without-really-trying.ipynb How to make a racist AI without really trying]'''
 +
----
 +
 +
==kontroverse Bewertung==
 +
Ein Nebenprodukt der oberflächlichen Korrelationen ist, dass sie Modelle einem gegnerischen Angriff aussetzen.
 +
 +
[[Datei:kontro-bew.png|800px]]
 +
 +
Die Auswirkungen sind ziemlich schockierend, da man sich vorstellen kann, widersprüchliche Beispiele zu verwenden, um kritische Produktions-NLP-Systeme in Branchen wie dem digitalen Gesundheitswesen, der digitalen Versicherung und dem digitalen Recht zu manipulieren und auszunutzen.
 +
 +
----
 +
 +
==Semantische Variabilität==
 +
In der natürlichen Sprache gibt es viele Arten oder Umschreibungen, die dasselbe Konzept, dieselbe Beziehung oder dieselbe Idee ausdrücken können.
 +
 +
Ein möglicher Indikator dafür, dass oberflächliche Korrelationen viele Ergebnisse des Standes der Technik beeinflussen, ist, dass das Modell, obwohl es bei einem bestimmten Testbeispiel erwartungsgemäß funktioniert, wenn dasselbe Testbeispiel mit unterschiedlicher syntaktischer Struktur ausgedrückt wird, in seiner Vorhersage scheitert.
 +
 +
Beispiel, sentiment analysis:<br>
 +
[[Datei:sem-var.png|500px]]
 +
 +
----
 +
==Auszüge aus dem Leben...==
 +
* oktober 2019: https://www.theguardian.com/technology/2019/oct/16/automated-messages-welfare-australia-system
 +
In Australien entscheidet ein automatisiertes System über eingestellte Zahlungen an Empfänger:innen von Sozialleistungen und versendet jede Woche rund 50.000 entsprechende Benachrichtigungen. Luke Henriques-Gomes, Australien-Korrespondent bei The Guardian, berichtet über die teils prekären Situationen, in denen die Betroffenen dadurch landen würden. Häufig genügten geringste Versäumnisse, etwa die Nichtteilnahme an einem von der Arbeitsagentur kurzfristig festgelegten Termin, für einen Zahlungsstopp. Problematisch seien laut Henriques-Gomes nicht nur das aggressive Regelwerk des Systems und die Tatsache, dass menschliches Personal bei den Behörden immer weniger Einfluss auf Entscheidungen habe, sondern auch, dass den Betroffenen Ansprechpartner:innen fehlten – gerade dann, wenn eine algorithmische Entscheidung sich als falsch herausstellt [https://algorithmenethik.de/2017/10/25/in-australien-prueft-eine-software-die-sozialbezuege-und-erfindet-schulden-fuer-20-000-menschen (Fehlentscheidungen der Software sorgten sorgten schon vor zwei Jahren für Aufsehen)].
 +
 +
Gemäß der Recherche des Guardian seien zwei Gruppen in besonderem Maße negativ von dem System betroffen: Obdachlose und Alleinerziehende.
 +
----
 +
* April 2019: https://www.theverge.com/2019/4/25/18516004/amazon-warehouse-fulfillment-centers-productivity-firing-terminations
 +
** Darstellung 1: https://t3n.de/news/amazon-vollautomatischer-versand-braucht-noch-zeit-automatisierte-kuendigung-funktioniert-schon-1160456/
 +
Da errechnet der Computer laut Medienberichten bereits heute, wer nicht produktiv genug ist, und verwarnt und entlässt automatisiert. Der Vorgesetzte muss nur noch gegenzeichnen, wie das Portal mit [https://cdn.vox-cdn.com/uploads/chorus_asset/file/16190209/amazon_terminations_documents.pdf diesem Dokument] belegt. Laut dem Bericht würden jedes Jahr zahlreiche Mitarbeiter aufgrund mangelnder Effizienz entlassen, wobei die Überwachung und Auswahl mithilfe eines automatisierten Tools erfolge. Einige Mitarbeiter gaben an, dass sie deshalb bereits so weit wie möglich auf Toilettenpausen verzichteten.
 +
** Darstellung 2: https://www.focus.de/finanzen/news/us-bericht-ki-bei-amazon-kuendigt-langsame-mitarbeiter-automatisch_id_10660365.html
 +
Wie das US-Magazins "The Verge" berichtet, setzt der US-Onlineversandhändler einen Algorithmus ein, um die Arbeit seiner Mitarbeiter zu kontrollieren und auszuwerten. Ist die Leistung nicht zufriedenstellend, kann das System die Mitarbeiter sogar feuern. Kündigungen und Abmahnungen verschickt die KI teilweise automatisiert – und ohne vorherige Zustimmung eines Vorgesetzten.
 +
----
 +
* Oktober 2018: https://www.heise.de/newsticker/meldung/Amazon-KI-zur-Bewerbungspruefung-benachteiligte-Frauen-4189356.html
 +
** Amazon: KI zur Bewerbungsprüfung benachteiligte Frauen - Ein automatisches Bewertungssystem von Bewerbungen bei Amazon wurde größtenteils eingestampft, nachdem der US-Konzern mitbekommen hatte, dass die KI Frauen systematisch benachteiligte. Das geht aus einem [https://www.reuters.com/article/us-amazon-com-jobs-automation-insight/amazon-scraps-secret-ai-recruiting-tool-that-showed-bias-against-women-idUSKCN1MK08G Bericht der Nachrichtenagentur Reuters] hervor. Demnach war seit 2014 intern ein Algorithmus entwickelt worden, der unter mehreren Bewerbungstexten automatisch jene der vielversprechendsten Bewerber herausfiltern sollte.
 +
 +
[[Category:word embeddings]]
 +
[[Category:KI]]
 +
[[Category: Natural Language Processing]]
 +
[[Category:Programmierung]]
 +
[[Category:Python]]
 +
[[Category:Computerlinguistik]]
 +
[[Category:Word2Vec]]
 +
[[Category:Glitch]]

Aktuelle Version vom 29. Mai 2020, 14:35 Uhr

Der Sammelbegriff für eine Reihe von Sprachmodellierungs- und Feature-Learning-Techniken in der natürlichen Sprachverarbeitung (NLP), bei denen Wörter oder Phrasen aus dem Vokabular auf Vektoren mit reellen Zahlen abgebildet werden:

  • ein Vektor, der die Struktur des Wortes in Bezug auf Morphologie widerspiegelt ( Anreichern von Wortvektoren mit Unterwortinformationen ) * eine Wortkontextdarstellung ( word2vec Parameter Learning Explained )
  • eine globale Korpusstatistik ( GloVe: Globale Vektoren für Wortdarstellung )
  • eine Worthierarchie in Bezug auf die WordNet-Terminologie ( Poincaré-Einbettungen für das Lernen hierarchischer Darstellungen )
  • eine Beziehung zwischen einer Reihe von Dokumenten und den Begriffen, die sie enthalten ( latente semantische Indizierung )
  • usw. ...

Warum brauchen wir embeddings?

für "meaningful" (Bedutungs-) Repräesentationen eines Wortes in einem Vectorenraum << word vectors


generell gilt, je mehr Dimensionen ein Vektor besitzt, desto mehr Bedeutung können wir in diesen hineinlegen < problem computational grenze Word-embeddings.png

Traditionelle Worteinbettungen

Bag of Words (BOW)

Ist ein sehr einfache Methode einen Text zu Vektorisieren.

Jedoch werden keine Information über den Kontex der Wörter behalten.

  • Die Reihenfolge der Wörter bleibt in der Vektordarstellung nicht erhalten.

Beispiel: Die folgenden Sätze werden folgendermaßen dargestellt werden.

“Das ist ein Stift und ein Blatt Papier.” → (1  1  2  1  1  1  1  0  0  0)
“Das ist ein Hund und keine Katze.”    →    (1  1  1  0  1  0  0  1  1  1)

Es ist direkt zu erkennen, dass aus dem Vektor die Bedeutung des zweiten Satzes nicht mehr eindeutig ist.

term frequency–inverse document frequency (TFIDF)

Ein Problem mit dem Bag of Words-Ansatz ist, dass sehr häufige Wörter beginnen, im Dokument zu dominieren (z.B. größere Punktzahl), aber möglicherweise nicht so viel "Informationsgehalt" enthalten. Außerdem wird es längeren Dokumenten mehr Gewicht verleihen als kürzeren Dokumenten.

Ein Ansatz besteht darin, die Häufigkeit der Wörter danach zu skalieren, wie oft sie in allen Dokumenten vorkommen, so dass die Ergebnisse für häufige Wörter wie "die", die auch in allen Dokumenten häufig vorkommen, bestraft werden. Dieser Ansatz zur Bewertung wird als Term Frequency-Inverse Document Frequency, kurz TF-IDF, bezeichnet:


Term Frequency: ist eine Bewertung der Häufigkeit des Wortes im aktuellen Dokument:

TF = (Anzahl der Erscheinungen von Begriff t in einem Dokument)/(Anzahl der Begriffe im Dokument)


Inverse Document Frequency: ist eine Bewertung, wie selten das Wort in allen Dokumenten ist:

IDF = 1+log(N/n), wobei N die Anzahl der Dokumente und n die Anzahl der Dokumente ist, in denen ein Begriff t erschienen ist.

Neuronale Einbettungen / pretrained word embeddings

Word2viz-queen.pngQueen-julia-vectors.jpg

Word2Vec-Algorithmus

Der beliebteste Algorithmus für die Berechnung von Einbettungen. Er besteht im Wesentlichen aus einem mini neuronalen Netzwerk, das versucht, ein Sprachmodell zu lernen.

Mikolov et al., 2013: Efficient Estimation of Word Representations in Vector Space

CBOW & Skip-Gram

Cbow-skip.png


Continuous Bag-Of-Words (CBOW)

Hier geht es darum, ein Netzwerk zu schaffen, das versucht, das Wort in der Mitte bei einigen umgebenden Wörtern vorherzusagen:

[W[-3], W[-2], W[-1], W[1], W[2], W[3]] => W[0]

Skip-Gram

Skip-Gram ist das Gegenteil von CBOW, es versucht, die umgebenden Wörter vorherzusagen, die das Wort in der Mitte enthält:

W[0] =>[W[-3], W[-2], W[-1], W[1], W[2], W[3]]]

Die berechneten Netzwerkgewichte sind eigentlich die Wort Embeddings


Word2Vec mit Gensim

Wir benutzen in unserem Seminar Gensim. Diese Bibliothek beinhaltet u.a. eine Implementation des Word2Vec Models

GloVe

Word2vec und GloVe sind Embeddings welche durch neuronale Netze erstellt werden. Word2vec wird im Gegensatz zu GloVe supervised trainiert. Außerdem arbeitet es nicht wie Word2vec direkt mit dem Text,sondern mit einer Co-Occurence Matrix über die der Kontext der Wörter erhalten bleibt.

Pennington et al., 2014: Glove: Global Vectors for Word Representation

FastText

FastText ist im Gegensatz zu word2vec kein Word-Embedding mehr, sondern ein Charachter-Embedding. Somit kann es im Gegensatz zu den word2vec und GloVe Wörter vektorisieren, welche nicht im Trainingsvokabular enthalten waren.

Joulin et al., 2016: Bag of Tricks for Efficient Text Classification


Neuronale NLP Architekturen

nächste Woche

Deep Feed Forward Network

1D CNN

RNN/LSTM

ELMo & BERT


pitfalls of modern state of the art NLP systems...

Obwohl neuronales NLP zu vielen Durchbrüchen geführt hat, wie in den vorherigen Beiträgen zu sehen, gibt es immer noch viele Mängel, die von Modellen auf dem neuesten Stand der Technik mit vorab trainierten Worteinbettungen und Aufmerksamkeitsmechanismen gezeigt wurden. Diese Fehler in der neuronalen NLP haben gefährliche Auswirkungen auf Produktionssysteme, die nur wenig oder gar keinen Spielraum für Ungenauigkeit und Unvorhersehbarkeit bieten.

Oberflächliche Korrelationen

Eine große Herausforderung bei aktuellen Modellen besteht darin, dass sie oberflächliche Korrelationen in Daten lernen, die zu Modellen führen, die implizite soziale Vorurteile erfassen.

Ober-korell.png

1. Elazar and Goldberg et. al haben frühe Versuche gemacht mit adversarial training dem System immanente biases zu beseitigen: https://github.com/yanaiela/demog-text-removal

2. weiteres Jupyter-Notebook: How to make a racist AI without really trying


kontroverse Bewertung

Ein Nebenprodukt der oberflächlichen Korrelationen ist, dass sie Modelle einem gegnerischen Angriff aussetzen.

Kontro-bew.png

Die Auswirkungen sind ziemlich schockierend, da man sich vorstellen kann, widersprüchliche Beispiele zu verwenden, um kritische Produktions-NLP-Systeme in Branchen wie dem digitalen Gesundheitswesen, der digitalen Versicherung und dem digitalen Recht zu manipulieren und auszunutzen.


Semantische Variabilität

In der natürlichen Sprache gibt es viele Arten oder Umschreibungen, die dasselbe Konzept, dieselbe Beziehung oder dieselbe Idee ausdrücken können.

Ein möglicher Indikator dafür, dass oberflächliche Korrelationen viele Ergebnisse des Standes der Technik beeinflussen, ist, dass das Modell, obwohl es bei einem bestimmten Testbeispiel erwartungsgemäß funktioniert, wenn dasselbe Testbeispiel mit unterschiedlicher syntaktischer Struktur ausgedrückt wird, in seiner Vorhersage scheitert.

Beispiel, sentiment analysis:
Sem-var.png


Auszüge aus dem Leben...

In Australien entscheidet ein automatisiertes System über eingestellte Zahlungen an Empfänger:innen von Sozialleistungen und versendet jede Woche rund 50.000 entsprechende Benachrichtigungen. Luke Henriques-Gomes, Australien-Korrespondent bei The Guardian, berichtet über die teils prekären Situationen, in denen die Betroffenen dadurch landen würden. Häufig genügten geringste Versäumnisse, etwa die Nichtteilnahme an einem von der Arbeitsagentur kurzfristig festgelegten Termin, für einen Zahlungsstopp. Problematisch seien laut Henriques-Gomes nicht nur das aggressive Regelwerk des Systems und die Tatsache, dass menschliches Personal bei den Behörden immer weniger Einfluss auf Entscheidungen habe, sondern auch, dass den Betroffenen Ansprechpartner:innen fehlten – gerade dann, wenn eine algorithmische Entscheidung sich als falsch herausstellt (Fehlentscheidungen der Software sorgten sorgten schon vor zwei Jahren für Aufsehen).

Gemäß der Recherche des Guardian seien zwei Gruppen in besonderem Maße negativ von dem System betroffen: Obdachlose und Alleinerziehende.


Da errechnet der Computer laut Medienberichten bereits heute, wer nicht produktiv genug ist, und verwarnt und entlässt automatisiert. Der Vorgesetzte muss nur noch gegenzeichnen, wie das Portal mit diesem Dokument belegt. Laut dem Bericht würden jedes Jahr zahlreiche Mitarbeiter aufgrund mangelnder Effizienz entlassen, wobei die Überwachung und Auswahl mithilfe eines automatisierten Tools erfolge. Einige Mitarbeiter gaben an, dass sie deshalb bereits so weit wie möglich auf Toilettenpausen verzichteten.

Wie das US-Magazins "The Verge" berichtet, setzt der US-Onlineversandhändler einen Algorithmus ein, um die Arbeit seiner Mitarbeiter zu kontrollieren und auszuwerten. Ist die Leistung nicht zufriedenstellend, kann das System die Mitarbeiter sogar feuern. Kündigungen und Abmahnungen verschickt die KI teilweise automatisiert – und ohne vorherige Zustimmung eines Vorgesetzten.