AI 아마추어가 일영의 AI 번역 모델을 Google Colaboratory에서 작성·평가해 보았다.

별로 알려지지 않은 것 같습니다만, 유럽에서는 평판이 좋은 오픈 소스의 ModernMT(Fairseq Transformer Model) 툴을 이용해 Google Colaboratory에서 아래의 순서로 학습해 번역을 시험해 보았다.

ModernMT는 아래와 같은 특징과 번역 API가 구현되어 있어 매우 편리하고 개발 중인 영어 학습 앱에 사용할 수 있을 것 같다.

· 각 문장에 대해 더 나은 번역을 예측하기 위해 문서 전체의 컨텍스트를 사용.
・모델은 번역자에 의한 각 수정으로부터 실시간으로 학습.

GitHub의 ModernMT 코드

1. 학습할 대역 코퍼스를 사전에 준비한다.

이번 무료와 유료 코퍼스 합쳐 100만 문 가까이의 데이터를 사용해 학습했다.
무료 코퍼스
GlobalVoice (news)
일영 기본 대역 코퍼스

일본어 기본문 데이터의 저작권은 교토대학 구로바시·가와라 연구실에 있으며, 영어 중국어 기본문 데이터의 저작권은 NICT 마스터 프로젝트 다언어 번역 연구실에 있다. 둘 다 Creative Commons Attribution 3.0 Unported에서 사용할 수 있습니다.

일영법령 대역 코퍼스
다나카 코퍼스

유료 대역 코퍼스
매직 스프 AI 번역
대역 코퍼스 구매

2. 학습하려는 코퍼스를 내 계정의 Google 드라이브에 올려 둡니다.

3. Google Colaboratory에서 새 노트북을 만들었습니다.

4. Google Drive를 탑재합니다.
from google.colab import drive
drive.mount('/content/drive')

5. JAVA 및 Python 설치
!apt install -y openjdk-8-jdk python3 python3-pip
!update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
!java -version

6. GitHub에서 ModernMT를 다운로드 및 설치
!wget https://github.com/modernmt/modernmt/releases/download/v4.5.4/mmt-4.5.4-ubuntu.tar.gz
!tar xvfz mmt-4.5.4-ubuntu.tar.gz
!cd mmt; pip3 install -r requirements.txt

7. Google 드라이브에서 대역 코퍼스를 복사합니다.



8. 일본과 영국 모델을 배우십시오. Default 명령으로 학습 횟수만 설정

엔진 이름: mmt45_base_ko-en
언어 방향: ko en
!mmt/mmt create ja en -e mmt45_base_ja-en mmt/corpus/ --train-steps 1000


1에서 4까지의 Step으로 번역 모델을 ModernMT로 사용할 수 있는 형태로 패키징해 준다.
그만해도 --resume 옵션으로 계속해서 학습할 수 있어 매우 편리.
!mmt/mmt create ja en -e mmt45_base_ja-en mmt/corpus/ --train-steps 30000 --resume

ModernMT의 CLI 문서

9. 번역 엔진 시작
!mmt/mmt start -e mmt45_base_ja-en &

10. 번역
!mmt/mmt translate -e base0_ja-en "強盗殺人ではなく、殺人と窃盗の罪にあたる」などとして、無期懲役が妥当だと主張していました。"

ModernMT의 REST API 문서

11. 기계 평가

Default의 값으로 3만회 학습하고, 평가 커멘드로 Google과의 비교(BLEU)
BLEU의 기계 평가에서는 ModernMT가 상당한 차이로 이겼습니다.



감상



기계 번역이나 AI에 관해 아무것도 모르는 아마추어라도 대역 코퍼스가 있으면 자신 앱에 AI 번역 API를 이용할 수 있을까 생각합니다.

좋은 웹페이지 즐겨찾기