首页 > 解决方案 > ML.net 将新数据添加到现有生成的模型

问题描述

我使用 ML.Net V 0.7.0 最新版本生成了一个 ML 模型

我需要在现有模型中添加新的学习数据,而不用新旧数据重新生成它

因为我有一个超过 1 亿条记录的大型数据集

我需要添加 100 条记录而不重新加载所有最后一个数据集来生成新模型

请有任何想法

这对我来说很重要

此致

标签: ml.net

解决方案


ML.NET 中的一些培训师支持使用初始预测器进行培训,这意味着您可以使用现有预测器作为使用新数据进行培训的起点。

可以在此处找到显示这一点的测试,相关代码为:

// Train the first predictor.
var trainer = ml.BinaryClassification.Trainers.StochasticDualCoordinateAscent("Label", "Features",advancedSettings: s => s.NumThreads = 1);
var firstModel = trainer.Fit(trainData);

// Train the second predictor on the same data.
var secondTrainer = ml.BinaryClassification.Trainers.AveragedPerceptron("Label","Features");

var trainRoles = new RoleMappedData(trainData, label: "Label", feature: "Features");
var finalModel = secondTrainer.Train(new TrainContext(trainRoles, initialPredictor: firstModel.Model));

推荐阅读