IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グローリー株式会社の特許一覧 ▶ 学校法人中部大学の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023136262
(43)【公開日】2023-09-29
(54)【発明の名称】情報処理装置および情報処理方法
(51)【国際特許分類】
   G06T 7/00 20170101AFI20230922BHJP
   G06N 20/00 20190101ALI20230922BHJP
【FI】
G06T7/00 350B
G06N20/00
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022041786
(22)【出願日】2022-03-16
(71)【出願人】
【識別番号】000001432
【氏名又は名称】グローリー株式会社
(71)【出願人】
【識別番号】500433225
【氏名又は名称】学校法人中部大学
(74)【代理人】
【識別番号】100117673
【弁理士】
【氏名又は名称】中島 了
(72)【発明者】
【氏名】鵜飼 祐生
(72)【発明者】
【氏名】藤吉 弘亘
(72)【発明者】
【氏名】山下 隆義
(72)【発明者】
【氏名】平川 翼
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096HA07
5L096HA11
5L096JA03
5L096JA11
5L096JA13
5L096KA04
5L096MA07
(57)【要約】
【課題】画像の類似性の根拠をコンセプトベースで説明することが可能な技術を提供する。
【解決手段】情報処理装置において、機械学習された学習モデルへの複数の入力画像の入力に対して学習モデルから出力される(特徴空間における)複数の特徴ベクトルが取得される(ステップS21)。また、複数の特徴ベクトルに対する階層化クラスタリング処理を実行することにより、階層化された複数のクラスタが生成される(ステップS22)。そして、複数のクラスタのうちの特定クラスタに対応する部分空間あるいはベクトルが、特定クラスタのコンセプト(コンセプト表現)として抽出される(ステップS23)。
【選択図】図4
【特許請求の範囲】
【請求項1】
機械学習された学習モデルへの複数の入力画像の入力に対して前記学習モデルから出力される特徴空間における複数の特徴ベクトルを取得し、前記複数の特徴ベクトルに対する階層化クラスタリング処理を実行することにより階層化された複数のクラスタを生成し、前記複数のクラスタのうちの特定クラスタに対応する部分空間あるいはベクトルを、前記特定クラスタのコンセプトとして抽出する制御部、
を備えることを特徴とする情報処理装置。
【請求項2】
前記制御部は、前記特定クラスタに関する代表ベクトルを、前記特定クラスタのコンセプトとして抽出することを特徴とする、請求項1に記載の情報処理装置。
【請求項3】
前記制御部は、前記代表ベクトルに対応する仮想的な入力画像であり且つ前記特定クラスタのコンセプトを可視化した画像であるコンセプト可視化画像を、前記代表ベクトルと前記学習モデルとに基づいて生成し、当該コンセプト可視化画像を表示部に表示させることを特徴とする、請求項2に記載の情報処理装置。
【請求項4】
前記特定クラスタの属性情報の入力を受け付ける受付部、
をさらに備えることを特徴とする、請求項1から請求項3のいずれかに記載の情報処理装置。
【請求項5】
前記制御部は、前記学習モデルに対する第1画像の入力に対して前記学習モデルから出力される第1特徴ベクトルと前記学習モデルに対する第2画像の入力に対して前記学習モデルから出力される第2特徴ベクトルとに基づき前記第1画像と前記第2画像との類似性を判断する場合において、前記複数のクラスタにそれぞれ対応する複数のコンセプトのうちの少なくとも1つのコンセプトについて、前記第1画像と前記第2画像との類似性に対する寄与度を算出することを特徴とする、請求項1から請求項4のいずれかに記載の情報処理装置。
【請求項6】
前記制御部は、前記学習モデルに対する第1画像の入力に対して前記学習モデルから出力される第1特徴ベクトルと前記学習モデルに対する第2画像の入力に対して前記学習モデルから出力される第2特徴ベクトルとに基づき、前記第1画像と前記第2画像との類似性を判断する場合において、前記複数のクラスタにそれぞれ対応する複数の部分空間のうち、その直交補空間への前記第1および第2特徴ベクトルの射影ベクトルの相互間の距離を相対的に小さくする部分空間、または当該部分空間を張るベクトルを、前記第1画像と前記第2画像とが互いに似ていないと判断される根拠となるコンセプトとして抽出することを特徴とする、請求項1から請求項4のいずれかに記載の情報処理装置。
【請求項7】
機械学習された学習モデルへの複数の入力画像の入力に対して前記学習モデルから出力される特徴空間における複数の特徴ベクトルを取得し、前記複数の特徴ベクトルに対する階層化クラスタリング処理を実行することにより階層化された複数のクラスタを生成し、前記複数のクラスタのうちの特定クラスタに対応する2以上の入力画像を、前記特定クラスタのコンセプトを表す画像群として決定する制御部、
を備えることを特徴とする情報処理装置。
【請求項8】
a)機械学習された学習モデルへの複数の入力画像の入力に対して前記学習モデルから出力される特徴空間における複数の特徴ベクトルを取得するステップと、
b)前記複数の特徴ベクトルに対する階層化クラスタリング処理を実行することにより階層化された複数のクラスタを生成するステップと、
c)前記複数のクラスタのうちの特定クラスタに対応する部分空間あるいはベクトルを、前記特定クラスタのコンセプトとして抽出するステップと、
を備えることを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械学習に関する情報処理装置(特に、機械学習に関する説明性を向上させるための情報処理装置)、およびそれに関連する技術に関する。
【背景技術】
【0002】
近年、深層学習(ディープラーニング)などの機械学習を用いた推論処理技術が急速に進化を遂げている。
【0003】
しかしながら、機械学習における学習モデルが非常に複雑であること等に起因して、学習モデルによる推論結果がどのような判断根拠に基づいて得られているのかが必ずしも明確ではない(説明が容易ではない)、という問題が存在する。
【0004】
特に、推論結果が重要な影響を与える場面では、判断根拠の説明性を向上させることが要求されている。たとえば、特許文献1に記載の技術は、このような要求に応える技術の一つである。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2001-33376号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述の特許文献1においては、画像領域内における注目領域(学習モデルによる推論処理での注目領域)が可視化され、当該注目領域が推論に利用された領域として把握される。すなわち、画像内のいずれの領域に注目して類似性が判断されたかを把握できる。
【0007】
しかしながら、特許文献1の技術では、推論処理において、画像内の注目領域(注目位置)を把握できるとしても、どのようなコンセプト(概念)の類似性が推論結果に影響を与えているかを把握することは困難である。換言すれば、推論処理における判断根拠をコンセプトベースで説明することは困難である。
【0008】
そこで、この発明は、画像の類似性の根拠をコンセプトベースで説明することが可能な技術を提供することを課題とする。
【課題を解決するための手段】
【0009】
上記課題を解決すべく、本発明に係る情報処理装置は、機械学習された学習モデルへの複数の入力画像の入力に対して前記学習モデルから出力される特徴空間における複数の特徴ベクトルを取得し、前記複数の特徴ベクトルに対する階層化クラスタリング処理を実行することにより階層化された複数のクラスタを生成し、前記複数のクラスタのうちの特定クラスタに対応する部分空間あるいはベクトルを、前記特定クラスタのコンセプトとして抽出する制御部、を備えることを特徴とする。
【0010】
前記制御部は、前記特定クラスタに関する代表ベクトルを、前記特定クラスタのコンセプトとして抽出してもよい。
【0011】
前記制御部は、前記代表ベクトルに対応する仮想的な入力画像であり且つ前記特定クラスタのコンセプトを可視化した画像であるコンセプト可視化画像を、前記代表ベクトルと前記学習モデルとに基づいて生成し、当該コンセプト可視化画像を表示部に表示させてもよい。
【0012】
前記情報処理装置は、前記特定クラスタの属性情報の入力を受け付ける受付部、をさらに備えてもよい。
【0013】
前記制御部は、前記学習モデルに対する第1画像の入力に対して前記学習モデルから出力される第1特徴ベクトルと前記学習モデルに対する第2画像の入力に対して前記学習モデルから出力される第2特徴ベクトルとに基づき前記第1画像と前記第2画像との類似性を判断する場合において、前記複数のクラスタにそれぞれ対応する複数のコンセプトのうちの少なくとも1つのコンセプトについて、前記第1画像と前記第2画像との類似性に対する寄与度を算出してもよい。
【0014】
前記制御部は、前記学習モデルに対する第1画像の入力に対して前記学習モデルから出力される第1特徴ベクトルと前記学習モデルに対する第2画像の入力に対して前記学習モデルから出力される第2特徴ベクトルとに基づき、前記第1画像と前記第2画像との類似性を判断する場合において、前記複数のクラスタにそれぞれ対応する複数の部分空間のうち、その直交補空間への前記第1および第2特徴ベクトルの射影ベクトルの相互間の距離を相対的に小さくする部分空間、または当該部分空間を張るベクトルを、前記第1画像と前記第2画像とが互いに似ていないと判断される根拠となるコンセプトとして抽出してもよい。
【0015】
また、本発明に係る情報処理装置は、機械学習された学習モデルへの複数の入力画像の入力に対して前記学習モデルから出力される特徴空間における複数の特徴ベクトルを取得し、前記複数の特徴ベクトルに対する階層化クラスタリング処理を実行することにより階層化された複数のクラスタを生成し、前記複数のクラスタのうちの特定クラスタに対応する2以上の入力画像を、前記特定クラスタのコンセプトを表す画像群として決定する制御部、を備えることを特徴とする。
【0016】
また、本発明に係る情報処理方法は、a)機械学習された学習モデルへの複数の入力画像の入力に対して前記学習モデルから出力される特徴空間における複数の特徴ベクトルを取得するステップと、b)前記複数の特徴ベクトルに対する階層化クラスタリング処理を実行することにより階層化された複数のクラスタを生成するステップと、c)前記複数のクラスタのうちの特定クラスタに対応する部分空間あるいはベクトルを、前記特定クラスタのコンセプトとして抽出するステップと、を備えることを特徴とする。
【発明の効果】
【0017】
本発明によれば、画像の類似性の根拠をコンセプトベースで説明することが可能である。
【図面の簡単な説明】
【0018】
図1】画像処理システムを示す概略図である。
図2】画像処理装置における処理の概要を示す概念図である。
図3】画像処理装置における処理を示すフローチャートである。
図4】コンセプト解析処理を示すフローチャートである。
図5】類似判断の根拠を説明する処理を示すフローチャートである。
図6】非類似判断の根拠を説明する処理を示すフローチャートである。
図7】第1フェーズにおける学習処理を示す概念図である。
図8】学習が進展した状態における特徴空間等を示す図である。
図9】第2フェーズにおける推論処理について説明する図である。
図10】推論処理結果の一例を示す図である。
図11】階層化クラスタリング処理結果に係るデンドロイド(樹形図)等を示す図である。
図12】特定クラスタ周辺の階層関係を示す図である。
図13】クラスタを構成する入力画像等を示す図である。
図14】特徴ベクトルが超球面上にマッピングされた状態を示している。
図15】特徴空間に関する2次元的表現と3次元的表現との対応関係を示す図である。
図16】詳細な学習結果(超球面上での分布)を示す図である。
図17】線形分離器によって生成された分離平面等を示す図である。
図18】各クラスタのコンセプトベクトルを示す図である。
図19】各クラスタのコンセプトベクトルを示す図である。
図20】各クラスタのコンセプトベクトルを示す図である。
図21】2つの入力画像の類似度について説明するための概念図である。
図22】特徴ベクトルが特定平面(部分空間)に射影される様子を示す図である。
図23】特徴ベクトルが特定直線(部分空間)に射影される様子を示す図である。
図24】特徴ベクトルが特定直線に射影される様子(コンセプトベクトルがx軸と同じ向きを向いている場合)を示す図である。
図25】第3フェーズにおける解析処理結果等を示す図である。
図26】或るコンセプトの詳細説明画面を示す図である。
図27】別のコンセプトの詳細説明画面を示す図である。
図28】コンセプト可視化画像の生成処理の概略を示す図である。
図29】2つの画像が互いに類似していない旨の判断の根拠(非類似判断の根拠)を求める処理を示す概念図である。
【発明を実施するための形態】
【0019】
以下、本発明の実施形態を図面に基づいて説明する。
【0020】
<1.第1実施形態>
<1-1.システム概要>
図1は、画像処理システム1を示す概略図である。図1に示されるように、画像処理システム1は、撮影画像を撮像する複数(多数)の撮影装置(監視カメラ等)20と、撮影画像を処理する画像処理装置30とを備えている。画像処理装置30は、撮影画像の対象(ここでは対象人物)を識別ないし分類するための各種の処理を実行する装置である。画像処理装置30は、各種の情報を処理する情報処理装置であるとも表現される。
【0021】
各撮影装置20で撮影された撮影画像は、通信ネットワーク(LANおよび/またはインターネット等)を介して画像処理装置30に入力される。そして、画像処理装置30による画像処理等によって、撮影画像内の対象人物等を識別ないし分類する処理等が行われる。詳細には、複数の撮影画像に撮影された複数の人物の中から、特定人物を識別(認識)する処理等が行われる。
【0022】
たとえば、所定エリア内に配置された複数の撮影装置20による複数の撮影画像の中から、特定人物が写っている撮影画像(被写体として特定人物を含む画像)を探し出す処理が行われる。複数の撮影装置20は、互いに異なる複数の場所(道路沿いの互いに異なる箇所、互いに異なる複数の店舗(内の各箇所)、および/または同一店舗(特に大型店舗)内の互いに異なる複数の箇所等)に分散して配置される。そして、画像処理装置30は、検索対象の特定人物を複数の撮影画像の中から検索し、検索した1又は複数の撮影画像に対応する各撮影装置を特定することによって、所定エリア内における当該特定人物の行動(移動経路等)を特定する。端的に言えば、画像処理装置30は、特定人物を追跡することが可能である。特定人物としては、迷子追跡処理における迷子(子供等)、あるいは、犯人追跡処理における犯人(被疑者)等が例示される。たとえば、或る撮影装置20Aの撮影画像と別の撮影装置20Bの撮影画像と更に別の撮影装置20Cの撮影画像との合計3枚の撮影画像に当該特定人物(検索対象人物)が含まれている(写っている)場合を想定する。この場合、画像処理装置30は、当該特定人物が当該撮影装置20A,20B,20Cに対応する3カ所に存在していたことを知得できる。また、画像処理装置30は、各撮影画像の撮影時刻(詳細には、当該3カ所の撮影画像に関する撮影時刻順序)に基づいて、当該3カ所の移動順序を知得することもできる。
【0023】
このような推論処理、複数の撮影装置20で撮影された複数の撮影画像に基づき同一人物を識別する処理は、人物再識別(再同定ないし再認識)(Person Re-Identification)処理とも称される。なお、人物再識別に関する特定人物の追跡処理は、犯人を追跡する犯人追跡処理、および迷子を探す(追跡する)迷子追跡処理等に限定されず、たとえば、マーケティング等に利用するために各個人の行動を追跡する追跡処理等であってもよい。
【0024】
図2は、画像処理装置30における処理の概要を示す概念図であり、図3は、画像処理装置30における処理を示すフローチャートである。
【0025】
この実施形態では、図2および図3に示されるように、最初に、画像処理装置30は、上記のような推論処理を行うための機械学習処理(学習モデル400を機械学習する処理)を第1フェーズPH1(図2)にて実行する(ステップS11(図3))。詳細には、このような機械学習処理として、メトリックラーニング(距離学習とも称される)が実行される。より詳細には、ディープニューラルネットワーク(特に畳み込みニューラルネットワーク(Convolutional Neural Network))を用いたディープメトリックラーニング(Deep Metric Learning)が利用される。当該メトリックラーニングでは、入力画像210(211)の入力に対して特徴空間(特徴量空間)における特徴ベクトル250(251)(図7参照)を出力する学習モデル400が用いられる。このような学習モデル400は、入力画像(入力)から特徴ベクトル(出力)への変換(写像)を示すモデルである、とも表現される。第1フェーズPH1における処理によって、機械学習された学習モデル400(学習済みの学習モデル)(420)が生成される。
【0026】
次に、画像処理装置30は、第2フェーズPH2(図2)の処理として推論処理を実行する(ステップS12)。具体的には、第1フェーズPH1にて学習された学習モデル(学習済みモデル)400(420)を利用することによって、推論処理が行われる。詳細には、所定エリア内で撮影された複数の撮影画像213(ギャラリー画像とも称する)の中から、特定人物を含む画像を探し出す処理等が、推論処理として実行される。より詳細には、特定人物の画像である検索元の画像215(クエリ画像とも称する)との類似度合いが所定程度以上(換言すれば、特徴空間における特徴ベクトル間の距離が所定距離以下)の画像を、特定人物と同一の人物の画像として探し出す処理等が、推論処理として実行される。あるいは、クエリ画像215に類似した画像をその類似順に探し出す処理等が推論処理(人物再識別処理)として実行されてもよい。なお、複数のギャラリー画像213は、探索範囲を構成する画像群(探索範囲画像群)とも称される。
【0027】
さらに、画像処理装置30は、クエリ画像215と上記推論処理にて探し出された画像213との2つの画像(入力画像)の相互間の類似性に関する判断根拠をコンセプトベースで説明する処理(説明情報の生成処理等)を、第3フェーズPH3(図2)の処理として実行する(ステップS13)。
【0028】
具体的には、まず、画像処理装置30は、当該2つの画像の類似性に関する判断根拠の導出に先立って、機械学習された学習モデル400(学習済みモデル420とも称する)にて、どのようなコンセプトが獲得(学習)されたかを解析する(図4参照)。なお、図4は、このような処理(コンセプト解析処理)を示すフローチャートである。
【0029】
次に、画像処理装置30は、当該2つの画像の類似性に関する判断根拠を導出する。詳細には、当該2つの画像の相互間の類似性に関する判断根拠(互いに類似している旨の判断の根拠)をコンセプトベースで説明するための情報(説明情報)を生成する処理等が実行される(図5参照)。なお、図5は、このような処理(類似判断の根拠を説明する処理)を示すフローチャートである。
【0030】
より詳細には、学習モデル400にて獲得された各種のコンセプトのうち、当該2つの画像の類似性に特に大きな影響を及ぼすコンセプト(寄与度が大きなコンセプト)が主要コンセプトとして抽出される。たとえば、複数のコンセプトのうち、(寄与度の高い順序等で)上位数個のコンセプトが主要コンセプトとして抽出される。そして、当該コンセプトが、2つの画像の類似性に関する判断根拠として決定されるとともに、当該コンセプトを表現するための各種画像が表示部35bに表示される(ユーザに提示される)。
【0031】
このような処理(図4および図5等の処理)については後に詳述する。
【0032】
<1-2.画像処理装置30>
図1を再び参照する。図1に示されるように、画像処理装置30は、コントローラ31(制御部とも称される)と記憶部32と通信部34と操作部35とを備える。
【0033】
コントローラ31は、画像処理装置30に内蔵され、画像処理装置30の動作を制御する制御装置である。
【0034】
コントローラ31は、1又は複数のハードウェアプロセッサ(例えば、CPU(Central Processing Unit)およびGPU(Graphics Processing Unit))等を備えるコンピュータシステムとして構成される。コントローラ31は、CPU等において、記憶部(ROMおよび/またはハードディスクなどの不揮発性記憶部)32内に格納されている所定のソフトウエアプログラム(以下、単にプログラムとも称する)を実行することによって、各種の処理を実現する。なお、当該プログラム(詳細にはプログラムモジュール群)は、USBメモリなどの可搬性の記録媒体に記録され、当該記録媒体から読み出されて画像処理装置30にインストールされるようにしてもよい。あるいは、当該プログラムは、通信ネットワーク等を経由してダウンロードされて画像処理装置30にインストールされるようにしてもよい。
【0035】
具体的には、コントローラ31は、上述の第1フェーズPH1における学習処理、第2フェーズPH2における推論処理、および第3フェーズPH3における説明処理(説明情報生成処理等)を実行する。
【0036】
記憶部32は、ハードディスクドライブ(HDD)および/またはソリッドステートドライブ(SSD)等の記憶装置で構成される。記憶部32は、学習モデル400(学習モデルに関する学習パラメータおよびプログラムを含む)(ひいては学習済みモデル420)等を記憶する。
【0037】
通信部34は、ネットワークを介したネットワーク通信を行うことが可能である。このネットワーク通信では、たとえば、TCP/IP(Transmission Control Protocol / Internet Protocol)等の各種のプロトコルが利用される。当該ネットワーク通信を利用することによって、画像処理装置30は、所望の相手先(たとえば、撮影装置20あるいは不図示の情報格納装置等)との間で各種のデータ(撮影画像データおよび正解データ等)を授受することが可能である。
【0038】
操作部35は、画像処理装置30に対する操作入力を受け付ける操作入力部35aと、各種情報の表示出力を行う表示部35bとを備えている。操作入力部35aとしてはマウスおよびキーボード等が用いられ、表示部35bとしてはディスプレイ(液晶ディスプレイ等)が用いられる。また、操作入力部35aの一部としても機能し且つ表示部35bの一部としても機能するタッチパネルが設けられてもよい。
【0039】
なお、画像処理装置30は、教師データを用いて学習モデル400を機械学習する機能を備えているので、学習モデル生成装置とも称される。また、画像処理装置30は、学習モデル400(420)を用いて対象の識別および/また分類に関する推論を実行する装置でもあるので、推論装置とも称される。さらに、画像処理装置30は、類似性に関する説明情報を生成する装置でもあるので、説明情報生成装置とも称される。また、画像処理装置30は、学習モデル400(420)により獲得されたコンセプトを抽出する装置でもあるのでコンセプト抽出装置とも称され、2つの画像の類似性の根拠を当該コンセプトに基づいて説明(解析)する装置でもあるので(類似性)解析装置とも称される。
【0040】
また、ここでは、様々な処理(機能)が1つの画像処理装置30によって実現されているが、これに限定されない。たとえば、様々な処理が複数の装置で分担されて実現されてもよい。たとえば、上述の第1フェーズPH1における学習処理と、第2フェーズPH2における推論処理と、第3フェーズPH3における説明処理(説明情報生成処理等)とが、それぞれ別個の装置で実行されてもよい。
【0041】
<1-3.学習段階(第1フェーズPH1)の処理>
図3に示されるように、この実施形態では、第1フェーズPH1における学習処理(ステップS11)と、第2フェーズPH2における推論処理(ステップS12)と、第3フェーズPH3における説明処理(ステップS13)とがこの順序で実行される。
【0042】
以下では、まず、第1フェーズPH1における学習処理(ステップS11)(図2および図3参照)について説明する。
【0043】
図7は、第1フェーズPH1における学習処理を示す概念図である。
【0044】
図7に示されるように、第1フェーズPH1(ステップS11)においては、メトリックラーニング(距離学習)によって、学習モデル400(詳細には学習前の学習モデル410(図2))に対する機械学習処理が実行される。詳細には、正解ラベル付き複数の教師データ(教師データ群)における複数の入力画像210(211)が学習モデル400に対して順次に入力され、学習モデル400からの出力群(複数の特徴ベクトル250(251))が取得される(図7参照)。そして、入力画像210(入力)と特徴空間における特徴ベクトル250(出力)との写像関係が学習される。より具体的には、特徴空間での距離(特徴ベクトル間の距離)が入力空間での入力画像の類似度を反映するように、学習モデル400(写像関係)が学習される。たとえば、トリプレットロスなどの評価関数を最小化(最適化)するような学習処理等が行われる。このような学習処理によって、学習前の学習モデル400(410)が学習され、学習済みモデル420が生成される(ステップS11)。
【0045】
より詳細には、まず、画像処理装置30は、機械学習用の人物画像210(211とも称する)を生成する。たとえば、画像処理装置30は、撮影装置20から取得した複数の撮影画像のそれぞれに対して人物抽出処理およびサイズ調整処理(リサイズ処理)を施して複数の人物画像210(211)を生成する。当該複数の人物画像210は、学習モデル400に対する入力画像群として準備される。換言すれば、学習モデル400に対する入力画像210(211)として、各人物画像210(211)が準備される。たとえば、幅(横)W0画素および高さ(縦)H0画素の画素配列(矩形形状の画素配列)を有するカラー画像(3チャンネル)が各入力画像210として準備される。換言すれば、入力画像210は、W0×H0×CH0のボクセルデータ(ただし、CH0=3)として生成される。
【0046】
また、複数の入力画像210の人物が同じ人物であるか異なる人物かに関する正解情報(正解ラベル)が、当該複数の入力画像210のそれぞれに付与される。たとえば、各入力画像210(211)に対して人物ID(人物を識別する識別子)等が付与される。詳細には、同一人物の画像には同じ人物IDが付与され、異なる人物の画像には異なる人物IDが付与される。このようにして、正解ラベルと入力画像210(211)との組み合わせが、正解ラベル付き教師データとして付与される。
【0047】
つぎに、当該複数の入力画像210(入力画像群)が順次に学習モデル400に入力され、学習モデル400からの複数の出力、すなわち特徴空間における複数の特徴ベクトル250(特徴ベクトル群)が順次に出力される(図7参照)。
【0048】
ここにおいて、学習モデル400は、複数の層(階層)が階層的に接続される階層構造を有している。具体的には、学習モデル400は、入力層と複数の中間層と出力層とを備えている。複数の中間層は、特徴抽出層等を備えて構成される。特徴抽出層は、1又は複数の畳み込み層と1のプーリング層とが繰り返し配置されること等によって構成される。各畳み込み層では、畳み込み処理を実行するフィルタにより画像内の特徴が抽出される。また、各プーリング層では、微小画素範囲(たとえば、2×2の画素範囲)毎の平均画素値あるいは最大画素値等を抽出するプーリング処理(平均プーリング処理あるいは最大プーリング処理等)が行われ、画素サイズが低減(たとえば、縦横の各方向に1/2)される(情報量が凝縮される)。入力画像210に対して複数の特徴抽出処理が施されることによって、特徴マップ230(不図示)が生成される。また、当該特徴マップ230の各チャンネル画像に対してプーリング処理(たとえば、最大プーリング処理)が施されることによって、所定のチャンネル数(次元数)CH1を有する特徴ベクトル250が生成され、当該特徴ベクトル250が学習モデル400から出力される。
【0049】
なお、このような学習モデル400(ニューラルネットワーク)としては、たとえば、VGG16あるいはResNet(Residual Network)(残差ネットワーク)等が用いられればよい。VGG16は、3層の畳み込み層と5層のプーリング層と3層の全結合層とを有する畳み込みニューラルネットワークモデルである。また、ResNet(Residual Network)(残差ネットワーク)は、層間で残差を足し合わせることを含む畳み込みニューラルネットワークである。ResNetにおける特徴抽出層は、畳み込み層と活性化関数とスキップコネクション(ショートカットコネクション)との組合せ等で構成される複数の残差ブロック等で構成される。
【0050】
入力画像210における画像の各種の特徴は、特徴マップ230におけるチャンネルごと(換言すれば、特徴ベクトル250のチャンネル(要素)ごとに)に抽出される。なお、入力画像210における画像の特徴は、特徴マップ230における各チャンネルの2次元画像内において、その大まかな位置が保持された状態で抽出される。
【0051】
たとえば、特徴マップ230は、それぞれ幅W1画素および高さH1画素の画素配列(矩形形状の画素配列)の2次元配列データで構成されるチャンネルをCH1個備える3次元配列データ(W1×H1×CH1のボクセルデータ)である。特徴マップ230の各チャンネルのサイズ(W1×H1)は、たとえば、14×14である。特徴ベクトル250の各要素(の数値)は、各チャンネルで抽出された特徴を表している。特徴ベクトル250の次元数CH1は、特徴マップ230のチャンネル数CH1であり、たとえば、1024である。ただし、これに限定されず、各チャンネルのサイズ(W1×H1)およびチャンネル数CH1は、他の値であってもよい。たとえば、チャンネル数CH1(特徴ベクトル250の次元数)は、512、あるいは2048などであってもよい。
【0052】
理想的には、特徴空間(学習モデル400の出力空間)において、同一人物を被写体とする複数の入力画像210(211)に対応する複数の特徴ベクトル250(251)は互いに近い位置に配置され、異なる人物に関する複数の入力画像に対応する複数の特徴ベクトル250は互いに遠い位置に配置される。ただし、学習前の学習モデル400からの出力に基づく特徴ベクトル群の分布(図7の最右欄参照)は、このような理想的な分布状態からずれている。
【0053】
つぎに、メトリックラーニングにおいて、トリプレットロス(Triplet Loss)などの評価関数を最適化(最小化)するように、学習モデル400が学習される。これによって、入力空間での入力画像の類似度が特徴空間での距離(特徴ベクトル間の距離)に対応するように、学習モデル400(写像関係)が学習される。換言すれば、特徴空間における特徴ベクトルの分布位置が学習の進行に応じて徐々に変更される。非常に良好な機械学習が実行されれば、特徴空間における特徴ベクトルの分布は、上述の理想的な分布状態に徐々に近づいていく(図8の最右欄参照)。具体的には、最終的な特徴空間において、同じ人物(および似た服装の人物)の画像の対応特徴ベクトルは比較的近くに分布し、異なる人物(および大きく異なる服装の人物)の画像の対応特徴ベクトルは比較的離れて分布する。このような機械学習の結果、学習前の学習モデル400(410とも称する)は、学習済みの学習モデル400(420とも称する)に変化する。学習済みモデル420は、入力画像に応じた特徴量(特徴ベクトル)を抽出する特徴抽出器である、とも表現される。
【0054】
なお、図7および図8内の各最右欄においては、複数の特徴ベクトル250(251)を特徴空間にマッピングした様子が示されている。当該最右欄では、各特徴ベクトル251は、1つの点(詳細には点状の図形)として表現されている。詳細には、多数の入力画像211に対応する多数の特徴ベクトル251のうちの一部が、それぞれ点状の図形(白丸、黒丸、ハッチング付き白丸、ハッチング付き黒丸、白四角、黒四角等)で示されている。また、図7および図8のそれぞれにおいて、最右欄(特徴空間を示す大きな四角形部分)と当該最右欄の左側の部分(複数の特徴ベクトル251(細長い帯状の矩形で示されている)が配列された部分)とは同じ状況を示している。また、便宜上、ここでは本来同じ人物(および非常に似た服装の人物)に対応する複数の点を同じ図形(点状図形)で示している。ただし、画像処理装置30は、何れの点(特徴ベクトル(換言すれば、入力画像))が同じ人物に本来対応するか(正解ラベル)を知らない。
【0055】
<1-4.推論段階(第2フェーズPH2)の処理>
つぎに、第2フェーズPH2(ステップS12)(図2および図3参照)における推論処理について図9および図10を参照しつつ説明する。図9は、特徴ベクトル250(253)を用いた推論処理について説明する図である。図10は、推論処理結果の一例を示す図である。
【0056】
第2フェーズPH2(ステップS12)においては、画像処理装置30は、探索範囲の複数の人物画像(具体的には、新たな複数の入力画像210(213))内の対象(ここでは対象人物)を識別(ないし分類)する推論処理を実行する。具体的には、ターゲットエリアにて(ターゲットエリアに配置された撮影装置20により)撮影された新たな複数の入力画像210(213)の中から、探索対象(探索元)の入力画像215(新たな入力画像)内の人物と同一の人物が探索される。換言すれば、画像処理装置30は、当該複数の入力画像213の人物の中から、探索対象の入力画像215(クエリ画像)内の人物と同一の人物を識別(認識)する。
【0057】
そのため、まず、画像処理装置30は、探索範囲の複数の人物画像(具体的には、新たな複数の入力画像210(ギャラリー画像213))を学習モデル420にそれぞれ入力し、当該学習モデル420からの出力をそれぞれ取得する。具体的には、図9に示されるように、各入力画像213に対する出力として、特徴ベクトル250(253)が取得される。また、各特徴ベクトル250(253)は、たとえば、1024次元のベクトルとして生成される。このような特徴ベクトル253が、各入力画像213の特徴を表すベクトルとして、複数の入力画像213のそれぞれに関して求められる(図9左側参照)。
【0058】
同様に、画像処理装置30は、探索対象の入力画像(クエリ画像)215を学習モデル420に入力し、当該学習モデル420から出力された特徴ベクトル250(255)を取得する(図9右側参照)。なお、クエリ画像215は、たとえば、複数の入力画像213(ギャラリー画像)とは別の画像(探索用に新たに付与された画像等)である。ただし、これに限定されず、クエリ画像215は、複数の入力画像213(ギャラリー画像)の中から何らかの契機等によって発見(特定)された探索対象人物に関する画像等であってもよい。
【0059】
つぎに、画像処理装置30は、クエリ画像215の特徴ベクトル255と複数の入力画像213に関する複数の特徴ベクトル253のそれぞれとの類似度合い(たとえば、ユークリッド距離、あるいはベクトル間の内積(コサイン類似度)等)を算出する。また、当該類似度合いの高い順(類似度合いの降順)に当該複数の特徴ベクトル253が並べ替えられる。より詳細には、ユークリッド距離の昇順に(あるいは、コサイン類似度の降順に)複数の特徴ベクトル253が並べ替えられる。
【0060】
たとえば、画像処理装置30は、特徴空間における特徴ベクトル255との距離が所定の距離以下(すなわち、類似度合いが所定程度以上)の1又は2以上の特徴ベクトル253を、クエリ画像215内の人物と同一の人物の特徴ベクトル255として特定する。換言すれば、画像処理装置30は、特定された当該1又は2以上の特徴ベクトル255に対応する1又は2以上の入力画像213内の人物を、クエリ画像215内の人物と同一の人物であると認識する。
【0061】
図10は、複数の入力画像213にそれぞれ対応する複数の特徴ベクトル253(図10にて砂地ハッチングを付した白丸でそれぞれ示される)が特徴空間にて分布する様子を示している。図10では、クエリ画像215の特徴ベクトル255(白星印参照)から所定の距離範囲内に、3つの特徴ベクトル253(V301,V302,V303)が存在している。この場合、たとえば、当該3つの特徴ベクトル253(V301,V302,V303)に対応する3つの画像213が同一人物の画像として抽出される。また、当該3つの特徴ベクトル253は、特徴ベクトル255との類似度の降順に(距離の昇順に)並べられている。ここでは、上位3つの特徴ベクトル253に対応する3つの人物画像213が、クエリ画像215の人物と同一の人物(あるいは非常に類似する人物)の画像である、と認識されている。
【0062】
なお、これに限定されず、当該距離の昇順に並べ替えられた上位所定数の特徴ベクトル250(253)に対応する入力画像213内の人物が、クエリ画像215内の人物と同一の人物であると認識されてもよい。あるいは、複数の入力画像213が、クエリ画像215との(特徴ベクトル255に関する)距離の昇順(類似度の降順)に並べ替えられるだけでもよい。この場合でも、画像処理装置30は、実質的にクエリ画像内の人物と同一の人物である可能性が高い人物をその可能性順に探し出す処理(同一人物の認識処理)を実行しており、当該処理は、クエリ画像内の対象人物を認識する推論処理の一つである。
【0063】
また、ここでは、複数の特徴ベクトル250(251,253,255)は、それぞれ正規化(詳細にはL2正規化)されているものとする。また、当該複数の特徴ベクトル250のうちのいずれか2つの特徴ベクトルの類似性を示す指標として、2つの特徴ベクトル250(Fとも表記する)間の内積(換言すれば、コサイン類似度)を採用する。具体的には、2つの入力画像X(クエリ画像Xqおよびギャラリー画像Xg)にそれぞれ対応する2つの特徴ベクトルF(F,F)の内積(=F・F=q・g)が、2つの入力画像の類似度として用いられる。特徴ベクトルFは、入力画像(クエリ画像)Xに対する学習モデル400からの出力ベクトル(特徴空間(出力空間)における特徴ベクトル)Fであり、特徴ベクトルFは、入力画像(或るギャラリー画像)Xに対する学習モデル400からの出力ベクトルFである。なお、記号「・」は、内積を表す。また、特徴ベクトルFを単に特徴ベクトルqとも表現し、特徴ベクトルFを単に特徴ベクトルgとも表現する。このような類似度Stは、次の式(1)のように表現される。
【0064】
【数1】
【0065】
なお、各特徴ベクトルF(250)は、正規化されている(各ベクトルFの大きさは1である)ため、2つの特徴ベクトル間の内積は、2つの特徴ベクトル間のコサイン類似度に等しい。また、コサイン類似度(および内積)が大きい(「1」に近い)ということは、2つの特徴ベクトルFのなす角度θが小さいこと(2つの特徴ベクトルFが類似していること)、ひいては、当該2つの特徴ベクトルFに対応する2つの入力画像が類似していることを意味する。すなわち、2つの特徴ベクトルFの類似度St(2つの特徴ベクトルFの内積)が大きいほど、2つの特徴ベクトルFに対応する2つの入力画像は類似する。
【0066】
<1-5.特徴ベクトルFの分布について>
ここにおいて、図7および図8(の各最右欄)においては、特徴ベクトルFの分布は平面(超平面)上の点群として2次元的に表現されている。
【0067】
一方、図14等に示されるように、特徴ベクトルFの分布は球面(超球面)上の点群として3次元的にも表現することも可能である。以下では、後者の表現(超球面を用いた3次元的な表現)を主に用いて説明する。
【0068】
図14は、学習済みモデル420から出力された複数(ここでは3つ)の特徴ベクトルF(250)が超球面上にマッピングされた状態を示している。ここでは、各特徴ベクトルF(250)は、正規化されている(各ベクトルFのノルム(大きさ)は1である)。それ故、図14に示されるように、特徴ベクトルFは、原点を始点とし超球面上の点を終点とするベクトルで表現され得る。
【0069】
また、上述したように、2つの特徴ベクトルFのなす角度θが小さいこと(当該2つの特徴ベクトルFの内積が大きいこと)は、当該2つの特徴ベクトルFに対応する2つの入力画像が類似していることを意味する。
【0070】
図15は、特徴空間に関する2次元的表現と3次元的表現との対応関係を示す図である。図15において、左右上下に大別される4つの図形群のうち、図15の上側の2つの図形群は、各特徴ベクトルF(250)が超平面に分布する様子を示す図である。これに対して、図15の下側の2つの図形群は、各特徴ベクトルF(250)が超球面に分布する様子を示す図である。
【0071】
詳細には、図15の左下の図形群(球体およびその表面の点状図形等)は、図7の最右欄と同様、特徴空間における「未学習の学習モデル400」による出力ベクトル(特徴ベクトルF)の分布を示している。当該左下の図形群は、特徴空間を3次元的に図示するものであり、図15の左上側の図形群(大きな矩形およびその内部の図形)と同様の状況を(ただし、2次元的にではなく3次元的に)示している。
【0072】
また、図15の右下の図形群(球体およびその表面の点状図形等)は、図8の最右欄と同様、特徴空間における「学習済みの学習モデル400(420)」による出力ベクトル(特徴ベクトルF)の分布を示している。当該右下の図形群は、特徴空間を3次元的に図示するものであり、図15の右上側の図形群(大きな矩形およびその内部の図形)と同様
の状況を(ただし、2次元的にではなく3次元的に)示している。
【0073】
なお、図15の上側および図8等は、便宜上、特徴ベクトルFの分布を2次元的に表現する概念図であり、図15の下側および図14等は、便宜上、特徴ベクトルFの分布を3次元的に表現する概念図である。実際の特徴ベクトルFは、通常、2次元ないし3次元ベクトルではなく、非常に高次(更に高次の)多次元ベクトル(たとえば1024次元ベクトル)である。4次元以上のベクトルは、3次元空間において可視的に図示することは困難であり、特徴ベクトルFに関するこれらの図示表現(図8図14図15等参照)は、いずれも、簡略化した仮想的なものである。
【0074】
<1-6.第1および第2フェーズの処理の詳細等>
本実施形態(特に上述の第1フェーズPH1および第2フェーズPH2)では、より詳細には次のような人物再識別(再同定)処理等が実行される。
【0075】
まず、第1フェーズPH1(ステップS11)において、多数の人物(たとえば、数百人~数万人)のそれぞれを個々に含む多数の画像(たとえば、数千枚~数十万枚)に基づき学習モデル400が機械学習される。なお、当該多数の画像に係る多数の人物は、互いに異なる服を着ており、完全に同じ服装の別人はいない、との前提である。同じような服装の人物画像に対応する特徴ベクトル同士は、特徴空間(学習モデル400の出力空間)において相対的に(異なる服装の人物画像に対応する特徴ベクトルよりも)近くに配置されるように、学習が行われる。
【0076】
詳細には、同じ人物(同じ服を着用している同じ人物)の画像に対応する特徴ベクトルは、特徴空間において非常に近接して配置されるように、学習される。換言すれば、特徴空間において、或る服装特徴を有する同一人物に係る複数の画像は、非常に近くに配置されるように学習される。すなわち、同じ人物の画像同士(詳細にはその特徴ベクトル同士)は、特徴空間において非常に近接して配置される。また、似た服装の異なる人物(類似する服装特徴を有する互いに異なる人物)の画像同士(詳細にはその特徴ベクトル同士)も、特徴空間において近接して配置される。一方、大きく異なる服装の異なる人物の画像同士(詳細にはその特徴ベクトル同士)は、特徴空間において比較的離れて配置される。
【0077】
図8の最右欄には、このような学習結果の一例が示されている。詳細には、学習済みモデル420による各出力ベクトル(特徴ベクトルF)が点状の図形でそれぞれ表現され、複数の特徴ベクトルFを表す複数の点状図形が、特徴空間(を表す大きな矩形)内にプロット(配置)されて示されている。
【0078】
また、図11および図16は、(図8の最右欄よりも)詳細な学習結果の一例を示す図である。図11の中央部分から下半部分に亘る大きな矩形内には、学習済みの学習モデル400(学習済みモデル420)による出力ベクトル(特徴ベクトルF)の分布が2次元的に示されている。また、図16は、同様の状況を3次元的に表現した図である。
【0079】
上述のように、特徴空間においては、同一人物の複数(たとえば2つの)の画像にそれぞれ対応する複数(たとえば2つ)の特徴ベクトルFは、非常に近接して(比較的近接して)配置される。たとえば、図11および図16において、2つの点状図形(たとえば、クロスハッチング付きの白丸図形のペア)が互いに非常に近接して配置されている。これは、同一人物の2つの画像(同じ衣服を着用した両人物画像)にそれぞれ対応する2つの特徴ベクトルFが非常に近接して配置されていることを表している。換言すれば、点状図形のペアは、同じ服装の同一人物の画像ペアに対応する。
【0080】
また、似た服装の異なる人物の画像同士(詳細にはその特徴ベクトルF同士)も、(同一人物の画像同士ほどの近接度合いではないものの)特徴空間において互いに近接して配置される。たとえば、図11および図16において、9つの白丸図形ペア(合計18個の白丸図形)が比較的近くに配置されている。また、当該9つの白丸図形ペア(ハッチング有無の双方)のうち、特に6つの白丸図形ペア(ハッチング付き)が比較的近くに配置されている。
【0081】
一方、大きく異なる人物の画像同士(詳細にはその特徴ベクトルF同士)は、特徴空間において比較的離れて配置される。たとえば、黒丸図形ペアと白丸図形ペア(ハッチング無し)とは大きく離れて配置されている。
【0082】
このように、同一人物に関する特徴ベクトルFは比較的狭い範囲に密集して存在し、似た服装の異なる人物に関する特徴ベクトルFは若干広い範囲に密集して存在する。一方、大きく異なる人物(大きく異なる服装を着用した異なる人物)に関する特徴ベクトルFは、比較的遠く離れて(比較的大きく分散して)存在する。
【0083】
なお、各図においては、図示の都合上、複数の特徴ベクトルFのうち一部の特徴ベクトルFのみが示されている。特に、図8図15および図17以降では、図11および図16等よりも更に少数の特徴ベクトルFのみが示されている。
【0084】
次に、第2フェーズPH2(ステップS12)において、画像処理装置30は、学習済みの学習モデル400(420)を用いて2人の人物(クエリ画像215の人物とギャラリー画像213の人物)が同じ人物か否か(両人物の類似度合い)を判定する。なお、同一人物は同じ服を着用しているとの前提で、同じような服装の人物が同一人物(詳細には、同一人物である可能性が高い人物)であるとして探索される。同じような服装の人物の画像ペア間の類似度は相対的に高くなる。
【0085】
具体的には、たとえば、式(1)で示される類似度Stを最大にする特徴ベクトルFの組み合わせ(ひいては対応する画像ペア)が、求められる。詳細には、クエリ画像の特徴ベクトルFとの類似度Stを最大化する特徴ベクトルFに対応するギャラリー画像が抽出される。すなわち、その特徴ベクトルが互いに類似する2つの画像が、同一人物の画像として抽出される。たとえば、図21(あるいは図14)等に示されるように、同じ服装(あるいは似た服装)の人物が、同一人物であると推定されて抽出される。
【0086】
さらに、次の第3フェーズPH3(ステップS13)では、同一の人物(ないし類似する人物)であると画像処理装置30が判断した根拠を説明する処理等が、画像処理装置30によって実行される。たとえば、類似していると判断した根拠が、白いショートパンツを着用している点なのか、および/または、パターン付き(チェック柄等)のシャツを着用している点なのか等が解析される。また、その前準備として、学習済みモデル420は、学習データに基づき、どのようなコンセプトを学習したのかに関する解析処理等が実行される。これらについては次述する。
【0087】
<1-7.説明段階(第3フェーズPH3)の処理(概要)>
この実施形態においては、画像処理装置30は更に第3フェーズPH3(図2)の処理を実行する。第3フェーズPH3の処理は、2つの画像(入力画像)の相互間の類似性に関する判断根拠をコンセプトベースで説明する処理(説明情報の生成処理等)である。ここでは、2つの画像の類似性として、クエリ画像215と上記推論処理にて探し出された画像213との類似性が判断される場合について主に説明する。
【0088】
この第3フェーズPH3の処理は、サブフェーズPH3a(ステップS20(図4))の処理と、サブフェーズPH3b(ステップS30(図5))の処理とに大別される。
【0089】
前者のサブフェーズPH3a(ステップS20(図4))では、機械学習された学習モデル420にて如何なるコンセプトが獲得(学習)されたかを解析する解析処理が行われる。前者のサブフェーズPH3aは、後者のサブフェーズPH3bの処理の前処理である。
【0090】
具体的には、サブフェーズPH3aにおいては、当該学習モデル400への複数の入力画像(たとえば、機械学習に用いられた複数の入力画像211)の入力に対して当該学習モデル400から出力される特徴空間における複数の特徴ベクトルFが取得される。そして、当該複数の特徴ベクトルFに対する階層化クラスタリング処理を実行することにより、階層化された複数のクラスタGが生成される。さらに、当該複数のクラスタのうちの特定クラスタに対応するベクトル(当該特定クラスタに関する代表ベクトル)が、当該特定クラスタのコンセプト(詳細には、当該コンセプトを表すベクトル等)として抽出される。当該特定クラスタに関する代表ベクトルとしては、たとえば、当該特定クラスタに関するコンセプト活性化ベクトルCAV(後述)が利用される。なお、後述するように、特定クラスタに対応する部分空間(代表ベクトルで張られる部分空間等)が、当該特定クラスタのコンセプトとして抽出されてもよい。
【0091】
一方、後者のサブフェーズPH3b(ステップS30(図5))では、2つの画像の類似性に関する判断根拠を導出する処理等が行われる。具体的には、2つの画像の類似性に対する各種コンセプト(サブフェーズPH3a(図4)で得られたコンセプト)による影響が評価される。より具体的には、学習モデル400が機械学習により獲得した各種コンセプト(当該学習モデル400から抽出された複数のコンセプト)について、2つの画像の類似性に対する寄与度がそれぞれ算出される。そして、当該寄与度等に基づき、これらのコンセプトのうち主要コンセプトが特定される。さらに、当該主要コンセプトを説明する画面表示等が行われる。
【0092】
以下、サブフェーズPH3a,PH3bについてこの順序で説明する。
【0093】
<1-8.サブフェーズPH3a(ステップS20)の処理>
まず、サブフェーズPH3aの処理について図4を参照しつつ説明する。
【0094】
<ステップS21>
図4に示されるように、まずステップS21において、コントローラ31(画像処理装置30)は、機械学習された学習モデル420への複数の入力画像210(211)の入力に対して学習モデル420から出力された(特徴空間における)複数の特徴ベクトル251を取得する。ここでは、学習済みモデル420への入力画像210として、学習済みモデル420の機械学習に用いた教師データ(詳細には、当該教師データを構成する入力画像211)を用いる。また、複数の特徴ベクトル251は、学習モデル400に関する学習処理の最終段階にて(多数回の繰り返しを伴う学習処理の後に)最終的に出力される特徴ベクトルである、とも表現される。
【0095】
各特徴ベクトル251は、学習済みモデル420への各入力画像211の入力に対して当該学習済みモデル420から出力される各ベクトル(次元数CH1のベクトル、たとえば、1024次元のベクトル)である。上述のように、このようにして得られた複数の特徴ベクトル251は、学習後の学習モデル420によって特徴空間内の適切な位置に分布する。学習モデル400に関する距離学習(メトリックラーニング)の結果、特徴空間内での複数の特徴ベクトル251の相互間の距離は、入力空間での対応入力画像の類似度を反映している(図11の下段および図16等参照)。特徴空間内における当該複数の特徴ベクトル251の分布は、学習によって獲得されたコンセプトに基づく分布であるとも考えられる。具体的には、同一コンセプトに対応する特徴ベクトル群、および互いに類似するコンセプトに対応する特徴ベクトル群は、特徴空間において比較的近くに分布している、と考えられる。
【0096】
<ステップS22:階層化クラスタリング処理>
次に、ステップS22において、コントローラ31は、特徴空間内での位置関係等に基づき複数の特徴ベクトル251に対する階層化クラスタリング処理を実行することにより、階層化された複数のクラスタを生成する。なお、階層化クラスタリング処理は、階層型クラスタリング処理あるいは階層的クラスタリング処理などとも称される。
【0097】
階層化クラスタリング処理は、複数の要素(集合の要素)(ここでは特徴ベクトルF(251))を順次にグルーピングして、階層化されたクラスタ(グループ)を形成する処理である。
【0098】
具体的には、階層化クラスタリング処理においては、最も類似する(相互間の類似度が最も高い)暫定クラスタ(次述)同士を1つずつ順次に結合してクラスタを生成することが(全体が1つのクラスタになるまで)繰り返される。これによって、階層化されたクラスタが形成される。暫定クラスタ(暫定的なクラスタ)は、最初は、単一の特徴ベクトルFで構成され、その後は、単一の特徴ベクトルF、又は2以上の特徴ベクトルFで構成される。当該2以上の特徴ベクトルFで構成される暫定クラスタは、階層化クラスタリング処理にて生成された(新たな)クラスタを意味する。
【0099】
なお、階層化クラスタリング処理において2つの暫定クラスタが相互に類似するか否かは、当該2つの暫定クラスタの距離等(たとえば、ユークリッド距離、あるいはコサイン類似度)に基づいて判定される。階層化クラスタリング処理としては、重心法、最短距離法、最長距離法、群平均法、あるいはウォード法(Ward's method)などの各種の手法が用いられればよい。これらの手法は、当該2つの暫定クラスタの距離等(類似度)を具体的にどのような量として算出するか等に応じて分類される。たとえば、重心法は、2つの暫定クラスタの重心間の距離を当該2つの暫定クラスタの距離(類似度)とする手法である。また、最短距離法は、一方の暫定クラスタのいずれかの要素と他方の暫定クラスタのいずれかの要素との距離のうち、最も短い要素間距離を当該2つの暫定クラスタの距離とする手法である。なお、各手法において類似度を表す指標値は、距離に限定されず、コサイン類似度等が用いられてもよい。以下では、主にコサイン類似度(式(1)参照)を用いる場合について例示する。
【0100】
より詳細には、階層化クラスタリング処理において、まず、全ての暫定クラスタ(最初は個々の特徴ベクトルF)同士の組み合わせについて評価値(具体的には、類似度St(式(1)参照)等)が求められる。そして、最も高い評価値(類似度St)を有する暫定クラスタ同士(要素ペア)を結合したグループが新たなクラスタとして形成される。そして、同様の処理が繰り返されることによって、順次に新たなクラスタ(同位クラスタあるいは上位クラスタ)が形成されていき、最終的には、大きな1つのクラスタが形成される。形成された複数のクラスタの包含関係(換言すれば、上下関係)は、1つの樹形図(デンドロイドとも称する)(図11の上段参照)で表現される。
【0101】
図11の下段(および図16)には、図8等と同様に、複数の特徴ベクトルF(251)が特徴空間(学習済みモデル420の出力空間)内に分布する様子が示されている。そして、このような分布を有する複数の特徴ベクトル251が、複数階層に階層化された複数のクラスタを形成している。なお、図11の上段には、当該複数の特徴ベクトルFに関する樹形図(デンドロイド)が併せて示されている。
【0102】
たとえば、上述のような階層化クラスタリング処理の途中段階において、クラスタG310(図11の中央左側付近参照)が形成される。クラスタG310は、互いに近接する複数(図11では6個)の特徴ベクトル251(点状黒丸図形)によって構成される。また、その次以降の或る段階では、クラスタG310を包含するようなクラスタG300が形成される。クラスタG300は、クラスタG310内の特徴ベクトル251と、クラスタG310に近接する他の特徴ベクトル251(ハッチング付きの点状黒丸図形)とで構成される。クラスタG300は、クラスタG310の上位クラスタ(親クラスタとも称する)とも表現される。
【0103】
同様に、階層化クラスタリング処理の或る途中段階において、クラスタG111とクラスタG112とクラスタG120とが形成される(図11の下側中央付近参照)。クラスタG111は、互いに近接する複数(図11では6個)の特徴ベクトル251(縦横クロス(格子状)ハッチング付きの点状白丸図形)によって構成される。クラスタG112は、互いに近接する複数(図11では6個)の特徴ベクトル251(斜めクロスハッチング付きの点状白丸図形)によって構成される。また、クラスタG120は、互いに近接する複数(図11では6個)の特徴ベクトル251(ハッチング無しの点状白丸図形)によって構成される。その次以降の或る段階では、2つのクラスタG111,G112の双方を包含するようなクラスタG110(2つのクラスタG111,G112の上位クラスタ)が構成される。その後の或る段階では、2つのクラスタG110,G120の双方を包含するようなクラスタG100(2つのクラスタG110,G120の上位クラスタ)が構成される。さらに後の或る段階では、2つのクラスタG100,G200の双方を包含するようなクラスタG10(2つのクラスタG100,G200の上位クラスタ)が構成される。
【0104】
また、他のクラスタG400,G510,G500なども、階層化クラスタリング処理の進展に伴って形成されていく。
【0105】
<階層化クラスタリング処理の処理結果>
このような階層化クラスタリング処理によって、例えば図11のような複数のクラスタ(G111,G112,G110,G120,G100,G200,G10,G310,G300,G400,G510,G500等)が形成される。なお、図11においては、図示の都合上、多数の特徴ベクトル251のうちの一部の特徴ベクトル251のみが図示されており、且つ、多数のクラスタのうちの一部のクラスタのみが図示されている。
【0106】
また、各特徴ベクトルF(251)は、それぞれ、各入力画像X(211)に対応している。それ故、階層化クラスタリング処理は、複数の特徴ベクトルF(251)をクラスタリングする処理であるとともに、複数の入力画像X(211)をクラスタリングする処理でもある(図13参照)。図13は、図11に示される複数のクラスタのうちの一部のクラスタを示す図である。図13においては、当該一部のクラスタに対応する入力画像210(211)が示されている。なお、入力画像210は実際には撮影画像であるものの、図13(以後の図(図14図21図25図26等)でも同様)では図示の都合上、入力画像210(211、213,215)がCG(コンピュータグラフィックス)画像で表現されている。
【0107】
たとえば、クラスタG111には、縦横クロス(格子状)ハッチング付きの複数の点状白丸図形(図11参照)にそれぞれ対応する複数の入力画像が含まれている、とも表現できる(図13も参照)。同様に、クラスタG112には、斜めクロスハッチング付きの複数の点状白丸図形(図11参照)にそれぞれ対応する複数の入力画像が含まれている。また、上位クラスタG110には、下位クラスタG111に含まれる複数の入力画像と、下位クラスタG112に含まれる複数の入力画像との双方が含まれている。
【0108】
より詳細には、図13に示されるように、クラスタG111は、「模様多めの白(白地)シャツ(且つその模様が直線的なもの)」を着用している少なくとも1人(ここでは3人以上)の人物に関する複数の画像211で構成されている。クラスタG112は、「模様多めの白シャツ(且つその模様が曲線的なもの)」を着用している少なくとも1人の人物に関する複数の画像211で構成されている。上位クラスタG110は、下位クラスタG111に含まれる人物画像211と、下位クラスタG112に含まれる人物画像211との双方を備えて構成されている。より具体的には、上位クラスタG110は、「模様多めの白シャツ」(その模様は直線的な模様であってもよく曲線的な模様であってもよい)を着用している少なくとも1人の人物に関する複数の画像211で構成されている。
【0109】
また、クラスタG110(「模様多めの白シャツ」の人物画像に対応するクラスタ)に対して同位関係を有するクラスタG120は、「模様少なめの白シャツ」を着用している少なくとも1人の人物に関する複数の画像211で構成されている。
【0110】
さらに、上位クラスタG100は、下位クラスタG110に含まれる人物画像211と、下位クラスタG120に含まれる人物画像211との双方を備えて構成されている。より具体的には、上位クラスタG100は、「模様有りの白シャツ」(その模様は多めであってもよく少なめであってもよい)を着用している少なくとも1人の人物に関する複数の画像211で構成されている。
【0111】
また、クラスタG100(「模様有りの白シャツ」の人物画像に対応するクラスタ)に対して同位関係を有するクラスタG200は、「薄いピンク色のシャツ」を着用している少なくとも1人の人物に関する複数の画像211で構成されている。
【0112】
その他のクラスタも同様に、特定の概念で互いに類似した服装の人物の画像で構成される。
【0113】
このように、各入力画像210(211)に対応する複数の特徴ベクトル250(251)をクラスタリングすることは、複数の入力画像210をクラスタリングすることと等価である。
【0114】
換言すれば、(階層化クラスタリング処理で生成された)特定クラスタに所属する複数の入力画像には共通の特徴が存在し、当該特定クラスタは、固有のコンセプトを有していると解釈される。
【0115】
また、上位クラスタのコンセプトは、その下位クラスタのコンセプトを包括(包含)するコンセプト(包括的コンセプト)である。逆に、下位クラスタのコンセプトは、その上位クラスタのコンセプトを細分化したコンセプトである。端的に言えば、上位コンセプトは粒度の粗いコンセプトであり、下位コンセプトは粒度の細かいコンセプトである。また、上位コンセプトは、比較的多くの人物間で共有されるコンセプトであり、下位コンセプトは、比較的少ないの人物間で共有されるコンセプトである、とも表現される。
【0116】
なお、図11の樹形図(デンドロイド)は一例であり、学習データ等に依拠して異なる樹形図が生成される。
【0117】
また、このような階層化クラスタリング処理においては、非常に多数のクラスタが生成される。階層化クラスタリング処理で生成された全てのクラスタが以後の処理(特にステップS31(後述)以降の処理)に利用されてもよいが、これに限定されない。たとえば、このような多数のクラスタのうち、所定人数(たとえば3人)以上を含むクラスタが、類似性の説明根拠を示すクラスタ(当該説明根拠のコンセプトを形成するクラスタ)として利用されることが好ましい。これによれば、(学習データの人物に固有の特徴への依存を抑制し)コンセプトのロバスト性を向上させることが可能である。換言すれば、単一の人物のみで構成されるクラスタは、類似性の説明根拠を示すクラスタからは除外されてもよい。
【0118】
また、特に、階層化クラスタリング処理にて生成された全てのクラスタのうち、そのコンセプトベクトルU(後述)が互いに1次独立(線形独立)となるような複数のクラスタのみが、用いられることが好ましい。
【0119】
<ステップS23:コンセプトベクトルUの抽出処理>
次のステップS23では、コントローラ31は、各クラスタに対応する部分空間あるいはベクトルを、当該各クラスタのコンセプトとして抽出する(ステップS23)。ここでは、各クラスタに対応するベクトル(「コンセプトベクトル」(次述))が、当該各クラスタのコンセプトとして抽出される。
【0120】
より詳細には、まず、コントローラ31は、全クラスタのうち、以後の処理での検討対象となり得るクラスタを選択する。具体的には、階層化クラスタリング処理にて生成された全クラスタの中から、所定の基準を充足する一部のクラスタが選択される。選択されたクラスタは、検討対象候補クラスタとも称される。当該所定の基準は、たとえば、(上述のような)所定数(たとえば3人)以上の人物を含むクラスタであること等である。あるいは、全てのクラスタが検討対象候補クラスタとして選択されてもよい。
【0121】
そして、コントローラ31は、選択された一部のクラスタ(複数の特定クラスタ)のそれぞれに対応する各ベクトルUを、当該各クラスタ(各特定クラスタ)のコンセプトとして抽出する(ステップS23)。特定クラスタに対応するベクトルUは、具体的には、当該特定クラスタに関する代表ベクトルである。なお、「代表ベクトル」は、特定クラスタに属する複数の特徴ベクトルのいずれかであることを要さず、当該複数の特徴ベクトルで構成された1つのまとまりを代表的に示すベクトル(当該特定クラスタに属する複数の特徴ベクトルを象徴するような代表的なベクトル)であればよい。また、ベクトルUは、当該特定クラスタのコンセプトを表現するベクトル(当該コンセプトのベクトル表現)であることから、「コンセプトベクトル」とも表現される。当該コンセプトベクトルUも、特徴ベクトルFと同様に、正規化されていることが好ましい。
【0122】
特定クラスタのコンセプトベクトルUは、たとえば、当該特定クラスタに属する(当該特定クラスタを構成する)複数の特徴ベクトルF(251)の平均ベクトルとして求められる。当該平均ベクトルは、特徴空間の超平面(超球面)上における当該複数の特徴ベクトルFの重心位置(平均位置)を示すベクトルであることから、重心ベクトルとも称される。
【0123】
あるいは、特定クラスタのコンセプトベクトルUは、特定クラスタの「コンセプト活性化ベクトル」(CAV:Concept Activation Vector)であってもよい。特定クラスタのコンセプト活性化ベクトルは、特定クラスタに属する要素とそれ以外の要素とを分離する分離平面501の法線ベクトルである(図17参照)。図17においては、特徴空間(ここでは、超球面)における分離平面501が示されている。分離平面501は、特定クラスタGaに属する要素(点状白丸図形(で表される特徴ベクトルFa)参照)と特定クラスタGaに属しない要素(他の点状図形(で表される特徴ベクトルFb)参照)とを分離する平面である。このような分離平面501は、2クラス分類の線形分離器(線形識別器)(サポートベクトルマシン等)によって求めることができる。この分離平面501に垂直な(且つ外向きの)ベクトルが、特定クラスタGaのコンセプト活性化ベクトル(CAV)である。
【0124】
図18図20は、各クラスタのコンセプトベクトルU(CAV等)を示す図である。各図において、その左側には或るクラスタGが示されており、その右側には当該或るクラスタGのコンセプトベクトルU(超球面上の点へ向かうベクトルで表現されたコンセプトベクトル)が示されている。
【0125】
たとえば、図18の上段にはクラスタG110のコンセプトベクトルU(U110)が示されており、図18の中段にはクラスタG120のコンセプトベクトルU(U120)が示されている。また、図18の下段にはクラスタG100のコンセプトベクトルU(U100)が示されている。
【0126】
また、図19の上段にはクラスタG200のコンセプトベクトルU(U200)が示されており、図19の中段にはクラスタG310のコンセプトベクトルU(U310)が示されている。また、図19の下段にはクラスタG300のコンセプトベクトルU(U300)が示されている。
【0127】
同様に、図20の上段にはクラスタG400のコンセプトベクトルU(U400)が示されており、図20の中段にはクラスタG510のコンセプトベクトルU(U510)が示されている。また、図20の下段にはクラスタG500のコンセプトベクトルU(U500)が示されている。
【0128】
なお、ここでは、図示されていないが、他のコンセプトベクトルU、たとえば、コンセプトベクトルU111,U112,U10等も同様に求められる。
【0129】
これらの図に示されるように、デンドロイド(図11上段参照)にて互いに近くに存在するクラスタ同士のコンセプトベクトルU同士は、比較的類似する。たとえば、クラスタG110のコンセプトベクトルU110(図18上段参照)とクラスタG120のコンセプトベクトルU120(図18中段参照)とは、互いに比較的近い(比較的近い向きを有している)。逆に、デンドロイド(図11上段参照)にて互いに遠く離れたクラスタ同士のコンセプトベクトルU同士は、大きく異なる。たとえば、クラスタG100のコンセプトベクトルU100(図18下段参照)とクラスタG500のコンセプトベクトルU500(図20下段参照)とは、互いに大きく異なる(大きく異なる向きを有している)。
【0130】
このように、コンセプトベクトルUの類似性は、各クラスタの特徴(換言すれば、各クラスタのコンセプト)の類似性を反映している。
【0131】
また、上述したように、(階層化クラスタリング処理で生成された)特定クラスタに所属する複数の入力画像には共通の特徴が存在し、当該特定クラスタは、固有のコンセプトを有していると解釈される。
【0132】
そこで、コントローラ31は、各クラスタのコンセプトベクトルUを当該各クラスタのコンセプト(ないしコンセプト表現)として抽出する。各クラスタのコンセプトベクトルUは、当該各クラスタのコンセプトを表現するベクトルである。換言すれば、各クラスタのコンセプトベクトルUは、各クラスタの「ベクトルによるコンセプト表現」でもある。
【0133】
以上のように、学習済みモデル420は、(階層化クラスタリング処理にて生成された)各クラスタのコンセプトを学習したモデルであると解釈される。そして、各クラスタのコンセプトベクトルUが、当該各クラスタのコンセプトとして抽出される。
【0134】
なお、上述したように、図16および図18~20等においては、各コンセプトベクトルUが3次元的に表現されている。ただし、実際には、各コンセプトベクトルUは、非常に高い次元(β次元(たとえば1024次元))のベクトル(多次元ベクトル)である。したがって、互いに異なるクラスタ(コンセプト)に対応する非常に多数(γmax個)(たとえば300個)(ただし、γmax<β))のコンセプトベクトルUが、1次独立(線形独立)のベクトルとして存在する。
【0135】
また、このような多次元の(たとえば1024次元)コンセプトベクトルUの図示(3次元表現)には限界がある。各コンセプトベクトルUは、図示可能な3つの次元以外の他の次元(4次元目以降の第i次元等)に実質的な特徴成分を有していることが多い。たとえば、図16図18図20等においては、互いに大きく異なる複数のコンセプトベクトルUは3次元内にて異なる向きを有している。ただし、実際には、互いに大きく異なる複数のコンセプトベクトルUは4次元目以降の第i次元等において相違する向きを有していることが多い。
【0136】
<1-9.2つの画像の類似度(コンセプト群ごとの類似度Sc等)>
サブフェーズPH3b(図5)の処理について説明する前に、2つの画像(画像ペア)の類似度について説明する。2つの画像(第1画像および第2画像)としては、クエリ画像とステップS12で抽出されたギャラリー画像とが例示される。ただし、これに限定されず、任意の2つの画像の類似性についても同様である。
【0137】
まず、上述のように、2つの入力画像の相互間における類似度St(画像ペア相互間における全体的な類似度St)は、上式(1)で表される。すなわち、2つの入力画像Xの類似度Stは、当該2つの入力画像Xに対する学習モデル400からの出力ベクトルq,g(特徴ベクトルF)の内積(q・g)(ここでは、cosθ)として算出(表現)される。たとえば、図21に示すような2つの入力画像(クエリ画像およびギャラリー画像)の類似度Stは、それぞれの特徴ベクトルq,gの内積(図21では、St=0.778)として算出される。
【0138】
ここで、当該類似度St(全体的な類似度)とは異なる別の指標(具体的には、類似度Sc)を導入する。この類似度Scは、複数のコンセプトのうち、類似性に関する寄与度合いを考慮する対象として選択されたコンセプト(考慮対象コンセプトないし被選択コンセプトとも称する)で説明される、(両画像の)類似度合いを示す指標値である。端的に言えば、類似度Scは、2つの入力画像の相互間における全体的な類似性ではなく、一部の被選択コンセプトに起因する部分的な類似性を表す。換言すれば、類似度Scは、2つの入力画像の相互間における全体的な類似度Stのうち、一部の被選択コンセプト(考慮対象コンセプト)が寄与する成分を表す。謂わば、類似度Scは、両画像の類似性に対して被選択コンセプトが寄与する程度(寄与度)を示す指標である。類似度Scは、コンセプトごと(コンセプトベクトルごと、或いはクラスタごと)の類似度(寄与度)である、とも表現される。なお、類似度Scは、類似度Stと同様に、スカラー(値)である。
【0139】
この被選択コンセプトに関する類似度Scは、被選択コンセプトに対応したコンセプトベクトルUにより張られる部分空間(特定部分空間とも称する)上での画像特徴量(特徴ベクトルFq(=q)およびFg(=g))間の類似度合いで表現される。具体的には、当該類似度Scは、第1特徴ベクトルqを当該特定部分空間に射影(直交射影)したベクトル(Pq)と、第2特徴ベクトルgを当該特定部分空間に射影(直交射影)したベクトル(Pg)との内積で表現される。ベクトル(Pq)は、射影行列P(次述)を特徴ベクトルqに対して(左から)作用させたベクトル(正射影ベクトル)であり、ベクトルPgは、射影行列Pを特徴ベクトルgに対して(左から)作用させたベクトル(正射影ベクトル)である。
【0140】
すなわち、当該類似度Scは、次の式(2)で表現される。
【0141】
【数2】
【0142】
ただし、行列Pは、各特徴ベクトルFを、上記特定部分空間(被選択コンセプトに対応したコンセプトベクトルUにより張られる部分空間)に射影する特定の射影行列(詳細には直交射影行列)である。具体的には、射影行列(直交射影行列)Pは、行列Bを用いて次の式(3)で算出される。行列Pは、β×βのサイズを有している。値βは、ベクトルF(qあるいはg)の次元数(たとえば1024)である。
【0143】
【数3】
【0144】
ここで、行列Bは、所定数(被選択コンセプトの個数(γ個))のコンセプトベクトルU(縦ベクトル(列ベクトル))を横方向に並べた行列である。行列Bは、β×γ(たとえば、1024×2)サイズを有している。また、γは、選択するコンセプトの個数(たとえば、2(1あるいは3などでもよい))である。また、行列の右上の添え字「T」は転置(行列)であることを示す。
【0145】
γ個のコンセプトベクトルUは、互いに1次独立(線形独立)となるように選択される。また、被選択コンセプトの個数γの最大値は、βである。
【0146】
なお、式(3)は、1又は2以上のベクトルbで張られる部分空間(2以上のベクトルbを基底とする部分空間)への直交射影を表す行列(直交射影行列)を求める一般的な式でもある。ただし、ベクトルbとしてコンセプトベクトルUを用いている。
【0147】
行列B(ひいては行列P)は、被選択コンセプト(詳細には当該被選択コンセプトに対応するコンセプトベクトル)に依拠して、異なる行列になる。詳細には、いずれのコンセプト(およびいくつのコンセプト)を選択するかに依拠して、行列B(および行列P)は変動する。
【0148】
なお、逆行列を算出する際の便宜上、式(3)の代わりに次の式(4)を用いて射影行列Pが算出されてもよい。+εEの項は、無限大への発散等を防止するための調整項である。行列Eは次元数βの単位行列(β×β(サイズ)の単位行列)であり、値εは微少な定数である。
【0149】
【数4】
【0150】
再び式(2)を参照し、当該式(2)について説明する。
【0151】
式(2)においては、上述のように、2つの入力画像X(Xq,Xg)に対応する2つの特徴ベクトルF(具体的には、ベクトルq,g)が、特定の射影行列Pを用いて2つの射影ベクトル(PF)に変換される。射影ベクトル(PF)は、射影行列Pを特徴ベクトルFに対して(左から)作用させたベクトルである。上述のように、当該特定の射影行列Pは、特徴空間内における各特徴ベクトルを、特定の部分空間(特定コンセプトに対応する部分空間)に射影(直交射影)する射影行列(直交射影行列)である。
【0152】
この特定の射影行列P(式(3)等参照)は、評価対象のn個の被選択コンセプト(1又は2以上のコンセプト)で構成されるコンセプト群ごとに規定される。
【0153】
たとえば、評価対象のコンセプトが単一のコンセプトである場合、特定の射影行列Pは、特徴空間内における各特徴ベクトルFを、特定の直線(特定の部分空間)に射影する射影行列である。より詳細には、単一のコンセプトベクトルUで規定される単一のコンセプトに関する特定の射影行列Pは、特徴空間内における各特徴ベクトルを、特定の直線(当該単一のコンセプトベクトルUを含む直線)に射影する射影行列である。
【0154】
図23は、このような射影行列P(ただし、単一のコンセプトベクトルU1で張られる部分空間(すなわち直線)への直交射影行列)により各特徴ベクトルq,gがそれぞれ特定の直線(単一のコンセプトベクトルU1を含む直線)に射影(正射影)される様子を示している。
【0155】
図23に示されるように、この直交射影行列Pによって、ベクトルqはベクトルq1に変換され且つベクトルgはベクトルg1に変換される。図23では、変換後のベクトルq1,g1は太い破線で示されている。このように、ベクトルq1,g1は、特定クラスタ(特定コンセプトベクトル)に対応する部分空間(詳細には直線)に対して、2つの特徴ベクトルq,gをそれぞれ射影した射影ベクトルである。
【0156】
それ故、式(2)は、次の式(5)のように変形される。具体的には、2つの射影ベクトルq1,g1間の内積(q1・g1=qs*gs)が、当該各クラスタ(コンセプト)に関する類似度Scとして求められる。
【0157】
【数5】
【0158】
ここで、値qsは、ベクトルq1の大きさ(コンセプトベクトルUの向きの直線へと射影したベクトルqの射影成分)であり、値gsは、ベクトルg1の大きさ(コンセプトベクトルUの向きの直線へと射影したベクトルgの射影成分)である。ただし、ベクトルq1(,g1)とコンセプトベクトルUとのなす角度が90度~270度(degree)である場合には、値qs(,gs)は負の値である。式(2)で示される類似度Scは、式(5)で示されるように、値qsと値gsとの積として算出される。
【0159】
なお、図24は、図23と同様の図である。ただし、図24は、仮にコンセプトベクトルUがx軸と同じ向きを向いている場合を示している。この場合には、図24に示されるように、値qsはベクトルq1のx方向成分(第1成分)に等しく、値gsはベクトルg1のx方向成分(第1成分)に等しい。図24は、説明の単純化のために示したが、一般的には、図23のような射影変換が想定される。
【0160】
式(2)(特に式(5))によれば、単一のコンセプトベクトルUに関する寄与度(換言すれば、両画像の類似性に対する単一の被選択コンセプトの寄与度)が、類似度Scとして算出される。換言すれば、コンセプトごとの類似度Scが算出される。
【0161】
また、評価対象のコンセプトが2つのコンセプトである場合、特定の射影行列Pは、特徴空間内における各特徴ベクトルFを、特定の平面(特定の部分空間)に射影する射影行列である。より詳細には、2つのコンセプトに関する特定の射影行列Pは、特徴空間内における各特徴ベクトルFを、特定の平面(2つのコンセプトに対応する2つのコンセプトベクトルU1,U2で張られる平面)に射影する射影行列である。そして、式(2)に従って、2つの特徴ベクトルFを当該射影行列Pによって射影変換した後の2つの射影ベクトルの内積(Pq)・(Pg)が、2つの画像の類似性への評価対象コンセプトによる寄与度Scとして算出される。
【0162】
図22は、このような射影行列P(2つのコンセプトベクトルU1,U2で張られる部分空間(平面)への直交射影行列)により各特徴ベクトルq,gがそれぞれ当該平面(2つのコンセプトベクトルU1,U2で張られる平面)に射影される様子を示している。図22では、図示の簡単化のため、コンセプトベクトルU1,U2が平面z=0(xy平面)に平行である場合が示されている。換言すれば、2つのコンセプトベクトルU1,U2で張られる平面が、z=0で表される平面である場合が示されている。
【0163】
図22に示されるように、2つのコンセプトベクトルU1,U2を用いて算出された当該直交射影行列Pによって、ベクトルqはベクトルq12に変換され且つベクトルgはベクトルg12に変換される。なお、変換後のベクトルq12,g12は太い破線で示されている。
【0164】
この場合、直交射影行列Pによる変換後の両ベクトルq12,g12の内積(換言すれば、特定部分空間(平面z=0)での両ベクトルq12,g12の類似度)が、類似度Scとして算出される。すなわち、2つのコンセプトを考慮対象(評価対象)とする場合、対応する2つのコンセプトベクトルU1,U2で張られる平面に対して2つの特徴ベクトルFを射影変換した後の2つのベクトルの内積(q12・g12)が、類似度Scとして算出される。
【0165】
このようにして、2つのコンセプトベクトルU1,U2に関する寄与度(換言すれば、両画像の類似性に対する2つの被選択コンセプトの寄与度)が、式(2)に基づき類似度Scとして算出され得る。
【0166】
同様にして、任意の個数(所定数)のコンセプトベクトルUに関する寄与度(換言すれば、両画像の類似性に対する当該所定数の被選択コンセプトの寄与度)(類似度)Scが、式(2)に基づき算出され得る。なお、3つ以上のコンセプトベクトルUに関する寄与度Scは、4次元以上の変換前空間からそれよりも低い次元(コンセプトベクトルの個数に等しい次元)の変換後空間へと射影変換された2つのベクトルの内積として考えればよい(ただし、図示は困難である)。
【0167】
<1-10.サブフェーズPH3b(ステップS30)の処理>
<サブフェーズPH3bの概要>
つぎに、サブフェーズPH3b(ステップS30)の処理について図5を参照しつつ説明する。サブフェーズPH3bの処理は、2つの画像の類似性に関する判断根拠を導出する処理等である。
【0168】
サブフェーズPH3bでは、同一の人物(ないし類似する人物)であると画像処理装置30が判断した根拠を説明する処理等が、画像処理装置30によって実行される。ここでは、ステップS12で同一人物の画像(所定程度以上に類似している画像)と判定された2つの画像(クエリ画像Xqおよびギャラリー画像Xg)の類似性に関する判断根拠を導出する処理について主に説明する。ただし、本発明は、これに限定されず、任意の2つの画像の類似性についての判断処理およびその判断根拠の導出処理等が実行されてもよい。
【0169】
このサブフェーズPH3bの処理によれば、類似していると判断した根拠が、たとえば、特定の特徴を有するシャツを着用している点なのか、特定の特徴を有するボトムスを着用している点なのか等が解析され得る。また、シャツの模様に特徴を見いだしたのか等もが解析され得る。
【0170】
このサブフェーズPH3bでは、上述したコンセプトベクトルU(ステップS23(図4)参照)を利用して、類似性に関する判断根拠が解析される。
【0171】
<ステップS31:主要コンセプトの抽出>
具体的には、まず、ステップS31(図5)において、学習モデル400にて獲得された各種のコンセプトのうち、2つの画像の類似性に特に大きな影響を及ぼすコンセプト(寄与度が大きなコンセプト)が主要コンセプトとして抽出される。詳細には、複数のコンセプトのうち、所定の基準による上位数個のコンセプトが主要コンセプトとして抽出される。たとえば、次述する2つの手法のいずれか、具体的には、第1手法と第2手法とのいずれかが実行されて、主要コンセプトが抽出される。
【0172】
以下では、2つの手法(第1手法および第2手法)について例示する。
【0173】
まず、第1手法について説明する。
【0174】
第1手法は、画像ペアの類似度に対するコンセプト毎の寄与度Sc(式(5)参照)を全コンセプトについて求め、当該寄与度Scの大きな上位数個のコンセプトを主要コンセプトとして抽出する手法である。
【0175】
具体的には、第1手法においては、まず、コントローラ31は、単一のコンセプトベクトルUの寄与度Sc(上述の式(5)に基づく類似度Sc)を、複数の候補コンセプトベクトルU(後述)(たとえば全てのコンセプトベクトルU)のそれぞれについて求める。すなわち、コントローラ31は、或るクラスタに対応する単一のコンセプトベクトルUで表現される一のコンセプトが全体の類似度にどの程度寄与しているか、を求める処理(コンセプトごとの寄与度Scを求める処理)を、全てのコンセプトについて実行する。次に、コントローラ31は、全てのコンセプトをその寄与度の大きい順に(寄与度の降順に)並べ替える。そして、コントローラ31は、上位数個のコンセプトを、2つの画像の類似度に大きく寄与する主要なコンセプト(主要コンセプト)として決定する。
【0176】
なお、第1手法においては(第2手法も同様)、上記ステップS20で抽出された複数のコンセプト(複数のコンセプトベクトルU)の全てが、類似性の根拠となるコンセプトの候補(候補コンセプトとも称する)として特定されてもよい。ただし、これに限定されず、候補コンセプトは、上記ステップS20で抽出された全てのコンセプトのうちの一部のコンセプトであってもよい。換言すれば、類似性の根拠となるコンセプトベクトルの候補(候補コンセプトベクトルUとも称する)は、上記ステップS20で抽出された全てのコンセプトベクトルのうちの一部のコンセプトベクトルであってもよい。このように、一部の候補コンセプト(候補コンセプトベクトル)の中から、主要コンセプト(主要コンセプトベクトル)が決定されてもよい。
【0177】
次に、第2手法について説明する。
【0178】
第2手法は、寄与度(類似度)について検討する点においては第1手法に類似する。
【0179】
ただし、第2手法では、或る時点(i回目の繰り返し処理時点)で既に選択(考慮)されたコンセプト(選択済みコンセプト)以外のコンセプト(未選択コンセプト)の中から、次順位コンセプトを探索する探索処理が繰り返し実行される。ここで、次順位コンセプトは、未選択コンセプトのうち、考慮される類似度成分(そのコンセプトによって追加的に説明される類似度成分)を最も大きく増大させるようなコンセプトである。具体的には、或る時点における未選択(未考慮)コンセプトのコンセプトベクトルU(未選択コンセプトベクトルU)のうち、考慮される類似度成分を最大化するようなコンセプトベクトルUを探索する探索処理が繰り返し実行される。換言すれば、選択済みコンセプトでは未だ説明されていない類似度成分のうち、新たに(追加的に)説明できる成分を最も大きくする未選択コンセプト(次順位コンセプト)が順次に探索される。
【0180】
詳細には、或る時点で既に選択されたコンセプトベクトルUにより張られる部分空間の「直交補空間」上で類似度に最も寄与するコンセプトベクトルUが探索される(後述する式(6)等参照)。そして、当該探索処理が繰り返されることによって、主要コンセプトが決定される。このような点において、第2手法は、コンセプト毎の寄与度を主に用いて主要コンセプトを決定する第1手法と相違する。
【0181】
第2手法によれば、高い独立性を有するコンセプトを主要コンセプトとして抽出することが可能である。換言すれば、コンセプト間の重複を少なくした主要コンセプトを抽出することが可能である。
【0182】
以下、第2手法について詳細に説明する。
【0183】
第2手法では、各特徴ベクトルF(詳細には、特徴ベクトルq,g)が、特定の射影行列R(次述)による射影変換後の射影ベクトルに変換される。
【0184】
特定の射影行列Rは、特定の射影行列Pを用いて(1-P)で表現される行列(R=1-P)である。
【0185】
特定の射影行列P(詳細には、Pnとも表記する)は、或る時点で既に考慮されたn個(γ個)のコンセプトベクトルUに基づく射影行列(詳細には、直交射影行列)である。射影行列P(詳細にはPn)は、n個のコンセプトベクトルUを横方向に並べた行列Bに基づいて、式(3)または式(4)を用いて求められる行列である。なお、値nは、上記探索処理が繰り返されるごとに1つずつ増加していく値である。
【0186】
一方、射影行列R(詳細には、Rnとも表記する)は、射影行列Pnによる射影空間(部分空間)に直交する部分空間(直交補空間)へと各特徴ベクトルFを射影する行列であり、(1-Pn)に相当する行列である。換言すれば、射影行列Pnによる射影空間(部分空間)の直交補空間が、射影行列Rnによる射影空間(部分空間)である。なお、射影行列Rnは、直交射影行列でもある。
【0187】
なお、特徴ベクトルFは、特定の部分空間へ射影する射影行列P(=Pn)を特徴ベクトルFに作用させたベクトル(PF)と、当該特定の部分空間の直交補空間へと射影する射影行列R(=Rn=1-Pn)を特徴ベクトルFに作用させたベクトル(RF)とに分離される。ベクトル(PF)は、射影行列P(詳細には行列B)を構成するn個のコンセプトベクトルUで考慮される成分である、とも表現される。また、ベクトル(RF)は、射影行列P(行列B)を構成するn個のコンセプトベクトルUでは未だ考慮されていない成分である、とも表現される。
【0188】
また、射影行列Pが、たとえば単一のコンセプトベクトルUで張られる部分空間(特定直線)への射影行列である場合、射影行列Rは、当該部分空間(特定直線)に直交する部分空間(残りの部分空間)への射影行列である。簡単化のためコンセプトベクトルUが3次元ベクトルであるとすると、射影行列Rは、当該部分空間(特定直線)に直交する部分空間(「平面(当該特定直線に垂直な平面)」)への射影行列である。
【0189】
この第2手法では、次の式(6)で表現される指標値Qnを最大化する新たなコンセプト(詳細には、当該新たなコンセプトに対応する新たなコンセプトベクトルUr)が探索される。具体的には、第(n+1)順位の新たなコンセプトベクトルUが探索される。すなわち、次順位コンセプトベクトルU(ひいては次順位コンセプト)が探索される。
【0190】
詳細には、未だ選択されていない(残余の)コンセプトベクトルUr(新たな選択対象コンセプトの候補)のそれぞれについて、式(6)に基づいて、指標値Qnが算出される。ここで、「既に選択(考慮)されたコンセプトベクトル」は、行列Pn(行列Rnに対応する行列)を構成するために利用されたn個(1又は2以上)のコンセプトベクトルUを意味する。また、「未だ選択(考慮)されていないコンセプトベクトル」は、当該行列Pnを構成するために利用されたn個のコンセプトベクトルU以外のコンセプトベクトルU(残余のコンセプトベクトルU)を意味する。
【0191】
【数6】
【0192】
式(6)のベクトルUrは、新たな選択対象コンセプトの候補に対応する未選択の一のコンセプトベクトルU(一の候補コンセプトベクトルU)である。
【0193】
ベクトル(Rq)は、射影行列Rを特徴ベクトルqに対して(左から)作用させたベクトルであり、ベクトルRgは、射影行列Rを特徴ベクトルgに対して(左から)作用させたベクトルである。
【0194】
換言すれば、ベクトル(Rq)は、射影行列Pによる射影空間に対する直交補空間へと特徴ベクトルqを射影したベクトルであり、ベクトル(Rg)は、射影行列Pによる射影空間に対する直交補空間へと特徴ベクトルgを射影したベクトルである。
【0195】
これらのベクトル(Rq)およびベクトル(Rg)は、それぞれ、未だ考慮されていない部分空間への射影ベクトルである。また、ベクトル(Rq)とベクトルUr(未だ考慮されていない新たなコンセプトベクトル)との内積(Rq・Ur)は、まだ考慮されていない部分空間への射影ベクトルのうち、当該ベクトルUrによる寄与成分(ベクトルUrへの射影成分)を表している。ベクトル(Rq)とベクトルUr(未だ考慮されていない新たなコンセプトベクトル)との内積(Rg・b)も同様である。
【0196】
そして、式(6)では、これらの2つの内積同士の積(スカラー(値))が指標値Qnとして求められる。具体的には、ベクトル(Rq)とベクトルUrとの内積((Rq)・Ur)が算出されるとともに、ベクトル(Rg)とベクトルUrとの内積((Rg)・Ur)が算出され、これらの内積同士の積(スカラー積)(式(6)の右辺)が算出される。
【0197】
この指標値Qnは、既に考慮したコンセプトでは未だ考慮されていない部分空間(既に考慮したコンセプトベクトルUで張られる部分空間に対する「直交補空間」)への射影ベクトル(当該直交補空間へと特徴ベクトルFを射影したベクトル(RF))と新たなコンセプトベクトルUrとの内積((RF)・Ur)同士の積である。
【0198】
これまでに考慮したコンセプト(1以上のコンセプトベクトルU)では未だ考慮できていない部分空間(直交補空間)に各特徴ベクトルFを射影した各射影ベクトル(RF)は、各特徴ベクトルFのうちの未考慮成分(既考慮コンセプトでは未だ考慮できていない成分)を表している。また、当該未考慮成分と新たなコンセプトベクトルUとの内積は、当該未考慮成分と(当該新たなコンセプトベクトルUに対応する)新たなコンセプトとの類似性を表している。それ故、指標値Qnは、2つの特徴ベクトルq,gのうちの未考慮成分と新たなコンセプトとの類似性を表している。すなわち、指標値Qnは、当該未考慮成分のうち、類似性に関する判断根拠について、当該新たなコンセプトで説明できる成分の大きさを示している。換言すれば、指標値Qnは、新たなコンセプト(コンセプトベクトルU)が未考慮成分に寄与する度合いを表している。
【0199】
それ故、指標値Qnを最大化するコンセプトベクトルUは、2つの特徴ベクトルFに関する未考慮成分との類似度を最大化するコンセプトであり、未考慮成分を最も説明できるコンセプトである。
【0200】
そして、探索処理の結果、未選択のコンセプトベクトルUrのうち、当該指標値Qnを最大化するコンセプトベクトルUrが、新たなコンセプトベクトルU(次順位コンセプトベクトル)として求められる。すなわち、指標値Qnを最大化するコンセプトベクトルUに対応するコンセプトが、新たな主要コンセプト(次順位(第(n+1)順位)の主要コンセプト)として選択される。換言すれば、指標値Qnを最大化するクラスタが次順位クラスタとして決定される。
【0201】
さらに、当該新たなコンセプトベクトル(次順位コンセプトベクトル)をも用いた新たな行列P,Rが求められる。具体的には、次順位コンセプトベクトルの追加に伴って、コンセプトベクトルUの選択数が1つ増大(インクリメント)し、値nも1つ増大する。また、コンセプトベクトルUの選択数等のインクリメントに応じて、射影行列Pのランク(階数)は1つ増大し且つ射影行列Rのランク(階数)は1つ減少する。換言すれば、射影行列Pによる射影空間の次元数は1つ増大し、射影行列Rによる射影空間の次元数は1つ減少する。
【0202】
以後、同様にして、所定数(たとえば5個)の主要コンセプトが選択されるまで当該探索処理が繰り返される。これによって、第2手法において、上位数個(上位所定数)の主要コンセプト(詳細には、当該主要コンセプトに対応するコンセプトベクトルU)が決定される。
【0203】
より具体的には、第1順位のコンセプトベクトルUの決定の際には、ゼロ個のコンセプトベクトルUが選択された状態から開始されればよい。この場合、式(6)において、ベクトル(Rq)は特徴ベクトルq自体であり且つベクトル(Rg)は特徴ベクトルg自体であるとして、ベクトル(Rq)と候補コンセプトベクトルUとの内積等が求められればよい。
【0204】
あるいは、第1手法と同様にして、式(5)に基づいて複数のコンセプトベクトルUについての各類似度Scが算出され、算出された複数の類似度Scのうちの最大値に対応するコンセプトベクトルUが第1順位のコンセプトベクトルUとして求められてもよい。なお、第1順位のコンセプトを求めるにあたっては、式(6)と式(5)とは等価である(Rq・Ur=q・Ur=qs=Pq)。
【0205】
また、たとえば、第1順位のコンセプトベクトルUがコンセプトベクトルU110に決定された後、第2順位のコンセプトベクトルUが決定される際には、行列Bは、単一のコンセプトベクトルU110(縦ベクトル)になる。そして、行列B(当該縦ベクトル)に基づき行列P(階数=1)が求められ(式(3)あるいは式(4)参照)、行列Pに基づき行列Rが求められる(R=1-P)。そして、式(6)の指標値Qnを最大化する次順位(第2順位)コンセプトベクトルU(たとえばコンセプトベクトルU400)が求められる。
【0206】
さらに、その後、第3順位のコンセプトベクトルUが決定される際には、行列Bは、2つのコンセプトベクトルU110,U400が横方向に並べられた行列である。そして、行列Bに基づき行列P(階数=2)が求められ(式(3)あるいは式(4)参照)、行列Pに基づき行列Rが求められる(R=1-P)。そして、式(6)の指標値Qnを最大化する次順位(第3順位)コンセプトベクトルU(たとえばコンセプトベクトルU510)が求められる。
【0207】
以降、同様の処理が繰り返され、上位数個(たとえば5個)のコンセプトベクトルUが決定される。
【0208】
<別の終了条件>
なお、ここでは、所定数の主要コンセプトが得られるまで上記探索処理が繰り返されている(換言すれば、所定数の主要コンセプトが得られることが終了条件として設定されている)が、これに限定されず、別の終了条件(終了判定条件)の下で上記探索処理が繰り返されてもよい。
【0209】
たとえば、式(7)の条件を満たすことが終了条件として設定されてもよい。詳細には、値nのインクリメント後に式(7)の終了条件が判定されればよい。
【0210】
【数7】
【0211】
式(7)の左辺((Pq)・(Pg))は、上述の類似度Scと同じである(式(2)参照)。行列Pは、被選択コンセプト(選択済みコンセプト)を示すn個の被選択コンセプトベクトルUで張られる部分空間への射影行列である。すなわち、式(7)の左辺は、ベクトルq,gをそれぞれ当該部分空間へ射影した射影ベクトルの内積(すなわち、n個の被選択コンセプトベクトルUによる寄与度)を表す。
【0212】
一方、式(7)の右辺は、変換前の両ベクトルq,gの内積に一定の割合(1-δ)を乗じた値である。ここで、値δは、割合を示す定数(0<δ<1)であり、値(1-δ)も、全体に対する割合を示している。
【0213】
たとえば、値δが0.4の場合、値(1-δ)は0.6である。この場合、式(7)の終了条件は、変換後の両ベクトル(Pq),(Pg)の内積が、変換前の両ベクトルq,gの内積の60%の値よりも大きくなることを意味する。換言すれば、式(7)は、値nの増大に伴って徐々に増大する値Sc(n個のコンセプトベクトルUに対応する射影行列Pを用いて算出される類似度Sc)が、全体の類似度Stに対する一定割合(1-δ)の値よりも大きくなった時点で探索処理が終了することを意味する。
【0214】
たとえば、第5順位までのコンセプトベクトルUが決定された後、第(n+1)順位(具体的には、第6順位)の新たなコンセプトベクトルUrを探索する際に、式(7)の終了条件が成立すると、探索処理の繰り返しが終了する。そして、第5順位までのコンセプトベクトルUが主要コンセプトベクトルとして決定される。
【0215】
このようにして、コンセプトベクトルUの個数nを予め決定する代わりに、値δ(ひいては、n個のコンセプトベクトルUで考慮すべき寄与度の割合)を予め決定してもよい。
【0216】
<コンセプト決定例>
上述のような第2手法によれば、たとえば、最上位(第1順位)コンセプトC1、第2順位コンセプトC2、第3順位コンセプトC3、第4順位コンセプトC4、および第5順位コンセプトC5が、この順序で探索されて求められる。
【0217】
より具体的には、コンセプトベクトルU110(図18最上段参照)が最上位コンセプトC1として特定される(図11および図13等も参照)。この場合、2つの画像の類似性に関する最大の判断根拠(学習済みモデル420による判断根拠)は、コンセプトベクトルU110で表現される特徴であることが判る。換言すれば、コンセプトベクトルU110に対応するクラスタG110の特徴が、(類似している旨の判断に関する)最大の判断根拠であることが判る。当該クラスタG110は、「模様多めの白シャツ」を着用している人物の画像群で構成されている(図11および図13参照)ことから、当該コンセプトC1は、「模様多めの白シャツ」、とも表現できる。
【0218】
また、コンセプトベクトルU400(図20最上段参照)が第2順位コンセプトC2として特定される。換言すれば、コンセプトベクトルU400に対応するクラスタG400の特徴が、第1順位コンセプトC1とは別観点の比較的大きな判断根拠であることが判る。当該クラスタG400は、「白い短めのボトムス」を着用している人物の画像群で構成されている(図11等参照)ことから、当該コンセプトC2は、「白い短めのボトムス」、とも表現できる。
【0219】
同様に、コンセプトベクトルU510(図20中段参照)が第3順位コンセプトC3(「薄い青色のボトムス」)として特定される。また、コンセプトベクトルU200(図19最上段参照)が第4順位コンセプトC4(「薄いピンク色のシャツ」)として特定され、コンセプトベクトルU310(図19中段参照)が第5順位コンセプトC5(「無地のワインレッド色のシャツ」)として特定される。
【0220】
<ステップS32:主要コンセプトの説明処理等>
つぎに、ステップS32(図5)において、ステップS31での解析結果等を表示する処理が実行される。換言すれば、2つの画像が互いに類似する旨の判断に関する判断根拠(説明情報)を提示する処理が実行される。
【0221】
図25は、上述のような探索処理結果(解析処理結果)の一例(画面表示例)を示す図である。なお、図25の表示画面600およびその他の各種の画面610,620(後述)等は、たとえば表示部35bに表示される。
【0222】
図25の表示画面600においては、第2手法に基づく5つの主要コンセプトC1~C5が提示されている。
【0223】
具体的には、表示画面600のグラフ表示領域609において、式(2)(より詳細には式(5))に基づき算出された類似度Scが、グラフ化されて示されている。上位数個(ここでは5個)のコンセプトについて、画像ペア相互間における類似性(ここではクエリ画像とギャラリー画像との類似性)に対する寄与度が算出され、当該寄与度が表示されている。なお、寄与度は、数値(0.18等)で表示されてもよく、図25に示されるようにグラフ化して(数値を棒グラフの長さへと変換した状態で)表示されてもよい。
【0224】
ここでは第2手法に基づき、第1順位から第5順位の5つの主要コンセプトC1~C5が求められている。また、これら5つの主要コンセプトC1~C5のそれぞれについて類似度(寄与度)Scが示されている。さらに、5つの主要コンセプトC1~C5以外のコンセプトによる寄与度(残りの寄与度)も(「その他」欄)にて示されている。当該残りの寄与度は、たとえば、5つのコンセプトC1~C5を被選択コンセプトとして算出した類似度Sc(式(2)参照)を、全体の寄与度St(式(1)参照)から差し引くことによって算出される。
【0225】
特に、当該5つのコンセプトC1~C5は、この順序で高い順位から低い順位へと(降順に)並ぶように、主要コンセプトとして抽出されている。この順序C1~C5は、第2手法に基づく順序であり、式(5)で算出された類似度Scに基づく順位(第1手法に基づく順位)とは異なる順序である。
【0226】
仮に第1手法が用いられる場合には、この5つのコンセプトの中では、式(5)で算出された類似度Scに基づき、コンセプトC1,C2,C4,C3,C5の順序(コンセプトごとの類似度の降順)で抽出される。これに対して、第2手法では、コンセプトC1,C2,C3,C4,C5の順序で抽出されている。すなわち、コンセプトC3に関する式(5)による類似度Scは、コンセプトC4に関する式(5)による類似度Scよりも小さいにもかかわらず、コンセプトC3はコンセプトC4よりも上位のコンセプトとして抽出されている。
【0227】
また、第1手法では、式(5)で算出された類似度Scに基づき、たとえば第1順位のコンセプトC1(クラスタG110に対応するコンセプトベクトルU110)の下位コンセプト(下位コンセプトベクトル)等も比較的上位のコンセプトとして抽出され得る。詳細には、(クラスタG110を代表する)コンセプトベクトルU110のみならず、その下位の(クラスタG111,G112(図11参照)を代表する)コンセプトベクトルU111,U112もが、主要なコンセプトベクトル(コンセプト)として抽出され得る。コンセプトベクトルU111がコンセプトベクトルU110に類似する場合、コンセプトベクトルU111に関する類似度Scも、コンセプトベクトルU110と同様に高い値になる可能性があるからである。なお、コンセプトベクトルU111は、クラスタG110の下位クラスタG111を代表するコンセプトベクトルであり、コンセプトベクトルU112は、クラスタG110の下位クラスタG112を代表するコンセプトベクトルである。
【0228】
一方、第2手法では、上述のように、或る時点で既に選択(考慮)されたコンセプトベクトル(たとえば、コンセプトベクトルU110)以外のコンセプトベクトルのうち、考慮される類似度成分を最も大きく増大させるようなコンセプトベクトルが探索される。その結果、コンセプトベクトルU110とは比較的大きく異なる(高い独立性を有する)他のコンセプトベクトルUが、主要なコンセプトベクトル(主要コンセプト)として抽出され易くなる。逆に言えば、クラスタG110の下位クラスタG111,G112をそれぞれ代表するコンセプトベクトルU111,U112は、主要なコンセプトベクトル(主要コンセプト)としては抽出され難くなる。図25の例では、コンセプトベクトルU111,U112は、上位5つの主要コンセプトベクトル(主要コンセプト)としては抽出されていない。
【0229】
このように、第2手法によれば、高い独立性を有するコンセプトを主要コンセプトとして抽出することが可能である。換言すれば、コンセプト間の重複を少なくした主要コンセプトを抽出することが可能である。
【0230】
また、図25の表示画面600は、グラフ表示領域609に加えて、ボタン601~605等を有している。各ボタン601~605には、対応するクラスタGの識別子(「G110」等)が表示されている。画像処理装置30およびユーザは、当該識別子(識別ID)によって、各コンセプトC1~C5等の各対応クラスタを一意に特定(識別)することが可能である。
【0231】
また、各コンセプトの詳細情報は次のようにして表示等される。
【0232】
表示画面600のグラフ表示領域609内の各コンセプトC1~C5の文字部分、あるいは当該各文字部分の直下に設けられたボタン601~605がマウス操作等によって押下されると、対応するコンセプトに関する詳細情報画面が表示される。
【0233】
たとえば、コンセプトC1の直下のボタン601が押下されると、詳細情報画面610(図26参照)が表示される。また、コンセプトC1の直下のボタン602が押下されると、詳細情報画面620(図27参照)が表示される。その他のボタンについても同様である。
【0234】
図26は、コンセプトC1に関する詳細情報の表示画面610を示す図である。また、図27は、コンセプトC2に関する詳細情報の表示画面620を示す図である。他のコンセプトC3~C5等についても同様に、詳細情報の表示画面(詳細情報画面とも称する)が存在する。以下では、コンセプトC1に関する詳細情報の表示画面610を中心に説明する。
【0235】
表示画面610は、領域611~614およびボタン615を有している。
【0236】
領域611(上側領域とも称する)は、当該コンセプトC1の対応クラスタG110を構成する複数の画像(コンセプト構成画像)の表示領域である。
【0237】
領域612(下側領域とも称する)は、領域611に表示された複数の画像のそれぞれについて、学習済みモデル420によって特徴的な領域であると判定された領域(発火領域)を示すヒートマップ画像を示す図である。領域612においては、上側の領域611の各画像の直下に、当該各画像に対応するヒートマップ画像がそれぞれ表示されている。下側領域612のヒートマップによって各人物のシャツ部分に学習済みモデル420が着目していることが知得される。
【0238】
領域613は、「コンセプト可視化画像」(後述)の表示領域である。コンセプト可視化画像は、クラスタG110のコンセプト(コンセプトベクトル)を可視化した画像である。コンセプト可視化画像は、クラスタG110の代表ベクトル(コンセプトベクトル)に対応する仮想的な入力画像であり、Feature Visualization法(後述)等を用いて生成される。コンセプト可視化画像は、クラスタG110の抽象的概念(抽象的コンセプト)を表現した画像である、とも表現できる。
【0239】
領域614は、クラスタG110の属性情報(コンセプト名称等)の表示領域である。後述するように、画像処理装置30は、ユーザからの操作入力(クラスタの属性情報の入力(文字入力等))を受け付けると、当該属性情報を記憶部32に格納するとともに、当該属性情報(コンセプト名称等)を領域614に表示する。なお、図26では、当該操作入力後の表示状態(文字列「コンセプトC1:模様多めの白シャツ」)が示されている。当該操作入力前(文字列「模様多めの白シャツ」の入力前)においては、たとえば文字列「コンセプトC1」のみが領域614に表示される。
【0240】
ボタン615は、関連クラスタの情報を表示する旨の指示を受け付けるボタンである。ボタン615が押下されると、図11上段のようなデンドログラム(特にコンセプトC1付近)、および/または図11下段(あるいは図13)のようなベン図が表示される。これにより、コンセプトC1に対応するクラスタG110に対する関連クラスタ(詳細には、同位クラスタG120,G200、上位クラスタG100、下位クラスタG111,G112等)の存在および包含関係等が表示される。さらに、デンドログラムあるいはベン図における各関連クラスタの対応位置をマウスでクリックすることによって、当該関連クラスタ(たとえば同位クラスタG120)に関する詳細情報表示画面が表示される。なお、これに限定されず、当該マウスクリックに応じて、図13のような表示画面が表示されても良い。詳細には、当該表示画面において、クラスタG110の関連クラスタ(G110,G120,G100,G200等)をそれぞれ構成する各画像群が、クラスタG110付近のベン図(関連クラスタの上下関係(包含関係)等を示す図)とともに表示されてもよい。
【0241】
ユーザは、図26の表示画面610から、コンセプトC1の詳細情報を知得することができる。
【0242】
具体的には、下側領域612のヒートマップによって各人物のシャツ部分に学習済みモデル420が着目していることが知得される。
【0243】
また、上側領域611の複数の画像によって、コンセプトC1(詳細には、その対応クラスタ)がどのような画像で構成されているのかを視覚的に知得することが可能である。
【0244】
さらに、領域613のコンセプト可視化画像によって、コンセプトC1を抽象的に可視化した画像を知得することが可能である。
【0245】
また、領域614の属性情報(詳細には、コンセプト名称およびユーザ備考情報等)によって、言語的表現によってコンセプトの内容を知得することが可能である。
【0246】
ここにおいて、クラスタG110のコンセプト名称は、次のようにしてユーザによって把握されて入力等されればよい。なお、他のクラスタのコンセプト名称についても同様である。
【0247】
具体的には、まず、ユーザは、クラスタG110に関する詳細情報画面610(図26)を視認する。詳細情報画面610(詳細には、その上側領域611)には、クラスタG110を構成する画像群(図13も参照)が表示される。
【0248】
その後、ユーザは、ボタン615を押下して、図11下段のようなベン図を表示させる。そして、ユーザは、当該ベン図を参照しつつ、当該ベン図内のクラスタG120の位置を押下すること等によって、クラスタG110の同位クラスタG120に関する詳細情報画面(図26と同様の詳細情報画面)を表示させる。クラスタG120に関する詳細情報画面には、クラスタG120を構成する画像群(図13参照)が表示される。
【0249】
また、必要に応じて、同様の操作によって、クラスタG110の上位クラスタG100に関する詳細情報画面をも表示させる。
【0250】
ユーザは、これらの詳細情報画面に含まれる画像群を相互に比較検討することによって、各クラスタの特徴を把握することが可能である。
【0251】
たとえば、クラスタG110を同位クラスタG120と比較すること等によって、両クラスタG110,G120の特徴が把握される。具体的には、クラスタG120は、「模様少なめの白シャツ」を着用した人物の画像で構成されており、クラスタG110は、「模様多めの白シャツ」を着用した人物の画像で構成されていることが判る。
【0252】
また、上位クラスタG100は、両クラスタG110,G120を包含するクラスタであることから、「模様有りの白シャツ」であることが判る。
【0253】
さらに、上位クラスタG100とその同位クラスタG200とを比較すること等によって、両クラスタG100,G200の特徴が把握される。具体的には、クラスタG100は、「模様有り白シャツ」を着用した人物の画像で構成されており、クラスタG200は、「薄いピンク色のシャツ」を着用した人物の画像で構成されていることが判る。換言すれば、クラスタG100は「薄いピンク色以外のシャツ」であることが判る。
【0254】
これらの検討によって、ユーザは、クラスタG110のコンセプト名称として「模様多めの白シャツ」を決定することができる。そして、ユーザは、詳細情報画面610の領域614に「模様多めの白シャツ」の文字列を入力する。これに応じて、画像処理装置30は、このような入力操作を受け付け、クラスタG110のコンセプト名称として「模様多めの白シャツ」を記憶部32に登録する。また、その後に詳細情報画面610が表示される際には、領域614に当該コンセプト名称「模様多めの白シャツ」が表示される。
【0255】
なお、これに限定されず、ユーザは、図13のような表示画面を視認することによって、これらの情報を纏めて取得して、クラスタG11のコンセプト名称を把握等してもよい。
【0256】
また、このようなコンセプト名称の把握および入力等は、ユーザの所望のクラスタおよびその関連クラスタのみ(すなわち比較的少数のクラスタのみ)について、この時点(ステップS32)等に実行されればよい。ただし、これに限定されず、ステップS23の直後等において、全てのクラスタについて当該処理が実行されてもよい。
【0257】
<コンセプト可視化画像>
ここで、Feature Visualization法を用いたコンセプト可視化画像の生成処理について説明する。
【0258】
図28は、Feature Visualization法を用いたコンセプト可視化画像の生成処理の概略を示す図である。Feature Visualization法は、ニューラルネットワークの或る中間層における特定の発火(特定の中間出力)がどのような入力に応じて発生するのかを調べる手法である。ここでは、中間層からの中間出力に代えて、出力層からの最終出力(すなわち特徴ベクトルF)が採用される。すなわち、学習済みモデル420からの出力ベクトル(特徴ベクトルF)がどのような入力画像に応じて発生するのか、が調べられる。
【0259】
具体的には、図28に示されるように、学習済みモデル420から出力された出力ベクトル(すなわち特徴ベクトルF)とターゲットベクトル(ここでは、或るコンセプトベクトルU)との間の距離d(F,U)を最小化する入力画像が、コンセプト可視化画像として求められる。特徴ベクトルFは、入力画像の画像ベクトルIの関数(F(I))である。なお、ここでは、入力画像を画像ベクトルI(入力画像にて2次元に配列されていた画素値を1次元に配列し直したベクトル)で表している。また、距離d(F,U)等を単に距離d等とも略記する。
【0260】
より具体的には、この距離dの増分δdを最小化する増分δIを(機械学習で獲得された)学習済みモデル420の内部パラメータ等を使って求める処理が繰り返されることによって、入力画像ベクトルI(コンセプトベクトルUの特徴を反映したコンセプト可視化画像)が求められる。
【0261】
距離dの増分δdは、次の式(8)で表現される。ここで、ベクトルHは、ニューラルネットワークの各中間層の重みと活性化関数とにより計算される定数ベクトル(各成分が定数のベクトル)である。なお、式(8)は、画像ベクトルIの第k成分である値Ik(スカラー)の増分δIkと距離d(F(Ik),U)の増分δdとの関係(学習済みモデル420の勾配情報等で表現される)を全成分kについて総和をとること等によって導出される。この距離d(F(Ik),U)は、当該第k成分Ikを有する画像に対応する特徴ベクトルF(Ik)と、コンセプトベクトルUとの距離である。
【0262】
【数8】
【0263】
式(8)に示されるように、増分δdは、ベクトルHとベクトルδI(ベクトルIの増分ベクトル)との内積で表現される。
【0264】
また、距離dを最小化する処理は、増分δdを最も小さな値(そのノルムが最も大きな負の値(最大負値とも称する))にすることを繰り返すことで実現される。より詳細には、同じノルム(大きさ)を有するδIのうち増分δdを最小化するδIを、繰り返し求めることで、当該処理が実現される。このような処理は、どのような向きのδIが距離dを最小化できる(増分δdを最小化できる)か、を繰り返し求めることと等価である。
【0265】
増分δdを最小化するδIの向きは、ベクトルHとの内積を最小化する(すなわち、最大ノルムの負の値にする)する向きである。したがって、増分δdを最小化する(最大ノルムの負の値にする)δIは、所定ノルム(大きさ)を有するδIのうち、定数ベクトルHの向きとは逆の向きのベクトル(cosθ=-1のときのδI)として求められる。ここで、角度θは、両ベクトルH,δIのなす角度である。
【0266】
そして、そのようなベクトルδIをベクトルIに加算する操作(次式(9)参照)が多数回(たとえば何千回)に亘って繰り返される。なお、ベクトルIの初期値(初期ベクトル)としては、ランダムノイズ画像(あるいは適宜の入力画像(コンセプトベクトルUに対応するクラスタに属する入力画像等))に相当するベクトル等が用いられればよい。また、εは、所定の定数である。
【0267】
【数9】
【0268】
このような処理によって、特徴ベクトルFとターゲットベクトル(コンセプトベクトルU)との間の距離dを最小化する入力画像ベクトルI(すなわち、入力画像ベクトルIを2次元配列に並べ替えた入力画像)が求められる。
【0269】
たとえば、コンセプトC2の「コンセプト可視化画像」(図27の領域623参照)は、クラスタG400(「白い短めのボトムス」)のコンセプトベクトルU400(図20の最上段参照)に基づいて、Feature Visualization法を用いて生成された画像である。このコンセプト可視化画像は、当該画像内の中央付近(太い破線の円で示した領域付近)に、「白い短めのボトムス(白い短パン)」のような部分を有している。このような画像によって、コンセプトベクトルU400が、「白い短めのボトムス」という特徴を反映していることが示される。
【0270】
また、コンセプトC1の「コンセプト可視化画像」(図26の領域613参照)は、クラスタG110(「模様多めの白シャツ」)のコンセプトベクトルU110(図18の最上段参照)に基づいて、Feature Visualization法を用いて生成された画像である。このコンセプト可視化画像は、画像内の中央やや上寄りの箇所に、「模様が付されたシャツ」のような部分を有している。このような画像によって、コンセプトベクトルU400が、「模様有り(模様多め)のシャツ」という特徴を反映していることが示される。
【0271】
なお、各コンセプトの「コンセプト可視化画像」のみから、ユーザが当該各コンセプトの内容を完全に把握することは必ずしも容易ではない。コンセプト可視化画像は、補助的に用いられることが好ましい。
【0272】
<1-11.実施形態の効果等>
上記実施形態によれば、複数の特徴ベクトルFに対する階層化クラスタリング処理を実行することにより階層化された複数のクラスタが生成される(ステップS22(図4))。そして、複数のクラスタのうちの特定クラスタに対応するベクトル(詳細にはコンセプトベクトルU)が、特定クラスタのコンセプトとして抽出される(ステップS23)。
【0273】
したがって、階層化された特定クラスタに対応するコンセプトを、その代表ベクトル(コンセプトベクトルU)によって、管理および把握することが可能である。また、当該コンセプトベクトルUを用いた解析処理等を実行することによって、画像の類似性の根拠をコンセプトベースで説明すること等が可能になる。
【0274】
また、上記実施形態によれば、階層化クラスタリング処理により生成された複数のクラスタのうちの特定クラスタ(G110等)に対応する2以上の入力画像が、特定クラスタのコンセプト(特定コンセプト)を表す画像群として決定され表示されている(図13図26等参照)。換言すれば、当該特定クラスタを構成する2以上の入力画像が、特定クラスタのコンセプトに対応する画像群として表示されている。たとえば、クラスタG110に対応する複数の入力画像(図26の領域611参照)が、クラスタG110のコンセプトに対応する画像群として表示されている。当該画像群は、相互に類似する画像群(類似画像群)であり、特定クラスタのコンセプトを表現する画像群であることから、コンセプト表現用類似画像群とも称される。これによれば、当該特定クラスタがどのようなコンセプトを有するのかを視覚的にユーザに提示することが可能である。
【0275】
また、上記実施形態によれば、特定クラスタの類似画像群がそれぞれのヒートマップ(領域612(図26)等参照)とともに表示されている。したがって、特定クラスタに関する画像内での発火領域(特徴領域)をヒートマップで特定した上で、さらに当該特定クラスタの特徴を概念的に捉えることが可能である。
【0276】
さらに、特定クラスタの類似画像群がコンセプト可視化画像(領域613(図26)等参照)とともに表示されている。したがって、特定クラスタの特徴を当該類似画像群によって概念的(特に論理的)に捉えつつ、特定クラスタの特徴をコンセプト可視化画像によって視覚的に把握することが可能である。
【0277】
また、上記実施形態においては、特に階層化された複数のクラスタに対応する複数のコンセプト(詳細には、複数のコンセプトベクトルU)が抽出される。したがって、複数のコンセプトの相互間での上位下位関係(親子関係)および(包含関係)等を把握することが可能である。
【0278】
また、上記実施形態によれば、ステップS31(図5)において2つの画像(第1画像および第2画像)の類似性を判断するにあたり、複数の候補コンセプトについて、第1画像と第2画像との類似性に対する寄与度が算出される。したがって、画像ペアの類似度に対する各コンセプトの寄与度(重要度)を把握することが可能である。
【0279】
なお、上記実施形態においては、多数のコンセプト(候補コンセプト)のそれぞれについて寄与度が算出され、当該寄与度に基づき並べ替え等を伴って上位数個の主要コンセプトが決定されている。しかしながら、これに限定されず、たとえば、ユーザが(その関心事項等に基づき)指定した少なくとも1つのコンセプト(指定コンセプト)についてのみ、2つの画像の類似性に対する寄与度が算出されてもよい。詳細には、当該指定コンセプトに対応するコンセプトベクトルU(指定コンセプトベクトル)についてのみ、2つの画像の類似性に対する寄与度が算出されてもよい。これによれば、任意に指定された指定コンセプトがどの程度、2つの画像の類似性に寄与しているか(影響しているか)をユーザが知得することが可能である。
【0280】
また、上記実施形態においては、図25に示されるように、2つの画像(第1画像および第2画像)の類似性の根拠が、上位所定数(1個から数個)の各コンセプトの寄与度(数値)によって表示されている。したがって、判断根拠に関する客観的な評価基準を提供することが可能である。
【0281】
特に、2つの画像に対応する2つの特徴ベクトルFを、各コンセプトの固有のコンセプトベクトルUで張られる部分空間(直線)へと射影した2つの射影ベクトル同士の内積が、当該各コンセプトの寄与度Sc(式(5)参照)として算出されている。したがって、各コンセプトの類似性に関する寄与度が客観的に提示され得る。
【0282】
また、図25においては、階層化された複数のコンセプトの中で、コンセプトC1の寄与度ScがコンセプトC2の寄与度Scよりも高いことが提示されている。これによれば、画像処理装置30による類似性の判断において、コンセプトC1の特徴(「模様多めの白シャツ」)が、コンセプトC2の特徴(「白い短めのボトムス」)よりも大きく寄与していることが判る。
【0283】
換言すれば、特定の特徴を有する「ボトムス」を着用している点よりも、特定の特徴を有する「シャツ」を着用している点が重視されて「類似判断」(2つの画像が互いに類似する旨の判断)がなされていることが把握される。
【0284】
また、図25においては、コンセプトC1(クラスタG110)が最も高い寄与度Scを有するコンセプトとして判定されている。このことは、クラスタG110の寄与度Scがその同位クラスタG120(図11参照)の寄与度Scよりも大きいことをも示している(図12の左向き矢印参照)。すなわち、クラスタG110の特徴(「模様多めの白シャツ」)が、クラスタG120の特徴(「模様少なめの白シャツ」)よりも大きく寄与している。換言すれば、「模様少なめ(の白シャツ)」の特徴ではなく「模様多め(の白シャツ)」の特徴によって類似性が判断されていることが判る。謂わば、シャツの模様(柄)が多い点に特に特徴を見い出して、「類似判断」がなされていることが把握される。
【0285】
また、コンセプトC1(クラスタG110)が最大寄与度を有することは、クラスタG110の寄与度Scがその上位クラスタG100(図11参照)の寄与度Scよりも大きいことを示している(図12の下向き矢印参照)。すなわち、クラスタG100の特徴(「模様有りの白シャツ」)よりも詳細な特徴(下位の特徴)であるクラスタG110の特徴(「模様多めの白シャツ」)が、大きく寄与していることが示されている。換言すれば、単に「模様有りの白シャツ」ではなく「模様多め」であることにも基づいて類似性が判断されていることが判る。
【0286】
また、コンセプトC1(クラスタG110)が最大寄与度を有することは、クラスタG110の寄与度Scがその下位クラスタG111,G112(図11参照)の各寄与度Scよりも大きいことをも示している(図12の上向き矢印参照)。すなわち、クラスタG110の特徴(「模様多めの白シャツ」)が、クラスタG111の特徴(「模様多めの白シャツ(且つその模様が直線的なもの)」)よりも大きく寄与していることが示されている(図13も参照)。また、クラスタG110の特徴(「模様多めの白シャツ」)がクラスタG112の特徴(「模様多めの白シャツ(且つその模様が曲線的なもの)」)よりも大きく寄与していることも示されている。すなわち、模様の種類(直線的か曲線的か)までは考慮されずに、類似性が判断されていることが判る。
【0287】
<1-12.第1実施形態の変形例>
なお、上記実施形態では、特定クラスタに対応するベクトル(コンセプトベクトルU)が当該クラスタのコンセプトとして抽出されているが、これに限定されない。
【0288】
たとえば、第1実施形態において、特定クラスタに対応する「部分空間」が当該特定クラスタのコンセプト(当該コンセプトを表す特定部分空間)として抽出されてもよい。換言すれば、特定クラスタに対応する「部分空間」が当該特定クラスタのコンセプト表現(部分空間によるコンセプト表現)として抽出されてもよい。
【0289】
詳細には、当該特定クラスタ自体のコンセプトベクトルUで張られる部分空間(具体的には、コンセプトベクトルUに対応する射影行列Pによる射影後の直線(コンセプトベクトルUを含む直線))が、当該特定クラスタのコンセプトとして抽出されてもよい。たとえば、クラスタG100(図11下段参照)自体のコンセプトベクトルU100(図18最下段参照)で張られる部分空間(すなわち、コンセプトベクトルU100を含む直線)が、クラスタG100のコンセプトとして抽出されてもよい。
【0290】
あるいは、特定クラスタに包含される所定数(たとえば2つ)の下位クラスタにそれぞれ対応する所定数のコンセプトベクトルUで張られる部分空間が、当該特定クラスタのコンセプト(コンセプト表現)として抽出されてもよい。たとえば、クラスタG100(図11下段参照)の2つの下位クラスタG110,G120にそれぞれ対応する2つのコンセプトベクトルU110,U120(図18参照)で張られる部分空間(平面)が、クラスタG100のコンセプトとして抽出されてもよい。
【0291】
特に、第1実施形態では、2つの画像の類似性判断において、2つの画像が互いに類似する旨の判断(「類似判断」)の根拠コンセプトとして、特定のコンセプトベクトルUが抽出されているが、これに限定されない。たとえば、当該特定のコンセプトベクトルUで張られる部分空間(直線)等が類似判断の根拠コンセプトとして抽出されてもよい。
【0292】
また、次述する第2実施形態においても同様である。特に、第2実施形態では、2つの画像が互いに類似していない旨の判断(「非類似判断」)の根拠コンセプトとして、特定のコンセプトベクトルUが抽出される(次述)が、これに限定されない。たとえば、当該特定のコンセプトベクトルUで張られる部分空間(直線)等が「非類似判断」の根拠コンセプトとして抽出されてもよい。
【0293】
<2.第2実施形態>
上記第1実施形態では、推論結果に関する説明情報の生成処理として、2つの画像が互いに類似する旨の判断(「類似判断」)の根拠を説明する処理等(図5)について例示した。しかしながら、これに限定されず、たとえば、推論結果に関する説明情報の生成処理として、2つの画像が互いに類似していない旨の判断(「非類似判断」)の根拠を説明する処理等(図6参照)が行われてもよい。換言すれば、「類似性」の根拠として、類似判断の根拠ではなく、非類似判断の根拠が説明されてもよい。第2実施形態では、このような態様について説明する。以下では、第1実施形態との相違点を中心に説明する。第2実施形態では、ステップS30(図5)に代えてステップS40(図6)が実行される。
【0294】
図29は、「非類似判断」の根拠を求める処理(ステップS41)を示す概念図である。図29においては、図示の都合上、全空間が3次元空間で捨象されて表現されている。コンセプトベクトルUはz軸と同じ向きを有しており、z方向に伸びる直線は、コンセプトベクトルUで張られる部分空間を示している。また、xy平面(z=0の平面)は、コンセプトベクトルUで張られる部分空間の直交補空間を示している。また、ここでは、2つの特徴ベクトルq,gは、互いに類似していない2つの画像に対応する特徴ベクトルFである。図29では、2つの特徴ベクトルFの向きが大きく互いに異なること、すなわち、2つの画像が互いに類似していないことが示されている。
【0295】
図29に示されるように、特定コンセプト(特定クラスタ)に対応する特定コンセプトベクトルUで示される部分空間(直線)の直交補空間(ここではコンセプトベクトルUに垂直な平面)を想定する。
【0296】
特徴ベクトルFを当該直交補空間へ射影した射影ベクトル(RF)(具体的には、Rq,Rg)は、特徴ベクトルFのうち、コンセプトベクトルUで説明された成分を除いた成分(コンセプトベクトルUでは未だ説明されていない成分(残留成分))を有している。このような2つの射影ベクトル(RF)が互いに近いということは、未だ説明されていない成分(残留成分)が類似すること(ひいては、当該残留成分は、2つの特徴ベクトルFの類似性判断(非類似判断)には大きな影響を及ぼさないこと)を意味する。逆に言えば、コンセプトベクトルUで既に説明された成分が2つの特徴ベクトルFの非類似判断に大きな影響を及ぼすことを意味する。
【0297】
このような特性を利用し、第2実施形態では、2つの特徴ベクトルq,gを当該直交補空間に対して射影した射影ベクトルRq,Rg同士の距離が小さい(特に非常に近い)場合、当該特定コンセプト(に対応する特定コンセプトベクトルU)が、「非類似判断の根拠コンセプト」として抽出される。より詳細には、その部分空間(特定コンセプトベクトルUで張られる部分空間(直線))の直交補空間(平面等)への射影ベクトルRq,Rg同士の距離が相対的に(他のコンセプトベクトルUよりも)小さな特定コンセプトベクトルUが、「非類似判断の根拠コンセプト」として抽出される。以下、より具体的に説明する。
【0298】
特定コンセプト(特定クラスタ)に対応する特定コンセプトベクトルUで示される部分空間への射影行列が行列P(式(3)等参照)で表されるとき、当該部分空間の直交補空間への射影行列Rは(1-P)で表される。したがって、特徴ベクトルqを当該直交補空間に射影した射影ベクトルはベクトル((1-P)q)であり、特徴ベクトルgを当該直交補空間に射影した射影ベクトルはベクトル((1-P)g)である(図29参照)。
【0299】
これらの射影ベクトル同士の距離は、|((1-P)q)-((1-P)g)|であり、当該距離の2乗を評価値Sd1として定義する(式(10)参照)。
【0300】
【数10】
【0301】
上述したように、行列P(式(3)等参照)は、行列BひいてはコンセプトベクトルUに応じて相違する行列である。したがって、評価値Sd1を最小化する行列Pを求めることは、評価値Sd1を最小化するコンセプトベクトルUを求めることと等価である。それ故、この評価値Sd1を最小化するコンセプトベクトルUが、「非類似判断の根拠コンセプト」として抽出される。
【0302】
また、評価値Sd1を最小化することは、式(11)の評価値Sd2を「最大化」することと等価である。より簡易な評価値Sd2が用いられてもよい。
【0303】
【数11】
【0304】
このようにして、評価値Sd2(あるいはSd1)が用いられて、「非類似判断の根拠コンセプト」として主要コンセプトベクトルUが求められる。
【0305】
また、その際には、上述の第1手法に類似する手法(第3手法とも称する)、あるいは第2手法に類似する手法(第4手法とも称する)が用いられればよい。
【0306】
具体的には、第3手法においては、まず、コントローラ31は、単一のコンセプトベクトルUに関する評価値Sd2(上述の式(11))を、複数の候補コンセプトベクトルUのそれぞれについて求める。次に、コントローラ31は、複数の候補コンセプトベクトルUに対応する複数のコンセプトをその評価値Sd2の大きい順に並べ替える。そして、コントローラ31は、上位数個のコンセプトを、2つの画像の「非類似判断の根拠コンセプト」(特にその主要なコンセプト)として決定する。
【0307】
一方、第4手法においては、或る時点(i回目の繰り返し処理時点)で既に選択(考慮)されたコンセプト以外のコンセプト(未選択コンセプト)のうち、評価値Sd2を最大化(あるいは評価値Sd1を最小化)するコンセプトを探索する探索処理が繰り返し実行される。当該探索処理は、所定の終了条件が成立するまで(たとえば所定数の主要コンセプトが決定されるまで)繰り返し実行される。なお、繰り返しに伴ってコンセプトベクトルUの選択数が1つずつ増加していき、これに応じて、射影行列Pのランク(階数)が1つずつ増大していく。
【0308】
また、各手法において、式(12)で示される評価値Dも算出され得る。この評価値Dは、「似ていない」判断に関して或る時点までに選択されたn個のコンセプト(コンセプトベクトルU)によっては未だ考慮されていない成分(類似性評価に関する残留成分)を意味する。評価値Dは、具体的には、「似ていない」判断(非類似判断)の度合い(1-q・g)から、n個のコンセプトで説明される「似ていない」判断の度合い(Sd2/2)を差し引いた値(残差とも称する)として算出される。ただし、Pが単位行列(フルランク)(β×βの単位行列)になる場合(すなわち全体空間に対応するコンセプト(コンセプトベクトルU)が考慮された場合)に評価値Dがゼロになるように、係数1/2が評価値Sd2に乗じられて調整されている。
【0309】
【数12】
【0310】
なお、第4手法においては、この評価値Dが(評価値Sd2等に代えて)用いられてもよい。すなわち、或る時点で既に選択(考慮)されたコンセプト以外のコンセプト(未選択コンセプト)のうち、評価値Dを最小化するコンセプトを探索する探索処理が実行されてもよい。当該探索処理は、所定の終了条件が成立するまで(たとえば所定数の主要コンセプトが決定されるまで)繰り返し実行される。なお、繰り返しに伴ってコンセプトベクトルUの選択数が1つずつ増加していき、これに応じて、射影行列Pのランク(階数)が1つずつ増大していくとともに、評価値Dは徐々に減少していく。
【0311】
以上のような第3手法あるいは第4手法等によって、複数のクラスタにそれぞれ対応する複数のコンセプトベクトルUのうちの特定のコンセプトベクトルUが、「非類似判断の根拠コンセプト」として抽出される。当該特定のコンセプトベクトルUは、それ(その特定のコンセプトベクトルU)に対応する部分空間の直交補空間への各特徴ベクトルq,gの射影ベクトル(Rq),(Rg)の相互間の距離を最小化するコンセプトベクトルである。
【0312】
換言すれば、複数のクラスタにそれぞれ対応する複数の部分空間のうち、その直交補空間への2つの特徴ベクトルq,gの射影ベクトル((1-P)q),((1-P)g)の相互間の距離を相対的に(他の部分空間よりも)小さくする部分空間を張るコンセプトベクトルUが、「非類似判断の根拠コンセプト」として抽出される。
【0313】
謂わば、複数のクラスタにそれぞれ対応する複数のコンセプトのうち、そのコンセプトを取り除けば両画像が互いに類似していると判定されるようなコンセプトが、「非類似判断の根拠コンセプト」として抽出される。
【0314】
以上のような処理の結果、次のような「非類似判断の根拠コンセプト」が抽出され得る。
【0315】
たとえば、薄いピンク色シャツを着用した人物画像と無地のワインレッド色のシャツを着用した人物画像とが非類似であると判断される場合、コンセプトベクトルU200およびコンセプトベクトルU310等が、「非類似判断の根拠コンセプト」として抽出され得る(図11等参照)。
【0316】
あるいは、(図11等には図示されていないが、)仮に「青色のシャツ」の上位クラスタと「青色且つチェック柄のシャツ」の下位クラスタとが存在する場合において、青色シャツを着用した人物画像と青色且つチェック柄シャツを着用した人物画像とが非類似と判断されることもある。その非類似判断の根拠コンセプトとしては、「青色のシャツ」クラスタのコンセプトベクトルおよび「青色且つチェック柄のシャツ」クラスタのコンセプトベクトル等が抽出され得る。
【0317】
このように、比較対象の両画像のそれぞれの特徴を最も良く反映したコンセプトC(コンセプトベクトルU)が主要コンセプトして抽出され得る。
【0318】
また、ステップS42においては、図25および図26等と同様の表示が行われる。ただし、「類似判断」の根拠コンセプトではなく、「非類似判断」の根拠コンセプトを説明するための表示が行われる。
【0319】
具体的には、たとえば、図25と同様に、上位数個(たとえば2個~5個)の主要コンセプトの評価値Sd2(あるいはSd1)がグラフ化されて表示される。評価値D(残差)もが表示されてもよい。また、図26等と同様に、各主要コンセプトの詳細情報(対応クラスタの構成画像群、ヒートマップ画像群、コンセプト可視化画像等)が表示される。
【0320】
また、図26等と同様に、上位数個の主要コンセプト(「非類似判断」の根拠コンセプト)のそれぞれについての詳細情報が表示される。
【0321】
以上のような処理によれば、画像ペアが似ていない場合に、似ていないと判断される根拠(非類似判断の根拠)を把握することが可能である。
【0322】
なお、この第2実施形態では、特定のコンセプトベクトルUが「非類似判断の根拠コンセプト」として抽出されている。ただし、上述したように、これに限定されず、たとえば、当該特定のコンセプトベクトルUで張られる部分空間(直線)が「非類似判断の根拠コンセプト」として抽出されてもよい。
【0323】
<3.変形例等>
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
【0324】
たとえば、サブフェーズPH3a(ステップS20)の処理は、必ずしも第2フェーズPH2(ステップS12)の後に行われなくてもよく、たとえば、第1フェーズPH1(ステップS11)の直後に行われてもよい。
【0325】
また、上記各実施形態では、サブフェーズPH3aにおいて、学習済みモデル420に対する入力画像210として、機械学習に用いられた複数の入力画像211が用いられているが、これに限定されず、当該複数の入力画像211とは別の複数の入力画像(たとえば、入力画像213)が用いられてもよい。ただし、学習済みモデル420に対する入力画像210としては、当該別の複数の入力画像(入力画像213等)を用いるよりも、学習済みモデル420の学習に利用された複数の入力画像211を用いる方が好ましい。当該複数の入力画像210に対する特徴ベクトル250の分布(学習済みモデル420からの出力分布)として、比較的正確な分布が得られていると考えられるためである。
【0326】
また、上記各実施形態においては、本発明が人物認識に適用される態様が例示されているが、これに限定されない。たとえば、本発明は、商品認識に適用されてもよい。あるいは、病変認識(病変検出)等に適用されてもよい。
【0327】
また、上記各実施形態においては、本発明がメトリックラーニング(距離学習)に適用される態様が例示されているが、これに限定されず、本発明は、クラス分類学習等に適用されてもよい。
【0328】
たとえば、画像特徴を抽出する特徴抽出層(CNN等として構成される)と当該特徴抽出層にて抽出された特徴に基づき分類処理等を実行する全結合層とを備える学習済みモデル420を用いたクラス分類学習に適用されてもよい。詳細には、当該学習済みモデル420からの中間的な出力ベクトル(特徴抽出層から出力され、当該特徴抽出層の次の全結合層に入力されるベクトル)が、特徴空間における特徴ベクトルFとして取得されればよい。換言すれば、学習モデル420から出力される特徴ベクトルFは、学習済みモデル420から最終的に出力されるベクトル(最終出力)に限定されず、学習済みモデル420から中間的に出力されるベクトル等(中間出力)であってもよい。そして、当該特徴ベクトルFに対する階層化クラスタリング処理、およびコンセプトベクトル抽出処理等が実行されればよい。
【符号の説明】
【0329】
1 画像処理システム
30 画像処理装置(情報処理装置)
31 コントローラ
210,211,213,215 人物画像(入力画像)
250,251,253,255,F 特徴ベクトル
400,410,420 学習モデル
501 分離平面
600,610,620 表示画面
C コンセプト
G クラスタ
U コンセプトベクトル
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29