Random Cut Forest(RCF) 알고리즘 - Amazon SageMaker

문서의 영문과 번역 사이에 충돌이 있는 경우에는 영문 버전을 따릅니다. 번역 버전은 기계 번역을 사용하여 제공합니다.

Random Cut Forest(RCF) 알고리즘

Amazon SageMaker Random Cut Forest(RCF)는 데이터 세트 내에서 변칙적인 데이터 지점을 감지하는 비지도 알고리즘입니다. 이는 구조화 또는 패턴화된 데이터로부터 벗어난 관측치입니다. 변칙은 시계열 데이터에서 예기치 않은 급증, 주기성 내의 끊어짐 또는 분류할 수 있는 데이터 지점으로 나타날 수 있습니다. 평면적으로 봤을 때 "정규" 데이터로부터 쉽게 구분할 수 있습니다. 데이터 세트에 이러한 변칙이 포함되면 기계 학습 작업의 복잡성이 극적으로 증가할 수 있습니다. "정규" 데이터가 주로 단순한 모델로 설명될 수 있기 때문입니다.

각 데이터 지점을 통해 RCF는 변칙 점수를 연결합니다. 점수 값이 낮은 경우 데이터 지점이 "정상"으로 간주됩니다. 점수 값이 높은 경우 데이터 내에 변칙이 존재함을 나타냅니다. "낮음"과 "높음"의 정의는 애플리케이션에 따라 다릅니다. 하지만 일반적으로 평균 점수로부터 3의 표준편차를 초과하는 점수가 변칙으로 간주됩니다.

트래픽 볼륨 분석 또는 사운드 볼륨 스파이크 감지와 같은 1차원 시계열 데이터에 이상 감지 알고리즘을 적용하는 경우가 많지만, RCF는 임의 차원 입력으로 작동하도록 설계되었습니다. Amazon SageMaker RCF는 기능 수, 데이터 세트 크기 및 인스턴스 수와 관련하여 잘 확장됩니다.

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

Amazon SageMaker Random Cut Forest는 traintest 데이터 채널을 지원합니다. 레이블 지정된 데이터의 accuracy, precision, recall 및 F1-score 지표 컴퓨팅을 위해 선택 가능한 test 채널이 사용됩니다. train 및 test 데이터 콘텐츠 유형은 application/x-recordio-protobuf 또는 text/csv 형식일 수 있습니다. 테스트 데이터의 경우 텍스트/csv 형식을 사용할 때 콘텐츠는 text/csv;label_size=1로 지정되어야 합니다. 여기서 각 행의 첫 번째 열은 변칙 레이블 나타냅니다. "1"은 변칙 데이터 지점을, "0"은 정상 데이터 지점을 나타냅니다. 파일 모드 또는 파이프 모드를 사용하여 recordIO-wrapped-protobuf 또는 CSV로 형식이 지정된 데이터에 대해 RCF 모델을 훈련할 수 있습니다.

또한 열차 채널은 S3DataDistributionType=ShardedByS3Key 테스트 채널은 S3DataDistributionType=FullyReplicated. S3 배포 유형은 SageMaker Python SDK 다음과 같습니다.

import sagemaker # specify Random Cut Forest training job information and hyperparameters rcf = sagemaker.estimator.Estimator(...) # explicitly specify "ShardedByS3Key" distribution type train_data = sagemaker.inputs.s3_input( 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})

S3 데이터 원본 속성을 사용자 지정하는 방법에 대한 자세한 내용은 S3DataSource 단원을 참조하십시오. 마지막으로 여러 인스턴스를 활용하여 교육하려면 교육 데이터가 최소 인스턴스의 수만큼 여러 파일로 분할되어야 합니다.

추론의 경우 RCF는 application/x-recordio-protobuf, text/csvapplication/json 입력 데이터 콘텐츠 유형을 지원합니다. 자세한 정보는 내장 알고리즘의 공통 데이터 형식 설명서를 참조하십시오. RCF 추론은 application/x-recordio-protobuf 또는 application/json 형식의 출력을 반환합니다. 출력 데이터의 각 레코드에는 각 입력 데이터 지점에 대한 해당 변칙 점수가 포함되어 있습니다. 자세한 정보는 공동 데이터 형식--추론 단원을 참조하십시오.

입력 및 출력 파일 형식에 대한 자세한 정보는 RCF 응답 형식(추론의 경우) 및 RCF 샘플 노트북 단원을 참조하십시오.

RCF 알고리즘에 대한 인스턴스 권장 사항

교육에 대해 ml.m4, ml.c4ml.c5 인스턴스 패밀리를 권장합니다. 추론에 대해 특히 최소의 사용 시간당 비용과 최대의 성능을 위해 ml.c5.xl 인스턴스 유형 사용을 권장합니다. 알고리즘은 GPU 인스턴스 유형에서 기술적으로 실행될 수 있지만 GPU 하드웨어를 활용하지는 않습니다.

RCF 샘플 노트북

RCF 모델을 교육하고 그에 대한 추론을 수행하는 방법의 예는 소개 SageMaker 랜덤 컷 포레스트 노트북. 를 사용하는 샘플 노트의 경우 Amazon SageMaker 이상 감지를 위한 랜덤 컷 포레스트 알고리즘, 참조 소개 SageMaker 랜덤 컷 포레스트. Amazon SageMaker에서 예제 실행에 사용할 수 있는 Jupyter 노트북 인스턴스를 생생하고 이 인스턴스에 액세스하는 방법은 Amazon SageMaker 노트북 인스턴스 사용 단원을 참조하십시오. 노트북 인스턴스를 생성하고 연 후 SageMaker 예 탭을 클릭하여 모든 Amazon SageMaker 샘플. 노트북을 열려면 사용 탭을 클릭하고 Create copy(사본 생성)를 선택합니다.