SdcaNonCalibratedMulticlassTrainer 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用IEstimator<TTransformer> 线性多类分类器预测目标。 训练的模型 LinearMulticlassModelParameters 生成类的概率。
public sealed class SdcaNonCalibratedMulticlassTrainer : Microsoft.ML.Trainers.SdcaMulticlassTrainerBase<Microsoft.ML.Trainers.LinearMulticlassModelParameters>
type SdcaNonCalibratedMulticlassTrainer = class
inherit SdcaMulticlassTrainerBase<LinearMulticlassModelParameters>
Public NotInheritable Class SdcaNonCalibratedMulticlassTrainer
Inherits SdcaMulticlassTrainerBase(Of LinearMulticlassModelParameters)
- 继承
-
SdcaTrainerBase<SdcaMulticlassTrainerBase<TModel>.MulticlassOptions,MulticlassPredictionTransformer<TModel>,TModel>SdcaNonCalibratedMulticlassTrainer
注解
若要创建此训练程序,请使用 SdcaMaximumEntropy 或 SdcaMaximumEntropy (选项) 。
输入和输出列
输入标签列数据必须是 键 类型,特征列必须是已知大小的向量 Single。
该训练程序输出以下列:
输出列名称 | 列名称 | 描述 |
---|---|---|
Score |
Single 的向量 | 所有类的分数。 值越高意味着落入相关类的概率越高。 如果第 i 个元素具有最大值,则预测的标签索引为 i。 请注意,i 是从零开始的索引。 |
PredictedLabel |
key 类型 | 预测标签的索引。 如果其值为 i,则实际标签为键值输入标签类型中的第 i 个类别。 |
训练器特征
机器学习任务 | 多类分类 |
规范化是否需要? | 是 |
是否需要缓存? | 否 |
除 Microsoft.ML 外所需的 NuGet | 无 |
可导出到 ONNX | 是 |
评分函数
这会训练线性模型来解决多类分类问题。 假设类数为 $m$ 且特征数为 $n$。 它为 $c$-th 类分配系数向量 $\textbf{w}_c \in {\mathbb R}^n$ 和 {\mathbb R}$ 中的偏差$b_c \,用于 $c=1,\dots,m$。 给定特征向量 $\textbf{x} \in {\mathbb R}^n$,$c$-th 类的分数将为 $\hat{y}^c = \textbf{w}_c^T \textbf{x} + b_c$。 请注意,输出分数列中的 $c$-th 值仅为 $\hat{y}^c$。
训练算法详细信息
请参阅 SdcaMulticlassTrainerBase 的文档。
有关使用示例的链接,请查看“另请参阅”部分。
字段
FeatureColumn |
训练程序期望的功能列。 (继承自 TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
训练程序期望的标签列。 可以是 |
WeightColumn |
训练器期望的权重列。 可以 |
属性
Info |
使用IEstimator<TTransformer> 线性多类分类器预测目标。 训练的模型 LinearMulticlassModelParameters 生成类的概率。 (继承自 StochasticTrainerBase<TTransformer,TModel>) |
方法
Fit(IDataView) |
火车并返回一个 ITransformer。 (继承自 TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
使用IEstimator<TTransformer> 线性多类分类器预测目标。 训练的模型 LinearMulticlassModelParameters 生成类的概率。 (继承自 TrainerEstimatorBase<TTransformer,TModel>) |
扩展方法
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
将“缓存检查点”追加到估算器链。 这将确保针对缓存的数据训练下游估算器。 在执行多个数据传递的训练器之前,拥有缓存检查点会很有帮助。 |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
给定估算器后,返回将调用委托的 Fit(IDataView) 包装对象。 估算器通常必须返回有关拟合情况的信息,这就是为什么 Fit(IDataView) 该方法返回特定类型化对象的原因,而不仅仅是常规 ITransformer对象。 但是,同时, IEstimator<TTransformer> 通常形成为包含许多对象的管道,因此,我们可能需要通过 EstimatorChain<TLastTransformer> 估算器链生成一系列估算器,以便我们要获取转换器的估算器被埋在此链中的某个位置。 对于这种情况,我们可以通过此方法附加调用一次将调用的委托。 |
适用于
另请参阅
- SdcaNonCalibrated(MulticlassClassificationCatalog+MulticlassClassificationTrainers, SdcaNonCalibratedMulticlassTrainer+Options)
- SdcaNonCalibrated(MulticlassClassificationCatalog+MulticlassClassificationTrainers, String, String, String, ISupportSdcaClassificationLoss, Nullable<Single>, Nullable<Single>, Nullable<Int32>)
- SdcaNonCalibratedMulticlassTrainer.Options