기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Random Cut Forest(RCF) 알고리즘
Amazon SageMaker AI Random Cut Forest(RCF)는 데이터 세트 내에서 이상 데이터 포인트를 감지하기 위한 비지도 알고리즘입니다. 이는 구조화 또는 패턴화된 데이터로부터 벗어난 관측치입니다. 변칙은 시계열 데이터에서 예기치 않은 급증, 주기성 내의 끊어짐 또는 분류할 수 있는 데이터 지점으로 나타날 수 있습니다. 평면적으로 봤을 때 "정규" 데이터로부터 쉽게 구분할 수 있습니다. 데이터세트에 이러한 변칙이 포함되면 기계 학습 작업의 복잡성이 극적으로 증가할 수 있습니다. "정규" 데이터가 주로 단순한 모델로 설명될 수 있기 때문입니다.
각 데이터 지점을 통해 RCF는 변칙 점수를 연결합니다. 점수 값이 낮은 경우 데이터 지점이 "정상"으로 간주됩니다. 점수 값이 높은 경우 데이터 내에 변칙이 존재함을 나타냅니다. "낮음"과 "높음"의 정의는 애플리케이션에 따라 다릅니다. 하지만 일반적으로 평균 점수로부터 3의 표준편차를 초과하는 점수가 변칙으로 간주됩니다.
1차원 시계열 데이터에 대한 변칙 감지 알고리즘의 적용 사례가 많습니다(예: 트래픽 볼륨 분석 또는 음성 볼륨 급증 감지). RCF는 임의 차원 입력으로 작업하도록 설계되었습니다. Amazon SageMaker AI RCF는 기능 수, 데이터 세트 크기 및 인스턴스 수에 따라 잘 확장됩니다.
RCF 알고리즘의 입력/출력 인터페이스
Amazon SageMaker AI Random Cut Forest는 train
및 test
데이터 채널을 지원합니다. 레이블 지정된 데이터의 accuracy, precision, recall 및 F1-score 지표 컴퓨팅을 위해 선택 가능한 test 채널이 사용됩니다. train 및 test 데이터 콘텐츠 유형은 application/x-recordio-protobuf
또는 text/csv
형식일 수 있습니다. 테스트 데이터의 경우 text/csv 형식을 사용할 때 콘텐츠는 text/csv;label_size=1로 지정되어야 합니다. 여기서 각 행의 첫 번째 열은 변칙 레이블 나타냅니다. "1"은 변칙 데이터 지점을, "0"은 정상 데이터 지점을 나타냅니다. 파일 모드 또는 파이프 모드를 사용하여 recordIO-wrapped-protobuf
또는 CSV
로 형식이 지정된 데이터에 대해 RCF 모델을 훈련할 수 있습니다.
train 채널은 S3DataDistributionType=ShardedByS3Key
만을 지원하고, test 채널은 S3DataDistributionType=FullyReplicated
만을 지원합니다. 다음 예제에서는 Amazon SageMaker Python SDK
참고
이 sagemaker.inputs.s3_input
메서드는 SageMaker Python SDK v2sagemaker.inputs.TrainingInput
으로 이름이 변경되었습니다.
import sagemaker # specify Random Cut Forest training job information and hyperparameters rcf = sagemaker.estimator.Estimator(...) # explicitly specify "ShardedByS3Key" distribution type train_data = sagemaker.inputs.TrainingInput( s3_data=s3_training_data_location, content_type='text/csv;label_size=0', distribution='ShardedByS3Key') # run the training job on input data stored in S3 rcf.fit({'train': train_data})
실행 역할과 관련된 일반적인 오류를 방지하려면 필요한 실행 역할, AmazonSageMakerFullAccess
및 AmazonEC2ContainerRegistryFullAccess
가 있는지 확인하세요. 이미지가 존재하지 않거나 잘못된 권한과 관련된 일반적인 오류를 방지하려면 ECR 이미지가 훈련 인스턴스에 할당된 디스크 공간보다 크지 않은지 확인하세요. 이를 방지하려면 디스크 공간이 충분한 인스턴스에서 훈련 작업을 실행하세요. 또한 ECR 이미지가 다른 AWS 계정의 Elastic Container Service(ECS) 리포지토리에 있고 액세스 권한을 부여할 리포지토리 권한을 설정하지 않은 경우 오류가 발생합니다. 리포지토리 정책 설명 설정에 대한 자세한 내용은 ECR 리포지토리 권한을 참조하세요.
S3 데이터 소스 속성을 사용자 지정하는 방법에 대한 자세한 내용은 S3DataSource
을 참조하세요. 마지막으로 여러 인스턴스를 활용하여 훈련하려면 훈련 데이터가 최소 인스턴스의 수만큼 여러 파일로 분할되어야 합니다.
추론의 경우 RCF는 application/x-recordio-protobuf
, text/csv
및 application/json
입력 데이터 콘텐츠 유형을 지원합니다. 자세한 정보는 기본 제공 알고리즘의 파라미터 설명서를 참조하세요. RCF 추론은 application/x-recordio-protobuf
또는 application/json
형식의 출력을 반환합니다. 출력 데이터의 각 레코드에는 각 입력 데이터 지점에 대한 해당 변칙 점수가 포함되어 있습니다. 자세한 정보는 공동 데이터 형식--추론 섹션을 참조하세요.
입력 및 출력 파일 형식에 대한 자세한 정보는 RCF 응답 형식(추론의 경우) 및 RCF 샘플 노트북 섹션을 참조하세요.
RCF 알고리즘에 대한 인스턴스 권장 사항
훈련을 위해 ml.m4
, ml.c4
및 ml.c5
인스턴스 패밀리를 권장합니다. 추론에 대해 특히 최소의 사용 시간당 비용과 최대의 성능을 위해 ml.c5.xl
인스턴스 유형 사용을 권장합니다. 알고리즘은 GPU 인스턴스 유형에서 기술적으로 실행될 수 있지만 GPU 하드웨어를 활용하지는 않습니다.
RCF 샘플 노트북
RCF 모델을 훈련하고 이를 사용하여 추론을 수행하는 방법에 대한 예는 SageMaker AI Random Cut Forests 소개 노트북을
RCF 알고리즘 사용에 대한 블로그 게시물은 이상 탐지를 위한 기본 제공 Amazon SageMaker AI Random Cut Forest 알고리즘 사용을