Factorization Machine 알고리즘 - 아마존 SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Factorization Machine 알고리즘

Factorization Machine 알고리즘은 분류 및 회귀 작업 모두에 대해 사용할 수 있는 범용 지도 학습 알고리즘입니다. 고차원 희소 데이터 세트 내 특징 간 상호 작용을 경제적으로 캡처하도록 설계된 선형 모델의 확장입니다. 예를 들어 클릭 예측 시스템에서 Factorization Machine 모델은 특정 페이지 범주에 속한 페이지에 배치된 특정 광고 범주의 광고로부터 관측된 클릭 비율 패턴을 캡쳐할 수 있습니다. Factorization Machine은 클릭 예측 및 품목 추천과 같은 고차원 희소 데이터 세트를 처리하는 작업에 있어 좋은 선택합니다.

참고

Factorization Machine 알고리즘의 Amazon SageMaker 구현은 특징 간 쌍 비교(pair-wise)(2차) 상호 작용만을 고려합니다.

Factorization Machines 알고리즘의 입력/출력 인터페이스

Factorization Machine 알고리즘은 이진 분류 모드 또는 회귀 모드 중 하나에서 실행될 수 있습니다. 각 모드에서 데이터 세트는 교육 채널 데이터 세트와 함께 테스트 채널로 제공될 수 있습니다. 점수 계산은 사용하는 모드에 따라 달라집니다. 회귀 모드에서 테스팅 데이터 세트는 평균 제곱근 오차(RMSE)를 사용하여 점수가 매겨집니다. 이진 분류 모드에서 테스트 데이터 세트는 이진 교차 엔트로피(로그 손실), 정확성(임계치 = 0.5) 및 F1 점수(임계치 = 0.5)를 사용하여 점수가 매겨집니다.

훈련의 경우 Factorization Machine 알고리즘은 현재 Float32 텐서가 포함된 recordIO-protobuf 형식만 지원합니다. 사용 사례가 주로 희소 데이터이기 때문에 CSV는 좋은 선택이 아닙니다. 파일 및 파이프 모드 훈련 둘 다 recordIO-wrapped protobuf에 대해 지원됩니다.

추론의 경우 Factorization Machine 알고리즘은 application/jsonx-recordio-protobuf 형식을 지원합니다.

  • 이진 분류 문제의 경우 알고리즘은 점수와 레이블을 예측합니다. 레이블은 숫자이고 0 또는 1일 수 있습니다. 점수는 알고리즘이 레이블이 1일 것이라고 판단하는 강도를 나타내는 숫자입니다. 알고리즘은 먼저 점수를 계산한 후 점수 값에서 레이블을 도출합니다. 점수가 0.5 이상이면 레이블은 1입니다.

  • 회귀 문제의 경우 점수만 반환되며 이것은 예측된 값입니다. 예를 들어 Factorization Machines을 사용하여 영화 평점을 예측하는 경우 점수는 에측된 평점 값입니다.

훈련 및 추론 파일 형식에 대한 자세한 정보는 Factorization Machines 샘플 노트북 단원을 참조하십시오.

Factorization Machines 알고리즘에 대한 EC2 인스턴스 권장 사항

Amazon SageMaker Factorization Machine 알고리즘은 확장성이 높고 배포된 인스턴스에 걸쳐 훈련이 가능합니다. 희소 및 밀집 데이터 세트에 대해 CPU 인스턴스를 사용한 교육 및 추론을 권장합니다. 일부 환경의 경우 밀집 데이터에서 하나 이상의 GPU를 사용한 교육은 약간의 이점을 제공할 수 있습니다. GPU를 사용한 교육은 밀집 데이터에서만 가능합니다. 희소 데이터에 대해 CPU 인스턴스를 사용하십시오. Factorization Machines 알고리즘은 훈련 및 추론을 위해 P2, P3, G4dn, G5 인스턴스를 지원합니다.

Factorization Machines 샘플 노트북

SageMaker Factorization Machines 알고리즘을 사용하여 MNIST 데이터 세트 내에서 0~9의 수기 숫자 이미지를 분석하는 샘플 노트북은 MNIST를 사용한 Factorization Machines 소개를 참고하십시오. SageMaker에서 예제 실행에 사용할 수 있는 Jupyter 노트북 인스턴스를 생생하고 액세스하는 방법은 아마존 SageMaker 노트북 인스턴스을 참고하십시오. 노트북 인스턴스를 생성한 후 열면 SageMaker 예제 탭을 선택하여 모든 SageMaker 샘플 목록을 확인할 수 있습니다. Factorization Machines 알고리즘을 사용하는 예제 노트북은 Amazon 알고리즘 소개 섹션에 있습니다. 노트북을 열려면 사용 탭을 클릭하고 Create copy(사본 생성)를 선택합니다.