RandomizedPcaTrainer 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
IEstimator<TTransformer> 임의 SVD 알고리즘을 사용하여 대략적인 PCA를 학습하기 위한 것입니다.
public sealed class RandomizedPcaTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.AnomalyPredictionTransformer<Microsoft.ML.Trainers.PcaModelParameters>,Microsoft.ML.Trainers.PcaModelParameters>
type RandomizedPcaTrainer = class
inherit TrainerEstimatorBase<AnomalyPredictionTransformer<PcaModelParameters>, PcaModelParameters>
Public NotInheritable Class RandomizedPcaTrainer
Inherits TrainerEstimatorBase(Of AnomalyPredictionTransformer(Of PcaModelParameters), PcaModelParameters)
- 상속
-
RandomizedPcaTrainer
설명
이 트레이너를 만들려면 RandomizedPca 또는 RandomizedPca(옵션)를 사용합니다.
입력 및 출력 열
입력 기능 열 데이터는 알려진 크기의 벡터 Single여야 합니다. 이 트레이너는 다음 열을 출력합니다.
출력 열 이름 | 열 유형 | 설명 |
---|---|---|
Score |
Single | 변칙 검색 모델에서 계산한 음수가 아닌 바인딩되지 않은 점수입니다. |
PredictedLabel |
Boolean | 임계값을 기준으로 예측된 레이블입니다. 임계값보다 높은 점수가 매핑 true 되고 임계값보다 낮은 점수가 에 매핑됩니다 false . 기본 임계값은 .입니다 0.5 . 기본값을 변경하는 데 사용합니다 <xref:AnomalyDetectionCatalog.ChangeModelThreshold> . |
트레이너 특성
기계 학습 작업 | 이상 감지 |
정규화가 필요한가요? | 예 |
캐싱이 필요한가요? | 아니요 |
Microsoft.ML 외에도 필요한 NuGet | 없음 |
ONNX로 내보낼 수 있습니다. | 아니요 |
학습 알고리즘 세부 정보
이 트레이너는 상위 고유 벡터를 사용하여 정규 클래스를 포함하는 하위 영역을 근사화합니다. 각 새 인스턴스에 대해 원시 기능 벡터와 해당 하위 영역에서 프로젝션된 기능 간의 표준 차이를 계산합니다. 오류가 0에 가까운 경우 인스턴스는 정상(비정상)으로 간주됩니다.
더 구체적으로 말하자면, 이 트레이너는 행이 입력 벡터인 행렬의 SVD(단수 값 분해)를 계산하기 위해 임의 메서드를 사용하여 대략적인 PCA를 학습합니다. 이 트레이너가 생성한 모델에는 다음 세 가지 매개 변수가 포함됩니다.
- 프로젝션 행렬 $U$
- 원래 기능 공간의 평균 벡터 $m$
- 예상 기능 공간의 평균 벡터 $p$
입력 기능 벡터 $x$의 경우 원래 입력 벡터의 $L_2$ 표준과 예상 벡터의 $L_2$ norm을 비교하여 변칙 점수를 계산합니다. $\sqrt{\left(|x-m|_2^2 - | Ux-p|_2^2\right)|x-m|_2^2}$.
메서드는 여기에 설명되어 있습니다.
알고리즘은 트레이너에게 전달하기 전에 데이터에 적용하여 ApproximatedKernelTransformer 커널 PCA로 만들 수 있습니다.
사용 예제에 대한 링크는 참고 섹션을 확인하세요.
필드
FeatureColumn |
트레이너가 기대하는 기능 열입니다. (다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
트레이너가 기대하는 레이블 열입니다.
|
WeightColumn |
트레이너가 기대하는 체중 열입니다. 가중치가 학습에 사용되지 않음을 나타내는 일 수 |
속성
Info |
IEstimator<TTransformer> 임의 SVD 알고리즘을 사용하여 대략적인 PCA를 학습하기 위한 것입니다. |
메서드
Fit(IDataView) |
를 학습하고 반환합니다 ITransformer. (다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
IEstimator<TTransformer> 임의 SVD 알고리즘을 사용하여 대략적인 PCA를 학습하기 위한 것입니다. (다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>) |
확장 메서드
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
추정기 체인에 '캐싱 검사점'을 추가합니다. 이렇게 하면 다운스트림 추정기가 캐시된 데이터에 대해 학습됩니다. 여러 데이터 전달을 수행하는 트레이너 앞에 캐싱 검사점이 있는 것이 좋습니다. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
추정기가 지정된 경우 호출된 대리 Fit(IDataView) 자를 호출할 래핑 개체를 반환합니다. 예측 도구가 적합한 항목에 대한 정보를 반환하는 것이 중요한 경우가 많습니다. 따라서 Fit(IDataView) 메서드는 일반 ITransformer개체가 아닌 구체적으로 형식화된 개체를 반환합니다. 그러나 동시에 IEstimator<TTransformer> 개체가 많은 파이프라인으로 형성되는 경우가 많으므로 변환기를 가져올 추정기가 이 체인의 어딘가에 묻혀 있는 위치를 통해 EstimatorChain<TLastTransformer> 추정기 체인을 빌드해야 할 수 있습니다. 이 시나리오에서는 이 메서드를 통해 fit이 호출되면 호출될 대리자를 연결할 수 있습니다. |