【问题标题】:AttributeError: object has no attribute '_lazy_read' [closed]AttributeError:对象没有属性“_lazy_read”[关闭]
【发布时间】:2019-01-28 10:11:40
【问题描述】:

我正在使用 python 3 和 tensorflow 1.12 & eager eval

我正在尝试按照here 的说明使用分散更新

我收到以下错误:

AttributeError: 'EagerTensor' 对象没有属性 '_lazy_read'

是否有可用于 Eager eval 的解决方法或其他功能?

【问题讨论】:

    标签: python tensorflow machine-learning deep-learning eager-execution


    【解决方案1】:

    scatter_update 需要变量而不是常量张量:

    对变量引用应用稀疏更新。

    我猜你向scater_update 传递了一个常量张量,导致抛出异常。这是一个急切模式的例子:

    import tensorflow as tf
    
    tf.enable_eager_execution()
    
    data = tf.Variable([[2],
                        [3],
                        [4],
                        [5],
                        [6]])
    
    cond = tf.where(tf.less(data, 5)) # update value less than 5
    match_data = tf.gather_nd(data, cond)
    square_data = tf.square(match_data) # square value less than 5
    
    data = tf.scatter_nd_update(data, cond, square_data)
    
    print(data)
    
    # array([[ 4],
    #    [ 9],
    #    [16],
    #    [ 5],
    #    [ 6]], dtype=int32)>
    

    【讨论】:

      猜你喜欢
      • 2015-09-24
      • 2017-05-24
      • 2021-07-06
      • 2016-08-16
      • 2020-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多