(57)【要約】  類似度計算装置（２００）は、複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する記憶部を参照する。類似度計算装置（２００）は、第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、第１コードに変換される確率に基づいて、第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する。
2020100289.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する記憶部と、
第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する算出部と、
を有することを特徴とする類似度計算装置。
【請求項２】
前記算出部によって算出された前記第２メディアデータと前記各第１メディアデータとの類似度を基にして、前記第２メディアデータに対応する第１メディアデータを検索する検索部を更に有することを特徴とする請求項１に記載の類似度計算装置。
【請求項３】
前記算出部は、前記第２メディアデータに対応する特徴ベクトルを、前記第２コードと同一の次元数の変換ベクトルに変換し、前記変換ベクトルと前記第１コードとの内積を基にして、前記類似度を算出することを特徴とする請求項１に記載の類似度計算装置。
【請求項４】
前記第２メディアデータを前記第２コードに変換する変換部を更に有し、前記算出部は、前記第２コードと各第１コードとの距離を基にして、前記類似度の算出に用いる第１コードを選択することを特徴とする請求項１に記載の類似度計算装置。
【請求項５】
前記第１メディアデータおよび前記第２メディアデータは生体データを含み、前記算出部は、第２メディアデータの生体データに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出することを特徴とする請求項１〜４のいずれか一つに記載の類似度計算装置。
【請求項６】
コンピュータが、
複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する記憶部を参照し、
第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する、
処理を実行することを特徴とする類似度計算方法。
【請求項７】
前記第２メディアデータと前記各第１メディアデータとの類似度を基にして、前記第２メディアデータに対応する第１メディアデータを検索する処理を更に実行することを特徴とする請求項６に記載の類似度計算方法。
【請求項８】
前記算出する処理は、前記第２メディアデータに対応する特徴ベクトルを、前記第２コードと同一の次元数の変換ベクトルに変換し、前記変換ベクトルと前記第１コードとの内積を基にして、前記類似度を算出することを特徴とする請求項６に記載の類似度計算方法。
【請求項９】
前記第２メディアデータを前記第２コードに変換する処理と、前記第２コードと各第１コードとの距離を基にして、前記類似度の算出に用いる第１コードを選択する処理とを更に実行することを特徴とする請求項６に記載の類似度計算方法。
【請求項１０】
前記第１メディアデータおよび前記第２メディアデータは生体データを含み、前記算出する処理は、第２メディアデータの生体データに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出することを特徴とする請求項６〜９のいずれか一つに記載の類似度計算方法。
【請求項１１】
コンピュータに、
複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する記憶部を参照し、
第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する、
処理を実行させることを特徴とする類似度計算プログラム。
【請求項１２】
前記第２メディアデータと前記各第１メディアデータとの類似度を基にして、前記第２メディアデータに対応する第１メディアデータを検索する処理を更に実行させることを特徴とする請求項１１に記載の類似度計算プログラム。
【請求項１３】
前記算出する処理は、前記第２メディアデータに対応する特徴ベクトルを、前記第２コードと同一の次元数の変換ベクトルに変換し、前記変換ベクトルと前記第１コードとの内積を基にして、前記類似度を算出することを特徴とする請求項１１に記載の類似度計算プログラム。
【請求項１４】
前記第２メディアデータを前記第２コードに変換する処理と、前記第２コードと各第１コードとの距離を基にして、前記類似度の算出に用いる第１コードを選択する処理とを更に実行させることを特徴とする請求項１１に記載の類似度計算プログラム。
【請求項１５】
前記第１メディアデータおよび前記第２メディアデータは生体データを含み、前記算出する処理は、第２メディアデータの生体データに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出することを特徴とする請求項１１〜１４のいずれか一つに記載の類似度計算プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、類似度計算装置等に関する。
【背景技術】
【０００２】
クエリに類似するメディアをデータベースから検索する検索システムがある。この検索システムでは、クエリの特徴ベクトルと、データベースに格納された各メディアの特徴ベクトルとの距離計算を行うことで、クエリの特徴ベクトルの近傍に存在するメディアの特徴ベクトルを検索する。距離計算は、コサイン距離計算等の類似度計算に対応するものである。【０００３】
ここで、検索システムで用いる特徴ベクトルは、高次元の特徴ベクトルである。このため、クエリの特徴ベクトルと、各メディアの特徴ベクトルとの距離計算をそれぞれ行うと、計算コストが膨大なものとなる。計算コストが増加すると、クエリを入力してから検索結果が出力するまでに時間を要する。【０００４】
特徴ベクトルを用いた計算コストを削減するために、特徴ベクトルをバイナリコードに近似する従来技術がある。この従来技術は、近似したバイナリコード間のハミング距離を類似度として算出する。バイナリコードは特徴ベクトルと比較してコンパクトであるため、計算コストを削減でき、検索時間を短縮できる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７−５４４３８号公報
【特許文献２】特開２０１８−５５６１８号公報
【特許文献３】特開２０１３−２４６７３９号公報
【特許文献４】国際公開第２００９／１５１００２号
【特許文献５】米国特許第２０１１／００９３４１９号明細書
【非特許文献】
【０００６】
【非特許文献１】Y.Gong  and  S  Lazebnik,“Iterative  Quantization:A  Procrustean  Approach  to  Leaning  Binary  Codes.”In  Proc.CVPR,2011.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来技術では、少ない計算負荷で、類似度の計算を精度よく行うことができないという問題がある。【０００８】
従来技術では、特徴ベクトルをバイナリコードに近似しているが、バイナリコード間のハミング距離は、離散化された値を持つため、緻密な距離の表現が困難になる。たとえば、特徴ベクトルそのものはそれぞれ異なる値を持っていても、バイナリコードに近似してハミング距離を計算した結果、各ハミング距離が同一になる場合がある。そうすると、各類似度が一致することを意味し、ランク付けを行えず、類似度の計算精度が低下する。【０００９】
また、バイナリコードに近似しないで、特徴ベクトルをそのまま用いて類似度の計算を行うと、類似度計算の精度は向上するものの、計算負荷が大きくなる。【００１０】
１つの側面では、本発明は、少ない計算負荷で、類似性計算を精度よく行うことができる類似度計算装置、類似度計算方法および類似度計算プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
第１の案では、類似度計算装置は、記憶部と、算出部とを有する。記憶部は、複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する。算出部は、第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、第１コードに変換される確率に基づいて、第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する。
【発明の効果】
【００１２】
少ない計算負荷で、類似度の計算を精度よく行うことができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本実施例１に係る登録装置および類似度計算装置の処理を説明するための図である。
【図２】図２は、本実施例１に係る登録装置の構成を示す機能ブロック図である。
【図３】図３は、本実施例１に係るメディアＤＢのデータ構造の一例を示す図である。
【図４】図４は、本実施例１に係る類似度計算装置の構成を示す機能ブロック図である。
【図５】図５は、本実施例１に係るバイナリコードテーブルのデータ構造の一例を示す図である。
【図６】図６は、本実施例１に係る登録装置の処理手順を示すフローチャートである。
【図７】図７は、本実施例１に係る類似度計算装置の処理手順を示すフローチャートである。
【図８】図８は、本実施例２に係る類似度計算装置の構成を示す機能ブロック図である。
【図９】図９は、本実施例２に係る類似度計算装置の処理手順を示すフローチャートである。
【図１０】図１０は、本実施例に係る登録装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【図１１】図１１は、本実施例に係る類似度計算装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下に、本発明にかかる類似度計算装置、類似度計算方法および類似度計算プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１５】
図１は、本実施例１に係る登録装置および類似度計算装置の処理を説明するための図である。図１に示すように、登録装置１００は、メディア入力部１１０と、特徴量抽出部１６０ａと、変換部１６０ｂと、メディアＤＢ１５０ａとを有する。類似度計算装置２００は、クエリ入力部２１０と、特徴量抽出部２６０ｂと、算出部２６０ｃと、検索部２６０ｄとを有する。【００１６】
登録装置１００は、メディアデータを２値のバイナリデータに変換し、メディアデータとバイナリデータとを対応付けて、メディアＤＢ１５０ａに登録する処理部である。【００１７】
メディア入力部１１０は、複数のメディアデータの入力を受け付ける処理部である。たとえば、メディアデータは、画像データ、動画データ、音（音声）データ等に対応するデータである。メディア入力部１１０は、複数のメディアデータを、特徴量抽出部１６０ａに出力する。【００１８】
特徴量抽出部１６０ａは、メディアデータから特徴量を抽出することで、メディアデータを、固定長の次元数をもつ特徴ベクトルに変換する処理部である。たとえば、特徴量抽出部１６０ａは、メディアデータが、画像データ、動画データである場合、ＨＯＧ（Histograms  of  Oriented  Gradients）特徴量等を抽出することで、メディアデータを、特徴ベクトルに変換する。特徴量抽出部１６０ａは、メディアデータが、音データである場合、i-vector特徴量等を抽出することで、メディアデータを、特徴ベクトルに変換する。【００１９】
特徴量抽出部１６０ａは、複数のメディアデータをそれぞれ特徴ベクトルに変換し、変換した各特徴ベクトルを、変換部１６０ｂに出力する。【００２０】
変換部１６０ｂは、特徴ベクトルを、所定の次元数をもつバイナリコードに変換する処理部である。変換部１６０ｂは、変換処理、２値化処理を行うことで、特徴ベクトルをバイナリコードに変換する。【００２１】
変換部１６０ｂは、ＩＴＱ（Iterative  Quantization）やＬＳＨ（locality  sensitive  hashing）などの変換処理を行うことで、特徴ベクトルを、バイナリコードの次元数と同じ次元数を持つ、変換ベクトルに変換する。変換部１６０ｂは、変換ベクトルに対して２値化処理を行うことで、変換ベクトルをバイナリコードに変換する。【００２２】
変換部１６０ｂは、複数の特徴ベクトルをそれぞれバイナリコードに変換し、メディアＤＢ１５０ａに各バイナリコードに関する情報を登録する。【００２３】
メディアＤＢ（Data  Base）１５０ａは、メディアデータから抽出されたバイナリコードに関する情報を保持するデータベースである。【００２４】
類似度計算装置２００は、クエリとなるメディアデータを受け付けた場合に、クエリと、メディアＤＢ１５０ａに登録された各メディアデータとの類似度をそれぞれ計算する装置である。類似度計算装置２００は、クエリの特徴ベクトルを２値化したバイナリコードが、メディアのバイナリコードとなる確率を基にして、類似度を算出する。【００２５】
クエリ入力部２１０は、クエリとなるメディアデータの入力を受け付ける処理部である。以下の説明では、クエリとなるメディアデータを「クエリデータ」と表記する。クエリ入力部２１０は、クエリデータを、特徴量抽出部２６０ｂに出力する。【００２６】
特徴量抽出部２６０ｂは、クエリデータから特徴量を抽出することで、クエリデータを、固定長の次元数をもつ特徴ベクトルに変換する処理部である。特徴量抽出部２６０ｂが、クエリデータ（メディアデータ）を、特徴ベクトルに変換する処理は、特徴量抽出部１６０ａの処理と同様である。特徴量抽出部２６０ｂは、クエリデータに対応する特徴ベクトルを、算出部２６０ｃに出力する。【００２７】
算出部２６０ｃは、クエリデータと、メディアＤＢ１５０ａの各メディアデータとの類似度をそれぞれ算出する処理部である。算出部２６０ｃは、クエリデータの特徴ベクトルを２値化したバイナリコードが、メディアＤＢ１５０ａに登録されたメディアデータに対応するバイナリコードに変換される確率を基にして、類似度を算出する。算出部２６０ｃは、類似度のデータを、検索部２６０ｄに出力する。【００２８】
検索部２６０ｄは、類似度を基にして、クエリデータと類似するメディアデータを、メディアＤＢ１５０ａから検索する処理部である。【００２９】
上記のように、本実施例１に係る類似度計算装置２００は、クエリデータの特徴ベクトルを２値化したバイナリコードが、メディアデータのバイナリコードとなる確率を基にして、類似度を算出する。これによって、ハミング距離よりも詳細な類似度計算を実現することができる。【００３０】
たとえば、クエリデータのバイナリコードを「１０１０」とし、あるメディアデータのバイナリコードを「１１０１」、他のメディアデータのバイナリコードを「１１１０」とすると、クエリのバイナリコードと、各メディアデータのバイナリコードとのハミング距離が一致し、類似度が同じになってしまう。これに対して、類似度計算装置２００では、クエリデータが、バイナリコード「１１０１」に変換される確率、バイナリコード「１１１０」に変換される確率をそれぞれ算出するため、類似度を区別することが可能となる。【００３１】
また、類似度計算装置２００は、クエリデータの特徴ベクトルを２値化したバイナリコードが、メディアデータのバイナリコードとなる確率を基にして、類似度を算出するため、各特徴ベクトルの類似度計算を行う場合と比較して、計算コストを抑止することができる。【００３２】
次に、図１に示した登録装置１００の構成の一例について説明する。図２は、本実施例１に係る登録装置の構成を示す機能ブロック図である。図２に示すように、この登録装置１００は、メディア入力部１１０と、操作部１２０と、表示部１３０と、通信部１４０と、記憶部１５０と、制御部１６０とを有する。【００３３】
メディア入力部１１０は、複数のメディアデータの入力を受け付ける処理部である。メディア入力部１１０は、複数のメディアデータを、制御部１６０の特徴量抽出部１６０ａに入力する。たとえば、メディア入力部１１０は、他の外部装置と接続するインタフェース装置等に対応する。各メディアデータには、メディアデータを一意に識別する識別情報が付与されていてもよい。【００３４】
操作部１２０は、ユーザが各種の入力操作を行うための入力装置である。操作部１２０は、キーボードやマウス、タッチパネル等に対応する。【００３５】
表示部１３０は、制御部１６０から出力される各種の情報を表示する表示装置である。表示部１３０は、液晶ディスプレイやタッチパネル等に対応する。【００３６】
通信部１４０は、ネットワークを介して他の装置とデータ通信を実行する処理部である。通信部１４０は、通信装置に対応する。たとえば、登録装置１００は、ネットワークを介して、類似度計算装置２００とデータ通信を行う。【００３７】
記憶部１５０は、メディアＤＢ１５０ａを有する。記憶部１５０は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子や、ＨＤＤ（Hard  Disk  Drive）などの記憶装置に対応する。【００３８】
メディアＤＢ１５０ａは、メディアデータに関する情報を保持するデータベースである。図３は、本実施例１に係るメディアＤＢのデータ構造の一例を示す図である。図３に示すように、メディアＤＢ１５０ａは、識別情報と、メディアと、特徴ベクトルと、バイナリコードとを対応付ける。識別情報は、メディアデータを一意に識別する情報である。メディアは、メディア入力部１１０から入力されるメディアデータである。特徴ベクトルは、特徴量抽出部１６０ａにより変換されるメディアデータの特徴ベクトルである。バイナリコードは、変換部１６０ｂにより変換されるメディアデータ（特徴ベクトル）のバイナリコードである。【００３９】
制御部１６０は、特徴量抽出部１６０ａと、変換部１６０ｂと、応答部１６０ｃとを有する。制御部１６０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などによって実現できる。また、制御部８３は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによっても実現できる。【００４０】
特徴量抽出部１６０ａは、メディアデータから特徴量を抽出することで、メディアデータを、固定長の次元数をもつ特徴ベクトルに変換する処理部である。たとえば、特徴ベクトルＸの次元数を「Ｄｘ」とする。また、特徴ベクトルＸは、式（１）によって表される。【００４１】
【数１】
2020100289.tif 000003
【００４２】
特徴量抽出部１６０ａは、メディア入力部１１０から、複数のメディアデータを取得し、複数のメディアデータを、メディアＤＢ１５０ａに格納する。特徴量抽出部１６０ａは、各メディアデータを特徴ベクトルに変換し、メディアＤＢ１５０ａに登録する。特徴量抽出部１６０ａに関するその他の処理は、図１で行った特徴量抽出部１６０ａの処理と同様である。【００４３】
変換部１６０ｂは、特徴ベクトルを、所定の次元数を持つバイナリコードに変換する処理部である。たとえば、変換部１６０ｂは、変換処理、２値化処理を行うことで、特徴ベクトルＸをバイナリコードＢに変換する。たとえば、バイナリコードＢの次元数を「Ｄｂ」とする。【００４４】
変換部１６０ｂが行う「変換処理」の一例について説明する。変換処理を関数Ｆで表すと、特徴ベクトルを変換した変換結果は、式（２ａ）に示すものとなる。式（２ａ）に示すＹは、変換ベクトルである。変換ベクトルＹの次元数は「Ｄｂ」となる。【００４５】
Ｙ＝Ｆ（Ｘ）・・・（２ａ）【００４６】
ところで、式（２ａ）の関係をより具体的に説明すると、たとえば、式（２ｂ）に示すものとなる。変換部１６０ｂは、ＬＳＨに基づいて、Ｄｂ行、Ｄｘ列の行列Ａを生成する。行列Ａの各要素ａの値は、ランダムに設定される。変換部１６０ｂは、行列Ａと、行列Ｘ（特徴ベクトルＸ）とをかけ算することで、行列Ｙ（変換ベクトルＹ）を算出する。【００４７】
【数２】
2020100289.tif 000004
【００４８】
なお、変換部１６０ｂが行う変換処理は、ＬＳＨに限られず、ＩＴＱ等の変換処理を行って、特徴ベクトルＸを、変換ベクトルＹに変換してもよい。また、式（２ｂ）で説明した線形変換に限られるものでは無く、学習済みのニューラルネットワークを用いて、特徴ベクトルＸを、変換ベクトルＹに変換してもよい。【００４９】
続いて、変換部１６０ｂが行う「２値化処理」について説明する。変換部１６０ｂは、式（３）に基づいて、変換ベクトルＹをバイナリコードに変換する。式（３）は、ロジスティック関数である。式（３）において、Ｙｉは、変換ベクトルＹのｉ次元の値である。変換部１６０ｂは、Ｙｉを式（３）に代入して得られたＲｉが、０．５以上であれば、Ｙｉを「１」に変換する。変換部１６０ｂは、Ｙｉを式（３）に代入して得られたＲｉが、０．５未満であれば、Ｙｉを「０」に変換する。【００５０】
Ｒｉ＝１／（１＋ｅｘｐ（−Ｙｉ））・・・（３）【００５１】
変換部１６０ｂは、変換ベクトルＹの各次元に対して、上記処理を繰り返し実行することで、変換ベクトルＹをバイナリコードＢに変換する。変換部１６０ｂは、各特徴ベクトルに対して、変換処理、２値化処理をそれぞれ実行することで、各特徴ベクトルをバイナリコードに変換する。変換部１６０ｂは、バイナリコードを、メディアＤＢ１５０ａに登録する。【００５２】
応答部１６０ｃは、類似度計算装置２００から受け付ける要求に応答する処理部である。応答部１６０ｃは、類似度計算装置２００から、各メディアデータのバイナリコードの要求を受け付けた場合には、メディアＤＢ１５０ａからバイナリコードを抽出したバイナリコードテーブルを生成し、類似度計算装置２００に出力する。応答部１６０ｃは、類似度計算装置２００から、識別情報を受け付けた場合には、識別情報に対応するメディアデータを、メディアＤＢ１５０ａから取得し、類似度計算装置２００に出力する。【００５３】
次に、図１に示した類似度計算装置２００の構成の一例について説明する。図４は、本実施例１に係る類似度計算装置の構成を示す機能ブロック図である。図４に示すように、類似度計算装置２００は、クエリ入力部２１０、操作部２２０、表示部２３０、通信部２４０、記憶部２５０、制御部２６０を有する。【００５４】
クエリ入力部２１０は、クエリデータの入力を受け付ける処理部である。クエリ入力部２１０は、クエリデータを、特徴量抽出部２６０ｂに出力する。【００５５】
操作部２２０は、ユーザが各種の入力操作を行うための入力装置である。操作部２２０は、キーボードやマウス、タッチパネル等に対応する。【００５６】
表示部２３０は、制御部２６０から出力される各種の情報を表示する表示装置である。表示部２３０は、液晶ディスプレイやタッチパネル等に対応する。【００５７】
通信部２４０は、ネットワークを介して他の装置とデータ通信を実行する処理部である。通信部２４０は、通信装置に対応する。たとえば、類似度計算装置２００は、ネットワークを介して、登録装置１００とデータ通信を行う。【００５８】
記憶部２５０は、バイナリコードテーブル２５０ａを有する。記憶部２５０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。【００５９】
バイナリコードテーブル２５０ａは、各メディアデータに対応するバイナリコードを保持するテーブルである。図５は、本実施例１に係るバイナリコードテーブルのデータ構造の一例を示す図である。図５に示すように、バイナリコードテーブル２５０ａは、識別情報と、バイナリコードとを対応付ける。識別情報は、メディアデータを一意に識別する情報である。バイナリコードは、登録装置１００により生成されるバイナリコードである。【００６０】
制御部２６０は、受付部２６０ａ、特徴量抽出部２６０ｂ、算出部２６０ｃ、検索部２６０ｄを有する。制御部２６０は、ＣＰＵやＭＰＵなどによって実現できる。また、制御部２６０は、ＡＳＩＣやＦＰＧＡなどのハードワイヤードロジックによっても実現できる。【００６１】
受付部２６０ａは、登録装置１００に対してバイナリコードの要求を行い、バイナリコードテーブル２５０ａを受け付ける処理部である。受付部２６０ａは、バイナリコードテーブル２５０ａを、記憶部２５０に登録する。【００６２】
特徴量抽出部２６０ｂは、クエリ入力部２１０からクエリデータを取得し、クエリデータから特徴量を抽出することで、クエリデータを、次元数「Ｄｘ」の特徴ベクトルに変換する処理部である。特徴量抽出部２６０ｂが、クエリデータを、特徴ベクトルに変換する処理は、特徴量抽出部１６０ａが、メディアデータを、特徴ベクトルに変換する処理と同様である。特徴量抽出部２６０ｂは、特徴ベクトルを、算出部２６０ｃに出力する。【００６３】
算出部２６０ｃは、クエリデータと、メディアＤＢ１５０ａの各メディアデータとの類似度をそれぞれ算出する処理部である。たとえば、算出部２６０ｃは、クエリデータの特徴ベクトルと、バイナリコードテーブル２５０ａとを用いて、類似度を算出する。【００６４】
たとえば、クエリデータの特徴ベクトルＸが、バイナリコードＢに変換される確率を、Ｐ（Ｂ｜Ｘ）と定義することができる。Ｐ（Ｂ｜Ｘ）は、バイナリコードＢについて特徴ベクトルＸの条件付き確率である。バイナリコードＢの各次元が独立であるとすれば、Ｐ（Ｂ｜Ｘ）は、対数を用いて式（４）で定義できる。【００６５】
ｌｏｇ（Ｐ（Ｂ｜Ｘ））＝Ｂ・Ｙ＋ｃｏｎｓｔ・・・（４）【００６６】
式（４）において、Ｙは、クエリデータの特徴ベクトルＸの変換ベクトルＹである。算出部２６０ｃは、上述した変換部１６０ｂと同様にして、式（２ａ）に基づいて、特徴ベクトルＸを、変換ベクトルに変換する。「Ｂ・Ｙ」は、バイナリコードＢと、変換ベクトルとの内積を示すものである。ｃｏｎｓｔは、バイナリコードＢに依存しない値であり、予め設定される。【００６７】
算出部２６０ｃは、クエリデータから求めた変換ベクトルと、バイナリコードテーブル２５０ａの各バイナリコードとを基にして、式（４）の値を算出する。この処理により、算出部２６０ｃは、クエリデータと、各バイナリデータとの類似度をそれぞれ算出する。たとえば、算出部２６０ｃは、類似度を算出する際に用いたバイナリコードの識別情報と類似度とをそれぞれ対応付けた算出結果のデータを、検索部２６０ｄに出力する。【００６８】
検索部２６０ｄは、類似度を基にして、クエリデータと類似するメディアデータを、メディアＤＢ１５０ａから検索する処理部である。たとえば、検索部２６０ｄは、算出部２６０ｃから算出結果のデータを取得し、各類似度を比較して、最大となる類似度を特定し、特定した類似度に対応する識別情報を、登録装置１００に通知する。なお、検索部２６０ｄは、類似度を降順にソートし、上位Ｎの類似度に対応する識別情報を、登録装置１００に通知してもよい。Ｎは予め設定される数値である。【００６９】
検索部２６０ｄは、識別情報に対応するメディアデータを、登録装置１００から取得し、取得したメディアデータを、検索結果とする。検索部２６０ｄは、検索結果のメディアデータを、表示部２３０に出力して表示させる。また、検索部２６０ｄは、検索結果のメディアデータを、ネットワークに接続された他の装置に送信してもよい。【００７０】
次に、本実施例１に係る登録装置１００の処理手順の一例について説明する。図６は、本実施例１に係る登録装置の処理手順を示すフローチャートである。図６に示すように、登録装置１００のメディア入力部１１０は、複数のメディアデータの入力を受け付ける（ステップＳ１０１）。【００７１】
登録装置１００の特徴量抽出部１６０ａは、メディアデータを選択する（ステップＳ１０２）。特徴量抽出部１６０ａは、メディアデータを特徴ベクトルに変換する（ステップＳ１０３）。登録装置１００の変換部１６０ｂは、特徴ベクトルを変換ベクトルに変換する（ステップＳ１０４）。【００７２】
変換部１６０ｂは、変換ベクトルをバイナリコードに変換する（ステップＳ１０５）。変換部１６０ｂは、バイナリコードをメディアＤＢ１５０ａに登録する（ステップＳ１０６）。【００７３】
登録装置１００は、全てのメディアデータを選択したか否かを判定する（ステップＳ１０７）。登録装置１００は、全てのメディアデータを選択していない場合には（ステップＳ１０７，Ｎｏ）、ステップＳ１０２に移行する。一方、登録装置１００は、全てのメディアデータを選択した場合には（ステップＳ１０７，Ｙｅｓ）、処理を終了する。【００７４】
次に、本実施例１に係る類似度計算装置２００の処理手順の一例について説明する。図７は、本実施例１に係る類似度計算装置の処理手順を示すフローチャートである。図７に示すように、類似度計算装置２００の受付部２６０ａは、登録装置１００から、バイナリコードテーブル２５０ａを取得する（ステップＳ２０１）。【００７５】
類似度計算装置２００のクエリ入力部２１０は、クエリデータの入力を受け付ける（ステップＳ２０２）。類似度計算装置２００の特徴量抽出部２６０ｂは、クエリデータを特徴ベクトルに変換する（ステップＳ２０３）。類似度計算装置２００の算出部２６０ｃは、特徴ベクトルを変換ベクトルに変換する（ステップＳ２０４）。【００７６】
算出部２６０ｃは、クエリデータの変換ベクトルと、各メディアデータのバイナリコードとの内積を基にして、類似度を算出する（ステップＳ２０５）。ステップＳ２０５で算出される類似度は、確率「Ｐ（Ｂ｜Ｘ）」に対応するものである。【００７７】
類似度計算装置２００の検索部２６０ｄは、類似度の算出結果を基にして、メディアデータを検索する（ステップＳ２０６）。ステップＳ２０６において、検索部２６０ｄは、最大の類似度に対応するメディアデータの識別情報を、登録装置１００に通知することで、検索結果となるメディアデータを取得する。検索部２６０ｄは、検索結果を表示部２３０に出力する（ステップＳ２０７）。【００７８】
次に、本実施例１に係る類似度計算装置２００の効果について説明する。類似度計算装置２００は、クエリデータの特徴ベクトルを２値化したバイナリコードが、メディアデータのバイナリコードとなる確率Ｐ（Ｂ｜Ｘ）を基にして、類似度を算出する。これによって、ハミング距離よりも詳細な類似度計算を実現することができる。【００７９】
たとえば、クエリデータのバイナリコードを「１０１０」とし、あるメディアデータのバイナリコードを「１１０１」、他のメディアデータのバイナリコードを「１１１０」とすると、クエリのバイナリコードと、各メディアデータのバイナリコードとのハミング距離が一致し、類似度が同じになってしまう。これに対して、類似度計算装置２００では、クエリデータが、バイナリコード「１１０１」に変換される確率、バイナリコード「１１１０」に変換される確率をそれぞれ算出するため、類似度をランク付けすることが可能となる。【００８０】
類似度計算装置２００は、クエリデータの特徴ベクトルを２値化したバイナリコードが、メディアデータのバイナリコードとなる確率を基にして、類似度を算出するため、各特徴ベクトルの類似度計算を行う場合と比較して、計算コストを抑止することができる。【００８１】
類似度計算装置２００は、類似度を算出する場合に、バイナリコードテーブル２５０ａを用いて、類似度の算出を行い、各メディアデータや、各特徴ベクトルを記憶部２５０に保存しない。このため、記憶部２５０の登録するデータの容量を削減することができる。【００８２】
ところで、本実施例１に係る類似度計算装置２００は、確率Ｐ（Ｂ｜Ｘ）を類似度として利用したがこれに限定されるものではない。類似度計算装置２００は、「ｌｏｇ（Ｐ（Ｂ｜Ｘ））」を、類似度として用いてもよい。
【実施例２】
【００８３】
次に、本実施例２に係る類似度計算装置について説明する。本実施例２に係る類似度計算装置は、クエリデータをバイナリコードに変換し、各メディアデータのバイナリコードと比較して、ハミング距離を算出する。類似度計算装置は、ハミング距離の小さいものを優先した、メディアデータの絞り込みを行い、絞り込んだメディアデータとクエリデータとの類似度（確率Ｐ（Ｂ｜Ｘ））を、実施例１の類似度計算装置と同様の処理を行って算出する。このように、ハミング距離による絞り込みを行うことで、類似度（確率Ｐ（Ｂ｜Ｘ））の算出対象を削減し、計算コストを更に削減することができる。【００８４】
図示を省略するが、本実施例２に係る類似度計算装置は、図１、図２で説明した登録装置１００に接続されているものとする。【００８５】
図８は、本実施例２に係る類似度計算装置の構成を示す機能ブロック図である。図８に示すように、この類似度計算装置３００は、クエリ入力部３１０、操作部３２０、表示部３３０、通信部３４０、記憶部３５０、制御部３６０を有する。【００８６】
クエリ入力部３１０は、クエリデータの入力を受け付ける処理部である。クエリ入力部３１０は、クエリデータを、特徴量抽出部３６０ｂに出力する。【００８７】
操作部３２０は、ユーザが各種の入力操作を行うための入力装置である。操作部３２０は、キーボードやマウス、タッチパネル等に対応する。【００８８】
表示部３３０は、制御部３６０から出力される各種の情報を表示する表示装置である。表示部３３０は、液晶ディスプレイやタッチパネル等に対応する。【００８９】
通信部３４０は、ネットワークを介して他の装置とデータ通信を実行する処理部である。通信部３４０は、通信装置に対応する。たとえば、類似度計算装置３００は、ネットワークを介して、登録装置１００とデータ通信を行う。【００９０】
記憶部３５０は、バイナリコードテーブル３５０ａを有する。記憶部３５０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。【００９１】
バイナリコードテーブル３５０ａは、各メディアデータに対応するバイナリコードを保持するテーブルである。バイナリコードテーブル３５０ａのデータ構造は、図５で説明したバイナリコードテーブル２５０ａのデータ構造と同様である。【００９２】
制御部３６０は、受付部３６０ａ、特徴量抽出部３６０ｂ、変換部３６０ｃ、算出部３６０ｃ、検索部３６０ｄを有する。制御部３６０は、ＣＰＵやＭＰＵなどによって実現できる。また、制御部３６０は、ＡＳＩＣやＦＰＧＡなどのハードワイヤードロジックによっても実現できる。【００９３】
受付部３６０ａは、登録装置１００に対してバイナリコードの要求を行い、バイナリコードテーブル３５０ａを受け付ける処理部である。受付部３６０ａは、バイナリコードテーブル３５０ａを、記憶部３５０に登録する。【００９４】
特徴量抽出部３６０ｂは、クエリ入力部３１０からクエリデータを取得し、クエリデータから特徴量を抽出することで、クエリデータを、次元数「Ｄｘ」の特徴ベクトルに変換する処理部である。特徴量抽出部３６０ｂが、クエリデータを、特徴ベクトルに変換する処理は、特徴量抽出部１６０ａが、メディアデータを、特徴ベクトルに変換する処理と同様である。特徴量抽出部３６０ｂは、特徴ベクトルを、変換部３６０ｃおよび算出部３６０ｄに出力する。【００９５】
変換部３６０ｃは、特徴ベクトルを、所定の次元数を持つバイナリコードに変換する処理部である。たとえば、変換部３６０ｂは、変換処理、２値化処理を行うことで、特徴ベクトルＸをバイナリコードＢに変換する。たとえば、バイナリコードＢの次元数を「Ｄｂ」とする。変換部３６０ｃが行う変換処理、２値化処理は、変換部１６０ｂが行う変換処理、２値化処理と同様である。変換部３６０ｃは、バイナリコードを、算出部３６０ｄに出力する。【００９６】
以下の説明では、バイナリコードテーブル３５０ａのバイナリコードを、「第１バイナリコード」と表記する。変換部３６０ｃにより変換されたクエリデータのバイナリコードを、「第２バイナリコード」と表記する。【００９７】
算出部３６０ｄは、クエリデータと、メディアＤＢ１５０ａの各メディアデータとの類似度をそれぞれ算出する処理部である。たとえば、算出部３６０ｄは、絞り込み処理を行って、第１バイナリコードの絞り込みを行った後に、絞り込んだ第１バイナリコードを用いて、類似度の計算を行う。【００９８】
算出部３６０ｄが行う絞り込み処理について説明する。算出部３６０ｄは、第２バイナリコードと、各第１バイナリコードとのハミング距離をそれぞれ算出する。算出部３６０ｄは、第２バイナリコードとのハミング距離が小さいものから昇順に、各第１バイナリコードをソートする。算出部３６０ｄは、ソートした各第１バイナリコードのうち、上位Ｍ個の第１バイナリコードを選択する。Ｍは予め設定される自然数である。【００９９】
算出部３６０ｄが行う類似度の計算について説明する。算出部３６０ｄは、クエリデータの特徴ベクトルと、絞り込み処理により選択した第１バイナリコードとを用いて、類似度を算出する。算出部３６０ｄは、算出部２６０ｃと同様にして、式（４）を基にして、類似度を算出する。算出部３６０ｄは、類似度を算出する際に用いた第１バイナリコードの識別情報と類似度とをそれぞれ対応付けた算出結果のデータを、検索部３６０ｅに出力する。【０１００】
検索部３６０ｅは、類似度を基にして、クエリデータと類似するメディアデータを、メディアＤＢ１５０ａから検索する処理部である。たとえば、検索部３６０ｅは、算出部３６０ｄから算出結果のデータを取得し、各類似度を比較して、最大となる類似度を特定し、特定した類似度に対応する識別情報を、登録装置１００に通知する。なお、検索部３６０ｅは、類似度を降順にソートし、上位Ｎの類似度に対応する識別情報を、登録装置１００に通知してもよい。【０１０１】
検索部３６０ｅは、識別情報に対応するメディアデータを、登録装置１００から取得し、取得したメディアデータを、検索結果とする。検索部３６０ｅは、検索結果のメディアデータを、表示部３３０に出力して表示させる。また、検索部３６０ｅは、検索結果のメディアデータを、ネットワークに接続された他の装置に送信してもよい。【０１０２】
次に、本実施例２に係る類似度計算装置３００の処理手順の一例について説明する。図９は、本実施例２に係る類似度計算装置の処理手順を示すフローチャートである。図９に示すように、類似度計算装置３００の受付部３６０ａは、登録装置１００から、バイナリコードテーブル３５０ａを取得する（ステップＳ３０１）。【０１０３】
類似度計算装置３００のクエリ入力部３１０は、クエリデータの入力を受け付ける（ステップＳ３０２）。類似度計算装置３００の特徴量抽出部３６０ｂは、クエリデータを特徴ベクトルに変換する（ステップＳ３０３）。類似度計算装置３００の変換部３６０ｃは、特徴ベクトルをバイナリコードに変換する（ステップＳ３０４）。【０１０４】
算出部３６０ｄは、クエリデータの変換ベクトルと、各メディアデータの第１バイナリコードとのハミング距離を算出する（ステップＳ３０５）。算出部３６０ｄは、ハミング距離の小さいものから昇順に、第１バイナリコードをソートする（ステップＳ３０６）。算出部３６０ｄは、上位Ｍ個の第１バイナリコードを選択する（ステップＳ３０７）。【０１０５】
算出部３６０ｃは、クエリデータの変換ベクトルと、選択した第１バイナリコードとの内積を基にして、類似度を算出する（ステップＳ３０８）。ステップＳ３０８で算出される類似度は、確率「Ｐ（Ｂ｜Ｘ）」に対応するものである。【０１０６】
類似度計算装置３００の検索部３６０ｅは、類似度の算出結果を基にして、メディアデータを検索する（ステップＳ３０９）。ステップＳ３０９において、検索部３６０ｅは、最大の類似度に対応するメディアデータの識別情報を、登録装置１００に通知することで、検索結果となるメディアデータを取得する。検索部３６０ｅは、検索結果を表示部３３０に出力する（ステップＳ３１０）。【０１０７】
次に、本実施例２に係る類似度計算装置３００の効果について説明する。類似度計算装置３００は、クエリデータをバイナリコードに変換し、各メディアデータのバイナリコードと比較して、ハミング距離を算出する。類似度計算装置３００は、ハミング距離の小さいものを優先した、メディアデータの絞り込みを行い、絞り込んだメディアデータのバイナリコードとクエリデータのバイナリコードとの類似度（確率Ｐ（Ｂ｜Ｘ））を算出する。このように、ハミング距離による絞り込みを行うことで、類似度（確率Ｐ（Ｂ｜Ｘ））の算出対象を削減し、計算コストを更に削減することができる。【０１０８】
ところで、上述した実施例１、２では、メディアデータとして、画像データ、動画データ、音（音声）データを例にして説明を行ったがこれに限定されるものではなく、生体情報を、メディアデータとして利用してもよい。生体情報には、人の指紋、虹彩、顔画像、バイタルサイン等が含まれる。【０１０９】
図１、２に示した登録装置１００は、生体データから特徴量を抽出することで、特徴ベクトルを生成し、メディアＤＢ１５０ａに生体データのバイナリコードを登録する。図１、図４、図８に示した類似度計算装置２００，３００は、ユーザの生体情報から、特徴量を抽出することで、特徴ベクトルを生成し、類似度の算出を行う。【０１１０】
また、本実施例１、２では一例として、登録装置１００と、類似度計算装置２００，３００とが別々の装置である場合について説明したがこれに限定されるものではない。登録装置１００と類似度計算装置２００とが一つの装置に含まれていてもよい。登録装置１００と、類似度計算装置３００とが一つの装置に含まれていてもよい。【０１１１】
次に、実施例に示した登録装置１００、類似度計算装置２００，３００と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図１０は、本実施例に係る登録装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。【０１１２】
図１０に示すように、コンピュータ５００は、各種演算処理を実行するＣＰＵ５０１と、ユーザからのデータの入力を受け付ける入力装置５０２と、ディスプレイ５０３とを有する。また、コンピュータ５００は、記憶媒体からプログラム等を読み取る読み取り装置５０４と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置５０５とを有する。コンピュータ５００は、各種情報を一時記憶するＲＡＭ５０６と、ハードディスク装置５０７とを有する。そして、各装置５０１〜５０７は、バス５０８に接続される。【０１１３】
ハードディスク装置５０７は、特徴量抽出プログラム５０７ａ、変換プログラム５０７ｂ、応答プログラム５０７ｃを有する。ＣＰＵ５０１は、特徴量抽出プログラム５０７ａ、変換プログラム５０７ｂ、応答プログラム５０７ｃを読み出してＲＡＭ５０６に展開する。【０１１４】
特徴量抽出プログラム５０７ａは、特徴量抽出プロセス５０６ａとして機能する。変換プログラム５０７ｂは、変換プロセス５０６ｂとして機能する。応答プログラム５０７ｃは、応答プロセス５０６ｃとして機能する。【０１１５】
特徴量抽出プロセス５０６ａの処理は、特徴量抽出部１６０ａの処理に対応する。変換プロセス５０６ｂの処理は、変換部１６０ｂの処理に対応する。応答プロセス５０６ｃの処理は、応答部１６０ｃの処理に対応する。【０１１６】
なお、各プログラム５０７ａ〜５０７ｃについては、必ずしも最初からハードディスク装置５０７に記憶させておかなくてもよい。例えば、コンピュータ５００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ５００が各プログラム５０７ａ〜５０７ｅを読み出して実行するようにしてもよい。【０１１７】
図１１は、本実施例に係る類似度計算装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。【０１１８】
図１１に示すように、コンピュータ６００は、各種演算処理を実行するＣＰＵ６０１と、ユーザからのデータの入力を受け付ける入力装置６０２と、ディスプレイ６０３とを有する。また、コンピュータ６００は、記憶媒体からプログラム等を読み取る読み取り装置６０４と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置６０５とを有する。コンピュータ６００は、各種情報を一時記憶するＲＡＭ６０６と、ハードディスク装置６０７とを有する。そして、各装置６０１〜６０７は、バス６０８に接続される。【０１１９】
ハードディスク装置６０７は、受信プログラム６０７ａ、特徴量抽出プログラム６０７ｂ、変換プログラム６０７ｃ、算出プログラム６０７ｄ、検索プログラム６０７ｅを有する。ＣＰＵ６０１は、受信プログラム６０７ａ、特徴量抽出プログラム６０７ｂ、変換プログラム６０７ｃ、算出プログラム６０７ｄ、検索プログラム６０７ｅを読み出してＲＡＭ６０６に展開する。【０１２０】
受信プログラム６０７ａは、受信プロセス６０６ａとして機能する。特徴量抽出プログラム６０７ｂは、特徴量抽出プロセス６０６ｂとして機能する。変換プログラム６０７ｃは、変換プロセス６０６ｃとして機能する。算出プログラム６０７ｄは、算出プロセス６０６ｄとして機能する。検索プログラム６０７ｅは、検索プロセス６０６ｅとして機能する。【０１２１】
受信プロセス６０６ａの処理は、受信部２６０ａ，３６０ａの処理に対応する。特徴量抽出プロセス６０６ｂの処理は、特徴量抽出部２６０ｂ，３６０ｂの処理に対応する。変換プロセス６０６ｃの処理は、変換部３６０ｃの処理に対応する。算出プロセス６０６ｄの処理は、算出部２６０ｃ、３６０ｄの処理に対応する。検索プロセス６０６ｅの処理は、検索部２６０ｄ，３６０ｅの処理に対応する。【０１２２】
なお、各プログラム６０７ａ〜６０７ｅについては、必ずしも最初からハードディスク装置６０７に記憶させておかなくてもよい。例えば、コンピュータ６００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ６００が各プログラム６０７ａ〜６０７ｅを読み出して実行するようにしてもよい。
【符号の説明】
【０１２３】
１００    登録装置
１１０    メディア入力部
１２０，２２０，３２０    操作部
１３０，２３０，３３０    表示部
１４０，２４０，３４０    通信部
１５０，２５０，３５０    記憶部
１５０ａ  メディアＤＢ
１６０，２６０，３６０    制御部
１６０ａ，２６０ｂ，３６０ｂ  特徴量抽出部
１６０ｂ，３６０ｃ  変換部
１６０ｃ  応答部
２００，３００    類似度計算装置
２１０，３１０    クエリ入力部
２５０ａ，３５０ａ  バイナリコードテーブル
２６０ａ，３６０ａ  受付部
２６０ｃ，３６０ｄ  算出部
２６０ｄ，３５０ｅ  検索部
【図１】
2020100289.tif 000005
【図２】
2020100289.tif 000006
【図３】
2020100289.tif 000007
【図４】
2020100289.tif 000008
【図５】
2020100289.tif 000009
【図６】
2020100289.tif 000010
【図７】
2020100289.tif 000011
【図８】
2020100289.tif 000012
【図９】
2020100289.tif 000013
【図１０】
2020100289.tif 000014
【図１１】
2020100289.tif 000015
【手続補正書】
【提出日】令和3年3月18日(2021.3.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する記憶部と、
第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する算出部と、
を有することを特徴とする類似度計算装置。
【請求項２】
前記算出部によって算出された前記第２メディアデータと前記各第１メディアデータとの類似度を基にして、前記第２メディアデータに対応する第１メディアデータを検索する検索部を更に有することを特徴とする請求項１に記載の類似度計算装置。
【請求項３】
前記算出部は、前記第２メディアデータに対応する特徴ベクトルを、前記第２コードと同一の次元数の変換ベクトルに変換し、前記変換ベクトルと前記第１コードとの内積を基にして、前記類似度を算出することを特徴とする請求項１に記載の類似度計算装置。
【請求項４】
前記第２メディアデータを前記第２コードに変換する変換部を更に有し、前記算出部は、前記第２コードと各第１コードとの距離を基にして、前記類似度の算出に用いる第１コードを選択することを特徴とする請求項１に記載の類似度計算装置。
【請求項５】
前記第１メディアデータおよび前記第２メディアデータは生体データを含み、前記算出部は、第２メディアデータの生体データに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出することを特徴とする請求項１〜４のいずれか一つに記載の類似度計算装置。
【請求項６】
コンピュータが、
複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する記憶部を参照し、
第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する、
処理を実行することを特徴とする類似度計算方法。
【請求項７】
コンピュータに、
複数の第１メディアデータに対応する２値化された第１コードをそれぞれ記憶する記憶部を参照し、
第２メディアデータに対応する特徴ベクトルを２値化した第２コードが、前記第１コードに変換される確率に基づいて、前記第２メディアデータと各第１メディアデータとの類似度をそれぞれ算出する、
処理を実行させることを特徴とする類似度計算プログラム。
【国際調査報告】
2020100289.tif 000016
2020100289.tif 000017