LinearSvmTrainer 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
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로 내보낼 수 있습니다. | 예 |
학습 알고리즘 세부 정보
선형 SVM 은 SVM 문제를 해결하여 이진 분류를 위해 기능 공간에서 하이퍼플레인을 찾는 알고리즘을 구현합니다. 예를 들어 기능 값 $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 |
WeightColumn |
트레이너가 기대하는 체중 열입니다. 가중치가 학습에 사용되지 않음을 나타내는 일 |
속성
Info |
IEstimator<TTransformer> 선형 SVM으로 학습된 선형 이진 분류 모델을 사용하여 대상을 예측하는 것입니다. (다음에서 상속됨 OnlineLinearTrainer<TTransformer,TModel>) |
메서드
Fit(IDataView, LinearModelParameters) |
이미 학습된 |
Fit(IDataView) |
를 학습하고 반환합니다 ITransformer. (다음에서 상속됨 TrainerEstimatorBase<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이 호출되면 호출되는 대리자를 이 메서드를 통해 연결할 수 있습니다. |