diff --git a/discojs/src/default_tasks/cifar10.ts b/discojs/src/default_tasks/cifar10/index.ts similarity index 90% rename from discojs/src/default_tasks/cifar10.ts rename to discojs/src/default_tasks/cifar10/index.ts index 413f26baa..50677bcc9 100644 --- a/discojs/src/default_tasks/cifar10.ts +++ b/discojs/src/default_tasks/cifar10/index.ts @@ -1,7 +1,9 @@ import * as tf from '@tensorflow/tfjs' -import type { Model, Task, TaskProvider } from '../index.js' -import { data, models } from '../index.js' +import type { Model, Task, TaskProvider } from '../../index.js' +import { data, models } from '../../index.js' + +import baseModel from './model.js' export const cifar10: TaskProvider = { getTask (): Task { @@ -41,9 +43,10 @@ export const cifar10: TaskProvider = { }, async getModel (): Promise { - const mobilenet = await tf.loadLayersModel( - 'https://storage.googleapis.com/tfjs-models/tfjs/mobilenet_v1_0.25_224/model.json' - ) + const mobilenet = await tf.loadLayersModel({ + load: async () => Promise.resolve(baseModel), + }) + const x = mobilenet.getLayer('global_average_pooling2d_1') const predictions = tf.layers .dense({ units: 10, activation: 'softmax', name: 'denseModified' }) diff --git a/discojs/src/default_tasks/cifar10/model.ts b/discojs/src/default_tasks/cifar10/model.ts new file mode 100644 index 000000000..0d6a2a2cd --- /dev/null +++ b/discojs/src/default_tasks/cifar10/model.ts @@ -0,0 +1,2385 @@ +export default { + modelTopology: { + keras_version: "2.1.4", + model_config: { + class_name: "Model", + config: { + layers: [ + { + class_name: "InputLayer", + inbound_nodes: [], + config: { + dtype: "float32", + batch_input_shape: [null, 224, 224, 3], + name: "input_1", + sparse: false, + }, + name: "input_1", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["input_1", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv1", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [2, 2], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 8, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv1", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv1", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv1_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv1_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv1_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv1_relu", + }, + name: "conv1_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv1_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_1", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_1", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_1", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_1_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_1_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_1_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_1_relu", + }, + name: "conv_dw_1_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_1_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_1", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 16, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_1", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_1", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_1_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_1_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_1_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_1_relu", + }, + name: "conv_pw_1_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_1_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_2", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [2, 2], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_2", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_2", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_2_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_2_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_2_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_2_relu", + }, + name: "conv_dw_2_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_2_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_2", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 32, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_2", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_2", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_2_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_2_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_2_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_2_relu", + }, + name: "conv_pw_2_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_2_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_3", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_3", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_3", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_3_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_3_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_3_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_3_relu", + }, + name: "conv_dw_3_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_3_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_3", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 32, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_3", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_3", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_3_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_3_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_3_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_3_relu", + }, + name: "conv_pw_3_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_3_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_4", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [2, 2], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_4", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_4", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_4_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_4_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_4_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_4_relu", + }, + name: "conv_dw_4_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_4_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_4", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 64, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_4", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_4", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_4_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_4_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_4_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_4_relu", + }, + name: "conv_pw_4_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_4_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_5", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_5", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_5", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_5_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_5_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_5_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_5_relu", + }, + name: "conv_dw_5_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_5_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_5", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 64, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_5", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_5", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_5_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_5_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_5_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_5_relu", + }, + name: "conv_pw_5_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_5_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_6", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [2, 2], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_6", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_6", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_6_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_6_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_6_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_6_relu", + }, + name: "conv_dw_6_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_6_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_6", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 128, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_6", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_6", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_6_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_6_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_6_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_6_relu", + }, + name: "conv_pw_6_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_6_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_7", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_7", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_7", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_7_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_7_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_7_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_7_relu", + }, + name: "conv_dw_7_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_7_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_7", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 128, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_7", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_7", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_7_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_7_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_7_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_7_relu", + }, + name: "conv_pw_7_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_7_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_8", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_8", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_8", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_8_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_8_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_8_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_8_relu", + }, + name: "conv_dw_8_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_8_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_8", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 128, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_8", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_8", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_8_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_8_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_8_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_8_relu", + }, + name: "conv_pw_8_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_8_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_9", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_9", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_9", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_9_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_9_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_9_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_9_relu", + }, + name: "conv_dw_9_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_9_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_9", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 128, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_9", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_9", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_9_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_9_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_9_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_9_relu", + }, + name: "conv_pw_9_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_9_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_10", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_10", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_10", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_10_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_10_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_10_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_10_relu", + }, + name: "conv_dw_10_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_10_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_10", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 128, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_10", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_10", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_10_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_10_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_10_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_10_relu", + }, + name: "conv_pw_10_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_10_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_11", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_11", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_11", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_11_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_11_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_11_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_11_relu", + }, + name: "conv_dw_11_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_11_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_11", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 128, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_11", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_11", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_11_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_11_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_11_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_11_relu", + }, + name: "conv_pw_11_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_11_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_12", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [2, 2], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_12", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_12", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_12_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_12_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_12_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_12_relu", + }, + name: "conv_dw_12_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_12_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_12", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 256, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_12", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_12", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_12_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_12_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_12_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_12_relu", + }, + name: "conv_pw_12_relu", + }, + { + class_name: "DepthwiseConv2D", + inbound_nodes: [[["conv_pw_12_relu", 0, 0, {}]]], + config: { + padding: "same", + depth_multiplier: 1, + name: "conv_dw_13", + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + depthwise_constraint: null, + strides: [1, 1], + dilation_rate: [1, 1], + depthwise_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + depthwise_regularizer: null, + use_bias: false, + activity_regularizer: null, + kernel_size: [3, 3], + }, + name: "conv_dw_13", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_dw_13", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_dw_13_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_dw_13_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_dw_13_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_dw_13_relu", + }, + name: "conv_dw_13_relu", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["conv_dw_13_relu", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_pw_13", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 256, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: false, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_pw_13", + }, + { + class_name: "BatchNormalization", + inbound_nodes: [[["conv_pw_13", 0, 0, {}]]], + config: { + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + name: "conv_pw_13_bn", + epsilon: 0.001, + trainable: true, + center: true, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_initializer: { class_name: "Zeros", config: {} }, + scale: true, + gamma_regularizer: null, + gamma_constraint: null, + beta_constraint: null, + beta_regularizer: null, + momentum: 0.99, + axis: -1, + }, + name: "conv_pw_13_bn", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_pw_13_bn", 0, 0, {}]]], + config: { + activation: "relu6", + trainable: true, + name: "conv_pw_13_relu", + }, + name: "conv_pw_13_relu", + }, + { + class_name: "GlobalAveragePooling2D", + inbound_nodes: [[["conv_pw_13_relu", 0, 0, {}]]], + config: { + trainable: true, + name: "global_average_pooling2d_1", + data_format: "channels_last", + }, + name: "global_average_pooling2d_1", + }, + { + class_name: "Reshape", + inbound_nodes: [[["global_average_pooling2d_1", 0, 0, {}]]], + config: { + target_shape: [1, 1, 256], + trainable: true, + name: "reshape_1", + }, + name: "reshape_1", + }, + { + class_name: "Dropout", + inbound_nodes: [[["reshape_1", 0, 0, {}]]], + config: { + rate: 0.001, + noise_shape: null, + trainable: true, + seed: null, + name: "dropout", + }, + name: "dropout", + }, + { + class_name: "Conv2D", + inbound_nodes: [[["dropout", 0, 0, {}]]], + config: { + kernel_initializer: { + class_name: "VarianceScaling", + config: { + distribution: "uniform", + scale: 1.0, + seed: null, + mode: "fan_avg", + }, + }, + name: "conv_preds", + kernel_constraint: null, + bias_regularizer: null, + bias_constraint: null, + activation: "linear", + trainable: true, + data_format: "channels_last", + padding: "same", + strides: [1, 1], + dilation_rate: [1, 1], + kernel_regularizer: null, + filters: 1000, + bias_initializer: { class_name: "Zeros", config: {} }, + use_bias: true, + activity_regularizer: null, + kernel_size: [1, 1], + }, + name: "conv_preds", + }, + { + class_name: "Activation", + inbound_nodes: [[["conv_preds", 0, 0, {}]]], + config: { + activation: "softmax", + trainable: true, + name: "act_softmax", + }, + name: "act_softmax", + }, + { + class_name: "Reshape", + inbound_nodes: [[["act_softmax", 0, 0, {}]]], + config: { + target_shape: [1000], + trainable: true, + name: "reshape_2", + }, + name: "reshape_2", + }, + ], + input_layers: [["input_1", 0, 0]], + name: "mobilenet_0.25_224", + output_layers: [["reshape_2", 0, 0]], + }, + }, + backend: "tensorflow", + }, + weightsManifest: [ + { + paths: ["group1-shard1of1"], + weights: [ + { dtype: "float32", shape: [3, 3, 3, 8], name: "conv1/kernel" }, + ], + }, + { + paths: ["group2-shard1of1"], + weights: [ + { dtype: "float32", shape: [8], name: "conv1_bn/gamma" }, + { dtype: "float32", shape: [8], name: "conv1_bn/beta" }, + { dtype: "float32", shape: [8], name: "conv1_bn/moving_mean" }, + { dtype: "float32", shape: [8], name: "conv1_bn/moving_variance" }, + ], + }, + { + paths: ["group3-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 8, 1], + name: "conv_dw_1/depthwise_kernel", + }, + ], + }, + { + paths: ["group4-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 128, 1], + name: "conv_dw_10/depthwise_kernel", + }, + ], + }, + { + paths: ["group5-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_dw_10_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_dw_10_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_dw_10_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_dw_10_bn/moving_variance", + }, + ], + }, + { + paths: ["group6-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 128, 1], + name: "conv_dw_11/depthwise_kernel", + }, + ], + }, + { + paths: ["group7-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_dw_11_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_dw_11_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_dw_11_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_dw_11_bn/moving_variance", + }, + ], + }, + { + paths: ["group8-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 128, 1], + name: "conv_dw_12/depthwise_kernel", + }, + ], + }, + { + paths: ["group9-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_dw_12_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_dw_12_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_dw_12_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_dw_12_bn/moving_variance", + }, + ], + }, + { + paths: ["group10-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 256, 1], + name: "conv_dw_13/depthwise_kernel", + }, + ], + }, + { + paths: ["group11-shard1of1"], + weights: [ + { dtype: "float32", shape: [256], name: "conv_dw_13_bn/gamma" }, + { dtype: "float32", shape: [256], name: "conv_dw_13_bn/beta" }, + { dtype: "float32", shape: [256], name: "conv_dw_13_bn/moving_mean" }, + { + dtype: "float32", + shape: [256], + name: "conv_dw_13_bn/moving_variance", + }, + ], + }, + { + paths: ["group12-shard1of1"], + weights: [ + { dtype: "float32", shape: [8], name: "conv_dw_1_bn/gamma" }, + { dtype: "float32", shape: [8], name: "conv_dw_1_bn/beta" }, + { dtype: "float32", shape: [8], name: "conv_dw_1_bn/moving_mean" }, + { dtype: "float32", shape: [8], name: "conv_dw_1_bn/moving_variance" }, + ], + }, + { + paths: ["group13-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 16, 1], + name: "conv_dw_2/depthwise_kernel", + }, + ], + }, + { + paths: ["group14-shard1of1"], + weights: [ + { dtype: "float32", shape: [16], name: "conv_dw_2_bn/gamma" }, + { dtype: "float32", shape: [16], name: "conv_dw_2_bn/beta" }, + { dtype: "float32", shape: [16], name: "conv_dw_2_bn/moving_mean" }, + { dtype: "float32", shape: [16], name: "conv_dw_2_bn/moving_variance" }, + ], + }, + { + paths: ["group15-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 32, 1], + name: "conv_dw_3/depthwise_kernel", + }, + ], + }, + { + paths: ["group16-shard1of1"], + weights: [ + { dtype: "float32", shape: [32], name: "conv_dw_3_bn/gamma" }, + { dtype: "float32", shape: [32], name: "conv_dw_3_bn/beta" }, + { dtype: "float32", shape: [32], name: "conv_dw_3_bn/moving_mean" }, + { dtype: "float32", shape: [32], name: "conv_dw_3_bn/moving_variance" }, + ], + }, + { + paths: ["group17-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 32, 1], + name: "conv_dw_4/depthwise_kernel", + }, + ], + }, + { + paths: ["group18-shard1of1"], + weights: [ + { dtype: "float32", shape: [32], name: "conv_dw_4_bn/gamma" }, + { dtype: "float32", shape: [32], name: "conv_dw_4_bn/beta" }, + { dtype: "float32", shape: [32], name: "conv_dw_4_bn/moving_mean" }, + { dtype: "float32", shape: [32], name: "conv_dw_4_bn/moving_variance" }, + ], + }, + { + paths: ["group19-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 64, 1], + name: "conv_dw_5/depthwise_kernel", + }, + ], + }, + { + paths: ["group20-shard1of1"], + weights: [ + { dtype: "float32", shape: [64], name: "conv_dw_5_bn/gamma" }, + { dtype: "float32", shape: [64], name: "conv_dw_5_bn/beta" }, + { dtype: "float32", shape: [64], name: "conv_dw_5_bn/moving_mean" }, + { dtype: "float32", shape: [64], name: "conv_dw_5_bn/moving_variance" }, + ], + }, + { + paths: ["group21-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 64, 1], + name: "conv_dw_6/depthwise_kernel", + }, + ], + }, + { + paths: ["group22-shard1of1"], + weights: [ + { dtype: "float32", shape: [64], name: "conv_dw_6_bn/gamma" }, + { dtype: "float32", shape: [64], name: "conv_dw_6_bn/beta" }, + { dtype: "float32", shape: [64], name: "conv_dw_6_bn/moving_mean" }, + { dtype: "float32", shape: [64], name: "conv_dw_6_bn/moving_variance" }, + ], + }, + { + paths: ["group23-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 128, 1], + name: "conv_dw_7/depthwise_kernel", + }, + ], + }, + { + paths: ["group24-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_dw_7_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_dw_7_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_dw_7_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_dw_7_bn/moving_variance", + }, + ], + }, + { + paths: ["group25-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 128, 1], + name: "conv_dw_8/depthwise_kernel", + }, + ], + }, + { + paths: ["group26-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_dw_8_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_dw_8_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_dw_8_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_dw_8_bn/moving_variance", + }, + ], + }, + { + paths: ["group27-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [3, 3, 128, 1], + name: "conv_dw_9/depthwise_kernel", + }, + ], + }, + { + paths: ["group28-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_dw_9_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_dw_9_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_dw_9_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_dw_9_bn/moving_variance", + }, + ], + }, + { + paths: ["group29-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [1, 1, 256, 1000], + name: "conv_preds/kernel", + }, + { dtype: "float32", shape: [1000], name: "conv_preds/bias" }, + ], + }, + { + paths: ["group30-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 8, 16], name: "conv_pw_1/kernel" }, + ], + }, + { + paths: ["group31-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [1, 1, 128, 128], + name: "conv_pw_10/kernel", + }, + ], + }, + { + paths: ["group32-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_pw_10_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_pw_10_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_pw_10_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_pw_10_bn/moving_variance", + }, + ], + }, + { + paths: ["group33-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [1, 1, 128, 128], + name: "conv_pw_11/kernel", + }, + ], + }, + { + paths: ["group34-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_pw_11_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_pw_11_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_pw_11_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_pw_11_bn/moving_variance", + }, + ], + }, + { + paths: ["group35-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [1, 1, 128, 256], + name: "conv_pw_12/kernel", + }, + ], + }, + { + paths: ["group36-shard1of1"], + weights: [ + { dtype: "float32", shape: [256], name: "conv_pw_12_bn/gamma" }, + { dtype: "float32", shape: [256], name: "conv_pw_12_bn/beta" }, + { dtype: "float32", shape: [256], name: "conv_pw_12_bn/moving_mean" }, + { + dtype: "float32", + shape: [256], + name: "conv_pw_12_bn/moving_variance", + }, + ], + }, + { + paths: ["group37-shard1of1"], + weights: [ + { + dtype: "float32", + shape: [1, 1, 256, 256], + name: "conv_pw_13/kernel", + }, + ], + }, + { + paths: ["group38-shard1of1"], + weights: [ + { dtype: "float32", shape: [256], name: "conv_pw_13_bn/gamma" }, + { dtype: "float32", shape: [256], name: "conv_pw_13_bn/beta" }, + { dtype: "float32", shape: [256], name: "conv_pw_13_bn/moving_mean" }, + { + dtype: "float32", + shape: [256], + name: "conv_pw_13_bn/moving_variance", + }, + ], + }, + { + paths: ["group39-shard1of1"], + weights: [ + { dtype: "float32", shape: [16], name: "conv_pw_1_bn/gamma" }, + { dtype: "float32", shape: [16], name: "conv_pw_1_bn/beta" }, + { dtype: "float32", shape: [16], name: "conv_pw_1_bn/moving_mean" }, + { dtype: "float32", shape: [16], name: "conv_pw_1_bn/moving_variance" }, + ], + }, + { + paths: ["group40-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 16, 32], name: "conv_pw_2/kernel" }, + ], + }, + { + paths: ["group41-shard1of1"], + weights: [ + { dtype: "float32", shape: [32], name: "conv_pw_2_bn/gamma" }, + { dtype: "float32", shape: [32], name: "conv_pw_2_bn/beta" }, + { dtype: "float32", shape: [32], name: "conv_pw_2_bn/moving_mean" }, + { dtype: "float32", shape: [32], name: "conv_pw_2_bn/moving_variance" }, + ], + }, + { + paths: ["group42-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 32, 32], name: "conv_pw_3/kernel" }, + ], + }, + { + paths: ["group43-shard1of1"], + weights: [ + { dtype: "float32", shape: [32], name: "conv_pw_3_bn/gamma" }, + { dtype: "float32", shape: [32], name: "conv_pw_3_bn/beta" }, + { dtype: "float32", shape: [32], name: "conv_pw_3_bn/moving_mean" }, + { dtype: "float32", shape: [32], name: "conv_pw_3_bn/moving_variance" }, + ], + }, + { + paths: ["group44-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 32, 64], name: "conv_pw_4/kernel" }, + ], + }, + { + paths: ["group45-shard1of1"], + weights: [ + { dtype: "float32", shape: [64], name: "conv_pw_4_bn/gamma" }, + { dtype: "float32", shape: [64], name: "conv_pw_4_bn/beta" }, + { dtype: "float32", shape: [64], name: "conv_pw_4_bn/moving_mean" }, + { dtype: "float32", shape: [64], name: "conv_pw_4_bn/moving_variance" }, + ], + }, + { + paths: ["group46-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 64, 64], name: "conv_pw_5/kernel" }, + ], + }, + { + paths: ["group47-shard1of1"], + weights: [ + { dtype: "float32", shape: [64], name: "conv_pw_5_bn/gamma" }, + { dtype: "float32", shape: [64], name: "conv_pw_5_bn/beta" }, + { dtype: "float32", shape: [64], name: "conv_pw_5_bn/moving_mean" }, + { dtype: "float32", shape: [64], name: "conv_pw_5_bn/moving_variance" }, + ], + }, + { + paths: ["group48-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 64, 128], name: "conv_pw_6/kernel" }, + ], + }, + { + paths: ["group49-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_pw_6_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_pw_6_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_pw_6_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_pw_6_bn/moving_variance", + }, + ], + }, + { + paths: ["group50-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 128, 128], name: "conv_pw_7/kernel" }, + ], + }, + { + paths: ["group51-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_pw_7_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_pw_7_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_pw_7_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_pw_7_bn/moving_variance", + }, + ], + }, + { + paths: ["group52-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 128, 128], name: "conv_pw_8/kernel" }, + ], + }, + { + paths: ["group53-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_pw_8_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_pw_8_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_pw_8_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_pw_8_bn/moving_variance", + }, + ], + }, + { + paths: ["group54-shard1of1"], + weights: [ + { dtype: "float32", shape: [1, 1, 128, 128], name: "conv_pw_9/kernel" }, + ], + }, + { + paths: ["group55-shard1of1"], + weights: [ + { dtype: "float32", shape: [128], name: "conv_pw_9_bn/gamma" }, + { dtype: "float32", shape: [128], name: "conv_pw_9_bn/beta" }, + { dtype: "float32", shape: [128], name: "conv_pw_9_bn/moving_mean" }, + { + dtype: "float32", + shape: [128], + name: "conv_pw_9_bn/moving_variance", + }, + ], + }, + ], +}; diff --git a/discojs/src/default_tasks/geotags.ts b/discojs/src/default_tasks/geotags/index.ts similarity index 88% rename from discojs/src/default_tasks/geotags.ts rename to discojs/src/default_tasks/geotags/index.ts index 14e24c004..4ce026e72 100644 --- a/discojs/src/default_tasks/geotags.ts +++ b/discojs/src/default_tasks/geotags/index.ts @@ -1,9 +1,11 @@ import { Range } from 'immutable' import * as tf from '@tensorflow/tfjs' -import type { Model, Task, TaskProvider } from '../index.js' -import { data, models } from '../index.js' -import { LabelTypeEnum } from '../task/label_type.js' +import type { Model, Task, TaskProvider } from '../../index.js' +import { data, models } from '../../index.js' +import { LabelTypeEnum } from '../../task/label_type.js' + +import baseModel from './model.js' export const geotags: TaskProvider = { getTask (): Task { @@ -45,9 +47,9 @@ export const geotags: TaskProvider = { }, async getModel (): Promise { - const pretrainedModel = await tf.loadLayersModel( - 'https://storage.googleapis.com/deai-313515.appspot.com/models/geotags/model.json' - ) + const pretrainedModel = await tf.loadLayersModel({ + load: async () => Promise.resolve(baseModel), + }); const numLayers = pretrainedModel.layers.length diff --git a/discojs/src/default_tasks/geotags/model.ts b/discojs/src/default_tasks/geotags/model.ts new file mode 100644 index 000000000..382f9c7c4 --- /dev/null +++ b/discojs/src/default_tasks/geotags/model.ts @@ -0,0 +1,4715 @@ +export default { + format: "layers-model", + generatedBy: "keras v2.11.0", + convertedBy: "TensorFlow.js Converter v4.1.0", + modelTopology: { + keras_version: "2.11.0", + backend: "tensorflow", + model_config: { + class_name: "Functional", + config: { + name: "model", + layers: [ + { + class_name: "InputLayer", + config: { + batch_input_shape: [null, 224, 224, 3], + dtype: "float32", + sparse: false, + ragged: false, + name: "input_1", + }, + name: "input_1", + inbound_nodes: [], + }, + { + class_name: "Functional", + config: { + name: "mobilenetv2_1.00_224", + layers: [ + { + class_name: "InputLayer", + config: { + batch_input_shape: [null, 224, 224, 3], + dtype: "float32", + sparse: false, + ragged: false, + name: "input_2", + }, + name: "input_2", + inbound_nodes: [], + }, + { + class_name: "Conv2D", + config: { + name: "Conv1", + trainable: true, + dtype: "float32", + filters: 32, + kernel_size: [3, 3], + strides: [2, 2], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "Conv1", + inbound_nodes: [[["input_2", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "bn_Conv1", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "bn_Conv1", + inbound_nodes: [[["Conv1", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "Conv1_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "Conv1_relu", + inbound_nodes: [[["bn_Conv1", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "expanded_conv_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "expanded_conv_depthwise", + inbound_nodes: [[["Conv1_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "expanded_conv_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "expanded_conv_depthwise_BN", + inbound_nodes: [[["expanded_conv_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "expanded_conv_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "expanded_conv_depthwise_relu", + inbound_nodes: [[["expanded_conv_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "expanded_conv_project", + trainable: true, + dtype: "float32", + filters: 16, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "expanded_conv_project", + inbound_nodes: [[["expanded_conv_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "expanded_conv_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "expanded_conv_project_BN", + inbound_nodes: [[["expanded_conv_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_1_expand", + trainable: true, + dtype: "float32", + filters: 96, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_1_expand", + inbound_nodes: [[["expanded_conv_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_1_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_1_expand_BN", + inbound_nodes: [[["block_1_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_1_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_1_expand_relu", + inbound_nodes: [[["block_1_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_1_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_1_pad", + inbound_nodes: [[["block_1_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_1_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_1_depthwise", + inbound_nodes: [[["block_1_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_1_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_1_depthwise_BN", + inbound_nodes: [[["block_1_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_1_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_1_depthwise_relu", + inbound_nodes: [[["block_1_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_1_project", + trainable: true, + dtype: "float32", + filters: 24, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_1_project", + inbound_nodes: [[["block_1_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_1_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_1_project_BN", + inbound_nodes: [[["block_1_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_2_expand", + trainable: true, + dtype: "float32", + filters: 144, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_2_expand", + inbound_nodes: [[["block_1_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_2_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_2_expand_BN", + inbound_nodes: [[["block_2_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_2_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_2_expand_relu", + inbound_nodes: [[["block_2_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_2_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_2_depthwise", + inbound_nodes: [[["block_2_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_2_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_2_depthwise_BN", + inbound_nodes: [[["block_2_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_2_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_2_depthwise_relu", + inbound_nodes: [[["block_2_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_2_project", + trainable: true, + dtype: "float32", + filters: 24, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_2_project", + inbound_nodes: [[["block_2_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_2_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_2_project_BN", + inbound_nodes: [[["block_2_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_2_add", + trainable: true, + dtype: "float32", + }, + name: "block_2_add", + inbound_nodes: [ + [ + ["block_1_project_BN", 0, 0, {}], + ["block_2_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_3_expand", + trainable: true, + dtype: "float32", + filters: 144, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_3_expand", + inbound_nodes: [[["block_2_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_3_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_3_expand_BN", + inbound_nodes: [[["block_3_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_3_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_3_expand_relu", + inbound_nodes: [[["block_3_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_3_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_3_pad", + inbound_nodes: [[["block_3_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_3_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_3_depthwise", + inbound_nodes: [[["block_3_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_3_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_3_depthwise_BN", + inbound_nodes: [[["block_3_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_3_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_3_depthwise_relu", + inbound_nodes: [[["block_3_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_3_project", + trainable: true, + dtype: "float32", + filters: 32, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_3_project", + inbound_nodes: [[["block_3_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_3_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_3_project_BN", + inbound_nodes: [[["block_3_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_4_expand", + trainable: true, + dtype: "float32", + filters: 192, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_4_expand", + inbound_nodes: [[["block_3_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_4_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_4_expand_BN", + inbound_nodes: [[["block_4_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_4_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_4_expand_relu", + inbound_nodes: [[["block_4_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_4_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_4_depthwise", + inbound_nodes: [[["block_4_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_4_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_4_depthwise_BN", + inbound_nodes: [[["block_4_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_4_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_4_depthwise_relu", + inbound_nodes: [[["block_4_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_4_project", + trainable: true, + dtype: "float32", + filters: 32, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_4_project", + inbound_nodes: [[["block_4_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_4_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_4_project_BN", + inbound_nodes: [[["block_4_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_4_add", + trainable: true, + dtype: "float32", + }, + name: "block_4_add", + inbound_nodes: [ + [ + ["block_3_project_BN", 0, 0, {}], + ["block_4_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_5_expand", + trainable: true, + dtype: "float32", + filters: 192, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_5_expand", + inbound_nodes: [[["block_4_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_5_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_5_expand_BN", + inbound_nodes: [[["block_5_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_5_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_5_expand_relu", + inbound_nodes: [[["block_5_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_5_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_5_depthwise", + inbound_nodes: [[["block_5_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_5_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_5_depthwise_BN", + inbound_nodes: [[["block_5_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_5_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_5_depthwise_relu", + inbound_nodes: [[["block_5_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_5_project", + trainable: true, + dtype: "float32", + filters: 32, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_5_project", + inbound_nodes: [[["block_5_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_5_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_5_project_BN", + inbound_nodes: [[["block_5_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_5_add", + trainable: true, + dtype: "float32", + }, + name: "block_5_add", + inbound_nodes: [ + [ + ["block_4_add", 0, 0, {}], + ["block_5_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_6_expand", + trainable: true, + dtype: "float32", + filters: 192, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_6_expand", + inbound_nodes: [[["block_5_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_6_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_6_expand_BN", + inbound_nodes: [[["block_6_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_6_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_6_expand_relu", + inbound_nodes: [[["block_6_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_6_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_6_pad", + inbound_nodes: [[["block_6_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_6_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_6_depthwise", + inbound_nodes: [[["block_6_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_6_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_6_depthwise_BN", + inbound_nodes: [[["block_6_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_6_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_6_depthwise_relu", + inbound_nodes: [[["block_6_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_6_project", + trainable: true, + dtype: "float32", + filters: 64, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_6_project", + inbound_nodes: [[["block_6_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_6_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_6_project_BN", + inbound_nodes: [[["block_6_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_7_expand", + trainable: true, + dtype: "float32", + filters: 384, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_7_expand", + inbound_nodes: [[["block_6_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_7_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_7_expand_BN", + inbound_nodes: [[["block_7_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_7_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_7_expand_relu", + inbound_nodes: [[["block_7_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_7_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_7_depthwise", + inbound_nodes: [[["block_7_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_7_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_7_depthwise_BN", + inbound_nodes: [[["block_7_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_7_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_7_depthwise_relu", + inbound_nodes: [[["block_7_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_7_project", + trainable: true, + dtype: "float32", + filters: 64, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_7_project", + inbound_nodes: [[["block_7_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_7_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_7_project_BN", + inbound_nodes: [[["block_7_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_7_add", + trainable: true, + dtype: "float32", + }, + name: "block_7_add", + inbound_nodes: [ + [ + ["block_6_project_BN", 0, 0, {}], + ["block_7_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_8_expand", + trainable: true, + dtype: "float32", + filters: 384, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_8_expand", + inbound_nodes: [[["block_7_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_8_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_8_expand_BN", + inbound_nodes: [[["block_8_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_8_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_8_expand_relu", + inbound_nodes: [[["block_8_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_8_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_8_depthwise", + inbound_nodes: [[["block_8_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_8_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_8_depthwise_BN", + inbound_nodes: [[["block_8_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_8_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_8_depthwise_relu", + inbound_nodes: [[["block_8_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_8_project", + trainable: true, + dtype: "float32", + filters: 64, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_8_project", + inbound_nodes: [[["block_8_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_8_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_8_project_BN", + inbound_nodes: [[["block_8_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_8_add", + trainable: true, + dtype: "float32", + }, + name: "block_8_add", + inbound_nodes: [ + [ + ["block_7_add", 0, 0, {}], + ["block_8_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_9_expand", + trainable: true, + dtype: "float32", + filters: 384, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_9_expand", + inbound_nodes: [[["block_8_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_9_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_9_expand_BN", + inbound_nodes: [[["block_9_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_9_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_9_expand_relu", + inbound_nodes: [[["block_9_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_9_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_9_depthwise", + inbound_nodes: [[["block_9_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_9_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_9_depthwise_BN", + inbound_nodes: [[["block_9_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_9_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_9_depthwise_relu", + inbound_nodes: [[["block_9_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_9_project", + trainable: true, + dtype: "float32", + filters: 64, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_9_project", + inbound_nodes: [[["block_9_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_9_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_9_project_BN", + inbound_nodes: [[["block_9_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_9_add", + trainable: true, + dtype: "float32", + }, + name: "block_9_add", + inbound_nodes: [ + [ + ["block_8_add", 0, 0, {}], + ["block_9_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_10_expand", + trainable: true, + dtype: "float32", + filters: 384, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_10_expand", + inbound_nodes: [[["block_9_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_10_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_10_expand_BN", + inbound_nodes: [[["block_10_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_10_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_10_expand_relu", + inbound_nodes: [[["block_10_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_10_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_10_depthwise", + inbound_nodes: [[["block_10_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_10_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_10_depthwise_BN", + inbound_nodes: [[["block_10_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_10_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_10_depthwise_relu", + inbound_nodes: [[["block_10_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_10_project", + trainable: true, + dtype: "float32", + filters: 96, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_10_project", + inbound_nodes: [[["block_10_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_10_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_10_project_BN", + inbound_nodes: [[["block_10_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_11_expand", + trainable: true, + dtype: "float32", + filters: 576, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_11_expand", + inbound_nodes: [[["block_10_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_11_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_11_expand_BN", + inbound_nodes: [[["block_11_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_11_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_11_expand_relu", + inbound_nodes: [[["block_11_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_11_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_11_depthwise", + inbound_nodes: [[["block_11_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_11_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_11_depthwise_BN", + inbound_nodes: [[["block_11_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_11_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_11_depthwise_relu", + inbound_nodes: [[["block_11_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_11_project", + trainable: true, + dtype: "float32", + filters: 96, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_11_project", + inbound_nodes: [[["block_11_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_11_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_11_project_BN", + inbound_nodes: [[["block_11_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_11_add", + trainable: true, + dtype: "float32", + }, + name: "block_11_add", + inbound_nodes: [ + [ + ["block_10_project_BN", 0, 0, {}], + ["block_11_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_12_expand", + trainable: true, + dtype: "float32", + filters: 576, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_12_expand", + inbound_nodes: [[["block_11_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_12_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_12_expand_BN", + inbound_nodes: [[["block_12_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_12_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_12_expand_relu", + inbound_nodes: [[["block_12_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_12_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_12_depthwise", + inbound_nodes: [[["block_12_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_12_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_12_depthwise_BN", + inbound_nodes: [[["block_12_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_12_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_12_depthwise_relu", + inbound_nodes: [[["block_12_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_12_project", + trainable: true, + dtype: "float32", + filters: 96, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_12_project", + inbound_nodes: [[["block_12_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_12_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_12_project_BN", + inbound_nodes: [[["block_12_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_12_add", + trainable: true, + dtype: "float32", + }, + name: "block_12_add", + inbound_nodes: [ + [ + ["block_11_add", 0, 0, {}], + ["block_12_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_13_expand", + trainable: true, + dtype: "float32", + filters: 576, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_13_expand", + inbound_nodes: [[["block_12_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_13_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_13_expand_BN", + inbound_nodes: [[["block_13_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_13_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_13_expand_relu", + inbound_nodes: [[["block_13_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_13_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_13_pad", + inbound_nodes: [[["block_13_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_13_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_13_depthwise", + inbound_nodes: [[["block_13_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_13_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_13_depthwise_BN", + inbound_nodes: [[["block_13_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_13_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_13_depthwise_relu", + inbound_nodes: [[["block_13_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_13_project", + trainable: true, + dtype: "float32", + filters: 160, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_13_project", + inbound_nodes: [[["block_13_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_13_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_13_project_BN", + inbound_nodes: [[["block_13_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_14_expand", + trainable: true, + dtype: "float32", + filters: 960, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_14_expand", + inbound_nodes: [[["block_13_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_14_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_14_expand_BN", + inbound_nodes: [[["block_14_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_14_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_14_expand_relu", + inbound_nodes: [[["block_14_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_14_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_14_depthwise", + inbound_nodes: [[["block_14_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_14_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_14_depthwise_BN", + inbound_nodes: [[["block_14_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_14_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_14_depthwise_relu", + inbound_nodes: [[["block_14_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_14_project", + trainable: true, + dtype: "float32", + filters: 160, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_14_project", + inbound_nodes: [[["block_14_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_14_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_14_project_BN", + inbound_nodes: [[["block_14_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_14_add", + trainable: true, + dtype: "float32", + }, + name: "block_14_add", + inbound_nodes: [ + [ + ["block_13_project_BN", 0, 0, {}], + ["block_14_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_15_expand", + trainable: true, + dtype: "float32", + filters: 960, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_15_expand", + inbound_nodes: [[["block_14_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_15_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_15_expand_BN", + inbound_nodes: [[["block_15_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_15_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_15_expand_relu", + inbound_nodes: [[["block_15_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_15_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_15_depthwise", + inbound_nodes: [[["block_15_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_15_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_15_depthwise_BN", + inbound_nodes: [[["block_15_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_15_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_15_depthwise_relu", + inbound_nodes: [[["block_15_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_15_project", + trainable: true, + dtype: "float32", + filters: 160, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_15_project", + inbound_nodes: [[["block_15_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_15_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_15_project_BN", + inbound_nodes: [[["block_15_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { + name: "block_15_add", + trainable: true, + dtype: "float32", + }, + name: "block_15_add", + inbound_nodes: [ + [ + ["block_14_add", 0, 0, {}], + ["block_15_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_16_expand", + trainable: true, + dtype: "float32", + filters: 960, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_16_expand", + inbound_nodes: [[["block_15_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_16_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_16_expand_BN", + inbound_nodes: [[["block_16_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_16_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_16_expand_relu", + inbound_nodes: [[["block_16_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_16_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_16_depthwise", + inbound_nodes: [[["block_16_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_16_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_16_depthwise_BN", + inbound_nodes: [[["block_16_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_16_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_16_depthwise_relu", + inbound_nodes: [[["block_16_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_16_project", + trainable: true, + dtype: "float32", + filters: 320, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_16_project", + inbound_nodes: [[["block_16_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_16_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_16_project_BN", + inbound_nodes: [[["block_16_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "Conv_1", + trainable: true, + dtype: "float32", + filters: 1280, + kernel_size: [1, 1], + strides: [1, 1], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "Conv_1", + inbound_nodes: [[["block_16_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "Conv_1_bn", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { + class_name: "Zeros", + config: {}, + }, + moving_variance_initializer: { + class_name: "Ones", + config: {}, + }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "Conv_1_bn", + inbound_nodes: [[["Conv_1", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "out_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "out_relu", + inbound_nodes: [[["Conv_1_bn", 0, 0, {}]]], + }, + ], + input_layers: [["input_2", 0, 0]], + output_layers: [["out_relu", 0, 0]], + }, + name: "mobilenetv2_1.00_224", + inbound_nodes: [[["input_1", 0, 0, { training: false }]]], + }, + { + class_name: "GlobalAveragePooling2D", + config: { + name: "global_average_pooling2d", + trainable: true, + dtype: "float32", + data_format: "channels_last", + keepdims: false, + }, + name: "global_average_pooling2d", + inbound_nodes: [[["mobilenetv2_1.00_224", 1, 0, {}]]], + }, + { + class_name: "Dropout", + config: { + name: "dropout", + trainable: true, + dtype: "float32", + rate: 0.2, + noise_shape: null, + seed: null, + }, + name: "dropout", + inbound_nodes: [[["global_average_pooling2d", 0, 0, {}]]], + }, + { + class_name: "Dense", + config: { + name: "dense", + trainable: true, + dtype: "float32", + units: 127, + activation: "softmax", + use_bias: true, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "dense", + inbound_nodes: [[["dropout", 0, 0, {}]]], + }, + ], + input_layers: [["input_1", 0, 0]], + output_layers: [["dense", 0, 0]], + }, + }, + training_config: { + loss: "categorical_crossentropy", + metrics: [ + [ + { + class_name: "MeanMetricWrapper", + config: { + name: "accuracy", + dtype: "float32", + fn: "categorical_accuracy", + }, + }, + ], + ], + weighted_metrics: null, + loss_weights: null, + optimizer_config: { + class_name: "Custom>Adam", + config: { + name: "Adam", + weight_decay: null, + clipnorm: null, + global_clipnorm: null, + clipvalue: null, + use_ema: false, + ema_momentum: 0.99, + ema_overwrite_frequency: null, + jit_compile: true, + is_legacy_optimizer: false, + learning_rate: { + class_name: "ExponentialDecay", + config: { + initial_learning_rate: 1e-5, + decay_steps: 500, + decay_rate: 0.96, + staircase: true, + name: null, + }, + }, + beta_1: 0.9, + beta_2: 0.999, + epsilon: 1e-7, + amsgrad: false, + }, + }, + }, + }, + weightsManifest: [ + { + paths: ["group1-shard1of1.bin"], + weights: [ + { name: "dense/kernel", shape: [1280, 127], dtype: "float32" }, + { name: "dense/bias", shape: [127], dtype: "float32" }, + { name: "Conv1/kernel", shape: [3, 3, 3, 32], dtype: "float32" }, + { name: "bn_Conv1/gamma", shape: [32], dtype: "float32" }, + { name: "bn_Conv1/beta", shape: [32], dtype: "float32" }, + { + name: "expanded_conv_depthwise/depthwise_kernel", + shape: [3, 3, 32, 1], + dtype: "float32", + }, + { + name: "expanded_conv_depthwise_BN/gamma", + shape: [32], + dtype: "float32", + }, + { + name: "expanded_conv_depthwise_BN/beta", + shape: [32], + dtype: "float32", + }, + { + name: "expanded_conv_project/kernel", + shape: [1, 1, 32, 16], + dtype: "float32", + }, + { + name: "expanded_conv_project_BN/gamma", + shape: [16], + dtype: "float32", + }, + { + name: "expanded_conv_project_BN/beta", + shape: [16], + dtype: "float32", + }, + { + name: "block_1_expand/kernel", + shape: [1, 1, 16, 96], + dtype: "float32", + }, + { name: "block_1_expand_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_1_expand_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_1_depthwise/depthwise_kernel", + shape: [3, 3, 96, 1], + dtype: "float32", + }, + { name: "block_1_depthwise_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_1_depthwise_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_1_project/kernel", + shape: [1, 1, 96, 24], + dtype: "float32", + }, + { name: "block_1_project_BN/gamma", shape: [24], dtype: "float32" }, + { name: "block_1_project_BN/beta", shape: [24], dtype: "float32" }, + { + name: "block_2_expand/kernel", + shape: [1, 1, 24, 144], + dtype: "float32", + }, + { name: "block_2_expand_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_2_expand_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_2_depthwise/depthwise_kernel", + shape: [3, 3, 144, 1], + dtype: "float32", + }, + { name: "block_2_depthwise_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_2_depthwise_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_2_project/kernel", + shape: [1, 1, 144, 24], + dtype: "float32", + }, + { name: "block_2_project_BN/gamma", shape: [24], dtype: "float32" }, + { name: "block_2_project_BN/beta", shape: [24], dtype: "float32" }, + { + name: "block_3_expand/kernel", + shape: [1, 1, 24, 144], + dtype: "float32", + }, + { name: "block_3_expand_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_3_expand_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_3_depthwise/depthwise_kernel", + shape: [3, 3, 144, 1], + dtype: "float32", + }, + { name: "block_3_depthwise_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_3_depthwise_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_3_project/kernel", + shape: [1, 1, 144, 32], + dtype: "float32", + }, + { name: "block_3_project_BN/gamma", shape: [32], dtype: "float32" }, + { name: "block_3_project_BN/beta", shape: [32], dtype: "float32" }, + { + name: "block_4_expand/kernel", + shape: [1, 1, 32, 192], + dtype: "float32", + }, + { name: "block_4_expand_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_4_expand_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_4_depthwise/depthwise_kernel", + shape: [3, 3, 192, 1], + dtype: "float32", + }, + { name: "block_4_depthwise_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_4_depthwise_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_4_project/kernel", + shape: [1, 1, 192, 32], + dtype: "float32", + }, + { name: "block_4_project_BN/gamma", shape: [32], dtype: "float32" }, + { name: "block_4_project_BN/beta", shape: [32], dtype: "float32" }, + { + name: "block_5_expand/kernel", + shape: [1, 1, 32, 192], + dtype: "float32", + }, + { name: "block_5_expand_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_5_expand_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_5_depthwise/depthwise_kernel", + shape: [3, 3, 192, 1], + dtype: "float32", + }, + { name: "block_5_depthwise_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_5_depthwise_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_5_project/kernel", + shape: [1, 1, 192, 32], + dtype: "float32", + }, + { name: "block_5_project_BN/gamma", shape: [32], dtype: "float32" }, + { name: "block_5_project_BN/beta", shape: [32], dtype: "float32" }, + { + name: "block_6_expand/kernel", + shape: [1, 1, 32, 192], + dtype: "float32", + }, + { name: "block_6_expand_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_6_expand_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_6_depthwise/depthwise_kernel", + shape: [3, 3, 192, 1], + dtype: "float32", + }, + { name: "block_6_depthwise_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_6_depthwise_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_6_project/kernel", + shape: [1, 1, 192, 64], + dtype: "float32", + }, + { name: "block_6_project_BN/gamma", shape: [64], dtype: "float32" }, + { name: "block_6_project_BN/beta", shape: [64], dtype: "float32" }, + { + name: "block_7_expand/kernel", + shape: [1, 1, 64, 384], + dtype: "float32", + }, + { name: "block_7_expand_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_7_expand_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_7_depthwise/depthwise_kernel", + shape: [3, 3, 384, 1], + dtype: "float32", + }, + { name: "block_7_depthwise_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_7_depthwise_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_7_project/kernel", + shape: [1, 1, 384, 64], + dtype: "float32", + }, + { name: "block_7_project_BN/gamma", shape: [64], dtype: "float32" }, + { name: "block_7_project_BN/beta", shape: [64], dtype: "float32" }, + { + name: "block_8_expand/kernel", + shape: [1, 1, 64, 384], + dtype: "float32", + }, + { name: "block_8_expand_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_8_expand_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_8_depthwise/depthwise_kernel", + shape: [3, 3, 384, 1], + dtype: "float32", + }, + { name: "block_8_depthwise_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_8_depthwise_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_8_project/kernel", + shape: [1, 1, 384, 64], + dtype: "float32", + }, + { name: "block_8_project_BN/gamma", shape: [64], dtype: "float32" }, + { name: "block_8_project_BN/beta", shape: [64], dtype: "float32" }, + { + name: "block_9_expand/kernel", + shape: [1, 1, 64, 384], + dtype: "float32", + }, + { name: "block_9_expand_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_9_expand_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_9_depthwise/depthwise_kernel", + shape: [3, 3, 384, 1], + dtype: "float32", + }, + { name: "block_9_depthwise_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_9_depthwise_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_9_project/kernel", + shape: [1, 1, 384, 64], + dtype: "float32", + }, + { name: "block_9_project_BN/gamma", shape: [64], dtype: "float32" }, + { name: "block_9_project_BN/beta", shape: [64], dtype: "float32" }, + { + name: "block_10_expand/kernel", + shape: [1, 1, 64, 384], + dtype: "float32", + }, + { name: "block_10_expand_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_10_expand_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_10_depthwise/depthwise_kernel", + shape: [3, 3, 384, 1], + dtype: "float32", + }, + { name: "block_10_depthwise_BN/gamma", shape: [384], dtype: "float32" }, + { name: "block_10_depthwise_BN/beta", shape: [384], dtype: "float32" }, + { + name: "block_10_project/kernel", + shape: [1, 1, 384, 96], + dtype: "float32", + }, + { name: "block_10_project_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_10_project_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_11_expand/kernel", + shape: [1, 1, 96, 576], + dtype: "float32", + }, + { name: "block_11_expand_BN/gamma", shape: [576], dtype: "float32" }, + { name: "block_11_expand_BN/beta", shape: [576], dtype: "float32" }, + { + name: "block_11_depthwise/depthwise_kernel", + shape: [3, 3, 576, 1], + dtype: "float32", + }, + { name: "block_11_depthwise_BN/gamma", shape: [576], dtype: "float32" }, + { name: "block_11_depthwise_BN/beta", shape: [576], dtype: "float32" }, + { + name: "block_11_project/kernel", + shape: [1, 1, 576, 96], + dtype: "float32", + }, + { name: "block_11_project_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_11_project_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_12_expand/kernel", + shape: [1, 1, 96, 576], + dtype: "float32", + }, + { name: "block_12_expand_BN/gamma", shape: [576], dtype: "float32" }, + { name: "block_12_expand_BN/beta", shape: [576], dtype: "float32" }, + { + name: "block_12_depthwise/depthwise_kernel", + shape: [3, 3, 576, 1], + dtype: "float32", + }, + { name: "block_12_depthwise_BN/gamma", shape: [576], dtype: "float32" }, + { name: "block_12_depthwise_BN/beta", shape: [576], dtype: "float32" }, + { + name: "block_12_project/kernel", + shape: [1, 1, 576, 96], + dtype: "float32", + }, + { name: "block_12_project_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_12_project_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_13_expand/kernel", + shape: [1, 1, 96, 576], + dtype: "float32", + }, + { name: "block_13_expand_BN/gamma", shape: [576], dtype: "float32" }, + { name: "block_13_expand_BN/beta", shape: [576], dtype: "float32" }, + { + name: "block_13_depthwise/depthwise_kernel", + shape: [3, 3, 576, 1], + dtype: "float32", + }, + { name: "block_13_depthwise_BN/gamma", shape: [576], dtype: "float32" }, + { name: "block_13_depthwise_BN/beta", shape: [576], dtype: "float32" }, + { + name: "block_13_project/kernel", + shape: [1, 1, 576, 160], + dtype: "float32", + }, + { name: "block_13_project_BN/gamma", shape: [160], dtype: "float32" }, + { name: "block_13_project_BN/beta", shape: [160], dtype: "float32" }, + { + name: "block_14_expand/kernel", + shape: [1, 1, 160, 960], + dtype: "float32", + }, + { name: "block_14_expand_BN/gamma", shape: [960], dtype: "float32" }, + { name: "block_14_expand_BN/beta", shape: [960], dtype: "float32" }, + { + name: "block_14_depthwise/depthwise_kernel", + shape: [3, 3, 960, 1], + dtype: "float32", + }, + { name: "block_14_depthwise_BN/gamma", shape: [960], dtype: "float32" }, + { name: "block_14_depthwise_BN/beta", shape: [960], dtype: "float32" }, + { + name: "block_14_project/kernel", + shape: [1, 1, 960, 160], + dtype: "float32", + }, + { name: "block_14_project_BN/gamma", shape: [160], dtype: "float32" }, + { name: "block_14_project_BN/beta", shape: [160], dtype: "float32" }, + { + name: "block_15_expand/kernel", + shape: [1, 1, 160, 960], + dtype: "float32", + }, + { name: "block_15_expand_BN/gamma", shape: [960], dtype: "float32" }, + { name: "block_15_expand_BN/beta", shape: [960], dtype: "float32" }, + { + name: "block_15_depthwise/depthwise_kernel", + shape: [3, 3, 960, 1], + dtype: "float32", + }, + { name: "block_15_depthwise_BN/gamma", shape: [960], dtype: "float32" }, + { name: "block_15_depthwise_BN/beta", shape: [960], dtype: "float32" }, + { + name: "block_15_project/kernel", + shape: [1, 1, 960, 160], + dtype: "float32", + }, + { name: "block_15_project_BN/gamma", shape: [160], dtype: "float32" }, + { name: "block_15_project_BN/beta", shape: [160], dtype: "float32" }, + { + name: "block_16_expand/kernel", + shape: [1, 1, 160, 960], + dtype: "float32", + }, + { name: "block_16_expand_BN/gamma", shape: [960], dtype: "float32" }, + { name: "block_16_expand_BN/beta", shape: [960], dtype: "float32" }, + { + name: "block_16_depthwise/depthwise_kernel", + shape: [3, 3, 960, 1], + dtype: "float32", + }, + { name: "block_16_depthwise_BN/gamma", shape: [960], dtype: "float32" }, + { name: "block_16_depthwise_BN/beta", shape: [960], dtype: "float32" }, + { + name: "block_16_project/kernel", + shape: [1, 1, 960, 320], + dtype: "float32", + }, + { name: "block_16_project_BN/gamma", shape: [320], dtype: "float32" }, + { name: "block_16_project_BN/beta", shape: [320], dtype: "float32" }, + { name: "Conv_1/kernel", shape: [1, 1, 320, 1280], dtype: "float32" }, + { name: "Conv_1_bn/gamma", shape: [1280], dtype: "float32" }, + { name: "Conv_1_bn/beta", shape: [1280], dtype: "float32" }, + { name: "bn_Conv1/moving_mean", shape: [32], dtype: "float32" }, + { name: "bn_Conv1/moving_variance", shape: [32], dtype: "float32" }, + { + name: "expanded_conv_depthwise_BN/moving_mean", + shape: [32], + dtype: "float32", + }, + { + name: "expanded_conv_depthwise_BN/moving_variance", + shape: [32], + dtype: "float32", + }, + { + name: "expanded_conv_project_BN/moving_mean", + shape: [16], + dtype: "float32", + }, + { + name: "expanded_conv_project_BN/moving_variance", + shape: [16], + dtype: "float32", + }, + { + name: "block_1_expand_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_1_expand_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_1_depthwise_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_1_depthwise_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_1_project_BN/moving_mean", + shape: [24], + dtype: "float32", + }, + { + name: "block_1_project_BN/moving_variance", + shape: [24], + dtype: "float32", + }, + { + name: "block_2_expand_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_2_expand_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_2_depthwise_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_2_depthwise_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_2_project_BN/moving_mean", + shape: [24], + dtype: "float32", + }, + { + name: "block_2_project_BN/moving_variance", + shape: [24], + dtype: "float32", + }, + { + name: "block_3_expand_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_3_expand_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_3_depthwise_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_3_depthwise_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_3_project_BN/moving_mean", + shape: [32], + dtype: "float32", + }, + { + name: "block_3_project_BN/moving_variance", + shape: [32], + dtype: "float32", + }, + { + name: "block_4_expand_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_4_expand_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_4_depthwise_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_4_depthwise_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_4_project_BN/moving_mean", + shape: [32], + dtype: "float32", + }, + { + name: "block_4_project_BN/moving_variance", + shape: [32], + dtype: "float32", + }, + { + name: "block_5_expand_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_5_expand_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_5_depthwise_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_5_depthwise_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_5_project_BN/moving_mean", + shape: [32], + dtype: "float32", + }, + { + name: "block_5_project_BN/moving_variance", + shape: [32], + dtype: "float32", + }, + { + name: "block_6_expand_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_6_expand_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_6_depthwise_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_6_depthwise_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_6_project_BN/moving_mean", + shape: [64], + dtype: "float32", + }, + { + name: "block_6_project_BN/moving_variance", + shape: [64], + dtype: "float32", + }, + { + name: "block_7_expand_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_7_expand_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_7_depthwise_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_7_depthwise_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_7_project_BN/moving_mean", + shape: [64], + dtype: "float32", + }, + { + name: "block_7_project_BN/moving_variance", + shape: [64], + dtype: "float32", + }, + { + name: "block_8_expand_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_8_expand_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_8_depthwise_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_8_depthwise_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_8_project_BN/moving_mean", + shape: [64], + dtype: "float32", + }, + { + name: "block_8_project_BN/moving_variance", + shape: [64], + dtype: "float32", + }, + { + name: "block_9_expand_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_9_expand_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_9_depthwise_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_9_depthwise_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_9_project_BN/moving_mean", + shape: [64], + dtype: "float32", + }, + { + name: "block_9_project_BN/moving_variance", + shape: [64], + dtype: "float32", + }, + { + name: "block_10_expand_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_10_expand_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_10_depthwise_BN/moving_mean", + shape: [384], + dtype: "float32", + }, + { + name: "block_10_depthwise_BN/moving_variance", + shape: [384], + dtype: "float32", + }, + { + name: "block_10_project_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_10_project_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_11_expand_BN/moving_mean", + shape: [576], + dtype: "float32", + }, + { + name: "block_11_expand_BN/moving_variance", + shape: [576], + dtype: "float32", + }, + { + name: "block_11_depthwise_BN/moving_mean", + shape: [576], + dtype: "float32", + }, + { + name: "block_11_depthwise_BN/moving_variance", + shape: [576], + dtype: "float32", + }, + { + name: "block_11_project_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_11_project_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_12_expand_BN/moving_mean", + shape: [576], + dtype: "float32", + }, + { + name: "block_12_expand_BN/moving_variance", + shape: [576], + dtype: "float32", + }, + { + name: "block_12_depthwise_BN/moving_mean", + shape: [576], + dtype: "float32", + }, + { + name: "block_12_depthwise_BN/moving_variance", + shape: [576], + dtype: "float32", + }, + { + name: "block_12_project_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_12_project_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_13_expand_BN/moving_mean", + shape: [576], + dtype: "float32", + }, + { + name: "block_13_expand_BN/moving_variance", + shape: [576], + dtype: "float32", + }, + { + name: "block_13_depthwise_BN/moving_mean", + shape: [576], + dtype: "float32", + }, + { + name: "block_13_depthwise_BN/moving_variance", + shape: [576], + dtype: "float32", + }, + { + name: "block_13_project_BN/moving_mean", + shape: [160], + dtype: "float32", + }, + { + name: "block_13_project_BN/moving_variance", + shape: [160], + dtype: "float32", + }, + { + name: "block_14_expand_BN/moving_mean", + shape: [960], + dtype: "float32", + }, + { + name: "block_14_expand_BN/moving_variance", + shape: [960], + dtype: "float32", + }, + { + name: "block_14_depthwise_BN/moving_mean", + shape: [960], + dtype: "float32", + }, + { + name: "block_14_depthwise_BN/moving_variance", + shape: [960], + dtype: "float32", + }, + { + name: "block_14_project_BN/moving_mean", + shape: [160], + dtype: "float32", + }, + { + name: "block_14_project_BN/moving_variance", + shape: [160], + dtype: "float32", + }, + { + name: "block_15_expand_BN/moving_mean", + shape: [960], + dtype: "float32", + }, + { + name: "block_15_expand_BN/moving_variance", + shape: [960], + dtype: "float32", + }, + { + name: "block_15_depthwise_BN/moving_mean", + shape: [960], + dtype: "float32", + }, + { + name: "block_15_depthwise_BN/moving_variance", + shape: [960], + dtype: "float32", + }, + { + name: "block_15_project_BN/moving_mean", + shape: [160], + dtype: "float32", + }, + { + name: "block_15_project_BN/moving_variance", + shape: [160], + dtype: "float32", + }, + { + name: "block_16_expand_BN/moving_mean", + shape: [960], + dtype: "float32", + }, + { + name: "block_16_expand_BN/moving_variance", + shape: [960], + dtype: "float32", + }, + { + name: "block_16_depthwise_BN/moving_mean", + shape: [960], + dtype: "float32", + }, + { + name: "block_16_depthwise_BN/moving_variance", + shape: [960], + dtype: "float32", + }, + { + name: "block_16_project_BN/moving_mean", + shape: [320], + dtype: "float32", + }, + { + name: "block_16_project_BN/moving_variance", + shape: [320], + dtype: "float32", + }, + { name: "Conv_1_bn/moving_mean", shape: [1280], dtype: "float32" }, + { name: "Conv_1_bn/moving_variance", shape: [1280], dtype: "float32" }, + ], + }, + ], +}; diff --git a/discojs/src/default_tasks/index.ts b/discojs/src/default_tasks/index.ts index e85e0f216..9cffc1e51 100644 --- a/discojs/src/default_tasks/index.ts +++ b/discojs/src/default_tasks/index.ts @@ -1,8 +1,8 @@ -export { cifar10 } from './cifar10.js' -export { geotags } from './geotags.js' +export { cifar10 } from './cifar10/index.js' +export { geotags } from './geotags/index.js' export { lusCovid } from './lus_covid.js' export { mnist } from './mnist.js' -export { simpleFace } from './simple_face.js' +export { simpleFace } from './simple_face/index.js' export { skinMnist } from './skin_mnist.js' export { titanic } from './titanic.js' export { wikitext } from './wikitext.js' diff --git a/discojs/src/default_tasks/simple_face.ts b/discojs/src/default_tasks/simple_face/index.ts similarity index 85% rename from discojs/src/default_tasks/simple_face.ts rename to discojs/src/default_tasks/simple_face/index.ts index 8d5df19b3..37af0795d 100644 --- a/discojs/src/default_tasks/simple_face.ts +++ b/discojs/src/default_tasks/simple_face/index.ts @@ -1,7 +1,9 @@ import * as tf from '@tensorflow/tfjs' -import type { Model, Task, TaskProvider } from '../index.js' -import { data, models } from '../index.js' +import type { Model, Task, TaskProvider } from '../../index.js' +import { data, models } from '../../index.js' + +import baseModel from './model.js' export const simpleFace: TaskProvider = { getTask (): Task { @@ -38,9 +40,9 @@ export const simpleFace: TaskProvider = { }, async getModel (): Promise { - const model = await tf.loadLayersModel( - 'https://storage.googleapis.com/deai-313515.appspot.com/models/mobileNetV2_35_alpha_2_classes/model.json' - ) + const model = await tf.loadLayersModel({ + load: async () => Promise.resolve(baseModel), + }); model.compile({ optimizer: tf.train.sgd(0.001), diff --git a/discojs/src/default_tasks/simple_face/model.ts b/discojs/src/default_tasks/simple_face/model.ts new file mode 100644 index 000000000..0fce45cad --- /dev/null +++ b/discojs/src/default_tasks/simple_face/model.ts @@ -0,0 +1,4301 @@ +export default { + format: "layers-model", + generatedBy: "keras v2.6.0", + convertedBy: "TensorFlow.js Converter v3.18.0", + modelTopology: { + keras_version: "2.6.0", + backend: "tensorflow", + model_config: { + class_name: "Functional", + config: { + name: "model", + layers: [ + { + class_name: "InputLayer", + config: { + batch_input_shape: [null, null, null, 3], + dtype: "float32", + sparse: false, + ragged: false, + name: "input_1", + }, + name: "input_1", + inbound_nodes: [], + }, + { + class_name: "Conv2D", + config: { + name: "Conv1", + trainable: true, + dtype: "float32", + filters: 16, + kernel_size: [3, 3], + strides: [2, 2], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "Conv1", + inbound_nodes: [[["input_1", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "bn_Conv1", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "bn_Conv1", + inbound_nodes: [[["Conv1", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "Conv1_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "Conv1_relu", + inbound_nodes: [[["bn_Conv1", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "expanded_conv_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "expanded_conv_depthwise", + inbound_nodes: [[["Conv1_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "expanded_conv_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "expanded_conv_depthwise_BN", + inbound_nodes: [[["expanded_conv_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "expanded_conv_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "expanded_conv_depthwise_relu", + inbound_nodes: [[["expanded_conv_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "expanded_conv_project", + trainable: true, + dtype: "float32", + filters: 8, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "expanded_conv_project", + inbound_nodes: [[["expanded_conv_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "expanded_conv_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "expanded_conv_project_BN", + inbound_nodes: [[["expanded_conv_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_1_expand", + trainable: true, + dtype: "float32", + filters: 48, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_1_expand", + inbound_nodes: [[["expanded_conv_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_1_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_1_expand_BN", + inbound_nodes: [[["block_1_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_1_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_1_expand_relu", + inbound_nodes: [[["block_1_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_1_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_1_pad", + inbound_nodes: [[["block_1_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_1_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_1_depthwise", + inbound_nodes: [[["block_1_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_1_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_1_depthwise_BN", + inbound_nodes: [[["block_1_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_1_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_1_depthwise_relu", + inbound_nodes: [[["block_1_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_1_project", + trainable: true, + dtype: "float32", + filters: 8, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_1_project", + inbound_nodes: [[["block_1_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_1_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_1_project_BN", + inbound_nodes: [[["block_1_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_2_expand", + trainable: true, + dtype: "float32", + filters: 48, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_2_expand", + inbound_nodes: [[["block_1_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_2_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_2_expand_BN", + inbound_nodes: [[["block_2_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_2_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_2_expand_relu", + inbound_nodes: [[["block_2_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_2_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_2_depthwise", + inbound_nodes: [[["block_2_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_2_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_2_depthwise_BN", + inbound_nodes: [[["block_2_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_2_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_2_depthwise_relu", + inbound_nodes: [[["block_2_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_2_project", + trainable: true, + dtype: "float32", + filters: 8, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_2_project", + inbound_nodes: [[["block_2_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_2_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_2_project_BN", + inbound_nodes: [[["block_2_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_2_add", trainable: true, dtype: "float32" }, + name: "block_2_add", + inbound_nodes: [ + [ + ["block_1_project_BN", 0, 0, {}], + ["block_2_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_3_expand", + trainable: true, + dtype: "float32", + filters: 48, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_3_expand", + inbound_nodes: [[["block_2_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_3_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_3_expand_BN", + inbound_nodes: [[["block_3_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_3_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_3_expand_relu", + inbound_nodes: [[["block_3_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_3_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_3_pad", + inbound_nodes: [[["block_3_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_3_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_3_depthwise", + inbound_nodes: [[["block_3_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_3_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_3_depthwise_BN", + inbound_nodes: [[["block_3_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_3_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_3_depthwise_relu", + inbound_nodes: [[["block_3_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_3_project", + trainable: true, + dtype: "float32", + filters: 16, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_3_project", + inbound_nodes: [[["block_3_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_3_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_3_project_BN", + inbound_nodes: [[["block_3_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_4_expand", + trainable: true, + dtype: "float32", + filters: 96, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_4_expand", + inbound_nodes: [[["block_3_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_4_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_4_expand_BN", + inbound_nodes: [[["block_4_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_4_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_4_expand_relu", + inbound_nodes: [[["block_4_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_4_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_4_depthwise", + inbound_nodes: [[["block_4_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_4_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_4_depthwise_BN", + inbound_nodes: [[["block_4_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_4_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_4_depthwise_relu", + inbound_nodes: [[["block_4_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_4_project", + trainable: true, + dtype: "float32", + filters: 16, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_4_project", + inbound_nodes: [[["block_4_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_4_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_4_project_BN", + inbound_nodes: [[["block_4_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_4_add", trainable: true, dtype: "float32" }, + name: "block_4_add", + inbound_nodes: [ + [ + ["block_3_project_BN", 0, 0, {}], + ["block_4_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_5_expand", + trainable: true, + dtype: "float32", + filters: 96, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_5_expand", + inbound_nodes: [[["block_4_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_5_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_5_expand_BN", + inbound_nodes: [[["block_5_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_5_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_5_expand_relu", + inbound_nodes: [[["block_5_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_5_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_5_depthwise", + inbound_nodes: [[["block_5_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_5_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_5_depthwise_BN", + inbound_nodes: [[["block_5_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_5_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_5_depthwise_relu", + inbound_nodes: [[["block_5_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_5_project", + trainable: true, + dtype: "float32", + filters: 16, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_5_project", + inbound_nodes: [[["block_5_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_5_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_5_project_BN", + inbound_nodes: [[["block_5_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_5_add", trainable: true, dtype: "float32" }, + name: "block_5_add", + inbound_nodes: [ + [ + ["block_4_add", 0, 0, {}], + ["block_5_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_6_expand", + trainable: true, + dtype: "float32", + filters: 96, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_6_expand", + inbound_nodes: [[["block_5_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_6_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_6_expand_BN", + inbound_nodes: [[["block_6_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_6_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_6_expand_relu", + inbound_nodes: [[["block_6_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_6_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_6_pad", + inbound_nodes: [[["block_6_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_6_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_6_depthwise", + inbound_nodes: [[["block_6_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_6_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_6_depthwise_BN", + inbound_nodes: [[["block_6_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_6_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_6_depthwise_relu", + inbound_nodes: [[["block_6_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_6_project", + trainable: true, + dtype: "float32", + filters: 24, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_6_project", + inbound_nodes: [[["block_6_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_6_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_6_project_BN", + inbound_nodes: [[["block_6_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_7_expand", + trainable: true, + dtype: "float32", + filters: 144, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_7_expand", + inbound_nodes: [[["block_6_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_7_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_7_expand_BN", + inbound_nodes: [[["block_7_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_7_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_7_expand_relu", + inbound_nodes: [[["block_7_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_7_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_7_depthwise", + inbound_nodes: [[["block_7_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_7_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_7_depthwise_BN", + inbound_nodes: [[["block_7_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_7_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_7_depthwise_relu", + inbound_nodes: [[["block_7_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_7_project", + trainable: true, + dtype: "float32", + filters: 24, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_7_project", + inbound_nodes: [[["block_7_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_7_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_7_project_BN", + inbound_nodes: [[["block_7_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_7_add", trainable: true, dtype: "float32" }, + name: "block_7_add", + inbound_nodes: [ + [ + ["block_6_project_BN", 0, 0, {}], + ["block_7_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_8_expand", + trainable: true, + dtype: "float32", + filters: 144, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_8_expand", + inbound_nodes: [[["block_7_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_8_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_8_expand_BN", + inbound_nodes: [[["block_8_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_8_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_8_expand_relu", + inbound_nodes: [[["block_8_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_8_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_8_depthwise", + inbound_nodes: [[["block_8_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_8_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_8_depthwise_BN", + inbound_nodes: [[["block_8_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_8_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_8_depthwise_relu", + inbound_nodes: [[["block_8_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_8_project", + trainable: true, + dtype: "float32", + filters: 24, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_8_project", + inbound_nodes: [[["block_8_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_8_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_8_project_BN", + inbound_nodes: [[["block_8_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_8_add", trainable: true, dtype: "float32" }, + name: "block_8_add", + inbound_nodes: [ + [ + ["block_7_add", 0, 0, {}], + ["block_8_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_9_expand", + trainable: true, + dtype: "float32", + filters: 144, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_9_expand", + inbound_nodes: [[["block_8_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_9_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_9_expand_BN", + inbound_nodes: [[["block_9_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_9_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_9_expand_relu", + inbound_nodes: [[["block_9_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_9_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_9_depthwise", + inbound_nodes: [[["block_9_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_9_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_9_depthwise_BN", + inbound_nodes: [[["block_9_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_9_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_9_depthwise_relu", + inbound_nodes: [[["block_9_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_9_project", + trainable: true, + dtype: "float32", + filters: 24, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_9_project", + inbound_nodes: [[["block_9_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_9_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_9_project_BN", + inbound_nodes: [[["block_9_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_9_add", trainable: true, dtype: "float32" }, + name: "block_9_add", + inbound_nodes: [ + [ + ["block_8_add", 0, 0, {}], + ["block_9_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_10_expand", + trainable: true, + dtype: "float32", + filters: 144, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_10_expand", + inbound_nodes: [[["block_9_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_10_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_10_expand_BN", + inbound_nodes: [[["block_10_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_10_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_10_expand_relu", + inbound_nodes: [[["block_10_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_10_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_10_depthwise", + inbound_nodes: [[["block_10_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_10_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_10_depthwise_BN", + inbound_nodes: [[["block_10_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_10_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_10_depthwise_relu", + inbound_nodes: [[["block_10_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_10_project", + trainable: true, + dtype: "float32", + filters: 32, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_10_project", + inbound_nodes: [[["block_10_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_10_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_10_project_BN", + inbound_nodes: [[["block_10_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_11_expand", + trainable: true, + dtype: "float32", + filters: 192, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_11_expand", + inbound_nodes: [[["block_10_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_11_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_11_expand_BN", + inbound_nodes: [[["block_11_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_11_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_11_expand_relu", + inbound_nodes: [[["block_11_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_11_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_11_depthwise", + inbound_nodes: [[["block_11_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_11_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_11_depthwise_BN", + inbound_nodes: [[["block_11_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_11_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_11_depthwise_relu", + inbound_nodes: [[["block_11_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_11_project", + trainable: true, + dtype: "float32", + filters: 32, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_11_project", + inbound_nodes: [[["block_11_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_11_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_11_project_BN", + inbound_nodes: [[["block_11_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_11_add", trainable: true, dtype: "float32" }, + name: "block_11_add", + inbound_nodes: [ + [ + ["block_10_project_BN", 0, 0, {}], + ["block_11_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_12_expand", + trainable: true, + dtype: "float32", + filters: 192, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_12_expand", + inbound_nodes: [[["block_11_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_12_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_12_expand_BN", + inbound_nodes: [[["block_12_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_12_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_12_expand_relu", + inbound_nodes: [[["block_12_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_12_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_12_depthwise", + inbound_nodes: [[["block_12_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_12_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_12_depthwise_BN", + inbound_nodes: [[["block_12_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_12_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_12_depthwise_relu", + inbound_nodes: [[["block_12_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_12_project", + trainable: true, + dtype: "float32", + filters: 32, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_12_project", + inbound_nodes: [[["block_12_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_12_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_12_project_BN", + inbound_nodes: [[["block_12_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_12_add", trainable: true, dtype: "float32" }, + name: "block_12_add", + inbound_nodes: [ + [ + ["block_11_add", 0, 0, {}], + ["block_12_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_13_expand", + trainable: true, + dtype: "float32", + filters: 192, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_13_expand", + inbound_nodes: [[["block_12_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_13_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_13_expand_BN", + inbound_nodes: [[["block_13_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_13_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_13_expand_relu", + inbound_nodes: [[["block_13_expand_BN", 0, 0, {}]]], + }, + { + class_name: "ZeroPadding2D", + config: { + name: "block_13_pad", + trainable: true, + dtype: "float32", + padding: [ + [0, 1], + [0, 1], + ], + data_format: "channels_last", + }, + name: "block_13_pad", + inbound_nodes: [[["block_13_expand_relu", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_13_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [2, 2], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_13_depthwise", + inbound_nodes: [[["block_13_pad", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_13_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_13_depthwise_BN", + inbound_nodes: [[["block_13_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_13_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_13_depthwise_relu", + inbound_nodes: [[["block_13_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_13_project", + trainable: true, + dtype: "float32", + filters: 56, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_13_project", + inbound_nodes: [[["block_13_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_13_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_13_project_BN", + inbound_nodes: [[["block_13_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_14_expand", + trainable: true, + dtype: "float32", + filters: 336, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_14_expand", + inbound_nodes: [[["block_13_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_14_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_14_expand_BN", + inbound_nodes: [[["block_14_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_14_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_14_expand_relu", + inbound_nodes: [[["block_14_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_14_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_14_depthwise", + inbound_nodes: [[["block_14_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_14_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_14_depthwise_BN", + inbound_nodes: [[["block_14_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_14_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_14_depthwise_relu", + inbound_nodes: [[["block_14_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_14_project", + trainable: true, + dtype: "float32", + filters: 56, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_14_project", + inbound_nodes: [[["block_14_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_14_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_14_project_BN", + inbound_nodes: [[["block_14_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_14_add", trainable: true, dtype: "float32" }, + name: "block_14_add", + inbound_nodes: [ + [ + ["block_13_project_BN", 0, 0, {}], + ["block_14_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_15_expand", + trainable: true, + dtype: "float32", + filters: 336, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_15_expand", + inbound_nodes: [[["block_14_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_15_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_15_expand_BN", + inbound_nodes: [[["block_15_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_15_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_15_expand_relu", + inbound_nodes: [[["block_15_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_15_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_15_depthwise", + inbound_nodes: [[["block_15_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_15_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_15_depthwise_BN", + inbound_nodes: [[["block_15_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_15_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_15_depthwise_relu", + inbound_nodes: [[["block_15_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_15_project", + trainable: true, + dtype: "float32", + filters: 56, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_15_project", + inbound_nodes: [[["block_15_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_15_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_15_project_BN", + inbound_nodes: [[["block_15_project", 0, 0, {}]]], + }, + { + class_name: "Add", + config: { name: "block_15_add", trainable: true, dtype: "float32" }, + name: "block_15_add", + inbound_nodes: [ + [ + ["block_14_add", 0, 0, {}], + ["block_15_project_BN", 0, 0, {}], + ], + ], + }, + { + class_name: "Conv2D", + config: { + name: "block_16_expand", + trainable: true, + dtype: "float32", + filters: 336, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_16_expand", + inbound_nodes: [[["block_15_add", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_16_expand_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_16_expand_BN", + inbound_nodes: [[["block_16_expand", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_16_expand_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_16_expand_relu", + inbound_nodes: [[["block_16_expand_BN", 0, 0, {}]]], + }, + { + class_name: "DepthwiseConv2D", + config: { + name: "block_16_depthwise", + trainable: true, + dtype: "float32", + kernel_size: [3, 3], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + bias_initializer: { class_name: "Zeros", config: {} }, + bias_regularizer: null, + activity_regularizer: null, + bias_constraint: null, + depth_multiplier: 1, + depthwise_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + depthwise_regularizer: null, + depthwise_constraint: null, + }, + name: "block_16_depthwise", + inbound_nodes: [[["block_16_expand_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_16_depthwise_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_16_depthwise_BN", + inbound_nodes: [[["block_16_depthwise", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "block_16_depthwise_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "block_16_depthwise_relu", + inbound_nodes: [[["block_16_depthwise_BN", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "block_16_project", + trainable: true, + dtype: "float32", + filters: 112, + kernel_size: [1, 1], + strides: [1, 1], + padding: "same", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "block_16_project", + inbound_nodes: [[["block_16_depthwise_relu", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "block_16_project_BN", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "block_16_project_BN", + inbound_nodes: [[["block_16_project", 0, 0, {}]]], + }, + { + class_name: "Conv2D", + config: { + name: "Conv_1", + trainable: true, + dtype: "float32", + filters: 1280, + kernel_size: [1, 1], + strides: [1, 1], + padding: "valid", + data_format: "channels_last", + dilation_rate: [1, 1], + groups: 1, + activation: "linear", + use_bias: false, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "Conv_1", + inbound_nodes: [[["block_16_project_BN", 0, 0, {}]]], + }, + { + class_name: "BatchNormalization", + config: { + name: "Conv_1_bn", + trainable: true, + dtype: "float32", + axis: [3], + momentum: 0.999, + epsilon: 0.001, + center: true, + scale: true, + beta_initializer: { class_name: "Zeros", config: {} }, + gamma_initializer: { class_name: "Ones", config: {} }, + moving_mean_initializer: { class_name: "Zeros", config: {} }, + moving_variance_initializer: { class_name: "Ones", config: {} }, + beta_regularizer: null, + gamma_regularizer: null, + beta_constraint: null, + gamma_constraint: null, + }, + name: "Conv_1_bn", + inbound_nodes: [[["Conv_1", 0, 0, {}]]], + }, + { + class_name: "ReLU", + config: { + name: "out_relu", + trainable: true, + dtype: "float32", + max_value: 6.0, + negative_slope: 0.0, + threshold: 0.0, + }, + name: "out_relu", + inbound_nodes: [[["Conv_1_bn", 0, 0, {}]]], + }, + { + class_name: "GlobalAveragePooling2D", + config: { + name: "global_average_pooling2d", + trainable: true, + dtype: "float32", + data_format: "channels_last", + keepdims: false, + }, + name: "global_average_pooling2d", + inbound_nodes: [[["out_relu", 0, 0, {}]]], + }, + { + class_name: "Dense", + config: { + name: "dense", + trainable: true, + dtype: "float32", + units: 1024, + activation: "relu", + use_bias: true, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "dense", + inbound_nodes: [[["global_average_pooling2d", 0, 0, {}]]], + }, + { + class_name: "Dense", + config: { + name: "dense_1", + trainable: true, + dtype: "float32", + units: 2, + activation: "softmax", + use_bias: true, + kernel_initializer: { + class_name: "GlorotUniform", + config: { seed: null }, + }, + bias_initializer: { class_name: "Zeros", config: {} }, + kernel_regularizer: null, + bias_regularizer: null, + activity_regularizer: null, + kernel_constraint: null, + bias_constraint: null, + }, + name: "dense_1", + inbound_nodes: [[["dense", 0, 0, {}]]], + }, + ], + input_layers: [["input_1", 0, 0]], + output_layers: [["dense_1", 0, 0]], + }, + }, + }, + weightsManifest: [ + { + paths: ["group1-shard1of2.bin", "group1-shard2of2.bin"], + weights: [ + { name: "Conv1/kernel", shape: [3, 3, 3, 16], dtype: "float32" }, + { name: "Conv_1/kernel", shape: [1, 1, 112, 1280], dtype: "float32" }, + { name: "Conv_1_bn/gamma", shape: [1280], dtype: "float32" }, + { name: "Conv_1_bn/beta", shape: [1280], dtype: "float32" }, + { name: "Conv_1_bn/moving_mean", shape: [1280], dtype: "float32" }, + { name: "Conv_1_bn/moving_variance", shape: [1280], dtype: "float32" }, + { + name: "block_10_depthwise/depthwise_kernel", + shape: [3, 3, 144, 1], + dtype: "float32", + }, + { name: "block_10_depthwise_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_10_depthwise_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_10_depthwise_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_10_depthwise_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_10_expand/kernel", + shape: [1, 1, 24, 144], + dtype: "float32", + }, + { name: "block_10_expand_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_10_expand_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_10_expand_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_10_expand_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_10_project/kernel", + shape: [1, 1, 144, 32], + dtype: "float32", + }, + { name: "block_10_project_BN/gamma", shape: [32], dtype: "float32" }, + { name: "block_10_project_BN/beta", shape: [32], dtype: "float32" }, + { + name: "block_10_project_BN/moving_mean", + shape: [32], + dtype: "float32", + }, + { + name: "block_10_project_BN/moving_variance", + shape: [32], + dtype: "float32", + }, + { + name: "block_11_depthwise/depthwise_kernel", + shape: [3, 3, 192, 1], + dtype: "float32", + }, + { name: "block_11_depthwise_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_11_depthwise_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_11_depthwise_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_11_depthwise_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_11_expand/kernel", + shape: [1, 1, 32, 192], + dtype: "float32", + }, + { name: "block_11_expand_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_11_expand_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_11_expand_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_11_expand_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_11_project/kernel", + shape: [1, 1, 192, 32], + dtype: "float32", + }, + { name: "block_11_project_BN/gamma", shape: [32], dtype: "float32" }, + { name: "block_11_project_BN/beta", shape: [32], dtype: "float32" }, + { + name: "block_11_project_BN/moving_mean", + shape: [32], + dtype: "float32", + }, + { + name: "block_11_project_BN/moving_variance", + shape: [32], + dtype: "float32", + }, + { + name: "block_12_depthwise/depthwise_kernel", + shape: [3, 3, 192, 1], + dtype: "float32", + }, + { name: "block_12_depthwise_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_12_depthwise_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_12_depthwise_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_12_depthwise_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_12_expand/kernel", + shape: [1, 1, 32, 192], + dtype: "float32", + }, + { name: "block_12_expand_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_12_expand_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_12_expand_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_12_expand_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_12_project/kernel", + shape: [1, 1, 192, 32], + dtype: "float32", + }, + { name: "block_12_project_BN/gamma", shape: [32], dtype: "float32" }, + { name: "block_12_project_BN/beta", shape: [32], dtype: "float32" }, + { + name: "block_12_project_BN/moving_mean", + shape: [32], + dtype: "float32", + }, + { + name: "block_12_project_BN/moving_variance", + shape: [32], + dtype: "float32", + }, + { + name: "block_13_depthwise/depthwise_kernel", + shape: [3, 3, 192, 1], + dtype: "float32", + }, + { name: "block_13_depthwise_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_13_depthwise_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_13_depthwise_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_13_depthwise_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_13_expand/kernel", + shape: [1, 1, 32, 192], + dtype: "float32", + }, + { name: "block_13_expand_BN/gamma", shape: [192], dtype: "float32" }, + { name: "block_13_expand_BN/beta", shape: [192], dtype: "float32" }, + { + name: "block_13_expand_BN/moving_mean", + shape: [192], + dtype: "float32", + }, + { + name: "block_13_expand_BN/moving_variance", + shape: [192], + dtype: "float32", + }, + { + name: "block_13_project/kernel", + shape: [1, 1, 192, 56], + dtype: "float32", + }, + { name: "block_13_project_BN/gamma", shape: [56], dtype: "float32" }, + { name: "block_13_project_BN/beta", shape: [56], dtype: "float32" }, + { + name: "block_13_project_BN/moving_mean", + shape: [56], + dtype: "float32", + }, + { + name: "block_13_project_BN/moving_variance", + shape: [56], + dtype: "float32", + }, + { + name: "block_14_depthwise/depthwise_kernel", + shape: [3, 3, 336, 1], + dtype: "float32", + }, + { name: "block_14_depthwise_BN/gamma", shape: [336], dtype: "float32" }, + { name: "block_14_depthwise_BN/beta", shape: [336], dtype: "float32" }, + { + name: "block_14_depthwise_BN/moving_mean", + shape: [336], + dtype: "float32", + }, + { + name: "block_14_depthwise_BN/moving_variance", + shape: [336], + dtype: "float32", + }, + { + name: "block_14_expand/kernel", + shape: [1, 1, 56, 336], + dtype: "float32", + }, + { name: "block_14_expand_BN/gamma", shape: [336], dtype: "float32" }, + { name: "block_14_expand_BN/beta", shape: [336], dtype: "float32" }, + { + name: "block_14_expand_BN/moving_mean", + shape: [336], + dtype: "float32", + }, + { + name: "block_14_expand_BN/moving_variance", + shape: [336], + dtype: "float32", + }, + { + name: "block_14_project/kernel", + shape: [1, 1, 336, 56], + dtype: "float32", + }, + { name: "block_14_project_BN/gamma", shape: [56], dtype: "float32" }, + { name: "block_14_project_BN/beta", shape: [56], dtype: "float32" }, + { + name: "block_14_project_BN/moving_mean", + shape: [56], + dtype: "float32", + }, + { + name: "block_14_project_BN/moving_variance", + shape: [56], + dtype: "float32", + }, + { + name: "block_15_depthwise/depthwise_kernel", + shape: [3, 3, 336, 1], + dtype: "float32", + }, + { name: "block_15_depthwise_BN/gamma", shape: [336], dtype: "float32" }, + { name: "block_15_depthwise_BN/beta", shape: [336], dtype: "float32" }, + { + name: "block_15_depthwise_BN/moving_mean", + shape: [336], + dtype: "float32", + }, + { + name: "block_15_depthwise_BN/moving_variance", + shape: [336], + dtype: "float32", + }, + { + name: "block_15_expand/kernel", + shape: [1, 1, 56, 336], + dtype: "float32", + }, + { name: "block_15_expand_BN/gamma", shape: [336], dtype: "float32" }, + { name: "block_15_expand_BN/beta", shape: [336], dtype: "float32" }, + { + name: "block_15_expand_BN/moving_mean", + shape: [336], + dtype: "float32", + }, + { + name: "block_15_expand_BN/moving_variance", + shape: [336], + dtype: "float32", + }, + { + name: "block_15_project/kernel", + shape: [1, 1, 336, 56], + dtype: "float32", + }, + { name: "block_15_project_BN/gamma", shape: [56], dtype: "float32" }, + { name: "block_15_project_BN/beta", shape: [56], dtype: "float32" }, + { + name: "block_15_project_BN/moving_mean", + shape: [56], + dtype: "float32", + }, + { + name: "block_15_project_BN/moving_variance", + shape: [56], + dtype: "float32", + }, + { + name: "block_16_depthwise/depthwise_kernel", + shape: [3, 3, 336, 1], + dtype: "float32", + }, + { name: "block_16_depthwise_BN/gamma", shape: [336], dtype: "float32" }, + { name: "block_16_depthwise_BN/beta", shape: [336], dtype: "float32" }, + { + name: "block_16_depthwise_BN/moving_mean", + shape: [336], + dtype: "float32", + }, + { + name: "block_16_depthwise_BN/moving_variance", + shape: [336], + dtype: "float32", + }, + { + name: "block_16_expand/kernel", + shape: [1, 1, 56, 336], + dtype: "float32", + }, + { name: "block_16_expand_BN/gamma", shape: [336], dtype: "float32" }, + { name: "block_16_expand_BN/beta", shape: [336], dtype: "float32" }, + { + name: "block_16_expand_BN/moving_mean", + shape: [336], + dtype: "float32", + }, + { + name: "block_16_expand_BN/moving_variance", + shape: [336], + dtype: "float32", + }, + { + name: "block_16_project/kernel", + shape: [1, 1, 336, 112], + dtype: "float32", + }, + { name: "block_16_project_BN/gamma", shape: [112], dtype: "float32" }, + { name: "block_16_project_BN/beta", shape: [112], dtype: "float32" }, + { + name: "block_16_project_BN/moving_mean", + shape: [112], + dtype: "float32", + }, + { + name: "block_16_project_BN/moving_variance", + shape: [112], + dtype: "float32", + }, + { + name: "block_1_depthwise/depthwise_kernel", + shape: [3, 3, 48, 1], + dtype: "float32", + }, + { name: "block_1_depthwise_BN/gamma", shape: [48], dtype: "float32" }, + { name: "block_1_depthwise_BN/beta", shape: [48], dtype: "float32" }, + { + name: "block_1_depthwise_BN/moving_mean", + shape: [48], + dtype: "float32", + }, + { + name: "block_1_depthwise_BN/moving_variance", + shape: [48], + dtype: "float32", + }, + { + name: "block_1_expand/kernel", + shape: [1, 1, 8, 48], + dtype: "float32", + }, + { name: "block_1_expand_BN/gamma", shape: [48], dtype: "float32" }, + { name: "block_1_expand_BN/beta", shape: [48], dtype: "float32" }, + { + name: "block_1_expand_BN/moving_mean", + shape: [48], + dtype: "float32", + }, + { + name: "block_1_expand_BN/moving_variance", + shape: [48], + dtype: "float32", + }, + { + name: "block_1_project/kernel", + shape: [1, 1, 48, 8], + dtype: "float32", + }, + { name: "block_1_project_BN/gamma", shape: [8], dtype: "float32" }, + { name: "block_1_project_BN/beta", shape: [8], dtype: "float32" }, + { + name: "block_1_project_BN/moving_mean", + shape: [8], + dtype: "float32", + }, + { + name: "block_1_project_BN/moving_variance", + shape: [8], + dtype: "float32", + }, + { + name: "block_2_depthwise/depthwise_kernel", + shape: [3, 3, 48, 1], + dtype: "float32", + }, + { name: "block_2_depthwise_BN/gamma", shape: [48], dtype: "float32" }, + { name: "block_2_depthwise_BN/beta", shape: [48], dtype: "float32" }, + { + name: "block_2_depthwise_BN/moving_mean", + shape: [48], + dtype: "float32", + }, + { + name: "block_2_depthwise_BN/moving_variance", + shape: [48], + dtype: "float32", + }, + { + name: "block_2_expand/kernel", + shape: [1, 1, 8, 48], + dtype: "float32", + }, + { name: "block_2_expand_BN/gamma", shape: [48], dtype: "float32" }, + { name: "block_2_expand_BN/beta", shape: [48], dtype: "float32" }, + { + name: "block_2_expand_BN/moving_mean", + shape: [48], + dtype: "float32", + }, + { + name: "block_2_expand_BN/moving_variance", + shape: [48], + dtype: "float32", + }, + { + name: "block_2_project/kernel", + shape: [1, 1, 48, 8], + dtype: "float32", + }, + { name: "block_2_project_BN/gamma", shape: [8], dtype: "float32" }, + { name: "block_2_project_BN/beta", shape: [8], dtype: "float32" }, + { + name: "block_2_project_BN/moving_mean", + shape: [8], + dtype: "float32", + }, + { + name: "block_2_project_BN/moving_variance", + shape: [8], + dtype: "float32", + }, + { + name: "block_3_depthwise/depthwise_kernel", + shape: [3, 3, 48, 1], + dtype: "float32", + }, + { name: "block_3_depthwise_BN/gamma", shape: [48], dtype: "float32" }, + { name: "block_3_depthwise_BN/beta", shape: [48], dtype: "float32" }, + { + name: "block_3_depthwise_BN/moving_mean", + shape: [48], + dtype: "float32", + }, + { + name: "block_3_depthwise_BN/moving_variance", + shape: [48], + dtype: "float32", + }, + { + name: "block_3_expand/kernel", + shape: [1, 1, 8, 48], + dtype: "float32", + }, + { name: "block_3_expand_BN/gamma", shape: [48], dtype: "float32" }, + { name: "block_3_expand_BN/beta", shape: [48], dtype: "float32" }, + { + name: "block_3_expand_BN/moving_mean", + shape: [48], + dtype: "float32", + }, + { + name: "block_3_expand_BN/moving_variance", + shape: [48], + dtype: "float32", + }, + { + name: "block_3_project/kernel", + shape: [1, 1, 48, 16], + dtype: "float32", + }, + { name: "block_3_project_BN/gamma", shape: [16], dtype: "float32" }, + { name: "block_3_project_BN/beta", shape: [16], dtype: "float32" }, + { + name: "block_3_project_BN/moving_mean", + shape: [16], + dtype: "float32", + }, + { + name: "block_3_project_BN/moving_variance", + shape: [16], + dtype: "float32", + }, + { + name: "block_4_depthwise/depthwise_kernel", + shape: [3, 3, 96, 1], + dtype: "float32", + }, + { name: "block_4_depthwise_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_4_depthwise_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_4_depthwise_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_4_depthwise_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_4_expand/kernel", + shape: [1, 1, 16, 96], + dtype: "float32", + }, + { name: "block_4_expand_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_4_expand_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_4_expand_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_4_expand_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_4_project/kernel", + shape: [1, 1, 96, 16], + dtype: "float32", + }, + { name: "block_4_project_BN/gamma", shape: [16], dtype: "float32" }, + { name: "block_4_project_BN/beta", shape: [16], dtype: "float32" }, + { + name: "block_4_project_BN/moving_mean", + shape: [16], + dtype: "float32", + }, + { + name: "block_4_project_BN/moving_variance", + shape: [16], + dtype: "float32", + }, + { + name: "block_5_depthwise/depthwise_kernel", + shape: [3, 3, 96, 1], + dtype: "float32", + }, + { name: "block_5_depthwise_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_5_depthwise_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_5_depthwise_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_5_depthwise_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_5_expand/kernel", + shape: [1, 1, 16, 96], + dtype: "float32", + }, + { name: "block_5_expand_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_5_expand_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_5_expand_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_5_expand_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_5_project/kernel", + shape: [1, 1, 96, 16], + dtype: "float32", + }, + { name: "block_5_project_BN/gamma", shape: [16], dtype: "float32" }, + { name: "block_5_project_BN/beta", shape: [16], dtype: "float32" }, + { + name: "block_5_project_BN/moving_mean", + shape: [16], + dtype: "float32", + }, + { + name: "block_5_project_BN/moving_variance", + shape: [16], + dtype: "float32", + }, + { + name: "block_6_depthwise/depthwise_kernel", + shape: [3, 3, 96, 1], + dtype: "float32", + }, + { name: "block_6_depthwise_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_6_depthwise_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_6_depthwise_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_6_depthwise_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_6_expand/kernel", + shape: [1, 1, 16, 96], + dtype: "float32", + }, + { name: "block_6_expand_BN/gamma", shape: [96], dtype: "float32" }, + { name: "block_6_expand_BN/beta", shape: [96], dtype: "float32" }, + { + name: "block_6_expand_BN/moving_mean", + shape: [96], + dtype: "float32", + }, + { + name: "block_6_expand_BN/moving_variance", + shape: [96], + dtype: "float32", + }, + { + name: "block_6_project/kernel", + shape: [1, 1, 96, 24], + dtype: "float32", + }, + { name: "block_6_project_BN/gamma", shape: [24], dtype: "float32" }, + { name: "block_6_project_BN/beta", shape: [24], dtype: "float32" }, + { + name: "block_6_project_BN/moving_mean", + shape: [24], + dtype: "float32", + }, + { + name: "block_6_project_BN/moving_variance", + shape: [24], + dtype: "float32", + }, + { + name: "block_7_depthwise/depthwise_kernel", + shape: [3, 3, 144, 1], + dtype: "float32", + }, + { name: "block_7_depthwise_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_7_depthwise_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_7_depthwise_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_7_depthwise_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_7_expand/kernel", + shape: [1, 1, 24, 144], + dtype: "float32", + }, + { name: "block_7_expand_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_7_expand_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_7_expand_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_7_expand_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_7_project/kernel", + shape: [1, 1, 144, 24], + dtype: "float32", + }, + { name: "block_7_project_BN/gamma", shape: [24], dtype: "float32" }, + { name: "block_7_project_BN/beta", shape: [24], dtype: "float32" }, + { + name: "block_7_project_BN/moving_mean", + shape: [24], + dtype: "float32", + }, + { + name: "block_7_project_BN/moving_variance", + shape: [24], + dtype: "float32", + }, + { + name: "block_8_depthwise/depthwise_kernel", + shape: [3, 3, 144, 1], + dtype: "float32", + }, + { name: "block_8_depthwise_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_8_depthwise_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_8_depthwise_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_8_depthwise_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_8_expand/kernel", + shape: [1, 1, 24, 144], + dtype: "float32", + }, + { name: "block_8_expand_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_8_expand_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_8_expand_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_8_expand_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_8_project/kernel", + shape: [1, 1, 144, 24], + dtype: "float32", + }, + { name: "block_8_project_BN/gamma", shape: [24], dtype: "float32" }, + { name: "block_8_project_BN/beta", shape: [24], dtype: "float32" }, + { + name: "block_8_project_BN/moving_mean", + shape: [24], + dtype: "float32", + }, + { + name: "block_8_project_BN/moving_variance", + shape: [24], + dtype: "float32", + }, + { + name: "block_9_depthwise/depthwise_kernel", + shape: [3, 3, 144, 1], + dtype: "float32", + }, + { name: "block_9_depthwise_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_9_depthwise_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_9_depthwise_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_9_depthwise_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_9_expand/kernel", + shape: [1, 1, 24, 144], + dtype: "float32", + }, + { name: "block_9_expand_BN/gamma", shape: [144], dtype: "float32" }, + { name: "block_9_expand_BN/beta", shape: [144], dtype: "float32" }, + { + name: "block_9_expand_BN/moving_mean", + shape: [144], + dtype: "float32", + }, + { + name: "block_9_expand_BN/moving_variance", + shape: [144], + dtype: "float32", + }, + { + name: "block_9_project/kernel", + shape: [1, 1, 144, 24], + dtype: "float32", + }, + { name: "block_9_project_BN/gamma", shape: [24], dtype: "float32" }, + { name: "block_9_project_BN/beta", shape: [24], dtype: "float32" }, + { + name: "block_9_project_BN/moving_mean", + shape: [24], + dtype: "float32", + }, + { + name: "block_9_project_BN/moving_variance", + shape: [24], + dtype: "float32", + }, + { name: "bn_Conv1/gamma", shape: [16], dtype: "float32" }, + { name: "bn_Conv1/beta", shape: [16], dtype: "float32" }, + { name: "bn_Conv1/moving_mean", shape: [16], dtype: "float32" }, + { name: "bn_Conv1/moving_variance", shape: [16], dtype: "float32" }, + { name: "dense/kernel", shape: [1280, 1024], dtype: "float32" }, + { name: "dense/bias", shape: [1024], dtype: "float32" }, + { name: "dense_1/kernel", shape: [1024, 2], dtype: "float32" }, + { name: "dense_1/bias", shape: [2], dtype: "float32" }, + { + name: "expanded_conv_depthwise/depthwise_kernel", + shape: [3, 3, 16, 1], + dtype: "float32", + }, + { + name: "expanded_conv_depthwise_BN/gamma", + shape: [16], + dtype: "float32", + }, + { + name: "expanded_conv_depthwise_BN/beta", + shape: [16], + dtype: "float32", + }, + { + name: "expanded_conv_depthwise_BN/moving_mean", + shape: [16], + dtype: "float32", + }, + { + name: "expanded_conv_depthwise_BN/moving_variance", + shape: [16], + dtype: "float32", + }, + { + name: "expanded_conv_project/kernel", + shape: [1, 1, 16, 8], + dtype: "float32", + }, + { + name: "expanded_conv_project_BN/gamma", + shape: [8], + dtype: "float32", + }, + { name: "expanded_conv_project_BN/beta", shape: [8], dtype: "float32" }, + { + name: "expanded_conv_project_BN/moving_mean", + shape: [8], + dtype: "float32", + }, + { + name: "expanded_conv_project_BN/moving_variance", + shape: [8], + dtype: "float32", + }, + ], + }, + ], +};