You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何显示包含嵌套模型的TensorFlow Keras模型的全部层?

方法1:使用summary()的内置展开参数

TensorFlow 2.5及以上版本的model.summary()提供了expand_nested参数,设置为True即可直接展开所有嵌套模型的内部层,还可以搭配show_trainable=True同时显示每层的可训练状态:

model.summary(expand_nested=True, show_trainable=True)

执行后输出会自动把MobileNetV3Small的所有内部层按层级展开展示。

方法2:递归遍历全层(兼容低版本TF)

如果你的TensorFlow版本较低不支持上述参数,或者需要自定义输出内容,可以手写递归遍历函数:

def print_all_layers(model, indent_level=0):
    indent = "  " * indent_level
    for layer in model.layers:
        # 打印当前层基础信息
        print(f"{indent}层名:{layer.name} | 类型:{layer.__class__.__name__} | 输出形状:{layer.output_shape} | 参数量:{layer.count_params()}")
        # 如果当前层是包含子层的容器(比如预训练模型、Sequential实例),递归遍历子层
        if hasattr(layer, "layers"):
            print_all_layers(layer, indent_level + 1)

# 调用函数打印全部层
print_all_layers(model)

函数会用缩进区分层级,逐层输出所有嵌套的子层信息。

方法3:单独打印基础模型结构

如果你只需要查看MobileNetV3Small的内部层,直接调用基础模型的summary方法即可:

base_model.summary()

内容的提问来源于stack exchange,提问作者YoniChechik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 19:51:01