Abschlussprojekte des Kurses Deep Learning in Natural Language Processing (von DeepPavlov Lab)

" Deep Learning in Natural Language Processing ", ein offener Bildungskurs zur Verarbeitung natürlicher Sprache, wurde kürzlich abgeschlossen . Traditionell sind die Kuratoren des Kurses Mitarbeiter des DeepPavlov- Projekts , einer offenen Bibliothek für gesprochene künstliche Intelligenz, die im neuronalen System- und Deep-Learning-Labor des MIPT entwickelt wird. Der Kurs wurde mit der Informationsunterstützung der Open Data Science Community durchgeführt . Wenn Sie weitere Informationen zum Kursformat benötigen, klicken Sie hier . Eines der Schlüsselelemente von DL in NLP ist die Möglichkeit, sich als Forscher zu fühlen und Ihr eigenes Projekt umzusetzen.



Wir sprechen regelmäßig über Mediumüber Projekte, die die Teilnehmer im Rahmen unserer Bildungsprogramme erstellen, zum Beispiel, wie man ein gesprochenes Orakel baut . Heute sind wir bereit, die Ergebnisse des Semesterkurses im Frühjahr 2020 zu teilen.







Einige Daten und Analysen



In diesem Jahr haben wir alle Rekorde in Bezug auf die Anzahl der Kurse gebrochen: Anfang Februar waren etwa 800 Personen eingeschrieben . Seien wir ehrlich, wir waren nicht bereit für so viele Teilnehmer, also haben wir uns unterwegs viele Punkte ausgedacht. Aber wir werden das nächste Mal darüber schreiben.



Kehren wir zu den Teilnehmern zurück. Hat jeder den Kurs beendet? Die Antwort liegt natürlich auf der Hand. Mit jeder neuen Aufgabe wurde die Zahl der Willigen immer geringer. Infolgedessen blieb entweder wegen Quarantäne oder aus anderen Gründen, aber bis zur Mitte des Kurses nur die Hälfte übrig. Nun, dann musste ich mich für Projekte entscheiden. 70 Arbeiten wurden von den Teilnehmern angekündigt. Und das beliebteste Projekt - Tweet Sentiment Extraction - Neunzehn Teams versuchten, die Aufgabe auf Kaggle zu erledigen .



Mehr zu den vorgestellten Projekten



Letzte Woche haben wir eine letzte Sitzung des Kurses abgehalten, in der mehrere Teams ihre Projekte vorgestellt haben. Wenn Sie das offene Seminar verpasst haben, haben wir eine Aufzeichnung vorbereitet . Im Folgenden werden wir versuchen, die implementierten Fälle kurz zu beschreiben.



Kaggle Jigsaw: Mehrsprachige Klassifizierung toxischer Kommentare



Roman Shchekin (QtRoS), Denis Grushentsev (böse), Maxim Talimanchuk (mtalimanchuk)



Dieser Wettbewerb ist eine Fortsetzung des beliebten Wettbewerbs von Jigsaw zur Bestimmung von toxischem Text. In diesem Fall finden jedoch Schulungen zu englischen Daten und Tests zu mehrsprachigen Daten (einschließlich Russisch) statt. Die Bewertung basiert auf der ROC AUC-Metrik. Das Team holte Bronze (132 von 1621) mit einer ROC AUC von ~ 0,9463. Das endgültige Modell war ein Ensemble von Klassifikatoren:



  • XLMRoberta groß
  • Naive Bayes
  • Bert Basis
  • Bert Basis mehrsprachig
  • BENUTZEN Sie mehrsprachig


XLMRoberta groß mit einer linearen Schicht von 1024 * 1 wurde mit dem AdamW-Optimierer an einem Basisdatensatz trainiert. Das mehrsprachige USE-Modell wurde in der Basisversion (in 16 Sprachen geschult) ohne zusätzliche Schulung verwendet. Die Verwendung der Bert-Basis war aufgrund der automatischen Übersetzung des Testdatensatzes ins Englische möglich. Der Trainingssatz wurde um zusätzliche Datensätze erweitert.



Die Projektpräsentation finden Sie hier .

Das Projekt GitHub ist unter diesem Link verfügbar .



Bei Bert-Destillation



Nikita Balaganskiy



Wie Sie wissen, liegen Modelle, die auf der BERT-Architektur basieren und beeindruckende Qualitätsbewertungen erzielen, immer noch weit hinter der Leistung zurück. Dies liegt daran, dass BERT ein Modell mit einer großen Anzahl von Gewichten ist. Es gibt verschiedene Möglichkeiten, das Modell zu reduzieren. Eine davon ist die Destillation. Die Idee hinter der Destillation ist es, ein kleineres "Schüler" -Modell zu erstellen, das das Verhalten des größeren "Lehrer" -Modells nachahmt. Das russische Studentenmodell wurde 100 Stunden lang auf vier 1080ti-Karten in einem Nachrichtendatensatz trainiert. Infolgedessen war das Modell des Schülers 1,7-mal kleiner als das ursprüngliche Modell.... An einem Datensatz wurde ein Vergleich der Qualität der Schüler- und Lehrermodelle durchgeführt, um die emotionale Färbung des Mokoron-Textes zu bestimmen. Infolgedessen war das Schülermodell vergleichbar mit dem des Lehrers. Das Trainingsskript wurde mit dem Katalysatorpaket geschrieben . Sie können mehr über das Projekt auf Medium lesen .



Die Projektpräsentation finden Sie hier .

Der GitHub des Projekts ist unter diesem Link verfügbar .





Bild: rasa.com



Open Data Science Fragen beantworten



Ilya Sirotkin, Yuri Zelensky, Ekaterina Karpova



Alles begann mit einem Beitrag in ODS von Ekaterina Karpova. Die Idee war ziemlich ehrgeizig - einen Autoresponder für Fragen in der ODS-Slack-Community zu erstellen, der auf dem gesammelten Datensatz von Fragen und Antworten basiert. Die vorläufige Analyse ergab jedoch, dass die meisten Fragen ziemlich einzigartig sind, und die Erstellung eines gekennzeichneten Testsatzes zur Bewertung der Qualität ist eine ziemlich mühsame Aufgabe. Daher wurde beschlossen, zunächst einen Klassifikator zu erstellen, um festzustellen, ob die gestellte Frage zum ODS-Slack-Kanal gehört. Er würde ODS-Neulingen helfen, Fragen zum jeweiligen Kanalthema zu stellen. Die pwROC-AUC-Metrik wurde als Qualitätsbewertung ausgewählt.



Im Rahmen des Projekts wurde eine vergleichende Analyse populärer Textklassifizierungsmodelle durchgeführt. Das beste von ihnen - das RuBERT-basierte Modell von DeepPavlov - zeigte eine Qualität von 0,995 pwROC-AUC. Eine derart hohe Anzahl an Modellqualitäten weist auf einen hohen Grad an Trennung (und Trennbarkeit) der Originaldaten hin. Der einzige Kanal, der für alle von uns getesteten Modelle problematisch ist, ist _call_4_colaboration. Aber warum genau er, konnte man noch nicht herausfinden.



Nachdem das Team diese Aufgabe erledigt hat, lässt es keine Hoffnung mehr, zur ursprünglichen Aufgabe zurückzukehren, Fragen von ODS-Benutzern zu beantworten.



Die Projektpräsentation finden Sie hier .

Das Projekt GitHub ist unter diesem Link verfügbar .



Russische aspektbasierte Stimmungsanalyse



Dmitry Bunin



Im Rahmen dieses Projekts wurde das Problem der Bestimmung der Stimmung in Bezug auf ein bestimmtes Objekt im Text gelöst (Problem C aus dem Wettbewerb Dialogue Evaluation 2015). Als Datensätze wurden sowohl russische als auch englische Daten verwendet. Grundsätzlich wurden moderne Modelle verglichen, die auf ELM-Architekturen (aus dem RusVectores-Paket) und BERT (aus dem DeepPavlov- Paket ) basieren . Das ELM + CNN-Modell in russischer Sprache zeigte trotz der kleinen Trainingsstichprobe und des starken Datenungleichgewichts eine vergleichbare Qualität wie das beste Modell der Konkurrenz.



Die Projektpräsentation finden Sie hier .

Das Projekt GitHub ist unter diesem Link verfügbar .







Kaggle: Tweet Sentiment Extraction



Kirill Gerasimov



Gemäß den Wettbewerbsbedingungen bestand die Aufgabe darin, ein Schlüsselwort oder eine Phrase aus dem Tweet-Text zu extrahieren, die die Stimmung dieses Tweets definieren würde. Der Jaccard Score auf Wortebene wurde als Qualitätsmetrik verwendet. Bei diesem Wettbewerb waren alle Teilnehmer verrauschten Daten und mehrdeutigen Markups ausgesetzt. Das Team verwendete ein öffentliches Laptop-Modell, das auf der RoBERTa-Basis basiert, als Basismodell. Dieses Modell verwendet einen Leseverständnisansatz, bei dem der Anfang und das Ende der Schlüsselphrase hervorgehoben werden (mit der obligatorischen Bedingung, dass das Ende nach dem Anfang liegt). Nach der anerkannten Tradition war das Ensemble verschiedener Modelle schneller als einzelne Modelle. Als Ergebnis Bronze (135. Platz von 2100)... Nach den Erfahrungen des Gewinners des Wettbewerbs ergeben zweistufige Anmerkungen noch bessere Geschwindigkeiten.



Die Projektpräsentation finden Sie hier .

Das Projekt GitHub ist unter diesem Link verfügbar .



Automatische Lösung der Prüfung



Mikhail Teterin und Leonid Morozov



Ziel dieses Projekts ist es, die Qualitätsmetriken für drei Aufgaben des AI Journey 2019-Wettbewerbs (automatische Lösung der Prüfung) zu verbessern , nämlich:



  • Suche nach Hauptinformationen im Text;
  • Bestimmen der Bedeutung eines Wortes in einem gegebenen Kontext;
  • Platzierung von Satzzeichen in Sätzen.


Bei allen drei Problemen wurde die beste Lösung im Wettbewerb übertroffen. Die Verbesserungen sind hauptsächlich auf die Verwendung zusätzlicher Trainingsdaten zurückzuführen. Bei Lösungen zeigten Modelle auf Basis von RuBERT von DeepPavlov die beste Qualität .



Die Projektpräsentation finden Sie hier .

Das Projekt GitHub ist unter diesem Link verfügbar .







In diesem Artikel haben wir versucht, über einige der Projekte zu berichten, die auf dem Seminar vorgestellt wurden, aber natürlich gab es mehr davon.



Vielen Dank an alle, die aktiv am Kurs teilgenommen haben und nicht aufgegeben haben. Für diejenigen, die nur lernen und nach interessanten Aufgaben im Bereich NLP suchen, empfehlen wir, das DeepPavlov Contribute-Projekt in Betracht zu ziehen .Die Zukunft der Conversational AI liegt in Ihren Händen!



All Articles