FLOPs全称是floating point operations的缩写,翻译过来是浮点运算数,理解为计算量,常用来衡量算法或深度学习模型的计算复杂度。

关于计算FLOPs值的函数,网上相关的博客很多,但是能用的很少,下面这个函数是我实际使用过可行的函数,用来计算keras模型的FLOPs值。

方法一:

# 浮点运行次数
# FLOPS:注意全大写,是floating point operations per second的缩写,意指每秒浮点运算次数,理解为计算速度。是一个衡量硬件性能的指标。
# FLOPs:注意s小写,是floating point operations的缩写(s表复数),意指浮点运算数,理解为计算量。可以用来衡量算法/模型的复杂度。
# In TF 2.x you have to use tf.compat.v1.RunMetadata instead of tf.RunMetadata
# To work your code in TF 2.1.0, i have made all necessary changes that are compliant to TF 2.x# print(tf.__version__)
import tensorflow as tf
# 必须要下面这行代码
tf.compat.v1.disable_eager_execution()
print(tf.__version__)# 我自己使用的函数
def get_flops_params():sess = tf.compat.v1.Session()graph = sess.graphflops = tf.compat.v1.profiler.profile(graph, options=tf.compat.v1.profiler.ProfileOptionBuilder.float_operation())params = tf.compat.v1.profiler.profile(graph, options=tf.compat.v1.profiler.ProfileOptionBuilder.trainable_variables_parameter())print('FLOPs: {};    Trainable params: {}'.format(flops.total_float_ops, params.total_parameters))# 网上推荐的
# sess = tf.compat.v1.Session()
# graph = sess.graph
# stats_graph(graph)
def stats_graph(graph):flops = tf.compat.v1.profiler.profile(graph, options=tf.compat.v1.profiler.ProfileOptionBuilder.float_operation())# print('FLOPs: {}'.format(flops.total_float_ops))params = tf.compat.v1.profiler.profile(graph, options=tf.compat.v1.profiler.ProfileOptionBuilder.trainable_variables_parameter())# print('Trainable params: {}'.format(params.total_parameters))print('FLOPs: {};    Trainable params: {}'.format(flops.total_float_ops, params.total_parameters))def get_flops(model):run_meta = tf.compat.v1.RunMetadata()opts = tf.compat.v1.profiler.ProfileOptionBuilder.float_operation()# We use the Keras session graph in the call to the profiler.flops = tf.compat.v1.profiler.profile(graph=tf.compat.v1.keras.backend.get_session().graph, run_meta=run_meta, cmd='op', options=opts)return flops.total_float_ops  # Prints the "flops" of the model.# 必须使用tensorflow中的keras才能够获取到FLOPs, 模型中的各个函数都必须使用tensorflow.keras中的函数,和keras混用会报错
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
from tensorflow.keras.models import Sequentialmodel = Sequential()
model.add(Conv2D(filters=64, kernel_size=(3, 3), input_shape=(28, 28, 1), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(units=100, activation='relu'))
model.add(Dense(units=10, activation='softmax'))
# 获取模型每一层的参数详情
model.summary()
# 获取模型浮点运算总次数和模型的总参数
get_flops_params()

此代码情况下,实测MobileNetv2计算量误差较大:

2021-04-18 21:17:58.053772: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2021-04-18 21:17:58.054691: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1261] Device interconnect StreamExecutor with strength 1 edge matrix:
2021-04-18 21:17:58.054932: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1267]
2021-04-18 21:17:58.055070: I tensorflow/compiler/jit/xla_gpu_device.cc:99] Not creating XLA devices, tf_xla_enable_xla_devices not set
WARNING:tensorflow:From D:\Anaconda3\envs\wen\lib\site-packages\tensorflow\python\profiler\internal\flops_registry.py:142: tensor_shape_from_node_def_name (from tensorflow.python.framework.graph_util_impl) is deprecated and will be removed in a future version.
Instructions for updating:
Use `tf.compat.v1.graph_util.tensor_shape_from_node_def_name`
[0418 21:17:58] From D:\Anaconda3\envs\wen\lib\site-packages\tensorflow\python\profiler\internal\flops_registry.py:142: tensor_shape_from_node_def_name (from tensorflow.python.framework.graph_util_impl) is deprecated and will be removed in a future version.
Instructions for updating:
Use `tf.compat.v1.graph_util.tensor_shape_from_node_def_name`
62 ops no flops stats due to incomplete shapes.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              1
-min_occurrence             0
-step                       -1
-order_by                   float_ops
-account_type_regexes       .*
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     float_ops
-output                     stdout:==================Model Analysis Report======================Doc:
scope: The nodes in the model graph are organized by their names, which is hierarchical like filesystem.
flops: Number of float operations. Note: Please read the implementation for the math behind it.Profile:
node name | # float_ops
_TFProfRoot (--/7.01m flops)predictions/kernel/Initializer/random_uniform (1.28m/2.56m flops)predictions/kernel/Initializer/random_uniform/mul (1.28m/1.28m flops)predictions/kernel/Initializer/random_uniform/sub (1/1 flops)Conv_1/kernel/Initializer/random_uniform (409.60k/819.20k flops)Conv_1/kernel/Initializer/random_uniform/mul (409.60k/409.60k flops)Conv_1/kernel/Initializer/random_uniform/sub (1/1 flops)block_16_project/kernel/Initializer/random_uniform (307.20k/614.40k flops)block_16_project/kernel/Initializer/random_uniform/mul (307.20k/307.20k flops)block_16_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_14_project/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_14_project/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_14_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_14_expand/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_14_expand/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_14_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_15_project/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_15_project/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_15_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_15_expand/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_15_expand/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_15_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_16_expand/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_16_expand/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_16_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_13_project/kernel/Initializer/random_uniform (92.16k/184.32k flops)block_13_project/kernel/Initializer/random_uniform/mul (92.16k/92.16k flops)block_13_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_12_project/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_12_project/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_12_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_13_expand/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_13_expand/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_13_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_12_expand/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_12_expand/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_12_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_11_expand/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_11_expand/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_11_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_11_project/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_11_project/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_11_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_10_project/kernel/Initializer/random_uniform (36.86k/73.73k flops)block_10_project/kernel/Initializer/random_uniform/mul (36.86k/36.86k flops)block_10_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_8_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_8_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_8_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_8_project/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_8_project/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_8_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_9_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_9_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_9_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_7_project/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_7_project/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_7_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_9_project/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_9_project/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_9_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_7_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_7_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_7_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_10_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_10_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_10_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_6_project/kernel/Initializer/random_uniform (12.29k/24.58k flops)block_6_project/kernel/Initializer/random_uniform/mul (12.29k/12.29k flops)block_6_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_15_depthwise/depthwise_kernel/Initializer/random_uniform (8.64k/17.28k flops)block_15_depthwise/depthwise_kernel/Initializer/random_uniform/mul (8.64k/8.64k flops)block_15_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_16_depthwise/depthwise_kernel/Initializer/random_uniform (8.64k/17.28k flops)block_16_depthwise/depthwise_kernel/Initializer/random_uniform/mul (8.64k/8.64k flops)block_16_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_14_depthwise/depthwise_kernel/Initializer/random_uniform (8.64k/17.28k flops)block_14_depthwise/depthwise_kernel/Initializer/random_uniform/mul (8.64k/8.64k flops)block_14_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_6_expand/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_6_expand/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_6_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_4_project/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_4_project/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_4_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_5_expand/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_5_expand/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_5_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_5_project/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_5_project/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_5_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_4_expand/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_4_expand/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_4_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_12_depthwise/depthwise_kernel/Initializer/random_uniform (5.18k/10.37k flops)block_12_depthwise/depthwise_kernel/Initializer/random_uniform/mul (5.18k/5.18k flops)block_12_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_11_depthwise/depthwise_kernel/Initializer/random_uniform (5.18k/10.37k flops)block_11_depthwise/depthwise_kernel/Initializer/random_uniform/mul (5.18k/5.18k flops)block_11_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_13_depthwise/depthwise_kernel/Initializer/random_uniform (5.18k/10.37k flops)block_13_depthwise/depthwise_kernel/Initializer/random_uniform/mul (5.18k/5.18k flops)block_13_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_3_project/kernel/Initializer/random_uniform (4.61k/9.22k flops)block_3_project/kernel/Initializer/random_uniform/mul (4.61k/4.61k flops)block_3_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_2_expand/kernel/Initializer/random_uniform (3.46k/6.91k flops)block_2_expand/kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_2_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_10_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_10_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_10_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_2_project/kernel/Initializer/random_uniform (3.46k/6.91k flops)block_2_project/kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_2_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_7_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_7_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_7_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_8_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_8_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_8_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_3_expand/kernel/Initializer/random_uniform (3.46k/6.91k flops)block_3_expand/kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_3_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_9_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_9_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_9_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_1_project/kernel/Initializer/random_uniform (2.30k/4.61k flops)block_1_project/kernel/Initializer/random_uniform/mul (2.30k/2.30k flops)block_1_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_5_depthwise/depthwise_kernel/Initializer/random_uniform (1.73k/3.46k flops)block_5_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.73k/1.73k flops)block_5_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_4_depthwise/depthwise_kernel/Initializer/random_uniform (1.73k/3.46k flops)block_4_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.73k/1.73k flops)block_4_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_6_depthwise/depthwise_kernel/Initializer/random_uniform (1.73k/3.46k flops)block_6_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.73k/1.73k flops)block_6_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_1_expand/kernel/Initializer/random_uniform (1.54k/3.07k flops)block_1_expand/kernel/Initializer/random_uniform/mul (1.54k/1.54k flops)block_1_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_2_depthwise/depthwise_kernel/Initializer/random_uniform (1.30k/2.59k flops)block_2_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.30k/1.30k flops)block_2_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_3_depthwise/depthwise_kernel/Initializer/random_uniform (1.30k/2.59k flops)block_3_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.30k/1.30k flops)block_3_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)Conv1/kernel/Initializer/random_uniform (864/1.73k flops)Conv1/kernel/Initializer/random_uniform/mul (864/864 flops)Conv1/kernel/Initializer/random_uniform/sub (1/1 flops)block_1_depthwise/depthwise_kernel/Initializer/random_uniform (864/1.73k flops)block_1_depthwise/depthwise_kernel/Initializer/random_uniform/mul (864/864 flops)block_1_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)Conv_1_bn/AssignMovingAvg/mul (1.28k/1.28k flops)Conv_1_bn/AssignMovingAvg/sub_1 (1.28k/1.28k flops)Conv_1_bn/AssignMovingAvg_1/mul (1.28k/1.28k flops)Conv_1_bn/AssignMovingAvg_1/sub_1 (1.28k/1.28k flops)expanded_conv_project/kernel/Initializer/random_uniform (512/1.02k flops)expanded_conv_project/kernel/Initializer/random_uniform/mul (512/512 flops)expanded_conv_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_15_depthwise_BN/AssignMovingAvg_1/mul (960/960 flops)block_15_expand_BN/AssignMovingAvg/sub_1 (960/960 flops)block_15_depthwise_BN/AssignMovingAvg/sub_1 (960/960 flops)block_14_depthwise_BN/AssignMovingAvg/mul (960/960 flops)block_15_expand_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_14_depthwise_BN/AssignMovingAvg/sub_1 (960/960 flops)block_14_depthwise_BN/AssignMovingAvg_1/mul (960/960 flops)block_14_expand_BN/AssignMovingAvg/sub_1 (960/960 flops)block_14_depthwise_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_15_depthwise_BN/AssignMovingAvg/mul (960/960 flops)block_14_expand_BN/AssignMovingAvg_1/mul (960/960 flops)block_14_expand_BN/AssignMovingAvg/mul (960/960 flops)block_15_expand_BN/AssignMovingAvg_1/mul (960/960 flops)block_14_expand_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_15_expand_BN/AssignMovingAvg/mul (960/960 flops)block_15_depthwise_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_16_expand_BN/AssignMovingAvg/sub_1 (960/960 flops)block_16_depthwise_BN/AssignMovingAvg/mul (960/960 flops)block_16_depthwise_BN/AssignMovingAvg/sub_1 (960/960 flops)block_16_depthwise_BN/AssignMovingAvg_1/mul (960/960 flops)block_16_depthwise_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_16_expand_BN/AssignMovingAvg/mul (960/960 flops)block_16_expand_BN/AssignMovingAvg_1/mul (960/960 flops)block_16_expand_BN/AssignMovingAvg_1/sub_1 (960/960 flops)expanded_conv_depthwise/depthwise_kernel/Initializer/random_uniform (288/577 flops)expanded_conv_depthwise/depthwise_kernel/Initializer/random_uniform/mul (288/288 flops)expanded_conv_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_13_expand_BN/AssignMovingAvg_1/mul (576/576 flops)block_13_expand_BN/AssignMovingAvg/sub_1 (576/576 flops)block_13_expand_BN/AssignMovingAvg/mul (576/576 flops)block_12_depthwise_BN/AssignMovingAvg/mul (576/576 flops)block_12_depthwise_BN/AssignMovingAvg/sub_1 (576/576 flops)block_12_depthwise_BN/AssignMovingAvg_1/mul (576/576 flops)block_11_depthwise_BN/AssignMovingAvg/mul (576/576 flops)block_12_depthwise_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_13_depthwise_BN/AssignMovingAvg_1/mul (576/576 flops)block_11_depthwise_BN/AssignMovingAvg/sub_1 (576/576 flops)block_11_depthwise_BN/AssignMovingAvg_1/mul (576/576 flops)block_11_depthwise_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_11_expand_BN/AssignMovingAvg/mul (576/576 flops)block_11_expand_BN/AssignMovingAvg/sub_1 (576/576 flops)block_13_depthwise_BN/AssignMovingAvg/mul (576/576 flops)block_11_expand_BN/AssignMovingAvg_1/mul (576/576 flops)block_13_depthwise_BN/AssignMovingAvg/sub_1 (576/576 flops)block_11_expand_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_13_depthwise_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_13_expand_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_12_expand_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_12_expand_BN/AssignMovingAvg_1/mul (576/576 flops)block_12_expand_BN/AssignMovingAvg/sub_1 (576/576 flops)block_12_expand_BN/AssignMovingAvg/mul (576/576 flops)block_8_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_8_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_8_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_8_expand_BN/AssignMovingAvg/mul (384/384 flops)block_8_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_7_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_7_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_7_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_9_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_7_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_10_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_10_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_7_expand_BN/AssignMovingAvg/mul (384/384 flops)block_10_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_10_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_10_expand_BN/AssignMovingAvg/mul (384/384 flops)block_10_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_10_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_10_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_9_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_9_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_7_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_7_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_9_expand_BN/AssignMovingAvg/mul (384/384 flops)block_7_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_8_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_9_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_8_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_9_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_9_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_8_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_9_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_16_project_BN/AssignMovingAvg_1/sub_1 (320/320 flops)block_16_project_BN/AssignMovingAvg_1/mul (320/320 flops)block_16_project_BN/AssignMovingAvg/sub_1 (320/320 flops)block_16_project_BN/AssignMovingAvg/mul (320/320 flops)block_4_depthwise_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_5_expand_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_6_expand_BN/AssignMovingAvg/sub_1 (192/192 flops)block_4_depthwise_BN/AssignMovingAvg_1/mul (192/192 flops)block_6_depthwise_BN/AssignMovingAvg_1/mul (192/192 flops)block_5_expand_BN/AssignMovingAvg_1/mul (192/192 flops)block_6_expand_BN/AssignMovingAvg_1/mul (192/192 flops)block_6_expand_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_5_expand_BN/AssignMovingAvg/sub_1 (192/192 flops)block_6_depthwise_BN/AssignMovingAvg/sub_1 (192/192 flops)block_4_depthwise_BN/AssignMovingAvg/sub_1 (192/192 flops)block_5_expand_BN/AssignMovingAvg/mul (192/192 flops)block_4_depthwise_BN/AssignMovingAvg/mul (192/192 flops)block_6_expand_BN/AssignMovingAvg/mul (192/192 flops)block_5_depthwise_BN/AssignMovingAvg_1/mul (192/192 flops)block_5_depthwise_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_6_depthwise_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_5_depthwise_BN/AssignMovingAvg/sub_1 (192/192 flops)block_5_depthwise_BN/AssignMovingAvg/mul (192/192 flops)block_6_depthwise_BN/AssignMovingAvg/mul (192/192 flops)block_4_expand_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_4_expand_BN/AssignMovingAvg_1/mul (192/192 flops)block_4_expand_BN/AssignMovingAvg/sub_1 (192/192 flops)block_4_expand_BN/AssignMovingAvg/mul (192/192 flops)block_14_project_BN/AssignMovingAvg/sub_1 (160/160 flops)block_14_project_BN/AssignMovingAvg/mul (160/160 flops)block_13_project_BN/AssignMovingAvg/mul (160/160 flops)block_13_project_BN/AssignMovingAvg_1/sub_1 (160/160 flops)block_13_project_BN/AssignMovingAvg/sub_1 (160/160 flops)block_15_project_BN/AssignMovingAvg/mul (160/160 flops)block_13_project_BN/AssignMovingAvg_1/mul (160/160 flops)block_15_project_BN/AssignMovingAvg/sub_1 (160/160 flops)block_14_project_BN/AssignMovingAvg_1/sub_1 (160/160 flops)block_15_project_BN/AssignMovingAvg_1/sub_1 (160/160 flops)block_14_project_BN/AssignMovingAvg_1/mul (160/160 flops)block_15_project_BN/AssignMovingAvg_1/mul (160/160 flops)block_3_expand_BN/AssignMovingAvg/sub_1 (144/144 flops)block_3_expand_BN/AssignMovingAvg_1/mul (144/144 flops)block_3_expand_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_2_depthwise_BN/AssignMovingAvg/mul (144/144 flops)block_2_depthwise_BN/AssignMovingAvg/sub_1 (144/144 flops)block_2_depthwise_BN/AssignMovingAvg_1/mul (144/144 flops)block_2_depthwise_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_2_expand_BN/AssignMovingAvg/mul (144/144 flops)block_2_expand_BN/AssignMovingAvg/sub_1 (144/144 flops)block_2_expand_BN/AssignMovingAvg_1/mul (144/144 flops)block_2_expand_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_3_depthwise_BN/AssignMovingAvg/mul (144/144 flops)block_3_depthwise_BN/AssignMovingAvg/sub_1 (144/144 flops)block_3_depthwise_BN/AssignMovingAvg_1/mul (144/144 flops)block_3_depthwise_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_3_expand_BN/AssignMovingAvg/mul (144/144 flops)block_1_depthwise_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_1_expand_BN/AssignMovingAvg_1/mul (96/96 flops)block_1_depthwise_BN/AssignMovingAvg/mul (96/96 flops)block_11_project_BN/AssignMovingAvg/mul (96/96 flops)block_1_expand_BN/AssignMovingAvg/sub_1 (96/96 flops)block_12_project_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_11_project_BN/AssignMovingAvg/sub_1 (96/96 flops)block_1_expand_BN/AssignMovingAvg/mul (96/96 flops)block_11_project_BN/AssignMovingAvg_1/mul (96/96 flops)block_1_depthwise_BN/AssignMovingAvg/sub_1 (96/96 flops)block_11_project_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_12_project_BN/AssignMovingAvg/sub_1 (96/96 flops)block_12_project_BN/AssignMovingAvg_1/mul (96/96 flops)block_1_expand_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_12_project_BN/AssignMovingAvg/mul (96/96 flops)block_1_depthwise_BN/AssignMovingAvg_1/mul (96/96 flops)block_10_project_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_10_project_BN/AssignMovingAvg_1/mul (96/96 flops)block_10_project_BN/AssignMovingAvg/sub_1 (96/96 flops)block_10_project_BN/AssignMovingAvg/mul (96/96 flops)block_6_project_BN/AssignMovingAvg/mul (64/64 flops)block_6_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_7_project_BN/AssignMovingAvg/mul (64/64 flops)block_7_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_8_project_BN/AssignMovingAvg/mul (64/64 flops)block_8_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_8_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_8_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_7_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_7_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_6_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_6_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_9_project_BN/AssignMovingAvg/mul (64/64 flops)block_9_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_9_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_9_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_5_project_BN/AssignMovingAvg/mul (32/32 flops)block_4_project_BN/AssignMovingAvg/mul (32/32 flops)block_5_project_BN/AssignMovingAvg/sub_1 (32/32 flops)block_4_project_BN/AssignMovingAvg/sub_1 (32/32 flops)bn_Conv1/AssignMovingAvg/sub_1 (32/32 flops)block_4_project_BN/AssignMovingAvg_1/mul (32/32 flops)block_5_project_BN/AssignMovingAvg_1/mul (32/32 flops)block_4_project_BN/AssignMovingAvg_1/sub_1 (32/32 flops)block_3_project_BN/AssignMovingAvg/mul (32/32 flops)block_3_project_BN/AssignMovingAvg/sub_1 (32/32 flops)block_3_project_BN/AssignMovingAvg_1/sub_1 (32/32 flops)block_3_project_BN/AssignMovingAvg_1/mul (32/32 flops)block_5_project_BN/AssignMovingAvg_1/sub_1 (32/32 flops)bn_Conv1/AssignMovingAvg/mul (32/32 flops)bn_Conv1/AssignMovingAvg_1/mul (32/32 flops)bn_Conv1/AssignMovingAvg_1/sub_1 (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg/mul (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg/sub_1 (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg_1/mul (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg_1/sub_1 (32/32 flops)block_1_project_BN/AssignMovingAvg/mul (24/24 flops)block_2_project_BN/AssignMovingAvg/mul (24/24 flops)block_1_project_BN/AssignMovingAvg/sub_1 (24/24 flops)block_2_project_BN/AssignMovingAvg_1/sub_1 (24/24 flops)block_1_project_BN/AssignMovingAvg_1/mul (24/24 flops)block_2_project_BN/AssignMovingAvg_1/mul (24/24 flops)block_2_project_BN/AssignMovingAvg/sub_1 (24/24 flops)block_1_project_BN/AssignMovingAvg_1/sub_1 (24/24 flops)expanded_conv_project_BN/AssignMovingAvg/mul (16/16 flops)expanded_conv_project_BN/AssignMovingAvg/sub_1 (16/16 flops)expanded_conv_project_BN/AssignMovingAvg_1/mul (16/16 flops)expanded_conv_project_BN/AssignMovingAvg_1/sub_1 (16/16 flops)block_16_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_5_project_BN/AssignMovingAvg/sub (1/1 flops)block_5_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_project_BN/AssignMovingAvg/sub (1/1 flops)block_6_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_15_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_expand_BN/AssignMovingAvg/sub (1/1 flops)block_6_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_14_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_6_expand_BN/AssignMovingAvg/sub (1/1 flops)block_14_project_BN/AssignMovingAvg/sub (1/1 flops)block_14_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_6_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_14_expand_BN/AssignMovingAvg/sub (1/1 flops)block_14_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_14_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_6_project_BN/AssignMovingAvg_1/sub (1/1 flops)Conv_1_bn/AssignMovingAvg/sub (1/1 flops)block_13_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_13_project_BN/AssignMovingAvg/sub (1/1 flops)block_13_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_13_expand_BN/AssignMovingAvg/sub (1/1 flops)block_13_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_13_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_7_expand_BN/AssignMovingAvg/sub (1/1 flops)Conv_1_bn/AssignMovingAvg_1/sub (1/1 flops)block_12_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_10_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_2_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_2_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_project_BN/AssignMovingAvg/sub (1/1 flops)block_3_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_2_expand_BN/AssignMovingAvg/sub (1/1 flops)block_7_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_2_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_12_project_BN/AssignMovingAvg/sub (1/1 flops)block_3_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_8_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_12_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_12_expand_BN/AssignMovingAvg/sub (1/1 flops)block_8_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_12_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_12_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_2_project_BN/AssignMovingAvg/sub (1/1 flops)block_8_expand_BN/AssignMovingAvg/sub (1/1 flops)block_11_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_3_expand_BN/AssignMovingAvg/sub (1/1 flops)block_8_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_11_project_BN/AssignMovingAvg/sub (1/1 flops)block_3_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_2_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_8_project_BN/AssignMovingAvg/sub (1/1 flops)block_1_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_3_project_BN/AssignMovingAvg/sub (1/1 flops)block_8_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_3_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_11_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_4_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_9_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_11_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_11_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_9_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_1_project_BN/AssignMovingAvg/sub (1/1 flops)block_10_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_4_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_9_expand_BN/AssignMovingAvg/sub (1/1 flops)block_1_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_10_project_BN/AssignMovingAvg/sub (1/1 flops)block_9_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_4_expand_BN/AssignMovingAvg/sub (1/1 flops)block_10_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_1_expand_BN/AssignMovingAvg/sub (1/1 flops)block_9_project_BN/AssignMovingAvg/sub (1/1 flops)block_4_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_4_project_BN/AssignMovingAvg/sub (1/1 flops)block_9_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_4_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_1_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)bn_Conv1/AssignMovingAvg/sub (1/1 flops)block_11_expand_BN/AssignMovingAvg/sub (1/1 flops)block_5_depthwise_BN/AssignMovingAvg/sub (1/1 flops)bn_Conv1/AssignMovingAvg_1/sub (1/1 flops)block_1_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_10_expand_BN/AssignMovingAvg/sub (1/1 flops)block_5_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)expanded_conv_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_16_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_16_project_BN/AssignMovingAvg/sub (1/1 flops)expanded_conv_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_5_expand_BN/AssignMovingAvg/sub (1/1 flops)block_10_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_16_expand_BN/AssignMovingAvg_1/sub (1/1 flops)expanded_conv_project_BN/AssignMovingAvg/sub (1/1 flops)block_16_expand_BN/AssignMovingAvg/sub (1/1 flops)block_5_expand_BN/AssignMovingAvg_1/sub (1/1 flops)expanded_conv_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_16_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)loss/mul (1/1 flops)loss/predictions_loss/softmax_cross_entropy_with_logits/Sub (1/1 flops)loss/predictions_loss/softmax_cross_entropy_with_logits/Sub_1 (1/1 flops)loss/predictions_loss/softmax_cross_entropy_with_logits/Sub_2 (1/1 flops)block_6_project_BN/AssignMovingAvg/sub (1/1 flops)======================End of Report==========================
62 ops no flops stats due to incomplete shapes.
Incomplete shape.
Incomplete shape.=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              0
-min_occurrence             0
-step                       -1
-order_by                   name
-account_type_regexes       _trainable_variables
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     params
-output                     stdout:==================Model Analysis Report======================Doc:
scope: The nodes in the model graph are organized by their names, which is hierarchical like filesystem.
param: Number of parameters (in the Variable).Profile:
node name | # parameters
_TFProfRoot (--/3.50m params)Conv1 (--/864 params)Conv1/kernel (3x3x3x32, 864/864 params)Conv_1 (--/409.60k params)Conv_1/kernel (1x1x320x1280, 409.60k/409.60k params)Conv_1_bn (--/2.56k params)Conv_1_bn/beta (1280, 1.28k/1.28k params)Conv_1_bn/gamma (1280, 1.28k/1.28k params)block_10_depthwise (--/3.46k params)block_10_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_10_depthwise_BN (--/768 params)block_10_depthwise_BN/beta (384, 384/384 params)block_10_depthwise_BN/gamma (384, 384/384 params)block_10_expand (--/24.58k params)block_10_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_10_expand_BN (--/768 params)block_10_expand_BN/beta (384, 384/384 params)block_10_expand_BN/gamma (384, 384/384 params)block_10_project (--/36.86k params)block_10_project/kernel (1x1x384x96, 36.86k/36.86k params)block_10_project_BN (--/192 params)block_10_project_BN/beta (96, 96/96 params)block_10_project_BN/gamma (96, 96/96 params)block_11_depthwise (--/5.18k params)block_11_depthwise/depthwise_kernel (3x3x576x1, 5.18k/5.18k params)block_11_depthwise_BN (--/1.15k params)block_11_depthwise_BN/beta (576, 576/576 params)block_11_depthwise_BN/gamma (576, 576/576 params)block_11_expand (--/55.30k params)block_11_expand/kernel (1x1x96x576, 55.30k/55.30k params)block_11_expand_BN (--/1.15k params)block_11_expand_BN/beta (576, 576/576 params)block_11_expand_BN/gamma (576, 576/576 params)block_11_project (--/55.30k params)block_11_project/kernel (1x1x576x96, 55.30k/55.30k params)block_11_project_BN (--/192 params)block_11_project_BN/beta (96, 96/96 params)block_11_project_BN/gamma (96, 96/96 params)block_12_depthwise (--/5.18k params)block_12_depthwise/depthwise_kernel (3x3x576x1, 5.18k/5.18k params)block_12_depthwise_BN (--/1.15k params)block_12_depthwise_BN/beta (576, 576/576 params)block_12_depthwise_BN/gamma (576, 576/576 params)block_12_expand (--/55.30k params)block_12_expand/kernel (1x1x96x576, 55.30k/55.30k params)block_12_expand_BN (--/1.15k params)block_12_expand_BN/beta (576, 576/576 params)block_12_expand_BN/gamma (576, 576/576 params)block_12_project (--/55.30k params)block_12_project/kernel (1x1x576x96, 55.30k/55.30k params)block_12_project_BN (--/192 params)block_12_project_BN/beta (96, 96/96 params)block_12_project_BN/gamma (96, 96/96 params)block_13_depthwise (--/5.18k params)block_13_depthwise/depthwise_kernel (3x3x576x1, 5.18k/5.18k params)block_13_depthwise_BN (--/1.15k params)block_13_depthwise_BN/beta (576, 576/576 params)block_13_depthwise_BN/gamma (576, 576/576 params)block_13_expand (--/55.30k params)block_13_expand/kernel (1x1x96x576, 55.30k/55.30k params)block_13_expand_BN (--/1.15k params)block_13_expand_BN/beta (576, 576/576 params)block_13_expand_BN/gamma (576, 576/576 params)block_13_project (--/92.16k params)block_13_project/kernel (1x1x576x160, 92.16k/92.16k params)block_13_project_BN (--/320 params)block_13_project_BN/beta (160, 160/160 params)block_13_project_BN/gamma (160, 160/160 params)block_14_depthwise (--/8.64k params)block_14_depthwise/depthwise_kernel (3x3x960x1, 8.64k/8.64k params)block_14_depthwise_BN (--/1.92k params)block_14_depthwise_BN/beta (960, 960/960 params)block_14_depthwise_BN/gamma (960, 960/960 params)block_14_expand (--/153.60k params)block_14_expand/kernel (1x1x160x960, 153.60k/153.60k params)block_14_expand_BN (--/1.92k params)block_14_expand_BN/beta (960, 960/960 params)block_14_expand_BN/gamma (960, 960/960 params)block_14_project (--/153.60k params)block_14_project/kernel (1x1x960x160, 153.60k/153.60k params)block_14_project_BN (--/320 params)block_14_project_BN/beta (160, 160/160 params)block_14_project_BN/gamma (160, 160/160 params)block_15_depthwise (--/8.64k params)block_15_depthwise/depthwise_kernel (3x3x960x1, 8.64k/8.64k params)block_15_depthwise_BN (--/1.92k params)block_15_depthwise_BN/beta (960, 960/960 params)block_15_depthwise_BN/gamma (960, 960/960 params)block_15_expand (--/153.60k params)block_15_expand/kernel (1x1x160x960, 153.60k/153.60k params)block_15_expand_BN (--/1.92k params)block_15_expand_BN/beta (960, 960/960 params)block_15_expand_BN/gamma (960, 960/960 params)block_15_project (--/153.60k params)block_15_project/kernel (1x1x960x160, 153.60k/153.60k params)block_15_project_BN (--/320 params)block_15_project_BN/beta (160, 160/160 params)block_15_project_BN/gamma (160, 160/160 params)block_16_depthwise (--/8.64k params)block_16_depthwise/depthwise_kernel (3x3x960x1, 8.64k/8.64k params)block_16_depthwise_BN (--/1.92k params)block_16_depthwise_BN/beta (960, 960/960 params)block_16_depthwise_BN/gamma (960, 960/960 params)block_16_expand (--/153.60k params)block_16_expand/kernel (1x1x160x960, 153.60k/153.60k params)block_16_expand_BN (--/1.92k params)block_16_expand_BN/beta (960, 960/960 params)block_16_expand_BN/gamma (960, 960/960 params)block_16_project (--/307.20k params)block_16_project/kernel (1x1x960x320, 307.20k/307.20k params)block_16_project_BN (--/640 params)block_16_project_BN/beta (320, 320/320 params)block_16_project_BN/gamma (320, 320/320 params)block_1_depthwise (--/864 params)block_1_depthwise/depthwise_kernel (3x3x96x1, 864/864 params)block_1_depthwise_BN (--/192 params)block_1_depthwise_BN/beta (96, 96/96 params)block_1_depthwise_BN/gamma (96, 96/96 params)block_1_expand (--/1.54k params)block_1_expand/kernel (1x1x16x96, 1.54k/1.54k params)block_1_expand_BN (--/192 params)block_1_expand_BN/beta (96, 96/96 params)block_1_expand_BN/gamma (96, 96/96 params)block_1_project (--/2.30k params)block_1_project/kernel (1x1x96x24, 2.30k/2.30k params)block_1_project_BN (--/48 params)block_1_project_BN/beta (24, 24/24 params)block_1_project_BN/gamma (24, 24/24 params)block_2_depthwise (--/1.30k params)block_2_depthwise/depthwise_kernel (3x3x144x1, 1.30k/1.30k params)block_2_depthwise_BN (--/288 params)block_2_depthwise_BN/beta (144, 144/144 params)block_2_depthwise_BN/gamma (144, 144/144 params)block_2_expand (--/3.46k params)block_2_expand/kernel (1x1x24x144, 3.46k/3.46k params)block_2_expand_BN (--/288 params)block_2_expand_BN/beta (144, 144/144 params)block_2_expand_BN/gamma (144, 144/144 params)block_2_project (--/3.46k params)block_2_project/kernel (1x1x144x24, 3.46k/3.46k params)block_2_project_BN (--/48 params)block_2_project_BN/beta (24, 24/24 params)block_2_project_BN/gamma (24, 24/24 params)block_3_depthwise (--/1.30k params)block_3_depthwise/depthwise_kernel (3x3x144x1, 1.30k/1.30k params)block_3_depthwise_BN (--/288 params)block_3_depthwise_BN/beta (144, 144/144 params)block_3_depthwise_BN/gamma (144, 144/144 params)block_3_expand (--/3.46k params)block_3_expand/kernel (1x1x24x144, 3.46k/3.46k params)block_3_expand_BN (--/288 params)block_3_expand_BN/beta (144, 144/144 params)block_3_expand_BN/gamma (144, 144/144 params)block_3_project (--/4.61k params)block_3_project/kernel (1x1x144x32, 4.61k/4.61k params)block_3_project_BN (--/64 params)block_3_project_BN/beta (32, 32/32 params)block_3_project_BN/gamma (32, 32/32 params)block_4_depthwise (--/1.73k params)block_4_depthwise/depthwise_kernel (3x3x192x1, 1.73k/1.73k params)block_4_depthwise_BN (--/384 params)block_4_depthwise_BN/beta (192, 192/192 params)block_4_depthwise_BN/gamma (192, 192/192 params)block_4_expand (--/6.14k params)block_4_expand/kernel (1x1x32x192, 6.14k/6.14k params)block_4_expand_BN (--/384 params)block_4_expand_BN/beta (192, 192/192 params)block_4_expand_BN/gamma (192, 192/192 params)block_4_project (--/6.14k params)block_4_project/kernel (1x1x192x32, 6.14k/6.14k params)block_4_project_BN (--/64 params)block_4_project_BN/beta (32, 32/32 params)block_4_project_BN/gamma (32, 32/32 params)block_5_depthwise (--/1.73k params)block_5_depthwise/depthwise_kernel (3x3x192x1, 1.73k/1.73k params)block_5_depthwise_BN (--/384 params)block_5_depthwise_BN/beta (192, 192/192 params)block_5_depthwise_BN/gamma (192, 192/192 params)block_5_expand (--/6.14k params)block_5_expand/kernel (1x1x32x192, 6.14k/6.14k params)block_5_expand_BN (--/384 params)block_5_expand_BN/beta (192, 192/192 params)block_5_expand_BN/gamma (192, 192/192 params)block_5_project (--/6.14k params)block_5_project/kernel (1x1x192x32, 6.14k/6.14k params)block_5_project_BN (--/64 params)block_5_project_BN/beta (32, 32/32 params)block_5_project_BN/gamma (32, 32/32 params)block_6_depthwise (--/1.73k params)block_6_depthwise/depthwise_kernel (3x3x192x1, 1.73k/1.73k params)block_6_depthwise_BN (--/384 params)block_6_depthwise_BN/beta (192, 192/192 params)block_6_depthwise_BN/gamma (192, 192/192 params)block_6_expand (--/6.14k params)block_6_expand/kernel (1x1x32x192, 6.14k/6.14k params)block_6_expand_BN (--/384 params)block_6_expand_BN/beta (192, 192/192 params)block_6_expand_BN/gamma (192, 192/192 params)block_6_project (--/12.29k params)block_6_project/kernel (1x1x192x64, 12.29k/12.29k params)block_6_project_BN (--/128 params)block_6_project_BN/beta (64, 64/64 params)block_6_project_BN/gamma (64, 64/64 params)block_7_depthwise (--/3.46k params)block_7_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_7_depthwise_BN (--/768 params)block_7_depthwise_BN/beta (384, 384/384 params)block_7_depthwise_BN/gamma (384, 384/384 params)block_7_expand (--/24.58k params)block_7_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_7_expand_BN (--/768 params)block_7_expand_BN/beta (384, 384/384 params)block_7_expand_BN/gamma (384, 384/384 params)block_7_project (--/24.58k params)block_7_project/kernel (1x1x384x64, 24.58k/24.58k params)block_7_project_BN (--/128 params)block_7_project_BN/beta (64, 64/64 params)block_7_project_BN/gamma (64, 64/64 params)block_8_depthwise (--/3.46k params)block_8_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_8_depthwise_BN (--/768 params)block_8_depthwise_BN/beta (384, 384/384 params)block_8_depthwise_BN/gamma (384, 384/384 params)block_8_expand (--/24.58k params)block_8_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_8_expand_BN (--/768 params)block_8_expand_BN/beta (384, 384/384 params)block_8_expand_BN/gamma (384, 384/384 params)block_8_project (--/24.58k params)block_8_project/kernel (1x1x384x64, 24.58k/24.58k params)block_8_project_BN (--/128 params)block_8_project_BN/beta (64, 64/64 params)block_8_project_BN/gamma (64, 64/64 params)block_9_depthwise (--/3.46k params)block_9_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_9_depthwise_BN (--/768 params)block_9_depthwise_BN/beta (384, 384/384 params)block_9_depthwise_BN/gamma (384, 384/384 params)block_9_expand (--/24.58k params)block_9_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_9_expand_BN (--/768 params)block_9_expand_BN/beta (384, 384/384 params)block_9_expand_BN/gamma (384, 384/384 params)block_9_project (--/24.58k params)block_9_project/kernel (1x1x384x64, 24.58k/24.58k params)block_9_project_BN (--/128 params)block_9_project_BN/beta (64, 64/64 params)block_9_project_BN/gamma (64, 64/64 params)bn_Conv1 (--/64 params)bn_Conv1/beta (32, 32/32 params)bn_Conv1/gamma (32, 32/32 params)expanded_conv_depthwise (--/288 params)expanded_conv_depthwise/depthwise_kernel (3x3x32x1, 288/288 params)expanded_conv_depthwise_BN (--/64 params)expanded_conv_depthwise_BN/beta (32, 32/32 params)expanded_conv_depthwise_BN/gamma (32, 32/32 params)expanded_conv_project (--/512 params)expanded_conv_project/kernel (1x1x32x16, 512/512 params)expanded_conv_project_BN (--/32 params)expanded_conv_project_BN/beta (16, 16/16 params)expanded_conv_project_BN/gamma (16, 16/16 params)predictions (--/1.28m params)predictions/bias (1000, 1.00k/1.00k params)predictions/kernel (1280x1000, 1.28m/1.28m params)======================End of Report==========================
Incomplete shape.
Incomplete shape.
FLOPs: 7,007,905;    Trainable params: 3,504,872

以上是keras的application中给出的代码实现,以下是自实现MobileNet的结果测试:

Use `tf.compat.v1.graph_util.tensor_shape_from_node_def_name`
[0418 21:45:18] From D:\Anaconda3\envs\wen\lib\site-packages\tensorflow\python\profiler\internal\flops_registry.py:142: tensor_shape_from_node_def_name (from tensorflow.python.framework.graph_util_impl) is deprecated and will be removed in a future version.
Instructions for updating:
Use `tf.compat.v1.graph_util.tensor_shape_from_node_def_name`
62 ops no flops stats due to incomplete shapes.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              1
-min_occurrence             0
-step                       -1
-order_by                   float_ops
-account_type_regexes       .*
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     float_ops
-output                     stdout:==================Model Analysis Report======================Doc:
scope: The nodes in the model graph are organized by their names, which is hierarchical like filesystem.
flops: Number of float operations. Note: Please read the implementation for the math behind it.Profile:
node name | # float_ops
_TFProfRoot (--/4.57m flops)Conv_1/kernel/Initializer/random_uniform (409.60k/819.20k flops)Conv_1/kernel/Initializer/random_uniform/mul (409.60k/409.60k flops)Conv_1/kernel/Initializer/random_uniform/sub (1/1 flops)block_16_project/kernel/Initializer/random_uniform (307.20k/614.40k flops)block_16_project/kernel/Initializer/random_uniform/mul (307.20k/307.20k flops)block_16_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_15_project/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_15_project/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_15_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_16_expand/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_16_expand/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_16_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_14_project/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_14_project/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_14_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_15_expand/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_15_expand/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_15_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_14_expand/kernel/Initializer/random_uniform (153.60k/307.20k flops)block_14_expand/kernel/Initializer/random_uniform/mul (153.60k/153.60k flops)block_14_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_13_project/kernel/Initializer/random_uniform (92.16k/184.32k flops)block_13_project/kernel/Initializer/random_uniform/mul (92.16k/92.16k flops)block_13_project/kernel/Initializer/random_uniform/sub (1/1 flops)Logits/kernel/Initializer/random_uniform (62.72k/125.44k flops)Logits/kernel/Initializer/random_uniform/mul (62.72k/62.72k flops)Logits/kernel/Initializer/random_uniform/sub (1/1 flops)block_12_project/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_12_project/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_12_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_11_expand/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_11_expand/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_11_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_12_expand/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_12_expand/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_12_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_11_project/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_11_project/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_11_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_13_expand/kernel/Initializer/random_uniform (55.30k/110.59k flops)block_13_expand/kernel/Initializer/random_uniform/mul (55.30k/55.30k flops)block_13_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_10_project/kernel/Initializer/random_uniform (36.86k/73.73k flops)block_10_project/kernel/Initializer/random_uniform/mul (36.86k/36.86k flops)block_10_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_9_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_9_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_9_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_8_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_8_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_8_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_10_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_10_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_10_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_7_project/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_7_project/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_7_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_7_expand/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_7_expand/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_7_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_8_project/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_8_project/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_8_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_9_project/kernel/Initializer/random_uniform (24.58k/49.15k flops)block_9_project/kernel/Initializer/random_uniform/mul (24.58k/24.58k flops)block_9_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_6_project/kernel/Initializer/random_uniform (12.29k/24.58k flops)block_6_project/kernel/Initializer/random_uniform/mul (12.29k/12.29k flops)block_6_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_16_depthwise/depthwise_kernel/Initializer/random_uniform (8.64k/17.28k flops)block_16_depthwise/depthwise_kernel/Initializer/random_uniform/mul (8.64k/8.64k flops)block_16_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_15_depthwise/depthwise_kernel/Initializer/random_uniform (8.64k/17.28k flops)block_15_depthwise/depthwise_kernel/Initializer/random_uniform/mul (8.64k/8.64k flops)block_15_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_14_depthwise/depthwise_kernel/Initializer/random_uniform (8.64k/17.28k flops)block_14_depthwise/depthwise_kernel/Initializer/random_uniform/mul (8.64k/8.64k flops)block_14_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_5_expand/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_5_expand/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_5_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_5_project/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_5_project/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_5_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_4_project/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_4_project/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_4_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_6_expand/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_6_expand/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_6_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_4_expand/kernel/Initializer/random_uniform (6.14k/12.29k flops)block_4_expand/kernel/Initializer/random_uniform/mul (6.14k/6.14k flops)block_4_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_11_depthwise/depthwise_kernel/Initializer/random_uniform (5.18k/10.37k flops)block_11_depthwise/depthwise_kernel/Initializer/random_uniform/mul (5.18k/5.18k flops)block_11_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_13_depthwise/depthwise_kernel/Initializer/random_uniform (5.18k/10.37k flops)block_13_depthwise/depthwise_kernel/Initializer/random_uniform/mul (5.18k/5.18k flops)block_13_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_12_depthwise/depthwise_kernel/Initializer/random_uniform (5.18k/10.37k flops)block_12_depthwise/depthwise_kernel/Initializer/random_uniform/mul (5.18k/5.18k flops)block_12_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_3_project/kernel/Initializer/random_uniform (4.61k/9.22k flops)block_3_project/kernel/Initializer/random_uniform/mul (4.61k/4.61k flops)block_3_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_3_expand/kernel/Initializer/random_uniform (3.46k/6.91k flops)block_3_expand/kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_3_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_2_project/kernel/Initializer/random_uniform (3.46k/6.91k flops)block_2_project/kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_2_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_2_expand/kernel/Initializer/random_uniform (3.46k/6.91k flops)block_2_expand/kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_2_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_10_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_10_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_10_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_7_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_7_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_7_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_8_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_8_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_8_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_9_depthwise/depthwise_kernel/Initializer/random_uniform (3.46k/6.91k flops)block_9_depthwise/depthwise_kernel/Initializer/random_uniform/mul (3.46k/3.46k flops)block_9_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_1_project/kernel/Initializer/random_uniform (2.30k/4.61k flops)block_1_project/kernel/Initializer/random_uniform/mul (2.30k/2.30k flops)block_1_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_4_depthwise/depthwise_kernel/Initializer/random_uniform (1.73k/3.46k flops)block_4_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.73k/1.73k flops)block_4_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_6_depthwise/depthwise_kernel/Initializer/random_uniform (1.73k/3.46k flops)block_6_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.73k/1.73k flops)block_6_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_5_depthwise/depthwise_kernel/Initializer/random_uniform (1.73k/3.46k flops)block_5_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.73k/1.73k flops)block_5_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_1_expand/kernel/Initializer/random_uniform (1.54k/3.07k flops)block_1_expand/kernel/Initializer/random_uniform/mul (1.54k/1.54k flops)block_1_expand/kernel/Initializer/random_uniform/sub (1/1 flops)block_2_depthwise/depthwise_kernel/Initializer/random_uniform (1.30k/2.59k flops)block_2_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.30k/1.30k flops)block_2_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_3_depthwise/depthwise_kernel/Initializer/random_uniform (1.30k/2.59k flops)block_3_depthwise/depthwise_kernel/Initializer/random_uniform/mul (1.30k/1.30k flops)block_3_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)block_1_depthwise/depthwise_kernel/Initializer/random_uniform (864/1.73k flops)block_1_depthwise/depthwise_kernel/Initializer/random_uniform/mul (864/864 flops)block_1_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)Conv_1_bn/AssignMovingAvg/mul (1.28k/1.28k flops)Conv_1_bn/AssignMovingAvg/sub_1 (1.28k/1.28k flops)Conv_1_bn/AssignMovingAvg_1/mul (1.28k/1.28k flops)Conv_1_bn/AssignMovingAvg_1/sub_1 (1.28k/1.28k flops)expanded_conv_project/kernel/Initializer/random_uniform (512/1.02k flops)expanded_conv_project/kernel/Initializer/random_uniform/mul (512/512 flops)expanded_conv_project/kernel/Initializer/random_uniform/sub (1/1 flops)block_14_depthwise_BN/AssignMovingAvg/sub_1 (960/960 flops)block_15_depthwise_BN/AssignMovingAvg/mul (960/960 flops)block_15_depthwise_BN/AssignMovingAvg/sub_1 (960/960 flops)block_15_depthwise_BN/AssignMovingAvg_1/mul (960/960 flops)block_15_depthwise_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_15_expand_BN/AssignMovingAvg/mul (960/960 flops)block_15_expand_BN/AssignMovingAvg/sub_1 (960/960 flops)block_14_depthwise_BN/AssignMovingAvg/mul (960/960 flops)block_15_expand_BN/AssignMovingAvg_1/mul (960/960 flops)block_16_depthwise_BN/AssignMovingAvg/mul (960/960 flops)block_14_depthwise_BN/AssignMovingAvg_1/mul (960/960 flops)block_16_depthwise_BN/AssignMovingAvg_1/mul (960/960 flops)block_16_depthwise_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_14_expand_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_16_expand_BN/AssignMovingAvg/mul (960/960 flops)block_16_expand_BN/AssignMovingAvg/sub_1 (960/960 flops)block_16_expand_BN/AssignMovingAvg_1/mul (960/960 flops)block_16_depthwise_BN/AssignMovingAvg/sub_1 (960/960 flops)block_16_expand_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_15_expand_BN/AssignMovingAvg_1/sub_1 (960/960 flops)block_14_expand_BN/AssignMovingAvg_1/mul (960/960 flops)block_14_expand_BN/AssignMovingAvg/sub_1 (960/960 flops)block_14_expand_BN/AssignMovingAvg/mul (960/960 flops)block_14_depthwise_BN/AssignMovingAvg_1/sub_1 (960/960 flops)expanded_conv_depthwise/depthwise_kernel/Initializer/random_uniform (288/577 flops)expanded_conv_depthwise/depthwise_kernel/Initializer/random_uniform/mul (288/288 flops)expanded_conv_depthwise/depthwise_kernel/Initializer/random_uniform/sub (1/1 flops)Conv1/kernel/Initializer/random_uniform (288/577 flops)Conv1/kernel/Initializer/random_uniform/mul (288/288 flops)Conv1/kernel/Initializer/random_uniform/sub (1/1 flops)block_13_expand_BN/AssignMovingAvg/mul (576/576 flops)block_13_expand_BN/AssignMovingAvg/sub_1 (576/576 flops)block_13_expand_BN/AssignMovingAvg_1/mul (576/576 flops)block_13_expand_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_11_expand_BN/AssignMovingAvg/sub_1 (576/576 flops)block_11_depthwise_BN/AssignMovingAvg/mul (576/576 flops)block_11_depthwise_BN/AssignMovingAvg/sub_1 (576/576 flops)block_11_depthwise_BN/AssignMovingAvg_1/mul (576/576 flops)block_11_depthwise_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_11_expand_BN/AssignMovingAvg/mul (576/576 flops)block_11_expand_BN/AssignMovingAvg_1/mul (576/576 flops)block_11_expand_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_12_depthwise_BN/AssignMovingAvg/mul (576/576 flops)block_12_depthwise_BN/AssignMovingAvg/sub_1 (576/576 flops)block_12_depthwise_BN/AssignMovingAvg_1/mul (576/576 flops)block_12_depthwise_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_12_expand_BN/AssignMovingAvg/mul (576/576 flops)block_12_expand_BN/AssignMovingAvg/sub_1 (576/576 flops)block_12_expand_BN/AssignMovingAvg_1/mul (576/576 flops)block_12_expand_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_13_depthwise_BN/AssignMovingAvg/mul (576/576 flops)block_13_depthwise_BN/AssignMovingAvg/sub_1 (576/576 flops)block_13_depthwise_BN/AssignMovingAvg_1/mul (576/576 flops)block_13_depthwise_BN/AssignMovingAvg_1/sub_1 (576/576 flops)block_7_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_9_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_10_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_8_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_9_expand_BN/AssignMovingAvg/mul (384/384 flops)block_9_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_8_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_9_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_9_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_7_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_8_expand_BN/AssignMovingAvg/mul (384/384 flops)block_8_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_10_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_10_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_7_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_8_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_10_expand_BN/AssignMovingAvg/mul (384/384 flops)block_10_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_8_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_9_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_10_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_7_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_10_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_10_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_9_depthwise_BN/AssignMovingAvg/sub_1 (384/384 flops)block_7_expand_BN/AssignMovingAvg_1/mul (384/384 flops)block_7_expand_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_8_depthwise_BN/AssignMovingAvg/mul (384/384 flops)block_9_depthwise_BN/AssignMovingAvg_1/mul (384/384 flops)block_7_expand_BN/AssignMovingAvg/sub_1 (384/384 flops)block_8_depthwise_BN/AssignMovingAvg_1/sub_1 (384/384 flops)block_7_expand_BN/AssignMovingAvg/mul (384/384 flops)block_16_project_BN/AssignMovingAvg/mul (320/320 flops)block_16_project_BN/AssignMovingAvg/sub_1 (320/320 flops)block_16_project_BN/AssignMovingAvg_1/mul (320/320 flops)block_16_project_BN/AssignMovingAvg_1/sub_1 (320/320 flops)block_4_depthwise_BN/AssignMovingAvg/sub_1 (192/192 flops)block_4_depthwise_BN/AssignMovingAvg/mul (192/192 flops)block_4_expand_BN/AssignMovingAvg/mul (192/192 flops)block_4_expand_BN/AssignMovingAvg/sub_1 (192/192 flops)block_6_expand_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_6_expand_BN/AssignMovingAvg_1/mul (192/192 flops)block_4_expand_BN/AssignMovingAvg_1/mul (192/192 flops)block_6_expand_BN/AssignMovingAvg/sub_1 (192/192 flops)block_4_expand_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_6_expand_BN/AssignMovingAvg/mul (192/192 flops)block_5_depthwise_BN/AssignMovingAvg/mul (192/192 flops)block_6_depthwise_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_6_depthwise_BN/AssignMovingAvg/mul (192/192 flops)block_6_depthwise_BN/AssignMovingAvg/sub_1 (192/192 flops)block_5_expand_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_4_depthwise_BN/AssignMovingAvg_1/mul (192/192 flops)block_5_expand_BN/AssignMovingAvg_1/mul (192/192 flops)block_5_expand_BN/AssignMovingAvg/sub_1 (192/192 flops)block_5_expand_BN/AssignMovingAvg/mul (192/192 flops)block_4_depthwise_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_5_depthwise_BN/AssignMovingAvg_1/sub_1 (192/192 flops)block_5_depthwise_BN/AssignMovingAvg_1/mul (192/192 flops)block_6_depthwise_BN/AssignMovingAvg_1/mul (192/192 flops)block_5_depthwise_BN/AssignMovingAvg/sub_1 (192/192 flops)block_14_project_BN/AssignMovingAvg/sub_1 (160/160 flops)block_14_project_BN/AssignMovingAvg_1/mul (160/160 flops)block_14_project_BN/AssignMovingAvg_1/sub_1 (160/160 flops)block_15_project_BN/AssignMovingAvg/mul (160/160 flops)block_15_project_BN/AssignMovingAvg/sub_1 (160/160 flops)block_15_project_BN/AssignMovingAvg_1/mul (160/160 flops)block_15_project_BN/AssignMovingAvg_1/sub_1 (160/160 flops)block_13_project_BN/AssignMovingAvg_1/sub_1 (160/160 flops)block_13_project_BN/AssignMovingAvg/mul (160/160 flops)block_13_project_BN/AssignMovingAvg/sub_1 (160/160 flops)block_13_project_BN/AssignMovingAvg_1/mul (160/160 flops)block_14_project_BN/AssignMovingAvg/mul (160/160 flops)block_3_depthwise_BN/AssignMovingAvg/sub_1 (144/144 flops)block_2_depthwise_BN/AssignMovingAvg_1/mul (144/144 flops)block_2_expand_BN/AssignMovingAvg_1/mul (144/144 flops)block_3_expand_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_2_expand_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_2_depthwise_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_3_expand_BN/AssignMovingAvg/sub_1 (144/144 flops)block_3_expand_BN/AssignMovingAvg/mul (144/144 flops)block_2_expand_BN/AssignMovingAvg/mul (144/144 flops)block_2_depthwise_BN/AssignMovingAvg/mul (144/144 flops)block_2_expand_BN/AssignMovingAvg/sub_1 (144/144 flops)block_3_expand_BN/AssignMovingAvg_1/mul (144/144 flops)block_3_depthwise_BN/AssignMovingAvg/mul (144/144 flops)block_2_depthwise_BN/AssignMovingAvg/sub_1 (144/144 flops)block_3_depthwise_BN/AssignMovingAvg_1/mul (144/144 flops)block_3_depthwise_BN/AssignMovingAvg_1/sub_1 (144/144 flops)block_1_depthwise_BN/AssignMovingAvg/sub_1 (96/96 flops)block_10_project_BN/AssignMovingAvg_1/mul (96/96 flops)block_10_project_BN/AssignMovingAvg/sub_1 (96/96 flops)block_11_project_BN/AssignMovingAvg/sub_1 (96/96 flops)block_12_project_BN/AssignMovingAvg/mul (96/96 flops)block_12_project_BN/AssignMovingAvg/sub_1 (96/96 flops)block_1_depthwise_BN/AssignMovingAvg/mul (96/96 flops)block_12_project_BN/AssignMovingAvg_1/mul (96/96 flops)block_11_project_BN/AssignMovingAvg_1/mul (96/96 flops)block_11_project_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_12_project_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_10_project_BN/AssignMovingAvg/mul (96/96 flops)block_1_expand_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_1_expand_BN/AssignMovingAvg_1/mul (96/96 flops)block_1_expand_BN/AssignMovingAvg/sub_1 (96/96 flops)block_1_expand_BN/AssignMovingAvg/mul (96/96 flops)block_1_depthwise_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_10_project_BN/AssignMovingAvg_1/sub_1 (96/96 flops)block_11_project_BN/AssignMovingAvg/mul (96/96 flops)block_1_depthwise_BN/AssignMovingAvg_1/mul (96/96 flops)block_6_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_7_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_6_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_6_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_6_project_BN/AssignMovingAvg/mul (64/64 flops)block_7_project_BN/AssignMovingAvg/mul (64/64 flops)block_8_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_9_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_8_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_9_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_9_project_BN/AssignMovingAvg/mul (64/64 flops)block_8_project_BN/AssignMovingAvg/sub_1 (64/64 flops)block_8_project_BN/AssignMovingAvg/mul (64/64 flops)block_9_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_7_project_BN/AssignMovingAvg_1/sub_1 (64/64 flops)block_7_project_BN/AssignMovingAvg_1/mul (64/64 flops)block_3_project_BN/AssignMovingAvg/sub_1 (32/32 flops)block_3_project_BN/AssignMovingAvg_1/sub_1 (32/32 flops)bn_Conv1/AssignMovingAvg_1/mul (32/32 flops)bn_Conv1/AssignMovingAvg/sub_1 (32/32 flops)block_5_project_BN/AssignMovingAvg_1/sub_1 (32/32 flops)block_4_project_BN/AssignMovingAvg/mul (32/32 flops)bn_Conv1/AssignMovingAvg/mul (32/32 flops)block_4_project_BN/AssignMovingAvg/sub_1 (32/32 flops)block_4_project_BN/AssignMovingAvg_1/mul (32/32 flops)block_5_project_BN/AssignMovingAvg_1/mul (32/32 flops)block_5_project_BN/AssignMovingAvg/mul (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg_1/sub_1 (32/32 flops)block_3_project_BN/AssignMovingAvg/mul (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg_1/mul (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg/sub_1 (32/32 flops)expanded_conv_depthwise_BN/AssignMovingAvg/mul (32/32 flops)block_3_project_BN/AssignMovingAvg_1/mul (32/32 flops)block_5_project_BN/AssignMovingAvg/sub_1 (32/32 flops)bn_Conv1/AssignMovingAvg_1/sub_1 (32/32 flops)block_4_project_BN/AssignMovingAvg_1/sub_1 (32/32 flops)block_2_project_BN/AssignMovingAvg/mul (24/24 flops)block_1_project_BN/AssignMovingAvg_1/mul (24/24 flops)block_2_project_BN/AssignMovingAvg/sub_1 (24/24 flops)block_2_project_BN/AssignMovingAvg_1/mul (24/24 flops)block_1_project_BN/AssignMovingAvg_1/sub_1 (24/24 flops)block_2_project_BN/AssignMovingAvg_1/sub_1 (24/24 flops)block_1_project_BN/AssignMovingAvg/sub_1 (24/24 flops)block_1_project_BN/AssignMovingAvg/mul (24/24 flops)expanded_conv_project_BN/AssignMovingAvg/mul (16/16 flops)expanded_conv_project_BN/AssignMovingAvg/sub_1 (16/16 flops)expanded_conv_project_BN/AssignMovingAvg_1/mul (16/16 flops)expanded_conv_project_BN/AssignMovingAvg_1/sub_1 (16/16 flops)block_10_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_10_project_BN/AssignMovingAvg/sub (1/1 flops)block_2_expand_BN/AssignMovingAvg/sub (1/1 flops)block_2_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_2_project_BN/AssignMovingAvg/sub (1/1 flops)block_2_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_2_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_3_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_3_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_3_expand_BN/AssignMovingAvg/sub (1/1 flops)block_3_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_3_project_BN/AssignMovingAvg/sub (1/1 flops)block_3_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_14_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_6_project_BN/AssignMovingAvg/sub (1/1 flops)block_15_expand_BN/AssignMovingAvg/sub (1/1 flops)block_6_expand_BN/AssignMovingAvg/sub (1/1 flops)block_6_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_15_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_14_project_BN/AssignMovingAvg/sub (1/1 flops)block_14_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_14_expand_BN/AssignMovingAvg/sub (1/1 flops)block_14_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_14_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_11_project_BN/AssignMovingAvg/sub (1/1 flops)block_13_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_expand_BN/AssignMovingAvg/sub (1/1 flops)block_13_project_BN/AssignMovingAvg/sub (1/1 flops)block_13_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_13_expand_BN/AssignMovingAvg/sub (1/1 flops)block_13_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_6_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_project_BN/AssignMovingAvg/sub (1/1 flops)block_15_project_BN/AssignMovingAvg/sub (1/1 flops)block_15_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_7_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_6_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_13_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_16_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_8_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_12_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_16_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_8_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_6_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_12_project_BN/AssignMovingAvg/sub (1/1 flops)block_16_expand_BN/AssignMovingAvg/sub (1/1 flops)block_8_expand_BN/AssignMovingAvg/sub (1/1 flops)block_12_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_12_expand_BN/AssignMovingAvg/sub (1/1 flops)block_8_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_12_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_12_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_16_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_8_project_BN/AssignMovingAvg/sub (1/1 flops)block_5_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_5_project_BN/AssignMovingAvg/sub (1/1 flops)block_8_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_16_project_BN/AssignMovingAvg/sub (1/1 flops)block_16_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_11_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_9_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_5_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_1_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_9_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_1_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_11_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_11_expand_BN/AssignMovingAvg/sub (1/1 flops)block_9_expand_BN/AssignMovingAvg/sub (1/1 flops)block_11_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_11_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_9_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_5_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_10_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_5_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_9_project_BN/AssignMovingAvg/sub (1/1 flops)block_1_expand_BN/AssignMovingAvg/sub (1/1 flops)block_4_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_9_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_5_expand_BN/AssignMovingAvg/sub (1/1 flops)block_4_project_BN/AssignMovingAvg/sub (1/1 flops)bn_Conv1/AssignMovingAvg/sub (1/1 flops)block_1_expand_BN/AssignMovingAvg_1/sub (1/1 flops)block_4_expand_BN/AssignMovingAvg_1/sub (1/1 flops)bn_Conv1/AssignMovingAvg_1/sub (1/1 flops)block_4_expand_BN/AssignMovingAvg/sub (1/1 flops)block_1_project_BN/AssignMovingAvg/sub (1/1 flops)Conv_1_bn/AssignMovingAvg/sub (1/1 flops)expanded_conv_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_4_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_1_project_BN/AssignMovingAvg_1/sub (1/1 flops)expanded_conv_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)block_4_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_2_depthwise_BN/AssignMovingAvg/sub (1/1 flops)Conv_1_bn/AssignMovingAvg_1/sub (1/1 flops)expanded_conv_project_BN/AssignMovingAvg/sub (1/1 flops)block_10_depthwise_BN/AssignMovingAvg/sub (1/1 flops)block_10_depthwise_BN/AssignMovingAvg_1/sub (1/1 flops)expanded_conv_project_BN/AssignMovingAvg_1/sub (1/1 flops)block_10_expand_BN/AssignMovingAvg/sub (1/1 flops)loss/Logits_loss/softmax_cross_entropy_with_logits/Sub (1/1 flops)loss/Logits_loss/softmax_cross_entropy_with_logits/Sub_1 (1/1 flops)loss/Logits_loss/softmax_cross_entropy_with_logits/Sub_2 (1/1 flops)loss/mul (1/1 flops)======================End of Report==========================
62 ops no flops stats due to incomplete shapes.
Incomplete shape.
Incomplete shape.
Incomplete shape.=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              0
-min_occurrence             0
-step                       -1
-order_by                   name
-account_type_regexes       _trainable_variables
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     params
-output                     stdout:==================Model Analysis Report======================
Incomplete shape.Doc:
scope: The nodes in the model graph are organized by their names, which is hierarchical like filesystem.
param: Number of parameters (in the Variable).Profile:
node name | # parameters
_TFProfRoot (--/2.29m params)Conv1 (--/288 params)Conv1/kernel (3x3x1x32, 288/288 params)Conv_1 (--/409.60k params)Conv_1/kernel (1x1x320x1280, 409.60k/409.60k params)Conv_1_bn (--/2.56k params)Conv_1_bn/beta (1280, 1.28k/1.28k params)Conv_1_bn/gamma (1280, 1.28k/1.28k params)Logits (--/62.77k params)Logits/bias (49, 49/49 params)Logits/kernel (1280x49, 62.72k/62.72k params)block_10_depthwise (--/3.46k params)block_10_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_10_depthwise_BN (--/768 params)block_10_depthwise_BN/beta (384, 384/384 params)block_10_depthwise_BN/gamma (384, 384/384 params)block_10_expand (--/24.58k params)block_10_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_10_expand_BN (--/768 params)block_10_expand_BN/beta (384, 384/384 params)block_10_expand_BN/gamma (384, 384/384 params)block_10_project (--/36.86k params)block_10_project/kernel (1x1x384x96, 36.86k/36.86k params)block_10_project_BN (--/192 params)block_10_project_BN/beta (96, 96/96 params)block_10_project_BN/gamma (96, 96/96 params)block_11_depthwise (--/5.18k params)block_11_depthwise/depthwise_kernel (3x3x576x1, 5.18k/5.18k params)block_11_depthwise_BN (--/1.15k params)block_11_depthwise_BN/beta (576, 576/576 params)block_11_depthwise_BN/gamma (576, 576/576 params)block_11_expand (--/55.30k params)block_11_expand/kernel (1x1x96x576, 55.30k/55.30k params)block_11_expand_BN (--/1.15k params)block_11_expand_BN/beta (576, 576/576 params)block_11_expand_BN/gamma (576, 576/576 params)block_11_project (--/55.30k params)block_11_project/kernel (1x1x576x96, 55.30k/55.30k params)block_11_project_BN (--/192 params)block_11_project_BN/beta (96, 96/96 params)block_11_project_BN/gamma (96, 96/96 params)block_12_depthwise (--/5.18k params)block_12_depthwise/depthwise_kernel (3x3x576x1, 5.18k/5.18k params)block_12_depthwise_BN (--/1.15k params)block_12_depthwise_BN/beta (576, 576/576 params)block_12_depthwise_BN/gamma (576, 576/576 params)block_12_expand (--/55.30k params)block_12_expand/kernel (1x1x96x576, 55.30k/55.30k params)block_12_expand_BN (--/1.15k params)block_12_expand_BN/beta (576, 576/576 params)block_12_expand_BN/gamma (576, 576/576 params)block_12_project (--/55.30k params)block_12_project/kernel (1x1x576x96, 55.30k/55.30k params)block_12_project_BN (--/192 params)block_12_project_BN/beta (96, 96/96 params)block_12_project_BN/gamma (96, 96/96 params)block_13_depthwise (--/5.18k params)block_13_depthwise/depthwise_kernel (3x3x576x1, 5.18k/5.18k params)block_13_depthwise_BN (--/1.15k params)block_13_depthwise_BN/beta (576, 576/576 params)block_13_depthwise_BN/gamma (576, 576/576 params)block_13_expand (--/55.30k params)block_13_expand/kernel (1x1x96x576, 55.30k/55.30k params)block_13_expand_BN (--/1.15k params)block_13_expand_BN/beta (576, 576/576 params)block_13_expand_BN/gamma (576, 576/576 params)block_13_project (--/92.16k params)block_13_project/kernel (1x1x576x160, 92.16k/92.16k params)block_13_project_BN (--/320 params)block_13_project_BN/beta (160, 160/160 params)block_13_project_BN/gamma (160, 160/160 params)block_14_depthwise (--/8.64k params)block_14_depthwise/depthwise_kernel (3x3x960x1, 8.64k/8.64k params)block_14_depthwise_BN (--/1.92k params)block_14_depthwise_BN/beta (960, 960/960 params)block_14_depthwise_BN/gamma (960, 960/960 params)block_14_expand (--/153.60k params)block_14_expand/kernel (1x1x160x960, 153.60k/153.60k params)block_14_expand_BN (--/1.92k params)block_14_expand_BN/beta (960, 960/960 params)block_14_expand_BN/gamma (960, 960/960 params)block_14_project (--/153.60k params)block_14_project/kernel (1x1x960x160, 153.60k/153.60k params)block_14_project_BN (--/320 params)block_14_project_BN/beta (160, 160/160 params)block_14_project_BN/gamma (160, 160/160 params)block_15_depthwise (--/8.64k params)block_15_depthwise/depthwise_kernel (3x3x960x1, 8.64k/8.64k params)block_15_depthwise_BN (--/1.92k params)block_15_depthwise_BN/beta (960, 960/960 params)block_15_depthwise_BN/gamma (960, 960/960 params)block_15_expand (--/153.60k params)block_15_expand/kernel (1x1x160x960, 153.60k/153.60k params)block_15_expand_BN (--/1.92k params)block_15_expand_BN/beta (960, 960/960 params)block_15_expand_BN/gamma (960, 960/960 params)block_15_project (--/153.60k params)block_15_project/kernel (1x1x960x160, 153.60k/153.60k params)block_15_project_BN (--/320 params)block_15_project_BN/beta (160, 160/160 params)block_15_project_BN/gamma (160, 160/160 params)block_16_depthwise (--/8.64k params)block_16_depthwise/depthwise_kernel (3x3x960x1, 8.64k/8.64k params)block_16_depthwise_BN (--/1.92k params)block_16_depthwise_BN/beta (960, 960/960 params)block_16_depthwise_BN/gamma (960, 960/960 params)block_16_expand (--/153.60k params)block_16_expand/kernel (1x1x160x960, 153.60k/153.60k params)block_16_expand_BN (--/1.92k params)block_16_expand_BN/beta (960, 960/960 params)block_16_expand_BN/gamma (960, 960/960 params)block_16_project (--/307.20k params)block_16_project/kernel (1x1x960x320, 307.20k/307.20k params)block_16_project_BN (--/640 params)block_16_project_BN/beta (320, 320/320 params)block_16_project_BN/gamma (320, 320/320 params)block_1_depthwise (--/864 params)block_1_depthwise/depthwise_kernel (3x3x96x1, 864/864 params)block_1_depthwise_BN (--/192 params)block_1_depthwise_BN/beta (96, 96/96 params)block_1_depthwise_BN/gamma (96, 96/96 params)block_1_expand (--/1.54k params)block_1_expand/kernel (1x1x16x96, 1.54k/1.54k params)block_1_expand_BN (--/192 params)block_1_expand_BN/beta (96, 96/96 params)block_1_expand_BN/gamma (96, 96/96 params)block_1_project (--/2.30k params)block_1_project/kernel (1x1x96x24, 2.30k/2.30k params)block_1_project_BN (--/48 params)block_1_project_BN/beta (24, 24/24 params)block_1_project_BN/gamma (24, 24/24 params)block_2_depthwise (--/1.30k params)block_2_depthwise/depthwise_kernel (3x3x144x1, 1.30k/1.30k params)block_2_depthwise_BN (--/288 params)block_2_depthwise_BN/beta (144, 144/144 params)block_2_depthwise_BN/gamma (144, 144/144 params)block_2_expand (--/3.46k params)block_2_expand/kernel (1x1x24x144, 3.46k/3.46k params)block_2_expand_BN (--/288 params)block_2_expand_BN/beta (144, 144/144 params)block_2_expand_BN/gamma (144, 144/144 params)block_2_project (--/3.46k params)block_2_project/kernel (1x1x144x24, 3.46k/3.46k params)block_2_project_BN (--/48 params)block_2_project_BN/beta (24, 24/24 params)block_2_project_BN/gamma (24, 24/24 params)block_3_depthwise (--/1.30k params)block_3_depthwise/depthwise_kernel (3x3x144x1, 1.30k/1.30k params)block_3_depthwise_BN (--/288 params)block_3_depthwise_BN/beta (144, 144/144 params)block_3_depthwise_BN/gamma (144, 144/144 params)block_3_expand (--/3.46k params)block_3_expand/kernel (1x1x24x144, 3.46k/3.46k params)block_3_expand_BN (--/288 params)block_3_expand_BN/beta (144, 144/144 params)block_3_expand_BN/gamma (144, 144/144 params)block_3_project (--/4.61k params)block_3_project/kernel (1x1x144x32, 4.61k/4.61k params)block_3_project_BN (--/64 params)block_3_project_BN/beta (32, 32/32 params)block_3_project_BN/gamma (32, 32/32 params)block_4_depthwise (--/1.73k params)block_4_depthwise/depthwise_kernel (3x3x192x1, 1.73k/1.73k params)block_4_depthwise_BN (--/384 params)block_4_depthwise_BN/beta (192, 192/192 params)block_4_depthwise_BN/gamma (192, 192/192 params)block_4_expand (--/6.14k params)block_4_expand/kernel (1x1x32x192, 6.14k/6.14k params)block_4_expand_BN (--/384 params)block_4_expand_BN/beta (192, 192/192 params)block_4_expand_BN/gamma (192, 192/192 params)block_4_project (--/6.14k params)block_4_project/kernel (1x1x192x32, 6.14k/6.14k params)block_4_project_BN (--/64 params)block_4_project_BN/beta (32, 32/32 params)block_4_project_BN/gamma (32, 32/32 params)block_5_depthwise (--/1.73k params)block_5_depthwise/depthwise_kernel (3x3x192x1, 1.73k/1.73k params)block_5_depthwise_BN (--/384 params)block_5_depthwise_BN/beta (192, 192/192 params)block_5_depthwise_BN/gamma (192, 192/192 params)block_5_expand (--/6.14k params)block_5_expand/kernel (1x1x32x192, 6.14k/6.14k params)block_5_expand_BN (--/384 params)block_5_expand_BN/beta (192, 192/192 params)block_5_expand_BN/gamma (192, 192/192 params)block_5_project (--/6.14k params)block_5_project/kernel (1x1x192x32, 6.14k/6.14k params)block_5_project_BN (--/64 params)block_5_project_BN/beta (32, 32/32 params)block_5_project_BN/gamma (32, 32/32 params)block_6_depthwise (--/1.73k params)block_6_depthwise/depthwise_kernel (3x3x192x1, 1.73k/1.73k params)block_6_depthwise_BN (--/384 params)block_6_depthwise_BN/beta (192, 192/192 params)block_6_depthwise_BN/gamma (192, 192/192 params)block_6_expand (--/6.14k params)block_6_expand/kernel (1x1x32x192, 6.14k/6.14k params)block_6_expand_BN (--/384 params)block_6_expand_BN/beta (192, 192/192 params)block_6_expand_BN/gamma (192, 192/192 params)block_6_project (--/12.29k params)block_6_project/kernel (1x1x192x64, 12.29k/12.29k params)block_6_project_BN (--/128 params)block_6_project_BN/beta (64, 64/64 params)block_6_project_BN/gamma (64, 64/64 params)block_7_depthwise (--/3.46k params)block_7_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_7_depthwise_BN (--/768 params)block_7_depthwise_BN/beta (384, 384/384 params)block_7_depthwise_BN/gamma (384, 384/384 params)block_7_expand (--/24.58k params)block_7_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_7_expand_BN (--/768 params)block_7_expand_BN/beta (384, 384/384 params)block_7_expand_BN/gamma (384, 384/384 params)block_7_project (--/24.58k params)block_7_project/kernel (1x1x384x64, 24.58k/24.58k params)block_7_project_BN (--/128 params)block_7_project_BN/beta (64, 64/64 params)block_7_project_BN/gamma (64, 64/64 params)block_8_depthwise (--/3.46k params)block_8_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_8_depthwise_BN (--/768 params)block_8_depthwise_BN/beta (384, 384/384 params)block_8_depthwise_BN/gamma (384, 384/384 params)block_8_expand (--/24.58k params)block_8_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_8_expand_BN (--/768 params)block_8_expand_BN/beta (384, 384/384 params)block_8_expand_BN/gamma (384, 384/384 params)block_8_project (--/24.58k params)block_8_project/kernel (1x1x384x64, 24.58k/24.58k params)block_8_project_BN (--/128 params)block_8_project_BN/beta (64, 64/64 params)block_8_project_BN/gamma (64, 64/64 params)block_9_depthwise (--/3.46k params)block_9_depthwise/depthwise_kernel (3x3x384x1, 3.46k/3.46k params)block_9_depthwise_BN (--/768 params)block_9_depthwise_BN/beta (384, 384/384 params)block_9_depthwise_BN/gamma (384, 384/384 params)block_9_expand (--/24.58k params)block_9_expand/kernel (1x1x64x384, 24.58k/24.58k params)block_9_expand_BN (--/768 params)block_9_expand_BN/beta (384, 384/384 params)block_9_expand_BN/gamma (384, 384/384 params)block_9_project (--/24.58k params)block_9_project/kernel (1x1x384x64, 24.58k/24.58k params)block_9_project_BN (--/128 params)block_9_project_BN/beta (64, 64/64 params)block_9_project_BN/gamma (64, 64/64 params)bn_Conv1 (--/64 params)bn_Conv1/beta (32, 32/32 params)bn_Conv1/gamma (32, 32/32 params)expanded_conv_depthwise (--/288 params)expanded_conv_depthwise/depthwise_kernel (3x3x32x1, 288/288 params)expanded_conv_depthwise_BN (--/64 params)expanded_conv_depthwise_BN/beta (32, 32/32 params)expanded_conv_depthwise_BN/gamma (32, 32/32 params)expanded_conv_project (--/512 params)expanded_conv_project/kernel (1x1x32x16, 512/512 params)expanded_conv_project_BN (--/32 params)expanded_conv_project_BN/beta (16, 16/16 params)expanded_conv_project_BN/gamma (16, 16/16 params)======================End of Report==========================
FLOPs: 4,572,193;    Trainable params: 2,286,065
WARNING:tensorflow:From E:/master_ImRecognition/main.py:99: The name tf.keras.backend.get_session is deprecated. Please use tf.compat.v1.keras.backend.get_session instead.[0418 21:45:19] From E:/master_ImRecognition/main.py:99: The name tf.keras.backend.get_session is deprecated. Please use tf.compat.v1.keras.backend.get_session instead.2021-04-18 21:45:19.082183: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1261] Device interconnect StreamExecutor with strength 1 edge matrix:
2021-04-18 21:45:19.082353: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1267]
2021-04-18 21:45:19.082452: I tensorflow/compiler/jit/xla_gpu_device.cc:99] Not creating XLA devices, tf_xla_enable_xla_devices not set
2021-04-18 21:45:19.257091: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:196] None of the MLIR optimization passes are enabled (registered 0 passes)
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              1
-min_occurrence             0
-step                       -1
-order_by                   float_ops
-account_type_regexes       .*
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     float_ops
-output                     stdout:==================Model Analysis Report======================
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.Doc:
op: The nodes are operation kernel type, such as MatMul, Conv2D. Graph nodes belonging to the same type are aggregated together.
flops: Number of float operations. Note: Please read the implementation for the math behind it.Profile:
node name | # float_ops
Mul                      2.29m float_ops (100.00%, 50.00%)
Add                      2.25m float_ops (50.00%, 49.25%)
Sub                      34.27k float_ops (0.75%, 0.75%)======================End of Report==========================
Model: "mobilenetv2_1.00_200"

方法二:

def get_flops(model):run_meta = tf.RunMetadata()opts = tf.profiler.ProfileOptionBuilder.float_operation()flops = tf.profiler.profile(graph=K.get_session().graph,run_meta=run_meta,cmd='op',options=opts)return flops.total_float_ops

结果与上述方法一基本相同,不同TensorFlow版本的代码差异。

方法三:

使用net_flops()函数的结果,与MobieNetV2论文结果较接近,但仍存在一定的误差:

               Layer Name |      Input Shape |     Output Shape |      Kernel Size |          Filters | Strides |  FLOPS
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------input_1 |    [224, 224, 3] |    [224, 224, 3] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000Conv1 |    [224, 224, 3] |   [112, 112, 32] |           (3, 3) |               32 | (2, 2) | 21676032.0000bn_Conv1 |   [112, 112, 32] |   [112, 112, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000Conv1_relu |   [112, 112, 32] |   [112, 112, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000expanded_conv_depthwise |   [112, 112, 32] |   [112, 112, 32] |           (3, 3) |               32 | (1, 1) | 7225344.0000
expanded_conv_depthwise_BN |   [112, 112, 32] |   [112, 112, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
expanded_conv_depthwise_relu |   [112, 112, 32] |   [112, 112, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000expanded_conv_project |   [112, 112, 32] |   [112, 112, 16] |           (1, 1) |               16 | (1, 1) | 12845056.0000expanded_conv_project_BN |   [112, 112, 16] |   [112, 112, 16] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_expand |   [112, 112, 16] |   [112, 112, 96] |           (1, 1) |               96 | (1, 1) | 38535168.0000block_1_expand_BN |   [112, 112, 96] |   [112, 112, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_expand_relu |   [112, 112, 96] |   [112, 112, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_depthwise |   [113, 113, 96] |     [56, 56, 96] |           (3, 3) |               96 | (2, 2) | 5516208.0000block_1_depthwise_BN |     [56, 56, 96] |     [56, 56, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_depthwise_relu |     [56, 56, 96] |     [56, 56, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_project |     [56, 56, 96] |     [56, 56, 24] |           (1, 1) |               24 | (1, 1) | 14450688.0000block_1_project_BN |     [56, 56, 24] |     [56, 56, 24] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_expand |     [56, 56, 24] |    [56, 56, 144] |           (1, 1) |              144 | (1, 1) | 21676032.0000block_2_expand_BN |    [56, 56, 144] |    [56, 56, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_expand_relu |    [56, 56, 144] |    [56, 56, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_depthwise |    [56, 56, 144] |    [56, 56, 144] |           (3, 3) |              144 | (1, 1) | 8128512.0000block_2_depthwise_BN |    [56, 56, 144] |    [56, 56, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_depthwise_relu |    [56, 56, 144] |    [56, 56, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_project |    [56, 56, 144] |     [56, 56, 24] |           (1, 1) |               24 | (1, 1) | 21676032.0000block_2_project_BN |     [56, 56, 24] |     [56, 56, 24] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_add |  [56, 56, 24, 2] |     [56, 56, 24] |           [0, 0] |           [0, 0] | [1, 1] | 75264.0000block_3_expand |     [56, 56, 24] |    [56, 56, 144] |           (1, 1) |              144 | (1, 1) | 21676032.0000block_3_expand_BN |    [56, 56, 144] |    [56, 56, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_expand_relu |    [56, 56, 144] |    [56, 56, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_depthwise |    [57, 57, 144] |    [28, 28, 144] |           (3, 3) |              144 | (2, 2) | 2105352.0000block_3_depthwise_BN |    [28, 28, 144] |    [28, 28, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_depthwise_relu |    [28, 28, 144] |    [28, 28, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_project |    [28, 28, 144] |     [28, 28, 32] |           (1, 1) |               32 | (1, 1) | 7225344.0000block_3_project_BN |     [28, 28, 32] |     [28, 28, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_expand |     [28, 28, 32] |    [28, 28, 192] |           (1, 1) |              192 | (1, 1) | 9633792.0000block_4_expand_BN |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_expand_relu |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_depthwise |    [28, 28, 192] |    [28, 28, 192] |           (3, 3) |              192 | (1, 1) | 2709504.0000block_4_depthwise_BN |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_depthwise_relu |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_project |    [28, 28, 192] |     [28, 28, 32] |           (1, 1) |               32 | (1, 1) | 9633792.0000block_4_project_BN |     [28, 28, 32] |     [28, 28, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_add |  [28, 28, 32, 2] |     [28, 28, 32] |           [0, 0] |           [0, 0] | [1, 1] | 25088.0000block_5_expand |     [28, 28, 32] |    [28, 28, 192] |           (1, 1) |              192 | (1, 1) | 9633792.0000block_5_expand_BN |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_expand_relu |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_depthwise |    [28, 28, 192] |    [28, 28, 192] |           (3, 3) |              192 | (1, 1) | 2709504.0000block_5_depthwise_BN |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_depthwise_relu |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_project |    [28, 28, 192] |     [28, 28, 32] |           (1, 1) |               32 | (1, 1) | 9633792.0000block_5_project_BN |     [28, 28, 32] |     [28, 28, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_add |  [28, 28, 32, 2] |     [28, 28, 32] |           [0, 0] |           [0, 0] | [1, 1] | 25088.0000block_6_expand |     [28, 28, 32] |    [28, 28, 192] |           (1, 1) |              192 | (1, 1) | 9633792.0000block_6_expand_BN |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_expand_relu |    [28, 28, 192] |    [28, 28, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_depthwise |    [29, 29, 192] |    [14, 14, 192] |           (3, 3) |              192 | (2, 2) | 726624.0000block_6_depthwise_BN |    [14, 14, 192] |    [14, 14, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_depthwise_relu |    [14, 14, 192] |    [14, 14, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_project |    [14, 14, 192] |     [14, 14, 64] |           (1, 1) |               64 | (1, 1) | 4816896.0000block_6_project_BN |     [14, 14, 64] |     [14, 14, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_expand |     [14, 14, 64] |    [14, 14, 384] |           (1, 1) |              384 | (1, 1) | 9633792.0000block_7_expand_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_expand_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_depthwise |    [14, 14, 384] |    [14, 14, 384] |           (3, 3) |              384 | (1, 1) | 1354752.0000block_7_depthwise_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_depthwise_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_project |    [14, 14, 384] |     [14, 14, 64] |           (1, 1) |               64 | (1, 1) | 9633792.0000block_7_project_BN |     [14, 14, 64] |     [14, 14, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_add |  [14, 14, 64, 2] |     [14, 14, 64] |           [0, 0] |           [0, 0] | [1, 1] | 12544.0000block_8_expand |     [14, 14, 64] |    [14, 14, 384] |           (1, 1) |              384 | (1, 1) | 9633792.0000block_8_expand_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_expand_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_depthwise |    [14, 14, 384] |    [14, 14, 384] |           (3, 3) |              384 | (1, 1) | 1354752.0000block_8_depthwise_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_depthwise_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_project |    [14, 14, 384] |     [14, 14, 64] |           (1, 1) |               64 | (1, 1) | 9633792.0000block_8_project_BN |     [14, 14, 64] |     [14, 14, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_add |  [14, 14, 64, 2] |     [14, 14, 64] |           [0, 0] |           [0, 0] | [1, 1] | 12544.0000block_9_expand |     [14, 14, 64] |    [14, 14, 384] |           (1, 1) |              384 | (1, 1) | 9633792.0000block_9_expand_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_expand_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_depthwise |    [14, 14, 384] |    [14, 14, 384] |           (3, 3) |              384 | (1, 1) | 1354752.0000block_9_depthwise_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_depthwise_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_project |    [14, 14, 384] |     [14, 14, 64] |           (1, 1) |               64 | (1, 1) | 9633792.0000block_9_project_BN |     [14, 14, 64] |     [14, 14, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_add |  [14, 14, 64, 2] |     [14, 14, 64] |           [0, 0] |           [0, 0] | [1, 1] | 12544.0000block_10_expand |     [14, 14, 64] |    [14, 14, 384] |           (1, 1) |              384 | (1, 1) | 9633792.0000block_10_expand_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_expand_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_depthwise |    [14, 14, 384] |    [14, 14, 384] |           (3, 3) |              384 | (1, 1) | 1354752.0000block_10_depthwise_BN |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_depthwise_relu |    [14, 14, 384] |    [14, 14, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_project |    [14, 14, 384] |     [14, 14, 96] |           (1, 1) |               96 | (1, 1) | 14450688.0000block_10_project_BN |     [14, 14, 96] |     [14, 14, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_expand |     [14, 14, 96] |    [14, 14, 576] |           (1, 1) |              576 | (1, 1) | 21676032.0000block_11_expand_BN |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_expand_relu |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_depthwise |    [14, 14, 576] |    [14, 14, 576] |           (3, 3) |              576 | (1, 1) | 2032128.0000block_11_depthwise_BN |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_depthwise_relu |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_project |    [14, 14, 576] |     [14, 14, 96] |           (1, 1) |               96 | (1, 1) | 21676032.0000block_11_project_BN |     [14, 14, 96] |     [14, 14, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_add |  [14, 14, 96, 2] |     [14, 14, 96] |           [0, 0] |           [0, 0] | [1, 1] | 18816.0000block_12_expand |     [14, 14, 96] |    [14, 14, 576] |           (1, 1) |              576 | (1, 1) | 21676032.0000block_12_expand_BN |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_expand_relu |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_depthwise |    [14, 14, 576] |    [14, 14, 576] |           (3, 3) |              576 | (1, 1) | 2032128.0000block_12_depthwise_BN |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_depthwise_relu |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_project |    [14, 14, 576] |     [14, 14, 96] |           (1, 1) |               96 | (1, 1) | 21676032.0000block_12_project_BN |     [14, 14, 96] |     [14, 14, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_add |  [14, 14, 96, 2] |     [14, 14, 96] |           [0, 0] |           [0, 0] | [1, 1] | 18816.0000block_13_expand |     [14, 14, 96] |    [14, 14, 576] |           (1, 1) |              576 | (1, 1) | 21676032.0000block_13_expand_BN |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_expand_relu |    [14, 14, 576] |    [14, 14, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_depthwise |    [15, 15, 576] |      [7, 7, 576] |           (3, 3) |              576 | (2, 2) | 583200.0000block_13_depthwise_BN |      [7, 7, 576] |      [7, 7, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_depthwise_relu |      [7, 7, 576] |      [7, 7, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_project |      [7, 7, 576] |      [7, 7, 160] |           (1, 1) |              160 | (1, 1) | 9031680.0000block_13_project_BN |      [7, 7, 160] |      [7, 7, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_expand |      [7, 7, 160] |      [7, 7, 960] |           (1, 1) |              960 | (1, 1) | 15052800.0000block_14_expand_BN |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_expand_relu |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_depthwise |      [7, 7, 960] |      [7, 7, 960] |           (3, 3) |              960 | (1, 1) | 846720.0000block_14_depthwise_BN |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_depthwise_relu |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_project |      [7, 7, 960] |      [7, 7, 160] |           (1, 1) |              160 | (1, 1) | 15052800.0000block_14_project_BN |      [7, 7, 160] |      [7, 7, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_add |   [7, 7, 160, 2] |      [7, 7, 160] |           [0, 0] |           [0, 0] | [1, 1] | 7840.0000block_15_expand |      [7, 7, 160] |      [7, 7, 960] |           (1, 1) |              960 | (1, 1) | 15052800.0000block_15_expand_BN |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_expand_relu |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_depthwise |      [7, 7, 960] |      [7, 7, 960] |           (3, 3) |              960 | (1, 1) | 846720.0000block_15_depthwise_BN |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_depthwise_relu |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_project |      [7, 7, 960] |      [7, 7, 160] |           (1, 1) |              160 | (1, 1) | 15052800.0000block_15_project_BN |      [7, 7, 160] |      [7, 7, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_add |   [7, 7, 160, 2] |      [7, 7, 160] |           [0, 0] |           [0, 0] | [1, 1] | 7840.0000block_16_expand |      [7, 7, 160] |      [7, 7, 960] |           (1, 1) |              960 | (1, 1) | 15052800.0000block_16_expand_BN |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_expand_relu |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_depthwise |      [7, 7, 960] |      [7, 7, 960] |           (3, 3) |              960 | (1, 1) | 846720.0000block_16_depthwise_BN |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_depthwise_relu |      [7, 7, 960] |      [7, 7, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_project |      [7, 7, 960] |      [7, 7, 320] |           (1, 1) |              320 | (1, 1) | 30105600.0000block_16_project_BN |      [7, 7, 320] |      [7, 7, 320] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000Conv_1 |      [7, 7, 320] |     [7, 7, 1280] |           (1, 1) |             1280 | (1, 1) | 40140800.0000Conv_1_bn |     [7, 7, 1280] |     [7, 7, 1280] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000out_relu |     [7, 7, 1280] |     [7, 7, 1280] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000global_average_pooling2d |     [7, 7, 1280] |   [[1280], 1, 1] |           [0, 0] |           [0, 0] | [1, 1] | 62720.0000
Tensor("global_average_pooling2d/Mean:0", shape=(None, 1280), dtype=float32)predictions |             1280 |           [1000] |           [0, 0] |           [0, 0] | [1, 1] | 2560000.0000Total FLOPs: 602,122,488.000000
Total MACCs: 300,921,692.000000

以上是keras的application中给出的代码实现,以下是自实现MobileNet的结果测试:

2021-04-18 21:45:15.332238: W tensorflow/core/common_runtime/gpu/gpu_device.cc:1757] Cannot dlopen some GPU libraries. Please make sure the missing libraries mentioned above are installed properly if you would like to use GPU. Follow the guide at https://www.tensorflow.org/install/gpu for how to download and setup the required libraries for your platform.
Skipping registering GPU devices...Layer Name |      Input Shape |     Output Shape |      Kernel Size |          Filters | Strides |  FLOPS
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------input_1 |     [200, 12, 1] |     [200, 12, 1] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000Conv1_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000Conv1 |     [201, 13, 1] |     [100, 6, 32] |           (3, 3) |               32 | (2, 2) | 376272.0000bn_Conv1 |     [100, 6, 32] |     [100, 6, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000Conv1_relu |     [100, 6, 32] |     [100, 6, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000expanded_conv_depthwise |     [100, 6, 32] |     [100, 6, 32] |           (3, 3) |               32 | (1, 1) | 345600.0000
expanded_conv_depthwise_BN |     [100, 6, 32] |     [100, 6, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
expanded_conv_depthwise_relu |     [100, 6, 32] |     [100, 6, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000expanded_conv_project |     [100, 6, 32] |     [100, 6, 16] |           (1, 1) |               16 | (1, 1) | 614400.0000expanded_conv_project_BN |     [100, 6, 16] |     [100, 6, 16] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_expand |     [100, 6, 16] |     [100, 6, 96] |           (1, 1) |               96 | (1, 1) | 1843200.0000block_1_expand_BN |     [100, 6, 96] |     [100, 6, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_expand_relu |     [100, 6, 96] |     [100, 6, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_depthwise |     [101, 7, 96] |      [50, 3, 96] |           (3, 3) |               96 | (2, 2) | 305424.0000block_1_depthwise_BN |      [50, 3, 96] |      [50, 3, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_depthwise_relu |      [50, 3, 96] |      [50, 3, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_1_project |      [50, 3, 96] |      [50, 3, 24] |           (1, 1) |               24 | (1, 1) | 691200.0000block_1_project_BN |      [50, 3, 24] |      [50, 3, 24] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_expand |      [50, 3, 24] |     [50, 3, 144] |           (1, 1) |              144 | (1, 1) | 1036800.0000block_2_expand_BN |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_expand_relu |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_depthwise |     [50, 3, 144] |     [50, 3, 144] |           (3, 3) |              144 | (1, 1) | 388800.0000block_2_depthwise_BN |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_depthwise_relu |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_project |     [50, 3, 144] |      [50, 3, 24] |           (1, 1) |               24 | (1, 1) | 1036800.0000block_2_project_BN |      [50, 3, 24] |      [50, 3, 24] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_2_add |   [50, 3, 24, 2] |      [50, 3, 24] |           [0, 0] |           [0, 0] | [1, 1] | 3600.0000block_3_expand |      [50, 3, 24] |     [50, 3, 144] |           (1, 1) |              144 | (1, 1) | 1036800.0000block_3_expand_BN |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_expand_relu |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_depthwise |     [51, 5, 144] |     [25, 2, 144] |           (3, 3) |              144 | (2, 2) | 165240.0000block_3_depthwise_BN |     [25, 2, 144] |     [25, 2, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_depthwise_relu |     [25, 2, 144] |     [25, 2, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_3_project |     [25, 2, 144] |      [25, 2, 32] |           (1, 1) |               32 | (1, 1) | 460800.0000block_3_project_BN |      [25, 2, 32] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_expand |      [25, 2, 32] |     [25, 2, 192] |           (1, 1) |              192 | (1, 1) | 614400.0000block_4_expand_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_expand_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_depthwise |     [25, 2, 192] |     [25, 2, 192] |           (3, 3) |              192 | (1, 1) | 172800.0000block_4_depthwise_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_depthwise_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_project |     [25, 2, 192] |      [25, 2, 32] |           (1, 1) |               32 | (1, 1) | 614400.0000block_4_project_BN |      [25, 2, 32] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_4_add |   [25, 2, 32, 2] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 1600.0000block_5_expand |      [25, 2, 32] |     [25, 2, 192] |           (1, 1) |              192 | (1, 1) | 614400.0000block_5_expand_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_expand_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_depthwise |     [25, 2, 192] |     [25, 2, 192] |           (3, 3) |              192 | (1, 1) | 172800.0000block_5_depthwise_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_depthwise_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_project |     [25, 2, 192] |      [25, 2, 32] |           (1, 1) |               32 | (1, 1) | 614400.0000block_5_project_BN |      [25, 2, 32] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_5_add |   [25, 2, 32, 2] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 1600.0000block_6_expand |      [25, 2, 32] |     [25, 2, 192] |           (1, 1) |              192 | (1, 1) | 614400.0000block_6_expand_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_expand_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_depthwise |     [27, 3, 192] |     [13, 1, 192] |           (3, 3) |              192 | (2, 2) | 69984.0000block_6_depthwise_BN |     [13, 1, 192] |     [13, 1, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_depthwise_relu |     [13, 1, 192] |     [13, 1, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_6_project |     [13, 1, 192] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 319488.0000block_6_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000block_7_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000block_7_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_project |     [13, 1, 384] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 638976.0000block_7_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_7_add |   [13, 1, 64, 2] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 832.0000block_8_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000block_8_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000block_8_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_project |     [13, 1, 384] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 638976.0000block_8_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_8_add |   [13, 1, 64, 2] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 832.0000block_9_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000block_9_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000block_9_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_project |     [13, 1, 384] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 638976.0000block_9_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_9_add |   [13, 1, 64, 2] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 832.0000block_10_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000block_10_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000block_10_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_10_project |     [13, 1, 384] |      [13, 1, 96] |           (1, 1) |               96 | (1, 1) | 958464.0000block_10_project_BN |      [13, 1, 96] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_expand |      [13, 1, 96] |     [13, 1, 576] |           (1, 1) |              576 | (1, 1) | 1437696.0000block_11_expand_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_expand_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_depthwise |     [13, 1, 576] |     [13, 1, 576] |           (3, 3) |              576 | (1, 1) | 134784.0000block_11_depthwise_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_depthwise_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_project |     [13, 1, 576] |      [13, 1, 96] |           (1, 1) |               96 | (1, 1) | 1437696.0000block_11_project_BN |      [13, 1, 96] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_11_add |   [13, 1, 96, 2] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 1248.0000block_12_expand |      [13, 1, 96] |     [13, 1, 576] |           (1, 1) |              576 | (1, 1) | 1437696.0000block_12_expand_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_expand_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_depthwise |     [13, 1, 576] |     [13, 1, 576] |           (3, 3) |              576 | (1, 1) | 134784.0000block_12_depthwise_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_depthwise_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_project |     [13, 1, 576] |      [13, 1, 96] |           (1, 1) |               96 | (1, 1) | 1437696.0000block_12_project_BN |      [13, 1, 96] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_12_add |   [13, 1, 96, 2] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 1248.0000block_13_expand |      [13, 1, 96] |     [13, 1, 576] |           (1, 1) |              576 | (1, 1) | 1437696.0000block_13_expand_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_expand_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_depthwise |     [15, 3, 576] |      [7, 1, 576] |           (3, 3) |              576 | (2, 2) | 116640.0000block_13_depthwise_BN |      [7, 1, 576] |      [7, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_depthwise_relu |      [7, 1, 576] |      [7, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_13_project |      [7, 1, 576] |      [7, 1, 160] |           (1, 1) |              160 | (1, 1) | 1290240.0000block_13_project_BN |      [7, 1, 160] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_expand |      [7, 1, 160] |      [7, 1, 960] |           (1, 1) |              960 | (1, 1) | 2150400.0000block_14_expand_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_expand_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_depthwise |      [7, 1, 960] |      [7, 1, 960] |           (3, 3) |              960 | (1, 1) | 120960.0000block_14_depthwise_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_depthwise_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_project |      [7, 1, 960] |      [7, 1, 160] |           (1, 1) |              160 | (1, 1) | 2150400.0000block_14_project_BN |      [7, 1, 160] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_14_add |   [7, 1, 160, 2] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 1120.0000block_15_expand |      [7, 1, 160] |      [7, 1, 960] |           (1, 1) |              960 | (1, 1) | 2150400.0000block_15_expand_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_expand_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_depthwise |      [7, 1, 960] |      [7, 1, 960] |           (3, 3) |              960 | (1, 1) | 120960.0000block_15_depthwise_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_depthwise_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_project |      [7, 1, 960] |      [7, 1, 160] |           (1, 1) |              160 | (1, 1) | 2150400.0000block_15_project_BN |      [7, 1, 160] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_15_add |   [7, 1, 160, 2] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 1120.0000block_16_expand |      [7, 1, 160] |      [7, 1, 960] |           (1, 1) |              960 | (1, 1) | 2150400.0000block_16_expand_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_expand_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_depthwise |      [7, 1, 960] |      [7, 1, 960] |           (3, 3) |              960 | (1, 1) | 120960.0000block_16_depthwise_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_depthwise_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000block_16_project |      [7, 1, 960] |      [7, 1, 320] |           (1, 1) |              320 | (1, 1) | 4300800.0000block_16_project_BN |      [7, 1, 320] |      [7, 1, 320] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000Conv_1 |      [7, 1, 320] |     [7, 1, 1280] |           (1, 1) |             1280 | (1, 1) | 5734400.0000Conv_1_bn |     [7, 1, 1280] |     [7, 1, 1280] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000out_relu |     [7, 1, 1280] |     [7, 1, 1280] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000global_average_pooling2d |     [7, 1, 1280] |   [[1280], 1, 1] |           [0, 0] |           [0, 0] | [1, 1] | 8960.0000
Tensor("global_average_pooling2d/Mean:0", shape=(None, 1280), dtype=float32)Logits |             1280 |             [49] |           [0, 0] |           [0, 0] | [1, 1] | 125440.0000Total FLOPs: 48,062,568.000000
Total MACCs: 24,019,788.000000

以下是论文原文给出的数据:

Keras | 计算模型的FLOPs、MACCs相关推荐

  1. pytorch模型参数信息 计算模型的FLOPs

    参考链接:https://blog.csdn.net/tsq292978891/article/details/87918244 打印模型参数信息 在python3环境下安装torchsummary ...

  2. 计算模型的FLOPs

    为了探究影响模型运行时间的变量,之前运用了参数量做标准 参数量在TF框架下还是很容易计算的 TF框架下运用 tf.keras.models.Model().summary() 就能一键生成包含模型的l ...

  3. 使用thop库对yolo等深度学习模型的FLOPS进行计算

    据说yolov5原来的FLOPS计算脚本有bug,因此这个大神推荐使用thop库进行计算,代码如下: input = torch.randn(1, 3, 416, 416) flops, params ...

  4. 华为高级研究员谢凌曦:下一代人工智能计算模型探索

    2020-04-30 23:30:04 导读:下一代人工智能计算模型,主要是使用一些自动化技术帮助我们设计更好的深度学习网络结构,并在任务中提升性能.在深度学习如火如荼的当下,如何设计高效的神经网络架 ...

  5. pytorch计算模型参数量

    1. 安装 thop 1.1 常规安装 pip install thop 1.2 若上述安装方式错误,可以参考以下方式: pip install thop-i http://pypi.douban.c ...

  6. python模型保存save_浅谈keras保存模型中的save()和save_weights()区别

    今天做了一个关于keras保存模型的实验,希望有助于大家了解keras保存模型的区别. 我们知道keras的模型一般保存为后缀名为h5的文件,比如final_model.h5.同样是h5文件用save ...

  7. keras提取模型中的某一层_Tensorflow笔记:高级封装——Keras

    前言 之前在<Tensorflow笔记:高级封装--tf.Estimator>中介绍了Tensorflow的一种高级封装,本文介绍另一种高级封装Keras.Keras的特点就是两个字--简 ...

  8. keras提取模型中的某一层_Keras做图片分类(四):迁移学习--猫狗大战实战

    本项目数据集来自kaggle竞赛,地址: https://www.kaggle.com/c/dogs-vs-cats-redux-kernels-edition/data 数据的训练集放在train文 ...

  9. 测试方法介绍-计算模型复杂度(GMac)、模型大小(M)、计算速度(FPS)

    PRNet-V 计算复杂度为 48.76GMac 参数数量为34.73M (PRNet测试结果)(IEO在12345层) 参数数量为27.57M (PRNet测试结果)(IEO在345层) 计算图片读 ...

最新文章

  1. java exception用法_JavaException的使用
  2. java获得项目绝对路径
  3. dxf转nc代码软件_eCAM高速激光加工软件
  4. SET QUOTED_IDENTIFIER ON
  5. 看完这篇文章,跟面试官扯皮就没问题了
  6. linux mint 时间不对,LinuxMint 20:发布日期和新功能
  7. C++入门指南及实战 第三步 基本变量
  8. React开发(240):dva概念5reducer
  9. python web自动化测试实验报告_Python:web自动化测试
  10. php 第一次创建文件时延迟4秒 sleep用法
  11. 如何查看bmp文件头_效率神器:史上最强最小文件搜索软件Everything!
  12. java枚举类型特点_必须了解的高阶JAVA枚举特性!
  13. (转)Unity 导出XML配置文件,动态加载场景
  14. $.ajax提交,后台接受到的值总是乱码?明天再总结
  15. 翻译:与包括索引列:5级阶梯SQL Server索引
  16. [转]【基于zxing的编解码实战】精简Barcode Scanner篇
  17. 消费信贷 开源数据_消费或发布开源软件的6大动机
  18. android 表情变小了,别羡慕了!安卓微信表情包上限也变成999了!
  19. 【机器学习笔记1】一元线性回归模型及预测
  20. 网络视频服务器系统,网络视频直播系统,搭建直播服务器环境

热门文章

  1. CeoCio 的个性化书签设计
  2. 如何查询电脑的MAC地址
  3. 便携式软件打包成单文件exe和直装安装包exe制作
  4. 欣瑞达RK3288系列安卓工控一体机正式发布
  5. css可继承的属性有哪些?
  6. 大麦生成链接 大麦一键生成订单截图
  7. datagridview获取选中行数据
  8. 初级php程序员成长之路
  9. 马云对话80、90后:永远保持乐观
  10. 微信小程序开发 --- 每天的学习开发进度