Implémentation Pytorch de Bert 2018 de Google AI, avec une annotation simple
Bert 2018 Bert: pré-formation des transformateurs bidirectionnels profonds pour la compréhension du langage URL du papier: https://arxiv.org/abs/1810.04805
Le papier Bert de Google AI montre le résultat étonnant sur diverses tâches NLP (nouvelles tâches NLP SOTA), y compris surperformer le score F1 humain sur la tâche Squad V1.1 QA. Cet article a prouvé que l'encodeur basé sur le transformateur (auto-agencement) peut être puissant utilisé comme alternative du modèle de langue précédente avec une méthode de formation de modèle de langage approprié. Et plus important encore, ils nous ont montré que ce modèle de langage pré-formé peut être transféré dans n'importe quelle tâche PNL sans fabriquer une architecture de modèle spécifique à la tâche.
Ce résultat étonnant serait enregistré dans l'histoire de la PNL, et je m'attends à ce que de nombreux autres articles sur Bert soient publiés très bientôt.
Ce repo est la mise en œuvre de Bert. Le code est très simple et facile à comprendre rapidement. Certains de ces codes sont basés sur le transformateur annoté
Actuellement, ce projet travaille sur les progrès. Et le code n'est pas encore vérifié.
pip install bert-pytorch
AVIS: Votre corpus doit être préparé avec deux phrases en une seule ligne avec un séparateur d'onglet ( t)
Welcome to the t the junglen
I can stay t here all nightn
ou corpus tokenisé (la tokenisation n'est pas dans l'emballage)
Wel_ _come _to _the t _the _junglen
_I _can _stay t _here _all _nightn
bert-vocab -c data/corpus.small -o data/vocab.smallbert -c data/corpus.small -v data/vocab.small -o output/bert.modelDans l'article, les auteurs montrent les nouvelles méthodes de formation du modèle de langue, qui sont "Masked Language Model" et "Prédire la phrase suivante".
Papier d'origine: 3.3.1 Tâche n ° 1: Masked LM
Input Sequence : The man went to [MASK] store with [MASK] dog
Target Sequence : the his
Au hasard, 15% du jeton d'entrée sera transformé en quelque chose, basé sur des sous-rules
[MASK][RANDOM] (un autre mot)Papier d'origine: 3.3.2 Tâche n ° 2: Prédiction de phrase suivante
Input : [CLS] the man went to the store [SEP] he bought a gallon of milk [SEP]
Label : Is Next
Input = [CLS] the man heading to the store [SEP] penguin [MASK] are flight ##less birds [SEP]
Label = NotNext
"Cette phrase peut-elle être connectée en continu?"
Comprendre la relation, entre deux phrases de texte, qui n'est pas directement capturée par la modélisation du langage
Junseong Kim, Scatter Lab ([email protected] / [email protected])
Ce projet suivant la licence Apache 2.0 tel qu'écrit dans le fichier de licence
Copyright 2018 Junseong Kim, Scatter Lab, contributeurs Bert respectifs
Copyright (C) 2018 Alexander Rush: The Annoted TrasnFormer