Repositori ini adalah implementasi Pytorch resmi dari makalah berikut:
Yaoyiran Li, Anna Korhonen, dan Ivan Volić. 2024. S ELF- A UMMENDID I N-Context L Penghasilan untuk terjemahan kata tanpa pengawasan . Dalam Prosiding Pertemuan Tahunan ke -62 dari Asosiasi Linguistik Komputasi (ACL 2024). [Kertas]
Sail bertujuan untuk meningkatkan translasi kata tanpa pengawasan / induksi leksikon bilingual (BLI) dengan (1) menyimpulkan kamus terjemahan kata yang percaya tinggi dengan nol-tembakan yang diminta, (2) kemudian secara opsional menyempurnakan kamus kepercayaan tinggi secara iteratif dengan beberapa tembakan yang diminta di mana di mana diminta di mana di mana diminta di mana beberapa tendangan di mana-mana yang diminta di mana. Contoh-contoh dalam konteks berasal dari kamus kepercayaan tinggi dalam iterasi sebelumnya, dan (3) akhirnya melakukan evaluasi pada set uji BLI dengan beberapa tendangan yang diminta juga mendapatkan sampel dalam konteks dari kamus kepercayaan tinggi terbaru. Seluruh proses tidak memanfaatkan pasangan terjemahan kata kebenaran tanah untuk pelatihan/pembelajaran beberapa tembakan dan meningkatkan skor BLI dengan biasanya 10 ~ 15 poin presisi@1 pada tolok ukur BLI kami dibandingkan dengan dorongan nol-tembakan.
Mengikuti pekerjaan kami sebelumnya, Kontrasvebli, Blicer dan Prompt4BLI, data kami diperoleh dari Xling (8 bahasa, total 56 arah BLI) dan Panlex-BLI (15 bahasa yang lebih rendah, total arah 210 BLI).
Dapatkan Data Xling:
sh get_xling_data.sh
Untuk Panlex-BLI, silakan lihat ./get_panlex_data, di mana kami menyediakan kode untuk mendapatkan kata embeddings kata monolingual.
Siapkan kosakata bli:
python run_extract_vocabularies.py
Jalankan evaluasi BLI dengan Sail (tentukan hyper-parameter utama, direktori dan pasangan bahasa untuk mengevaluasi secara manual di run_bli.py):
python run_bli.py
(Opsional) Jalankan nol-shot yang mendorong baseline yang diperkenalkan di Prompt4BLI dengan model LLAMA:
python run_zero_shot.py
(Opsional) Jalankan Nol-Shot yang Meminta Baseline Diperkenalkan di Prompt4BLI Dengan Model ChatGPT:
python run_zero_shot_chatgpt.py
Eksperimen Utama (Layar):
Eksperimen utama kami termasuk empat model Llama pretrained tanpa pengajaran.
Llm | ID model (memeluk wajah) |
---|---|
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" |
UPDATE: LLAMA3-8B meta-llama/Meta-Llama-3-8B
juga didukung dalam repo kode kami sekarang.
Eksperimen ChatGPT Tambahan (hanya dorongan nol-shot, sesuai dengan Bagian 4.2 makalah kami):
Karena penyetelan instruksi model chatgpt cenderung mencakup data paralel skala besar untuk terjemahan mesin, mereka tidak cocok untuk BLI tanpa pengawasan (selain itu, RLHF juga dapat menyertakan sinyal pengawasan terjemahan tingkat kata/kalimat dari annotator/pengguna ). Kami melaporkan hasil chatgpt yang diturunkan dengan nol-tembakan hanya sebagai referensi.
Llm | ID Model (Openai API) |
---|---|
GPT-3.5 | "GPT-3.5-turbo-0125" |
GPT-4 | "GPT-4-TURBO-2024-04-09" |
Kami juga merilis kamus yang beragama yang diturunkan dengan llama2-13b seperti yang dibahas dalam bagian 4.2 makalah kami di ./augmenteddicts-llama2-13b. Kamus-Kamus Kepercayaan Tinggi ini disimpulkan dengan N IT = 1, N F = 5000, dan dengan kata-kata-kata.
Harap kutip kertas kami jika Anda menganggap Sail-BLI bermanfaat.
@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 }
}