用于回归问题的Hyperas损失函数

我使用Keras构建了一个解决回归问题的模型。我希望对这个模型进行超参数优化。我使用了val_mean_absolute_error作为评估指标。在示例中,仅涵盖了分类问题(可在https://github.com/maxpumperla/hyperas查看)

validation_acc = np.amax(result.history['val_acc']) print('Best validation acc of epoch:', validation_acc)return {'loss': -validation_acc, 'status': STATUS_OK, 'model': model}

如何将这段代码调整为用于回归问题(使用val_mean_absolute_error作为评估指标)?


回答:

对于回归问题,我们通常不定义单独的评估指标,而是直接使用损失函数来评估模型性能(越低越好);因此,假设您使用mae作为损失函数,并且已经编译了您的模型,如下所示:

model.compile(loss='mae', optimizer={{choice(['rmsprop', 'adam', 'sgd'])}})

您应该这样修改链接示例中的代码:

#获取训练周期中最低的验证损失validation_loss = np.amin(result.history['val_loss']) print('Best validation loss of epoch:', validation_loss)return {'loss': validation_loss, 'status': STATUS_OK, 'model': model}

确实有些人在类似情况下会添加metrics=['mae']的编译参数,但这是不必要的。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注