私は、最初からカスタム200クラスの開始v3モデルを訓練しました。今私は出力ディレクトリにファイルをckptしている。どのように推論を実行するためにそれらのモデルを使用する?開始時に推論を実行する方法v3訓練されたモデル?
GPUにモデルをロードし、モデルがGPUに残っている間はいつでもイメージを渡すことができます。 TensorFlowサービングを使用することは私の選択肢ではありません。
注:これらのモデルをフリーズしようとしましたが、フリーズ中にoutput_nodesを正しく配置できませんでした。 ImagenetV3/Predictions/Softmax
を使用しましたが、フリーズモデルから必要なテンソルを取得できないため、feed_dictで使用できませんでした。
この推論部分のTFサイト&レポに関する文書が不十分です。
私は現在、モデルを訓練し、評価するためにスリムを使用しています。これは、モデルレベルでどのように動作しているかを実際に理解するために、多くの抽象化を追加します。私はそれを深く掘り下げて報告します。 私は両方の方法を試みました。 ckpt.metaとckpt.dataファイルを使用して、正味のアーキテクチャと重みをロードする。この点を超えることはできませんでした。 そして、上記の出力ノードを使用してモデルをフリーズし、フリーズされたモデルで利用可能なすべての操作を完了しましたが、それ以上は実行できませんでした。 – SnShines
ああ、多分テンソルフローコミュニティではなく、抽象化フレームワークの質問をして、あなたに必要な答えを得るでしょう。私はその枠組みを手助けすることはできません。私は単なるテンソルフローの純粋主義者です。 :) –
私は分析されたフリーズグラフとそのすべての操作でモデルをフリーズすることができました。ダウンロードされたpretrained開始v3 .pbモデルには "/ input"という名前のオペレーションがあり、私の訓練されたモデルにはそのオペレーションはありません。それは "fifoqueue"とものがあります。 プレースホルダ入力を追加するにはどうすればよいですか?ネットをトレーニングする間に追加されますか、それとも最終的なgraph.pbファイルに追加できますか? – SnShines