在哪里可以找到Tensorflow2.0中的手动拟合损失函数?

时间:2019-05-16 07:13:31

标签: tensorflow anaconda python-3.7 tensorflow2.0

我正在尝试解决此错误:

dfsEuro = [pd.read_csv("/usr/local/brs/BLK/Markit/tobfm/DXOpen_BuysideAnalytics_EuroEqty_SF_" + xDate[i] + ".tsv",
                          sep="\t") for i in range(0, len(runDates))]

对于上下文,我在带有 AttributeError: module 'tensorflow.python.keras.api._v2.keras.losses' has no attribute 'sparse_softmax_cross_entropy' 的Windows上使用tensorflow2.0。 我正在尝试对标签为0或1的python3.6数据进行快速分类。

通常的3-axis方法不能给我足够的数据控制权,所以我试图逐步将其放入嵌套循环中。

这是模型:

model.fit()

这是我用于拟合的代码:

    model = tf.keras.Sequential([
            tf.keras.layers.Dense(3),
            tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(16)),
            tf.keras.layers.Dense(1, activation = 'sigmoid')
            ])

运行时,出现标题中提到的错误,我猜这是一个 def fit(epochs=1): global_step = tf.Variable(0) for epoch in range(epochs): epoch_loss_avg = tf.metrics.Mean() epoch_accuracy = tf.metrics.Accuracy() for data_ in SQdatas: data = tf.convert_to_tensor(data_) for dataslice in data: inputs, label = tf.transpose([[dataslice[1:4]]]), dataslice[4] loss_value, grads = grad(model, inputs, label) model.optimizer.apply_gradients(zip(grads, model.trainable_variables), global_step) epoch_loss_avg(loss_value) epoch_accuracy(tf.argmax(model(x)), y) train_loss_results.append(epoch_loss_avg.result()) train_accuracy_results.append(epoch_accuracy.result()) 兼容性问题,因为tensorflow2.0应该存在于1.3中。 如果是什么替代品?如果没有,为什么? 谢谢您的宝贵时间。

我看到了所有出现的错误,并指出从tf.losses.sparse_softmax_cross_entropy 1.2升级到1.3可以解决此问题,但这并不适用。我仍然尝试卸载tensorflow,卸载tensorflow2.0并重新安装protobuf,但这没有用。

1 个答案:

答案 0 :(得分:0)