mxnet
Public Attributes | List of all members
nnvm::NodeAttrs Struct Reference

The attributes of the current operation node. Usually are additional parameters like axis,. More...

#include <node.h>

Collaboration diagram for nnvm::NodeAttrs:
Collaboration graph

Public Attributes

const Opop {nullptr}
 The operator this node uses. For place holder variable, op == nullptr. More...
 
std::string name
 name of the node More...
 
std::unordered_map< std::string, std::string > dict
 The dictionary representation of attributes. More...
 
any parsed
 A parsed version of attributes, This is generated if OpProperty.attr_parser is registered. The object can be used to quickly access attributes. More...
 
std::vector< std::shared_ptr< Symbol > > subgraphs
 Some operators take graphs as input. These operators include control flow operators and high-order functions. These graphs don't change when the operators are invoked for different mini-batches. In this sense, the subgraphs are kind of similar to the parameters and show be kept as node attributes. More...
 

Detailed Description

The attributes of the current operation node. Usually are additional parameters like axis,.

Member Data Documentation

std::unordered_map<std::string, std::string> nnvm::NodeAttrs::dict

The dictionary representation of attributes.

std::string nnvm::NodeAttrs::name

name of the node

const Op* nnvm::NodeAttrs::op {nullptr}

The operator this node uses. For place holder variable, op == nullptr.

any nnvm::NodeAttrs::parsed

A parsed version of attributes, This is generated if OpProperty.attr_parser is registered. The object can be used to quickly access attributes.

std::vector<std::shared_ptr<Symbol> > nnvm::NodeAttrs::subgraphs

Some operators take graphs as input. These operators include control flow operators and high-order functions. These graphs don't change when the operators are invoked for different mini-batches. In this sense, the subgraphs are kind of similar to the parameters and show be kept as node attributes.

Users need to make sure the subgraphs are disjoint with the main graph. If a graph shares nodes with subgraphs, loading the graph from LoadJSON may generate a graph that has a different structure from the original graph (some of the nodes are duplicated). If nodes are shared between two graphs, shared nodes might be executed multiple times, which can be a problem for stateful operators.


The documentation for this struct was generated from the following file: