0
reddit/twitterの会話に基づいてtensor-flow
にRNN
モデルをビルドしました。私はpb
にそれを保存しました。誰もがgolang
のモデルを介して生のテキスト文字列を渡し、出力を生成する方法を知っていますか?ただtfgo
READMEに示すようtf.saved_model.builder.SavedModelBuilder
を使用して訓練されたモデルをエクスポート:golangのテキストにDL-RNNモデルを実行するにはどうすればよいですか?
modeldir := "/my_model.pb"
// Buffer input text
var buffer bytes.Buffer
args := os.Args[1:]
for _, arg := range args {
buffer.WriteString(arg + " ")
}
inputText := buffer.String()
// Load the serialized GraphDef from a file.
model, err := ioutil.ReadFile(modeldir)
if err != nil {
log.Fatal(err)
}
// Construct an in-memory graph from the serialized form.
graph := tf.NewGraph()
if err := graph.Import(model, ""); err != nil {
log.Fatal(err)
}
// Create a session for inference over graph.
session, err := tf.NewSession(graph, nil)
if err != nil {
log.Fatal(err)
}
defer session.Close()
inputTextを 'tensorflow'型に変換するには、' tg.Cast'関数をどのように使いますか?ルートを最初に 'root:= tg.NewRoot()'とし、 'A = tg.Cast(root、A、tf.Int32)'とする必要がありますか?関数情報は次のように指定します: 'キャストは現在のテンソルを要求されたdtypeにキャストします '。 'inputText'を現在のテンソルに変換する方法を説明できますか?変換で 'ルート 'の役割は何ですか? –
ルートはグラフのルートです。グラフを記述しているので必要です。しかし、 'inputText'(Go変数)をテンソルに変換したい場合(' inputText'を保持する 'tf.Output'変数に)、' tg.Cast'を使う必要はありませんテンソルの中で)、しかし、Go値 – nessuno
thxから 'tf.Output'を作成するには' tg.Const'を使う必要がありますが、これは 'inputText:= buffer.String()'のように間違っていると思います。 (出力、ノード/パス/演算子) 'inputTextTensor:= tg.Const(root、inputText)'は '\t'の型シグニチャと一致しません。 」、0)、 \t}、マップ[tf.Output] * tf.Tensor { \t \t model.Op( "INPUT_DATA"、0):inputTextTensor、 \t}) 'エラーで:' inputTextTensor(タイプを使用することはできませんtensorflow.Output)型として*テンソルフローマップ値でensor ' –