此link的tensorflow教程(请参阅“训练模型”部分)表明,可以向tf.keras.model.fit提供数据集(数据、标签)。然而,当我将我的数据集分配给val_data时,如下所示,无论训练状态如何,验证数据的损失都是0 (见下图)。¨ history = model.fit(
train_ds,
validation_data=val_ds,
epochs=EPOCHS,
verbose=1,
) IMAGE: Result of training from history, the validation
操作系统: Ubuntu 16.04
Python 3.5
我试图在一个加强策略梯度算法程序上实现一个自定义损失函数,但遇到了以下错误:
2018-03-28 23:32:37.766405: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA Traceback (most recent call last): File "reinforce.
我训练了一个数字图像并制作了一个模型文件。
相应的调味汁如下。
import os
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
from tensorflow.keras.datasets import mnist
from tensorflow.keras.utils import to_categorical
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
我正在尝试使用Keras的functional API来处理多个输入,并使用自定义的损失函数RMSLE。下面是我的代码: import tensorflow as tf
from tensorflow.keras.layers import *
from tensorflow.keras.models import Sequential, Model
from tensorflow.keras import backend as K
from tensorflow.keras.losses import MeanSquaredLogarithmicError
def rmsle(y_tru
我的模型结构如下所示。
我已经构建了model_1并获得了loss_1。此外,我尝试在get_loss()函数中添加pretrained_model的预测过程,在该函数中我可以获得out_1。我想把loss_1和loss_2的和作为model_1的直接损失。
由于tensorflow的静态图形机制,作为keras的后端,我的代码似乎是错误的。
我怎么发动汽车呢?
def get_loss(y_true, y_pred):
loss_1 = fun(y_true, y_pred) # this line is OK
loss_2 = pretrained_model(
我正在研究tensorflow.keras中的一个不平衡的分类问题。我决定按照this answer on cross validated的建议计算“几何平均分”。我在一个名为imbalanced-learn的包中发现了一个implementation of it,并意识到它不能用作tensorflow.keras.Model.compile(metrics=[])中的指标之一;而且由于我还希望在每次调用时都向它传递一个参数,所以我决定自己实现一个自定义指标并使用它。但是我在测试过程中遇到了一个错误,那就是: AttributeError: 'GeometricMeanScore
当我试图在急切模式下用tensorflow重写一个时,发生了以下错误:
tensorflow.python.framework.errors_impl.InvalidArgumentError: cannot compute ConcatV2 as input #1 was expected to be a float tensor but is a int32 tensor [Op:ConcatV2] name: concat
我试图定位错误并简化代码,然后在一个动态图形中以急切模式计算两个嵌入时,就会出现错误。
在静态图形模式上添加两个嵌入时没有错误。
with tf.Graph().as
我正在运行这个Tensorflow NMT教程:
当我尝试保存解码器:decoder.save('decoder')时,我得到:
AssertionError: Tried to export a function which references untracked object Tensor("LuongAttention/memory_layer/Tensordot:0", shape=(1024, 23, 256), dtype=float32).TensorFlow objects (e.g. tf.Variable) captured by func
我想创建一个基于MLP的自定义CNN模型(多尺度),由几个并行的小网络(胶囊)组成。这些简单的小网络被实例化为每个卷积尺度(即3x3,5x5 )的自定义图层(conv2d->Flatten->Dense)。这些胶囊网络的目的是使用CNN模型产生中间损失意识,以减少总体损失。我写了一些粗略的代码,但我不能写正确的代码来使用这些胶囊计算局部损失。代码如下:
from tensorflow.keras import layers
import tensorflow as tf
from tensorflow.keras.datasets import mnist
from tensorf
我正在尝试用这个自定义损失函数训练我的模型:1 其中S(pn;ω)是预测值(y_pred),MOSn是目标(y_true),所以我是这样写的: import keras.backend as K
def custom_loss_function(y_true,y_pred):
for i in range(1,n+1):
l= K.abs(y_pred-y_true)
l = K.mean(l, axis=-1)
return l 然后我构建了我的模型: #Model definition
from keras import models
from keras i
这个问题是而不是,是以下问题的重复。
分解了我所做的事情和发生的事情:
在下面运行一个简单的CNN时,将给出以下输出并发生错误。请注意,我已经有一个热编码标签与tensorflow.keras.utils.to_categorical,所以不应该有错误。
import numpy as np
import tensorflow.keras
from tensorflow.keras.datasets import mnist
from tensorflow.keras.models import Sequential, Model
from tensorflow.keras.optimi
我正在尝试keras.layers.LSTM,下面的代码可以工作。
#!/usr/bin/python3
import tensorflow as tf
import numpy as np
from tensorflow import keras
data = np.array([1, 2, 3]).reshape((1, 3, 1))
x = keras.layers.Input(shape=(3, 1))
y = keras.layers.LSTM(10)(x)
model = keras.Model(inputs=x, outputs=y)
print (model.predi
这就是我得到的问题,但我不会在任何地方使用它作为bool。至少在我能找到的地方找不到。我读过类似的问题,它们之所以得到解决,是因为实际上有一个实例将其视为布尔值。但是,我没有用过它是一个bool。 功能: def compile_cnn(model, loss = None, optimizer = None):
# Compile the CNN using the specified loss function
model.compile(loss=loss, optimizer=optimizer)
# return the compiled model
我正在实现一个自定义损失函数,如下面的代码所示,用于简单的分类。但是,当我运行代码时,我得到错误ValueError:没有为任何变量提供渐变: import os
os.environ['KERAS_BACKEND'] = "tensorflow"
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from tensorflow import keras
from tensorflow.keras import layers
from sklearn.prep
我正在尝试将LogCosh函数实现为自定义损失函数。当我这样做时,我得到了一个错误,因为拟合阶段将NaN作为损失。更奇怪的是,当我运行它时,它开始给出损失的实际值,然后到达一个点,它再次开始返回NaN。
我的模型:
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
model = tf.keras.Sequential([
tf.keras.layers.Flatten(input_shape=(81,)),
tf.keras.layers.Dens
在阅读this和this answer时,我了解到在TensorFlow2.0上使用非动态模型时,Keras将使用AutoGraph。但是现在编写一个回调来获取训练期间变量的历史记录, class TrainHistory(tf.keras.callbacks.Callback):
def on_train_begin(self, logs={}):
self.vars = []
def on_batch_end(self, batch, logs={}):
self.vars.append([v.numpy() for v in self.