Где указать время обучения в ML.NET - PullRequest
0 голосов
/ 18 июня 2020

Я оцениваю ML. NET Построитель моделей (предварительная версия) 16.1.0.2027905. Когда я go для тренировки, Builder позволяет мне указать «Время для тренировки (секунды)» (см. Рисунок):

enter image description here

Однако, когда Я перехожу к шагу № 6 и генерирую код, я не могу найти, где указано «Время для тренировки» ...

ML. NET Builder автоматически создает для меня эту функцию в файл ModelBuilder.cs:

    public static ITransformer TrainModel(MLContext mlContext, IDataView trainingDataView, IEstimator<ITransformer> trainingPipeline)
    {
        Console.WriteLine("=============== Training  model ===============");

        ITransformer model = trainingPipeline.Fit(trainingDataView);

        Console.WriteLine("=============== End of training process ===============");
        return model;
    }

, но я посмотрел в отладчике объекты mlContext, trainingDataView, trainingPipeline и не сразу понял, где я могу указать время для обучения. Кроме того, я выполнил глобальный текстовый поиск для 3600 (это время, на которое я тренировался), и я не нашел таким образом интересного кода.

Есть ли какой-нибудь простой способ в ML. NET указать «Время для тренировки» в секундах?

Я задаю этот вопрос, потому что хочу вызвать ModelBuilder.TrainModel вручную с заданным пользователем интервалом обучения. Я не хочу, чтобы от меня всегда требовалось использовать ML. NET Builder GUI для переобучения моей модели.

1 Ответ

2 голосов
/ 18 июня 2020

Построитель моделей негласно использует AutoML. Код, который он производит, представляет собой чистый код API ML. NET, поэтому у него не будет возможности указать время обучения.

Если вы хотите его использовать, вам нужно будет использовать AutoML API . При этом у него есть способ указать время обучения. Вот do c, который показывает это, но это будет что-то вроде кода ниже:

var settings = new RegressionExperimentSettings
{
    MaxExperimentTimeInSeconds = 20,
};

Вот полный образец , который был использован в этом видео .

Надеюсь, что это поможет!

...