학습 데이터 준비

AutoML Translation은 서로 짝이 맞는 출발어와 도착어 문장 쌍을 사용하여 커스텀 모델을 학습시킵니다. 각 문장 쌍은 독립적인 학습 항목으로 취급되며, 서로 다른 쌍 사이에 어떠한 연관성도 가정되지 않습니다.

커스텀 모델을 학습시키는 데 사용되는 문장 쌍은 탭으로 구분된 값(.tsv) 또는 Translation Memory eXchange(.tmx) 형식이어야 합니다. 여러 .tsv 및 .tmx 파일을 쉼표로 구분된 값(.csv) 파일 하나로 일괄 처리할 수 있습니다. Google Cloud Console을 사용하여 개별 .tsv 또는 .tmx 파일을 가져올 수 있습니다. AutoML API를 사용하는 경우 .csv 파일만 사용할 수 있습니다.

문장 쌍은 항상 가져온 모든 문장 쌍에서 중복 제거됩니다. 문장 쌍은 출발어 문장이 다른 출발어 문장과 일치할 때 중복 쌍으로 처리됩니다. 또한 AutoML Translation에서는 콘텐츠가 동일한 파일을 가져올 수 없습니다.

지원되는 언어 조합 목록은 커스텀 모델 언어 지원을 참조하세요.

데이터 분할

AutoML Translation에서는 제공된 문장 쌍을 사용하여 커스텀 모델을 학습, 검증, 테스트합니다.

  • TRAIN - sentence pairs 을 사용하여 모델을 학습시킵니다.
  • VALIDATION - sentence pairs을 사용하여 학습 중에 모델이 반환하는 결과를 검증합니다.
  • TEST - sentence pairs을 사용하여 모델이 학습된 후 모델의 결과를 확인합니다.

학습, 검증, 테스트 세트에 개별 파일을 업로드하여 AutoML Translation에서 각각의 용도로 사용되는 문장 쌍을 제어할 수 있습니다. 이 세 가지 용도로 사용할 파일을 명시적으로 지정하지 않은 경우 AutoML Translation에서는 문장 쌍을 자동으로 세 세트로 나눕니다. AutoML Translation은 데이터 중 약 80%를 학습에, 10%를 검증에, 10%를 테스트에 사용합니다. AutoML Translation은 데이터를 3세트로 무작위로 분할합니다. 검증 및 테스트 세트에 최대 10,000개의 문장 쌍을 사용할 수 있습니다. 10,000개가 넘으면 문장 쌍이 학습 세트로 푸시됩니다.

동일한 데이터 세트로 여러 개의 데이터 가져오기를 수행하는 경우 하나의 가져오기에 데이터 분할을 수동으로 지정하고 다른 데이터 세트에 자동 분할을 사용할 수 있습니다. 데이터는 가져오기 및 파일 삭제 후 수동 분할과 관련하여 항상 재조정됩니다.

데이터 요구사항

학습 데이터는 다음 요구사항을 준수해야 합니다.

  • AutoML Translation에서 자동으로 데이터를 분할하도록 하려면 문장 쌍을 1,000개 이상 제출하여 커스텀 모델을 학습시켜야 합니다.
  • 데이터를 수동으로 분할하는 경우 TRAIN 세트에 문장 쌍을 최소 3개 제공해야 하며 VALIDATIONTEST에 각각 최소 100개의 문장 쌍이 있어야 합니다.
  • VALIDATION 세트 또는 TEST 세트에 제공하는 문장 쌍은 10,000개를 초과할 수 없습니다.
  • 데이터 세트는 최대 1,500만 개의 문장 쌍을 초과할 수 없습니다.

데이터 권장사항

다음 권장사항은 학습 데이터 세트의 품질을 높이는 데 도움이 될 수 있습니다.

  • TRAIN에는 문장 쌍을 5,000개 이상, VALIDATION에는 문장 쌍 500개 이상, TEST에는 문장 쌍 500개 이상을 사용합니다. 그렇지만 가능한 경우 더 많은 데이터를 사용하세요. TRAIN 세트에 대한 데이터가 많으면 모델이 패턴을 학습하는 데 도움이 되고 VALIDATIONTEST 세트에 대한 데이터가 많으면 모델이 도메인의 다양한 시나리오로 일반화하는 데 도움이 됩니다.
  • 약 200단어 이하로 문장을 유지합니다. 문장이 그보다 더 길면 AutoML Translation에서 문장 쌍을 삭제할 수 있습니다. 자세한 내용은 가져오기 문제를 참조하세요.
  • 일반적인 데이터 문제를 해결합니다. 자세한 내용은 데이터 준비 초보자 가이드의 '복잡한 데이터 정리' 섹션을 참조하세요.

탭으로 구분된 값(.tsv)

AutoML Translation에서는 각 행의 형식이 다음과 같은, 탭으로 구분된 파일을 지원합니다.

  • Source sentence Translated sentence

예를 들면 다음과 같습니다.

It's a beautiful day.\tEs ist ein schöner Tag.
Tomorrow it will rain.\tMorgen wird es regnen.

.tsv 파일의 모든 텍스트는 일반 텍스트여야 합니다. 텍스트에 HTML 태그 또는 다른 마크업이 포함되어 있는 경우 AutoML Translation에서는 마크업을 일반 텍스트로 처리합니다.

출발어와 도착어를 식별하는 언어 코드는 탭으로 구분된 소스 데이터에 포함되지 않습니다. 학습시킬 모델을 기술할 때 출발어 및 도착어 코드를 지정합니다. AutoML Translation은 첫 번째 세그먼트를 출발어로 해석하고, 두 번째 세그먼트를 도착어로 해석합니다. 위의 예시에서 출발어는 영어이고 도착어는 독일어입니다.

Translation Memory eXchange(.tmx)

Translation Memory eXchange(TMX)는 출발어 및 도착어 번역 문장을 제공하는 표준 XML 형식입니다. AutoML Translation은 TMX 버전 1.4를 기반으로 하는 형식의 입력 파일을 지원합니다. 이 예시에서는 필수 구조를 보여줍니다.

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE tmx SYSTEM "tmx14.dtd">
<tmx version="1.4">
  <header segtype="sentence" o-tmf="UTF-8"
  adminlang="en" srclang="en" datatype="PlainText"/>
  <body>
    <tu>
      <tuv xml:lang="en">
        <seg>It's a beautiful day.</seg>
      </tuv>
      <tuv xml:lang="de">
        <seg>Es ist ein schöner Tag.</seg>
      </tuv>
    </tu>
    <tu>
      <tuv xml:lang="en">
        <seg>Tomorrow it will rain.</seg>
      </tuv>
      <tuv xml:lang="de">
        <seg>Morgen wird es regnen.</seg>
      </tuv>
    </tu>
  </body>
</tmx>

올바른 형식의 .tmx 파일에서 <header> 요소는 srclang 속성을 사용하여 출발어를 지정해야 하고, 모든 <tuv> 요소는 xml:lang 속성을 사용하여 포함된 텍스트의 언어를 지정해야 합니다.

모든 <tu> 요소는 동일한 출발어와 도착어를 가진 <tuv> 요소 쌍을 포함해야 합니다. <tu> 요소에 <tuv> 요소가 3개 이상 포함되어 있으면 AutoML Translation이 출발어 및 도착어와 일치하는 첫 번째 <tuv> 요소만 처리하고 나머지는 무시합니다. <tu> 요소에 일치하는 <tuv> 요소 쌍이 없으면 AutoML Translation이 올바르지 않은 <tu> 요소를 건너뜁니다.

AutoML Translation에서는 <seg> 요소를 처리하기 전에 주위의 마크업 태그를 제거합니다. <tuv> 요소에 <seg> 요소가 2개 이상 포함되어 있는 경우 AutoML Translation에서는 텍스트를 사이에 공백이 있는 단일 요소로 연결합니다.

위에 표시되지 않은 XML 태그가 파일에 포함되어 있는 경우 AutoML Translation은 해당 태그를 무시합니다.

TMX 파일이 적절한 XML 및 TMX 형식을 따르지 않는 경우(예: 종료 태그 또는 <tmx> 요소가 없는 경우) AutoML Translation은 해당 요소 처리를 중단합니다. AutoML Translation은 잘못된 <tu> 요소를 1,024개를 초과하여 건너뛴 경우에도 처리를 중단합니다.

쉼표로 구분된 값(.csv)

AutoML API를 사용하여 문장 쌍을 업로드하려면 사용할 .tsv 및 .tmx 파일을 지정하고, 학습, 검증, 테스트에 사용할 쌍을 나타내는 쉼표로 구분된 값(.csv) 파일을 생성합니다. .csv 파일의 이름에는 제한이 없지만 파일은 UTF-8 인코딩이어야 하고 .csv 확장자로 끝나야 합니다. 이 파일은 업로드하는 각 .tsv 또는 .tmx 파일마다 한 행을 포함하여, 각 행은 두 열을 포함합니다.

  • 이 파일의 문장 쌍을 할당할 집합. 이 필드는 선택사항이며 다음 값 중 하나일 수 있습니다.

    • TRAIN
    • VALIDATION
    • 테스트
    • 할당되지 않음

      데이터세트가 UNASSIGNED로 지정된 경우 AutoML Translation은 데이터세트를 자동으로 분할하여 학습, 검증, 테스트 콘텐츠가 충분하도록 합니다.

  • 문장 쌍을 포함하는 .tsv 또는 .tmx 문서를 가리키는 전체 경로

예를 들어 .csv 파일에 다음을 포함할 수 있습니다.

TRAIN,gs://my-project-vcm/csv/en-fr-train.tsv
VALIDATION,gs://my-project-vcm/csv/en-fr-validation.tsv
TEST,gs://my-project-vcm/csv/en-fr-test.tsv