3.1K Views
October 03, 24
スライド概要
DL輪読会資料
RomanSetu: Efficiently unlocking multilingual capabilities of Large Language Models via Romanization (ACL 2024) + An Empirical Comparison of Vocabulary Expansion and Initialization Approaches for Language Models (2024) Andrew Gambardella, Matsuo-Iwasawa Lab 1
目次 • 両方の論文の書誌情報 • 両方の論文の背景 • RomanSetu: Efficiently unlocking multilingual capabilities of Large Language Models via Romanizationの詳細 • An Empirical Comparison of Vocabulary Expansion and Initialization Approaches for Language Models (Constrained Word2Vec) の詳細 • まとめ 2
序文:Karpathy先生のお告げ 3
書誌情報 • RomanSetu: Efficiently unlocking multilingual capabilities of Large Language Models via Romanization • 著者は7名(主要著者: Jaavid Aktar Husain)所属は以下が含まれる • Nilekani Centre at AI4Bharat • IIIT D&M Kancheepuram • Flipkart • Mohamed bin Zayed University of Artificial Intelligence • National Institute of Information and Communications Technology, Kyoto, Japan • Institute for Infocomm Research (I2R), A∗STAR, Singapore • Microsoft India • Indian Institute of Technology Madras, India • Indian Institute of Technology Bombay • URL • (arXiv) https://arxiv.org/abs/2401.14280 • ACL Page: https://aclanthology.org/2024.acl-long.833/ • Code: https://github.com/AI4Bharat/romansetu – ローマ字を通じて英語LLMを多言語LLMにする方法を紹介 4
書誌情報 • An Empirical Comparison of Vocabulary Expansion and Initialization Approaches for Language Models (Constrained Word2Vec) • 著者は6名(主要著者: Nandini Mundra, Aditya Nanda Kishore )所属は以下が含まれる • Indian Institute of Technology Madras • Nilekani Centre at AI4Bharat • National Institute of Information and Communications Technology, Japan • Institute for Infocomm Research (I2R), A∗STAR, Singapore • Microsoft India • Indian Institute of Technology Bombay • URL • (arXiv) https://arxiv.org/abs/2407.05841 • Code: https://github.com/AI4Bharat/VocabAdaptation_LLM/tree/CW2V – 英語LLMの性能を低下させない語彙拡張方法を紹介 5
英語LLMを多言語LLMにするにはどうすればいい? • 言語、Tokenizerによって違う • 英語LLMのトークン、Tokenizerはほぼ100%ローマ字 • 英語LLMをcontinual pre-trainingの過程で多言語LLMにするにはまず はTokenizerの問題をなんとかしないといけない • 無視すると性能が低くなって、inferenceはもっと時間やお金かかって、長い 文字列に対応できなくなる • 今日は多言語LLMのTokenizer問題を回避するための2通りの方法を 紹介 • • RomanSetu – 追加言語をローマ字にすることで多言語化 Constrained Word2Vec – 語彙拡張のinitializationで多言語化 6
評価される言語 • RomanSetu: ヒンディー語、マラーティー語、グジャラート語、タミ ル語、マラヤーラム語 – ヒンディー語、マラーティー語、グジャラート語はインド・ヨーロッパ語族 のインド・アーリア語群に入ってる – タミル語、マラヤーラム語はドラヴィダ語族に入ってる • Constrained Word2Vec: ヒンディー語、タミル語、ロシア語、ドイツ 語 7
RomanSetu • ローマ字の長所 – Tokenizerはすでにローマ字に対応している • ローマ字の短所 – 既存のTokenizerのトークンは英語に頻繁に出てくる組み合わせ(~ing, the, …) – ローマ字化する方法によって情報喪失の可能性 • • 例:続く→ tuduku(日本式ローマ字)だと情報喪失なし 例:続く→ tsuzuku(ヘボン式ローマ字)だと情報喪失あり – 他の問題は予想できる • 東京特許許可局局長今日急遽休暇許可却下→ Toukyoutokkyokyokakyokukyokuchoukyoukyuukyokyuukakyokakyakka • 本論文のローマ字化する方法には情報喪失あり 8
RomanSetu: パイプライン 9
RomanSetu: ローマ字の長所 • Fertility: 文章の平均のトークン数 – 低いほど効率よく文章をエンコーディングできる 10
RomanSetu: ローマ字の長所 • ローマ字のエンコーディングは同じ意味の英語の文章に近い 11
RomanSetu: 結果 12
Constrained Word2Vec: 目的 • ローマ字を使わず、新しい言語をLLMに追加するならどうすればい い? – まずはTokenizerの語彙を拡張しないといけない • いい語彙拡張の特徴は? – 既に学習されてある言語の出力に影響がなければ良い – ということでsource vocabularyの文字列を入力として、同じsource vocabularyの出力が出てくるようなtarget vocabulary initializationを求める • つまり語彙を追加しても同じトークンが選ばれるようなinitialization 13
Constrained Word2Vec: 語彙拡張 14
Constrained Word2Vec: 定理1 15
Constrained Word2Vec: 定理2 ※convex hull = 凸包 16
Constrained Word2Vec: 定理2 • Target embeddingsがsource embeddingsの凸包内というのはtarget embeddingsはsource embeddingsのweighted averageと一緒 – 全target embeddingは – Initializationを学ぶのなら重みの行列Wだけで良い • それで Et = W×Es 、Wはweighted averagingをするように作られる Target embeddings Learned weights Source embeddings 17
Constrained Word2Vec: アルゴリズム • • • • アルゴリズム:Word2Vecを使ってそのW行列を学ぶ 前の条件を満たすため、行列を [Es; softmax(W)×Es]にする softmaxで行列の各列の総和は1となる Esをそのままにして、Wだけ学ぶ 18
Constrained Word2Vec: 結果 • ベースライン – OFA: 別の方法でsource embeddingsのweighted averageでのinitialization – Univariate: 次元別の正規分布からのembeddingを抽出(meanとvarianceは source embeddingsから) – Multivariate:多変量正規分布からのembeddingを抽出(meanとcovarianceは source embeddingsから) – Mean: 全target embeddingをsource embeddingsの平均にする – Random: 正規分布のN(0, 0.02I)からのembeddingを抽出 • Random以外に全ベースラインは”good” 19
Constrained Word2Vec: 結果 20
Constrained Word2Vec: 結果 21
まとめ • 英語LLMに言語を追加するとき、tokenizerはなんとかしないといけ ない • Tokenizerを多言語化する2通りの方法を紹介した – 別言語をローマ字にして、tokenizer問題を回避する – Source embeddingsの凸包内で追加のtarget embeddingsをinitializeすること で新しい文字に対応できるtokenizerを作る • 両方の方法にそれぞれの長所・短所があって、自分のニーズに合わ せた戦略を選ばないといけない 22
ご清聴ありがとうございました 23