2017-02-07 14 views
4

私は特定のオブジェクトの画像のセットを持っています。私は、これらのいくつかに機械学習アルゴリズムの異常があるかどうかを調べたいと思います。例えば、私が眼鏡の写真がたくさんある場合、私はこれらのうちの1つが壊れているか異常なものがあるかどうかを見たいと思っています。このようなもの:機械学習アルゴリズムから否定結果を得る

GOOD! enter image description here

BAD !! enter image description here

(もちろん、私はメガネの同じ種類を使用します...)

問題はトレーニングのために、私はポジティブ画像を持って、私はすべての負の状況を知らないということですので。

つまり、画像にデータセットと異なるものがあるかどうかを認識するアルゴリズムが必要です。提案はありますか?

特に、畳み込みニューラルネットワークを使用する方法はありますか?

+0

あなたは負の状況でそれを訓練し、次に別のセットでテストしてどのように行ったのかを確認することができます。あなたは、進行するために徹底した訓練を受けなければならないと考えるのは間違いです。それは全体のポイントです:ニューラルネットを訓練し、それが生きているデータからそれを更新してください。 – duffymo

+0

あなたは輪郭を得ることができます(ガラスが背景とはっきりと区別できる場合)、輪郭がconvexHullなどで凸であるかどうかを確認します。輪郭と凸包の違いは、画像に応じてガラスが破損している場合に適しています。この場合、学習は必要ありません。 – Phann

+0

私の質問はもう少し一般的です。通常、機械学習アルゴリズムは、それぞれが異なるスコアを持つ既知のカテゴリの画像にラベルを付けます。テストオブジェクトが既知のカテゴリのオブジェクトを好きなのか、それとも違うのかを判断する方法はありますか? (顔検出のようなもの:画像に顔がない場合、私は否定的な結果を得ます)。 –

答えて

2

これは典型的な分類の問題です。あなたはこのためにCNNを必要とする理由私は私の提案は、ガラスの唯一GOOD画像の備え分類モデル を訓練/建てることであろう

  1. ......理解していません。ここであなたはおそらく 普通のの形をしたままのすべての種類の眼鏡を持っています。
  2. モデルはGOOD画像以外のものに遭遇した場合、それは BAD画像としてそれらを分類します。これは、BAD画像 と呼ばれ、の不規則なの形状を有する割れた/壊れたガラスを含む。
+0

ありがとう、これは良い解決策かもしれません。分類モデルの例を共有できますか? –

+0

@DavideBiraghi現時点では申し訳ありません。しかし、Googleはこの面で助けることができます:) –

5

あなたが探しているものは、通常、異常、異常値、または新規性の検出と呼ばれます。データがどのように表示されるべきかの例がたくさんあり、何かがあなたのデータのように見えないときを知りたいと思っています。

イメージを使用しているので、この問題の良いアプローチはfeature vectorized version using a pre-trained CNN on image netです。次に、そのフィーチャセットで異常検出器を使用することができます。 isolation forestは作業しやすいものにする必要があります。

+2

@ダヴィデ注意すべき大きなポイント**異常検出** –

0

もう1つのオプションは、自動エンコーダーを使用することです。 自動エンコーダーは、独自の入力を再構築しようとするボトルネック・アーキテクチャーを持つ監督されていないニューラル・ネットワークです。 良い眼鏡の例を使って深い畳み込みオートエンコーダーを訓練することができます。そのため、これらのタイプの画像を再構成することに特化しています。あなたは悪い眼鏡でオートエンコーダを訓練する必要はありません。

したがって、私は訓練されたオートエンコーダーが良い眼鏡ではエラー率が低く、不良眼​​鏡ではエラー率が高くなると思います。誤り率は、再構成された値と元の値(ピクセル)との間の差に基づいてMSEを用いて測定することができる。

訓練されたオートエンコーダーでは、適切なしきい値を定義するのに役立つ良質なメガネと悪いメガネのMSEをプロットできます。平均+ 2 * STD、中央値+ 2 * MADなど

  • オートエンコーダの詳細:画像のための

http://ufldl.stanford.edu/tutorial/unsupervised/Autoencoders/

  • ディープオートエンコーダまたはあなたはまたのような統計的しきい値を試すことができます:

https://cds.cern.ch/record/2209085/files/Outlier%20detection%20using%20autoencoders.%20Olga%20Lyudchick%20(NMS).pdf