我是机器学习的新手。
我在使用 InceptionV3 的Windows系统上使用了 ML.Net图像分类,并且说我已经有一个训练有素的模型,其中有 100只猫和100只狗照片,并将经过训练的模型另存为ZIP文件。
现在以后我会发现更多的 10只猫,我想将它们添加到已保存的经过训练的ZIP模型文件中,而不是重新训练所有新老猫狗,我将如何实现这个吗?
任何帮助将不胜感激。
这是我的代码,用于创建模型并将其保存在最后一行...但是现在,我想将新发现的猫添加到现有保存的模型中,而无需使用旧的猫和狗照片重新训练模型。请帮忙。
MLContext mlContext = new MLContext(seed: 1);
IEnumerable<ImageData> images = LoadImagesFromDirectory(folder: fullImagesetFolderPath, useFolderNameasLabel: true);
IDataView fullImagesDataset = mlContext.Data.LoadFromEnumerable(images);
IDataView shuffledFullImagesDataset = mlContext.Data.ShuffleRows(fullImagesDataset);
var pipeline = mlContext.Transforms.Conversion.MapValueToKey(outputColumnName: "LabelAsKey",
inputColumnName: "Label",
keyOrdinality: ValueToKeyMappingEstimator.KeyOrdinality.ByValue)
.Append(mlContext.Model.ImageClassification("ImagePath", "LabelAsKey",
arch: ImageClassificationEstimator.Architecture.InceptionV3,
epoch: 20,
batchSize: 5));
ITransformer trainedModel = pipeline.Fit(trainDataView);
mlContext.Model.Save(trainedModel, trainDataView.Schema, outputMlNetModelFilePath);