// Copyright 2018,2019,2020,2021 Sony Corporation. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // // *WARNING* // THIS FILE IS AUTO-GENERATED BY CODE GENERATOR. // PLEASE DO NOT EDIT THIS FILE BY HAND! // If you want to modify this file, edit following files. // - build-tools/code_generator/templates/src_nbla_proto_nnabla_proto_template.proto // - build-tools/code_generator/generator/generate_src_nbla_proto_nnabla_proto.py syntax = "proto3"; message Shape { repeated int64 dim = 1 [packed = true]; } message Communicator {} message Context { repeated string backends = 1; string array_class = 2; string device_id = 3; string backend = 4; // Obsolete string compute_backend = 5; // Obsolete } message NNablaProtoBuf { string version = 1; GlobalConfig global_config = 2; TrainingConfig training_config = 10; repeated Network network = 100; repeated Parameter parameter = 200; repeated Dataset dataset = 300; repeated Optimizer optimizer = 400; repeated Monitor monitor = 500; repeated Executor executor = 600; } message GlobalConfig { Context default_context = 1; } message TrainingConfig { int64 max_epoch = 1; int64 iter_per_epoch = 2; bool save_best = 100; int64 monitor_interval = 200; } message Network { string name = 1; int64 batch_size = 10; repeated RepeatInfo repeat_info = 11; repeated Variable variable = 100; repeated Function function = 200; } message RepeatInfo { string id = 1; int64 times = 2; } message RepeatParameter { string repeat_id = 1; int64 times = 2; } message RecurrentParameter { string repeat_id = 1; int64 length = 2; int64 axis = 3; } message Variable { string name = 1; string type = 2; repeated string repeat_id = 3; Shape shape = 20; Initializer initializer = 100; } message Initializer { string type = 2; float multiplier = 10; } message Parameter { string variable_name = 1; Shape shape = 20; repeated float data=100; bool need_grad=101; } message Dataset { string name = 1; string type = 2; string uri = 10; int64 batch_size = 20; string cache_dir = 30; bool overwrite_cache = 31; bool create_cache_explicitly = 32; bool shuffle = 100; bool no_image_normalization = 101; repeated string variable=200; } message Optimizer { string name = 1; int64 order = 3; string network_name = 10; repeated string dataset_name = 20; Solver solver = 30; int64 update_interval = 40; repeated DataVariable data_variable = 50; repeated GeneratorVariable generator_variable = 60; repeated LossVariable loss_variable = 70; repeated ParameterVariable parameter_variable = 80; int64 start_iter = 100; int64 end_iter = 101; } message SolverStateParameter { Shape shape = 20; repeated float data = 100; } message SolverState { uint32 t = 1; map state_parameter = 2; } message Solver { string type = 2; Context context = 10; float weight_decay = 20; map states = 40; oneof parameter { SgdParameter sgd_param = 100; SgdWParameter sgdw_param = 101; MomentumParameter momentum_param = 102; LarsParameter lars_param = 103; NesterovParameter nesterov_param = 104; AdadeltaParameter adadelta_param = 105; AdagradParameter adagrad_param = 106; AdaBeliefParameter adabelief_param = 107; RMSpropParameter rmsprop_param = 108; RMSpropGravesParameter rmsprop_graves_param = 109; AdamParameter adam_param = 110; AdamWParameter adamw_param = 111; AdaBoundParameter adabound_param = 112; AdamaxParameter adamax_param = 113; AMSGRADParameter amsgrad_param = 114; AMSBoundParameter amsbound_param = 115; LambParameter lamb_param = 116; } string lr_scheduler_type = 200; PolynomialSchedulerParameter polynomial_scheduler_param = 210; CosineSchedulerParameter cosine_scheduler_param = 211; ExponentialSchedulerParameter exponential_scheduler_param = 212; StepSchedulerParameter step_scheduler_param = 213; CustomSchedulerParameter custom_scheduler_param = 299; string lr_warmup_scheduler_type = 300; LinearWarmupSchedulerParameter linear_warmup_scheduler_param = 310; float lr_decay = 30; // Obsolete int64 lr_decay_interval = 31; // Obsolete } message SgdParameter { float lr = 1; } message SgdWParameter { float lr = 1; float momentum = 2; float wd = 3; } message MomentumParameter { float lr = 1; float momentum = 2; } message LarsParameter { float lr = 1; float momentum = 2; float coefficient = 3; float eps = 4; } message NesterovParameter { float lr = 1; float momentum = 2; } message AdadeltaParameter { float lr = 1; float decay = 2; float eps = 3; } message AdagradParameter { float lr = 1; float eps = 2; } message AdaBeliefParameter { float alpha = 1; float beta1 = 2; float beta2 = 3; float eps = 4; float wd = 5; bool amsgrad = 6; bool weight_decouple = 7; bool fixed_decay = 8; bool rectify = 9; } message RMSpropParameter { float lr = 1; float decay = 2; float eps = 3; } message RMSpropGravesParameter { float lr = 1; float decay = 2; float momentum = 3; float eps = 4; } message AdamParameter { float alpha = 1; float beta1 = 2; float beta2 = 3; float eps = 4; } message AdamWParameter { float alpha = 1; float beta1 = 2; float beta2 = 3; float eps = 4; float wd = 5; } message AdaBoundParameter { float alpha = 1; float beta1 = 2; float beta2 = 3; float eps = 4; float final_lr = 5; float gamma = 6; } message AdamaxParameter { float alpha = 1; float beta1 = 2; float beta2 = 3; float eps = 4; } message AMSGRADParameter { float alpha = 1; float beta1 = 2; float beta2 = 3; float eps = 4; bool bias_correction = 5; } message AMSBoundParameter { float alpha = 1; float beta1 = 2; float beta2 = 3; float eps = 4; float final_lr = 5; float gamma = 6; bool bias_correction = 7; } message LambParameter { float eta = 1; float beta1 = 2; float beta2 = 3; float gamma_l = 4; float gamma_u = 5; float eps = 6; bool bias_correction = 7; } message PolynomialSchedulerParameter { float max_iter = 1; float power = 2; } message CosineSchedulerParameter { float max_iter = 1; } message ExponentialSchedulerParameter { float gamma = 1; int64 iter_interval = 2; } message StepSchedulerParameter { float gamma = 1; repeated int64 iter_steps = 2; } message CustomSchedulerParameter { float max_iter = 1; string network_name = 10; repeated DataVariable data_variable = 50; repeated OutputVariable output_variable = 80; } message LinearWarmupSchedulerParameter { int64 warmup_iter = 1; } message DataVariable { string variable_name = 1; string data_name = 3; } message GeneratorVariable { string variable_name = 1; string type = 2; float multiplier = 3; } message LossVariable { string variable_name = 1; } message ParameterVariable { string variable_name = 1; float learning_rate_multiplier = 2; } message Monitor { string name = 1; string network_name = 10; repeated string dataset_name = 20; repeated DataVariable data_variable = 50; repeated GeneratorVariable generator_variable = 60; repeated MonitorVariable monitor_variable = 70; } message MonitorVariable { string variable_name = 1; string type = 2; string data_name = 3; float multiplier = 100; } message Executor { string name = 1; string network_name = 10; int64 num_evaluations = 20; string repeat_evaluation_type = 21; bool need_back_propagation = 30; repeated DataVariable data_variable = 50; repeated GeneratorVariable generator_variable = 60; repeated LossVariable loss_variable = 70; repeated OutputVariable output_variable = 80; repeated ParameterVariable parameter_variable = 90; bool no_image_normalization = 101; } message OutputVariable { string variable_name = 1; string type = 2; string data_name = 3; } message Function { string name = 1; string type = 2; repeated string repeat_id = 3; Context context = 10; repeated string input = 20; repeated string output = 30; oneof parameter { AffineParameter affine_param = 1001; RNNParameter rnn_param = 1002; LSTMParameter lstm_param = 1003; GRUParameter gru_param = 1004; ConvolutionParameter convolution_param = 1005; FusedConvolutionParameter fused_convolution_param = 1006; DepthwiseConvolutionParameter depthwise_convolution_param = 1007; DeconvolutionParameter deconvolution_param = 1008; DepthwiseDeconvolutionParameter depthwise_deconvolution_param = 1009; DeformableConvolutionParameter deformable_convolution_param = 1010; MaxPoolingParameter max_pooling_param = 1012; AveragePoolingParameter average_pooling_param = 1013; SumPoolingParameter sum_pooling_param = 1015; UnpoolingParameter unpooling_param = 1016; RoiAlignParameter roi_align_param = 1018; ReLUParameter relu_param = 1022; LeakyReLUParameter leaky_relu_param = 1023; SoftmaxParameter softmax_param = 1024; LogSoftmaxParameter log_softmax_param = 1025; ELUParameter elu_param = 1026; SELUParameter selu_param = 1027; CReLUParameter crelu_param = 1028; CELUParameter celu_param = 1029; PReLUParameter prelu_param = 1030; SoftPlusParameter softplus_param = 1037; FusedBatchNormalizationParameter fused_batch_normalization_param = 1041; BatchNormalizationParameter batch_normalization_param = 1042; GroupNormalizationParameter group_normalization_param = 1043; InstanceNormalizationParameter instance_normalization_param = 1044; LayerNormalizationParameter layer_normalization_param = 1045; NormNormalizationParameter norm_normalization_param = 1046; SyncBatchNormalizationParameter sync_batch_normalization_param = 1047; TensorNormalizationParameter tensor_normalization_param = 1048; WeightNormalizationParameter weight_normalization_param = 1049; WeightStandardizationParameter weight_standardization_param = 1050; SpectralNormParameter spectral_norm_param = 1051; MeanSubtractionParameter mean_subtraction_param = 1052; ClipGradByNormParameter clip_grad_by_norm_param = 1054; SumParameter sum_param = 1055; CumSumParameter cumsum_param = 1056; MeanParameter mean_param = 1057; MaxParameter max_param = 1058; MinParameter min_param = 1059; NormParameter norm_param = 1060; ProdParameter prod_param = 1061; CumProdParameter cumprod_param = 1062; Add2Parameter add2_param = 1065; BcAdd2Parameter bc_add2_param = 1067; Sub2Parameter sub2_param = 1068; Mul2Parameter mul2_param = 1069; Div2Parameter div2_param = 1071; Pow2Parameter pow2_param = 1072; AddScalarParameter add_scalar_param = 1073; MulScalarParameter mul_scalar_param = 1074; PowScalarParameter pow_scalar_param = 1075; RSubScalarParameter r_sub_scalar_param = 1076; RDivScalarParameter r_div_scalar_param = 1077; RPowScalarParameter r_pow_scalar_param = 1078; SignParameter sign_param = 1079; MinimumScalarParameter minimum_scalar_param = 1082; MaximumScalarParameter maximum_scalar_param = 1083; SearchSortedParameter searchsorted_param = 1093; LogicalAndScalarParameter logical_and_scalar_param = 1094; LogicalOrScalarParameter logical_or_scalar_param = 1095; LogicalXorScalarParameter logical_xor_scalar_param = 1096; EqualScalarParameter equal_scalar_param = 1097; NotEqualScalarParameter not_equal_scalar_param = 1098; GreaterEqualScalarParameter greater_equal_scalar_param = 1099; GreaterScalarParameter greater_scalar_param = 1100; LessEqualScalarParameter less_equal_scalar_param = 1101; LessScalarParameter less_scalar_param = 1102; ResetNaNParameter reset_nan_param = 1106; ResetInfParameter reset_inf_param = 1107; ConstantParameter constant_param = 1109; ArangeParameter arange_param = 1110; LinspaceParameter linspace_param = 1111; BatchMatmulParameter batch_matmul_param = 1116; RoundParameter round_param = 1117; CeilParameter ceil_param = 1118; FloorParameter floor_param = 1119; ConcatenateParameter concatenate_param = 1133; SplitParameter split_param = 1134; StackParameter stack_param = 1135; SliceParameter slice_param = 1136; PadParameter pad_param = 1137; TransposeParameter transpose_param = 1138; BroadcastParameter broadcast_param = 1139; BroadcastToParameter broadcast_to_param = 1140; TileParameter tile_param = 1141; OneHotParameter one_hot_param = 1142; FlipParameter flip_param = 1143; ShiftParameter shift_param = 1144; SortParameter sort_param = 1145; ReshapeParameter reshape_param = 1146; ShapeParameter shape_param = 1147; MeshgridParameter meshgrid_param = 1150; BatchCholeskyParameter batch_cholesky_param = 1154; GatherParameter gather_param = 1156; ScatterNdParameter scatter_nd_param = 1159; ScatterAddParameter scatter_add_param = 1160; BoolFillParameter bool_fill_param = 1162; PackPaddedSequenceParameter pack_padded_sequence_param = 1163; PadPackedSequenceParameter pad_packed_sequence_param = 1164; InterpolateParameter interpolate_param = 1165; FFTParameter fft_param = 1166; IFFTParameter ifft_param = 1167; STFTParameter stft_param = 1168; ISTFTParameter istft_param = 1169; DropoutParameter dropout_param = 1170; TopKDataParameter top_k_data_param = 1171; TopKGradParameter top_k_grad_param = 1172; RandParameter rand_param = 1173; RandintParameter randint_param = 1174; RandnParameter randn_param = 1175; RandBinomialParameter rand_binomial_param = 1176; RandBetaParameter rand_beta_param = 1177; RandGammaParameter rand_gamma_param = 1178; RandomChoiceParameter random_choice_param = 1179; RandomCropParameter random_crop_param = 1180; RandomFlipParameter random_flip_param = 1181; RandomShiftParameter random_shift_param = 1182; RandomEraseParameter random_erase_param = 1183; ImageAugmentationParameter image_augmentation_param = 1184; SoftmaxCrossEntropyParameter softmax_cross_entropy_param = 1187; CategoricalCrossEntropyParameter categorical_cross_entropy_param = 1188; HuberLossParameter huber_loss_param = 1191; EpsilonInsensitiveLossParameter epsilon_insensitive_loss_param = 1192; KLMultinomialParameter kl_multinomial_param = 1193; AffineGridParameter affine_grid_param = 1194; WarpByGridParameter warp_by_grid_param = 1195; BinaryConnectAffineParameter binary_connect_affine_param = 1199; BinaryConnectConvolutionParameter binary_connect_convolution_param = 1200; BinaryWeightAffineParameter binary_weight_affine_param = 1201; BinaryWeightConvolutionParameter binary_weight_convolution_param = 1202; INQAffineParameter inq_affine_param = 1203; INQConvolutionParameter inq_convolution_param = 1204; FixedPointQuantizeParameter fixed_point_quantize_param = 1205; MinMaxQuantizeParameter min_max_quantize_param = 1206; Pow2QuantizeParameter pow2_quantize_param = 1207; PruneParameter prune_param = 1208; QuantizeLinearParameter quantize_linear_param = 1209; TopNErrorParameter top_n_error_param = 1211; ConfusionMatrixParameter confusion_matrix_param = 1213; VATNoiseParameter vat_noise_param = 1214; SinkParameter sink_param = 1216; NmsDetection2dParameter nms_detection2d_param = 1217; MaxPoolingBackwardParameter max_pooling_backward_param = 1218; PatchCorrelationParameter patch_correlation_param = 1219; } // Loop Functions RepeatParameter repeat_param = 100; RecurrentParameter recurrent_param = 101; } message AffineParameter { int64 base_axis = 1; } message RNNParameter { int64 num_layers = 1; string nonlinearity = 2; float dropout = 3; bool bidirectional = 4; bool training = 5; } message LSTMParameter { int64 num_layers = 1; float dropout = 2; bool bidirectional = 3; bool training = 4; } message GRUParameter { int64 num_layers = 1; float dropout = 2; bool bidirectional = 3; bool training = 4; } message ConvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 group = 5; bool channel_last = 6; } message FusedConvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 group = 5; bool channel_last = 6; float decay_rate = 7; float eps = 8; bool batch_stat = 9; string nonlinearity = 10; repeated float nonlinearity_args = 11; string pad_mode = 12; float constant_value = 13; } message DepthwiseConvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 multiplier = 5; } message DeconvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 group = 5; bool channel_last = 6; Shape output_padding = 7; } message DepthwiseDeconvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 divisor = 5; } message DeformableConvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 group = 5; int64 deformable_group = 6; bool channel_last = 7; } message MaxPoolingParameter { Shape kernel = 1; Shape stride = 2; bool ignore_border = 3; Shape pad = 4; bool channel_last = 5; } message AveragePoolingParameter { Shape kernel = 1; Shape stride = 2; bool ignore_border = 3; Shape pad = 4; bool channel_last = 5; bool including_pad = 6; } message SumPoolingParameter { Shape kernel = 1; Shape stride = 2; bool ignore_border = 3; Shape pad = 4; bool channel_last = 5; } message UnpoolingParameter { Shape kernel = 1; bool channel_last = 2; } message RoiAlignParameter { Shape output_size = 1; repeated float spatial_scale = 2; int64 sampling_ratio = 3; bool channel_last = 4; } message ReLUParameter { bool inplace = 1; } message LeakyReLUParameter { float alpha = 1; bool inplace = 2; } message SoftmaxParameter { int64 axis = 1; } message LogSoftmaxParameter { int64 axis = 1; } message ELUParameter { double alpha = 1; } message SELUParameter { double scale = 1; double alpha = 2; } message CReLUParameter { int64 axis = 1; } message CELUParameter { double alpha = 1; int64 axis = 2; } message PReLUParameter { int64 base_axis = 1; } message SoftPlusParameter { double beta = 1; } message FusedBatchNormalizationParameter { repeated int64 axes = 1; float decay_rate = 2; float eps = 3; bool batch_stat = 4; string nonlinearity = 5; } message BatchNormalizationParameter { repeated int64 axes = 1; float decay_rate = 2; float eps = 3; bool batch_stat = 4; bool no_scale = 5; bool no_bias = 6; } message GroupNormalizationParameter { int64 num_groups = 1; int64 channel_axis = 2; repeated int64 batch_axis = 3; float eps = 4; bool no_scale = 5; bool no_bias = 6; } message InstanceNormalizationParameter { int64 channel_axis = 1; repeated int64 batch_axis = 2; float eps = 3; bool no_scale = 4; bool no_bias = 5; } message LayerNormalizationParameter { repeated int64 batch_axis = 1; float eps = 2; bool no_scale = 3; bool no_bias = 4; } message NormNormalizationParameter { float p = 1; repeated int64 axes = 2; float eps = 3; } message SyncBatchNormalizationParameter { Communicator comm = 1; string group = 2; repeated int64 axes = 3; float decay_rate = 4; float eps = 5; bool batch_stat = 6; } message TensorNormalizationParameter { repeated int64 axes = 1; float eps = 2; bool no_scale = 3; bool no_bias = 4; } message WeightNormalizationParameter { int64 dim = 1; float eps = 2; } message WeightStandardizationParameter { int64 channel_axis = 1; float eps = 2; } message SpectralNormParameter { int64 dim = 1; int64 itr = 2; float eps = 3; bool test = 4; bool output_u = 5; } message MeanSubtractionParameter { int64 base_axis = 1; bool update_running_mean = 2; } message ClipGradByNormParameter { float clip_norm = 1; repeated int64 axes = 2; } message SumParameter { repeated int64 axes = 1; bool keep_dims = 2; } message CumSumParameter { int64 axis = 1; bool exclusive = 2; bool reverse = 3; } message MeanParameter { repeated int64 axes = 1; bool keep_dims = 2; } message MaxParameter { repeated int64 axes = 1; bool keep_dims = 2; bool with_index = 3; bool only_index = 4; } message MinParameter { repeated int64 axes = 1; bool keep_dims = 2; bool with_index = 3; bool only_index = 4; } message NormParameter { float p = 1; repeated int64 axes = 2; bool keep_dims = 3; } message ProdParameter { repeated int64 axes = 1; bool keep_dims = 2; } message CumProdParameter { int64 axis = 1; bool exclusive = 2; bool reverse = 3; } message Add2Parameter { bool inplace = 1; } message BcAdd2Parameter { bool inplace = 1; } message Sub2Parameter { bool inplace = 1; } message Mul2Parameter { bool inplace = 1; } message Div2Parameter { bool inplace = 1; } message Pow2Parameter { bool inplace = 1; } message AddScalarParameter { double val = 1; bool inplace = 2; } message MulScalarParameter { double val = 1; bool inplace = 2; } message PowScalarParameter { double val = 1; bool inplace = 2; } message RSubScalarParameter { double val = 1; } message RDivScalarParameter { double val = 1; } message RPowScalarParameter { double val = 1; } message SignParameter { float alpha = 1; } message MinimumScalarParameter { double val = 1; } message MaximumScalarParameter { double val = 1; } message SearchSortedParameter { bool right = 1; } message LogicalAndScalarParameter { bool val = 1; } message LogicalOrScalarParameter { bool val = 1; } message LogicalXorScalarParameter { bool val = 1; } message EqualScalarParameter { double val = 1; } message NotEqualScalarParameter { double val = 1; } message GreaterEqualScalarParameter { double val = 1; } message GreaterScalarParameter { double val = 1; } message LessEqualScalarParameter { double val = 1; } message LessScalarParameter { double val = 1; } message ResetNaNParameter { double val = 1; } message ResetInfParameter { double val = 1; } message ConstantParameter { float val = 1; Shape shape = 2; } message ArangeParameter { float start = 1; float stop = 2; float step = 3; } message LinspaceParameter { float start = 1; float stop = 2; int64 num = 3; } message BatchMatmulParameter { bool transpose_a = 1; bool transpose_b = 2; } message RoundParameter { } message CeilParameter { } message FloorParameter { } message ConcatenateParameter { int64 axis = 1; } message SplitParameter { int64 axis = 1; } message StackParameter { int64 axis = 1; } message SliceParameter { repeated int64 start = 1; repeated int64 stop = 2; repeated int64 step = 3; } message PadParameter { repeated int64 pad_width = 1; string mode = 2; float constant_value = 3; } message TransposeParameter { repeated int64 axes = 1; } message BroadcastParameter { Shape shape = 1; } message BroadcastToParameter { int64 axis = 1; } message TileParameter { repeated int64 reps = 1; } message OneHotParameter { Shape shape = 1; } message FlipParameter { repeated int64 axes = 1; } message ShiftParameter { repeated int64 shifts = 1; string border_mode = 2; } message SortParameter { int64 axis = 1; bool reverse = 2; bool with_index = 3; bool only_index = 4; } message ReshapeParameter { Shape shape = 1; bool inplace = 2; } message ShapeParameter { int64 start = 1; int64 end = 2; } message MeshgridParameter { bool ij_indexing = 1; } message BatchCholeskyParameter { bool upper = 1; } message GatherParameter { int64 axis = 1; int64 batch_dims = 2; } message ScatterNdParameter { repeated int64 shape = 1; bool add = 2; } message ScatterAddParameter { int64 axis = 1; } message BoolFillParameter { float value = 1; } message PackPaddedSequenceParameter { bool batch_first = 1; } message PadPackedSequenceParameter { bool batch_first = 1; float padding_value = 2; int64 total_length = 3; } message InterpolateParameter { repeated int64 output_size = 1; string mode = 2; bool align_corners = 3; bool half_pixel = 4; bool half_pixel_for_nn = 5; bool channel_last = 6; } message FFTParameter { int64 signal_ndim = 1; bool normalized = 2; } message IFFTParameter { int64 signal_ndim = 1; bool normalized = 2; } message STFTParameter { int64 window_size = 1; int64 stride = 2; int64 fft_size = 3; string window_type = 4; bool center = 5; string pad_mode = 6; bool as_istft_backward = 7; } message ISTFTParameter { int64 window_size = 1; int64 stride = 2; int64 fft_size = 3; string window_type = 4; bool center = 5; string pad_mode = 6; bool as_stft_backward = 7; } message DropoutParameter { double p = 1; int64 seed = 2; } message TopKDataParameter { int64 k = 1; bool abs = 2; bool reduce = 3; int64 base_axis = 4; bool largest = 5; bool with_index = 6; } message TopKGradParameter { int64 k = 1; bool abs = 2; int64 base_axis = 3; } message RandParameter { float low = 1; float high = 2; Shape shape = 3; int64 seed = 4; } message RandintParameter { int64 low = 1; int64 high = 2; Shape shape = 3; int64 seed = 4; } message RandnParameter { float mu = 1; float sigma = 2; Shape shape = 3; int64 seed = 4; } message RandBinomialParameter { int64 n = 1; float p = 2; Shape shape = 3; int64 seed = 4; } message RandBetaParameter { float alpha = 1; float beta = 2; Shape shape = 3; int64 seed = 4; } message RandGammaParameter { float k = 1; float theta = 2; Shape shape = 3; int64 seed = 4; } message RandomChoiceParameter { Shape shape = 1; bool replace = 2; int64 seed = 3; } message RandomCropParameter { Shape shape = 1; int64 base_axis = 2; int64 seed = 3; } message RandomFlipParameter { repeated int64 axes = 1; int64 base_axis = 2; int64 seed = 3; } message RandomShiftParameter { repeated int64 shifts = 1; string border_mode = 2; float constant_value = 3; int64 base_axis = 4; int64 seed = 5; } message RandomEraseParameter { float prob = 1; repeated float area_ratios = 2; repeated float aspect_ratios = 3; repeated float replacements = 4; int64 n = 5; bool share = 6; bool inplace = 7; int64 base_axis = 8; int64 seed = 9; bool channel_last = 10; bool ste_fine_grained = 11; } message ImageAugmentationParameter { Shape shape = 1; Shape pad = 2; float min_scale = 3; float max_scale = 4; float angle = 5; float aspect_ratio = 6; float distortion = 7; bool flip_lr = 8; bool flip_ud = 9; float brightness = 10; bool brightness_each = 11; float contrast = 12; float contrast_center = 13; bool contrast_each = 14; float noise = 15; int64 seed = 16; } message SoftmaxCrossEntropyParameter { int64 axis = 1; } message CategoricalCrossEntropyParameter { int64 axis = 1; } message HuberLossParameter { float delta = 1; } message EpsilonInsensitiveLossParameter { float epsilon = 1; } message KLMultinomialParameter { int64 base_axis = 1; } message AffineGridParameter { repeated int64 size = 1; bool align_corners = 2; } message WarpByGridParameter { string mode = 1; string padding_mode = 2; bool align_corners = 3; bool channel_last = 4; } message BinaryConnectAffineParameter { int64 base_axis = 1; float quantize_zero_to = 2; } message BinaryConnectConvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 group = 5; float quantize_zero_to = 6; } message BinaryWeightAffineParameter { int64 base_axis = 1; float quantize_zero_to = 2; } message BinaryWeightConvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 group = 5; float quantize_zero_to = 6; } message INQAffineParameter { int64 base_axis = 1; int64 num_bits = 2; repeated int64 inq_iterations = 3; string selection_algorithm = 4; int64 seed = 5; } message INQConvolutionParameter { int64 base_axis = 1; Shape pad = 2; Shape stride = 3; Shape dilation = 4; int64 group = 5; int64 num_bits = 6; repeated int64 inq_iterations = 7; string selection_algorithm = 8; int64 seed = 9; } message FixedPointQuantizeParameter { bool sign = 1; int64 n = 2; float delta = 3; bool ste_fine_grained = 4; } message MinMaxQuantizeParameter { float decay = 1; bool x_min_max = 2; bool ema = 3; bool ste_fine_grained = 4; float eps = 5; } message Pow2QuantizeParameter { bool sign = 1; bool with_zero = 2; int64 n = 3; int64 m = 4; bool ste_fine_grained = 5; } message PruneParameter { float rate = 1; } message QuantizeLinearParameter { string round_mode = 1; bool narrow_range = 2; int64 dtype = 3; } message TopNErrorParameter { int64 axis = 1; int64 n = 2; } message ConfusionMatrixParameter { int64 axis = 1; } message VATNoiseParameter { int64 base_axis = 1; float eps = 2; } message SinkParameter { bool one_input_grad = 1; } message NmsDetection2dParameter { float thresh = 1; float nms = 2; bool nms_per_class = 3; } message MaxPoolingBackwardParameter { Shape kernel = 1; Shape stride = 2; bool ignore_border = 3; Shape pad = 4; bool channel_last = 5; } message PatchCorrelationParameter { Shape patch = 1; Shape shift = 2; Shape patch_step = 3; Shape shift_step = 4; Shape padding = 5; }