2016-11-04 10 views
1

私は画像ホスティング会社で、私はすべての顧客の写真で顔認識をしたいとしましょう。私の顧客のそれぞれにはすでにラベル付きの画像があり、私は監督されたアルゴリズムを使って新しい画像にラベルを付けます。異なる顧客の異なるラベルを予測する方法

質問は次のとおりです。顧客ごとに異なるモデルを使用して画像にラベルを付ける必要がありますか?

一方、すべての顧客に単一のモデルを使用すると、顧客Aの写真に顧客Bのラベルを付ける恐れがあります。一方、顧客ごとにモデルを使用すると、何千ものモデルを管理(導入、更新、監視)することができます。

答えて

1

すべてのラベルの間に階層構造を作成したり、学習したりすることができます。以下のようになります(ツリー内の各ノードはラベルです)。

A->B1->C1 
|->B2->C2 
| 
|->B3->C3->D3->E3 

ラベル間に親子関係があります。例えば、C1は、それはすべての顧客間でのトレーニング時にすべてのラベルを見ることができ、モデル自体については

C1は、B1->C1はスポーツ - >テニスの可能性があり、より具体的である)B1の子です。 予測時には、最初に同じモデルを実行し、各ラベルの可能性を出力します(モデルはNウェイロジスティックのようなものです)。例えば、これは(唯一のアクティブなラベルがB2C3ある)顧客Aのためのタスクであれば、今すぐ

B1: 0.1 
B2: 0.15 
B3: 0.05 
C1: 0.4 
C2: 0.9 
C3: 0.01 
D3: 0.001 
E4: 0 

すると、あなたがアクティブなラベルと一致し、他のブランチを削除するには、あなたのラベルをロールアップすることができます

B2: 0.9 (we use a Max(B2, C2) here) 
C3: 0.011 

したがって、顧客Aの写真に顧客Bのラベルを付けることを望まない場合は、ここでB2を報告する必要があります。しかし、多くの顧客を獲得したら、人気の高いラベルを顧客Aに適用することは問題ではありません?

関連する問題