학습 데이터 준비

이 페이지에서는 예측 모델 학습에 사용될 테이블 형식 데이터를 준비하는 방법을 설명합니다.

여기서 다루는 주제는 다음과 같습니다.

  1. 데이터 구조 요구사항
  2. 가져오기 소스 준비
  3. 학습 데이터에 가중치 추가

기본적으로 Vertex AI는 시간순 분할 알고리즘을 사용하여 예측 데이터를 데이터 분할 3개로 분리합니다. 또는 수동 분할을 사용할 수 있지만 이렇게 하려면 데이터 분할 열을 준비해야 합니다. 데이터 분할에 대해 자세히 알아보세요.

데이터 구조 요구사항

예측 모델의 경우 학습 데이터가 다음 기본 요구사항을 준수해야 합니다.

요구사항 유형 요구사항
크기 데이터 세트는 100GB 이하여야 합니다.
열 개수 데이터 세트에는 최소 3개에서 최대 100개의 열이 있어야 합니다. 데이터 세트의 각 관찰에는 대상 및 시간이 있어야 하며 둘 다 특성으로 작동합니다. 또한 각 관찰에는 관찰이 포함된 시계열을 식별하는 시계열 ID가 있어야 합니다. 이상적으로는 학습 데이터에 열이 3개 이상 있는 것이 좋습니다. 최대 열 수에는 특성 열과 비특성 열이 모두 포함됩니다.
타겟 열 대상 열을 지정해야 합니다. 대상 열을 사용하면 Vertex AI가 학습 데이터를 원하는 결과와 연결할 수 있습니다. null 값을 포함해서는 안 되며 숫자여야 합니다.
시간 열 시간 열을 지정해야 하며 이 열에 모든 행의 값이 있어야 합니다. 시간 열은 지정된 관찰이 수행된 시간을 나타냅니다.
시계열 식별자 열 시계열 식별자 열을 지정해야 하며 이 열에는 모든 행의 값이 있어야 합니다. 예측 학습 데이터에는 일반적으로 여러 시계열이 포함되며, 식별자는 학습 데이터에서 지정된 관찰이 속한 시계열을 Vertex AI에 알려줍니다. 특정 시계열의 모든 행은 시계열 식별자 열의 값이 동일합니다. 일반적인 시계열 식별자는 제품 ID, 매장 ID 또는 리전일 수 있습니다. 시계열 식별자 열에 있는 모든 행에 동일한 값을 사용해서 단일 시계열로 예측 모델을 학습시키는 것이 가능합니다. 그러나 Vertex AI는 시계열이 두 개 이상 포함된 학습 데이터에 더 적합합니다. 최상의 결과를 얻으려면 모델을 학습시키는 데 사용되는 모든 열에 시계열을 10개 이상 사용합니다.
열 이름 형식 열 이름에는 영숫자 문자 또는 밑줄(_)을 사용할 수 있습니다. 열 이름은 밑줄로 시작할 수 없습니다.
행 개수 데이터 세트에는 최소 1,000개에서 최대 100,000,000개의 행이 있어야 합니다. 데이터 세트에 있는 특성 수에 따라 1,000개의 행으로는 고성능 모델을 학습시키기에 부족할 수 있습니다. 자세히 알아보기
데이터 형식 좁은(길다고 하기도 함) 데이터 형식을 사용합니다. 좁은 형식의 경우 각 행은 특정 시점에 해당하는 항목의 모든 데이터와 함께 해당 시점의 시계열 식별자로 지정된 항목을 나타냅니다. 데이터 세부사항 선택 방법을 자세히 알아보세요.
행 간격 학습 행 간격은 일관되어야 합니다. 데이터 세부사항입니다. 모델 학습 방법과 예측 결과 빈도에 영향을 줍니다. 데이터 세부사항 선택 방법을 알아보세요.
시계열 길이 시계열의 길이는 3,000 기간을 초과할 수 없습니다.

가져오기 소스 준비

모델 학습 데이터는 두 가지 형식으로 Vertex AI에 제공할 수 있습니다.

  • BigQuery 테이블
  • 쉼표로 구분된 값(CSV)

사용하는 소스는 데이터를 저장하는 방법과 데이터의 크기 및 복잡도에 따라 달라집니다. 데이터 세트의 크기가 작고 더 복잡한 데이터 유형이 필요 없다면 CSV가 더 쉬운 방법입니다. 배열과 구조체가 포함된 대형 데이터 세트라면 BigQuery를 사용해야 합니다.

BigQuery

BigQuery 테이블 또는 뷰는 BigQuery 위치 요구사항을 준수해야 합니다.

Vertex AI 데이터 세트를 만드는 프로젝트와 다른 프로젝트에 BigQuery 테이블 또는 뷰가 있거나 외부 데이터 소스를 통해 BigQuery 테이블 또는 뷰가 지원되는 경우 Vertex AI 서비스 에이전트에 하나 이상의 역할을 추가해야 할 수 있습니다. BigQuery의 역할 추가 요구사항을 참조하세요.

BigQuery 테이블의 스키마는 지정하지 않아도 됩니다. Vertex AI는 데이터를 가져올 때 테이블의 스키마를 자동으로 추론합니다.

학습 데이터의 위치를 지정하는 BigQuery URI는 다음 형식을 따라야 합니다.

bq://<project_id>.<dataset_id>.<table_id>

URI는 다른 특수문자는 포함할 수 없습니다.

BigQuery 데이터 유형과 이러한 유형이 Vertex AI에 매핑되는 방식을 알아보려면 BigQuery 테이블을 참조하세요. BigQuery 외부 데이터 소스 사용에 대한 자세한 내용은 외부 데이터 소스 소개를 참조하세요.

CSV

CSV 파일은 Cloud Storage 또는 로컬 컴퓨터에 있을 수 있으며, 다음 요구사항을 준수해야 합니다.

  • 첫 번째 파일의 첫 번째 줄은 열 이름을 포함한 헤더여야 합니다. 후속 파일의 첫 번째 행이 헤더와 같으면 이 행도 헤더로 처리되고, 그렇지 않은 경우에는 데이터로 처리됩니다.
  • 열 이름에는 영숫자 문자 또는 밑줄(_)을 사용할 수 있습니다. 열 이름은 밑줄로 시작할 수 없습니다.
  • 각 파일은 10GB를 초과할 수 없습니다.

    여러 파일을 포함할 수도 있지만 최대 용량은 100GB로 제한됩니다.

  • 구분 기호는 쉼표(',')여야 합니다.

CSV 데이터의 스키마는 지정하지 않아도 됩니다. Vertex AI는 데이터를 가져올 때 테이블의 스키마를 자동으로 추론하며 열 이름에 헤더 행을 사용합니다.

CSV 파일 형식 및 데이터 유형에 관한 자세한 내용은 CSV 파일을 참조하세요.

Cloud Storage에서 데이터를 가져올 경우 데이터는 다음 요구사항을 충족하는 버킷에 있어야 합니다.

로컬 컴퓨터에서 데이터를 가져올 경우 다음 요구사항을 충족하는 Cloud Storage 버킷이 있어야 합니다.

  • Vertex AI 버킷 요구사항을 준수해야 합니다.
  • Vertex AI와 동일한 프로젝트에 버킷이 없는 경우 Vertex AI 서비스 에이전트에 역할을 하나 이상 추가해야 합니다. Cloud Storage의 역할 추가 요구사항을 참조하세요.

    Vertex AI는 데이터를 가져오기 전에 이 버킷을 스테이징 영역으로 사용합니다.

학습 데이터에 가중치 추가

기본적으로 Vertex AI는 학습 데이터의 각 행에 동일한 가중치를 적용합니다. 학습 용도로는 어떤 행도 다른 행보다 더 중요한 것으로 간주되지 않습니다.

학습을 위해 일부 행에 더 높은 중요도를 부여하면 좋을 때도 있습니다. 예를 들어 지출 데이터를 사용한다면, 고액 지출자와 관련된 데이터가 모델에 더 큰 영향을 줘야 합니다. 특정 결과가 누락되는 일을 막고 싶다면 해당 결과의 행에 더 많은 가중치를 부여하면 됩니다.

데이터세트에 가중치 열을 추가하면 행에 상대적 가중치를 부여할 수 있습니다. 가중치 열은 숫자 열이어야 합니다. 가중치 값은 0~10,000이 될 수 있습니다. 값이 클수록 모델 학습 시 행이 더 중요함을 나타냅니다. 가중치가 0인 행은 무시됩니다. 가중치 열을 포함하는 경우 모든 행의 값이 포함되어야 합니다.

나중에 모델을 학습시킬 때 이 열을 Weight 열로 지정합니다.

커스텀 가중치 스키마는 모델 학습용으로만 사용하며 모델 평가에 사용되는 테스트 세트에는 영향을 미치지 않습니다.

다음 단계