Как добавить новый набор изображений в существующую обученную модель ML.Net ITransformer? - PullRequest
1 голос
/ 15 октября 2019

Я новичок в машинном обучении.

Я использую ML.Net Image Classification в системе Windows, используя InceptionV3 и, скажем, у меня уже есть обученная модель с 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);
...