mindspore2022/mindspore/ccsrc/utils/summary.proto

104 lines
2.9 KiB
Protocol Buffer

/**
* Copyright 2019 Huawei Technologies Co., Ltd
*
* 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.
*/
syntax = "proto2";
package mindspore.irpb;
option cc_enable_arenas = true;
// The ANF IR define, include the tensor and graph define
import "anf_ir.proto";
// Event Protocol buffer, Top define
message Event {
// Timestamp
required double wall_time = 1;
// The step of train.
optional int64 step = 2;
oneof what {
// An event file was started, with the specified version.
// Now version is "Mindspore.Event:1"
string version = 3;
// GraphDef.
GraphProto graph_def = 4;
// Summary data
Summary summary = 5;
}
}
// A Summary is a set of named values that be produced regularly during training
message Summary {
message Image {
// Dimensions of the image.
required int32 height = 1;
required int32 width = 2;
// Valid colorspace values are:
// 1 - grayscale type
// 2 - grayscale + alpha type
// 3 - RGB type
// 4 - RGBA type
// 5 - DIGITAL_YUV type
// 6 - BGRA type
required int32 colorspace = 3;
// Image data in encoded format. Now only support the RGB.
required bytes encoded_image = 4;
}
message Histogram {
message bucket{
// Count number of values fallen in [left, left + width).
// For the right most bucket, range is [left, left + width].
required double left = 1;
required double width = 2;
required int64 count = 3;
}
repeated bucket buckets = 1;
optional int64 nan_count = 2;
optional int64 pos_inf_count = 3;
optional int64 neg_inf_count = 4;
// max, min, sum will not take nan and inf into account.
// If there is no valid value in tensor, max will be nan, min will be nan, sum will be 0.
optional double max = 5;
optional double min = 6;
optional double sum = 7;
// total number of values, including nan and inf
optional int64 count = 8;
}
message Value {
// Tag name for the data.
required string tag = 1;
// Value associated with the tag.
oneof value {
float scalar_value = 3;
Image image = 4;
TensorProto tensor = 8;
Histogram histogram = 9;
}
}
// Set of values for the summary.
repeated Value value = 1;
}