2024 EACL System Demonstrations
최근 NLP 연구의 추세가 large language model 시대로 접어들면서 감당할 수 있는 size 와 information 측면에서 한계가 있다. 따라서 작은 sub-network 를 만드는 방향의 modularization 으로 트렌트가 기울고 있다.
이 논문은 massively multilingual modular machione translation 시스템을 학습하도록 디자인된 framework 인 MAMMOTH toolkit 을 보여준다. OpenNMT-py 를 기반으로 만들었고, cluster 에서 효율적인 학습을 할 수 있도록 만들었다.
최근 NLP 연구 분야에서 점점 더 큰 neural network 를 향해 가고 있고, 더 많은 데이터와 더 많은 수의 parameter 를 사용하고 있다. 하지만 이런 방식은 데이터를 모으는 비용의 한계와 데이터가 부족하면 지속되기 어렵다는 한계가 있다. scalability 는 특히 multilingual MT에서 중요한데, 하나의 multilingual model 이 수많은 언어로 학습하다 보면 모델의 capacity 때문에 오히려 언어당 성능이 떨어지는 curse of multlinguality 문제가 생긴다. 모델의 사이즈를 크게 하기에는 이제 하드웨어, 데이터, 학습 알고리즘 관점에서 한계에 다다랐다. 그래서 scalability 문제를 해결하기 위한 방법 중 한 가지가 modularity 이다.
Modularity 는 sparsity, conditional computation 두가지로 볼 수 있다.
sparsity: 모델을 학습할 때에는 크지만, inference 할 때에는 작다.
conditional computation: 특정 상황에 따라 specific model parameter 를 선택한다.
modularity 관련 연구들은 다양하고, 다양한 framework 를 다루고 있다. 그래서 MAMMOTH toolkit 은 그 갭을 줄이고자 만들었다. The MAMMOTH toolkit is tailored toward efficient computation across clusters of compute nodes, and covers a broad range of architectures and use-cases.
현재 MAMMOTH toolkit 은 contribution 이나 특정 feature 구현에 대해 request 환영한다고 한다.
modular NMT 를 위해 사용되는 (fairseq 같은) open-source framework 가 많이 있지만, modularity를 타겟팅하는 것은 없다. MAMMOTH가 처음으로 scalability, multilinguality and modularity 문제를 다루는 open-source toolkit 이다!
MAMMOTH modular toolkit 는 OpenNMT-py 를 기반으로 만들었다. OpenNMT-py 의 documenta 과 system organization 이 fairseq 이나 transformers libraries 보다 더 시작하기 쉽게 할 수 있다.
MAMMOTH를 만든 또 다른 동기는, modular system 관련 이전 연구들의 구조가 다 다르고 통일성이 부족하다는 것이다. multilingual NMT 에서 Modularity 는 custom 된 구현으로 다양하게 다루어졌다. 대부분이 language-specific encoder, decoder 를 만드는 것이다.
(1) Vázquez et al. (2020) 는 encoder 와 decoder 사이에 intermediate cross-lingual shared layer 를 두는 attention bridge 를 소개했다.
(2) Escolano et al. (2021) 는 parameters 를 하나도 공유하지 않으면서 langauge-specific encoder-decoder 를 학습하는 방법을 제안했다.
(3) Purason and Tättar (2022) 는 decoder 를 language 또는 language-group-specific 로 두면서 decoder 를 얼마나 sharing 할지 방법을 보여주었다.
(4) Yuan et al. (2023) 는 massive multilingual MT 로 실험을 했고, 언어마다 떼고 붙이고 할 수 있는 plug-and-play approach를 제안했다. (Lego-MT)
(5) Pires et al. (2023) 는 language-specific transformer layers 를 사용해서 encoder에서 source 또는 target 을 language-specific layer 로 두는 방법을 연구했다.
MAMMOTH 는 위의 모든 방법을 지원하고, modular NMT 를 학습하고 테스트하기 위한 새로운 통합된 standard framework 를 제공한다.
Broad architecture coverage
Efficient Training
MAMMOTH toolkit 은 task 개념으로 디자인 되어있다.
(i) a set of modules
(ii) a set of preprocessing steps
(iii) a single dataset (typically a parallel corpus)
Timothee Mickus, Stig-Arne Grönroos, Joseph Attieh, Michele Boggia, Ona De Gibert, Shaoxiong Ji, Niki Andreas Loppi, Alessandro Raganato, Raúl Vázquez, and Jörg Tiedemann. 2024. MAMMOTH: Massively Multilingual Modular Open Translation @ Helsinki. In Proceedings of the 18th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations, pages 127–136, St. Julians, Malta. Association for Computational Linguistics.