2016-12-21 6 views
0

1つの特定のシーンを認識するための学習モデルを訓練しようとしています。たとえば、遊園地で撮影した写真を認識するために訓練したいと思い、遊園地ですでに1万枚の写真を撮っているとします。これらの写真を使ってこのモデルを訓練して、遊園地で撮影された可能性の他の写真にスコアを付けることができるようにしたいと思います。それ、どうやったら出来るの? これは画像認識の問題だと考えて、おそらく畳み込みニューラルネットワークを使用するでしょうが、私はこの場合にどのように訓練するのかはよく分かりません。1つの特定のオブジェクト(またはシーン)を認識するためのトレーニングモデル

ありがとうございます!

答えて

0

可能な方法はいくつかあります。最も簡単なのは、多数のネガティブサンプル(他の場所からの画像)を収集し、2クラスのモデルを訓練することです。

第2のアプローチは、ネットワークを訓練して、入力画像(埋め込み)から意味のある低次元表現を抽出することです。ここでは、siameseのトレーニングを使ってネットワーク間の類似性を学ぶためにネットワークを明示的にトレーニングすることができます。このような手法は、顔認識に用いられる(例えば、FaceNet参照)。このような埋め込みを行うことで、例えば、1クラスのSVMや他の分類子など、外れ値検出のためのいくつかの確立された方法を使用できます。この場合、否定的な例も必要です。

私は画像の切り抜きを使用してデータを大幅に増やしました。これは、あなたのケースでトレーニングデータの量を増やす最も明白な方法です。

一般的に、このタスクの成功は、タスクステートメント(パークのみ、またはあらゆる種類の場所に限定されています)と適切なデータに大きく依存します。

+0

お返事ありがとうございます!実際にはsiameseの訓練を聞いたことがないので、間違いなくそれを調べます。もう1つの質問。否定的な例なしでこれを行う方法はありますか?再度、感謝します。 – shmibloo

+0

他のモデルでは、肯定的な例のトレーニングだけが可能ですが、神経ネットワークでは認識していません。そして、それは間違いなくsiameseのアプローチに不可能です。しかし、ネガティブな例を収集することは、肯定的な例のためだけにエキゾチックなトレーニングフレームワークを構築することと比較して、最も簡単な解決策になります。 –

関連する問題