Code et données pour le papier liant les langues émergentes et naturelles via le transfert de cospus à ICLR 2022 (projecteur).
@inproceedings { yao2022linking ,
title = { Linking Emergent and Natural Languages via Corpus Transfer } ,
author = { Yao, Shunyu and Yu, Mo and Zhang, Yang and Narasimhan, Karthik and Tenenbaum, Joshua and Gan, Chuang } ,
booktitle = { International Conference on Learning Representations (ICLR) } ,
year = { 2022 } ,
html = { https://openreview.net/pdf?id=49A1Y6tRhaq } ,
}Google Drive comprend
image_features : Caractéristiques de l'image des ensembles de données COCO-2014 ( coco.pt ) et conceptuels ( cc.pt ) à partir d'un RESNET pré-formé, à utiliser en pré-formation EC.
lm_corpora : Corpades utilisées pour les expériences de transfert de modélisation du langage.
| Nom | Usage | Commentaire |
|---|---|---|
| cc.pt | prétraitement | Langue émergente |
| paren-zipf.pt | prétraitement | Langue régulière de parenthèses nicheuses |
| wiki-es.pt | prétraitement | Wikipedia espagnol (ie-romance) |
| wiki-da.pt | affiner | Wikipedia danois (ie-allemanic) |
| wiki-eu.pt | affiner | Basque (basque) wikipedia |
| wiki-ja.pt | affiner | Japonais (japonais) Wikipedia |
| wiki-ro.pt | affiner | Wikipedia roumain (ie-romance) |
| wiki-fi.pt | affiner | Wikipedia finlandais (uralique) |
| wiki-id.pt | affiner | Wikipedia indonésien (austronésien) |
| wiki-kk.pt | affiner | Kazakh (turc) Wikipedia |
| wiki-he.pt | affiner | Wikipedia hébreu (afro-asiatique) |
| wiki-ur.pt | affiner | Ourdou (ie-indique) wikipedia |
| wiki-fa.pt | affiner | Wikipedia persan (ie-iranien) |
Cette partie vise à générer un corpus Langauge émergent pour les tâches en aval. Téléchargez image_features de Google Drive à ./ec-pretrain/data . Pour suivre la formation en communication émergente,
cd ec-game
python train.pyQuelques options majeures:
--dataset : Utilisez un ensemble de données conceptuels de légendes ( cc ) ou MS-COCO ( coco_2014 ).--vocab_size : Taille de vocabulaire (par défaut 4035 ).--seq_len : limite de longueur de séquence (par défaut 15 ). Une telle formation de jeu stocke automatiquement les agents EC (par exemple ./ckpt/cc_vocab_4035_seq_15_reset_-1_nlayers_1/run77926/model_90.6_1000_4035.pt ) et émergente corpora (eg (eg ./ckpt/cc_vocab_4035_seq_15_reset_-1_nlayers_1/run77926/model_90.6_1000_4035.pt-cc.pt , qui peut être utilisé à la place de lm_corpora/cc.pt à partir de Google Drive) à partir de différentes étapes d'entraînement. Dans l'exemple, 90.6_1000_4035 représente la précision du jeu, les étapes d'entraînement du jeu et la taille du vocabulaire du jeu respectivement.
Cette partie vise à reproduire la figure 2 du papier. Téléchargez lm_corpora de Google Drive à ./ec-pretrain/data .
Pour exécuter la pré-formation,
export size=2 # 2,5,10,15,30
export pt_name= " wiki-es " # "paren-zipf", "cc"
. pretrain.shPour courir le réglage fin,
export size=2 # 2,5,10,15,30
export pt_name= " wiki-es " # "paren-zipf", "cc"
export ft_name= " wiki-ro "
export ckpt=3000
. finetune.shSignification des variables ci-dessus:
size : taille de jeton (million) de corpus pré-formation ( [2, 5, 10, 15, 30] ).pt_name : Nom de la pré-formation Corpus ( ["wiki-es", "paren-zipf", "cc"] ).ft_name : Nom de Fine-Tuning Corpus ( ["wiki-ro", "wiki-da.pt] ).ckpt : Quel point de contrôle pré-formation à utiliser pour le réglage fin (par défaut 3000 ). La partie EC du code est basée sur ECNMT, qui était en partie basée sur Transagent.
La partie LM du code est basée sur HuggingFace run_clm.py.
Les ensembles de données pour nos expériences EC incluent MS Coco et les légendes conceptuelles.
Les ensembles de données de nos expériences LM dérivent de la transfert d'inclinaison.
Veuillez citer ces ressources en conséquence. Pour toute question, contactez Shunyu.