Skip to content

Instantly share code, notes, and snippets.

@ugai
Last active July 8, 2018 13:51
Show Gist options
  • Save ugai/da60093f236915c093f2f5c49a773ee7 to your computer and use it in GitHub Desktop.
Save ugai/da60093f236915c093f2f5c49a773ee7 to your computer and use it in GitHub Desktop.
global_config {
default_context {
array_class: "CudaCachedArray"
device_id: "0"
backends: "cudnn:float"
backends: "cuda:float"
backends: "cpu:float"
}
}
training_config {
max_epoch: 1000
iter_per_epoch: 78
save_best: true
monitor_interval: 10
}
network {
name: "Main"
batch_size: 256
variable {
name: "Input"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "DelayInput"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_4/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_4/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_5/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_5/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_2/affine/W"
type: "Parameter"
shape: { dim: 784 dim: 3 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_2/affine/b"
type: "Parameter"
shape: { dim: 3 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "CategoricalCrossEntropy_T"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
variable {
name: "Concatenate"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_2"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_3"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_4"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_5"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_10"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_6"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_2"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "Softmax"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "CategoricalCrossEntropy"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
function {
name: "Concatenate"
type: "Concatenate"
input: "Input"
input: "DelayInput"
output: "Concatenate"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_4"
type: "Affine"
input: "Concatenate"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_4"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_5"
type: "Affine"
input: "Concatenate"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_5"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid"
type: "Sigmoid"
input: "Affine_4"
output: "Sigmoid"
}
function {
name: "Sigmoid_2"
type: "Sigmoid"
input: "Affine_5"
output: "Sigmoid_2"
}
function {
name: "Mul2"
type: "Mul2"
input: "Sigmoid"
input: "DelayInput"
output: "Mul2"
}
function {
name: "RSubScalar"
type: "RSubScalar"
input: "Sigmoid_2"
output: "RSubScalar"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_2"
type: "Concatenate"
input: "Mul2"
input: "Input"
output: "Concatenate_2"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_2"
type: "Mul2"
input: "RSubScalar"
input: "DelayInput"
output: "Mul2_2"
}
function {
name: "Affine"
type: "Affine"
input: "Concatenate_2"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh"
type: "Tanh"
input: "Affine"
output: "Tanh"
}
function {
name: "Mul2_3"
type: "Mul2"
input: "Tanh"
input: "Sigmoid_2"
output: "Mul2_3"
}
function {
name: "Add2"
type: "Add2"
input: "Mul2_2"
input: "Mul2_3"
output: "Add2"
add2_param {
inplace: True
}
}
function {
name: "Concatenate_3"
type: "Concatenate"
input: "Input_2"
input: "Add2"
output: "Concatenate_3"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_3"
type: "Affine"
input: "Concatenate_3"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_3"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_7"
type: "Affine"
input: "Concatenate_3"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_7"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid_4"
type: "Sigmoid"
input: "Affine_3"
output: "Sigmoid_4"
}
function {
name: "Sigmoid_5"
type: "Sigmoid"
input: "Affine_7"
output: "Sigmoid_5"
}
function {
name: "Mul2_4"
type: "Mul2"
input: "Sigmoid_4"
input: "Add2"
output: "Mul2_4"
}
function {
name: "RSubScalar_2"
type: "RSubScalar"
input: "Sigmoid_5"
output: "RSubScalar_2"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_4"
type: "Concatenate"
input: "Mul2_4"
input: "Input_2"
output: "Concatenate_4"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_5"
type: "Mul2"
input: "RSubScalar_2"
input: "Add2"
output: "Mul2_5"
}
function {
name: "Affine_6"
type: "Affine"
input: "Concatenate_4"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine_6"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_2"
type: "Tanh"
input: "Affine_6"
output: "Tanh_2"
}
function {
name: "Mul2_6"
type: "Mul2"
input: "Tanh_2"
input: "Sigmoid_5"
output: "Mul2_6"
}
function {
name: "Add2_2"
type: "Add2"
input: "Mul2_5"
input: "Mul2_6"
output: "Add2_2"
add2_param {
inplace: True
}
}
function {
name: "Concatenate_5"
type: "Concatenate"
input: "Add2_2"
input: "Input_3"
output: "Concatenate_5"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_8"
type: "Affine"
input: "Concatenate_5"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_8"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_10"
type: "Affine"
input: "Concatenate_5"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_10"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid_6"
type: "Sigmoid"
input: "Affine_8"
output: "Sigmoid_6"
}
function {
name: "Sigmoid_7"
type: "Sigmoid"
input: "Affine_10"
output: "Sigmoid_7"
}
function {
name: "Mul2_7"
type: "Mul2"
input: "Sigmoid_6"
input: "Add2_2"
output: "Mul2_7"
}
function {
name: "RSubScalar_3"
type: "RSubScalar"
input: "Sigmoid_7"
output: "RSubScalar_3"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_6"
type: "Concatenate"
input: "Mul2_7"
input: "Input_3"
output: "Concatenate_6"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_8"
type: "Mul2"
input: "RSubScalar_3"
input: "Add2_2"
output: "Mul2_8"
}
function {
name: "Affine_9"
type: "Affine"
input: "Concatenate_6"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine_9"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_3"
type: "Tanh"
input: "Affine_9"
output: "Tanh_3"
}
function {
name: "Mul2_9"
type: "Mul2"
input: "Tanh_3"
input: "Sigmoid_7"
output: "Mul2_9"
}
function {
name: "Add2_3"
type: "Add2"
input: "Mul2_8"
input: "Mul2_9"
output: "Add2_3"
add2_param {
inplace: True
}
}
function {
name: "Affine_2"
type: "Affine"
input: "Add2_3"
input: "Affine_2/affine/W"
input: "Affine_2/affine/b"
output: "Affine_2"
affine_param {
base_axis: 1
}
}
function {
name: "Softmax"
type: "Softmax"
input: "Affine_2"
output: "Softmax"
softmax_param {
axis: 1
}
}
function {
name: "CategoricalCrossEntropy"
type: "CategoricalCrossEntropy"
input: "Softmax"
input: "CategoricalCrossEntropy_T"
output: "CategoricalCrossEntropy"
categorical_cross_entropy_param {
axis: 1
}
}
}
network {
name: "MainValidation"
batch_size: 256
variable {
name: "Input"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "DelayInput"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_4/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_4/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_5/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_5/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_2/affine/W"
type: "Parameter"
shape: { dim: 784 dim: 3 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_2/affine/b"
type: "Parameter"
shape: { dim: 3 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "CategoricalCrossEntropy_T"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
variable {
name: "Concatenate"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_2"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_3"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_4"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_5"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_10"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_6"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_2"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "Softmax"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "CategoricalCrossEntropy"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
function {
name: "Concatenate"
type: "Concatenate"
input: "Input"
input: "DelayInput"
output: "Concatenate"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_4"
type: "Affine"
input: "Concatenate"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_4"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_5"
type: "Affine"
input: "Concatenate"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_5"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid"
type: "Sigmoid"
input: "Affine_4"
output: "Sigmoid"
}
function {
name: "Sigmoid_2"
type: "Sigmoid"
input: "Affine_5"
output: "Sigmoid_2"
}
function {
name: "Mul2"
type: "Mul2"
input: "Sigmoid"
input: "DelayInput"
output: "Mul2"
}
function {
name: "RSubScalar"
type: "RSubScalar"
input: "Sigmoid_2"
output: "RSubScalar"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_2"
type: "Concatenate"
input: "Mul2"
input: "Input"
output: "Concatenate_2"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_2"
type: "Mul2"
input: "RSubScalar"
input: "DelayInput"
output: "Mul2_2"
}
function {
name: "Affine"
type: "Affine"
input: "Concatenate_2"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh"
type: "Tanh"
input: "Affine"
output: "Tanh"
}
function {
name: "Mul2_3"
type: "Mul2"
input: "Tanh"
input: "Sigmoid_2"
output: "Mul2_3"
}
function {
name: "Add2"
type: "Add2"
input: "Mul2_2"
input: "Mul2_3"
output: "Add2"
add2_param {
inplace: True
}
}
function {
name: "Concatenate_3"
type: "Concatenate"
input: "Input_2"
input: "Add2"
output: "Concatenate_3"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_3"
type: "Affine"
input: "Concatenate_3"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_3"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_7"
type: "Affine"
input: "Concatenate_3"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_7"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid_4"
type: "Sigmoid"
input: "Affine_3"
output: "Sigmoid_4"
}
function {
name: "Sigmoid_5"
type: "Sigmoid"
input: "Affine_7"
output: "Sigmoid_5"
}
function {
name: "Mul2_4"
type: "Mul2"
input: "Sigmoid_4"
input: "Add2"
output: "Mul2_4"
}
function {
name: "RSubScalar_2"
type: "RSubScalar"
input: "Sigmoid_5"
output: "RSubScalar_2"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_4"
type: "Concatenate"
input: "Mul2_4"
input: "Input_2"
output: "Concatenate_4"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_5"
type: "Mul2"
input: "RSubScalar_2"
input: "Add2"
output: "Mul2_5"
}
function {
name: "Affine_6"
type: "Affine"
input: "Concatenate_4"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine_6"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_2"
type: "Tanh"
input: "Affine_6"
output: "Tanh_2"
}
function {
name: "Mul2_6"
type: "Mul2"
input: "Tanh_2"
input: "Sigmoid_5"
output: "Mul2_6"
}
function {
name: "Add2_2"
type: "Add2"
input: "Mul2_5"
input: "Mul2_6"
output: "Add2_2"
add2_param {
inplace: True
}
}
function {
name: "Concatenate_5"
type: "Concatenate"
input: "Add2_2"
input: "Input_3"
output: "Concatenate_5"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_8"
type: "Affine"
input: "Concatenate_5"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_8"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_10"
type: "Affine"
input: "Concatenate_5"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_10"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid_6"
type: "Sigmoid"
input: "Affine_8"
output: "Sigmoid_6"
}
function {
name: "Sigmoid_7"
type: "Sigmoid"
input: "Affine_10"
output: "Sigmoid_7"
}
function {
name: "Mul2_7"
type: "Mul2"
input: "Sigmoid_6"
input: "Add2_2"
output: "Mul2_7"
}
function {
name: "RSubScalar_3"
type: "RSubScalar"
input: "Sigmoid_7"
output: "RSubScalar_3"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_6"
type: "Concatenate"
input: "Mul2_7"
input: "Input_3"
output: "Concatenate_6"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_8"
type: "Mul2"
input: "RSubScalar_3"
input: "Add2_2"
output: "Mul2_8"
}
function {
name: "Affine_9"
type: "Affine"
input: "Concatenate_6"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine_9"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_3"
type: "Tanh"
input: "Affine_9"
output: "Tanh_3"
}
function {
name: "Mul2_9"
type: "Mul2"
input: "Tanh_3"
input: "Sigmoid_7"
output: "Mul2_9"
}
function {
name: "Add2_3"
type: "Add2"
input: "Mul2_8"
input: "Mul2_9"
output: "Add2_3"
add2_param {
inplace: True
}
}
function {
name: "Affine_2"
type: "Affine"
input: "Add2_3"
input: "Affine_2/affine/W"
input: "Affine_2/affine/b"
output: "Affine_2"
affine_param {
base_axis: 1
}
}
function {
name: "Softmax"
type: "Softmax"
input: "Affine_2"
output: "Softmax"
softmax_param {
axis: 1
}
}
function {
name: "CategoricalCrossEntropy"
type: "CategoricalCrossEntropy"
input: "Softmax"
input: "CategoricalCrossEntropy_T"
output: "CategoricalCrossEntropy"
categorical_cross_entropy_param {
axis: 1
}
}
}
network {
name: "MainRuntime"
batch_size: 256
variable {
name: "Input"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "DelayInput"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_4/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_4/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_5/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_5/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_2/affine/W"
type: "Parameter"
shape: { dim: 784 dim: 3 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_2/affine/b"
type: "Parameter"
shape: { dim: 3 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Concatenate"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_2"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_3"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_4"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_5"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_10"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "RSubScalar_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_6"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Mul2_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_2"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "Softmax"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
function {
name: "Concatenate"
type: "Concatenate"
input: "Input"
input: "DelayInput"
output: "Concatenate"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_4"
type: "Affine"
input: "Concatenate"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_4"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_5"
type: "Affine"
input: "Concatenate"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_5"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid"
type: "Sigmoid"
input: "Affine_4"
output: "Sigmoid"
}
function {
name: "Sigmoid_2"
type: "Sigmoid"
input: "Affine_5"
output: "Sigmoid_2"
}
function {
name: "Mul2"
type: "Mul2"
input: "Sigmoid"
input: "DelayInput"
output: "Mul2"
}
function {
name: "RSubScalar"
type: "RSubScalar"
input: "Sigmoid_2"
output: "RSubScalar"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_2"
type: "Concatenate"
input: "Mul2"
input: "Input"
output: "Concatenate_2"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_2"
type: "Mul2"
input: "RSubScalar"
input: "DelayInput"
output: "Mul2_2"
}
function {
name: "Affine"
type: "Affine"
input: "Concatenate_2"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh"
type: "Tanh"
input: "Affine"
output: "Tanh"
}
function {
name: "Mul2_3"
type: "Mul2"
input: "Tanh"
input: "Sigmoid_2"
output: "Mul2_3"
}
function {
name: "Add2"
type: "Add2"
input: "Mul2_2"
input: "Mul2_3"
output: "Add2"
add2_param {
inplace: True
}
}
function {
name: "Concatenate_3"
type: "Concatenate"
input: "Input_2"
input: "Add2"
output: "Concatenate_3"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_3"
type: "Affine"
input: "Concatenate_3"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_3"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_7"
type: "Affine"
input: "Concatenate_3"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_7"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid_4"
type: "Sigmoid"
input: "Affine_3"
output: "Sigmoid_4"
}
function {
name: "Sigmoid_5"
type: "Sigmoid"
input: "Affine_7"
output: "Sigmoid_5"
}
function {
name: "Mul2_4"
type: "Mul2"
input: "Sigmoid_4"
input: "Add2"
output: "Mul2_4"
}
function {
name: "RSubScalar_2"
type: "RSubScalar"
input: "Sigmoid_5"
output: "RSubScalar_2"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_4"
type: "Concatenate"
input: "Mul2_4"
input: "Input_2"
output: "Concatenate_4"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_5"
type: "Mul2"
input: "RSubScalar_2"
input: "Add2"
output: "Mul2_5"
}
function {
name: "Affine_6"
type: "Affine"
input: "Concatenate_4"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine_6"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_2"
type: "Tanh"
input: "Affine_6"
output: "Tanh_2"
}
function {
name: "Mul2_6"
type: "Mul2"
input: "Tanh_2"
input: "Sigmoid_5"
output: "Mul2_6"
}
function {
name: "Add2_2"
type: "Add2"
input: "Mul2_5"
input: "Mul2_6"
output: "Add2_2"
add2_param {
inplace: True
}
}
function {
name: "Concatenate_5"
type: "Concatenate"
input: "Add2_2"
input: "Input_3"
output: "Concatenate_5"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_8"
type: "Affine"
input: "Concatenate_5"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_8"
affine_param {
base_axis: 1
}
}
function {
name: "Affine_10"
type: "Affine"
input: "Concatenate_5"
input: "Affine_5/affine/W"
input: "Affine_5/affine/b"
output: "Affine_10"
affine_param {
base_axis: 1
}
}
function {
name: "Sigmoid_6"
type: "Sigmoid"
input: "Affine_8"
output: "Sigmoid_6"
}
function {
name: "Sigmoid_7"
type: "Sigmoid"
input: "Affine_10"
output: "Sigmoid_7"
}
function {
name: "Mul2_7"
type: "Mul2"
input: "Sigmoid_6"
input: "Add2_2"
output: "Mul2_7"
}
function {
name: "RSubScalar_3"
type: "RSubScalar"
input: "Sigmoid_7"
output: "RSubScalar_3"
r_sub_scalar_param {
val: 1
}
}
function {
name: "Concatenate_6"
type: "Concatenate"
input: "Mul2_7"
input: "Input_3"
output: "Concatenate_6"
concatenate_param {
axis: 1
}
}
function {
name: "Mul2_8"
type: "Mul2"
input: "RSubScalar_3"
input: "Add2_2"
output: "Mul2_8"
}
function {
name: "Affine_9"
type: "Affine"
input: "Concatenate_6"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine_9"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_3"
type: "Tanh"
input: "Affine_9"
output: "Tanh_3"
}
function {
name: "Mul2_9"
type: "Mul2"
input: "Tanh_3"
input: "Sigmoid_7"
output: "Mul2_9"
}
function {
name: "Add2_3"
type: "Add2"
input: "Mul2_8"
input: "Mul2_9"
output: "Add2_3"
add2_param {
inplace: True
}
}
function {
name: "Affine_2"
type: "Affine"
input: "Add2_3"
input: "Affine_2/affine/W"
input: "Affine_2/affine/b"
output: "Affine_2"
affine_param {
base_axis: 1
}
}
function {
name: "Softmax"
type: "Softmax"
input: "Affine_2"
output: "Softmax"
softmax_param {
axis: 1
}
}
}
dataset {
name: "Training"
uri: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_training.csv"
cache_dir: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_training.cache"
overwrite_cache: False
create_cache_explicitly: True
shuffle: true
no_image_normalization: False
batch_size: 256
}
dataset {
name: "Validation"
uri: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_validation.csv"
cache_dir: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_validation.cache"
overwrite_cache: False
create_cache_explicitly: True
shuffle: false
no_image_normalization: False
batch_size: 256
}
optimizer {
name: "Optimizer"
update_interval: 1
network_name: "Main"
dataset_name: "Training"
solver {
type: "Adam"
weight_decay: 0
lr_decay: 1
lr_decay_interval: 78
adam_param {
alpha: 0.001
beta1: 0.9
beta2: 0.999
eps: 1e-08
}
}
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
data_variable {
variable_name: "CategoricalCrossEntropy_T"
data_name: "y"
}
loss_variable {
variable_name: "CategoricalCrossEntropy"
}
parameter_variable {
variable_name: "Affine_4/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_4/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_5/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_5/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_2/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_2/affine/b"
learning_rate_multiplier: 1
}
}
monitor {
name: "train_error"
network_name: "MainValidation"
dataset_name: "Training"
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
data_variable {
variable_name: "CategoricalCrossEntropy_T"
data_name: "y"
}
monitor_variable {
type: "Error"
variable_name: "CategoricalCrossEntropy"
}
}
monitor {
name: "valid_error"
network_name: "MainValidation"
dataset_name: "Validation"
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
data_variable {
variable_name: "CategoricalCrossEntropy_T"
data_name: "y"
}
monitor_variable {
type: "Error"
variable_name: "CategoricalCrossEntropy"
}
}
executor {
name: "Executor"
network_name: "MainRuntime"
num_evaluations: 1
repeat_evaluation_type: "mean"
need_back_propagation: false
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
output_variable {
variable_name: "Softmax"
data_name: "y'"
}
parameter_variable {
variable_name: "Affine_4/affine/W"
}
parameter_variable {
variable_name: "Affine_4/affine/b"
}
parameter_variable {
variable_name: "Affine_5/affine/W"
}
parameter_variable {
variable_name: "Affine_5/affine/b"
}
parameter_variable {
variable_name: "Affine/affine/W"
}
parameter_variable {
variable_name: "Affine/affine/b"
}
parameter_variable {
variable_name: "Affine_2/affine/W"
}
parameter_variable {
variable_name: "Affine_2/affine/b"
}
}
global_config {
default_context {
array_class: "CudaCachedArray"
device_id: "0"
backends: "cudnn:float"
backends: "cuda:float"
backends: "cpu:float"
}
}
training_config {
max_epoch: 1000
iter_per_epoch: 78
save_best: true
monitor_interval: 10
}
network {
name: "Main"
batch_size: 256
variable {
name: "Input"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "DelayInput"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_4/affine/W"
type: "Parameter"
shape: { dim: 784 dim: 3 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_4/affine/b"
type: "Parameter"
shape: { dim: 3 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "CategoricalCrossEntropy_T"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
variable {
name: "Concatenate"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_2"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_3"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_10"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_4"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "Softmax"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "CategoricalCrossEntropy"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
function {
name: "Concatenate"
type: "Concatenate"
input: "Input"
input: "DelayInput"
output: "Concatenate"
concatenate_param {
axis: 1
}
}
function {
name: "Affine"
type: "Affine"
input: "Concatenate"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate"
type: "Affine"
input: "Concatenate"
input: "InputGate/affine/W"
input: "InputGate/affine/b"
output: "InputGate"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate"
type: "Affine"
input: "Concatenate"
input: "ForgetGate/affine/W"
input: "ForgetGate/affine/b"
output: "ForgetGate"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate"
type: "Affine"
input: "Concatenate"
input: "OutputGate/affine/W"
input: "OutputGate/affine/b"
output: "OutputGate"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh"
type: "Tanh"
input: "Affine"
output: "Tanh"
}
function {
name: "Sigmoid_4"
type: "Sigmoid"
input: "InputGate"
output: "Sigmoid_4"
}
function {
name: "Sigmoid_2"
type: "Sigmoid"
input: "ForgetGate"
output: "Sigmoid_2"
}
function {
name: "Sigmoid_3"
type: "Sigmoid"
input: "OutputGate"
output: "Sigmoid_3"
}
function {
name: "Mul2"
type: "Mul2"
input: "Sigmoid_4"
input: "Tanh"
output: "Mul2"
}
function {
name: "Mul2_2"
type: "Mul2"
input: "Sigmoid_2"
input: "DelayInput"
output: "Mul2_2"
}
function {
name: "Add2"
type: "Add2"
input: "Mul2"
input: "Mul2_2"
output: "Add2"
add2_param {
inplace: True
}
}
function {
name: "Tanh_2"
type: "Tanh"
input: "Add2"
output: "Tanh_2"
}
function {
name: "Mul2_3"
type: "Mul2"
input: "Sigmoid_3"
input: "Tanh_2"
output: "Mul2_3"
}
function {
name: "Concatenate_2"
type: "Concatenate"
input: "Input_2"
input: "Mul2_3"
output: "Concatenate_2"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_2"
type: "Affine"
input: "Concatenate_2"
input: "Affine_2/affine/W"
input: "Affine_2/affine/b"
output: "Affine_2"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate_2"
type: "Affine"
input: "Concatenate_2"
input: "InputGate_2/affine/W"
input: "InputGate_2/affine/b"
output: "InputGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate_2"
type: "Affine"
input: "Concatenate_2"
input: "ForgetGate_2/affine/W"
input: "ForgetGate_2/affine/b"
output: "ForgetGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate_2"
type: "Affine"
input: "Concatenate_2"
input: "OutputGate_2/affine/W"
input: "OutputGate_2/affine/b"
output: "OutputGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_3"
type: "Tanh"
input: "Affine_2"
output: "Tanh_3"
}
function {
name: "Sigmoid_5"
type: "Sigmoid"
input: "InputGate_2"
output: "Sigmoid_5"
}
function {
name: "Sigmoid_6"
type: "Sigmoid"
input: "ForgetGate_2"
output: "Sigmoid_6"
}
function {
name: "Sigmoid_7"
type: "Sigmoid"
input: "OutputGate_2"
output: "Sigmoid_7"
}
function {
name: "Mul2_4"
type: "Mul2"
input: "Sigmoid_5"
input: "Tanh_3"
output: "Mul2_4"
}
function {
name: "Mul2_5"
type: "Mul2"
input: "Sigmoid_6"
input: "Mul2_3"
output: "Mul2_5"
}
function {
name: "Add2_2"
type: "Add2"
input: "Mul2_4"
input: "Mul2_5"
output: "Add2_2"
add2_param {
inplace: True
}
}
function {
name: "Tanh_4"
type: "Tanh"
input: "Add2_2"
output: "Tanh_4"
}
function {
name: "Mul2_6"
type: "Mul2"
input: "Sigmoid_7"
input: "Tanh_4"
output: "Mul2_6"
}
function {
name: "Concatenate_3"
type: "Concatenate"
input: "Input_3"
input: "Mul2_6"
output: "Concatenate_3"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_3"
type: "Affine"
input: "Concatenate_3"
input: "Affine_3/affine/W"
input: "Affine_3/affine/b"
output: "Affine_3"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate_3"
type: "Affine"
input: "Concatenate_3"
input: "InputGate_3/affine/W"
input: "InputGate_3/affine/b"
output: "InputGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate_3"
type: "Affine"
input: "Concatenate_3"
input: "ForgetGate_3/affine/W"
input: "ForgetGate_3/affine/b"
output: "ForgetGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate_3"
type: "Affine"
input: "Concatenate_3"
input: "OutputGate_3/affine/W"
input: "OutputGate_3/affine/b"
output: "OutputGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_5"
type: "Tanh"
input: "Affine_3"
output: "Tanh_5"
}
function {
name: "Sigmoid_8"
type: "Sigmoid"
input: "InputGate_3"
output: "Sigmoid_8"
}
function {
name: "Sigmoid_9"
type: "Sigmoid"
input: "ForgetGate_3"
output: "Sigmoid_9"
}
function {
name: "Sigmoid_10"
type: "Sigmoid"
input: "OutputGate_3"
output: "Sigmoid_10"
}
function {
name: "Mul2_7"
type: "Mul2"
input: "Sigmoid_8"
input: "Tanh_5"
output: "Mul2_7"
}
function {
name: "Mul2_8"
type: "Mul2"
input: "Sigmoid_9"
input: "Mul2_6"
output: "Mul2_8"
}
function {
name: "Add2_3"
type: "Add2"
input: "Mul2_7"
input: "Mul2_8"
output: "Add2_3"
add2_param {
inplace: True
}
}
function {
name: "Tanh_6"
type: "Tanh"
input: "Add2_3"
output: "Tanh_6"
}
function {
name: "Mul2_9"
type: "Mul2"
input: "Sigmoid_10"
input: "Tanh_6"
output: "Mul2_9"
}
function {
name: "Affine_4"
type: "Affine"
input: "Mul2_9"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_4"
affine_param {
base_axis: 1
}
}
function {
name: "Softmax"
type: "Softmax"
input: "Affine_4"
output: "Softmax"
softmax_param {
axis: 1
}
}
function {
name: "CategoricalCrossEntropy"
type: "CategoricalCrossEntropy"
input: "Softmax"
input: "CategoricalCrossEntropy_T"
output: "CategoricalCrossEntropy"
categorical_cross_entropy_param {
axis: 1
}
}
}
network {
name: "MainValidation"
batch_size: 256
variable {
name: "Input"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "DelayInput"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_4/affine/W"
type: "Parameter"
shape: { dim: 784 dim: 3 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_4/affine/b"
type: "Parameter"
shape: { dim: 3 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "CategoricalCrossEntropy_T"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
variable {
name: "Concatenate"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_2"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_3"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_10"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_4"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "Softmax"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "CategoricalCrossEntropy"
type: "Buffer"
shape: { dim:-1 dim: 1 }
}
function {
name: "Concatenate"
type: "Concatenate"
input: "Input"
input: "DelayInput"
output: "Concatenate"
concatenate_param {
axis: 1
}
}
function {
name: "Affine"
type: "Affine"
input: "Concatenate"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate"
type: "Affine"
input: "Concatenate"
input: "InputGate/affine/W"
input: "InputGate/affine/b"
output: "InputGate"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate"
type: "Affine"
input: "Concatenate"
input: "ForgetGate/affine/W"
input: "ForgetGate/affine/b"
output: "ForgetGate"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate"
type: "Affine"
input: "Concatenate"
input: "OutputGate/affine/W"
input: "OutputGate/affine/b"
output: "OutputGate"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh"
type: "Tanh"
input: "Affine"
output: "Tanh"
}
function {
name: "Sigmoid_4"
type: "Sigmoid"
input: "InputGate"
output: "Sigmoid_4"
}
function {
name: "Sigmoid_2"
type: "Sigmoid"
input: "ForgetGate"
output: "Sigmoid_2"
}
function {
name: "Sigmoid_3"
type: "Sigmoid"
input: "OutputGate"
output: "Sigmoid_3"
}
function {
name: "Mul2"
type: "Mul2"
input: "Sigmoid_4"
input: "Tanh"
output: "Mul2"
}
function {
name: "Mul2_2"
type: "Mul2"
input: "Sigmoid_2"
input: "DelayInput"
output: "Mul2_2"
}
function {
name: "Add2"
type: "Add2"
input: "Mul2"
input: "Mul2_2"
output: "Add2"
add2_param {
inplace: True
}
}
function {
name: "Tanh_2"
type: "Tanh"
input: "Add2"
output: "Tanh_2"
}
function {
name: "Mul2_3"
type: "Mul2"
input: "Sigmoid_3"
input: "Tanh_2"
output: "Mul2_3"
}
function {
name: "Concatenate_2"
type: "Concatenate"
input: "Input_2"
input: "Mul2_3"
output: "Concatenate_2"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_2"
type: "Affine"
input: "Concatenate_2"
input: "Affine_2/affine/W"
input: "Affine_2/affine/b"
output: "Affine_2"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate_2"
type: "Affine"
input: "Concatenate_2"
input: "InputGate_2/affine/W"
input: "InputGate_2/affine/b"
output: "InputGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate_2"
type: "Affine"
input: "Concatenate_2"
input: "ForgetGate_2/affine/W"
input: "ForgetGate_2/affine/b"
output: "ForgetGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate_2"
type: "Affine"
input: "Concatenate_2"
input: "OutputGate_2/affine/W"
input: "OutputGate_2/affine/b"
output: "OutputGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_3"
type: "Tanh"
input: "Affine_2"
output: "Tanh_3"
}
function {
name: "Sigmoid_5"
type: "Sigmoid"
input: "InputGate_2"
output: "Sigmoid_5"
}
function {
name: "Sigmoid_6"
type: "Sigmoid"
input: "ForgetGate_2"
output: "Sigmoid_6"
}
function {
name: "Sigmoid_7"
type: "Sigmoid"
input: "OutputGate_2"
output: "Sigmoid_7"
}
function {
name: "Mul2_4"
type: "Mul2"
input: "Sigmoid_5"
input: "Tanh_3"
output: "Mul2_4"
}
function {
name: "Mul2_5"
type: "Mul2"
input: "Sigmoid_6"
input: "Mul2_3"
output: "Mul2_5"
}
function {
name: "Add2_2"
type: "Add2"
input: "Mul2_4"
input: "Mul2_5"
output: "Add2_2"
add2_param {
inplace: True
}
}
function {
name: "Tanh_4"
type: "Tanh"
input: "Add2_2"
output: "Tanh_4"
}
function {
name: "Mul2_6"
type: "Mul2"
input: "Sigmoid_7"
input: "Tanh_4"
output: "Mul2_6"
}
function {
name: "Concatenate_3"
type: "Concatenate"
input: "Input_3"
input: "Mul2_6"
output: "Concatenate_3"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_3"
type: "Affine"
input: "Concatenate_3"
input: "Affine_3/affine/W"
input: "Affine_3/affine/b"
output: "Affine_3"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate_3"
type: "Affine"
input: "Concatenate_3"
input: "InputGate_3/affine/W"
input: "InputGate_3/affine/b"
output: "InputGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate_3"
type: "Affine"
input: "Concatenate_3"
input: "ForgetGate_3/affine/W"
input: "ForgetGate_3/affine/b"
output: "ForgetGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate_3"
type: "Affine"
input: "Concatenate_3"
input: "OutputGate_3/affine/W"
input: "OutputGate_3/affine/b"
output: "OutputGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_5"
type: "Tanh"
input: "Affine_3"
output: "Tanh_5"
}
function {
name: "Sigmoid_8"
type: "Sigmoid"
input: "InputGate_3"
output: "Sigmoid_8"
}
function {
name: "Sigmoid_9"
type: "Sigmoid"
input: "ForgetGate_3"
output: "Sigmoid_9"
}
function {
name: "Sigmoid_10"
type: "Sigmoid"
input: "OutputGate_3"
output: "Sigmoid_10"
}
function {
name: "Mul2_7"
type: "Mul2"
input: "Sigmoid_8"
input: "Tanh_5"
output: "Mul2_7"
}
function {
name: "Mul2_8"
type: "Mul2"
input: "Sigmoid_9"
input: "Mul2_6"
output: "Mul2_8"
}
function {
name: "Add2_3"
type: "Add2"
input: "Mul2_7"
input: "Mul2_8"
output: "Add2_3"
add2_param {
inplace: True
}
}
function {
name: "Tanh_6"
type: "Tanh"
input: "Add2_3"
output: "Tanh_6"
}
function {
name: "Mul2_9"
type: "Mul2"
input: "Sigmoid_10"
input: "Tanh_6"
output: "Mul2_9"
}
function {
name: "Affine_4"
type: "Affine"
input: "Mul2_9"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_4"
affine_param {
base_axis: 1
}
}
function {
name: "Softmax"
type: "Softmax"
input: "Affine_4"
output: "Softmax"
softmax_param {
axis: 1
}
}
function {
name: "CategoricalCrossEntropy"
type: "CategoricalCrossEntropy"
input: "Softmax"
input: "CategoricalCrossEntropy_T"
output: "CategoricalCrossEntropy"
categorical_cross_entropy_param {
axis: 1
}
}
}
network {
name: "MainRuntime"
batch_size: 256
variable {
name: "Input"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Input_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "DelayInput"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate_2/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate_2/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "InputGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "InputGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "ForgetGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "ForgetGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "OutputGate_3/affine/W"
type: "Parameter"
shape: { dim: 1568 dim: 1 dim: 28 dim: 28 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "OutputGate_3/affine/b"
type: "Parameter"
shape: { dim: 1 dim: 28 dim: 28 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Affine_4/affine/W"
type: "Parameter"
shape: { dim: 784 dim: 3 }
initializer {
type: "NormalAffineGlorot"
multiplier: 1
}
}
variable {
name: "Affine_4/affine/b"
type: "Parameter"
shape: { dim: 3 }
initializer {
type: "Constant"
multiplier: 0
}
}
variable {
name: "Concatenate"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_2"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_2"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_4"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Concatenate_3"
type: "Buffer"
shape: { dim:-1 dim: 2 dim: 28 dim: 28 }
}
variable {
name: "Affine_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "InputGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "ForgetGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "OutputGate_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_5"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Sigmoid_10"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_7"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_8"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Add2_3"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Tanh_6"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Mul2_9"
type: "Buffer"
shape: { dim:-1 dim: 1 dim: 28 dim: 28 }
}
variable {
name: "Affine_4"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
variable {
name: "Softmax"
type: "Buffer"
shape: { dim:-1 dim: 3 }
}
function {
name: "Concatenate"
type: "Concatenate"
input: "Input"
input: "DelayInput"
output: "Concatenate"
concatenate_param {
axis: 1
}
}
function {
name: "Affine"
type: "Affine"
input: "Concatenate"
input: "Affine/affine/W"
input: "Affine/affine/b"
output: "Affine"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate"
type: "Affine"
input: "Concatenate"
input: "InputGate/affine/W"
input: "InputGate/affine/b"
output: "InputGate"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate"
type: "Affine"
input: "Concatenate"
input: "ForgetGate/affine/W"
input: "ForgetGate/affine/b"
output: "ForgetGate"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate"
type: "Affine"
input: "Concatenate"
input: "OutputGate/affine/W"
input: "OutputGate/affine/b"
output: "OutputGate"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh"
type: "Tanh"
input: "Affine"
output: "Tanh"
}
function {
name: "Sigmoid_4"
type: "Sigmoid"
input: "InputGate"
output: "Sigmoid_4"
}
function {
name: "Sigmoid_2"
type: "Sigmoid"
input: "ForgetGate"
output: "Sigmoid_2"
}
function {
name: "Sigmoid_3"
type: "Sigmoid"
input: "OutputGate"
output: "Sigmoid_3"
}
function {
name: "Mul2"
type: "Mul2"
input: "Sigmoid_4"
input: "Tanh"
output: "Mul2"
}
function {
name: "Mul2_2"
type: "Mul2"
input: "Sigmoid_2"
input: "DelayInput"
output: "Mul2_2"
}
function {
name: "Add2"
type: "Add2"
input: "Mul2"
input: "Mul2_2"
output: "Add2"
add2_param {
inplace: True
}
}
function {
name: "Tanh_2"
type: "Tanh"
input: "Add2"
output: "Tanh_2"
}
function {
name: "Mul2_3"
type: "Mul2"
input: "Sigmoid_3"
input: "Tanh_2"
output: "Mul2_3"
}
function {
name: "Concatenate_2"
type: "Concatenate"
input: "Input_2"
input: "Mul2_3"
output: "Concatenate_2"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_2"
type: "Affine"
input: "Concatenate_2"
input: "Affine_2/affine/W"
input: "Affine_2/affine/b"
output: "Affine_2"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate_2"
type: "Affine"
input: "Concatenate_2"
input: "InputGate_2/affine/W"
input: "InputGate_2/affine/b"
output: "InputGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate_2"
type: "Affine"
input: "Concatenate_2"
input: "ForgetGate_2/affine/W"
input: "ForgetGate_2/affine/b"
output: "ForgetGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate_2"
type: "Affine"
input: "Concatenate_2"
input: "OutputGate_2/affine/W"
input: "OutputGate_2/affine/b"
output: "OutputGate_2"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_3"
type: "Tanh"
input: "Affine_2"
output: "Tanh_3"
}
function {
name: "Sigmoid_5"
type: "Sigmoid"
input: "InputGate_2"
output: "Sigmoid_5"
}
function {
name: "Sigmoid_6"
type: "Sigmoid"
input: "ForgetGate_2"
output: "Sigmoid_6"
}
function {
name: "Sigmoid_7"
type: "Sigmoid"
input: "OutputGate_2"
output: "Sigmoid_7"
}
function {
name: "Mul2_4"
type: "Mul2"
input: "Sigmoid_5"
input: "Tanh_3"
output: "Mul2_4"
}
function {
name: "Mul2_5"
type: "Mul2"
input: "Sigmoid_6"
input: "Mul2_3"
output: "Mul2_5"
}
function {
name: "Add2_2"
type: "Add2"
input: "Mul2_4"
input: "Mul2_5"
output: "Add2_2"
add2_param {
inplace: True
}
}
function {
name: "Tanh_4"
type: "Tanh"
input: "Add2_2"
output: "Tanh_4"
}
function {
name: "Mul2_6"
type: "Mul2"
input: "Sigmoid_7"
input: "Tanh_4"
output: "Mul2_6"
}
function {
name: "Concatenate_3"
type: "Concatenate"
input: "Input_3"
input: "Mul2_6"
output: "Concatenate_3"
concatenate_param {
axis: 1
}
}
function {
name: "Affine_3"
type: "Affine"
input: "Concatenate_3"
input: "Affine_3/affine/W"
input: "Affine_3/affine/b"
output: "Affine_3"
affine_param {
base_axis: 1
}
}
function {
name: "InputGate_3"
type: "Affine"
input: "Concatenate_3"
input: "InputGate_3/affine/W"
input: "InputGate_3/affine/b"
output: "InputGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "ForgetGate_3"
type: "Affine"
input: "Concatenate_3"
input: "ForgetGate_3/affine/W"
input: "ForgetGate_3/affine/b"
output: "ForgetGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "OutputGate_3"
type: "Affine"
input: "Concatenate_3"
input: "OutputGate_3/affine/W"
input: "OutputGate_3/affine/b"
output: "OutputGate_3"
affine_param {
base_axis: 1
}
}
function {
name: "Tanh_5"
type: "Tanh"
input: "Affine_3"
output: "Tanh_5"
}
function {
name: "Sigmoid_8"
type: "Sigmoid"
input: "InputGate_3"
output: "Sigmoid_8"
}
function {
name: "Sigmoid_9"
type: "Sigmoid"
input: "ForgetGate_3"
output: "Sigmoid_9"
}
function {
name: "Sigmoid_10"
type: "Sigmoid"
input: "OutputGate_3"
output: "Sigmoid_10"
}
function {
name: "Mul2_7"
type: "Mul2"
input: "Sigmoid_8"
input: "Tanh_5"
output: "Mul2_7"
}
function {
name: "Mul2_8"
type: "Mul2"
input: "Sigmoid_9"
input: "Mul2_6"
output: "Mul2_8"
}
function {
name: "Add2_3"
type: "Add2"
input: "Mul2_7"
input: "Mul2_8"
output: "Add2_3"
add2_param {
inplace: True
}
}
function {
name: "Tanh_6"
type: "Tanh"
input: "Add2_3"
output: "Tanh_6"
}
function {
name: "Mul2_9"
type: "Mul2"
input: "Sigmoid_10"
input: "Tanh_6"
output: "Mul2_9"
}
function {
name: "Affine_4"
type: "Affine"
input: "Mul2_9"
input: "Affine_4/affine/W"
input: "Affine_4/affine/b"
output: "Affine_4"
affine_param {
base_axis: 1
}
}
function {
name: "Softmax"
type: "Softmax"
input: "Affine_4"
output: "Softmax"
softmax_param {
axis: 1
}
}
}
dataset {
name: "Training"
uri: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_training.csv"
cache_dir: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_training.cache"
overwrite_cache: False
create_cache_explicitly: True
shuffle: true
no_image_normalization: False
batch_size: 256
}
dataset {
name: "Validation"
uri: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_validation.csv"
cache_dir: "F:\\neural_network_console_120\\samples\\sample_dataset\\MNIST\\hoge1_validation.cache"
overwrite_cache: False
create_cache_explicitly: True
shuffle: false
no_image_normalization: False
batch_size: 256
}
optimizer {
name: "Optimizer"
update_interval: 1
network_name: "Main"
dataset_name: "Training"
solver {
type: "Adam"
weight_decay: 0
lr_decay: 1
lr_decay_interval: 78
adam_param {
alpha: 0.001
beta1: 0.9
beta2: 0.999
eps: 1e-08
}
}
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
data_variable {
variable_name: "CategoricalCrossEntropy_T"
data_name: "y"
}
loss_variable {
variable_name: "CategoricalCrossEntropy"
}
parameter_variable {
variable_name: "Affine/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "InputGate/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "InputGate/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "ForgetGate/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "ForgetGate/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "OutputGate/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "OutputGate/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_2/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_2/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "InputGate_2/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "InputGate_2/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "ForgetGate_2/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "ForgetGate_2/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "OutputGate_2/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "OutputGate_2/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_3/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_3/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "InputGate_3/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "InputGate_3/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "ForgetGate_3/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "ForgetGate_3/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "OutputGate_3/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "OutputGate_3/affine/b"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_4/affine/W"
learning_rate_multiplier: 1
}
parameter_variable {
variable_name: "Affine_4/affine/b"
learning_rate_multiplier: 1
}
}
monitor {
name: "train_error"
network_name: "MainValidation"
dataset_name: "Training"
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
data_variable {
variable_name: "CategoricalCrossEntropy_T"
data_name: "y"
}
monitor_variable {
type: "Error"
variable_name: "CategoricalCrossEntropy"
}
}
monitor {
name: "valid_error"
network_name: "MainValidation"
dataset_name: "Validation"
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
data_variable {
variable_name: "CategoricalCrossEntropy_T"
data_name: "y"
}
monitor_variable {
type: "Error"
variable_name: "CategoricalCrossEntropy"
}
}
executor {
name: "Executor"
network_name: "MainRuntime"
num_evaluations: 1
repeat_evaluation_type: "mean"
need_back_propagation: false
data_variable {
variable_name: "Input"
data_name: "x1"
}
data_variable {
variable_name: "Input_2"
data_name: "x2"
}
data_variable {
variable_name: "Input_3"
data_name: "x3"
}
generator_variable {
variable_name: "DelayInput"
type: "Constant"
multiplier: 0
}
output_variable {
variable_name: "Softmax"
data_name: "y'"
}
parameter_variable {
variable_name: "Affine/affine/W"
}
parameter_variable {
variable_name: "Affine/affine/b"
}
parameter_variable {
variable_name: "InputGate/affine/W"
}
parameter_variable {
variable_name: "InputGate/affine/b"
}
parameter_variable {
variable_name: "ForgetGate/affine/W"
}
parameter_variable {
variable_name: "ForgetGate/affine/b"
}
parameter_variable {
variable_name: "OutputGate/affine/W"
}
parameter_variable {
variable_name: "OutputGate/affine/b"
}
parameter_variable {
variable_name: "Affine_2/affine/W"
}
parameter_variable {
variable_name: "Affine_2/affine/b"
}
parameter_variable {
variable_name: "InputGate_2/affine/W"
}
parameter_variable {
variable_name: "InputGate_2/affine/b"
}
parameter_variable {
variable_name: "ForgetGate_2/affine/W"
}
parameter_variable {
variable_name: "ForgetGate_2/affine/b"
}
parameter_variable {
variable_name: "OutputGate_2/affine/W"
}
parameter_variable {
variable_name: "OutputGate_2/affine/b"
}
parameter_variable {
variable_name: "Affine_3/affine/W"
}
parameter_variable {
variable_name: "Affine_3/affine/b"
}
parameter_variable {
variable_name: "InputGate_3/affine/W"
}
parameter_variable {
variable_name: "InputGate_3/affine/b"
}
parameter_variable {
variable_name: "ForgetGate_3/affine/W"
}
parameter_variable {
variable_name: "ForgetGate_3/affine/b"
}
parameter_variable {
variable_name: "OutputGate_3/affine/W"
}
parameter_variable {
variable_name: "OutputGate_3/affine/b"
}
parameter_variable {
variable_name: "Affine_4/affine/W"
}
parameter_variable {
variable_name: "Affine_4/affine/b"
}
}
import math
import os
import random
import pandas as pd
base_dir = r"F:\neural_network_console_120\samples\sample_dataset\MNIST"
name = "hoge1"
variable_count = 3
def hoge(dataset_dirname, count):
rows = []
files = []
dataset_dirpath = os.path.join(base_dir, dataset_dirname)
for i in range(10):
dirpath = os.path.join(dataset_dirpath, str(i))
files.append([fn for fn in os.listdir(dirpath) if os.path.isfile(os.path.join(dirpath, fn))])
for i in range(count):
row = type('',(object,), {
'paths': [],
'digits': [],
'get_label': lambda self: math.ceil(sum(self.digits) / len(self.digits)),
'get_csv_header': lambda self: ([f"x{n+1}:image" for n in range(len(self.paths))] + ["y:label"]),
'get_csv_values': lambda self: self.paths + [self.get_label()],
'__str__': lambda self: f"l: {self.get_label()}, d: {self.digits}, p: {self.paths}",
})()
for n in range(variable_count):
digit = random.randint(0, 9)
class_dirname = f"{digit}"
fileindex = random.randint(0, len(files[digit]) - 1)
path = os.path.join(r".", dataset_dirname, class_dirname, files[digit][fileindex])
row.paths.append(path)
row.digits.append(digit)
rows.append(row)
values = [row.get_csv_values() for row in rows]
output_path = os.path.join(base_dir, f"{name}_{dataset_dirname}.csv")
df = pd.DataFrame(values, columns=rows[0].get_csv_header())
df.to_csv(output_path, index=False, encoding="utf-8")
hoge("training", 20000)
hoge("validation", 2000)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment