【问题标题】:AttributeError: module 'tensorflow_core.python.keras.api._v2.keras.losses' has no attribute 'softmax_cross_entropy'AttributeError:模块“tensorflow_core.python.keras.api._v2.keras.losses”没有属性“softmax_cross_entropy”
【发布时间】:2020-06-25 11:55:20
【问题描述】:

使用 tf.losses.softmax_cross_entropy 时出现 AttributeError: module 'tensorflow_core.python.keras.api._v2.keras.losses' has no attribute 'softmax_cross_entropy' 错误。有人可以帮我吗?

【问题讨论】:

  • 嘿,你能发布一个代码示例来描述你是如何得到这个错误的吗?
  • 好吧,我想我应该使用这个:tf.compat.v1.losses.softmax_cross_entropy

标签: python tensorflow keras cross-entropy


【解决方案1】:

tf.losses 现在指向tf.keras.losses。您可以通过使用获得相同的行为 tf.losses.categorical_crossentropyfrom_logits 设置为 True

【讨论】:

    【解决方案2】:

    有时我们会遇到此错误,尤其是在 jupyter notebook 等在线活页夹上运行时。而不是写

    tf.losses.softmax_cross_entropy
    

    试试

    loss = 'softmax_cross_entropy'
    

    或以下任一

    tf.keras.losses.CategoricalCrossentropy()
    loss = 'categorical_crossentropy'
    

    您可能还想使用 from_logits=True 作为参数 - 它应该看起来像

    tf.keras.losses.CategoricalCrossentropy(from_logits=True) 
    

    同时保持指标类似于

    metrics=['accuracy']
    

    【讨论】:

      猜你喜欢
      • 2021-02-13
      • 2022-07-06
      • 2022-10-24
      • 2019-09-09
      • 1970-01-01
      • 2018-04-14
      • 2019-02-18
      • 1970-01-01
      • 2020-01-01
      相关资源
      最近更新 更多