您当前的位置:首页 > IT编程 > Keras
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch |

自学教程:keras模型的FLOPs值计算方法

51自学网 2022-02-21 11:40:18
  Keras
这篇教程keras模型的FLOPs值计算方法写得很实用,希望能帮到您。

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

Total 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.0000
                Conv1_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
                    Conv1 |     [201, 13, 1] |     [100, 6, 32] |           (3, 3) |               32 | (2, 2) | 376272.0000
                 bn_Conv1 |     [100, 6, 32] |     [100, 6, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
               Conv1_relu |     [100, 6, 32] |     [100, 6, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  expanded_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.0000
    expanded_conv_project |     [100, 6, 32] |     [100, 6, 16] |           (1, 1) |               16 | (1, 1) | 614400.0000
 expanded_conv_project_BN |     [100, 6, 16] |     [100, 6, 16] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
           block_1_expand |     [100, 6, 16] |     [100, 6, 96] |           (1, 1) |               96 | (1, 1) | 1843200.0000
        block_1_expand_BN |     [100, 6, 96] |     [100, 6, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_1_expand_relu |     [100, 6, 96] |     [100, 6, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_1_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_1_depthwise |     [101, 7, 96] |      [50, 3, 96] |           (3, 3) |               96 | (2, 2) | 305424.0000
     block_1_depthwise_BN |      [50, 3, 96] |      [50, 3, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_1_depthwise_relu |      [50, 3, 96] |      [50, 3, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_1_project |      [50, 3, 96] |      [50, 3, 24] |           (1, 1) |               24 | (1, 1) | 691200.0000
       block_1_project_BN |      [50, 3, 24] |      [50, 3, 24] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
           block_2_expand |      [50, 3, 24] |     [50, 3, 144] |           (1, 1) |              144 | (1, 1) | 1036800.0000
        block_2_expand_BN |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_2_expand_relu |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_2_depthwise |     [50, 3, 144] |     [50, 3, 144] |           (3, 3) |              144 | (1, 1) | 388800.0000
     block_2_depthwise_BN |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_2_depthwise_relu |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_2_project |     [50, 3, 144] |      [50, 3, 24] |           (1, 1) |               24 | (1, 1) | 1036800.0000
       block_2_project_BN |      [50, 3, 24] |      [50, 3, 24] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_2_add |   [50, 3, 24, 2] |      [50, 3, 24] |           [0, 0] |           [0, 0] | [1, 1] | 3600.0000
           block_3_expand |      [50, 3, 24] |     [50, 3, 144] |           (1, 1) |              144 | (1, 1) | 1036800.0000
        block_3_expand_BN |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_3_expand_relu |     [50, 3, 144] |     [50, 3, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_3_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_3_depthwise |     [51, 5, 144] |     [25, 2, 144] |           (3, 3) |              144 | (2, 2) | 165240.0000
     block_3_depthwise_BN |     [25, 2, 144] |     [25, 2, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_3_depthwise_relu |     [25, 2, 144] |     [25, 2, 144] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_3_project |     [25, 2, 144] |      [25, 2, 32] |           (1, 1) |               32 | (1, 1) | 460800.0000
       block_3_project_BN |      [25, 2, 32] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
           block_4_expand |      [25, 2, 32] |     [25, 2, 192] |           (1, 1) |              192 | (1, 1) | 614400.0000
        block_4_expand_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_4_expand_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_4_depthwise |     [25, 2, 192] |     [25, 2, 192] |           (3, 3) |              192 | (1, 1) | 172800.0000
     block_4_depthwise_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_4_depthwise_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_4_project |     [25, 2, 192] |      [25, 2, 32] |           (1, 1) |               32 | (1, 1) | 614400.0000
       block_4_project_BN |      [25, 2, 32] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_4_add |   [25, 2, 32, 2] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 1600.0000
           block_5_expand |      [25, 2, 32] |     [25, 2, 192] |           (1, 1) |              192 | (1, 1) | 614400.0000
        block_5_expand_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_5_expand_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_5_depthwise |     [25, 2, 192] |     [25, 2, 192] |           (3, 3) |              192 | (1, 1) | 172800.0000
     block_5_depthwise_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_5_depthwise_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_5_project |     [25, 2, 192] |      [25, 2, 32] |           (1, 1) |               32 | (1, 1) | 614400.0000
       block_5_project_BN |      [25, 2, 32] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_5_add |   [25, 2, 32, 2] |      [25, 2, 32] |           [0, 0] |           [0, 0] | [1, 1] | 1600.0000
           block_6_expand |      [25, 2, 32] |     [25, 2, 192] |           (1, 1) |              192 | (1, 1) | 614400.0000
        block_6_expand_BN |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_6_expand_relu |     [25, 2, 192] |     [25, 2, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_6_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_6_depthwise |     [27, 3, 192] |     [13, 1, 192] |           (3, 3) |              192 | (2, 2) | 69984.0000
     block_6_depthwise_BN |     [13, 1, 192] |     [13, 1, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_6_depthwise_relu |     [13, 1, 192] |     [13, 1, 192] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_6_project |     [13, 1, 192] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 319488.0000
       block_6_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
           block_7_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000
        block_7_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_7_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_7_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000
     block_7_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_7_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_7_project |     [13, 1, 384] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 638976.0000
       block_7_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_7_add |   [13, 1, 64, 2] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 832.0000
           block_8_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000
        block_8_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_8_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_8_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000
     block_8_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_8_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_8_project |     [13, 1, 384] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 638976.0000
       block_8_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_8_add |   [13, 1, 64, 2] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 832.0000
           block_9_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000
        block_9_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
      block_9_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
        block_9_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000
     block_9_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
   block_9_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_9_project |     [13, 1, 384] |      [13, 1, 64] |           (1, 1) |               64 | (1, 1) | 638976.0000
       block_9_project_BN |      [13, 1, 64] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
              block_9_add |   [13, 1, 64, 2] |      [13, 1, 64] |           [0, 0] |           [0, 0] | [1, 1] | 832.0000
          block_10_expand |      [13, 1, 64] |     [13, 1, 384] |           (1, 1) |              384 | (1, 1) | 638976.0000
       block_10_expand_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
     block_10_expand_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
       block_10_depthwise |     [13, 1, 384] |     [13, 1, 384] |           (3, 3) |              384 | (1, 1) | 89856.0000
    block_10_depthwise_BN |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  block_10_depthwise_relu |     [13, 1, 384] |     [13, 1, 384] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
         block_10_project |     [13, 1, 384] |      [13, 1, 96] |           (1, 1) |               96 | (1, 1) | 958464.0000
      block_10_project_BN |      [13, 1, 96] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_11_expand |      [13, 1, 96] |     [13, 1, 576] |           (1, 1) |              576 | (1, 1) | 1437696.0000
       block_11_expand_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
     block_11_expand_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
       block_11_depthwise |     [13, 1, 576] |     [13, 1, 576] |           (3, 3) |              576 | (1, 1) | 134784.0000
    block_11_depthwise_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  block_11_depthwise_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
         block_11_project |     [13, 1, 576] |      [13, 1, 96] |           (1, 1) |               96 | (1, 1) | 1437696.0000
      block_11_project_BN |      [13, 1, 96] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
             block_11_add |   [13, 1, 96, 2] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 1248.0000
          block_12_expand |      [13, 1, 96] |     [13, 1, 576] |           (1, 1) |              576 | (1, 1) | 1437696.0000
       block_12_expand_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
     block_12_expand_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
       block_12_depthwise |     [13, 1, 576] |     [13, 1, 576] |           (3, 3) |              576 | (1, 1) | 134784.0000
    block_12_depthwise_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  block_12_depthwise_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
         block_12_project |     [13, 1, 576] |      [13, 1, 96] |           (1, 1) |               96 | (1, 1) | 1437696.0000
      block_12_project_BN |      [13, 1, 96] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
             block_12_add |   [13, 1, 96, 2] |      [13, 1, 96] |           [0, 0] |           [0, 0] | [1, 1] | 1248.0000
          block_13_expand |      [13, 1, 96] |     [13, 1, 576] |           (1, 1) |              576 | (1, 1) | 1437696.0000
       block_13_expand_BN |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
     block_13_expand_relu |     [13, 1, 576] |     [13, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
             block_13_pad |     ['', '', ''] |     ['', '', ''] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
       block_13_depthwise |     [15, 3, 576] |      [7, 1, 576] |           (3, 3) |              576 | (2, 2) | 116640.0000
    block_13_depthwise_BN |      [7, 1, 576] |      [7, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  block_13_depthwise_relu |      [7, 1, 576] |      [7, 1, 576] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
         block_13_project |      [7, 1, 576] |      [7, 1, 160] |           (1, 1) |              160 | (1, 1) | 1290240.0000
      block_13_project_BN |      [7, 1, 160] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
          block_14_expand |      [7, 1, 160] |      [7, 1, 960] |           (1, 1) |              960 | (1, 1) | 2150400.0000
       block_14_expand_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
     block_14_expand_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
       block_14_depthwise |      [7, 1, 960] |      [7, 1, 960] |           (3, 3) |              960 | (1, 1) | 120960.0000
    block_14_depthwise_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  block_14_depthwise_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
         block_14_project |      [7, 1, 960] |      [7, 1, 160] |           (1, 1) |              160 | (1, 1) | 2150400.0000
      block_14_project_BN |      [7, 1, 160] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
             block_14_add |   [7, 1, 160, 2] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 1120.0000
          block_15_expand |      [7, 1, 160] |      [7, 1, 960] |           (1, 1) |              960 | (1, 1) | 2150400.0000
       block_15_expand_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
     block_15_expand_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
       block_15_depthwise |      [7, 1, 960] |      [7, 1, 960] |           (3, 3) |              960 | (1, 1) | 120960.0000
    block_15_depthwise_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  block_15_depthwise_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
         block_15_project |      [7, 1, 960] |      [7, 1, 160] |           (1, 1) |              160 | (1, 1) | 2150400.0000
      block_15_project_BN |      [7, 1, 160] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
             block_15_add |   [7, 1, 160, 2] |      [7, 1, 160] |           [0, 0] |           [0, 0] | [1, 1] | 1120.0000
          block_16_expand |      [7, 1, 160] |      [7, 1, 960] |           (1, 1) |              960 | (1, 1) | 2150400.0000
       block_16_expand_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
     block_16_expand_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
       block_16_depthwise |      [7, 1, 960] |      [7, 1, 960] |           (3, 3) |              960 | (1, 1) | 120960.0000
    block_16_depthwise_BN |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
  block_16_depthwise_relu |      [7, 1, 960] |      [7, 1, 960] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
         block_16_project |      [7, 1, 960] |      [7, 1, 320] |           (1, 1) |              320 | (1, 1) | 4300800.0000
      block_16_project_BN |      [7, 1, 320] |      [7, 1, 320] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
                   Conv_1 |      [7, 1, 320] |     [7, 1, 1280] |           (1, 1) |             1280 | (1, 1) | 5734400.0000
                Conv_1_bn |     [7, 1, 1280] |     [7, 1, 1280] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
                 out_relu |     [7, 1, 1280] |     [7, 1, 1280] |           [0, 0] |           [0, 0] | [1, 1] | 0.0000
 global_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.0000

Total FLOPs: 48,062,568.000000
Total MACCs: 24,019,788.000000

以下是论文原文给出的数据:
在这里插入图片描述


深度学习扩增小数据集样本-Keras数据增强并保存到本地
深度学习模型运行的浮点次数FLOPs和训练参数程序获取方法
51自学网,即我要自学网,自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1