R_squared vs epochs

早上好,我是一个Python初学者,正在尝试构建我的第一个神经网络。有什么方法可以绘制R2值随epochs的变化吗?我评估R2值的方式如下:r2_score(y_test_pred, y_test)。我以这种方式构建了一个全连接神经网络:

optimizer = tf.keras.optimizers.Adam(lr=0.001)model = Sequential()# ,kernel_regularizer=l2(c), bias_regularizer=l2(c)model.add(Dense(100, input_shape = (X_train.shape[1],), activation = 'relu',kernel_initializer='glorot_uniform'))model.add(Dropout(0.2))model.add(Dense(100, activation = 'relu',kernel_initializer='glorot_uniform'))model.add(Dropout(0.2))model.add(Dense(100, activation = 'relu',kernel_initializer='glorot_uniform'))model.add(Dense(1,activation = 'linear',kernel_initializer='glorot_uniform'))model.compile(loss = 'mse', optimizer = optimizer, metrics = ['mse'])history = model.fit(X_train, y_train, epochs = 100,                    validation_split = 0.1, shuffle=False, batch_size=250                    )history_dict = history.history

数据集由18个特征和1个标签组成,这是一个回归任务。


回答:

你只需在compile行中添加它即可。

model.compile(loss = 'mse', optimizer = optimizer, metrics = ['mse', r2_score])

如果你想这样做,你需要创建一个可以被Keras理解的指标,

import tf.keras.backend as Kdef r2_score(y_true, y_pred):    SS_res =  K.sum(K.square(y_true - y_pred))     SS_tot = K.sum(K.square(y_true - K.mean(y_true)))     return ( 1 - SS_res/(SS_tot + K.epsilon()) )

代码来自于kaggle

抱歉,我忘记添加Tensorboard部分了。

如果你想查看训练过程中损失/指标的变化,可以使用Tensorboard,如文档中所述

logdir = "logs/" + datetime.now().strftime("%Y%m%d-%H%M%S")tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=logdir)history = model.fit(X_train, y_train, epochs = 100,                    validation_split = 0.1, shuffle=False, batch_size=250, calllbacks=[tensorboard_callback])

然后在终端中使用以下命令访问Tensorboard

tensorboard --logdir logs

然后通过浏览器访问localhost:6006来查看Tensorboard

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中创建了一个多类分类项目。该项目可以对…

发表回复

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