머신 러닝번역은 Cloud Translation Advanced 처럼 ko->en, fr, ja 같이 1:다 번역이 되지 않습니다.
오직 1:1 매칭만 되어서 만일 번역해야 하는 언어가 여러개라면 모두 학습 시켜야 합니다.
학습용 데이터는 A 컬럼에 시작어, B컬럼에 도착어로 엑셀로 정리 합니다.
저장은 엑셀에서 탭으로 분리로 저장 합니다.
확장자는 .tsv로 변경해 줍니다.
역시 UTF-8 BOM 문제가 있기 때문에 메모장으로 일반 UTF-8로 한번 더 저장 합니다.
이후 .tsv파일은 스토리지에 올려 줍니다.
Google Cloud Platform 에서 좌측메뉴 클릭 후 하단의 번역 -> 대시보드 로 들어갑니다.
여기서 AutoML Translation 이 있는데 시작하기를 눌러 줍니다.
AutoML Translation 관련하여 아무것도 없기 때문에 데이터 세트 만들기를 해 줍니다.
출발어와 도착어를 잘 정해 주어야 합니다.
영어는 무조건 들어가야 하며 한국어->일본어 와 같이는 안됩니다.
한국어->영어, 영어->일본어 의 식으로 출발어나 도착어에 무조건 영어가 포함 되어야 합니다.
tsv 파일에 적어둔 A컬럼이 출발어 B컬럼이 도착어 입니다.
.tsv파일을 스토리지에 올려 두었기 때문에 해당 파일을 선택 해 줍니다.
입력한 양에 따라서 시간이 다르게 되는데 약간의 시간이 필요합니다.
문서상으로는 263개를 입력했는데 중복체크가되어 실제로는 257개가 등록 되었습니다.
학습탭으로 넘어가 보게 되면 데이터 부족으로 학습을 진행 할 수 없습니다.
설명을 보게 되면 8:1:1의 비율로 학습, 검증, 테스트용으로 데이터를 사용하게 됩니다.
학습을 시작하려면 최소 1000쌍의 문장이 필요하게 됩니다.
추가적인 데이터를 넣어 줍니다.
이제 학습을 시작 할 수 있습니다.
학습은 꽤 많은 시간이 필요하게 됩니다.
완료되게 되면 이메일이 오게 되며 클라우드에서 처리되고 있어서 다른곳에서도 확인 해 볼 수 있습니다.
학습이 완료되면 평가 점수가 나오게 됩니다.
14.02로 기본모델인 11.03보다 높다는데 솔직히 믿을수는 없습니다.
약 5800개의 데이터를 넣었고 2.3시간 동안 처리가 되었습니다.
대략 11만원이란 비용이 나왔습니다.
다만 비용 캡이 있기 때문에 한번에 나올수 있는 비용의 최대치가 있습니다.
이점을 잘 고려해서 되도록 많은 데이터를 한번에 넣는 것이 유리합니다.
이제 학습된 모델을 가지고 번역을 돌려 봅니다.
용어집도 사용하게 됩니다.
{
"models": {
"es": "projects/project_number_or_id/locations/us-central1/models/model-id"
},
"sourceLanguageCode": "en",
"targetLanguageCodes": ["es"],
"glossaries": {
"es": {
"glossary": "projects/project_number_or_id/locations/us-central1/glossaries/glossary-id"
}
},
"inputConfigs": [{
"gcsSource": {
"inputUri": "gs://bucket-name-source/input-file-name"
}
},
{
"gcsSource": {
"inputUri": "gs://bucket-name-source/input-file-name2"
}
}],
"outputConfig": {
"gcsDestination": {
"outputUriPrefix": "gs://bucket-name-destination/"
}
}
}
json 파일을 만들어 줍니다.
자신의 프로젝트 아이디와 용어집 아이디, 스토리지 등등을 입력해 줍니다.
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
https://translation.googleapis.com/v3/projects/project-number-or-id/locations/us-central1:batchTranslateText
이제 명령어로 요청을 해 줍니다.
RUNNING 이라고 뜨게 되면 이제 오퍼레이션 아이디를 기준으로 추가 확인을 해 줍니다.
SUCCEEDED 로 나오게 되면 완료
완료된 파일은 설정했던 버킷에 들어있습니다.
변역된 결과물을 확인해 볼 수 있습니다.
'기타' 카테고리의 다른 글
Google Cloud - svn (0) | 2022.05.30 |
---|---|
[파이썬]구글 스프레드 시트 번역 (1) (0) | 2022.05.02 |
구글 클라우드 번역(3)-동의어집 번역 (0) | 2022.04.28 |
구글 클라우드 번역(2)-용어집 + 일괄 요청 번역 (0) | 2022.04.27 |
구글 클라우드 번역(1)-계정 및 용어집 (0) | 2022.04.27 |