該存儲庫是以下論文的官方Pytorch實施:
Yaoyiran Li,Anna Korhonen和IvanVulić。 2023年。關於雙語詞典感應,具有大型語言模型。在2023年關於自然語言處理經驗方法會議的會議錄中(EMNLP 2023)。 [紙] [OpenReview]
Press4Bli旨在通過自回歸大型語言模型(LLM)(LLM)解決雙語詞典歸納(BLI) /單詞翻譯任務。我們首次證明,促使BLI的多語言LLM均優於傳統的BLI方法,這些方法依賴於計算跨語性單詞嵌入(CLWES)。雖然我們表明提示現成的LLM可以在許多BLI語言對(我們的主要實驗設置)上建立新的最先進的BLI性能,但提示4BLI儲備還為BLI-Iniendienciped微型調整提供了代碼,可以進一步改善結果(作為輔助實驗,在較小規模的LLMS上證明了輔助實驗)。
傳統方法依賴於學習參數化的Clwe映射或跨語性單詞對評分功能,通常在三個設置中處理BLI:(1)受監督的5k種子翻譯對; (2)半監督,1k種子翻譯對; (3)無監督,0個種子翻譯對。 (參見我們以前的作品對比和玻璃杯)。與傳統方法不同,提示4BLI僅利用現成的LLM,不需要LLM微調或更新任何可學習的參數。我們的工作考慮以下提示設置:
(注意:要調查無監督的BLI,我們建議使用預識別的LLM而不是指令調整。
更新:請參閱我們的後續工作帆(ACL 2024),在此過程中,我們進一步改善了無監督的BLI,通過(1)推斷出一個高信心單詞翻譯詞典,零射擊提示, (2)(2)可選地,然後選擇較高的效率迭代,並在較少的示例中進行了較少的示例,從而在較高的範圍內進行了高度測試,並最終是遍地性的,並且最終是遍地及其及以前的效果。設置有很少的發動機提示,還從最新的高信心詞典中得出了文本樣本。整個過程不利用任何地面真實的單詞翻譯對進行訓練/幾次學習,並將BLI分數提高至通常為10〜15 p@1分,而不是零射擊提示。
| LLM | (擁抱面)模型ID |
|---|---|
| mt5-small | “ Google/mt5-small” |
| mt5基 | “ Google/MT5基本” |
| MT5大 | “ Google/mt5-large” |
| MT5-XL | “ Google/MT5-XL” |
| mt5-xxl | “ Google/MT5-XXL” |
| mt0-small | “ BigScience/MT0-Mall” |
| mt0基 | “ Bigscience/MT0-Base” |
| MT0大 | “ Bigscience/MT0-LARGE” |
| mt0-xl | “ BigScience/MT0-XL” |
| mt0-xxl | “ BigScience/MT0-XXL” |
| XGLM-564M | “ Facebook/XGLM-564M” |
| XGLM-1.7B | “ Facebook/XGLM-1.7B” |
| XGLM-2.9B | “ Facebook/XGLM-2.9B” |
| XGLM-4.5B | “ Facebook/XGLM-4.5B” |
| XGLM-7.5B | “ Facebook/XGLM-7.5B” |
| mgpt | “ sberbank-ai/mgpt” |
| Llama-7b | “ Huggyllama/Llama-7b” |
| Llama-13b | “ Huggyllama/Llama-13b” |
| Llama2-7b | “ Meta-llama/Llama-2-7b-hf” |
| Llama2-13b | “ Meta-llama/Llama-2-13b-hf” |
| Llama3-8b | “ meta-llama/meta-llama-3-8b” |
上述LLM在我們的研究中採用的大多數LLM是驗證的LLM,而不是指導調整的LLM(如我們論文所報導的最佳BLI分數的LLAMA模型也是預審前的版本)。除原始論文中採用的LLM外,我們還將Llama2-7B,Llama2-13b和Llama3-8B整合到當前代碼庫中(它們都是預驗證的版本,而不是指導性的版本)。研究了Llama2-7b和Llama2-13b模型,並在我們的後續工作帆中報告了結果(ACL 2024)。 SAIL還使用GPT-3.5和GPT-4(指令調整)進行零射擊。請參閱帆以獲取細節。
在對比度和玻璃體之後,我們的數據是從Xling(總共8種語言,56個BLI方向)和Panlex-Bli(15種低資源語言,總計210個BLI方向)獲得的。
獲取Xling數據:
sh get_xling_data.sh對於Panlex-Bli,請參閱./get_panlex_data,我們提供用於得出單語單詞嵌入的代碼。
準備BLI數據並提取在上下文中的示例,以進行幾次彈藥提示(Xling):
python run_extract_vocabularies.py
python run_extract_bli_data.py準備BLI數據並提取在上下文中的示例,以進行幾次發動機提示(Panlex-Bli):
python run_extract_vocabularies_panlex.py
python run_extract_bli_data_panlex.py(可選)運行面向BLI的LLM微調(定義LLM DIR,學習率,批處理大小和Run_training.py中的隨機種子):
python run_prepare_training_data.py
python run_training.py運行BLI評估(定義種子字典大小,N_Shot,LLM DIR和語言對,以在run_bli.py中手動評估):
python run_bli.py如果您覺得提前4bli有用,請引用我們的論文。
@inproceedings { li-etal-2023-bilingual ,
title = { On Bilingual Lexicon Induction with Large Language Models } ,
author = { Li, Yaoyiran and Korhonen, Anna and Vuli{'c}, Ivan } ,
booktitle = { Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing } ,
year = { 2023 }
}後續工作(帆中可用代碼):
@inproceedings { li-etal-2024-self-augmented ,
title = { Self-Augmented In-Context Learning for Unsupervised Word Translation } ,
author = { Li, Yaoyiran and Korhonen, Anna and Vuli{'c}, Ivan } ,
booktitle = { Proceedings of the 62nd Annual Meeting of the Association for Computational Linguistics } ,
year = { 2024 }
}