首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ML.NET中指定培训时间的位置

在ML.NET中指定培训时间的位置
EN

Stack Overflow用户
提问于 2020-06-18 07:59:27
回答 1查看 316关注 0票数 1

我正在评估ML.NET模型生成器(预览版) 16.1.0.2027905。当我去训练时,Builder让我指定“训练时间(秒)”(见图):

然而,当我到达Step#6并生成代码时,我似乎找不到“训练时间”的指定位置……

ML.NET构建器在ModelBuilder.cs文件中自动为我创建此函数:

代码语言:javascript
复制
    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来重新训练我的模型。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-18 21:04:55

模型构建器在幕后使用AutoML。它生成的代码是纯ML.NET应用编程接口代码,因此无法指定训练时间。

如果你想使用它,你需要使用AutoML应用程序接口。这样,它就有了指定训练时间的方法。下面是展示它的the doc,但它可能类似于下面的代码:

代码语言:javascript
复制
var settings = new RegressionExperimentSettings
{
    MaxExperimentTimeInSeconds = 20,
};

这是一个在this video中使用的full sample

希望这能有所帮助!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62440229

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档