다음을 통해 공유


LinearSvmTrainer 클래스

정의

IEstimator<TTransformer> 선형 SVM으로 학습된 선형 이진 분류 모델을 사용하여 대상을 예측하는 것입니다.

public sealed class LinearSvmTrainer : Microsoft.ML.Trainers.OnlineLinearTrainer<Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Trainers.LinearBinaryModelParameters>,Microsoft.ML.Trainers.LinearBinaryModelParameters>
type LinearSvmTrainer = class
    inherit OnlineLinearTrainer<BinaryPredictionTransformer<LinearBinaryModelParameters>, LinearBinaryModelParameters>
Public NotInheritable Class LinearSvmTrainer
Inherits OnlineLinearTrainer(Of BinaryPredictionTransformer(Of LinearBinaryModelParameters), LinearBinaryModelParameters)
상속

설명

이 트레이너를 만들려면 LinearSvm 또는 LinearSvm(옵션)을 사용합니다.

입력 및 출력 열

입력 레이블 열 데이터는 Boolean이어야 합니다. 입력 기능 열 데이터는 알려진 크기의 벡터 Single여야 합니다. 이 트레이너는 다음 열을 출력합니다.

출력 열 이름 열 유형 설명
Score Single 모델에서 계산한 바인딩되지 않은 점수입니다.
PredictedLabel Boolean 점수 부호에 따라 예측된 레이블 음수 점수는 false에 양수 점수는 true에 매핑됩니다.

트레이너 특성

기계 학습 작업 이진 분류
정규화가 필요한가요?
캐싱이 필요한가요? 아니요
Microsoft.ML 외에도 필요한 NuGet 없음
ONNX로 내보낼 수 있습니다.

학습 알고리즘 세부 정보

선형 SVMSVM 문제를 해결하여 이진 분류를 위해 기능 공간에서 하이퍼플레인을 찾는 알고리즘을 구현합니다. 예를 들어 기능 값 $f_0이 f_1,..., f_{D-1}$인 경우 지점이 속하는 하이퍼플레인의 측면을 결정하여 예측이 제공됩니다. 이는 feautures의 가중 합계(예: $\sum_{i = 0}^{D-1} \left(w_i * f_i \right) + b$의 기호와 동일합니다. 여기서 $w_0, w_1,..., w_{D-1}$는 알고리즘에 의해 계산되는 가중치이며, $b$는 알고리즘에 의해 계산되는 바이어스입니다.

선형 SVM은 Shalev-Shwartz, Singer 및 Srebro 가 이 논문 에 도입한 확률적 그라데이션 하강 단계와 프로젝션 단계를 번갈아 사용하는 PEGASOS 메서드를 구현합니다.

사용 예제에 대한 링크는 참고 섹션을 참조하세요.

필드

FeatureColumn

트레이너가 기대하는 기능 열입니다.

(다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

트레이너가 기대하는 레이블 열입니다. Can be null, which indicates that label is not used for training.

(다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

트레이너가 기대하는 체중 열입니다. 가중치가 학습에 사용되지 않음을 나타내는 일 null수 있습니다.

(다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>)

속성

Info

IEstimator<TTransformer> 선형 SVM으로 학습된 선형 이진 분류 모델을 사용하여 대상을 예측하는 것입니다.

(다음에서 상속됨 OnlineLinearTrainer<TTransformer,TModel>)

메서드

Fit(IDataView)

를 학습하고 반환합니다 ITransformer.

(다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>)
Fit(IDataView, LinearModelParameters)

이미 학습된 modelParameters using의 학습을 OnlineLinearTrainer<TTransformer,TModel> 계속하고 .ITransformer

(다음에서 상속됨 OnlineLinearTrainer<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

IEstimator<TTransformer> 선형 SVM으로 학습된 선형 이진 분류 모델을 사용하여 대상을 예측하는 것입니다.

(다음에서 상속됨 TrainerEstimatorBase<TTransformer,TModel>)

확장 메서드

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

추정기 체인에 '캐싱 검사점'을 추가합니다. 이렇게 하면 다운스트림 추정기가 캐시된 데이터에 대해 학습됩니다. 여러 데이터 전달을 수행하는 트레이너 앞에 캐싱 검사점을 두는 것이 유용합니다.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

추정기가 지정된 경우 대리자를 호출한 후 Fit(IDataView) 호출되는 래핑 개체를 반환합니다. 예측 도구가 적합한 항목에 대한 정보를 반환하는 것이 중요한 경우가 많습니다. 따라서 Fit(IDataView) 메서드는 일반 ITransformer개체가 아닌 특별히 형식화된 개체를 반환합니다. 그러나 동시에 IEstimator<TTransformer> 개체가 많은 파이프라인으로 형성되는 경우가 많으므로 변압기를 가져올 추정기가 이 체인의 어딘가에 묻혀 있는 위치를 통해 EstimatorChain<TLastTransformer> 추정기 체인을 빌드해야 할 수도 있습니다. 이 시나리오에서는 fit이 호출되면 호출되는 대리자를 이 메서드를 통해 연결할 수 있습니다.

적용 대상

추가 정보