이 저장소는 다음 논문의 공식 Pytorch 구현입니다.
Yaoyiran Li, Anna Korhonen 및 Ivan Vulić. 2023. 큰 언어 모델을 사용한 이중 언어 사전 유도 . 자연 언어 처리의 경험적 방법에 관한 2023 년 회의의 절차 (EMNLP 2023). [종이] [OpenReview]
Prompt4Bli는 자가 회귀 대형 언어 모델 (LLM)을 사용하여 이중 언어 사전 소용돌이 (BLI) / Word Translation 작업을 해결하는 것을 목표로합니다. 우리는 처음으로 BLI에 대한 다국어 LLM을 제시하는 것이 전통적인 BLI 접근법보다 성능이 우수하다는 것을 보여줍니다. 우리는 상용 LLM을 프롬프트하는 것이 이미 많은 BLI 언어 쌍 (우리의 주요 실험 설정)에서 새로운 최첨단 BLI 성능을 확립 할 수 있음을 보여 주지만, Prompt4Bli Repo는 또한 BLI- 지향적 미세 조정을위한 코드를 제공하여 결과를 더욱 향상시킬 수 있습니다 (소규모 LLM에서 시연).
전통적인 방법은 학습 매개 변수화 된 CLWE 매핑 또는 교차 문구 쌍 스코어링 기능에 의존하며 일반적으로 세 가지 설정에서 BLI를 다루고 있습니다. (1) 감독 , 5K 종자 번역 쌍; (2) 반 감독 , 1K 종자 번역 쌍; (3) 감독되지 않은 , 0 종자 번역 쌍. (참조, 우리의 이전 작품 대비 및 블리커). 전통적인 방법과는 달리 Prompt4Bli는 LLM 미세 조정이 필요 하지 않거나 학습 가능한 매개 변수를 업데이트하지 않으면 서 상용 LLM 만 사용합니다. 우리의 작업은 다음과 같은 프롬프트 설정을 고려합니다.
(참고 : 감독되지 않은 BLI를 조사하기 위해, 우리는 명령 조정 된 LLM 대신 사전에 사전 된 LLM을 사용하는 것이 좋습니다. LLM의 명령 조정 절차는 일반적으로 기계 번역에 대한 대규모 병렬 데이터를 다루기 때문입니다. 따라서 chatgpt 모델과 같은 지침 조정 된 LLM을 사용하여 제로 샷 프롬프트와 같은 다른 비교를 이끌어 낼 수 있습니다.
업데이트 : 후속 작업 항해 (ACL 2024)를 참조하십시오. 여기서 우리는 (1) 제로 샷 프롬프트로 고 자신감이있는 단어 번역 사전을 추론하여 (2) 고문 적 사전을 선택적으로 정제하여 컨텍스트 내 시험이 이전에 고도로 사전에서 최종적으로 진행되는 곳에서 최종적으로 고도의 프롬프트를 반복하여 선택적으로 정제합니다 . BLI 테스트는 소수의 샷 프롬프트로 설정된 최신 고문 사전에서 텍스트 내 샘플을 도출했습니다. 전체 프로세스는 훈련/소수의 샷 학습을위한 지상진 단어 번역 쌍을 활용하지 않으며 BLI 점수를 전형적으로 0 샷 프롬프트와 비교하여 10 ~ 15 p@1 점으로 향상시킵니다.
| LLM | (포옹) 모델 ID |
|---|---|
| mt5-small | "Google/MT5-Small" |
| MT5-베이스 | "Google/MT5-Base" |
| MT5-LARGE | "Google/MT5-Large" |
| MT5-XL | "Google/MT5-XL" |
| MT5-XXL | "Google/MT5-XXL" |
| MT0-Small | "BigScience/mt0-small" |
| MT0-베이스 | "BigScience/mt0-base" |
| MT0-LARGE | "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-Aai/mgpt" |
| llama-7b | "huggyllama/llama-7b" |
| llama-13b | "huggyllama/llama-13b" |
| llama2-7b | "메타-롤라/라마 -2-7B-HF" |
| llama2-13b | "메타-롤라/라마 -2-13B-HF" |
| llama3-8b | "메타-롤람/메타-롤라마 -3-8B" |
우리의 연구에서 채택 된 위의 LLM의 대부분은 지시 조정 된 LLM이 아닌 사전에 사전 LLM입니다 (우리 논문에서보고 된대로 최고의 BLI 점수를 달성하는 LLAMA 모델). 원래 논문에 채택 된 LLM 외에도 LLAMA2-7B, LLAMA2-13B 및 LLAMA3-8B를 현재 코드 리포지토리에 추가로 통합합니다 (모두 명령 조정 된 버전이 아닌 모두 사전 예측 버전입니다). LLAMA2-7B 및 LLAMA2-13B 모델이 조사되고 결과는 후속 작업 항해 (ACL 2024)에서보고됩니다. Sail은 또한 GPT-3.5 및 GPT-4 (명령 조정)로 제로 샷 프롬프트를 수행합니다. 세부 사항은 Sail을 참조하십시오.
대조적 인 블리와 블리커에 이어, 우리의 데이터는 Xling (8 언어, 총 56 개의 BLI 방향) 및 Panlex-Bli (15 개의 하위 자원 언어, 총 210 개의 BLI 방향)에서 얻습니다.
Xling 데이터 가져 오기 :
sh get_xling_data.shPanlex-Bli의 경우 ./get_panlex_data를 참조하십시오. 여기서 단일 단어 임베드를 도출하기위한 코드를 제공합니다.
BLI 데이터를 준비하고 소수의 샷 프롬프트 (Xling)에 대한 컨텍스트 내 예제를 추출합니다.
python run_extract_vocabularies.py
python run_extract_bli_data.pyBLI 데이터를 준비하고 소수의 샷 프롬프트 (panlex-bli)에 대한 컨텍스트 내 예제를 추출합니다.
python run_extract_vocabularies_panlex.py
python run_extract_bli_data_panlex.py(선택 사항) Bli-Oriented LLM 미세 조정 실행 (LLM DIRS, 학습 속도, 배치 크기 및 Run_Training.py의 임의의 종자 정의) :
python run_prepare_training_data.py
python run_training.py실행 BLI 평가 (종자 사전 크기 정의, N_SHOT, LLM DIR 및 언어 쌍을 run_bli.py에서 수동으로 평가하기 위해 언어 쌍) :
python run_bli.pyPrompt4Bli가 유용하다고 생각되면 논문을 인용하십시오.
@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 }
}