节奏控概扑街 2022-12-22 13:35 采纳率: 0%
浏览 10

tensorflow2使用deepmatch绘制DSSM模型报错

问题遇到的现象和发生背景

在使用Deepmatch包构建了DSSM模型后,我想使用tf.keras.utils.plot_model来绘制模型

遇到的现象和发生背景,请写出第一个错误信息

此时会报一个AttributeError

用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
    layer_name = layer.name
AttributeError: 'ListWrapper' object has no attribute 'name'

运行结果及详细报错内容
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%

我怀疑是Deepmatch包中的DSSM模型对输入进行了list(),但这是必须的部分,所以我很困惑。

我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”
  • 写回答

1条回答 默认 最新

  • heart_6662 2022-12-29 13:20
    关注

    望采纳!!点击该回答右侧的“采纳”按钮即可采纳!!
    这个错误的原因是因为你传入的model不是一个单独的层,而是一个包含多个层的列表。

    我想到解决方法有两种:
    1.将列表中的每个层单独绘制:

    for layer in model:
        tf.keras.utils.plot_model(layer)
    
    
    

    2.使用tf.keras.Model的subclassing方式来构建模型,然后绘制整个模型:

    class DSSM(tf.keras.Model):
        def __init__(self):
            super(DSSM, self).__init__()
            self.layers = [
                # 将所有层添加到这里
            ]
    
        def call(self, inputs, training=None, mask=None):
            # 将输入传递给所有层并返回输出
    
    model = DSSM()
    tf.keras.utils.plot_model(model)
    
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 12月22日

悬赏问题

  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题