Les modèles linguistiques basés sur l'apprentissage profond (DL) atteignent des performances élevées sur divers critères d'inférence en langage naturel (NLI). Et à l’heure actuelle, les approches symboliques du NLI reçoivent moins d’attention. Les deux approches (symbolique et DL) ont leurs avantages et leurs faiblesses. Cependant, à l’heure actuelle, aucune méthode ne les combine dans un système permettant de résoudre la tâche du NLI. Pour fusionner les méthodes d'apprentissage symbolique et profond, nous proposons un cadre d'inférence appelé NeuralLog , qui utilise à la fois un moteur d'inférence logique basé sur la monotonie et un modèle de langage de réseau neuronal pour l'alignement des phrases. Notre cadre modélise la tâche NLI comme un problème de recherche classique et utilise l'algorithme de recherche de faisceaux pour rechercher des chemins d'inférence optimaux. Les expériences montrent que notre système conjoint de logique et d'inférence neuronale améliore la précision de la tâche NLI et peut atteindre une précision de pointe sur les ensembles de données SICK et MED.
Les publications suivantes sont intégrées dans ce cadre :
L'environnement recommandé inclut Python 3.6 ou supérieur, Stanza v1.2.0 ou supérieur et **ImageMagick v7.0.11. Le code ne fonctionne pas avec Python 2.7.
Cloner le référentiel
git clone https://github.com/eric11eca/NeuralLog.git
Téléchargez d'abord un modèle pré-entraîné depuis Google Drive. Remplacez le modèle Stanza defalut depparse par cette version pré-entraînée. Le chemin du modèle Stanza est :
C:Users$your_user_name$stanza_resourcesen
Puis ouvrez UdeoLog.ipynb
Nous proposons deux modèles d’analyseur UD pour l’anglais. Certains modèles sont des modèles à usage général, tandis que d'autres produisent des intégrations pour des cas d'utilisation spécifiques. Les modèles pré-entraînés peuvent être chargés en passant simplement le nom du modèle : SentenceTransformer('model_name')
.
Pour former de nouveaux modèles d'analyseur UD, consultez la documentation de formation de Stanza pour une introduction à la façon de former votre propre analyseur UD.
Si vous trouvez ce référentiel utile, n'hésitez pas à citer notre publication NeuralLog : Natural Language Inference with Joint Neural and Logical Reasoning :
@misc { chen2021 NeuralLog ,
title = { NeuralLog : Natural Language Inference with Joint Neural and Logical Reasoning } ,
author = { Zeming Chen and Qiyue Gao and Lawrence S. Moss } ,
year = { 2021 } ,
eprint = { 2105.14167 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CL }
}
Personne de contact : Zeming Chen, [email protected] N'hésitez pas à nous envoyer un e-mail ou à signaler un problème, si quelque chose est cassé ou si vous avez d'autres questions.
Ce référentiel contient des logiciels expérimentaux et est publié dans le seul but de fournir des détails supplémentaires sur la publication respective.