package onnx

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message AttributeProto

onnx-ml.proto:116

Attributes A named attribute containing either singular float, integer, string, graph, and tensor values, or repeated float, integer, string, graph, and tensor values. An AttributeProto MUST contain the name field, and *only one* of the following content fields, effectively enforcing a C/C++ union equivalent.

Used in: NodeProto

enum AttributeProto.AttributeType

onnx-ml.proto:120

Note: this enum is structurally identical to the OpSchema::AttrType enum defined in schema.h. If you rev one, you likely need to rev the other.

Used in: AttributeProto

message FunctionProto

onnx-ml.proto:783

Used in: ModelProto, OperatorSetProto

message GraphProto

onnx-ml.proto:441

Graphs A graph defines the computational logic of a model and is comprised of a parameterized list of nodes that form a directed acyclic graph based on their inputs and outputs. This is the equivalent of the "network" or "graph" in many deep learning frameworks.

Used in: AttributeProto, ModelProto, TrainingInfoProto

message ModelProto

onnx-ml.proto:342

Models ModelProto is a top-level file/container format for bundling a ML model and associating its computation graph with metadata. The semantics of the model are described by the associated GraphProto's.

message NodeProto

onnx-ml.proto:198

Nodes Computation graphs are made up of a DAG of nodes, which represent what is commonly called a "layer" or "pipeline stage" in machine learning frameworks. For example, it can be a node of type "Conv" that takes in an image, a filter tensor and a bias tensor, and produces the convolved output.

Used in: FunctionProto, GraphProto

message OperatorProto

onnx-operators-ml.proto:48

An OperatorProto represents the immutable specification of the signature and semantics of an operator. Operators are declared as part of an OperatorSet, which also defines the domain name for the set. Operators are uniquely identified by a three part identifier (domain, op_type, since_version) where *domain* is the domain of an operator set that contains this operator specification. *op_type* is the name of the operator as referenced by a NodeProto.op_type *since_version* is the version of the operator set that this operator was initially declared in.

Used in: OperatorSetProto

message OperatorSetIdProto

onnx-ml.proto:765

Operator Sets OperatorSets are uniquely identified by a (domain, opset_version) pair.

Used in: FunctionProto, ModelProto

message OperatorSetProto

onnx-operators-ml.proto:92

An OperatorSetProto represents an immutable set of immutable operator specifications. The domain of the set (OperatorSetProto.domain) is a reverse-DNS name that disambiguates operator sets defined by independent entities. The version of the set (opset_version) is a monotonically increasing integer that indicates changes to the membership of the operator set. Operator sets are uniquely identified by a two part identifier (domain, opset_version) Like ModelProto, OperatorSetProto is intended as a top-level file/wire format, and thus has the standard format headers in addition to the operator set information.

enum OperatorStatus

onnx-ml.proto:778

Operator/function status.

Used in: OperatorProto

message SparseTensorProto

onnx-ml.proto:627

A serialized sparse-tensor value

Used in: AttributeProto, GraphProto

message StringStringEntryProto

onnx-ml.proto:419

StringStringEntryProto follows the pattern for cross-proto-version maps. See https://developers.google.com/protocol-buffers/docs/proto3#maps

Used in: ModelProto, TensorAnnotation, TensorProto, TrainingInfoProto

message TensorAnnotation

onnx-ml.proto:424

Used in: GraphProto

message TensorProto

onnx-ml.proto:486

Tensors A serialized tensor value.

Used in: AttributeProto, GraphProto, SparseTensorProto

enum TensorProto.DataLocation

onnx-ml.proto:603

Location of the data for this tensor. MUST be one of: - DEFAULT - data stored inside the protobuf message. Data is stored in raw_data (if set) otherwise in type-specified field. - EXTERNAL - data stored in an external location as described by external_data field.

Used in: TensorProto

enum TensorProto.DataType

onnx-ml.proto:487

message TensorProto.Segment

onnx-ml.proto:528

For very large tensors, we may want to store them in chunks, in which case the following fields will specify the segment that is stored in the current TensorProto.

Used in: TensorProto

message TensorShapeProto

onnx-ml.proto:653

Defines a tensor shape. A dimension can be either an integer value or a symbolic variable. A symbolic variable represents an unknown dimension.

Used in: TypeProto.SparseTensor, TypeProto.Tensor

message TensorShapeProto.Dimension

onnx-ml.proto:654

Used in: TensorShapeProto

message TrainingInfoProto

onnx-ml.proto:237

Training information TrainingInfoProto stores information for training a model. In particular, this defines two functionalities: an initialization-step and a training-algorithm-step. Initialization resets the model back to its original state as if no training has been performed. Training algorithm improves the model based on input data. The semantics of the initialization-step is that the initializers in ModelProto.graph and in TrainingInfoProto.algorithm are first initialized as specified by the initializers in the graph, and then updated by the "initialization_binding" in every instance in ModelProto.training_info. The field "algorithm" defines a computation graph which represents a training algorithm's step. After the execution of a TrainingInfoProto.algorithm, the initializers specified by "update_binding" may be immediately updated. If the targeted training algorithm contains consecutive update steps (such as block coordinate descent methods), the user needs to create a TrainingInfoProto for each step.

Used in: ModelProto

message TypeProto

onnx-ml.proto:672

Types The standard ONNX data types.

Used in: AttributeProto, TypeProto.Map, TypeProto.Optional, TypeProto.Sequence, ValueInfoProto

message TypeProto.Map

onnx-ml.proto:690

map<K,V>

Used in: TypeProto

message TypeProto.Opaque

onnx-ml.proto:717

Used in: TypeProto

message TypeProto.Optional

onnx-ml.proto:700

wrapper for Tensor, Sequence, or Map

Used in: TypeProto

message TypeProto.Sequence

onnx-ml.proto:683

repeated T

Used in: TypeProto

message TypeProto.SparseTensor

onnx-ml.proto:708

Used in: TypeProto

message TypeProto.Tensor

onnx-ml.proto:674

Used in: TypeProto

message ValueInfoProto

onnx-ml.proto:181

Defines information on value, including the name, the type, and the shape of the value.

Used in: GraphProto

enum Version

onnx-ml.proto:52

Versioning ONNX versioning is specified in docs/IR.md and elaborated on in docs/Versioning.md To be compatible with both proto2 and proto3, we will use a version number that is not defined by the default value but an explicit enum number.