(57)【要約】  検索の精度を高める。検索システム（１）の学習器（Ｌ）は、入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する。格納手段（１０２）は、学習器（Ｌ）に入力済みの被検索情報の特徴量をデータベースに格納する。入力手段（１０３）は、学習器に対し、入力情報を入力する。検索手段（１０４）は、データベースに基づいて、特徴量が入力情報と類似する被検索情報を検索する。
2019244277.tif 000002
【特許請求の範囲】
【請求項１】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力情報を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段と、
を含むことを特徴とする検索システム。
【請求項２】
前記学習器は、中間層、第１の出力層、及び第２の出力層を含み、
前記中間層は、前記第１の出力層と前記第２の出力層とに分岐する前に配置され、前記特徴量を計算し、
前記第１の出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第１の分析結果を出力し、
前記第２出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第２の分析結果を出力する、
ことを特徴とする請求項１に記載の検索システム。
【請求項３】
前記検索手段は、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する、
ことを特徴とする請求項１又は２に記載の検索システム。
【請求項４】
前記検索手段は、前記第１の分析結果が前記入力情報と類似する被検索情報の中から、前記第２の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する、
ことを特徴とする請求項３に記載の検索システム。
【請求項５】
前記第１の分析結果は、入力された前記情報の分類結果であり、
前記格納手段は、分類ごとに用意されたデータベースのうち、前記被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量を格納し、
前記検索手段は、分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する、
ことを特徴とする請求項１〜４の何れかに記載の検索システム。
【請求項６】
前記学習器は、前記特徴量として、特徴ベクトルを計算し、
前記検索手段は、前記データベースに格納された被検索情報の特徴ベクトルと、前記入力情報の特徴ベクトルと、の距離に基づいて検索を行う、
ことを特徴とする請求項１〜５の何れかに記載の検索システム。
【請求項７】
前記格納手段は、前記学習器から出力された前記被検索情報の分類結果に応じたデータベースに、当該被検索情報を格納する、
ことを特徴とする請求項５に記載の検索システム。
【請求項８】
前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、
前記格納手段は、前記学習器から出力された前記被検索情報の蓋然性が閾値以上である分類のデータベースに、前記被探索画像を格納する、
ことを特徴とする請求項７に記載の検索システム。
【請求項９】
前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、
前記検索手段は、前記学習器から出力された前記入力情報の蓋然性が閾値以上である分類のデータベースに基づいて検索を行う、
ことを特徴とする請求項５、７、又は８に記載の検索システム。
【請求項１０】
前記検索手段は、前記入力情報の分類結果に応じたデータベースが複数ある場合に、当該複数のデータベースの各々に基づいて、前記特徴量が前記入力情報と類似する被検索情報の候補を検索し、当該候補の中から絞り込みを行う、
ことを特徴とする請求項５、７、８、又は９に記載の検索システム。
【請求項１１】
前記検索システムは、
前記入力情報の前記特徴量と、前記検索手段により検索された被検索情報の前記特徴量と、に基づく類似度を取得する類似度取得手段と、
前記検索手段により検索された被検索情報に関連付けて、前記類似度を表示させる表示制御手段と、
を更に含むことを特徴とする請求項１〜１０の何れかに記載の検索システム。
【請求項１２】
前記学習器は、入力された画像の特徴量を計算し、前記第１の観点で当該画像の特徴を分析した第１の分析結果と、前記第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力し、
前記被検索情報は、被検索画像であり、
前記入力情報は、入力画像であり、
前記検索手段は、前記特徴量が前記入力画像と類似する被検索画像を検索する、
ことを特徴とする請求項１〜１１の何れかに記載の検索システム。
【請求項１３】
前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、
前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、
ことを特徴とする請求項１２に記載の検索システム。
【請求項１４】
前記格納手段は、前記被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納し、
前記格納手段は、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、
ことを特徴とする請求項１２又は１３に記載の検索システム。
【請求項１５】
前記学習器は、入力された画像に含まれるオブジェクトの分類結果を前記第１の分析結果として出力し、当該オブジェクトの位置に関する位置情報を前記第２の分析結果として出力し、
前記検索システムは、前記検索手段により検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御手段を更に含む、
ことを特徴とする請求項１２〜１４の何れかに記載の検索システム。
【請求項１６】
前記学習器は、入力された画像に含まれるオブジェクトの分類結果を前記第１の分析結果として出力し、当該オブジェクトの位置に関する位置情報を前記第２の分析結果として出力し、
前記検索システムは、前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御手段を更に含む、
ことを特徴とする請求項１２〜１５の何れかに記載の検索システム。
【請求項１７】
前記学習器は、入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、前記特徴量を計算して前記第１の分析結果と前記第２の分析結果を出力し、
前記入力画像及び前記被検索画像の各々は、複数のオブジェクトを含み、
前記検索手段は、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する、
ことを特徴とする請求項１２〜１６の何れかに記載の検索システム。
【請求項１８】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力情報を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索ステップと、
を含むことを特徴とする検索方法。
【請求項１９】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力情報を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検索システム、検索方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器が知られている。特許文献１には、入力された画像（情報の一例）の特徴量を計算し、当該特徴量に基づいて、画像内のオブジェクトの分類結果（第１の分析結果の一例）と、当該オブジェクトを囲うボックスの形状（第２の分析結果の一例）と、を出力する学習器が記載されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】http://papers.nips.cc/paper/5638-faster-r-cnn-towards-real-time-object-detection-with-region-proposal-networks
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような学習器を類似情報検索に適用し、学習器に入力済みの被検索情報の中から、入力情報と類似する被検索情報を検索することが検討されている。例えば、特許文献１の技術を類似画像検索に適用し、学習器に入力済みの被検索画像の中から、オブジェクトの分類とボックスの形状が入力画像と類似する被検索画像を検索することが検討されている。しかしながら、学習器から出力される分析結果は、学習器に学習させた既知の特徴の分析結果であり、学習器に学習させていない未知の特徴が類似する情報を検索することはできないので、検索の精度を十分に高めることができなかった。【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、検索の精度を高めることが可能な検索システム、検索方法、及びプログラムを提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る検索システムは、入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器と、前記学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段と、前記学習器に対し、入力情報を入力する入力手段と、前記データベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段と、を含むことを特徴とする。【０００７】
本発明に係る検索方法は、入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納ステップと、前記学習器に対し、入力情報を入力する入力ステップと、前記データベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索ステップと、を含むことを特徴とする。【０００８】
本発明に係るプログラムは、入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段、前記学習器に対し、入力情報を入力する入力手段、前記データベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段、としてコンピュータを機能させる。【０００９】
本発明の一態様では、前記学習器は、中間層、第１の出力層、及び第２の出力層を含み、前記中間層は、前記第１の出力層と前記第２の出力層とに分岐する前に配置され、前記特徴量を計算し、前記第１の出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第１の分析結果を出力し、前記第２出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第２の分析結果を出力する、ことを特徴とする。【００１０】
本発明の一態様では、前記検索手段は、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する、ことを特徴とする。【００１１】
本発明の一態様では、前記検索手段は、前記第１の分析結果が前記入力情報と類似する被検索情報の中から、前記第２の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する、ことを特徴とする。【００１２】
本発明の一態様では、前記第１の分析結果は、入力された前記情報の分類結果であり、前記格納手段は、分類ごとに用意されたデータベースのうち、前記被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量を格納し、前記検索手段は、分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する、ことを特徴とする。【００１３】
本発明の一態様では、前記学習器は、前記特徴量として、特徴ベクトルを計算し、前記検索手段は、前記データベースに格納された被検索情報の特徴ベクトルと、前記入力情報の特徴ベクトルと、の距離に基づいて検索を行う、ことを特徴とする。【００１４】
本発明の一態様では、前記格納手段は、前記学習器から出力された前記被検索情報の分類結果に応じたデータベースに、当該被検索情報を格納する、ことを特徴とする。【００１５】
本発明の一態様では、前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、前記格納手段は、前記学習器から出力された前記被検索情報の蓋然性が閾値以上である分類のデータベースに、前記被探索画像を格納する、ことを特徴とする。【００１６】
本発明の一態様では、前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、前記検索手段は、前記学習器から出力された前記入力情報の蓋然性が閾値以上である分類のデータベースに基づいて検索を行う、ことを特徴とする。【００１７】
本発明の一態様では、前記検索手段は、前記入力情報の分類結果に応じたデータベースが複数ある場合に、当該複数のデータベースの各々に基づいて、前記特徴量が前記入力情報と類似する被検索情報の候補を検索し、当該候補の中から絞り込みを行う、ことを特徴とする。【００１８】
本発明の一態様では、前記検索システムは、前記入力情報の前記特徴量と、前記検索手段により検索された被検索情報の前記特徴量と、に基づく類似度を取得する類似度取得手段と、前記検索手段により検索された被検索情報に関連付けて、前記類似度を表示させる表示制御手段と、を更に含むことを特徴とする。【００１９】
本発明の一態様では、前記学習器は、入力された画像の特徴量を計算し、前記第１の観点で当該画像の特徴を分析した第１の分析結果と、前記第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力し、前記被検索情報は、被検索画像であり、前記入力情報は、入力画像であり、前記検索手段は、前記特徴量が前記入力画像と類似する被検索画像を検索する、ことを特徴とする。【００２０】
本発明の一態様では、前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、ことを特徴とする。【００２１】
本発明の一態様では、前記格納手段は、前記被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納し、前記格納手段は、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、ことを特徴とする。【００２２】
本発明の一態様では、前記学習器は、入力された画像に含まれるオブジェクトの分類結果を前記第１の分析結果として出力し、当該オブジェクトの位置に関する位置情報を前記第２の分析結果として出力し、前記検索システムは、前記検索手段により検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御手段を更に含む、ことを特徴とする。【００２３】
本発明の一態様では、前記学習器は、入力された画像に含まれるオブジェクトの分類結果を前記第１の分析結果として出力し、当該オブジェクトの位置に関する位置情報を前記第２の分析結果として出力し、前記検索システムは、前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御手段を更に含む、ことを特徴とする。【００２４】
本発明の一態様では、前記学習器は、入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、前記特徴量を計算して前記第１の分析結果と前記第２の分析結果を出力し、前記入力画像及び前記被検索画像の各々は、複数のオブジェクトを含み、前記検索手段は、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する、ことを特徴とする。
【発明の効果】
【００２５】
本発明によれば、検索の精度を高めることが可能になる。
【図面の簡単な説明】
【００２６】
【図１】検索システムの全体構成を示す図である。
【図２】検索システムにおいて実現される機能の一例を示す機能ブロック図である。
【図３】学習器が入力画像のスコアを出力する様子を示す図である。
【図４】学習器が入力画像のスコアを出力する様子を示す図である。
【図５】データベースのデータ格納例を示す図である。
【図６】格納部の処理の説明図である。
【図７】ユーザ端末において類似画像検索の結果が表示される様子を示す図である。
【図８】検索システムにおいて実行される処理の一例を示すフロー図である。
【図９】実施形態１の変形例における機能ブロック図である。
【図１０】類似度が表示される様子を示す図である。
【図１１】実施形態２の処理の概要図である。
【図１２】検索システムにおいて実行される処理の一例を示すフロー図である。
【発明を実施するための形態】
【００２７】
［１．実施形態１］
以下、本発明に関わる検索システムの実施形態の例を説明する。
【００２８】
［１−１．検索システムの全体構成］
図１は、検索システムの全体構成を示す図である。図１に示すように、検索システム１は、サーバ１０とユーザ端末２０とを含む。サーバ１０とユーザ端末２０とは、それぞれインターネットなどのネットワークに接続可能である。なお、図１では、サーバ１０とユーザ端末２０とをそれぞれ１台ずつ示しているが、これらは複数台ずつあってもよい。
【００２９】
サーバ１０は、サーバコンピュータである。サーバ１０は、制御部１１、記憶部１２、及び通信部１３を含む。制御部１１は、例えば、少なくとも１つのマイクロプロセッサを含む。制御部１１は、記憶部１２に記憶されたプログラムやデータに従って処理を実行する。記憶部１２は、主記憶部及び補助記憶部を含む。例えば、主記憶部はＲＡＭなどの揮発性メモリであり、補助記憶部は、ハードディスクやフラッシュメモリなどの不揮発性メモリである。通信部１３は、有線通信又は無線通信用の通信インタフェースであり、ネットワークを介してデータ通信を行う。
【００３０】
ユーザ端末２０は、ユーザが操作するコンピュータであり、例えば、携帯電話機（スマートフォンを含む）、携帯情報端末（タブレット型コンピュータを含む）、又はパーソナルコンピュータ等である。図１に示すように、ユーザ端末２０は、制御部２１、記憶部２２、通信部２３、操作部２４、表示部２５、及び撮影部２６を含む。制御部２１、記憶部２２、及び通信部２３のハードウェア構成は、それぞれ制御部１１、記憶部１２、及び通信部１３と同様であってよく、ここでは説明を省略する。
【００３１】
操作部２４は、入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイスやキーボード等を含む。操作部２４は、操作内容を制御部２１に伝達する。表示部２５は、例えば、液晶表示部又は有機ＥＬ表示部等である。撮影部２６は、少なくとも１つのカメラを含み、例えば、ＣＭＯＳイメージセンサ又はＣＣＤイメージセンサなどを含む。撮影部２６は、静止画又は動画を撮影し、画像データを生成する。なお、本実施形態では、撮影部２６がユーザ端末２０に含まれる場合を説明するが、撮影部２６は、ユーザ端末２０の外部にあってもよい。
【００３２】
なお、記憶部１２，２２に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して他のコンピュータから供給されるようにしてもよい。また、サーバ１０及びユーザ端末２０のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部（例えば、光ディスクドライブやメモリカードスロット）や外部機器とデータの入出力をするための入出力部（例えば、ＵＳＢポート）が含まれていてもよい。例えば、情報記憶媒体に記憶されたプログラムやデータが読取部や入出力部を介して供給されるようにしてもよい。
【００３３】
［１−２．検索システムの概要］
本実施形態の検索システム１は、入力された情報を分類するための学習器を記憶し、学習器に入力された入力情報の分類結果に基づいて、複数の被検索情報の中から、入力情報と類似する情報を検索する。
【００３４】
学習器は、機械学習のアルゴリズムである。別の言い方をすれば、学習器は、入力された情報を計算式に代入し、演算結果を出力するプログラムの一種である。本実施形態では、機械学習として、教師あり学習が用いられる。機械学習自体は、種々の手法を適用可能であり、本実施形態では、畳み込みニューラルネットワークを説明するが、再帰型ニューラルネットワークであってもよい。学習器は、情報を分類するために用いられるので、分類器ということもできる。
【００３５】
入力情報は、検索時のクエリとなる情報である。被検索情報は、検索の対象となる情報であり、インデックスが付与された情報である。被検索情報は、学習器に入力済みの情報であり、分類済みの情報といえる。入力情報と被検索情報は、種々の形式の情報であってよく、例えば、画像、動画、記事、文書、テキスト、音声、音楽、又はウェブサイトであってもよい。
【００３６】
検索システム１では、任意の類似情報検索が実行されてよく、例えば、類似画像検索、類似動画検索、類似記事検索、類似文書検索、類似テキスト検索、類似音声検索、類似音楽検索、又は類似ウェブサイト検索が実行されてよい。本実施形態では、類似情報検索の一例として類似画像検索を説明する。このため、本実施形態で類似画像検索と記載した箇所は、類似情報検索と読み替えることができる。
【００３７】
本実施形態では、入力情報と被検索情報の各々が画像なので、本実施形態において、入力画像と記載した箇所は入力情報と読み替えることができ、被検索画像と記載した箇所は被検索情報と読み替えることができる。なお、入力画像と被検索画像の各々が写真である場合を説明するが、入力画像と被検索画像の各々は、グラフィックソフトで作成されたコンピュータグラフィックであってもよい。
【００３８】
また、学習器は、類似画像検索で利用可能な種々の学習器を適用可能であり、例えば、画像に含まれるオブジェクトを分類するＲ−ＣＮＮ、Ｆａｓｔ  Ｒ−ＣＮＮ、又は、Ｆａｓｔｅｒ  Ｒ−ＣＮＮを利用してもよいし、画像の特徴をベクトル化するＩｌｌｕｓｔｒａｔｉｏｎ  ２  ｖｅｃを利用してもよい。
【００３９】
検索システム１では、１つのデータベースで被検索画像をまとめて管理するのではなく、被検索画像に撮影されたオブジェクトの分類ごとに、データベースが分割されている。即ち、検索システム１は、オブジェクトの分類ごとにデータベースを分割して管理し、学習器から出力された入力画像の分類に応じたデータベースに基づいて類似画像検索を実行し、検索対象となるデータの数を少なくすることで、類似画像検索を高速化している。以降、検索システム１の詳細を説明する。
【００４０】
［１−３．検索システムにおいて実現される機能］
図２は、検索システム１において実現される機能の一例を示す機能ブロック図である。図２に示すように、検索システム１では、データ記憶部１００、学習部１０１、格納部１０２、入力部１０３、検索部１０４、及び表示制御部１０５が実現される場合を説明する。なお、本実施形態では、検索に係る主な機能がサーバ１０で実現される場合を説明するが、後述する変形例のように、サーバ１０とユーザ端末２０との間で機能が分担されてもよい。
【００４１】
［１−３−１．データ記憶部］
データ記憶部１００は、記憶部１２を主として実現される。データ記憶部１００は、類似画像検索を実行するために必要なデータを記憶する。ここでは、データ記憶部１００が、学習器Ｌと、データベース群と、を記憶する場合を説明する。
【００４２】
［学習器］
学習器Ｌは、入力された情報の特徴量を計算し、当該特徴量に基づいて、当該情報の分類結果を出力する。本実施形態では、被検索情報が被検索画像であり、入力情報が入力画像なので、学習器Ｌは、入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果を出力する。学習器Ｌには、入力画像と被検索画像の両方が入力されるので、上記入力された画像とは、入力画像を意味することもあるし、被検索画像を意味することもある。
【００４３】
特徴量とは、入力画像又は被検索画像の特徴を示す情報であり、例えば、学習器Ｌに含まれる計算式によって計算される。本実施形態では、機械学習の一例として畳み込みニューラルネットワークを説明するので、学習器Ｌの中間層によって、特徴量が計算される。
【００４４】
中間層は、入力層と出力層の間に配置される層であり、隠れ層とも呼ばれる。中間層は、特徴量を計算するための少なくとも１つの計算式を含む。例えば、計算式の係数は、後述する学習部１０１によって決定される。学習器Ｌに含まれる中間層は、１つであってもよいし、複数個あってもよい。学習器Ｌが複数の中間層を含む場合には、これら複数の中間層の各々が特徴量を計算する。
【００４５】
特徴量は、任意の形式で示されてよく、例えば、ベクトル形式、配列形式、数値形式、又は文字列形式で示される。本実施形態では、類似画像検索が実行されるので、特徴量は、画像としての特徴を示す情報であり、例えば、オブジェクトの形状的な特徴と、画像の色彩的な特徴と、の少なくとも一方を示す。
【００４６】
形状的な特徴は、オブジェクトの輪郭の特徴であり、例えば、特徴点の位置関係の特徴を意味してもよいし、エッジ検出処理により検出された輪郭線の形状の特徴を意味してもよい。色彩的な特徴は、画像内の画素値の特徴であり、例えば、画素値を所定の計算式に代入したり、画素値の分布（ヒストグラム）を計算したりすることによって得られる。
【００４７】
本実施形態では、学習器Ｌが、特徴量として、特徴ベクトルを計算する場合を一例として説明する。このため、本実施形態で特徴ベクトルと記載した箇所は、特徴量と読み替えることができる。特徴ベクトルは、ｎ（ｎは自然数）次元のベクトル情報であり、ｎ個の数値を含む。例えば、特徴ベクトルは、ｎ個の観点で分析した特徴を示してもよく、特徴ベクトルのｎ個の数値の各々は、ｎ個の観点の各々の特徴を示してもよい。学習器Ｌは、特徴ベクトルに基づいて、分類結果を出力する。
【００４８】
分類とは、入力画像又は被検索画像の種類である。分類は、属性、カテゴリ、ジャンル、又は区分ということもできる。学習器Ｌでは、分類学で定義された分類が用いられてもよいし、特に分類学は関係なく、検索システム１で独自に定義された分類が用いられてもよい。
【００４９】
本実施形態では、類似画像検索が実行されるので、学習器Ｌは、入力画像又は被検索画像に撮影されたオブジェクトを分類する。オブジェクトは、入力画像又は被検索画像に含まれる物体であればよく、例えば、前景であってもよいし、背景であってもよい。画像が写真であれば、撮影部２６の撮影範囲に含まれる被写体がオブジェクトに相当し、画像がコンピュータグラフィックであれば、グラフィックソフトで描かれたイラスト又は３次元モデルがオブジェクトに相当する。
【００５０】
例えば、学習器Ｌは、分類結果として、分類ごとの蓋然性を出力する。蓋然性とは、分類に属する確率、度合、又は尺度ということもできる。蓋然性が高いほど、その分類に属する確率が高く、蓋然性が低いほど、その分類に属する確率が低い。
【００５１】
本実施形態では、蓋然性は、０以上１以下の数値で示されるものとする。例えば、ある分類の蓋然性をｐ（ｐは０以上１以下の数値）とすると、当該分類に属する確率は、「１００＊ｐ」パーセントとなる。なお、蓋然性は、任意の数値範囲の中で示されるようにすればよく、例えば、１よりも大きな数値（例えば、数十〜数万程度の数値範囲）で示されてもよいし、蓋然性を示す記号（例えば、蓋然性が高い順にＳ、Ａ、Ｂ・・・といったランクを示す記号）でしめされてもよい。
【００５２】
例えば、学習器Ｌに、ｍ種類（ｍは自然数）の分類の特徴が学習されていたとすると、学習器Ｌは、ｍ種類の分類の各々の蓋然性を出力する。以降、学習器Ｌが分類結果として出力するｍ個の蓋然性の組み合わせを、スコアと記載する。このため、本実施形態でスコアと記載した箇所は、分類結果と読み替えることができる。
【００５３】
本実施形態では、画像が写真である場合を説明するので、学習器Ｌには、犬、猫、羊といったｍ種類のオブジェクトの特徴が学習されており、これらｍ種類の各々のオブジェクトが撮影された蓋然性がスコアとして出力される。なお、学習器Ｌに学習させるオブジェクトは、動物又は植物などの生物であってもよいし、乗物又は建物などの無生物であってもよい。
【００５４】
図３−４は、学習器Ｌが入力画像のスコアを出力する様子を示す図である。図３−４では、学習器Ｌの入力層と出力層は省略しており、学習器Ｌに含まれる中間層Ｃ１〜Ｃ５，ＦＣ６，ＦＣ７を示している。なお、ここでは、中間層を７個としているが、中間層の数は任意であってよく、例えば、１〜６個であってもよいし、８個以上であってもよい。
【００５５】
例えば、中間層Ｃ１〜Ｃ５の各々は、画像の局所的な特徴を抽出するための畳み込み層と、当該局所的な特徴をまとめるためのプーリング層と、を含む。畳み込み層は、画像の濃淡パターンを示す特徴マップを出力し、プーリング層は、当該特徴マップを縮小して新たな特徴マップを作成する。なお、中間層Ｃ１〜Ｃ５が作成する特徴マップが特徴量に相当してもよい。また、ここでは畳み込み層とプーリング層を５組としているが、これらの数は任意であってよく、１組〜４組であってもよいし、６組以上であってもよい。
【００５６】
中間層ＦＣ６，ＦＣ７の各々は、全結合層であり、中間層Ｃ１〜Ｃ５を通して特徴部分が取り出された画像を１つのノードに結合し、活性化関数によって変換した値を特徴ベクトルとして出力する。図３−４では、中間層ＦＣ７の特徴ベクトルを示しているが、中間層ＦＣ６も特徴ベクトルを出力する。なお、ここでは全結合層を２つとしているが、全結合層の数は任意であってよく、１つであってもよいし、３つ以上であってもよい。
【００５７】
学習器Ｌの図示しない出力層は、中間層ＦＣ７により出力された特徴ベクトルに基づいて、スコアを計算して出力する。図３の例であれば、犬が撮影された入力画像Ｉ１が学習器Ｌに入力される。犬は学習器Ｌに学習済みのオブジェクトなので、学習器Ｌから出力されるスコアは、犬の蓋然性が高く、他の分類の蓋然性は低くなる。図３に示すように、スコアは、ｍ個の蓋然性を含み、犬の蓋然性が「０．８」と高く、他の蓋然性は何れも低くなっている。
【００５８】
一方、図４の例であれば、アルパカが撮影された入力画像Ｉ２が学習器Ｌに入力される。ここでは、アルパカは、学習器Ｌに学習させていないオブジェクトであるものとする。ただし、アルパカは、犬と羊に見た目が似ている（犬と羊の中間的な特徴を有する）ので、学習器Ｌから出力されるスコアは、犬の蓋然性が「０．５」であり、羊の蓋然性が「０．６」であり、これらの蓋然性がやや高くなっている。他の蓋然性は、何れも低くなっている。
【００５９】
他の動物についても同様であり、例えば、学習器Ｌに学習済みのオブジェクトが撮影された入力画像が入力された場合には、当該オブジェクトの蓋然性が高く（例えば、０．７〜１）、他のオブジェクトの蓋然性が低い（例えば、０．５未満）スコアが出力される。また例えば、学習器Ｌに学習済みのオブジェクトではないが、学習済みの複数のオブジェクトと似たオブジェクト（学習済みの複数のオブジェクトの中間的な特徴を有するオブジェクト）が撮影された入力画像が入力された場合には、これら複数のオブジェクトの各々の蓋然性がやや高く（例えば、０．５〜０．７）、他のオブジェクトの蓋然性が低いスコアが出力される。学習器Ｌに学習済みのオブジェクトの何れとも特徴が似ていないオブジェクトが撮影された入力画像が入力された場合には、全ての蓋然性が低いスコアが出力される。
【００６０】
なお、本実施形態の学習器Ｌは、スコア以外の情報も出力し、複数の情報を出力可能となっている。このため、図３−４に示すように、学習器Ｌは、中間層ＦＣ７の後が２つに分岐し、２つの異なる情報を出力する。別の言い方をすれば、学習器Ｌは、中間層ＦＣ７の後に、複数の出力層が配置されている。なお、学習器Ｌは、出力層が２つに分岐せず、スコアだけを出力してもよい。
【００６１】
学習器Ｌは、スコア以外に任意の情報を出力可能としてよいが、本実施形態では、オブジェクトの位置に関する位置情報を出力する場合を説明し、他の情報が出力される場合については、実施形態２で説明する。本実施形態の学習器Ｌは、入力された画像に含まれるオブジェクトのスコアと、当該オブジェクトの位置に関する位置情報と、を出力する。
【００６２】
位置情報は、画像内でのオブジェクトの位置であり、例えば、２次元座標によって示される。本実施形態では、位置情報の一例として、オブジェクトを囲むバウンディングボックスに関するボックス情報を説明する。このため、本実施形態でボックス情報と記載した箇所は、位置情報と読み替えることができる。
【００６３】
バウンディングボックスは、任意の形状であってよく、例えば、四角形などの多角形であってもよいし、円形又は楕円形であってもよい。本実施形態では、バウンディングボックスがオブジェクトの外接矩形である場合を説明するが、バウンディングボックスは、外接矩形よりも大きくてもよいし小さくてもよい。バウンディングボックスは、オブジェクトを示す領域の一例である。このため、本実施形態でバウンディングボックスと記載した箇所は、オブジェクトを示す領域と読み替えることができる。なお、当該領域は、特にボックスと呼ばれるものでなくてもよく、上記のように、円形又は楕円形等の任意の形状であってよい。
【００６４】
ボックス情報は、バウンディングボックスの位置だけを示してもよいが、本実施形態では、バウンディングボックスの形状も示す場合を説明する。例えば、ボックス情報は、バウンディングボックスの位置を示す２次元座標と、バウンディングボックスの縦幅及び横幅と、を含む。なお、２次元座標は、バウンディングボックスの任意の位置を示せばよく、例えば、中心点、左上、右上、左下、又は右下の位置を示す。また、バウンディングボックスの形状は、任意の情報によって特定されるようにすればよく、例えば、対角線の距離や角度によって特定されてもよい。
【００６５】
図３の例であれば、ボックス情報は、バウンディングボックスが、２次元座標（１００，１００）の位置にあり、縦幅が「５０」ピクセルであり、横幅が「７０」ピクセルであることを示す。図４の例であれば、ボックス情報は、バウンディングボックスが、２次元座標（８０，９０）の位置にあり、縦幅が「６０」ピクセルであり、横幅が「６５」ピクセルであることを示す。
【００６６】
以上のように、本実施形態の学習器Ｌは、中間層ＦＣ７が出力した特徴ベクトルと、出力層の第１の計算式と、に基づいてスコアを計算して出力する。また、学習器Ｌは、中間層ＦＣ７が出力した特徴ベクトルと、出力層の第２の計算式と、に基づいてボックス情報を計算して出力する。第１の計算式と第２の計算式は、互いに異なる計算式である。第１の計算式は、スコアを計算するために特化した計算式であり、第２の計算式は、ボックス情報を計算するために特化した計算式である。第１の計算式と第２の計算式は、何れも後述する学習部１０１によって係数が調整される。
【００６７】
また例えば、学習器Ｌは、入力画像全体から特徴ベクトルを計算し、入力画像全体の分類結果を出力してもよいし、入力画像に含まれるバウンディングボックスの特徴ベクトルを計算し、当該バウンディングボックスの分類結果を出力してもよい。学習器Ｌは、バウンディングボックスの分類結果を出力する場合には、バウンディングボックス内の画素値に基づいて、特徴ベクトルを計算する。即ち、学習器Ｌは、バウンディングボックス外の画素値は参照せず、バウンディングボックス外の分類結果は出力しなくてもよい。
【００６８】
なお、入力画像に含まれるオブジェクトが１つだったとしても、物体検出アルゴリズムによっては、バウンディングボックスが複数検出されることがある。例えば、図３の例であれば、入力画像に撮影された犬を囲むように多数のバウンディングボックスが検出されることがある。検出されるバウンディングボックスは、２つのこともあれば、３つ〜数十個又は数百個のこともあり、これらバウンディングボックスは、互いに重複する。重複とは、バウンディングボックス同士が重なることである。別の言い方をすれば、重複は、あるバウンディングボックスの一部と他のバウンディングボックスの一部とが重なること、あるバウンディングボックスが他のバウンディングボックスを含むことである。全てのバウンディングボックスの分類結果が出力されてもよいが、バウンディングボックス内には、１体の犬しか撮影されていないので、学習器Ｌは、多数のバウンディングボックスの各々に対して分類結果を出力する必要性は低い。
【００６９】
そこで、学習器Ｌは、互いに重複する複数のバウンディングボックスが入力画像に含まれる場合には、分類結果の蓋然性が最も高いバウンディングボックスの特徴ベクトルに基づいて、当該バウンディングボックスの分類結果を出力してもよい。学習器Ｌは、バウンディングボックスごとに、上記説明した方法に基づいてスコアを計算する。学習器Ｌは、スコアに含まれる蓋然性が最も高いバウンディングボックスを残し、他のバウンディングボックスを消去する。別の言い方をすれば、学習器Ｌは、互いに重複する複数のバウンディングボックスを、蓋然性が最も高いバウンディングボックスに統合する。学習器は、蓋然性が最も高いバウンディングボックスの分類結果を出力し、他のバウンディングボックスの分類結果は出力しないようにしてもよい。
【００７０】
なお、画像に含まれるオブジェクトは１つだけであってもよいが、入力された画像に複数のオブジェクトが含まれる場合には、学習器Ｌは、オブジェクトごとに、特徴ベクトルを計算してスコアを出力してもよい。学習器Ｌは、複数のオブジェクトの各々に対し、図３−４で説明した処理を実行して特徴ベクトルを計算し、特徴ベクトルに基づいて、スコアとボックス情報を出力することになる。
【００７１】
また、画像からオブジェクトを検出する方法自体は、種々の物体検出アルゴリズムを適用可能であり、例えば、Selective Search for Object Recognition（https://koen.me/research/pub/uijlings-ijcv2013-draft.pdf）のアルゴリズムであってもよいし、Ｆａｓｔ  Ｒ−ＣＮＮ又はＦａｓｔｅｒ  Ｒ−ＣＮＮで実装されているアルゴリズムであってもよい。
【００７２】
また、本実施形態では、分類結果として蓋然性が出力される場合を説明したが、分類結果は、分類に関する情報であればよく、例えば、学習器Ｌは、分類結果として、複数の分類の中で属する分類を出力してもよい。この場合、学習器Ｌは、複数の分類の中で属する分類を示す数値を出力してもよいし、分類ごとに、当該分類に属するか否かを示す「０」又は「１」の情報を出力してもよい。
【００７３】
［データベース群］
データベース群は、分類ごとに、当該分類の被検索画像の特徴ベクトルが格納されたデータベースＤＢを含む。分類とデータベースＤＢとは、１対１の関係にあり、分類の数だけデータベースＤＢが存在する。別の言い方をすれば、本実施形態では、複数の分類が１つのデータベースＤＢにまとめられているのではなく、分類ごとにデータベースＤＢが分割されている。本実施形態では、学習器Ｌにｍ種類の分類が学習されているので、データベースＤＢもｍ個存在することになる。
【００７４】
本実施形態では、学習器Ｌに、犬、猫、羊といったオブジェクトの特徴が学習されているので、図２に示すように、データベース群は、犬データベースＤＢ１、猫データベースＤＢ２、及び羊データベースＤＢ３といった各分類のデータベースＤＢを含む。このため、学習器Ｌに学習させていないオブジェクトのためのデータベース（例えば、アルパカデータベース）は存在しない。なお、本実施形態では、犬データベースＤＢ１、猫データベースＤＢ２、及び羊データベースＤＢ３といった個々のデータベースを区別する必要のないときは、単にデータベースＤＢと記載する。
【００７５】
図５は、データベースＤＢのデータ格納例を示す図である。図５に示すように、データベースＤＢには、被検索画像のファイル名、特徴ベクトル、ボックス情報、及びスコアが格納される。ここでは、各データベースＤＢのデータ構造が同じものとして説明するが、データベースＤＢによってデータ構造を異ならせてもよい。
【００７６】
ファイル名は、被検索画像の画像データ（画像ファイル）の名前である。画像データは、データベースＤＢに格納されていてもよいし、データベースＤＢとは異なるデータベースに格納されていてもよい。データベースＤＢには、ファイル名以外にも、被検索画像の格納場所を示すパス名を含んでいてもよい。
【００７７】
特徴ベクトルは、被検索画像を学習器Ｌに入力した場合に、中間層ＦＣ７が計算した特徴ベクトルである。なお、中間層ＦＣ６が計算した特徴ベクトルが格納されてもよい。ボックス情報は、被検索画像を学習器Ｌに入力した場合に出力されたボックス情報である。スコアは、被検索画像を学習器Ｌに入力した場合に出力されたスコアである。
【００７８】
本実施形態では、類似画像検索で特徴ベクトルが利用される場合を説明する。即ち、特徴ベクトルが入力画像と類似する被検索画像が検索される場合を説明する。このため、データベースＤＢに格納された特徴ベクトルは、検索時のインデックスとなる。
【００７９】
なお、後述するように、スコアが入力画像と類似する被検索画像が検索されてもよいので、この場合には、データベースＤＢに格納されたスコアは、検索時のインデックスとなる。また、実施形態２で説明するように、ボックス情報が入力画像と類似する被検索画像が検索されてもよいので、この場合には、データベースＤＢに格納されたボックス情報は、検索時のインデックスとなる。
【００８０】
また、データベースＤＢには、他の情報が格納されるようにしてもよく、例えば、被検索画像のファイル名ではなく、被検索画像を一意に識別する画像ＩＤが格納されてもよい。また例えば、検索時のインデックスとはならない情報は、データベースＤＢから省略してもよい。
【００８１】
また、データ記憶部１００が記憶するデータは、上記の例に限られない。データ記憶部１００は、検索に必要なデータを記憶すればよく、例えば、被検索画像の画像データが格納されたデータベースを記憶してもよい。他にも例えば、データ記憶部１００は、学習の際に使用される教師データを記憶してもよい。
【００８２】
［１−３−２．学習部］
学習部１０１は、制御部１１を主として実現される。学習部１０１は、教師データに基づいて、複数の分類の各々に属する情報の特徴を学習器Ｌに学習させる。本実施形態では、類似画像検索が実行されるので、学習部１０１は、教師データに基づいて、複数の分類の各々に属するオブジェクトの特徴を学習器Ｌに学習させることになる。
【００８３】
教師データは、訓練データとも呼ばれるものであり、入力と出力の関係を示すデータである。本実施形態では、入力が画像であり、出力がスコアとボックス情報なので、教師データは、画像と、スコア及びボックス情報の正解と、の組み合わせが多数格納されたデータとなる。教師データは、被検索画像の一部又は全部によって作成されてもよいし、被検索画像ではない画像によって作成されてもよい。
【００８４】
スコアの正解とは、分類を正確に示すスコアであり、例えば、人の手によって入力される。別の言い方をすれば、スコアの正解は、学習器Ｌに出力してほしいスコア（学習器Ｌが出力すべきスコア）である。例えば、犬が撮影された画像であれば、［１，０，０・・・］といったスコアが正解となり、猫が撮影された画像であれば、［０，１，０・・・］といったスコアが正解となる。一方、学習器Ｌに学習させていないアルパカが撮影された画像であれば、［０．５，０，０．６・・・］といったスコアを正解としてもよい。
【００８５】
ボックス情報の正解とは、バウンディングボックスの位置及び形状を正確に示す情報であり、例えば、人の手によって入力される。別の言い方をすれば、ボックス情報の正解は、学習器Ｌに出力してほしいボックス情報（学習器Ｌが出力すべきボックス情報）である。
【００８６】
学習部１０１は、教師データが示す入力と出力の関係を得られるように、学習器Ｌの各層の計算式を決定する。例えば、中間層Ｃ１〜Ｃ５，ＦＣ６，ＦＣ７の各々は、画像とスコア及びボックス情報の正解との関係によって学習される。一方、中間層ＦＣ７以降は、２つに分岐するので、スコアの出力層は、画像とスコアの正解との関係によって学習され、ボックスの出力層は、画像とボックス情報の正解との関係によって学習されることになる。
【００８７】
［１−３−３．格納部］
格納部１０２は、制御部１１を主として実現される。格納部１０２は、分類ごとに用意されたデータベースＤＢのうち、学習器Ｌに入力済みの被検索画像の分類に応じたデータベースＤＢに、当該被検索画像の特徴ベクトル及びスコアの少なくとも一方を格納する。
【００８８】
本実施形態では、格納部１０２は、特徴ベクトル及びスコアの両方をデータベースＤＢに格納する場合を説明するが、特徴ベクトル又はスコアの何れか一方のみを格納してもよい。即ち、格納部１０２は、特徴ベクトル及びスコアのうち、類似画像検索のインデックスとして用いるものをデータベースＤＢに格納すればよい。他にも例えば、格納部１０２は、ファイル名やボックス情報などの他の情報をデータベースＤＢに格納してもよい。
【００８９】
学習器Ｌに入力済みとは、過去に学習器Ｌに入力されたことがあることを意味する。即ち、被検索画像は、少なくとも１回は学習器Ｌに入力され、学習器Ｌは、被検索画像の特徴ベクトルを計算し、スコアとボックス情報を出力済みであるものとする。格納部１０２は、学習器Ｌから出力された、被検索画像の特徴ベクトル及びスコアを取得する。
【００９０】
分類に応じたデータベースＤＢとは、被検索画像が属する分類のデータベースＤＢである。被検索画像は、人の手によって分類されてもよいし、学習器Ｌから出力されたスコアによって分類されてもよい。即ち、格納部１０２は、人によって指定された分類のデータベースＤＢに被検索画像の特徴ベクトル及びスコアを格納してもよいし、スコアによって定まるデータベースＤＢに被検索画像の特徴ベクトル及びスコアを格納してもよい。
【００９１】
本実施形態では、格納部１０２は、学習器Ｌから出力された被検索情報のスコアに応じたデータベースＤＢに、当該被検索情報の特徴ベクトル及びスコアを格納する。即ち、例えば、格納部１０２は、学習器Ｌから出力された被検索画像のスコアに基づいて、被検索画像の特徴ベクトルを格納するデータベースＤＢを決定する。
【００９２】
本実施形態では、スコアが各分類の蓋然性を示すので、格納部１０２は、学習器Ｌから出力された被検索画像の蓋然性が閾値以上である分類のデータベースＤＢに、被探索画像の特徴ベクトル及びスコアを格納する。
【００９３】
閾値は、予め定められた値であればよく、データ記憶部１００に記憶されているものとする。閾値は、全分類で共通の値としてもよいし、分類に応じた値が設定されてもよい。閾値は、任意の値であればよいが、図４のアルパカのように、学習器Ｌに学習させていないオブジェクトも被検索画像とする場合には、必要以上に高い数値は設定しない方が好ましい。例えば、閾値は、蓋然性の上限値（ここでは、１．０）の３０％〜７０％程度に設定されてもよく、本実施形態では、５０％（ここでは、０．５）とする。
【００９４】
格納部１０２は、被検索画像のスコアが示す各分類の蓋然性と閾値とを比較し、閾値以上の蓋然性を有する分類を特定する。蓋然性が閾値以上の分類が複数存在していれば、格納部１０２は、これら複数の分類を特定する。格納部１０２は、特定した分類のデータベースＤＢに対し、被検索画像のファイル名、特徴ベクトル、ボックス情報、及びスコアを格納する。なお、ファイル名は、他の被検索画像と重複しないように付与すればよい。
【００９５】
図６は、格納部１０２の処理の説明図である。図６では、各データベースＤＢに格納されるデータを実線の円で示す。本実施形態では、蓋然性が０．５以上の分類に被検索画像の特徴ベクトル等が格納されるので、図６の実線の円は、蓋然性が０．５以上の被検索画像を示し、点線の円は蓋然性が０．８以上の被検索画像を示す。
【００９６】
例えば、犬が撮影された被検索画像Ｉ１（図３）は、犬の蓋然性が０．８であり、他の蓋然性は０．５未満なので、犬データベースＤＢ１にだけ格納される。また例えば、猫が撮影された被検索画像Ｉ３の猫の蓋然性が０．９であり、他の蓋然性が０．５未満だったとすると、当該被検索画像Ｉ３は、猫データベースＤＢ２にだけ格納される。また例えば、羊が撮影された被検索画像Ｉ４の羊の蓋然性が０．８であり、他の蓋然性が０．５未満だったとすると、当該被検索画像Ｉ４は、羊データベースＤＢ３にだけ格納される。
【００９７】
このように、学習器Ｌに学習させた分類のオブジェクトが撮影された被検索画像については、当該分類のデータベースＤＢにだけ格納される。一方、学習器Ｌに学習させていないオブジェクトが撮影された被検索画像については、当該オブジェクトが複数の分類の中間的な特徴を有していれば、これら複数の分類の各々のデータベースＤＢに格納される。
【００９８】
例えば、学習器Ｌに学習させていないアルパカが撮影された被検索画像（例えば、図４の入力画像Ｉ２）は、犬の蓋然性が０．５であり、羊の蓋然性が０．６であり、他の蓋然性は０．５未満なので、犬データベースＤＢ１と羊データベースＤＢ３に格納される。また例えば、学習器Ｌに学習させていないライオンは、犬と猫に見た目が似ている（犬と猫の中間的な特徴を有する）ので、犬の蓋然性と猫の蓋然性がそれなりに高くなる。例えば、ライオンが撮影された被検索画像Ｉ５の犬の蓋然性が０．５であり、猫の蓋然性が０．５であり、他の蓋然性が０．５未満だったとすると、当該被検索画像Ｉ５は、犬データベースＤＢ１と猫データベースＤＢ２に格納される。
【００９９】
また例えば、格納部１０２は、被検索画像全体の特徴ベクトル及びスコアをデータベースＤＢに格納してもよいし、被検索画像に含まれるバウンディングボックスの特徴ベクトル及びスコアをデータベースＤＢに格納してもよい。学習器Ｌは、バウンディングボックスの特徴ベクトル及びスコアをデータベースＤＢに格納する場合には、バウンディングボックス内の画素値に基づいて取得された特徴ベクトル及びスコアを格納する。即ち、格納部１０２は、バウンディングボックス外の画素値は参照せずに取得された特徴ベクトル及びスコアを格納してもよい。
【０１００】
なお、入力画像と同様に、被検索画像に含まれるオブジェクトが１つだったとしても、物体検出アルゴリズムによっては、バウンディングボックスが複数検出されることがある。全てのバウンディングボックスの特徴ベクトル及びスコアがデータベースＤＢに格納されてもよいが、バウンディングボックス内には、１つのオブジェクトしか撮影されていないので、格納部１０２は、多数のバウンディングボックスの各々の特徴ベクトル及びスコアをデータベースＤＢに格納する必要性は低い。
【０１０１】
そこで、格納部１０２は、互いに重複する複数のバウンディングボックスが被検索画像に含まれる場合には、分類結果の蓋然性が最も高いバウンディングボックスの特徴ベクトル及びスコアの少なくとも一方を格納してもよい。バウンディングボックスごとに、上記説明した方法に基づいて特徴ベクトル及びスコアが計算され、スコアに含まれる蓋然性が最も高いバウンディングボックスが残り、他のバウンディングボックスが消去される。別の言い方をすれば、互いに重複する複数のバウンディングボックスが、蓋然性が最も高いバウンディングボックスに統合される。格納部１０２は、蓋然性が最も高いバウンディングボックスの特徴ベクトル及びスコアをデータベースＤＢに格納してもよい。
【０１０２】
なお、格納部１０２は、閾値を利用するのではなく、被検索画像のスコアが示す蓋然性が最も高い分類のデータベースＤＢに、被検索画像の特徴ベクトル及びスコアを格納してもよい。また例えば、格納部１０２は、被検索画像のスコアが示す蓋然性が高い順に所定個数の分類を特定し、これら所定個数の分類の各々のデータベースＤＢに、被検索画像の特徴ベクトル及びスコアを格納してもよい。
【０１０３】
また例えば、被検索画像の分類が人によって行われ、格納部１０２は、人が決定した分類に基づいて、被検索画像のファイル名、特徴ベクトル、ボックス情報、及びスコアを格納するデータベースＤＢを決定してもよい。学習器Ｌを学習させる教師データに、被検索画像の分類（人が指定した正解としての分類）が示されている場合には、格納部１０２は、教師データに基づいて、被検索画像のファイル名、特徴ベクトル、ボックス情報、及びスコアを格納してもよい。
【０１０４】
なお、被検索画像は、検索システム１側で予め用意しておいた画像であってもよいし、検索システム１がインターネット上から取得した画像であってもよいが、類似画像検索が実行された場合に、入力画像が新たな被検索画像となってもよい。この場合、格納部１０２は、類似画像検索の終了前後の任意のタイミングで、入力画像にファイル名を付与し、学習器Ｌから取得した特徴ベクトル、ボックス情報、及びスコアとともに、新たな被検索画像として、当該スコアに応じたデータベースＤＢに格納してもよい。
【０１０５】
［１−３−４．入力部］
入力部１０３は、制御部１１を主として実現される。入力部１０３は、学習器Ｌに対し、入力画像を入力する。入力画像は、ユーザ端末２０からサーバ１０に送信されるので、サーバ１０がユーザ端末２０から入力画像を受信すると、入力部１０３は、当該入力画像を学習器Ｌに入力する。本実施形態では、学習器Ｌの一例として、畳み込みニューラルネットワークを説明するので、入力部１０３は、学習器Ｌの入力層に対し、入力画像を入力することになる。
【０１０６】
［１−３−５．検索部］
検索部１０４は、制御部１１を主として実現される。検索部１０４は、分類ごとに用意されたデータベースＤＢのうち、学習器Ｌから出力された入力情報の分類結果に応じたデータベースＤＢに基づいて、特徴ベクトル及びスコアの少なくとも一方が入力情報と類似する被検索情報を検索する。本実施形態では、類似画像検索が実行されるので、検索部１０４は、特徴ベクトル及びスコアの少なくとも一方が入力画像と類似する被検索画像を検索することになる。
【０１０７】
本実施形態では、検索部１０４が、特徴ベクトルが入力画像と類似する被検索画像を検索する場合を説明するが、検索部１０４は、特徴ベクトル及びスコアの両方が入力画像と類似する被検索画像を検索してもよいし、スコアだけが入力画像と類似する被検索画像を検索してもよい。即ち、類似画像検索のインデックスとなるのは、特徴ベクトル及びスコアの両方であってもよいし、特徴ベクトル又はスコアの何れか一方だけであってもよい。
【０１０８】
特徴ベクトルが類似するとは、特徴ベクトルの差異（ずれ）が小さいことを意味する。ここでの差異とは、ベクトル間の距離を意味してもよいし、ベクトル同士のなす角度を意味してもよい。特徴ベクトルの差異が小さいほど入力画像と被検索画像が類似し、特徴ベクトルの差異が大きいほど入力画像と被検索画像が非類似となる。例えば、距離が短いほど入力画像と被検索画像が類似し、距離が長いほど入力画像と被検索画像が非類似となる。また例えば、角度が小さいほど入力画像と被検索画像が類似し、角度が大きいほど入力画像と被検索画像が非類似となる。
【０１０９】
スコアが類似するとは、スコアの差異（ずれ）が小さいことを意味する。ここでの差異は、数値の差を意味する。スコアの差異が小さいほど入力画像と被検索画像が類似し、スコアの差異が大きいほど入力画像と被検索画像が非類似となる。例えば、スコアが示す数値の差が小さいほど入力画像と被検索画像が類似し、スコアが示す数値の差が大きいほど入力画像と被検索画像が非類似となる。
【０１１０】
入力画像のスコアに応じたデータベースＤＢとは、入力画像のスコアに基づいて定まるデータベースＤＢである。別の言い方をすれば、入力画像のスコアに応じたデータベースＤＢは、入力画像が属する分類のデータベースＤＢである。検索部１０４は、入力画像のスコアに応じたデータベースＤＢを検索対象とし、他のデータベースＤＢは検索対象とはしない。検索対象とは、検索のためにデータを参照することであり、データベースＤＢ内のインデックス（ここでは、特徴ベクトル）を参照することである。
【０１１１】
本実施形態では、各分類の蓋然性がスコアに含まれるので、検索部１０４は、学習器Ｌから出力された入力画像の蓋然性が閾値以上である分類のデータベースＤＢに基づいて検索を行う。
【０１１２】
閾値は、予め定められた値であればよく、データ記憶部１００に記憶されているものとする。閾値は、格納部１０２で説明した閾値と同じ値であってもよいし、異なる値であっていてもよい。閾値は、全分類で共通の値としてもよいし、分類に応じた値が設定されてもよい。閾値は、任意の値であればよいが、図４のアルパカのように、学習器Ｌに学習させていないオブジェクトが撮影された入力画像が学習器Ｌに入力されることもあるので、必要以上に高い数値は設定しない方が好ましい。例えば、閾値は、蓋然性の上限値（ここでは、１．０）の３０％〜７０％程度に設定されてもよく、本実施形態では、５０％（ここでは、０．５）とする。
【０１１３】
検索部１０４は、入力画像のスコアが示す各分類の蓋然性と閾値とを比較し、閾値以上の蓋然性を有する分類を特定する。蓋然性が閾値以上の分類が複数存在していれば、格納部１０２は、これら複数の分類を特定する。検索部１０４は、特定した分類のデータベースＤＢを、スコアに応じたデータベースＤＢとして特定する。
【０１１４】
検索部１０４は、スコアに応じたデータベースＤＢの全てのレコードを検索対象としてもよいし、一部のレコードだけを検索対象としてもよい。一部のレコードだけが検索対象となる場合には、検索部１０４は、検索対象となるレコードをランダムに選出してもよいし、レコード番号が若い順に所定個数のレコードを参照してもよい。他にも例えば、検索部１０４は、特徴ベクトルが入力画像と類似する被検索画像が所定個数見つかった時点で、類似画像検索を終了し、他のレコードについては検索をしないようにしてもよい。検索自体は、種々の手法を利用可能であり、例えば、最近傍探索問題の１つであるｋ近傍法（ｋは自然数）を利用してもよい。
【０１１５】
例えば、検索部１０４は、入力画像のスコアに応じたデータベースＤＢに格納された被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離に基づいて検索を行う。距離の算出方法自体は、種々の手法を利用可能であり、例えば、ユークリッド距離を利用してもよい。検索部１０４は、入力画像のスコアに応じたデータベースＤＢに特徴ベクトルが格納された被検索画像ごとに、当該被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離を計算する。
【０１１６】
例えば、検索部１０４は、距離が小さい順に所定個数の被検索画像を、入力画像と類似する被検索画像として取得する。所定個数は、任意の個数であってよく、ｋ近傍法が利用される場合には、ｋの値である。他にも例えば、検索部１０４は、距離が最も小さい被検索画像を、入力画像と類似する被検索画像としてとして取得してもよいし、検索部１０４は、距離が閾値未満となる被検索画像の全てを、入力画像と類似する被検索画像として取得してもよい。
【０１１７】
なお、入力画像のスコアに応じたデータベースＤＢが複数ある場合、検索部１０４は、これら複数のデータベースＤＢの各々から、入力画像と類似する被検索画像を検索してもよいが、本実施形態では、検索部１０４は、入力画像のスコアに応じたデータベースＤＢが複数ある場合に、当該複数のデータベースＤＢの各々に基づいて、特徴ベクトル及びスコアの少なくとも一方が入力画像と類似する被検索画像の候補を検索し、当該候補の中から絞り込みを行う。例えば、検索部１０４は、データベースＤＢごとに、上記説明した手順と同様にして、入力画像と類似する被検索画像を候補として特定する。その後、検索部１０４は、候補の中から絞り込みを行う。
【０１１８】
例えば、検索部１０４は、複数のデータベースＤＢの各々から検索された候補の距離を参照し、距離が小さい順に所定個数の被検索画像を、入力画像と類似する被検索画像として絞り込んでもよい。所定個数の意味は先述した通りである。また例えば、検索部１０４は、距離が最も小さい候補を、入力画像と類似する被検索画像としてとして取得してもよい。また例えば、検索部１０４は、距離が閾値未満となる候補の全てを、入力画像と類似する被検索画像として取得してもよい。ただし、この場合の閾値は、候補を取得する場合の閾値よりも小さくし、条件を厳しいものとする。
【０１１９】
また、入力画像及び被検索画像の各々は、１つのオブジェクトだけを含むこともあるが、入力画像及び被検索画像の各々が、複数のオブジェクトを含む場合には、検索部１０４は、一部のオブジェクトの特徴ベクトル及びスコアの少なくとも一方が入力画像と類似する被検索画像を検索してもよい。即ち、画像全体として類似する画像が検索されてもよいが、本実施形態では、画像の一部同士が類似する画像が検索されるものとする。
【０１２０】
［１−３−６．表示制御部］
表示制御部１０５は、制御部１１を主として実現される。表示制御部１０５は、検索部１０４により検索された被検索画像に関連付けて、当該被検索画像のボックス情報を表示させる。本実施形態では、サーバ１０によって表示制御部１０５が実現されるので、例えば、表示制御部１０５は、検索部１０４により検索された被検索画像の画像データをユーザ端末２０に送信することによって、被検索画像をユーザ端末２０の表示部２５に表示させる。
【０１２１】
ボックス情報を表示させるとは、ボックス情報が示す位置を識別可能に表示させることである。本実施形態では、ボックス情報は、バウンディングボックスの位置と形状を示すので、バウンディングボックスの位置と形状を識別可能に表示させることが、ボックス情報を表示させることに相当する。また、サーバ１０によって表示制御部１０５が実現されるので、例えば、表示制御部１０５は、ボックス情報をユーザ端末２０に送信することによって、ボックス情報をユーザ端末２０の表示部２５に表示させる。なお、画像に関連付けてボックス情報を表示させるとは、画像とともにボックス情報を表示させることである。
【０１２２】
また例えば、表示制御部１０５は、入力画像に関連付けて、ボックス画像の位置情報を表示させてもよい。本実施形態では、サーバ１０によって表示制御部１０５が実現されるので、例えば、表示制御部１０５は、ボックス情報をユーザ端末２０に送信することによって、ボックス情報をユーザ端末２０の表示部２５に表示させる。
【０１２３】
図７は、ユーザ端末２０において類似画像検索の結果が表示される様子を示す図である。図７に示すように、ユーザ端末２０においては、ユーザが入力画像を選択するための画像選択画面Ｇ１が表示部２５に表示される。ユーザが入力フォームＦ１０から入力画像を選択し、ボタンＢ１１を選択すると、入力画像がサーバ１０にアップロードされ、検索部１０４による類似画像検索が実行される。
【０１２４】
その後、表示制御部１０５は、入力画像のボックス情報、被検索画像の画像データ、及び被検索画像のボックス情報をユーザ端末２０に送信する。ユーザ端末２０においては、これらを受信すると、類似画像検索の結果を表示するための検索結果画面Ｇ２が表示部２５に表示される。検索結果画面Ｇ２の表示領域Ａ２０には、ユーザが選択した入力画像の上に、バウンディングボックスＢ２２Ａが表示され、表示領域Ａ２１には、被検索画像ごとに、当該被検索画像の上に、バウンディングボックスＢ２２Ｂ，Ｂ２２Ｃが表示される。
【０１２５】
［１−４．本実施形態において実行される処理］
図８は、検索システム１において実行される処理の一例を示すフロー図である。図８に示す処理は、制御部１１が記憶部１２に記憶されたプログラムに従って動作し、制御部２１が記憶部２２に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、図２に示す機能ブロックにより実行される処理の一例である。
【０１２６】
図８に示すように、まず、ユーザ端末２０においては、制御部２１は、サーバ１０に対し、画像選択画面Ｇ１において選択された入力画像を送信する（Ｓ１００）。Ｓ１００においては、制御部２１は、記憶部２２又は図示しないクラウドサーバ等に記憶された画像の中から選択された画像を入力画像として送信してもよいし、撮影部２６により撮影された画像を入力画像として送信してもよい。
【０１２７】
サーバ１０においては、入力画像を受信すると、制御部１１は、学習器Ｌに対し、当該入力画像を入力する（Ｓ１０１）。学習器Ｌに入力画像が入力されると、学習器Ｌは、入力画像の特徴ベクトルを計算し、当該特徴ベクトルに基づいて、スコアとボックス情報を出力する。入力画像から複数のバウンディングボックスが検出された場合（即ち、入力画像に複数のオブジェクトが撮影されていた場合）には、学習器Ｌは、バウンディングボックスごとに、特徴ベクトル、ボックス情報、及びスコアのデータセットを出力する。
【０１２８】
制御部１１は、学習器Ｌから、入力画像の特徴ベクトル、ボックス情報、及びスコアを取得する（Ｓ１０２）。Ｓ１０２においては、制御部１１は、入力画像からバウンディングボックスを検出し、バウンディングボックス内の画素に基づいて、特徴ベクトルを取得する。そして、制御部１１は、検出したバウンディングボックスの位置及び形状を示すボックス情報を取得する。更に、制御部１１は、バウンディングボックスの特徴ベクトルに基づいて、当該バウンディングボックスのスコアを取得する。
【０１２９】
なお、複数のバウンディングボックスが互いに重なっている場合には、制御部１１は、これら複数のバウンディングボックスを、最もスコアの高いバウンディングボックスにまとめたうえで、Ｓ１０３〜Ｓ１０６の処理を実行してもよい。バウンディングボックスをまとめる処理自体は、公知の種々の処理を適用可能であり、例えば、Ｎｏｎ−Ｍａｘｉｍｕｍ  Ｓｕｐｐｒｅｓｓｉｏｎのアルゴリズムを適用可能である。制御部１１は、複数のバウンディングボックスのうち、最もスコアの高いバウンディングボックスのスコアに基づいて、以降のＳ１０３〜Ｓ１０６の処理を実行することになる。一方、複数のバウンディングボックスが互いに重なっていない場合には、バウンディングボックスごとに、Ｓ１０２〜Ｓ１０６の処理が実行されてよい。
【０１３０】
制御部１１は、入力画像のスコアが示す蓋然性が閾値以上の分類を特定する（Ｓ１０３）。なお、蓋然性が閾値以上の分類が存在しない場合には、Ｓ１０３〜Ｓ１０６の処理が実行されず、「類似する画像が存在しません」といったメッセージがユーザ端末２０に表示されるようにしてもよい。
【０１３１】
制御部１１は、記憶部１２に記憶されたデータベース群のうち、Ｓ１０３で特定した分類のデータベースＤＢを参照する（Ｓ１０４）。Ｓ１０３において複数の分類が特定された場合には、Ｓ１０４においては、制御部１１は、これら複数の分類の各々のデータベースＤＢを参照する。
【０１３２】
制御部１１は、Ｓ１０４で参照したデータベースＤＢに格納された被検索画像の特徴ベクトルと、Ｓ１０２で取得した入力画像の特徴ベクトルと、の距離を計算する（Ｓ１０５）。Ｓ１０４において複数の分類の各々のデータベースＤＢが特定された場合には、Ｓ１０５においては、制御部１１は、これら複数のデータベースＤＢの各々に格納された被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離を計算する。
【０１３３】
制御部１１は、Ｓ１０６で計算した距離に基づいて、入力画像と類似する被検索画像を特定する（Ｓ１０６）。Ｓ１０６においては、制御部１１は、Ｓ１０４で特定したデータベースＤＢに特徴ベクトルが格納された被検索画像（即ち、Ｓ１０５で距離を計算した被検索画像）の中から、距離が近い順に所定個数の被検索画像を特定する。
【０１３４】
なお、Ｓ１０５において、複数の分類の各々に格納された被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離が計算された場合には、Ｓ１０６においては、制御部１１は、データベースＤＢごとに、距離が近い順に所定個数の被検索画像を特定する。その後、制御部１１は、当該特定した被検索画像の中から、距離が近い順に所定個数の被検索画像を絞り込むようにしてもよい。
【０１３５】
制御部１１は、Ｓ１０４で特定したデータベースＤＢに基づいて、Ｓ１０６で特定した被検索画像の画像データとボックス情報とを取得する（Ｓ１０７）。Ｓ１０７においては、制御部１１は、Ｓ１０６で特定した被検索画像のレコードに参照されたファイル名に基づいて、当該被検索画像の画像データを取得し、当該レコードに格納されたボックス情報を取得する。
【０１３６】
制御部１１は、ユーザ端末２０に対し、Ｓ１０２で取得した入力画像のボックス情報と、Ｓ１０７で取得した被検索画像の画像データ及びボックス情報と、を送信する（Ｓ１０８）。
【０１３７】
制御部１１は、入力画像のスコアが示す蓋然性が閾値以上のデータベースＤＢに対し、入力画像の特徴ベクトル、ボックス情報、及びスコアを、被検索画像として格納する（Ｓ１０９）。Ｓ１０９においては、制御部１１は、入力画像を新たな被検索画像として追加することになる。
【０１３８】
ユーザ端末２０においては、入力画像のボックス情報等を受信すると、制御部２１は、検索結果画面Ｇ２を表示部２５に表示させ（Ｓ１１０）、本処理は終了する。Ｓ１１０においては、制御部２１は、表示領域Ａ２０において入力画像とバウンディングボックスＢ２２Ａを表示させ、表示領域Ａ２１において被検索画像とバウンディングボックスＢ２２Ｂ，Ｂ２２Ｃを表示させる。
【０１３９】
以上説明した検索システム１によれば、分類ごとにデータベースＤＢが分割されており、入力画像のスコアに応じたデータベースＤＢに基づいて検索が実行され、検索対象となるデータを少なくすることで検索を高速化することができる。例えば、ｍ個のデータベースＤＢに分割することで、スコアの蓋然性が閾値以上である分類が１つの場合には、全ての被検索画像を１個のデータベースで管理する場合に比べて、検索対象となるデータの量を「１／ｍ」にすることができ、類似画像検索をｍ倍高速化することができる。また、検索対象となるデータ量を抑えることにより、サーバ１０の処理負荷を軽減することもできる。
【０１４０】
また、被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離に基づいて検索が実行され、距離という正確な指標を利用することで、検索の精度を向上させることができる。また、簡単に計算できる距離を利用することで、類似画像検索をより高速化することができ、サーバ１０の処理負荷を軽減することもできる。
【０１４１】
また、学習器Ｌから出力された被検索画像のスコアに応じたデータベースＤＢに、被検索画像の特徴ベクトル等が格納されることで、被検索画像を格納すべきデータベースＤＢを指定する手間を省くことができる。また、入力画像の類似検索が実行された後すぐに、当該入力画像を被検索画像として利用することもできるので、被検索画像の量を増やすことができる。その結果、より類似する被検索画像が検索される蓋然性が上がり、検索の精度を向上させることができる。
【０１４２】
また、学習器Ｌから出力された被検索画像の蓋然性が閾値以上である分類のデータベースＤＢに、被検索画像の特徴ベクトル等が格納されることで、より適したデータベースＤＢに、被検索画像の特徴ベクトル等が格納されるので、検索をより高速化し、かつ、検索の精度を向上することができる。
【０１４３】
また、学習器Ｌから出力された入力画像の蓋然性が閾値以上である分類のデータベースＤＢに基づいて検索が実行されることで、より適したデータベースＤＢを検索対象とすることができ、検索をより高速化し、サーバ１０の処理負荷を軽減することもできる。更に、検索の精度を向上することができる。
【０１４４】
また、入力画像のスコアに応じたデータベースＤＢが複数ある場合に、当該複数のデータベースＤＢの各々に基づいて入力画像と類似する被検索画像の候補を検索し、その中から絞込が行われることで、検索の精度を向上することができる。
【０１４５】
また、検索システム１を類似画像検索に適用することにより、類似画像検索を高速化することができる。
【０１４６】
また、互いに重複する複数のバウンディングボックスが入力画像に含まれる場合に、スコアが示す蓋然性が最も高いバウンディングボックスに統合し、当該バウンディングボックスの特徴ベクトルに基づいて分類結果を出力することにより、類似画像検索の精度を向上させることができる。別の言い方をすれば、スコアが示す蓋然性が比較的低いバウンディングボックスに基づいて類似画像が検索されることを防止することができる。また、多数のバウンディングボックスが検出された場合に、バウンディングボックスごとに類似画像を検索すると検索処理に時間がかかってしまうが、バウンディングボックスを統合することで、類似画像検索をより高速化し、サーバ２０の処理負荷を効果的に軽減することができる。
【０１４７】
また、互いに重複する複数のバウンディングボックスが被検索画像に含まれる場合に、スコアの蓋然性が最も高いバウンディングボックスの特徴ベクトル及びスコアをデータベースＤＢに格納することにより、類似画像検索の精度を向上させることができる。別の言い方をすれば、スコアが示す蓋然性が比較的低いバウンディングボックスの特徴ベクトル及び当該スコアに基づいて類似画像が検索されることを防止することができる。また、多数のバウンディングボックスの特徴ベクトル及びスコアがデータベースＤＢに格納される場合には、データベースＤＢのメモリ消費が多くなってしまうが、バウンディングボックスを統合したうえで特徴ベクトル及びスコアをデータベースＤＢに格納することにより、データベースＤＢのメモリ消費量を少なくすることができる。更に、類似画像検索の際に参照される情報を少なくすることで、類似画像検索をより高速化し、サーバ２０の処理負荷を効果的に軽減することができる。
【０１４８】
また、検索結果画面Ｇ２において、被検索画像に関連付けてバウンディングボックスを表示させることで、被検索画像のどのオブジェクトが類似するのかを把握しやすくなる。
【０１４９】
また、検索結果画面Ｇ２において、入力画像に関連付けてバウンディングボックスを表示させることで、入力画像のどのオブジェクトに対して類似画像検索が実行されたのかを把握しやすくなる。
【０１５０】
また、入力画像と被検索画像の各々に複数のオブジェクトが含まれていた場合であっても、画像の全体ではなく、画像内の一部のオブジェクト同士が類似する画像を検索することができる。
【０１５１】
［１−５．実施形態１の変形例］
なお、実施形態１に係る発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【０１５２】
図９は、実施形態１の変形例における機能ブロック図である。図９に示すように、実施形態１の変形例では、実施形態１で説明した機能に加え、類似度取得部１０６が実現される。類似度取得部１０６は、制御部１１を主として実現される。
【０１５３】
類似度取得部１０６は、入力画像の特徴ベクトル及びスコアの少なくとも一方と、検索部１０４により検索された被検索画像の特徴ベクトル及びスコアの少なくとも一方と、に基づく類似度を取得する。ここでは、特徴ベクトルに基づいて類似度が取得される場合を説明するが、類似度は、特徴ベクトル及びスコアの両方に基づいて取得されてもよいし、スコアだけに基づいて取得されてもよい。
【０１５４】
類似度は、類似の程度を示す値である。類似度が高いほど類似していることを示し、類似度が低いほど類似していないことを示す。例えば、類似度は、特徴ベクトルの差異が小さいほど高くなり、特徴ベクトルの差異が大きいほど低くなる。また例えば、類似度は、スコアの差異が小さいほど高くなり、スコアの差異が大きいほど低くなる。
【０１５５】
類似度の計算式は、予めデータ記憶部１００に記憶させておけばよく、類似度取得部１０６は、入力画像の特徴ベクトル、被検索画像の特徴ベクトル、及び類似度の計算式に基づいて、類似度を取得する。例えば、類似度取得部１０６は、これら特徴ベクトルの距離を計算式に代入して類似度を取得してもよいし、当該距離をそのまま類似度として取得してもよい。
【０１５６】
表示制御部１０５は、検索部１０４により検索された被検索画像に関連付けて、類似度を表示させる。ここでは、サーバ１０によって表示制御部１０５が実現されるので、例えば、表示制御部１０５は、類似度をユーザ端末２０に送信することによって、類似度をユーザ端末２０の表示部２５に表示させる。なお、被検索画像に関連付けて類似度を表示させるとは、被検索画像とともに類似度を表示させることである。
【０１５７】
図１０は、類似度が表示される様子を示す図である。図１０に示すように、検索結果画面Ｇ２の表示領域Ａ２１において、被検索画像ごとに、当該被検索画像の類似度Ｄ２３Ａ，Ｄ２３Ｂが表示される。なお、図１０では、類似度Ｄ２３Ａ，Ｄ２３Ｂが被検索画像の上に表示される場合を示しているが、類似度Ｄ２３Ａ，Ｄ２３Ｂは、被検索画像の内部に表示されてもよいし、被検索画像の下、左、又は右に表示されてもよい。
【０１５８】
以上説明した変形例によれば、検索結果画面Ｇ２に入力画像と被検索画像の類似度が表示され、入力画像と被検索画像とがどの程度類似しているのかを把握しやすくなる。
【０１５９】
例えば、実施形態１では、検索システム１を類似画像検索に利用する場合を説明したが、検索システム１は、他の任意の類似情報検索が実行されてよい。
【０１６０】
例えば、検索システム１を類似動画検索に利用する場合には、学習器Ｌは、入力された動画の特徴ベクトルを計算し、動画の分類結果を出力してもよい。動画の分類は、動画のジャンルであり、例えば、コメディ、アクション、又はホラーといった分類であってよい。この場合、データ記憶部１００は、動画の分類ごとに、被検索動画の特徴ベクトル及びスコアの少なくとも一方が格納されたデータベースＤＢを記憶する。検索部１０４は、学習器Ｌから出力された入力動画のスコアに応じたデータベースＤＢに基づいて、特徴ベクトル及びスコアの少なくとも一方が入力動画と類似する被検索動画を検索する。
【０１６１】
また例えば、検索システム１を、類似記事検索、類似文書検索、又は類似テキスト検索に利用する場合には、学習器Ｌは、入力された文字列の特徴ベクトルを計算し、文字列の分類結果を出力してもよい。文字列の分類は、内容のジャンルであり、例えば、経済、スポーツ、芸能、学術論文、又は口コミといった分類であってよい。この場合、データ記憶部１００は、分類ごとに、被検索記事、被検索文書、又は被検索テキストの特徴ベクトル及びスコアの少なくとも一方が格納されたデータベースＤＢを記憶する。検索部１０４は、学習器Ｌから出力された入力記事、入力文書、又は入力テキストのスコアに応じたデータベースＤＢに基づいて、特徴ベクトル及びスコアの少なくとも一方が入力記事、入力文書、又は入力テキストと類似する被検索記事、被検索文書、又は被検索テキストを検索する。
【０１６２】
また例えば、検索システム１を、類似音声検索又は類似音楽検索に利用する場合には、学習器Ｌは、入力された音声又は音楽の特徴ベクトルを計算し、音声又は音楽の分類結果を出力してもよい。文字列の分類は、音声又は音楽のジャンルであり、例えば、ロック、クラシック、ポップ、ニュース番組、又は教育番組といった分類であってよい。この場合、データ記憶部１００は、分類ごとに、被検索音声又は被検索音楽の特徴ベクトル及びスコアの少なくとも一方が格納されたデータベースＤＢを記憶する。検索部１０４は、学習器Ｌから出力された入力音声又は入力音楽のスコアに応じたデータベースＤＢに基づいて、特徴ベクトル及びスコアの少なくとも一方が入力音声又は入力音楽と類似する被検索音声又は被検索音楽を検索する。
【０１６３】
また例えば、検索システム１を、類似ウェブサイト検索に利用する場合には、類似画像検索、類似動画検索、類似記事検索、類似文書検索、及び類似テキスト検索の少なくとも１つを利用して、入力ウェブサイトと類似する被検索ウェブサイトが検索されるようにすればよい。
【０１６４】
［２．実施形態２］
次に、検索システム１の別実施形態を説明する。実施形態１では、ボックス情報は、検索結果画面Ｇ２においてバウンディングボックスを表示させるために用いられたが、ボックス情報は、類似画像検索で用いられてもよい。
【０１６５】
図１１は、実施形態２の処理の概要図である。図１１に示すように、特徴ベクトルやスコアだけでなく、ボックス情報も類似する被検索画像を検索することで、バウンディングボックスの位置や形状が入力画像と似た被検索画像を検索してもよい。図１１の例であれば、特徴ベクトルが入力画像Ｉ２と類似する被検索画像Ｉ６〜Ｉ８が検索されたとする。
【０１６６】
そして、被検索画像Ｉ６〜Ｉ８の各々のバウンディングボックスＢ６〜Ｂ８のうち、入力画像Ｉ２のバウンディングボックスＢ２の位置と形状が最も類似するのは、被検索画像Ｉ７となる。この場合、被検索画像Ｉ７が検索結果画面Ｇ２に表示されることになる。このようにすることで、例えば、同じアルパカの画像であったとしても、その写り方まで類似する画像を検索可能となる。図１１の例であれば、画像内でのアルパカの向きや位置が類似する画像を検索可能となる。
【０１６７】
以上のように、実施形態２の検索システム１は、複数の観点で類似する被検索画像を検索することで、検索の精度向上することができる。以降、実施形態２の検索システム１の詳細を説明する。なお、実施形態２では、実施形態１と同様の内容については説明を省略する。
【０１６８】
［２−１．検索システムにおいて実現される機能］
実施形態２の機能ブロックは、実施形態１と同様である。ただし、各機能の詳細は、実施形態１と異なる部分を含む。
【０１６９】
［２−１−１．データ記憶部］
実施形態２のデータ記憶部１００は、実施形態１で説明したデータ記憶部１００と同様であってもよい。例えば、データ記憶部１００は、学習器Ｌと、データベース群と、を記憶する。なお、実施形態２では、分類ごとにデータベースＤＢを用意する構成（分類に応じてデータベースＤＢを分割する構成）は採用しなくてもよく、複数の分類で１つのデータベースＤＢとしてもよい。このため、実施形態２では、複数の分類の各々の被検索画像の特徴ベクトル等が、１つのデータベースＤＢに格納されていてもよい。この場合、検索部１０４が、入力画像の分類に応じたデータベースＤＢを参照する処理は省略される。
【０１７０】
実施形態２の学習器Ｌは、実施形態１で説明した学習器Ｌと同様であってもよい。例えば、学習器Ｌは、入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する。実施形態２では、実施形態１と同様、類似画像検索が実行される場合を説明するので、学習器Ｌは、入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する。
【０１７１】
特徴量の意味は、実施形態１で説明した通りであり、実施形態２でも、学習器Ｌは、特徴量として、特徴ベクトルを計算する場合を一例として説明する。
【０１７２】
観点とは、情報の分析の仕方であり、見地ということもできる。学習器Ｌは、中間層、第１の出力層、及び第２の出力層を含む。中間層は、第１の出力層と第２の出力層とに分岐する前に配置され、特徴ベクトル」を計算する。別の言い方をすれば、中間層は、第１の出力層と第２の出力層の各々が計算をする前に、特徴ベクトルを計算し、第１の出力層と第２の出力層の各々に対し、当該計算した特徴ベクトルを送る。
【０１７３】
第１の出力層は、分岐前の中間層により計算された特徴ベクトルに基づいて、第１の分析結果を出力する。第１の出力層は、第１の計算式を含み、特徴ベクトルを第１の計算式に代入することによって、第１の分析結果が計算される。第２出力層は、分岐前の中間層により計算された特徴ベクトルに基づいて、第２の分析結果を出力する。例えば、第２の出力層は、第２の計算式を含み、特徴ベクトルを第２の計算式に代入することによって、第２の分析結果が計算される。第１の計算式は、第１の観点での学習結果が反映された計算式であり、第２の計算式は、第２の観点での学習結果が反映された計算式である。
【０１７４】
また、実施形態１と同様、学習器Ｌは、入力画像全体から特徴ベクトルを計算し、第１の分析結果と第２の分析結果とを出力してもよいし、入力画像に含まれるバウンディングボックスの特徴ベクトルを計算し、当該バウンディングボックスの第１の分析結果と第２の分析結果とを出力してもよい。更に、複数のバウンディングボックスが互いに重複している場合の処理も実施形態１と同様であってよく、学習器Ｌは、互いに重複する複数のバウンディングボックスが入力画像に含まれる場合には、第１の分析結果と第２の分析結果との少なくとも一方の蓋然性が最も高いバウンディングボックスの特徴ベクトルに基づいて、当該領域の第１の分析結果と第２の分析結果とを出力してもよい。
【０１７５】
また、本実施形態では、実施形態１と同様、分析の一例として、情報の分類と、バウンディングボックスの位置（オブジェクトの位置）の抽出と、を説明するが、分析はこれらに限られず、種々の分析を適用可能である。例えば、情報の特徴量を抽出することが分析に相当してもよい。
【０１７６】
例えば、第１の分析結果は、入力された情報の分類結果であってもよい。本実施形態では、類似画像検索が実行されるので、第１の分析結果は、入力画像のスコアである場合を説明する。このため、実施形態２でスコアと記載した箇所は、第１の分析結果と読み替えることができる。
【０１７７】
実施形態２の学習器Ｌは、実施形態１と同様、分類結果として、分類ごとの蓋然性を出力する。なお、学習器Ｌが、分類結果として、蓋然性以外の情報を出力してもよい点は、実施形態１で説明した通りである。
【０１７８】
また例えば、第２の分析結果は、オブジェクトの位置に関するボックス情報であってもよい。このため、実施形態２でボックス情報と記載した箇所は、第２の分析結果と読み替えることができる。実施形態２の学習器Ｌは、実施形態１と同様、入力された画像に含まれるオブジェクトのスコアを第１の分析結果として出力し、当該オブジェクトの位置に関するボックス情報を第２の分析結果として出力することになる。
【０１７９】
実施形態２では、実施形態１と同様、入力画像及び被検索画像の各々は、１つのオブジェクトだけを含むこともあるが、入力画像及び被検索画像の各々が、複数のオブジェクトを含むこともある。学習器Ｌは、入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、特徴ベクトルを計算してスコアとボックス情報を出力してもよい点は、実施形態１と同様である。
【０１８０】
［２−１−２．学習部］
実施形態２の学習部１０１は、実施形態１で説明した学習部１０１と同様であってもよい。例えば、教師データには、情報と、第１の分析結果及び第２の分析結果の各々の正解と、の関係が定義されており、学習部１０１は、教師データに基づいて、学習器Ｌを学習させる。例えば、学習部１０１は、教師データが示す第１の分析結果の正解を得るように、第１の出力層の第１の計算式の係数を調整し、教師データが示す第２の分析結果の正解を得るように、第２の出力層の第２の計算式の係数を調整する。
【０１８１】
［２−１−３．格納部］
実施形態２の格納部１０２は、実施形態１で説明した格納部１０２と同様であってもよく、学習器Ｌに入力済みの被検索画像の特徴ベクトルをデータベースＤＢに格納する。なお、先述したように、実施形態２では、データベースＤＢは分類ごとに分割されていなくてもよいので、この場合、特徴ベクトルを格納するデータベースＤＢを決定する処理は省略される。
【０１８２】
例えば、格納部１０２は、実施形態１と同様に、分類ごとに用意されたデータベースＤＢのうち、被検索画像の分類に応じたデータベースＤＢに、当該被検索情報の特徴ベクトルを格納してもよい。また例えば、格納部１０２は、実施形態１と同様に、学習器Ｌから出力された被検索画像のスコアに応じたデータベースＤＢに、当該被検索画像を格納してもよい。また例えば、格納部１０２は、実施形態１と同様に、学習器Ｌから出力された被検索画像の蓋然性が閾値以上である分類のデータベースＤＢに、被探索画像を格納してもよい。これらの処理の詳細は、実施形態１で説明した通りである。
【０１８３】
また例えば、格納部１０２は、実施形態１と同様に、互いに重複する複数のバウンディングボックスが被検索画像に含まれる場合には、第１の分析結果と第２の分析結果との少なくとも一方の蓋然性が最も高いバウンディングボックスの特徴量を格納してもよい。バウンディングボックスごとに、上記説明した方法に基づいて特徴ベクトル及びスコアが計算され、スコアに含まれる蓋然性が最も高いバウンディングボックスが残り、他のバウンディングボックスが消去される。別の言い方をすれば、互いに重複する複数のバウンディングボックスが、蓋然性が最も高いバウンディングボックスに統合される。格納部１０２は、蓋然性が最も高いバウンディングボックスの特徴ベクトルをデータベースＤＢに格納してもよい。
【０１８４】
［２−１−４．入力部］
実施形態２の入力部１０３は、実施形態１で説明したデータ記憶部１００と同様であってよく、学習器Ｌに対し、入力画像を入力する。
【０１８５】
［２−１−５．検索部］
実施形態２の検索部１０４は、データベースＤＢに基づいて、特徴ベクトルが入力情報と類似する被検索情報を検索する。実施形態２では、類似画像検索が実行されるので、検索部１０４は、特徴ベクトルが入力画像と類似する被検索画像を検索することになる。
【０１８６】
実施形態１では、特徴ベクトルとスコアの少なくとも一方に基づいて類似画像検索が実行される場合を説明したが、実施形態２では、特徴ベクトルに基づいて類似画像検索が実行されるようにすればよく、他の情報を利用してもよいし、特に利用しなくてもよい。他の情報を利用せずに特徴ベクトルだけを利用して類似画像検索が実行されたとしても、特徴ベクトルは、第１の観点と第２の観点の両方の特徴を含むので、結果的に、スコアとボックス情報も類似する被検索画像が検索されることになる。
【０１８７】
例えば、検索部１０４は、スコアが入力画像と類似する被検索画像を検索し、当該検索した被検索画像の中から、特徴ベクトルが入力画像と類似する被検索画像を検索してもよい。即ち、特徴ベクトルだけでなく、スコアもインデックスとして利用してもよい。なお、スコアが類似することの意味は、実施形態１で説明した通りである。
【０１８８】
例えば、検索部１０４は、データベースＤＢを参照し、被検索画像のスコアと、入力画像のスコアと、の差に基づいて、スコアが入力画像と類似する被検索画像を検索する。例えば、検索部１０４は、スコアの差が小さい順に所定個数の被検索画像を、検索結果として取得する。また例えば、検索部１０４は、スコアの差が閾値未満となる被検索画像を、検索結果として取得してもよい。
【０１８９】
また例えば、検索部１０４は、スコアが入力情報と類似する被検索画像の中から、ボックス情報が入力画像と類似する被検索画像を検索し、当該検索した被検索画像の中から、特徴ベクトルが入力画像と類似する被検索画像を検索してもよい。即ち、特徴ベクトルとスコアだけでなく、ボックス情報もインデックスとして利用してもよい。
【０１９０】
ボックス情報が類似するとは、ボックス情報の差異（ずれ）が小さいことを意味する。ここでの差異は、数値の差を意味する。ボックス情報の差異が小さいほど入力画像と被検索画像が類似し、ボックス情報の差異が大きいほど入力画像と被検索画像が非類似となる。例えば、ボックス情報が示す数値の差が小さいほど入力画像と被検索画像が類似し、ボックス情報が示す数値の差が大きいほど入力画像と被検索画像が非類似となる。
【０１９１】
なお、本実施形態では、学習器Ｌが、分析結果として、スコアとボックス情報を出力する場合を説明するが、他の情報が分析結果として出力される場合には、当該情報の差異が小さいことが、分析結果が類似することを意味する。本実施形態でスコア又はボックス情報と記載した処理を、分析結果と読み替えて、検索部１０４は、分析結果が入力画像と類似する被検索画像を検索し、その中から、特徴ベクトルが入力画像と類似する被検索画像を検索すればよい。
【０１９２】
また例えば、検索部１０４は、分類ごとに用意されたデータベースＤＢのうち、入力画像のスコアに応じたデータベースＤＢに基づいて、特徴ベクトルが入力画像と類似する被検索画像を検索してもよい。また例えば、検索部１０４は、データベースＤＢに格納された被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離に基づいて検索を行ってもよい。これらの処理は、実施形態１で説明した通りである。
【０１９３】
また例えば、検索部１０４は、学習器Ｌから出力された入力画像の蓋然性が閾値以上である分類のデータベースＤＢに基づいて検索を行ってもよい。また例えば、検索部１０４は、入力画像の分類結果に応じたデータベースＤＢが複数ある場合に、当該複数のデータベースＤＢの各々に基づいて、特徴ベクトルが入力画像と類似する被検索画像の候補を検索し、当該候補の中から絞り込みを行ってもよい。また例えば、入力画像及び被検索画像の各々は、複数のオブジェクトを含み、検索部１０４は、一部のオブジェクトの特徴ベクトルが入力画像と類似する被検索画像を検索してもよい。これらの処理も、実施形態１で説明した通りである。
【０１９４】
［２−１−６．表示制御部］
実施形態２の表示制御部１０５は、実施形態１で説明した表示制御部１０５と同様であってもよい。例えば、表示制御部１０５は、検索部１０４により検索された被検索画像に関連付けて、当該被検索画像のボックス情報を表示させてもよい。また例えば、表示制御部１０５は、入力画像に関連付けて、入力画像の位置情報を表示させてもよい。これらの処理は、実施形態１で説明した通りである。
【０１９５】
［２−２．実施形態２において実行される処理］
図１２は、検索システム１において実行される処理の一例を示すフロー図である。図１２に示す処理は、制御部１１が記憶部１２に記憶されたプログラムに従って動作し、制御部２１が記憶部２２に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、図１２に示す機能ブロックにより実行される処理の一例である。
【０１９６】
図１２に示すように、Ｓ２００〜Ｓ２０４は、それぞれＳ１００〜Ｓ１０４と同様である。Ｓ２０４において、蓋然性が閾値以上のデータベースＤＢが参照されると、制御部１１は、ボックス情報が入力画像と類似する被検索画像を検索する（Ｓ２０５）。Ｓ２０５においては、制御部１１は、被検索画像のボックス情報と、入力画像のボックス情報と、の差が小さい順に所定個数の被検索画像を検索する。
【０１９７】
なお、Ｓ２０５においては、制御部１１は、被検索画像のボックス情報が示す２次元座標と、入力画像のボックス情報が示す２次元座標と、の差（距離）を取得してもよいし、被検索画像のボックス情報が示す形状（縦幅及び横幅）と、入力画像のボックス情報が示す形状（縦幅及び横幅）と、の差異（幅の差）を取得してもよいし、これらの両方を取得してもよい。
【０１９８】
制御部１１は、Ｓ２０５で検索した被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離を計算する（Ｓ２０６）。Ｓ２０６においては、制御部１１は、Ｓ２０４で参照したデータベースＤＢの全てではなく、この中からＳ２０５で検索した被検索画像を、距離の計算対象とする。距離の計算方法等の他の点については、Ｓ１０５の処理と同様である。
【０１９９】
以降のＳ２０７〜Ｓ２１１の処理は、それぞれＳ１０６〜Ｓ１１０と同様である。ただし、Ｓ２０８においては、制御部１１は、特徴ベクトル、スコア、及びボックス情報の全てが入力画像と類似する被検索画像の画像データ等を取得することになり、Ｓ２１１においては、これらの全てが入力画像と類似する被検索画像が検索結果画面Ｇ２に表示されることになる。
【０２００】
実施形態２の検索システム１によれば、学習器Ｌに学習させていない特徴を含む特徴ベクトルに基づいて、検索が実行されることにより、学習器Ｌに学習させていない特徴も類似する情報の検索が可能となるので、検索の精度を高めることができる。また、類似画像検索の際には、スコアとボックス情報を利用することも可能であるが、特徴ベクトルだけを利用したとしても、結果的にスコアとボックス情報も類似する被検索画像を検索することができる。この場合、類似画像検索の際に、スコアとボックス情報を参照する必要がないので、類似画像検索を高速化することができる。
【０２０１】
また、第１の出力層と第２の出力層とに分岐する前に配置された中間層が計算した特徴ベクトルに基づいて、検索が実行されることにより、種々の観点での特徴が類似する情報の検索が可能となり、検索の精度を高めることができる。
【０２０２】
また、分類が入力画像と類似する被検索画像を検索し、その中から、特徴ベクトルが入力画像と類似する被検索画像を検索することで、検索の精度をより高めることができる。
【０２０３】
また、分類が入力画像と類似する被検索画像を検索し、その中からボックス情報が入力画像と類似する被検索画像を検索し、その中から特徴ベクトルが入力画像と類似する被検索画像を検索することで、検索の精度をより高めることができる。
【０２０４】
また、分類ごとにデータベースＤＢが分割されており、入力画像のスコアに応じたデータベースＤＢに基づいて検索が実行され、検索対象となるデータを少なくすることで検索を高速化することができる。例えば、ｍ個のデータベースＤＢに分割することで、スコアの蓋然性が閾値以上である分類が１つの場合には、全ての被検索画像を１個のデータベースで管理する場合に比べて、検索対象となるデータの量を「１／ｍ」にすることができ、類似画像検索をｍ倍高速化することができる。
【０２０５】
また、被検索画像の特徴ベクトルと、入力画像の特徴ベクトルと、の距離に基づいて検索が実行されることで、距離という正確な指標を利用することで、検索の精度を向上させることができる。また、簡単に計算できる距離を利用することで、類似画像検索をより高速化することができる。
【０２０６】
また、学習器Ｌから出力された被検索画像のスコアに応じたデータベースＤＢに、被検索画像の特徴ベクトル等が格納されることで、被検索画像を格納すべきデータベースＤＢを指定する手間を省くことができる。また、入力画像の類似検索が実行された後すぐに、当該入力画像を被検索画像として利用することもできるので、被検索画像の量を増やすことができる。その結果、より類似する被検索画像が検索される蓋然性が上がり、検索の精度を向上させることができる。
【０２０７】
また、学習器Ｌから出力された被検索画像の蓋然性が閾値以上である分類のデータベースＤＢに、被検索画像の特徴ベクトル等が格納されることで、より適したデータベースＤＢに、被検索画像の特徴ベクトル等が格納されるので、検索をより高速化し、かつ、検索の精度を向上することができる。
【０２０８】
また、学習器Ｌから出力された入力画像の蓋然性が閾値以上である分類のデータベースＤＢに基づいて検索が実行されることで、より適したデータベースＤＢを検索対象とすることができ、検索をより高速化し、かつ、検索の精度を向上することができる。
【０２０９】
また、入力画像のスコアに応じたデータベースＤＢが複数ある場合に、当該複数のデータベースＤＢの各々に基づいて入力画像と類似する被検索画像の候補を検索し、その中から絞込が行われることで、検索の精度を向上することができる。
【０２１０】
また、検索システム１を類似画像検索に適用することにより、類似画像検索を高速化することができる。
【０２１１】
また、互いに重複する複数のバウンディングボックスが入力画像に含まれる場合に、スコアが示す蓋然性が最も高いバウンディングボックスに統合し、当該バウンディングボックスの特徴ベクトルに基づいて第１の分析結果と第２の分析結果とを出力することにより、類似画像検索の精度を向上させることができる。別の言い方をすれば、スコアが示す蓋然性が比較的低いバウンディングボックスに基づいて類似画像が検索されることを防止することができる。また、多数のバウンディングボックスが検出された場合に、バウンディングボックスごとに類似画像を検索すると検索処理に時間がかかってしまうが、バウンディングボックスを統合することで、類似画像検索をより高速化し、サーバ２０の処理負荷を効果的に軽減することができる。
【０２１２】
また、互いに重複する複数のバウンディングボックスが被検索画像に含まれる場合に、スコアの蓋然性が最も高いバウンディングボックスの特徴ベクトルをデータベースＤＢに格納することにより、類似画像検索の精度を向上させることができる。別の言い方をすれば、スコアが示す蓋然性が比較的低いバウンディングボックスの特徴ベクトルに基づいて類似画像が検索されることを防止することができる。また、多数のバウンディングボックスの特徴ベクトルがデータベースＤＢに格納される場合には、データベースＤＢのメモリ消費が多くなってしまうが、バウンディングボックスを統合したうえで特徴ベクトルをデータベースＤＢに格納することにより、データベースＤＢのメモリ消費量を少なくすることができる。更に、類似画像検索の際に参照される情報を少なくすることで、類似画像検索をより高速化し、サーバ２０の処理負荷を効果的に軽減することができる。
【０２１３】
また、検索結果画面Ｇ２において、被検索画像に関連付けてバウンディングボックスを表示させることで、被検索画像のどのオブジェクトが類似するのかを把握しやすくなる。
【０２１４】
また、検索結果画面Ｇ２において、入力画像に関連付けてバウンディングボックスを表示させることで、入力画像のどのオブジェクトに対して類似画像検索が実行されたのかを把握しやすくなる。
【０２１５】
また、入力画像と被検索画像の各々に複数のオブジェクトが含まれていた場合であっても、画像の全体ではなく、画像内の一部のオブジェクト同士が類似する画像を検索することができる。
【０２１６】
［２−３．実施形態２の変形例］
なお、実施形態２に係る発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【０２１７】
例えば、実施形態２の変形例では、実施形態１の変形例で説明した機能ブロック（図９）が実現される。実施形態２の変形例でも、類似度取得部１０６は、入力画像の特徴ベクトルと、検索部１０４により検索された被検索画像の特徴ベクトルと、に基づく類似度を取得し、表示制御部１０５は、検索部１０４により検索された被検索画像に関連付けて、類似度を表示させてもよい。これらの処理の詳細は、実施形態１の変形例で説明した通りである。
【０２１８】
以上説明した変形例によれば、検索結果画面Ｇ２に入力画像と被検索画像の類似度が表示され、入力画像と被検索画像とがどの程度類似しているのかを把握しやすくなる。
【０２１９】
また例えば、実施形態２では、第１の分析結果がスコアであり、第２の分析結果がボックス情報である場合を説明したが、学習器Ｌは、任意の分析結果を出力可能であり、他の分析結果を出力してもよい。
【０２２０】
例えば、第１の観点は、第１の分類群の中で情報を分類することであり、第２の観点は、第２の分類群の中で情報を分類することであってもよい。第１の分類群と第２の分類群とは、互いに異なる分類群であればよく、例えば、第１の分類群は、前景の分類を示し、第２の分類は、背景の分類を示してもよい。例えば、第１の分類群は、オブジェクトの分類であり、第２の分類群は、背景（シーン）の分類であってもよい。このようにすることで、例えば、「海辺にいる犬」や「雪景色の中にいる人」といった複数の観点で類似する画像を検索可能となる。
【０２２１】
この場合、第１の分析結果は、第１の分類群の中での第１スコアとなり、第２の分析結果は、第２の分類群の中での第２スコアとなる。学習器Ｌの中間層が計算する特徴ベクトルには、学習器Ｌに学習させていない観点の特徴も含まれているので、検索部１０４は、特徴ベクトル、第１スコア、及び第２スコアが入力画像と類似する被検索画像を検索することで、学習器Ｌに学習させていない他の観点も類似する被検索画像を検索することができる。
【０２２２】
また例えば、実施形態２では、検索システム１を類似画像検索に利用する場合を説明したが、検索システム１は、他の任意の類似情報検索が実行されてよい。
【０２２３】
例えば、検索システム１を類似動画検索に利用する場合には、学習器Ｌは、入力された動画の特徴ベクトルを計算し、動画の第１の分類結果と第２の分類結果とを出力してもよい。第１の分類結果は、例えば、動画のジャンルであり、第２の分類結果は、例えば、動画の長さや興行収入といった観点の分類であってもよい。この場合、検索部１０４は、特徴ベクトルが入力動画と類似する被検索動画を検索する。
【０２２４】
また例えば、検索システム１を、類似記事検索、類似文書検索、又は類似テキスト検索に利用する場合には、学習器Ｌは、入力された文字列の特徴ベクトルを計算し、文字列の第１の分類結果と第２の分類結果とを出力してもよい。第１の分類結果は、例えば、文章の大まかなジャンルであり、第２の分類結果は、例えば、細かなジャンルであってもよい。この場合、検索部１０４は、特徴ベクトルが入力記事、入力文書、又は入力テキストと類似する被検索記事、被検索文書、又は被検索テキストを検索する。
【０２２５】
また例えば、検索システム１を、類似音声検索又は類似音楽検索に利用する場合には、学習器Ｌは、入力された音声又は音楽の特徴ベクトルを計算し、音声又は音楽の第１の分類結果と第２の分類結果とを出力してもよい。第１の分類結果は、例えば、音声又は音楽の大まかなジャンルであり、第２の分類結果は、例えば、音声又は音楽の細かなジャンルであってもよい。この場合、検索部１０４は、特徴ベクトルが入力音声又は入力音楽と類似する被検索音声又は被検索音楽を検索する。
【０２２６】
また例えば、検索システム１を、類似ウェブサイト検索に利用する場合には、類似画像検索、類似動画検索、類似記事検索、類似文書検索、及び類似テキスト検索の少なくとも１つを利用して、入力ウェブサイトと類似する被検索ウェブサイトが検索されるようにすればよい。
【０２２７】
［３．その他変形例］
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【０２２８】
また例えば、実施形態１−２では、サーバ１０において主たる処理が実行される場合を説明したが、サーバ１０で実行するものとして説明した処理は、ユーザ端末２０で実行されてもよい。例えば、学習器Ｌは、ユーザ端末２０で記憶されてもよい。この場合、ユーザ端末２０の記憶部２２に学習器Ｌが記憶される。更に、学習部１０１と入力部１０３とがユーザ端末２０で実現されてもよい。この場合、これら各機能は、制御部２１を主として実現される。ユーザ端末２０の学習部１０１は、自身の学習器Ｌに学習させるようにしてもよい。ユーザ端末２０の入力部１０３は、自身の学習器Ｌに対し、入力画像を入力する。
【０２２９】
また例えば、格納部１０２がユーザ端末２０で実現されてもよい。この場合、格納部１０２は、制御部２１を主として実現される。格納部１０２は、サーバ１０に対し、被検索画像の特徴ベクトル等を送信し、データベースＤＢへの格納を指示してもよい。また例えば、検索部１０４がユーザ端末２０で実現されてもよい。この場合、検索部１０４は、制御部２１を主として実現される。検索部１０４は、サーバ１０に対し、入力画像のスコア等を送信し、検索を指示してもよい。
【０２３０】
また例えば、表示制御部１０５がユーザ端末２０で実現されてもよい。この場合、表示制御部１０５は、制御部２１を主として実現される。ユーザ端末２０の表示制御部１０５は、サーバ１０から被検索画像の画像データやボックス情報を受信し、検索結果画面Ｇ２にこれらを表示させてもよい。また例えば、各機能がサーバ１０とユーザ端末２０との間で分担されてもよい。
【図１】
2019244277.tif 000003
【図２】
2019244277.tif 000004
【図３】
2019244277.tif 000005
【図４】
2019244277.tif 000006
【図５】
2019244277.tif 000007
【図６】
2019244277.tif 000008
【図７】
2019244277.tif 000009
【図８】
2019244277.tif 000010
【図９】
2019244277.tif 000011
【図１０】
2019244277.tif 000012
【図１１】
2019244277.tif 000013
【図１２】
2019244277.tif 000014
【手続補正書】
【提出日】令和1年5月28日(2019.5.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力情報を入力する入力手段と、
前記データベースに基づいて、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段と、
を含むことを特徴とする検索システム。
【請求項２】
前記学習器は、中間層、第１の出力層、及び第２の出力層を含み、
前記中間層は、前記第１の出力層と前記第２の出力層とに分岐する前に配置され、前記特徴量を計算し、
前記第１の出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第１の分析結果を出力し、
前記第２出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第２の分析結果を出力する、
ことを特徴とする請求項１に記載の検索システム。
【請求項３】
前記検索手段は、前記第１の分析結果が前記入力情報と類似する被検索情報の中から、前記第２の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する、
ことを特徴とする請求項１又は２に記載の検索システム。
【請求項４】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の分類結果である第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器と、
分類ごとに用意されたデータベースのうち、前記学習器に入力済みの被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力情報を入力する入力手段と、
分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段と、
を含むことを特徴とする検索システム。
【請求項５】
前記学習器は、前記特徴量として、特徴ベクトルを計算し、
前記検索手段は、前記データベースに格納された被検索情報の特徴ベクトルと、前記入力情報の特徴ベクトルと、の距離に基づいて検索を行う、
ことを特徴とする請求項１〜４の何れかに記載の検索システム。
【請求項６】
前記格納手段は、前記学習器から出力された前記被検索情報の分類結果に応じたデータベースに、当該被検索情報を格納する、
ことを特徴とする請求項４に記載の検索システム。
【請求項７】
前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、
前記格納手段は、前記学習器から出力された前記被検索情報の蓋然性が閾値以上である分類のデータベースに、前記被探索画像を格納する、
ことを特徴とする請求項６に記載の検索システム。
【請求項８】
前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、
前記検索手段は、前記学習器から出力された前記入力情報の蓋然性が閾値以上である分類のデータベースに基づいて検索を行う、
ことを特徴とする請求項４、６、又は７に記載の検索システム。
【請求項９】
前記検索手段は、前記入力情報の分類結果に応じたデータベースが複数ある場合に、当該複数のデータベースの各々に基づいて、前記特徴量が前記入力情報と類似する被検索情報の候補を検索し、当該候補の中から絞り込みを行う、
ことを特徴とする請求項４、６、７、又は８に記載の検索システム。
【請求項１０】
前記検索システムは、
前記入力情報の前記特徴量と、前記検索手段により検索された被検索情報の前記特徴量と、に基づく類似度を取得する類似度取得手段と、
前記検索手段により検索された被検索情報に関連付けて、前記類似度を表示させる表示制御手段と、
を更に含むことを特徴とする請求項１〜９の何れかに記載の検索システム。
【請求項１１】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
を含み、
前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、
前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、
ことを特徴とする検索システム。
【請求項１２】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
を含み、
前記格納手段は、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、
ことを特徴とする検索システム。
【請求項１３】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
前記検索手段により検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御手段と、
を含むことを特徴とする検索システム。
【請求項１４】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御手段と、
を含むことを特徴とする検索システム。
【請求項１５】
入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像であって、複数のオブジェクトを含む被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、複数のオブジェクトを含む入力画像を入力する入力手段と、
前記データベースに基づいて、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
を含むことを特徴とする検索システム。
【請求項１６】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力情報を入力する入力ステップと、
前記データベースに基づいて、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する検索ステップと、
を含むことを特徴とする検索方法。
【請求項１７】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の分類結果である第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器を利用した検索方法であって、
分類ごとに用意されたデータベースのうち、前記学習器に入力済みの被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力情報を入力する入力ステップと、
分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索ステップと、
を含むことを特徴とする検索方法。
【請求項１８】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
を含み、
前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、
前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、
ことを特徴とする検索方法。
【請求項１９】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
を含み、
前記格納ステップは、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、
ことを特徴とする検索方法。
【請求項２０】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
前記検索ステップにより検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御ステップと、
を含むことを特徴とする検索方法。
【請求項２１】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御ステップと、
を含むことを特徴とする検索方法。
【請求項２２】
入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像であって、複数のオブジェクトを含む被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、複数のオブジェクトを含む入力画像を入力する入力ステップと、
前記データベースに基づいて、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
を含むことを特徴とする検索方法。
【請求項２３】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力情報を入力する入力手段、
前記データベースに基づいて、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段、
としてコンピュータを機能させるためのプログラム。
【請求項２４】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の分類結果である第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器を利用可能なコンピュータを、
分類ごとに用意されたデータベースのうち、前記学習器に入力済みの被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力情報を入力する入力手段、
分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段、
として機能させるためのプログラム。
【請求項２５】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
としてコンピュータを機能させるためのプログラムであって、
前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、
前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、
プログラム。
【請求項２６】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
としてコンピュータを機能させるためのプログラムであって、
前記格納手段は、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、
プログラム。
【請求項２７】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
前記検索手段により検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御手段、
としてコンピュータを機能させるためのプログラム。
【請求項２８】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御手段、
としてコンピュータを機能させるためのプログラム。
【請求項２９】
入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像であって、複数のオブジェクトを含む被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、複数のオブジェクトを含む入力画像を入力する入力手段、
前記データベースに基づいて、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
としてコンピュータを機能させるためのプログラム。
【手続補正書】
【提出日】令和1年9月19日(2019.9.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力情報を入力する入力手段と、
前記データベースに基づいて、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段と、
を含むことを特徴とする検索システム。
【請求項２】
前記学習器は、中間層、第１の出力層、及び第２の出力層を含み、
前記中間層は、前記第１の出力層と前記第２の出力層とに分岐する前に配置され、前記特徴量を計算し、
前記第１の出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第１の分析結果を出力し、
前記第２出力層は、分岐前の前記中間層により計算された前記特徴量に基づいて、前記第２の分析結果を出力する、
ことを特徴とする請求項１に記載の検索システム。
【請求項３】
前記検索手段は、前記第１の分析結果が前記入力情報と類似する被検索情報の中から、前記第２の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する、
ことを特徴とする請求項１又は２に記載の検索システム。
【請求項４】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の分類結果である第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器と、
分類ごとに用意されたデータベースのうち、前記学習器に入力済みの被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力情報を入力する入力手段と、
分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段と、
を含むことを特徴とする検索システム。
【請求項５】
前記学習器は、前記特徴量として、特徴ベクトルを計算し、
前記検索手段は、前記データベースに格納された被検索情報の特徴ベクトルと、前記入力情報の特徴ベクトルと、の距離に基づいて検索を行う、
ことを特徴とする請求項１〜４の何れかに記載の検索システム。
【請求項６】
前記格納手段は、前記学習器から出力された前記被検索情報の分類結果に応じたデータベースに、当該被検索情報を格納する、
ことを特徴とする請求項４に記載の検索システム。
【請求項７】
前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、
前記格納手段は、前記学習器から出力された前記被検索情報の蓋然性が閾値以上である分類のデータベースに、前記被検索画像を格納する、
ことを特徴とする請求項６に記載の検索システム。
【請求項８】
前記学習器は、前記分類結果として、分類ごとの蓋然性を出力し、
前記検索手段は、前記学習器から出力された前記入力情報の蓋然性が閾値以上である分類のデータベースに基づいて検索を行う、
ことを特徴とする請求項４、６、又は７に記載の検索システム。
【請求項９】
前記検索手段は、前記入力情報の分類結果に応じたデータベースが複数ある場合に、当該複数のデータベースの各々に基づいて、前記特徴量が前記入力情報と類似する被検索情報の候補を検索し、当該候補の中から絞り込みを行う、
ことを特徴とする請求項４、６、７、又は８に記載の検索システム。
【請求項１０】
前記検索システムは、
前記入力情報の前記特徴量と、前記検索手段により検索された被検索情報の前記特徴量と、に基づく類似度を取得する類似度取得手段と、
前記検索手段により検索された被検索情報に関連付けて、前記類似度を表示させる表示制御手段と、
を更に含むことを特徴とする請求項１〜９の何れかに記載の検索システム。
【請求項１１】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
を含み、
前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、
前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、
ことを特徴とする検索システム。
【請求項１２】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
を含み、
前記格納手段は、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、
ことを特徴とする検索システム。
【請求項１３】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
前記検索手段により検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御手段と、
を含むことを特徴とする検索システム。
【請求項１４】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、入力画像を入力する入力手段と、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御手段と、
を含むことを特徴とする検索システム。
【請求項１５】
入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器と、
前記学習器に入力済みの被検索画像であって、複数のオブジェクトを含む被検索画像の前記特徴量をデータベースに格納する格納手段と、
前記学習器に対し、複数のオブジェクトを含む入力画像を入力する入力手段と、
前記データベースに基づいて、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段と、
を含むことを特徴とする検索システム。
【請求項１６】
コンピュータが、
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力情報を入力する入力ステップと、
前記データベースに基づいて、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する検索ステップと、
を実行することを特徴とする検索方法。
【請求項１７】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の分類結果である第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器を利用した検索方法であって、コンピュータが、
分類ごとに用意されたデータベースのうち、前記学習器に入力済みの被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力情報を入力する入力ステップと、
分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索ステップと、
を実行することを特徴とする検索方法。
【請求項１８】
コンピュータが、
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
を実行し、
前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、
前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、
ことを特徴とする検索方法。
【請求項１９】
コンピュータが、
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
を実行し、
前記格納ステップは、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、
ことを特徴とする検索方法。
【請求項２０】
コンピュータが、
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
前記検索ステップにより検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御ステップと、
を実行することを特徴とする検索方法。
【請求項２１】
コンピュータが、
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、入力画像を入力する入力ステップと、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御ステップと、
を実行することを特徴とする検索方法。
【請求項２２】
コンピュータが、
入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像であって、複数のオブジェクトを含む被検索画像の前記特徴量をデータベースに格納する格納ステップと、
前記学習器に対し、複数のオブジェクトを含む入力画像を入力する入力ステップと、
前記データベースに基づいて、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する検索ステップと、
を実行することを特徴とする検索方法。
【請求項２３】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器に入力済みの被検索情報の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力情報を入力する入力手段、
前記データベースに基づいて、前記第１の分析結果が前記入力情報と類似する被検索情報を検索し、当該検索した被検索情報の中から、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段、
としてコンピュータを機能させるためのプログラム。
【請求項２４】
入力された情報の特徴量を計算し、当該特徴量に基づいて、第１の観点における当該情報の分類結果である第１の分析結果と、第２の観点における当該情報の第２の分析結果と、を出力する学習器を利用可能なコンピュータを、
分類ごとに用意されたデータベースのうち、前記学習器に入力済みの被検索情報の分類に応じたデータベースに、当該被検索情報の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力情報を入力する入力手段、
分類ごとに用意された前記データベースのうち、前記入力情報の分類結果に応じたデータベースに基づいて、前記特徴量が前記入力情報と類似する被検索情報を検索する検索手段、
として機能させるためのプログラム。
【請求項２５】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
としてコンピュータを機能させるためのプログラムであって、
前記学習器は、前記入力画像に含まれるオブジェクトを示す領域の前記特徴量を計算し、当該領域の前記第１の分析結果と前記第２の分析結果とを出力し、
前記学習器は、互いに重複する複数の前記領域が前記入力画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量に基づいて、当該領域の前記第１の分析結果と前記第２の分析結果とを出力する、
プログラム。
【請求項２６】
入力された画像の特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像に含まれるオブジェクトを示す領域の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
としてコンピュータを機能させるためのプログラムであって、
前記格納手段は、互いに重複する複数の前記領域が前記被検索画像に含まれる場合には、前記第１の分析結果及び前記第２の分析結果の少なくとも一方の蓋然性が最も高い領域の前記特徴量を格納する、
プログラム。
【請求項２７】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
前記検索手段により検索された被検索画像に関連付けて、当該被検索画像の前記位置情報を表示させる表示制御手段、
としてコンピュータを機能させるためのプログラム。
【請求項２８】
入力された画像の特徴量を計算し、当該画像に含まれるオブジェクトの分類結果である第１の分析結果と、当該オブジェクトの位置に関する位置情報である第２の分析結果と、を出力する学習器に入力済みの被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、入力画像を入力する入力手段、
前記データベースに基づいて、前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
前記入力画像に関連付けて、前記入力画像の前記位置情報を表示させる表示制御手段、
としてコンピュータを機能させるためのプログラム。
【請求項２９】
入力された画像に複数のオブジェクトが含まれる場合に、オブジェクトごとに、特徴量を計算し、第１の観点で当該画像の特徴を分析した第１の分析結果と、第２の観点で当該画像の特徴を分析した第２の分析結果と、を出力する学習器に入力済みの被検索画像であって、複数のオブジェクトを含む被検索画像の前記特徴量をデータベースに格納する格納手段、
前記学習器に対し、複数のオブジェクトを含む入力画像を入力する入力手段、
前記データベースに基づいて、一部のオブジェクトの前記特徴量が前記入力画像と類似する被検索画像を検索する検索手段、
としてコンピュータを機能させるためのプログラム。
【国際調査報告】
2019244277.tif 000015
2019244277.tif 000016
2019244277.tif 000017
2019244277.tif 000018