小编Lin*_*Ina的帖子

Keras中的tensorflow会话在哪里

我是keras和tensorflow的新手。当我使用tensorflow编写程序时,我必须建立一个会话来运行图形。但是,当我使用keras时,尽管后端显然是tensorflow,但我在keras代码中看不到session。似乎所有事情都在model.compile和model.fit之后完成。

那么,Keras如何工作?张量流会话在哪里?而不是会话,我可以对keras使用渴望执行吗?

预先感谢,对不起我的英语

python deep-learning keras tensorflow keras-layer

8
推荐指数
1
解决办法
4444
查看次数

如何在 TensorFlow 2.0 中调试 Keras?

实际上,我在 TensorFlow 1.13.0 中已经发现了这个问题。(tensorflow1.12.0 运行良好)。

我的代码被列为一个简单的例子:

def Lambda layer(temp):
    print(temp)
    return temp
Run Code Online (Sandbox Code Playgroud)

在我的 Keras 模型中用作 lambda 层。在tensorflow1.12.0中,print(temp)可以输出如下的详细数据

[<tf.Tensor: id=250, shape=(1024, 2, 32), dtype=complex64, numpy=
array([[[ 7.68014073e-01+0.95353246j,  7.01403618e-01+0.64385843j,
          8.30483198e-01+1.0340731j , ..., -8.88018191e-01+0.4751519j ,
         -1.20197642e+00+0.6313924j , -1.03787208e+00+0.22964947j],
        [-7.94382274e-01+0.56390345j, -4.73938555e-01+0.55901265j,
         -8.73749971e-01+0.67095983j, ..., -5.81580341e-01-0.91620034j,
         -7.04443693e-01-1.2709806j , -3.23135853e-01-1.0887597j ]],
Run Code Online (Sandbox Code Playgroud)

这是因为我使用 1024 作为 batch_size。但是当我更新到 tensorflow1.13.0 或 TensorFlow 2.0 时,同样的代码输出

Tensor("lambda_1/truediv:0", shape=(None, 1), dtype=float32)

Run Code Online (Sandbox Code Playgroud)

这太可怕了,因为我不知道确切的错误。那么,关于如何解决它的任何想法?

keras tensorflow eager-execution tensorflow2.0

6
推荐指数
1
解决办法
2420
查看次数

K.ctc_batch_cost() 中 input_length 的意思是什么

我已经下载了一个使用 Keras 的 ocr 代码,它应用了 CRNN 网络并使用 CTC 损失作为损失函数。但是,我对 CTC 损失真的很K.ctc_batch_cost()陌生,只是在使用 时遇到了麻烦,尤其是 input_length 的含义。在 keras 的文档中,

tf.keras.backend.ctc_batch_cost( y_true, y_pred, input_length, label_length ) 的参数

  1. y_true:包含真实标签的张量(样本,max_string_length)。
  2. y_pred: 张量 (samples, time_steps, num_categories) 包含 softmax 的预测或输出。
  3. input_length:张量 (samples, 1) 包含 y_pred 中每个批次项目的序列长度。
  4. label_length:张量 (samples, 1) 包含 y_true 中每个批次项目的序列长度。

    但是,我的问题是 input_length 的含义是什么?那是 LSTM 输出的维度吗?

python keras tensorflow

5
推荐指数
1
解决办法
1424
查看次数