这可能是一个显而易见的问题,但我似乎在ML.NET Microsoft文档中找不到任何内容。
我一直在尝试进入ML.NET框架,并且文档始终遵循相同的基本过程,即创建一个估计器链并将该链拟合到数据,从本质上训练模型。 / p>
文档还指定您应该尝试不同的培训时间,这就是我的问题所在:您如何指定培训时间?每当我在文档中发现“训练”方法时,它总是很简单
ITransformer model = pipeline.Fit(data);
没有指定培训持续时间的可能性。我在这里想念明显吗?您是否在估算器链中指定持续时间?在此方面的任何帮助将不胜感激。
答案 0 :(得分:1)
机器学习算法具有不同的行为,某些模型提供了一些设置,例如要训练为输入的步骤,持续时间,历元或错误率等,并且每次运行的结果都不相同。但是其他一些具有固定的算法,并且总是具有相同的输出,并且无论您运行多少次Trainer,结果都是相同的。我认为您的模型属于后一种情况。
请注意,更改模型的输入参数会更改训练持续时间,在机器学习上下文中,“不同的训练持续时间”意味着更改模型的参数以找到最佳值。
根据您的情况,更改以下设置可能会更改您的训练时间:
// Define trainer options.
var options = new LbfgsMaximumEntropyMulticlassTrainer.Options
{
HistorySize = 50,
L1Regularization = 0.1f,
NumberOfThreads = 1
};