私はPythonでアクセスしようとしている内容のC++ tensorflow::Tensor
を持っています。tensorflow :: Tensor to Python Tensorまたはnumpy.nd_array
私は(これはtf.Tensor
またはnumpy.nd_array
で天気を、それは今のところ重要ではありません)任意の賢明なPyObject
にtensorflow::Tensor
を変換することができ、関数の検索でTensorflow C++ Documentationを通して見てきました。
Tensorflowコードかかわらず、周りを見た後、私は次の手がかりを発見した:
方法TF_Tensor_to_PyObject(TF_Tensor* Tensor, PyObject** out_array)
tensorflow/python/client/tf_session_helper.cc
で定義されているがあります。しかし、これは隠されたBazelパッケージ、さらには匿名のC++名前空間で定義されています。 Tensorflow自体を変更するのは直感的ではないようです(私はBazel BUILDファイル、.hと.ccファイルを変更する必要があります)。このアプローチを使用するために私自身のTensorflowをコンパイルしてください。
このアプローチのもう1つの問題は、TF_Tensor
!= tensorflow::Tensor
です。 TF_Tensor
は、TensorflowのC-Apiに定義されています。また、このパッケージは公的な使用を目的としたものでもありません(このパッケージの外で)。
誰かがこれを行うより良い方法を知っていますか?検索中に見つけられなかった〜PyObject
の既存の実装はありますか?