Running a model trained in skflow using the Tensorflow C ++ API

Is it possible to execute a graph using the Tensorflow C ++ API, which has no labeled input (or output) nodes? As far as I know, when training my model (using skflow in python, which was later saved as a binary protobuf), I did not put I / O nodes, but I was able to restore the model and make predictions without difficulty in Python. When using the C ++ API to execute a graph, the input vectors are pairs of strings and tensors, where I assume that String refers to the input label node. From the docs:

Session::Run(const std::vector< std::pair< string, Tensor > > &inputs,
const std::vector< string > &output_tensor_names,
const std::vector< string > &target_node_names,
std::vector< Tensor > *outputs)=0

Starts the graph with the input tensors provided and fills the outputs for the endpoints specified in output_tensor_names. Returns but not working return Tensors for nodes in target_node_names.

Is there a way I can execute a graph without knowing the labels of my I / O nodes? Perhaps there is a way to load the graph in Python, give the node labels, and then save it as protobuf again? Ideally, I would just like to pass in a vector that applies to input nodes and does not have to worry about any labels.

+4
source share
2 answers

In skflow, all nodes already have labels, and they just take care of restoring them for you.

: input:0 output:0 X y , , .

, endpoints , ( estimator.save(path) ).

:

: 0

: 0

logistic_regression/softmax_classifier/

logistic_regression/softmax_classifier/Xent: 0

, /, .

+6

Source: https://habr.com/ru/post/1626788/


All Articles