ML.NET 可以从保存的模型 .zip 文件或检查点恢复图像分类迁移学习吗?如何?

Can ML.NET Image Classification Transfer Learning be resumed from a saved model .zip file or checkpoint? How?

我正在使用 NuGet 包 Microsoft.ML (1.4.0) 和 SciSharp.TensorFlow.Redist (1.15.0)

初始训练和保存模型工作正常

var options = new Microsoft.ML.Vision.ImageClassificationTrainer.Options()
{
    FeatureColumnName = "Image",
    LabelColumnName = "LabelAsKey",
    Arch = Microsoft.ML.Vision.ImageClassificationTrainer.Architecture.InceptionV3,
    Epoch = 50,
    BatchSize = 10,
    LearningRate = 0.01f,
    MetricsCallback = (metrics) => Console.WriteLine(metrics),
    ValidationSet = testDataView
};

var pipeline = mlContext.MulticlassClassification.Trainers.ImageClassification(options)
        .Append(mlContext.Transforms.Conversion.MapKeyToValue(
            outputColumnName: "PredictedLabel", 
            inputColumnName: "PredictedLabel"));


ITransformer trainedModel = pipeline.Fit(trainDataView);

mlContext.Model.Save(trainedModel, trainDataView.Schema, "C:/Temp/model.zip")

并且使用该模型进行预测效果很好

var loadModel = mlContext.Model.Load("C/Temp/Model.zip", out var modelInputSchema)
var PredictionEngine = mlContext.Model.CreatePredictionEngine<InMemoryImageData, ImagePrediction>(loadModel);

prediction = PredictionEngine.Predict(image);

但是,如果我想继续用更多图像训练 model.zip 文件,而不是从头开始从基线模型重新训练,我该怎么做?

有什么方法可以使用加载的模型再次调用 .Fit()

ML.NET 不支持图像分类训练器的恢复训练。目前,唯一支持它的培训师如下: https://docs.microsoft.com/en-us/dotnet/machine-learning/how-to-guides/retrain-model-ml-net

"ML.NET 不支持图片分类训练器恢复训练,目前支持的训练器只有:https://docs.microsoft.com/en-us/dotnet/machine-learning/how-to-guides/retrain-model-ml-net"

不支持LbfgsMaximumEntropyMulticlassTrainer算法。