2017-05-03 10 views
0

イメージの自動タグ付けの方法を知りたい。Tensorflow Auto Tagging

私はテンソルフローを試み、モデルを何度か訓練しました。 まず、分類にはかなり良いものでした。 今、私は自動タグ付けを行う必要があります。予測加算結果tensorflow使用

は、例えば常に1

になります。このような何か:

xxx.jpg予測結果: - 猫= 0.822 - 犬= 0.177 - 鹿= 0.001

xxx.jpg予測結果:012 合計は私が望んでいたことは、このようなもので、常に1

になります- 猫= 0.901 - 犬= 0.811 - 鹿= 0.991

xxx.jpgで同じ画像に猫、犬と鹿があるかもしれませんので。 クラリファイのように(https://www.clarifai.com/)しました。

これを達成するための基本的な考え方は何ですか?

ありがとうございます。

答えて

0

最後に作成したレイヤーを見てみましょう。あなたの予測の合計が常に1であると言えば、softmax(https://en.wikipedia.org/wiki/Softmax_function)を適用したようです。 これを削除すると、すべてのオブジェクトのアクティベーションが行われます。

これがあなたを助けたかどうかお知らせください。

+0

実際、ここではチュートリアルをhttps://www.tensorflow.org/versions/r0.11/how_tos/image_retraining/で使用しました。だから、私はトレーニングのための自分のコードを作っていない。たぶん、今すぐやるべき時です。私はそれを試して、あなたの答えが本当に働いているかどうかを見てみましょう!ありがとうございました ! – Lyn

+0

こんにちは!私は既に読んでみると、上記のチュートリアルのリンクからretrain.pyを編集することに決めました。以来、それは私のために多くの単純化されたものです。私は、retrain.py: 'final_tensor = tf.nn.softmax(logits、name = final_tensor_name)'からこの行に定義されているsoftmax層を消去しようとしました。しかし、私はちょうどそれを消去した場合、それは後でfinal_tensor_nameがないので動作しません。ですから、私はこれを 'final_tensor = tf.nn.relu(logits、name = final_tensor_name)'に変更します。しかし、結果は、値が1を超えてしまうことがあります。例:cat = 1.345 - dog = 0.234543 - deer = 0. – Lyn

+0

とにかく、この[http://stackoverflow.com/questions/ 42697341/how-to-use-softmax-activation-function-of-the-output-layer-in-the-mid] – Lyn