Skip to content

Instantly share code, notes, and snippets.

@bqm
Last active September 30, 2019 16:08
Show Gist options
  • Save bqm/88c62df65d76832108de2ec0f9b853cc to your computer and use it in GitHub Desktop.
Save bqm/88c62df65d76832108de2ec0f9b853cc to your computer and use it in GitHub Desktop.
`SavedModel` object stored as a protobuf text format. The code for creating this object is available at https://github.com/tensorflow/tensorflow/issues/28195.
saved_model_schema_version: 1
meta_graphs {
meta_info_def {
stripped_op_list {
op {
name: "Const"
output_arg {
name: "output"
type_attr: "dtype"
}
attr {
name: "value"
type: "tensor"
}
attr {
name: "dtype"
type: "type"
}
}
op {
name: "NoOp"
}
op {
name: "Placeholder"
output_arg {
name: "output"
type_attr: "dtype"
}
attr {
name: "dtype"
type: "type"
}
attr {
name: "shape"
type: "shape"
default_value {
shape {
unknown_rank: true
}
}
}
}
op {
name: "ReadVariableOp"
input_arg {
name: "resource"
type: DT_RESOURCE
}
output_arg {
name: "value"
type_attr: "dtype"
}
attr {
name: "dtype"
type: "type"
}
is_stateful: true
}
op {
name: "StatefulPartitionedCall"
input_arg {
name: "args"
type_list_attr: "Tin"
}
output_arg {
name: "output"
type_list_attr: "Tout"
}
attr {
name: "Tin"
type: "list(type)"
has_minimum: true
}
attr {
name: "Tout"
type: "list(type)"
has_minimum: true
}
attr {
name: "f"
type: "func"
}
attr {
name: "config"
type: "string"
default_value {
s: ""
}
}
attr {
name: "config_proto"
type: "string"
default_value {
s: ""
}
}
attr {
name: "executor_type"
type: "string"
default_value {
s: ""
}
}
is_stateful: true
}
op {
name: "VarHandleOp"
output_arg {
name: "resource"
type: DT_RESOURCE
}
attr {
name: "container"
type: "string"
default_value {
s: ""
}
}
attr {
name: "shared_name"
type: "string"
default_value {
s: ""
}
}
attr {
name: "dtype"
type: "type"
}
attr {
name: "shape"
type: "shape"
}
is_stateful: true
}
}
tags: "serve"
tensorflow_version: "1.14.0"
tensorflow_git_version: "v1.14.0-0-g87989f6959"
stripped_default_attrs: true
}
graph_def {
node {
name: "mnist_model_1/dense_1/kernel"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 784
}
dim {
size: 64
}
}
}
}
attr {
key: "shared_name"
value {
s: "mnist_model_1/dense_1/kernel"
}
}
}
node {
name: "mnist_model_1/dense_1/kernel/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1/dense_1/kernel"
attr {
key: "_class"
value {
list {
s: "loc:@mnist_model_1/dense_1/kernel"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 784
}
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "mnist_model_1/dense_1/bias"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 64
}
}
}
}
attr {
key: "shared_name"
value {
s: "mnist_model_1/dense_1/bias"
}
}
}
node {
name: "mnist_model_1/dense_1/bias/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1/dense_1/bias"
attr {
key: "_class"
value {
list {
s: "loc:@mnist_model_1/dense_1/bias"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "mnist_model_1/predictions/kernel"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 64
}
dim {
size: 10
}
}
}
}
attr {
key: "shared_name"
value {
s: "mnist_model_1/predictions/kernel"
}
}
}
node {
name: "mnist_model_1/predictions/kernel/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1/predictions/kernel"
attr {
key: "_class"
value {
list {
s: "loc:@mnist_model_1/predictions/kernel"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "mnist_model_1/predictions/bias"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 10
}
}
}
}
attr {
key: "shared_name"
value {
s: "mnist_model_1/predictions/bias"
}
}
}
node {
name: "mnist_model_1/predictions/bias/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1/predictions/bias"
attr {
key: "_class"
value {
list {
s: "loc:@mnist_model_1/predictions/bias"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/iter"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_INT64
}
}
attr {
key: "shape"
value {
shape {
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/iter"
}
}
}
node {
name: "RMSprop/iter/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/iter"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/iter"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_INT64
}
}
}
node {
name: "RMSprop/decay"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/decay"
}
}
}
node {
name: "RMSprop/decay/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/decay"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/decay"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/learning_rate"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/learning_rate"
}
}
}
node {
name: "RMSprop/learning_rate/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/learning_rate"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/learning_rate"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/momentum"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/momentum"
}
}
}
node {
name: "RMSprop/momentum/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/momentum"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/momentum"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/rho"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/rho"
}
}
}
node {
name: "RMSprop/rho/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/rho"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/rho"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/mnist_model_1/dense_1/kernel/rms"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 784
}
dim {
size: 64
}
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/mnist_model_1/dense_1/kernel/rms"
}
}
}
node {
name: "RMSprop/mnist_model_1/dense_1/kernel/rms/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/mnist_model_1/dense_1/kernel/rms"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/mnist_model_1/dense_1/kernel/rms"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 784
}
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/mnist_model_1/dense_1/bias/rms"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 64
}
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/mnist_model_1/dense_1/bias/rms"
}
}
}
node {
name: "RMSprop/mnist_model_1/dense_1/bias/rms/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/mnist_model_1/dense_1/bias/rms"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/mnist_model_1/dense_1/bias/rms"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/mnist_model_1/predictions/kernel/rms"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 64
}
dim {
size: 10
}
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/mnist_model_1/predictions/kernel/rms"
}
}
}
node {
name: "RMSprop/mnist_model_1/predictions/kernel/rms/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/mnist_model_1/predictions/kernel/rms"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/mnist_model_1/predictions/kernel/rms"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "RMSprop/mnist_model_1/predictions/bias/rms"
op: "VarHandleOp"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: 10
}
}
}
}
attr {
key: "shared_name"
value {
s: "RMSprop/mnist_model_1/predictions/bias/rms"
}
}
}
node {
name: "RMSprop/mnist_model_1/predictions/bias/rms/Read/ReadVariableOp"
op: "ReadVariableOp"
input: "RMSprop/mnist_model_1/predictions/bias/rms"
attr {
key: "_class"
value {
list {
s: "loc:@RMSprop/mnist_model_1/predictions/bias/rms"
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node {
name: "NoOp"
op: "NoOp"
}
node {
name: "Const"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
}
string_val: "\n9\n\017\010\001\022\013first_dense\n\007\010\002\022\003out\n\r\010\003\022\toptimizer\n\016\010\004\022\nsignatures\n\026\n\n\010\005\022\006kernel\n\010\010\006\022\004bias\n\026\n\n\010\007\022\006kernel\n\010\010\010\022\004bias\nk\n\010\010\t\022\004iter\n\t\010\n\022\005decay\n\021\010\013\022\rlearning_rate\n\014\010\014\022\010momentum\n\007\010\r\022\003rho\032\t\010\005\022\003rms\030\016\032\t\010\006\022\003rms\030\017\032\t\010\007\022\003rms\030\020\032\t\010\010\022\003rms\030\021\n\000\n_\022]\n\016VARIABLE_VALUE\022\034mnist_model_1/dense_1/kernel\032-first_dense/kernel/.ATTRIBUTES/VARIABLE_VALUE\n[\022Y\n\016VARIABLE_VALUE\022\032mnist_model_1/dense_1/bias\032+first_dense/bias/.ATTRIBUTES/VARIABLE_VALUE\n[\022Y\n\016VARIABLE_VALUE\022 mnist_model_1/predictions/kernel\032%out/kernel/.ATTRIBUTES/VARIABLE_VALUE\nW\022U\n\016VARIABLE_VALUE\022\036mnist_model_1/predictions/bias\032#out/bias/.ATTRIBUTES/VARIABLE_VALUE\nK\022I\n\016VARIABLE_VALUE\022\014RMSprop/iter\032)optimizer/iter/.ATTRIBUTES/VARIABLE_VALUE\nM\022K\n\016VARIABLE_VALUE\022\rRMSprop/decay\032*optimizer/decay/.ATTRIBUTES/VARIABLE_VALUE\n]\022[\n\016VARIABLE_VALUE\022\025RMSprop/learning_rate\0322optimizer/learning_rate/.ATTRIBUTES/VARIABLE_VALUE\nS\022Q\n\016VARIABLE_VALUE\022\020RMSprop/momentum\032-optimizer/momentum/.ATTRIBUTES/VARIABLE_VALUE\nI\022G\n\016VARIABLE_VALUE\022\013RMSprop/rho\032(optimizer/rho/.ATTRIBUTES/VARIABLE_VALUE\n\212\001\022\207\001\n\016VARIABLE_VALUE\022(RMSprop/mnist_model_1/dense_1/kernel/rms\032Kfirst_dense/kernel/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE\n\206\001\022\203\001\n\016VARIABLE_VALUE\022&RMSprop/mnist_model_1/dense_1/bias/rms\032Ifirst_dense/bias/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE\n\206\001\022\203\001\n\016VARIABLE_VALUE\022,RMSprop/mnist_model_1/predictions/kernel/rms\032Cout/kernel/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE\n\201\001\022\177\n\016VARIABLE_VALUE\022*RMSprop/mnist_model_1/predictions/bias/rms\032Aout/bias/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
}
}
}
}
node {
name: "serving_default_input_1"
op: "Placeholder"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 784
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
attr {
key: "shape"
value {
shape {
dim {
size: -1
}
dim {
size: 784
}
}
}
}
}
node {
name: "StatefulPartitionedCall"
op: "StatefulPartitionedCall"
input: "serving_default_input_1"
input: "mnist_model_1/dense_1/kernel"
input: "mnist_model_1/dense_1/bias"
input: "mnist_model_1/predictions/kernel"
input: "mnist_model_1/predictions/bias"
attr {
key: "Tin"
value {
list {
type: DT_FLOAT
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
}
}
}
attr {
key: "Tout"
value {
list {
type: DT_FLOAT
}
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
attr {
key: "config_proto"
value {
s: "\n\007\n\003GPU\020\000\n\007\n\003CPU\020\0012\002J\0008\001"
}
}
attr {
key: "f"
value {
func {
name: "__inference_signature_wrapper_284"
}
}
}
}
node {
name: "saver_filename"
op: "Placeholder"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "shape"
value {
shape {
}
}
}
}
node {
name: "StatefulPartitionedCall_1"
op: "StatefulPartitionedCall"
input: "saver_filename"
input: "mnist_model_1/dense_1/kernel/Read/ReadVariableOp"
input: "mnist_model_1/dense_1/bias/Read/ReadVariableOp"
input: "mnist_model_1/predictions/kernel/Read/ReadVariableOp"
input: "mnist_model_1/predictions/bias/Read/ReadVariableOp"
input: "RMSprop/iter/Read/ReadVariableOp"
input: "RMSprop/decay/Read/ReadVariableOp"
input: "RMSprop/learning_rate/Read/ReadVariableOp"
input: "RMSprop/momentum/Read/ReadVariableOp"
input: "RMSprop/rho/Read/ReadVariableOp"
input: "RMSprop/mnist_model_1/dense_1/kernel/rms/Read/ReadVariableOp"
input: "RMSprop/mnist_model_1/dense_1/bias/rms/Read/ReadVariableOp"
input: "RMSprop/mnist_model_1/predictions/kernel/rms/Read/ReadVariableOp"
input: "RMSprop/mnist_model_1/predictions/bias/rms/Read/ReadVariableOp"
input: "Const"
attr {
key: "Tin"
value {
list {
type: DT_STRING
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_INT64
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_STRING
}
}
}
attr {
key: "Tout"
value {
list {
type: DT_STRING
}
}
}
attr {
key: "_gradient_op_type"
value {
s: "PartitionedCall-394"
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "config_proto"
value {
s: "\n\007\n\003GPU\020\000\n\007\n\003CPU\020\0012\002J\0008\001"
}
}
attr {
key: "f"
value {
func {
name: "__inference__traced_save_393"
}
}
}
}
node {
name: "StatefulPartitionedCall_2"
op: "StatefulPartitionedCall"
input: "saver_filename"
input: "mnist_model_1/dense_1/kernel"
input: "mnist_model_1/dense_1/bias"
input: "mnist_model_1/predictions/kernel"
input: "mnist_model_1/predictions/bias"
input: "RMSprop/iter"
input: "RMSprop/decay"
input: "RMSprop/learning_rate"
input: "RMSprop/momentum"
input: "RMSprop/rho"
input: "RMSprop/mnist_model_1/dense_1/kernel/rms"
input: "RMSprop/mnist_model_1/dense_1/bias/rms"
input: "RMSprop/mnist_model_1/predictions/kernel/rms"
input: "RMSprop/mnist_model_1/predictions/bias/rms"
attr {
key: "Tin"
value {
list {
type: DT_STRING
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
}
}
}
attr {
key: "Tout"
value {
list {
type: DT_STRING
}
}
}
attr {
key: "_gradient_op_type"
value {
s: "PartitionedCall-446"
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "config_proto"
value {
s: "\n\007\n\003GPU\020\000\n\007\n\003CPU\020\0012\002J\0008\001"
}
}
attr {
key: "f"
value {
func {
name: "__inference__traced_restore_445"
}
}
}
}
library {
function {
signature {
name: "__inference_signature_wrapper_284"
input_arg {
name: "input_1"
type: DT_FLOAT
}
input_arg {
name: "statefulpartitionedcall_mnist_model_1_dense_1_kernel"
type: DT_RESOURCE
}
input_arg {
name: "statefulpartitionedcall_mnist_model_1_dense_1_bias"
type: DT_RESOURCE
}
input_arg {
name: "statefulpartitionedcall_mnist_model_1_predictions_kernel"
type: DT_RESOURCE
}
input_arg {
name: "statefulpartitionedcall_mnist_model_1_predictions_bias"
type: DT_RESOURCE
}
output_arg {
name: "identity"
type: DT_FLOAT
}
is_stateful: true
control_output: "StatefulPartitionedCall"
}
node_def {
name: "StatefulPartitionedCall"
op: "StatefulPartitionedCall"
input: "input_1"
input: "statefulpartitionedcall_mnist_model_1_dense_1_kernel"
input: "statefulpartitionedcall_mnist_model_1_dense_1_bias"
input: "statefulpartitionedcall_mnist_model_1_predictions_kernel"
input: "statefulpartitionedcall_mnist_model_1_predictions_bias"
attr {
key: "Tin"
value {
list {
type: DT_FLOAT
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
type: DT_RESOURCE
}
}
}
attr {
key: "Tout"
value {
list {
type: DT_FLOAT
}
}
}
attr {
key: "_gradient_op_type"
value {
s: "PartitionedCall-277"
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
attr {
key: "config_proto"
value {
s: "\n\007\n\003GPU\020\000\n\007\n\003CPU\020\0012\002J\0008\001"
}
}
attr {
key: "f"
value {
func {
name: "__inference__wrapped_model_271"
}
}
}
}
node_def {
name: "Identity"
op: "Identity"
input: "StatefulPartitionedCall:output:0"
input: "^StatefulPartitionedCall"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
ret {
key: "identity"
value: "Identity:output:0"
}
attr {
key: "_input_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 784
}
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
}
}
}
control_ret {
key: "StatefulPartitionedCall"
value: "StatefulPartitionedCall"
}
arg_attr {
key: 0
value {
attr {
key: "_user_specified_name"
value {
s: "input_1"
}
}
}
}
arg_attr {
key: 1
value {
}
}
arg_attr {
key: 2
value {
}
}
arg_attr {
key: 3
value {
}
}
arg_attr {
key: 4
value {
}
}
}
function {
signature {
name: "__inference__wrapped_model_271"
input_arg {
name: "input_1"
type: DT_FLOAT
}
input_arg {
name: "mnist_model_1_dense_1_matmul_readvariableop_mnist_model_1_dense_1_kernel"
type: DT_RESOURCE
}
input_arg {
name: "mnist_model_1_dense_1_biasadd_readvariableop_mnist_model_1_dense_1_bias"
type: DT_RESOURCE
}
input_arg {
name: "mnist_model_1_predictions_matmul_readvariableop_mnist_model_1_predictions_kernel"
type: DT_RESOURCE
}
input_arg {
name: "mnist_model_1_predictions_biasadd_readvariableop_mnist_model_1_predictions_bias"
type: DT_RESOURCE
}
output_arg {
name: "identity"
type: DT_FLOAT
}
is_stateful: true
control_output: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
control_output: "mnist_model_1/predictions/MatMul/ReadVariableOp"
control_output: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
control_output: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
}
node_def {
name: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_dense_1_matmul_readvariableop_mnist_model_1_dense_1_kernel"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 784
}
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/dense_1/MatMul"
op: "MatMul"
input: "input_1"
input: "mnist_model_1/dense_1/MatMul/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_dense_1_biasadd_readvariableop_mnist_model_1_dense_1_bias"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/dense_1/BiasAdd"
op: "BiasAdd"
input: "mnist_model_1/dense_1/MatMul:product:0"
input: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "mnist_model_1/dense_1/Relu"
op: "Relu"
input: "mnist_model_1/dense_1/BiasAdd:output:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "mnist_model_1/predictions/MatMul/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_predictions_matmul_readvariableop_mnist_model_1_predictions_kernel"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/predictions/MatMul"
op: "MatMul"
input: "mnist_model_1/dense_1/Relu:activations:0"
input: "mnist_model_1/predictions/MatMul/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_predictions_biasadd_readvariableop_mnist_model_1_predictions_bias"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/predictions/BiasAdd"
op: "BiasAdd"
input: "mnist_model_1/predictions/MatMul:product:0"
input: "mnist_model_1/predictions/BiasAdd/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "mnist_model_1/predictions/Softmax"
op: "Softmax"
input: "mnist_model_1/predictions/BiasAdd:output:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "Identity"
op: "Identity"
input: "mnist_model_1/predictions/Softmax:softmax:0"
input: "^mnist_model_1/predictions/BiasAdd/ReadVariableOp"
input: "^mnist_model_1/predictions/MatMul/ReadVariableOp"
input: "^mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
input: "^mnist_model_1/dense_1/MatMul/ReadVariableOp"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
ret {
key: "identity"
value: "Identity:output:0"
}
attr {
key: "_input_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 784
}
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
}
}
}
control_ret {
key: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
value: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
}
control_ret {
key: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
value: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
}
control_ret {
key: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
value: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
}
control_ret {
key: "mnist_model_1/predictions/MatMul/ReadVariableOp"
value: "mnist_model_1/predictions/MatMul/ReadVariableOp"
}
arg_attr {
key: 0
value {
attr {
key: "_user_specified_name"
value {
s: "input_1"
}
}
}
}
arg_attr {
key: 1
value {
}
}
arg_attr {
key: 2
value {
}
}
arg_attr {
key: 3
value {
}
}
arg_attr {
key: 4
value {
}
}
}
function {
signature {
name: "__inference__traced_restore_445"
input_arg {
name: "file_prefix"
type: DT_STRING
}
input_arg {
name: "assignvariableop_mnist_model_1_dense_1_kernel"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_1_mnist_model_1_dense_1_bias"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_2_mnist_model_1_predictions_kernel"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_3_mnist_model_1_predictions_bias"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_4_rmsprop_iter"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_5_rmsprop_decay"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_6_rmsprop_learning_rate"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_7_rmsprop_momentum"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_8_rmsprop_rho"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_9_rmsprop_mnist_model_1_dense_1_kernel_rms"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_10_rmsprop_mnist_model_1_dense_1_bias_rms"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_11_rmsprop_mnist_model_1_predictions_kernel_rms"
type: DT_RESOURCE
}
input_arg {
name: "assignvariableop_12_rmsprop_mnist_model_1_predictions_bias_rms"
type: DT_RESOURCE
}
output_arg {
name: "identity_14"
type: DT_STRING
}
is_stateful: true
control_output: "AssignVariableOp_2"
control_output: "RestoreV2"
control_output: "AssignVariableOp_4"
control_output: "AssignVariableOp_6"
control_output: "AssignVariableOp_10"
control_output: "AssignVariableOp"
control_output: "AssignVariableOp_1"
control_output: "AssignVariableOp_12"
control_output: "AssignVariableOp_5"
control_output: "AssignVariableOp_7"
control_output: "AssignVariableOp_11"
control_output: "RestoreV2_1"
control_output: "AssignVariableOp_3"
control_output: "AssignVariableOp_9"
control_output: "AssignVariableOp_8"
}
node_def {
name: "RestoreV2/tensor_names"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 13
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 13
}
}
string_val: "first_dense/kernel/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "first_dense/bias/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/kernel/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/bias/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/iter/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/decay/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/learning_rate/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/momentum/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/rho/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "first_dense/kernel/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "first_dense/bias/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/kernel/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/bias/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
}
}
}
}
node_def {
name: "RestoreV2/shape_and_slices"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 13
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 13
}
}
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
}
}
}
}
node_def {
name: "RestoreV2"
op: "RestoreV2"
input: "file_prefix"
input: "RestoreV2/tensor_names:output:0"
input: "RestoreV2/shape_and_slices:output:0"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
}
}
}
attr {
key: "dtypes"
value {
list {
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_INT64
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
}
}
}
}
node_def {
name: "Identity"
op: "Identity"
input: "RestoreV2:tensors:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp"
op: "AssignVariableOp"
input: "assignvariableop_mnist_model_1_dense_1_kernel"
input: "Identity:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_1"
op: "Identity"
input: "RestoreV2:tensors:1"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_1"
op: "AssignVariableOp"
input: "assignvariableop_1_mnist_model_1_dense_1_bias"
input: "Identity_1:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_2"
op: "Identity"
input: "RestoreV2:tensors:2"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_2"
op: "AssignVariableOp"
input: "assignvariableop_2_mnist_model_1_predictions_kernel"
input: "Identity_2:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_3"
op: "Identity"
input: "RestoreV2:tensors:3"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_3"
op: "AssignVariableOp"
input: "assignvariableop_3_mnist_model_1_predictions_bias"
input: "Identity_3:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_4"
op: "Identity"
input: "RestoreV2:tensors:4"
attr {
key: "T"
value {
type: DT_INT64
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_4"
op: "AssignVariableOp"
input: "assignvariableop_4_rmsprop_iter"
input: "Identity_4:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_INT64
}
}
}
node_def {
name: "Identity_5"
op: "Identity"
input: "RestoreV2:tensors:5"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_5"
op: "AssignVariableOp"
input: "assignvariableop_5_rmsprop_decay"
input: "Identity_5:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_6"
op: "Identity"
input: "RestoreV2:tensors:6"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_6"
op: "AssignVariableOp"
input: "assignvariableop_6_rmsprop_learning_rate"
input: "Identity_6:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_7"
op: "Identity"
input: "RestoreV2:tensors:7"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_7"
op: "AssignVariableOp"
input: "assignvariableop_7_rmsprop_momentum"
input: "Identity_7:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_8"
op: "Identity"
input: "RestoreV2:tensors:8"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_8"
op: "AssignVariableOp"
input: "assignvariableop_8_rmsprop_rho"
input: "Identity_8:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_9"
op: "Identity"
input: "RestoreV2:tensors:9"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_9"
op: "AssignVariableOp"
input: "assignvariableop_9_rmsprop_mnist_model_1_dense_1_kernel_rms"
input: "Identity_9:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_10"
op: "Identity"
input: "RestoreV2:tensors:10"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_10"
op: "AssignVariableOp"
input: "assignvariableop_10_rmsprop_mnist_model_1_dense_1_bias_rms"
input: "Identity_10:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_11"
op: "Identity"
input: "RestoreV2:tensors:11"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_11"
op: "AssignVariableOp"
input: "assignvariableop_11_rmsprop_mnist_model_1_predictions_kernel_rms"
input: "Identity_11:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "Identity_12"
op: "Identity"
input: "RestoreV2:tensors:12"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
}
node_def {
name: "AssignVariableOp_12"
op: "AssignVariableOp"
input: "assignvariableop_12_rmsprop_mnist_model_1_predictions_bias_rms"
input: "Identity_12:output:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "RestoreV2_1/tensor_names"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 1
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 1
}
}
string_val: "_CHECKPOINTABLE_OBJECT_GRAPH"
}
}
}
}
node_def {
name: "RestoreV2_1/shape_and_slices"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 1
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 1
}
}
string_val: ""
}
}
}
}
node_def {
name: "RestoreV2_1"
op: "RestoreV2"
input: "file_prefix"
input: "RestoreV2_1/tensor_names:output:0"
input: "RestoreV2_1/shape_and_slices:output:0"
input: "^RestoreV2"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
unknown_rank: true
}
}
}
}
attr {
key: "dtypes"
value {
list {
type: DT_STRING
}
}
}
}
node_def {
name: "NoOp"
op: "NoOp"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
}
node_def {
name: "Identity_13"
op: "Identity"
input: "file_prefix"
input: "^AssignVariableOp_2"
input: "^AssignVariableOp_4"
input: "^AssignVariableOp_6"
input: "^AssignVariableOp_7"
input: "^NoOp"
input: "^AssignVariableOp"
input: "^AssignVariableOp_8"
input: "^AssignVariableOp_5"
input: "^AssignVariableOp_9"
input: "^AssignVariableOp_3"
input: "^AssignVariableOp_10"
input: "^AssignVariableOp_1"
input: "^AssignVariableOp_11"
input: "^AssignVariableOp_12"
device: "/device:CPU:0"
attr {
key: "T"
value {
type: DT_STRING
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
}
node_def {
name: "Identity_14"
op: "Identity"
input: "Identity_13:output:0"
input: "^AssignVariableOp_4"
input: "^AssignVariableOp_8"
input: "^AssignVariableOp_1"
input: "^AssignVariableOp_6"
input: "^AssignVariableOp_5"
input: "^AssignVariableOp_2"
input: "^AssignVariableOp_7"
input: "^RestoreV2"
input: "^AssignVariableOp_11"
input: "^AssignVariableOp_12"
input: "^RestoreV2_1"
input: "^AssignVariableOp"
input: "^AssignVariableOp_3"
input: "^AssignVariableOp_10"
input: "^AssignVariableOp_9"
attr {
key: "T"
value {
type: DT_STRING
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
}
ret {
key: "identity_14"
value: "Identity_14:output:0"
}
attr {
key: "_input_shapes"
value {
list {
shape {
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
}
}
}
control_ret {
key: "AssignVariableOp"
value: "AssignVariableOp"
}
control_ret {
key: "AssignVariableOp_1"
value: "AssignVariableOp_1"
}
control_ret {
key: "AssignVariableOp_10"
value: "AssignVariableOp_10"
}
control_ret {
key: "AssignVariableOp_11"
value: "AssignVariableOp_11"
}
control_ret {
key: "AssignVariableOp_12"
value: "AssignVariableOp_12"
}
control_ret {
key: "AssignVariableOp_2"
value: "AssignVariableOp_2"
}
control_ret {
key: "AssignVariableOp_3"
value: "AssignVariableOp_3"
}
control_ret {
key: "AssignVariableOp_4"
value: "AssignVariableOp_4"
}
control_ret {
key: "AssignVariableOp_5"
value: "AssignVariableOp_5"
}
control_ret {
key: "AssignVariableOp_6"
value: "AssignVariableOp_6"
}
control_ret {
key: "AssignVariableOp_7"
value: "AssignVariableOp_7"
}
control_ret {
key: "AssignVariableOp_8"
value: "AssignVariableOp_8"
}
control_ret {
key: "AssignVariableOp_9"
value: "AssignVariableOp_9"
}
control_ret {
key: "RestoreV2"
value: "RestoreV2"
}
control_ret {
key: "RestoreV2_1"
value: "RestoreV2_1"
}
arg_attr {
key: 0
value {
attr {
key: "_user_specified_name"
value {
s: "file_prefix"
}
}
}
}
arg_attr {
key: 1
value {
}
}
arg_attr {
key: 2
value {
}
}
arg_attr {
key: 3
value {
}
}
arg_attr {
key: 4
value {
}
}
arg_attr {
key: 5
value {
}
}
arg_attr {
key: 6
value {
}
}
arg_attr {
key: 7
value {
}
}
arg_attr {
key: 8
value {
}
}
arg_attr {
key: 9
value {
}
}
arg_attr {
key: 10
value {
}
}
arg_attr {
key: 11
value {
}
}
arg_attr {
key: 12
value {
}
}
arg_attr {
key: 13
value {
}
}
}
function {
signature {
name: "__inference__traced_save_393"
input_arg {
name: "file_prefix"
type: DT_STRING
}
input_arg {
name: "savev2_mnist_model_1_dense_1_kernel_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_mnist_model_1_dense_1_bias_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_mnist_model_1_predictions_kernel_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_mnist_model_1_predictions_bias_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_iter_read_readvariableop"
type: DT_INT64
}
input_arg {
name: "savev2_rmsprop_decay_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_learning_rate_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_momentum_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_rho_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_mnist_model_1_dense_1_kernel_rms_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_mnist_model_1_dense_1_bias_rms_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_mnist_model_1_predictions_kernel_rms_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_rmsprop_mnist_model_1_predictions_bias_rms_read_readvariableop"
type: DT_FLOAT
}
input_arg {
name: "savev2_1_const"
type: DT_STRING
}
output_arg {
name: "identity_1"
type: DT_STRING
}
is_stateful: true
control_output: "SaveV2"
control_output: "SaveV2_1"
control_output: "MergeV2Checkpoints"
}
node_def {
name: "StringJoin/inputs_1"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
}
string_val: "_temp_2360d3ead6214d0e89f61af32b6c3b21/part"
}
}
}
}
node_def {
name: "StringJoin"
op: "StringJoin"
input: "file_prefix"
input: "StringJoin/inputs_1:output:0"
device: "/device:CPU:0"
attr {
key: "N"
value {
i: 2
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
}
node_def {
name: "num_shards"
op: "Const"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_INT32
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_INT32
tensor_shape {
}
int_val: 2
}
}
}
}
node_def {
name: "ShardedFilename/shard"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_INT32
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_INT32
tensor_shape {
}
int_val: 0
}
}
}
}
node_def {
name: "ShardedFilename"
op: "ShardedFilename"
input: "StringJoin:output:0"
input: "ShardedFilename/shard:output:0"
input: "num_shards:output:0"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
}
node_def {
name: "SaveV2/tensor_names"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 13
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 13
}
}
string_val: "first_dense/kernel/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "first_dense/bias/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/kernel/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/bias/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/iter/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/decay/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/learning_rate/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/momentum/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "optimizer/rho/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "first_dense/kernel/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "first_dense/bias/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/kernel/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
string_val: "out/bias/.OPTIMIZER_SLOT/optimizer/rms/.ATTRIBUTES/VARIABLE_VALUE"
}
}
}
}
node_def {
name: "SaveV2/shape_and_slices"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 13
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 13
}
}
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
string_val: ""
}
}
}
}
node_def {
name: "SaveV2"
op: "SaveV2"
input: "ShardedFilename:filename:0"
input: "SaveV2/tensor_names:output:0"
input: "SaveV2/shape_and_slices:output:0"
input: "savev2_mnist_model_1_dense_1_kernel_read_readvariableop"
input: "savev2_mnist_model_1_dense_1_bias_read_readvariableop"
input: "savev2_mnist_model_1_predictions_kernel_read_readvariableop"
input: "savev2_mnist_model_1_predictions_bias_read_readvariableop"
input: "savev2_rmsprop_iter_read_readvariableop"
input: "savev2_rmsprop_decay_read_readvariableop"
input: "savev2_rmsprop_learning_rate_read_readvariableop"
input: "savev2_rmsprop_momentum_read_readvariableop"
input: "savev2_rmsprop_rho_read_readvariableop"
input: "savev2_rmsprop_mnist_model_1_dense_1_kernel_rms_read_readvariableop"
input: "savev2_rmsprop_mnist_model_1_dense_1_bias_rms_read_readvariableop"
input: "savev2_rmsprop_mnist_model_1_predictions_kernel_rms_read_readvariableop"
input: "savev2_rmsprop_mnist_model_1_predictions_bias_rms_read_readvariableop"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtypes"
value {
list {
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_INT64
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
type: DT_FLOAT
}
}
}
}
node_def {
name: "ShardedFilename_1/shard"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
attr {
key: "dtype"
value {
type: DT_INT32
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_INT32
tensor_shape {
}
int_val: 1
}
}
}
}
node_def {
name: "ShardedFilename_1"
op: "ShardedFilename"
input: "StringJoin:output:0"
input: "ShardedFilename_1/shard:output:0"
input: "num_shards:output:0"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
}
node_def {
name: "SaveV2_1/tensor_names"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 1
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 1
}
}
string_val: "_CHECKPOINTABLE_OBJECT_GRAPH"
}
}
}
}
node_def {
name: "SaveV2_1/shape_and_slices"
op: "Const"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 1
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_STRING
}
}
attr {
key: "value"
value {
tensor {
dtype: DT_STRING
tensor_shape {
dim {
size: 1
}
}
string_val: ""
}
}
}
}
node_def {
name: "SaveV2_1"
op: "SaveV2"
input: "ShardedFilename_1:filename:0"
input: "SaveV2_1/tensor_names:output:0"
input: "SaveV2_1/shape_and_slices:output:0"
input: "savev2_1_const"
input: "^SaveV2"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
attr {
key: "dtypes"
value {
list {
type: DT_STRING
}
}
}
}
node_def {
name: "MergeV2Checkpoints/checkpoint_prefixes"
op: "Pack"
input: "ShardedFilename:filename:0"
input: "ShardedFilename_1:filename:0"
input: "^SaveV2"
input: "^SaveV2_1"
device: "/device:CPU:0"
attr {
key: "N"
value {
i: 2
}
}
attr {
key: "T"
value {
type: DT_STRING
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 2
}
}
}
}
}
}
node_def {
name: "MergeV2Checkpoints"
op: "MergeV2Checkpoints"
input: "MergeV2Checkpoints/checkpoint_prefixes:output:0"
input: "file_prefix"
input: "^SaveV2_1"
device: "/device:CPU:0"
attr {
key: "_output_shapes"
value {
list {
}
}
}
}
node_def {
name: "Identity"
op: "Identity"
input: "file_prefix"
input: "^MergeV2Checkpoints"
device: "/device:CPU:0"
attr {
key: "T"
value {
type: DT_STRING
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
}
node_def {
name: "Identity_1"
op: "Identity"
input: "Identity:output:0"
input: "^SaveV2"
input: "^SaveV2_1"
input: "^MergeV2Checkpoints"
attr {
key: "T"
value {
type: DT_STRING
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
}
}
}
}
}
ret {
key: "identity_1"
value: "Identity_1:output:0"
}
attr {
key: "_input_shapes"
value {
list {
shape {
}
shape {
dim {
size: 784
}
dim {
size: 64
}
}
shape {
dim {
size: 64
}
}
shape {
dim {
size: 64
}
dim {
size: 10
}
}
shape {
dim {
size: 10
}
}
shape {
}
shape {
}
shape {
}
shape {
}
shape {
}
shape {
dim {
size: 784
}
dim {
size: 64
}
}
shape {
dim {
size: 64
}
}
shape {
dim {
size: 64
}
dim {
size: 10
}
}
shape {
dim {
size: 10
}
}
shape {
}
}
}
}
control_ret {
key: "MergeV2Checkpoints"
value: "MergeV2Checkpoints"
}
control_ret {
key: "SaveV2"
value: "SaveV2"
}
control_ret {
key: "SaveV2_1"
value: "SaveV2_1"
}
arg_attr {
key: 0
value {
attr {
key: "_user_specified_name"
value {
s: "file_prefix"
}
}
}
}
arg_attr {
key: 1
value {
}
}
arg_attr {
key: 2
value {
}
}
arg_attr {
key: 3
value {
}
}
arg_attr {
key: 4
value {
}
}
arg_attr {
key: 5
value {
}
}
arg_attr {
key: 6
value {
}
}
arg_attr {
key: 7
value {
}
}
arg_attr {
key: 8
value {
}
}
arg_attr {
key: 9
value {
}
}
arg_attr {
key: 10
value {
}
}
arg_attr {
key: 11
value {
}
}
arg_attr {
key: 12
value {
}
}
arg_attr {
key: 13
value {
}
}
arg_attr {
key: 14
value {
}
}
}
function {
signature {
name: "__inference__wrapped_model_328"
input_arg {
name: "input_1"
type: DT_FLOAT
}
input_arg {
name: "mnist_model_1_dense_1_matmul_readvariableop_mnist_model_1_dense_1_kernel"
type: DT_RESOURCE
}
input_arg {
name: "mnist_model_1_dense_1_biasadd_readvariableop_mnist_model_1_dense_1_bias"
type: DT_RESOURCE
}
input_arg {
name: "mnist_model_1_predictions_matmul_readvariableop_mnist_model_1_predictions_kernel"
type: DT_RESOURCE
}
input_arg {
name: "mnist_model_1_predictions_biasadd_readvariableop_mnist_model_1_predictions_bias"
type: DT_RESOURCE
}
output_arg {
name: "identity"
type: DT_FLOAT
}
is_stateful: true
control_output: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
control_output: "mnist_model_1/predictions/MatMul/ReadVariableOp"
control_output: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
control_output: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
}
node_def {
name: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_dense_1_matmul_readvariableop_mnist_model_1_dense_1_kernel"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 784
}
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/dense_1/MatMul"
op: "MatMul"
input: "input_1"
input: "mnist_model_1/dense_1/MatMul/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_dense_1_biasadd_readvariableop_mnist_model_1_dense_1_bias"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/dense_1/BiasAdd"
op: "BiasAdd"
input: "mnist_model_1/dense_1/MatMul:product:0"
input: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "mnist_model_1/dense_1/Relu"
op: "Relu"
input: "mnist_model_1/dense_1/BiasAdd:output:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "mnist_model_1/predictions/MatMul/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_predictions_matmul_readvariableop_mnist_model_1_predictions_kernel"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/predictions/MatMul"
op: "MatMul"
input: "mnist_model_1/dense_1/Relu:activations:0"
input: "mnist_model_1/predictions/MatMul/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
op: "ReadVariableOp"
input: "mnist_model_1_predictions_biasadd_readvariableop_mnist_model_1_predictions_bias"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "mnist_model_1/predictions/BiasAdd"
op: "BiasAdd"
input: "mnist_model_1/predictions/MatMul:product:0"
input: "mnist_model_1/predictions/BiasAdd/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "mnist_model_1/predictions/Softmax"
op: "Softmax"
input: "mnist_model_1/predictions/BiasAdd:output:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "Identity"
op: "Identity"
input: "mnist_model_1/predictions/Softmax:softmax:0"
input: "^mnist_model_1/predictions/BiasAdd/ReadVariableOp"
input: "^mnist_model_1/predictions/MatMul/ReadVariableOp"
input: "^mnist_model_1/dense_1/MatMul/ReadVariableOp"
input: "^mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
ret {
key: "identity"
value: "Identity:output:0"
}
attr {
key: "_input_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 784
}
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
}
}
}
control_ret {
key: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
value: "mnist_model_1/dense_1/BiasAdd/ReadVariableOp"
}
control_ret {
key: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
value: "mnist_model_1/dense_1/MatMul/ReadVariableOp"
}
control_ret {
key: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
value: "mnist_model_1/predictions/BiasAdd/ReadVariableOp"
}
control_ret {
key: "mnist_model_1/predictions/MatMul/ReadVariableOp"
value: "mnist_model_1/predictions/MatMul/ReadVariableOp"
}
arg_attr {
key: 0
value {
attr {
key: "_user_specified_name"
value {
s: "input_1"
}
}
}
}
arg_attr {
key: 1
value {
}
}
arg_attr {
key: 2
value {
}
}
arg_attr {
key: 3
value {
}
}
arg_attr {
key: 4
value {
}
}
}
function {
signature {
name: "__inference_serve_307"
input_arg {
name: "signature"
type: DT_FLOAT
}
input_arg {
name: "dense_1_matmul_readvariableop_mnist_model_1_dense_1_kernel"
type: DT_RESOURCE
}
input_arg {
name: "dense_1_biasadd_readvariableop_mnist_model_1_dense_1_bias"
type: DT_RESOURCE
}
input_arg {
name: "predictions_matmul_readvariableop_mnist_model_1_predictions_kernel"
type: DT_RESOURCE
}
input_arg {
name: "predictions_biasadd_readvariableop_mnist_model_1_predictions_bias"
type: DT_RESOURCE
}
output_arg {
name: "identity"
type: DT_FLOAT
}
is_stateful: true
control_output: "predictions/MatMul/ReadVariableOp"
control_output: "dense_1/BiasAdd/ReadVariableOp"
control_output: "predictions/BiasAdd/ReadVariableOp"
control_output: "dense_1/MatMul/ReadVariableOp"
}
node_def {
name: "request"
op: "Identity"
input: "signature"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: -1
}
}
}
}
}
}
node_def {
name: "dense_1/MatMul/ReadVariableOp"
op: "ReadVariableOp"
input: "dense_1_matmul_readvariableop_mnist_model_1_dense_1_kernel"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 784
}
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "dense_1/MatMul"
op: "MatMul"
input: "request:output:0"
input: "dense_1/MatMul/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "dense_1/BiasAdd/ReadVariableOp"
op: "ReadVariableOp"
input: "dense_1_biasadd_readvariableop_mnist_model_1_dense_1_bias"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "dense_1/BiasAdd"
op: "BiasAdd"
input: "dense_1/MatMul:product:0"
input: "dense_1/BiasAdd/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "dense_1/Relu"
op: "Relu"
input: "dense_1/BiasAdd:output:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 64
}
}
}
}
}
}
node_def {
name: "predictions/MatMul/ReadVariableOp"
op: "ReadVariableOp"
input: "predictions_matmul_readvariableop_mnist_model_1_predictions_kernel"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 64
}
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "predictions/MatMul"
op: "MatMul"
input: "dense_1/Relu:activations:0"
input: "predictions/MatMul/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "predictions/BiasAdd/ReadVariableOp"
op: "ReadVariableOp"
input: "predictions_biasadd_readvariableop_mnist_model_1_predictions_bias"
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: 10
}
}
}
}
}
attr {
key: "dtype"
value {
type: DT_FLOAT
}
}
}
node_def {
name: "predictions/BiasAdd"
op: "BiasAdd"
input: "predictions/MatMul:product:0"
input: "predictions/BiasAdd/ReadVariableOp:value:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "predictions/Softmax"
op: "Softmax"
input: "predictions/BiasAdd:output:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "response"
op: "Identity"
input: "predictions/Softmax:softmax:0"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
node_def {
name: "Identity"
op: "Identity"
input: "response:output:0"
input: "^predictions/MatMul/ReadVariableOp"
input: "^dense_1/BiasAdd/ReadVariableOp"
input: "^predictions/BiasAdd/ReadVariableOp"
input: "^dense_1/MatMul/ReadVariableOp"
attr {
key: "T"
value {
type: DT_FLOAT
}
}
attr {
key: "_output_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
}
}
ret {
key: "identity"
value: "Identity:output:0"
}
attr {
key: "_input_shapes"
value {
list {
shape {
dim {
size: -1
}
dim {
size: -1
}
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
shape {
unknown_rank: true
}
}
}
}
control_ret {
key: "dense_1/BiasAdd/ReadVariableOp"
value: "dense_1/BiasAdd/ReadVariableOp"
}
control_ret {
key: "dense_1/MatMul/ReadVariableOp"
value: "dense_1/MatMul/ReadVariableOp"
}
control_ret {
key: "predictions/BiasAdd/ReadVariableOp"
value: "predictions/BiasAdd/ReadVariableOp"
}
control_ret {
key: "predictions/MatMul/ReadVariableOp"
value: "predictions/MatMul/ReadVariableOp"
}
arg_attr {
key: 0
value {
attr {
key: "_user_specified_name"
value {
s: "signature"
}
}
}
}
arg_attr {
key: 1
value {
}
}
arg_attr {
key: 2
value {
}
}
arg_attr {
key: 3
value {
}
}
arg_attr {
key: 4
value {
}
}
}
}
versions {
producer: 38
min_consumer: 12
}
}
saver_def {
filename_tensor_name: "saver_filename:0"
save_tensor_name: "StatefulPartitionedCall_1:0"
restore_op_name: "StatefulPartitionedCall_2"
version: V2
}
collection_def {
key: "saved_model_main_op"
value {
node_list {
value: "NoOp"
}
}
}
signature_def {
key: "__saved_model_init_op"
value {
outputs {
key: "__saved_model_init_op"
value {
name: "NoOp"
tensor_shape {
unknown_rank: true
}
}
}
}
}
signature_def {
key: "serving_default"
value {
inputs {
key: "input_1"
value {
name: "serving_default_input_1:0"
dtype: DT_FLOAT
tensor_shape {
dim {
size: -1
}
dim {
size: 784
}
}
}
}
outputs {
key: "output_1"
value {
name: "StatefulPartitionedCall:0"
dtype: DT_FLOAT
tensor_shape {
dim {
size: -1
}
dim {
size: 10
}
}
}
}
method_name: "tensorflow/serving/predict"
}
}
object_graph_def {
nodes {
children {
node_id: 1
local_name: "first_dense"
}
children {
node_id: 2
local_name: "out"
}
children {
node_id: 3
local_name: "optimizer"
}
children {
node_id: 4
local_name: "signatures"
}
children {
node_id: 18
local_name: "serve"
}
children {
node_id: 19
local_name: "_default_save_signature"
}
user_object {
identifier: "_generic_user_object"
version {
producer: 1
min_consumer: 1
}
}
}
nodes {
children {
node_id: 5
local_name: "kernel"
}
children {
node_id: 6
local_name: "bias"
}
user_object {
identifier: "_generic_user_object"
version {
producer: 1
min_consumer: 1
}
}
}
nodes {
children {
node_id: 7
local_name: "kernel"
}
children {
node_id: 8
local_name: "bias"
}
user_object {
identifier: "_generic_user_object"
version {
producer: 1
min_consumer: 1
}
}
}
nodes {
children {
node_id: 9
local_name: "iter"
}
children {
node_id: 10
local_name: "decay"
}
children {
node_id: 11
local_name: "learning_rate"
}
children {
node_id: 12
local_name: "momentum"
}
children {
node_id: 13
local_name: "rho"
}
slot_variables {
original_variable_node_id: 5
slot_name: "rms"
slot_variable_node_id: 14
}
slot_variables {
original_variable_node_id: 6
slot_name: "rms"
slot_variable_node_id: 15
}
slot_variables {
original_variable_node_id: 7
slot_name: "rms"
slot_variable_node_id: 16
}
slot_variables {
original_variable_node_id: 8
slot_name: "rms"
slot_variable_node_id: 17
}
user_object {
identifier: "optimizer"
version {
producer: 1
min_consumer: 1
}
}
}
nodes {
children {
node_id: 20
local_name: "serving_default"
}
user_object {
identifier: "signature_map"
version {
producer: 1
min_consumer: 1
}
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 784
}
dim {
size: 64
}
}
trainable: true
name: "mnist_model_1/dense_1/kernel"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 64
}
}
trainable: true
name: "mnist_model_1/dense_1/bias"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 64
}
dim {
size: 10
}
}
trainable: true
name: "mnist_model_1/predictions/kernel"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 10
}
}
trainable: true
name: "mnist_model_1/predictions/bias"
}
}
nodes {
variable {
dtype: DT_INT64
shape {
}
aggregation: VARIABLE_AGGREGATION_ONLY_FIRST_REPLICA
name: "RMSprop/iter"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
}
aggregation: VARIABLE_AGGREGATION_ONLY_FIRST_REPLICA
name: "RMSprop/decay"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
}
aggregation: VARIABLE_AGGREGATION_ONLY_FIRST_REPLICA
name: "RMSprop/learning_rate"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
}
aggregation: VARIABLE_AGGREGATION_ONLY_FIRST_REPLICA
name: "RMSprop/momentum"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
}
aggregation: VARIABLE_AGGREGATION_ONLY_FIRST_REPLICA
name: "RMSprop/rho"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 784
}
dim {
size: 64
}
}
name: "RMSprop/mnist_model_1/dense_1/kernel/rms"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 64
}
}
name: "RMSprop/mnist_model_1/dense_1/bias/rms"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 64
}
dim {
size: 10
}
}
name: "RMSprop/mnist_model_1/predictions/kernel/rms"
}
}
nodes {
variable {
dtype: DT_FLOAT
shape {
dim {
size: 10
}
}
name: "RMSprop/mnist_model_1/predictions/bias/rms"
}
}
nodes {
function {
concrete_functions: "__inference_serve_307"
function_spec {
fullargspec {
named_tuple_value {
name: "FullArgSpec"
values {
key: "args"
value {
list_value {
values {
string_value: "self"
}
values {
string_value: "request"
}
}
}
}
values {
key: "varargs"
value {
none_value {
}
}
}
values {
key: "varkw"
value {
none_value {
}
}
}
values {
key: "defaults"
value {
none_value {
}
}
}
values {
key: "kwonlyargs"
value {
list_value {
}
}
}
values {
key: "kwonlydefaults"
value {
none_value {
}
}
}
values {
key: "annotations"
value {
dict_value {
}
}
}
}
}
is_method: true
input_signature {
tuple_value {
values {
tensor_spec_value {
name: "signature"
shape {
dim {
size: -1
}
dim {
size: -1
}
}
dtype: DT_FLOAT
}
}
}
}
}
}
}
nodes {
function {
concrete_functions: "__inference__wrapped_model_328"
function_spec {
fullargspec {
named_tuple_value {
name: "FullArgSpec"
values {
key: "args"
value {
list_value {
}
}
}
values {
key: "varargs"
value {
string_value: "args"
}
}
values {
key: "varkw"
value {
none_value {
}
}
}
values {
key: "defaults"
value {
none_value {
}
}
}
values {
key: "kwonlyargs"
value {
list_value {
}
}
}
values {
key: "kwonlydefaults"
value {
none_value {
}
}
}
values {
key: "annotations"
value {
dict_value {
}
}
}
}
}
input_signature {
tuple_value {
values {
tensor_spec_value {
name: "input_1"
shape {
dim {
size: -1
}
dim {
size: 784
}
}
dtype: DT_FLOAT
}
}
}
}
}
}
}
nodes {
bare_concrete_function {
concrete_function_name: "__inference_signature_wrapper_284"
argument_keywords: "input_1"
allowed_positional_arguments: 1
}
}
concrete_functions {
key: "__inference__wrapped_model_328"
value {
bound_inputs: 5
bound_inputs: 6
bound_inputs: 7
bound_inputs: 8
canonicalized_input_signature {
tuple_value {
values {
tuple_value {
values {
tensor_spec_value {
name: "input_1"
shape {
dim {
size: -1
}
dim {
size: 784
}
}
dtype: DT_FLOAT
}
}
}
}
values {
dict_value {
}
}
}
}
output_signature {
dict_value {
fields {
key: "output_1"
value {
tensor_spec_value {
name: "output_1"
shape {
dim {
size: -1
}
dim {
size: 10
}
}
dtype: DT_FLOAT
}
}
}
}
}
}
}
concrete_functions {
key: "__inference_serve_307"
value {
bound_inputs: 5
bound_inputs: 6
bound_inputs: 7
bound_inputs: 8
canonicalized_input_signature {
tuple_value {
values {
tuple_value {
values {
tensor_spec_value {
name: "signature"
shape {
dim {
size: -1
}
dim {
size: -1
}
}
dtype: DT_FLOAT
}
}
}
}
values {
dict_value {
}
}
}
}
output_signature {
tensor_spec_value {
shape {
dim {
size: -1
}
dim {
size: 10
}
}
dtype: DT_FLOAT
}
}
}
}
concrete_functions {
key: "__inference_signature_wrapper_284"
value {
bound_inputs: 5
bound_inputs: 6
bound_inputs: 7
bound_inputs: 8
canonicalized_input_signature {
tuple_value {
values {
tuple_value {
}
}
values {
dict_value {
fields {
key: "input_1"
value {
tensor_spec_value {
name: "input_1"
shape {
dim {
size: -1
}
dim {
size: 784
}
}
dtype: DT_FLOAT
}
}
}
}
}
}
}
output_signature {
dict_value {
fields {
key: "output_1"
value {
tensor_spec_value {
name: "output_1"
shape {
dim {
size: -1
}
dim {
size: 10
}
}
dtype: DT_FLOAT
}
}
}
}
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment