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

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

▶ バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッドの特許一覧

特許7256834マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品
<>
  • 特許-マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品 図1
  • 特許-マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品 図2
  • 特許-マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品 図3
  • 特許-マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-04-04
(45)【発行日】2023-04-12
(54)【発明の名称】マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品
(51)【国際特許分類】
   G06F 16/45 20190101AFI20230405BHJP
   G06F 16/43 20190101ALI20230405BHJP
【FI】
G06F16/45
G06F16/43
【請求項の数】 11
(21)【出願番号】P 2021048959
(22)【出願日】2021-03-23
(65)【公開番号】P2021103557
(43)【公開日】2021-07-15
【審査請求日】2021-03-23
(31)【優先権主張番号】202010271903.9
(32)【優先日】2020-04-08
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】512015127
【氏名又は名称】バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
(74)【代理人】
【識別番号】100118913
【弁理士】
【氏名又は名称】上田 邦生
(74)【代理人】
【識別番号】100142789
【弁理士】
【氏名又は名称】柳 順一郎
(74)【代理人】
【識別番号】100163050
【弁理士】
【氏名又は名称】小栗 眞由美
(74)【代理人】
【識別番号】100201466
【弁理士】
【氏名又は名称】竹内 邦彦
(72)【発明者】
【氏名】陰 涼
(72)【発明者】
【氏名】盧 乾坤
(72)【発明者】
【氏名】趙 蓮
(72)【発明者】
【氏名】劉 林
(72)【発明者】
【氏名】許 青
(72)【発明者】
【氏名】賀 翔
(72)【発明者】
【氏名】範 ▲ヤ▼博
(72)【発明者】
【氏名】錢 玉磊
(72)【発明者】
【氏名】任 峰
(72)【発明者】
【氏名】金 志鵬
(72)【発明者】
【氏名】王 巧華
(72)【発明者】
【氏名】申 磊
(72)【発明者】
【氏名】劉 雲政
【審査官】早川 学
(56)【参考文献】
【文献】特開2013-012076(JP,A)
【文献】特開2013-065146(JP,A)
【文献】特開2015-228083(JP,A)
【文献】米国特許第06134541(US,A)
【文献】米国特許第06675174(US,B1)
【文献】GONG, Yunchao et al.,Iterative Quantization: A Procrustean Approach to Learning Binary Codes for Large-Scale Image Retrieval,IEEE Transactions on Pattern Analysis and Machine Intelligence,IEEE,2013年12月,Vol. 35, No.12,pp.2916-2929
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
マルチメディアコンテンツの検索装置によって実行されるマルチメディアコンテンツの検索方法であって、
クエリ情報のクエリベクトルを取得することと、
対応するマルチメディアコンテンツに関連付けられるベクトルを複数含む分類を複数含む検索ライブラリから、前記クエリベクトルにマッチングする第1の分類を決定することと、
前記第1の分類において、前記クエリベクトルにマッチングするターゲットベクトルをクエリし、かつ前記ターゲットベクトルに対応するマルチメディアコンテンツを取得することとを含み、
前記クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであり、前記検索ライブラリ内のベクトルは、回転して量子化されたベクトルであり、かつ回転前に、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルによりベクトル中心化処理が行われ、
前記検索ライブラリ内のベクトルの回転の前に、共分散行列に対して固有値分解を行って固有値と固有ベクトルを得て、前記検索ライブラリ内のベクトルの回転のための転置行列を構築し
前記共分散行列は、
【数1】
との式により計算され、
covは、前記共分散行列を表し、cは、前記検索ライブラリ内のベクトルの該当する分類の内の全てのベクトル内積の和であり、nは、前記検索ライブラリ内のベクトルの該当する分類でのベクトル本数であり、vは、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルである、マルチメディアコンテンツの検索方法。
【請求項2】
前記検索ライブラリから、前記クエリベクトルにマッチングする前記第1の分類を決定することは、
前記検索ライブラリ内の複数の前記分類の中心点ベクトルと前記クエリベクトルとの残差をそれぞれ計算し、かつ該残差に基づいて前記第1の分類を決定することを含み、前記検索ライブラリ内の各前記分類は、中心点ベクトルを含む請求項1に記載のマルチメディアコンテンツの検索方法。
【請求項3】
前記検索ライブラリのターゲット分類の前記中心点ベクトルは、前記ターゲット分類に含まれる全てのベクトルの和及び/又は前記ターゲット分類に含まれるベクトル数に基づいて決定されるものであり、前記ターゲット分類は、前記検索ライブラリ内のいずれか1つの分類である請求項2に記載のマルチメディアコンテンツの検索方法。
【請求項4】
前記第1の分類において、前記クエリベクトルにマッチングする前記ターゲットベクトルをクエリし、かつ前記ターゲットベクトルに対応する前記マルチメディアコンテンツを取得することは、
前記クエリベクトルと前記第1の分類内の複数のサブ中心ベクトルとの残差を計算し、かつ該残差に基づいて前記複数のサブ中心ベクトルのうちの、1以上の整数であるN個の前記サブ中心ベクトルを前記クエリベクトルにマッチングする前記ターゲットベクトルとすることと、該ターゲットベクトルに対応する前記マルチメディアコンテンツを取得することとを含む請求項1に記載のマルチメディアコンテンツの検索方法。
【請求項5】
クエリ情報のクエリベクトルを取得する第1の取得モジュールと、
対応するマルチメディアコンテンツに関連付けられるベクトルを複数含む分類を複数含む検索ライブラリから、前記クエリベクトルにマッチングする第1の分類を決定する決定モジュールと、
前記第1の分類において、前記クエリベクトルにマッチングするターゲットベクトルをクエリし、かつ前記ターゲットベクトルに対応するマルチメディアコンテンツを取得する第2の取得モジュールとを備え、
前記クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであり、前記検索ライブラリ内のベクトルは、回転して量子化されたベクトルであり、かつ回転前に、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルによりベクトル中心化処理が行われ、
前記検索ライブラリ内のベクトルの回転の前に、共分散行列に対して固有値分解を行って固有値と固有ベクトルを得て、前記検索ライブラリ内のベクトルの回転のための転置行列を構築し
前記共分散行列は、
【数1】
との式により計算され、
covは、前記共分散行列を表し、cは、前記検索ライブラリ内のベクトルの該当する分類の内の全てのベクトル内積の和であり、nは、前記検索ライブラリ内のベクトルの該当する分類でのベクトル本数であり、vは、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルである、マルチメディアコンテンツの検索装置。
【請求項6】
前記決定モジュールは、前記検索ライブラリ内の複数の前記分類の中心点ベクトルと前記クエリベクトルとの残差をそれぞれ計算し、かつ該残差に基づいて前記第1の分類を決定し、前記検索ライブラリ内の各前記分類は、中心点ベクトルを含む請求項に記載のマルチメディアコンテンツの検索装置。
【請求項7】
前記検索ライブラリのターゲット分類の前記中心点ベクトルは、前記ターゲット分類に含まれる全てのベクトルの和及び/又は前記ターゲット分類に含まれるベクトル数に基づいて決定されるものであり、前記ターゲット分類は、前記検索ライブラリ内のいずれか1つの分類である請求項に記載のマルチメディアコンテンツの検索装置。
【請求項8】
前記第2の取得モジュールは、前記クエリベクトルと前記第1の分類内の複数のサブ中心ベクトルとの残差を計算し、かつ該残差に基づいて前記複数のサブ中心ベクトルのうちの、1以上の整数であるN個の前記サブ中心ベクトルを前記クエリベクトルにマッチングする前記ターゲットベクトルとし、該ターゲットベクトルに対応する前記マルチメディアコンテンツを取得する請求項に記載のマルチメディアコンテンツの検索装置。
【請求項9】
少なくとも1つのプロセッサと、
少なくとも1つの該プロセッサに通信可能に接続されているメモリとを備え、
該メモリには、少なくとも1つの前記プロセッサに実行可能で、少なくとも1つの前記プロセッサによって実行されると、少なくとも1つの前記プロセッサに請求項1から請求項のいずれかに記載のマルチメディアコンテンツの検索方法を実行させる命令が記憶されている電子デバイス。
【請求項10】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令は、請求項1から請求項のいずれかに記載のマルチメディアコンテンツの検索方法を前記コンピュータに実行させる非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項11】
プロセッサによって実行されると、請求項1から請求項のいずれかに記載のマルチメディアコンテンツの検索方法が実現されるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、コンピュータの技術分野におけるスマート検索の技術分野に関し、特にマルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品に関する。
【背景技術】
【0002】
幾つかのシーンにおいて、常に検索により、関連のマルチメディアコンテンツを取得する必要があり、例えば、画像を検索することにより広告画像を実現する。しかしながら、現在で検索際にクエリ情報(例えば、広告及び画像の説明テキスト)に対して言葉分割を行い、かつ一次スクリーニングを行って、スクリーニングされた結果に対してマルチメディアコンテンツの特徴を抽出してマルチメディアコンテンツの特徴データベースを作成し、その後にクエリ情報の特徴及びマルチメディアコンテンツの特徴を利用して類似度の計算を行い、即ちグローバル空間において力まかせ検索を行うことに相当し、このような検索に多くの時間を消費するため、検索効率が低くなる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本願は、検索効率が低いという課題を解決するために、マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品を提供する。
【課題を解決するための手段】
【0004】
本願の第1の態様として、クエリ情報のクエリベクトルを取得することと、対応するマルチメディアコンテンツに関連付けられるベクトルを複数含む分類を複数含む検索ライブラリから、前記クエリベクトルにマッチングする第1の分類を決定することと、前記第1の分類において、前記クエリベクトルにマッチングするターゲットベクトルをクエリし、かつ前記ターゲットベクトルに対応するマルチメディアコンテンツを取得することとを含み、前記クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであり、前記検索ライブラリ内のベクトルは、回転して量子化されたベクトルであり、かつ回転前に、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルによりベクトル中心化処理が行われ、前記検索ライブラリ内のベクトルの回転の前に、共分散行列に対して固有値分解を行って固有値と固有ベクトルを得て、前記検索ライブラリ内のベクトルの回転のための転置行列を構築し、前記共分散行列は、
【数1】
との式により計算され、covは、前記共分散行列を表し、cは、前記検索ライブラリ内のベクトルの該当する分類の内の全てのベクトル内積の和であり、nは、前記検索ライブラリ内のベクトルの該当する分類でのベクトル本数であり、vは、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルであるマルチメディアコンテンツの検索方法を提供する。
【0005】
本願の第2の態様として、エリ情報のクエリベクトルを取得する第1の取得モジュールと、対応するマルチメディアコンテンツに関連付けられるベクトルを複数含む分類を複数含む検索ライブラリから、前記クエリベクトルにマッチングする第1の分類を決定する決定モジュールと、前記第1の分類において、前記クエリベクトルにマッチングするターゲットベクトルをクエリし、かつ前記ターゲットベクトルに対応するマルチメディアコンテンツを取得する第2の取得モジュールとを備え、前記クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであり、前記検索ライブラリ内のベクトルは、回転して量子化されたベクトルであり、かつ回転前に、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルによりベクトル中心化処理が行われ、前記検索ライブラリ内のベクトルの回転の前に、共分散行列に対して固有値分解を行って固有値と固有ベクトルを得て、前記検索ライブラリ内のベクトルの回転のための転置行列を構築し、前記共分散行列は、
【数1】
との式により計算され、covは、前記共分散行列を表し、cは、前記検索ライブラリ内のベクトルの該当する分類の内の全てのベクトル内積の和であり、nは、前記検索ライブラリ内のベクトルの該当する分類でのベクトル本数であり、vは、前記検索ライブラリ内のベクトルの該当する分類の中心点ベクトルであるマルチメディアコンテンツの検索装置を提供する。
【0006】
本願の第3の態様として、少なくとも1つのプロセッサと、少なくとも1つの該プロセッサに通信可能に接続されているメモリとを備え、該メモリには、少なくとも1つの前記プロセッサに実行可能で、少なくとも1つの前記プロセッサによって実行されると、少なくとも1つの前記プロセッサに上記のマルチメディアコンテンツの検索方法を実行させる命令が記憶されている電子デバイスを提供する。
【0007】
本願の第4の態様として、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、前記コンピュータ命令は、上記のマルチメディアコンテンツの検索方法を前記コンピュータに実行させる非一時的なコンピュータ読み取り可能な記憶媒体を提供する。
本願の第5の態様として、プロセッサによって実行されると、上記のマルチメディアコンテンツの検索方法が実現されるコンピュータプログラムを提供する。
【発明の効果】
【0008】
本願に係る技術手段は、検索効率を向上させる。
【0009】
本部分で説明された内容は、本開示の実施例の主要又は重要な特徴を特定することを意図するものではなく、本開示の範囲を限定するためのものでもないことを理解されたい。本開示の他の特徴は、以下の明細書により容易に理解される。
【図面の簡単な説明】
【0010】
図面は、本解決手段をよりよく理解するためのものであり、本願を限定するものではない。
図1】本願に係るマルチメディアコンテンツの検索方法のフローチャートである。
図2】本願に係る中心ベクトルを決定する概略図である。
図3】本願に係るマルチメディアコンテンツの検索装置の構造図である。
図4】本願の実施例に係るマルチメディアコンテンツの検索方法を実現する電子デバイスのブロック図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら、本願の例示的な実施例を説明し、理解を容易にするために、本願の実施例の様々な詳細を含み、それらが例示的なものであると見なされるべきである。したがって、本願の範囲及び精神から逸脱することなく、ここで説明された実施例に対して様々な変更及び修正を行うことができることは、当業者によって認識される。同様に、以下の説明では、明確さと簡潔さのために、公知の機能及び構造についての説明は省略される。
【0012】
図1を参照すると、図1は、本願に係るマルチメディアコンテンツの検索方法のフローチャートであり、図1に示されるように、ステップS101からステップS103を含む。
【0013】
ステップS101として、クエリ情報のクエリクエリベクトルを取得する。
【0014】
クエリ情報は、ユーザが入力したクエリ情報、又は電子デバイスが自動的に生成したクエリ情報であってよく、かつ画像、文字、音声などの情報であってよい。
【0015】
クエリベクトルは、クエリ情報の量子化によるベクトルであってもよく、クエリ情報の固有ベクトルであってもよい。
【0016】
ステップS102として、対応するマルチメディアコンテンツに関連付けられるベクトルを複数含む分類を複数含む検索ライブラリから、クエリベクトルにマッチングする第1の分類を決定する。
【0017】
検索ライブラリは、ローカル又はリモートの検索ライブラリであってよく、かつ分散型検索ライブラリ又は非分散型検索ライブラリであってよい。
【0018】
検索ライブラリは、複数のベクトルを含む分類を複数含む。さらに、複数の分類は、クラスタリングアルゴリズムにより複数のベクトルをクラスタリングして得られた複数の分類であってよく、例えば、分散型k平均値クラスタリング(k-means)アルゴリズムにより複数の分類を取得する。
【0019】
なお、本願では、分類を粗分類器又はクラスタリングとして呼んでよい。
【0020】
クエリベクトルにマッチングする第1の分類は、分類内のベクトルがクエリベクトルにマッチングする1つ以上の分類であってよく、ここでのマッチングとは、類似するか又はベクトル残差の小さいことを意味してよい。
【0021】
本願では、ベクトルが対応するマルチメディアコンテンツに関連付けられることは、各マルチメディアコンテンツが1つ以上のベクトルに関連付けられることであってよく、かつマルチメディアコンテンツに関連付けられるベクトルは、マルチメディアコンテンツの関連情報を量子化して得られたベクトルであってよく、例えば、キーワード、記載情報、ラベル、画像コンテンツ、名称などの情報を量子化して得られたベクトルである。又は、マルチメディアコンテンツの固有ベクトルであってよい。
【0022】
本願では、マルチメディアコンテンツは、画像、ビデオ又はテキストであってもよく、画像と、ビデオと、テキストとの間の組み合わせであってもよい。
【0023】
ステップS103として、第1の分類において、クエリベクトルにマッチングするターゲットベクトルをクエリし、かつターゲットベクトルに対応するマルチメディアコンテンツを取得する。
【0024】
第1の分類において、クエリベクトルにマッチングするターゲットベクトルをクエリするステップは、第1の分類において、クエリベクトルにマッチングする1つ以上のベクトルをクエリするステップであってもよい。ここでのマッチングは、類似度マッチング又は残差マッチングであってよく、例えば、残差マッチングである。
【0025】
好ましくは、近似最近傍探索(Approximate Nearest Neighbor、ANN)の方式を使用して第1の分類において上記ターゲットベクトルを決定することができる。
【0026】
ターゲットベクトルを決定すると、それに関連付けられるマルチメディアコンテンツをさらに決定することができる。
【0027】
本願は、マルチメディアコンテンツの関連ベクトルを検索ライブラリのインデックスとし、かつ分類を予め決定して、分類において検索することにより、検索効率を向上させることを実現することができる。
【0028】
また、本願において使用されるベクトルは、w2vモデル、bertモデル又はernieモデルなどのモデルによって得られたベクトルであってもよい。ベクトルを使用して検出を行うため、類似度の計算をより正確にし、リコールの正確率をさらに向上させる。さらに、ベクトルによりマルチメディアコンテンツを検索するため、検索際に転置インデックスの方式を使用して力まかせ計算を避け、最終的なマルチメディアコンテンツをリコールすることを実現することができる。
【0029】
なお、本願は、広告設定シーンに適用されてもよく、当然のことながら、これに限定されるものではなく、他のマルチメディアコンテンツの検索のシーンに適用されてもよい。
【0030】
さらに、上記のマルチメディアコンテンツの検索方法は、サーバ、コンピュータ、携帯電話などの電子デバイスに適用することができる。
【0031】
好ましい実施形態として、検索ライブラリから、クエリベクトルにマッチングする第1の分類を決定するステップは、検索ライブラリ内の複数の分類の中心点ベクトルとクエリベクトルとの残差をそれぞれ計算し、かつ残差に基づいて第1の分類を決定することを含み、検索ライブラリ内の各分類は、中心点ベクトルを含んでいてもよい。
【0032】
第1の分類は、複数の分類のうちの、残差が最も小さい1つ以上の分類、又は残差に基づく順序付けにおける最初のN個の分類であってもよい。さらに、残差を中心点ベクトルとクエリベクトルとの間の距離、例えば、対称的な距離(SDC)又は非対称的な距離(ADC)として理解してもよい。さらに、第1の分類は、残差に対してローカル回転(local rotation)を行って最初のN個の分類を採用するものであってもよい。ローカル回転が採用する回転ベクトルのノルムは1であってもよく、このようにADCを使用して順序付けるとき、回転後に最初のN個の分類をADC順序付けとして採用することは、既存の順序と同等である。
【0033】
最も小さい1つ以上の分類、又は残差に基づく順序付けにおける最初のN個の分類について、本実施形態においては、クエリベクトルと中心点ベクトルとの残差を計算するだけで、第1の分類を決定することができるため、計算量を削減して、検索効率をさらに向上させることができる。
【0034】
好ましくは、検索ライブラリのターゲット分類の中心点ベクトルは、ターゲット分類に含まれる全てのベクトルの和及び/又はターゲット分類に含まれるベクトル数量に基づいて決定されるものであり、ターゲット分類は、上記検索ライブラリ内のいずれか1つの分類であってもよい。
【0035】
ターゲット分類に含まれる全てのベクトルの和及び/又はターゲット分類に含まれるベクトル数量に基づいて決定されるものは、分類の反復プロセスにおいて、ターゲット分類に含まれる全てのベクトルの和及び/又はターゲット分類に含まれるベクトル数量に基づいて決定された中心点ベクトルの変化量、例えば、距離の残差であってもよい。例えば、各分類に対して1つの中心点ベクトルを予め選択した後に、分類の反復プロセスにおいて、分類に含まれる全てのベクトルの和及び分類に含まれるベクトル数量に基づいて中心点ベクトルの変化量を計算して、新たな中心点ベクトルを決定する。また、ベクトルと中心点との距離については、各ベクトルを幾つかのセグメントに分け(中心点ベクトルに対しても同じ操作を行う)、各セグメントから中心点ベクトルの対応するセグメントまでの距離の和を計算して、セグメントから中心点ベクトルまでの距離を得ることができ、このように異なるセグメントのベクトルをそれぞれコードすることにより検索効率を向上させることができる。
【0036】
図2に示されるように、テーブル(例えば、elf_table)において記憶されているものは、分類の中心点のid、分類内の全てのベクトルの和、及び分類内のベクトルの本数を含む分類の中心点に関する記載情報である。分散型システムでは、各ノードは、テーブルにおいて記憶されている全ての分類の中心点を独立に取得し、分類内の全てのベクトルの和及び/又はベクトルの本数に基づいて各中心点(又はクラスター重心点と呼ばれる)を計算する。新たな中心点を計算するとき、本ノード全てのベクトルの中心点の変化量を順次計算する。ここで中心点を再計算することなく、中心点の変化量のみを計算し、このように、まず、中心点を毎回再計算するときにベクトルのシリアル化及び逆シリアル化と統合による時間のオーバーヘッドを避け、次に、毎回反復後にどれくらいのベクトルが中心点で変化するかを記録しやすく、かつこれを条件としてアルゴリズムが収束したか否かを判断する。
【0037】
また、検索ライブラリのターゲット分類の中心点ベクトルについては、ターゲット分類に含まれる全てのベクトルの和及び/又はターゲット分類に含まれるベクトル数量に基づいて分類内の中心に位置するベクトルを決定することができる。
【0038】
本実施形態においては、中心点ベクトルは、ターゲット分類に含まれる全てのベクトルの和及びターゲット分類に含まれるベクトル数量に基づいて決定されるため、反復時に中心点ベクトルをタイムリーに更新することを保証することができる。
【0039】
なお、本願では、分類の中心点ベクトルにより第1の分類を決定することに限定されず、例えば、各分類の他のコンテンツ、例えば、分類の特徴情報などに基づいて第1の分類を決定してもよい。
【0040】
好ましい実施形態として、第1の分類において、クエリベクトルにマッチングするターゲットベクトルをクエリし、かつターゲットベクトルに対応するマルチメディアコンテンツを取得するステップは、クエリベクトルと第1の分類内の複数のサブ中心ベクトル(又は副中心点ベクトルと呼ばれる)との残差を計算し、かつ残差に基づいて複数のサブ中心ベクトルのうちの、1以上の整数であるN個のサブ中心ベクトルをクエリベクトルにマッチングするターゲットベクトルとすることと、ターゲットベクトルに対応するマルチメディアコンテンツを取得することとを含んでいてもよい。
【0041】
本実施形態においては、各分類は、1つの中心点ベクトルを含み、複数のサブ中心点ベクトルをさらに含み、即ち1つの分類は、2つのレベルの中心点ベクトルを含む。また、各中心点ベクトルは、1つ以上のベクトルに対応してよい。
【0042】
同様に、残差を副中心点ベクトルとクエリベクトルとの間の距離、例えば、対称的な距離(SDC)又は非対称的な距離(ADC)として理解してよい。
【0043】
残差に基づいて複数のサブ中心ベクトルのうちのN個のサブ中心ベクトルをクエリベクトルにマッチングするターゲットベクトルとすることは、残差に基づいて複数のサブ中心ベクトルを残差に基づいて順序付けて最初のN個のサブ中心ベクトルを採用する。
【0044】
本実施形態においては、残差に基づいてターゲットベクトルを決定するため、ターゲットベクトルを正確に決定することができるとともに、計算量を削減することができる。
【0045】
さらに、クエリベクトルとサブ中心ベクトル(又は検索対象ベクトルと呼ばれる)との距離を計算するとき、非対称的な距離(ADC)を優先的に使用して測定を完了する。例えば、クエリベクトルx及びサブ中心ベクトルyに対して、xとyとの間の距離の代わりに、xと量子化後のyを示すq(y)とを使用する。量子化後のq(y)の個数がサブ量子化器の個数のみに関連付けられるため、x及びq(y)をルックアップテーブルとして示して速いクエリ速度を実現することができる。
【0046】
なお、本願では、分類のサブ中心点ベクトルによりターゲットベクトルを決定することに限定されず、例えば、サブ中心ベクトルを計算せずに、分類の各ベクトルとクエリベクトルとの残差を直接的に計算して最終的なターゲットベクトルを決定してもよい。
【0047】
好ましい実施形態として、クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであり、検索ライブラリ内のベクトルは、回転して量子化されたベクトルであり、かつ回転前に、分類中心の中心点ベクトルによりベクトル中心化処理が行われてもよい。
【0048】
クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであることは、クエリ情報のベクトルを回転ベクトルにより回転させて、直積量子化(Product Quantization、PQ)を行って、クエリベクトルを得たことであってもよい。回転ベクトルは、ノルムが1であってもよい。
【0049】
検索ライブラリ内のベクトルは、分類中心ベクトルを使用して全てのベクトルを順次通過させ、各ベクトルに対して中心化処理を行うベクトル中心化と、まず各ノード内に計算し、同じ分類でのベクトル内積値を積算し、検索ライブラリの新たなテーブルに更新し、次に各ノードが最終的な共分散の推定を得て共分散行列を計算する共分散行列の計算と、行列に対して固有値分解を行って固有値と固有ベクトルを得て、転置行列R、即ち回転のための行列を構築するプロセスと、転置行列Rを使用して分類での全てのベクトルを新たな空間に投影し、即ちベクトルを転置行列Rに掛けるプロセスと、新たな空間内のベクトルに対してPQ量子化を行い、検索ライブラリ内の各ベクトルをさらに得るプロセスと、により得ることができる。
【0050】
上記の共分散行列は、下式により計算されてもよい。
【0051】
【数1】
【0052】
ここで、covは、共分散行列を表し、cは、分類の内の全てのベクトル内積の和であり、nは、分類でのベクトル本数であり、vは、分類の中心点ベクトルである。
【0053】
なお、異なる分類において、異なる共分散行列を算出して、異なる回転をさらに完了する。転置行列Rを使用して分類での全てのベクトルを新たな空間に投影するプロセスは、検索ライブラリ内のベクトルの回転である。
【0054】
ベクトル中心化、共分散行列の計算、及び新たな空間に投影することは、ノード間で並行して(並行粒度がトレーニングデータである)分散的に行われてよい。このように、ノード数の計算を増加することにより、大規模データセットのインデックス構築をサポートするため、短時間でインデックスライブラリ構築と検索マッチングとを完了することができる。
【0055】
各ノードが最終的な共分散の推定を得て共分散行列を計算することと、転置行列Rを構築することについては、各ノードにより、一部の分類中心点ベクトルのみを計算して並行してもよい。
【0056】
なお、検索ライブラリ内のベクトルは、いずれも予め設定されたものであり、例えば、トレーニングプロセスにおいて各ベクトルを決定する。
【0057】
本実施形態においては、クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであり、検索ライブラリ内のベクトルは、回転して量子化されたベクトルであり、かつ回転前に、分類中心の中心点ベクトルによりベクトル中心化処理が行われた。このように、ベクトルに対してローカル好適化(又はローカル最適化と呼ばれる)処理を行うことにより、計算量をさらに削減し、検索効率をさらに向上させることができる。
【0058】
また、本願では、検索ライブラリ内のベクトルは、ローカル最適の直積量子化(LOPQ)アルゴリズムによって直接的に得られてもよい。
【0059】
また、本願では、検索ライブラリ内のマルチメディアコンテンツは、検索ライブラリの分類前にマルチメディアコンテンツのユーザIDを拡張して、より多くのユーザのマルチメディアコンテンツを取得する。例えば、より多くのユーザの広告画像を取得して、マルチメディアコンテンツシーンの好適化を実現し、検索が優れた拡張可能性及び汎用性を備えるという効果を達成することができるものであってもよい。即ち分類を行う前にレイヤ(layer)を追加して、より多くのマルチメディアコンテンツシーンを取得する。その後に制約条件に基づいて分類を行い、さらに分類において単独のLOPQリコールを行うことができる。それにより先にリコールして後にスクリーニングするという方式を変更し、制約条件シーンでのリコール率を向上させる。
【0060】
本願は、マルチメディアコンテンツの関連ベクトルを検索ライブラリのインデックスとし、かつ分類を先に決定し、次に分類において検索を行うことにより、検索効率を向上させることを実現することができる。
【0061】
図3を参照すると、図3は、本願に係るマルチメディアコンテンツの検索装置の構造図である。
マルチメディアコンテンツの検索装置300は、図3に示されるように、クエリ情報のクエリベクトルを取得する第1の取得モジュール301と、対応するマルチメディアコンテンツに関連付けられるベクトルを複数含む分類を複数含む検索ライブラリから、クエリベクトルにマッチングする第1の分類を決定する決定モジュール302と、第1の分類において、クエリベクトルにマッチングするターゲットベクトルをクエリし、かつターゲットベクトルに対応するマルチメディアコンテンツを取得する第2の取得モジュール303とを備える。
【0062】
好ましくは、決定モジュール302は、検索ライブラリ内の複数の分類の中心点ベクトルとクエリベクトルとの残差をそれぞれ計算し、かつ残差に基づいて第1の分類を決定し、検索ライブラリ内の各分類は、中心点ベクトルを含んでいてもよい。
【0063】
好ましくは、検索ライブラリのターゲット分類の中心点ベクトルは、ターゲット分類に含まれる全てのベクトルの和及び/又はターゲット分類に含まれるベクトル数量に基づいて決定されるものであり、ターゲット分類は、検索ライブラリ内のいずれか1つの分類であってもよい。
【0064】
好ましくは、第2の取得モジュール303は、クエリベクトルと第1の分類内の複数のサブ中心ベクトルとの残差を計算し、かつ残差に基づいて複数のサブ中心ベクトルのうちの、1以上の整数であるN個のサブ中心ベクトルをクエリベクトルにマッチングするターゲットベクトルとし、ターゲットベクトルに対応するマルチメディアコンテンツを取得してもよい。
【0065】
好ましくは、クエリベクトルは、クエリ情報のベクトルを回転させ量子化したベクトルであり、検索ライブラリ内のベクトルは、回転して量子化されたベクトルであり、かつ回転前に、分類中心の中心点ベクトルによりベクトル中心化処理が行われてもよい。
【0066】
本実施例に係るマルチメディアコンテンツの検索装置は、上記のマルチメディアコンテンツの検索方法の実施例において実現された様々なプロセスを実現することができ、かつ同じ有益な効果を達成することができ、重複を避けるために、ここでは説明を省略する。
【0067】
本願の実施例において、本願は、電子デバイス及び記憶媒体を提供する。
【0068】
図4は、本願の実施例に係るマルチメディアコンテンツの検索方法の電子デバイスのブロック図である。
電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレームコンピュータ、及びその他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことを意図する。電子デバイスは、パーソナルデジタルアシスタント、セルラー電話、スマートフォン、ウェアラブルデバイス及びその他の類似の計算装置などの様々な形態のモバイル装置を表してもよい。本明細書に示すコンポーネント、それらの接続及び関係、並びにそれらの機能は、単なる例に過ぎず、本明細書で説明及び/又は要求された本願の実現を限定することを意図しない。
【0069】
図4に示されるように、電子デバイスは、少なくとも1つ以上のプロセッサ401と、メモリ402と、各コンポーネントを接続し高速インタフェース及び低速インタフェースを有するインタフェースとを備える。
各コンポーネントは、異なるバスを利用して互いに接続され、かつ共通マザーボード上に取り付けられてもよく、必要に応じて他の方式で取り付けられてもよい。プロセッサは、電子デバイス内で実行された、外部入力/出力装置(例えば、インタフェースに結合された表示デバイス)上にGUIのグラフィック情報を表示するようにメモリ内又はメモリ上に記憶されている命令を含む命令を処理することができる。他の実施形態では、必要があれば、複数のプロセッサ及び/又は複数のバスを、複数のメモリ及び複数のメモリと共に使用してもよい。同様に、複数の電子デバイスを接続してもよく、各デバイスは、一部の必要な操作を提供する(例えば、サーバアレイ、1組のブレードサーバ、又はマルチプロセッサシステムとする)。図4においては、単一のプロセッサ401を用いたものを一例とする。
【0070】
メモリ402は、本願に係る非一時的なコンピュータ読み取り可能な記憶媒体である。
メモリ402には、少なくとも1つのプロセッサに実行可能で、上記のマルチメディアコンテンツの検索方法を少なくとも1つのプロセッサに実行させる命令が記憶されている。本願の非一時的なコンピュータ記憶媒体には、本願に係るマルチメディアコンテンツの検索方法をコンピュータに実行させるコンピュータ命令が記憶されている。
【0071】
メモリ402は、非一時的なコンピュータ読み取り可能な可読記憶媒体として、非一時的なソフトウェアプログラム、非一時的なコンピュータ実行可能なプログラム及びモジュール、例えば、上記のマルチメディアコンテンツの検索方法に対応するプログラム命令/モジュール(例えば、図3に示す第1の取得モジュール301、決定モジュール302及び第2の取得モジュール303)を記憶する。
プロセッサ401は、メモリ402内に記憶されている非一時的なソフトウェアプログラム、命令及びモジュールを実行することにより、サーバの様々な機能アプリケーション及びデータ処理を実行して、上記のマルチメディアコンテンツの検索方法におけるマルチメディアコンテンツの検索方法を実現する。
【0072】
メモリ402は、オペレーティングシステム及び機能に必要な少なくとも1つのアプリケーションプログラムを記憶可能なプログラム記憶領域と、マルチメディアコンテンツの検索方法に係る電子デバイスの使用により作成されたデータなどを記憶可能なデータ記憶領域とを含んでいてもよい。また、メモリ402は、高速ランダムアクセスメモリを含んでいてもよく、少なくとも1つの磁気ディスクメモリデバイス、フラッシュメモリデバイス、又は他の非一時的な固体メモリデバイスなどの非一時的なメモリを含んでいてもよい。他の実施例では、メモリ402は、好ましくは、プロセッサ401に対して遠隔に配置されたメモリを含み、これらのリモートメモリは、ネットワークを介してマルチメディアコンテンツの検索方法の電子デバイスに接続されてもよい。ネットワークの一例としては、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク及びそれらの組み合わせを含むが、これらに限定されない。
【0073】
マルチメディアコンテンツの検索方法の電子デバイスは、入力装置403及び出力装置404をさらに備えていてもよい。プロセッサ401、メモリ402、入力装置403及び出力装置404は、バス又は他の方式で接続されてもよく、図4においては、バスによる接続を一例とする。
【0074】
入力装置403は、入力された数字又は文字情報を受信するとともに、マルチメディアコンテンツの検索方法の電子デバイスのユーザ設定及び機能制御に関連するキー信号入力を生成することができ、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、ポインティングスティック、1つ以上のマウスボタン、トラックボール、ジョイスティックなどの入力装置である。出力装置404は、表示デバイス、補助照明装置(例えば、LED)及び触覚フィードバック装置(例えば、振動モータ)などを含んでいてもよい。表示デバイスは、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ及びプラズマディスプレイなどを含んでいてもよいが、これらに限定されない。他の実施例として、表示デバイスは、タッチスクリーンであってもよい。
【0075】
ここで説明されたシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、特定用途向けASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせにおいて実現されてよい。これらの様々な実施形態は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行及び/又は解釈されてよい1つ以上のコンピュータプログラムにおいて実施されるものを含んでいてもよい。プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置及び少なくとも1つの出力装置からデータと命令を受信し、かつデータと命令を記憶システム、少なくとも1つの入力装置及び少なくとも1つの出力装置に伝送することができる。
【0076】
これらの計算プログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれる)は、プログラマブルプロセッサの機械命令を含み、かつ高レベルなプロセス及び/又はオブジェクト指向のプログラミング言語、及び/又はアセンブリ/機械言語により実施することができる。本明細書で使用されるように、用語「機械可読媒体」及び「コンピュータ可読媒体」とは、機械命令及び/又はデータをプログラマブルプロセッサに提供する任意のコンピュータプログラム製品、デバイス、及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジック装置(PLD))を意味し、機械可読信号としての機械命令を受信する機械可読媒体を含む。用語「機械可読信号」とは、機械命令及び/又はデータをプログラマブルプロセッサに提供するための任意の信号を指す。
【0077】
ユーザとの対話を提供するために、コンピュータ上で、ここで説明されたシステム及び技術を実施することができ、コンピュータは、ユーザに情報を表示する表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニター)と、キーボード及びポインティング装置(例えば、マウス又はトラックボール)とを有し、ユーザは、キーボード及びポインティング装置により、入力をコンピュータに提供することができる。他の種類の装置も、ユーザとの対話を提供してよく、例えば、ユーザに提供されるフィードバックは、任意の形式の感覚フィードバック(例えば、視覚的フィードバック、聴覚的フィードバック又は触覚フィードバック)であってよく、任意の形式(サウンド入力、音声入力又は触覚入力を含む)を用いてユーザからの入力を受信することができる。
【0078】
ここで説明されたシステム及び技術は、バックエンドコンポーネントを含む計算システム(例えば、データサーバとする)、ミドルウェアコンポーネントを含む計算システム(例えば、アプリケーションサーバ)、フロントエンドコンポーネントを含む計算システム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータであり、ユーザは、グラフィカルユーザインタフェース又はウェブブラウザを介して、ここで説明されたシステム及び技術の実施形態と対話することができる)、あるいはこのようなバックグラウンドコンポーネント、ミドルウェアコンポーネント又はフロントエンドコンポーネントの任意の組み合わせを含む計算システムにおいて実施することができる。システムのコンポーネントは、任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)により互いに接続することができる。通信ネットワークの一例としては、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)及びインターネットを含む。
【0079】
コンピュータシステムは、クライアント及びサーバを含んでいてもよい。クライアントとサーバとは、一般的に、互いに離れ、通常、通信ネットワークを介して対話する。クライアントとサーバとの関係は、対応するコンピュータ上で実行され、互いにクライアント-サーバの関係を有するコンピュータプログラムによって生成される。
【0080】
本願の実施例の技術手段によれば、候補テーマ概念の品詞シリアルに基づいて候補テーマ概念をフィルタリングすることにより、テーマ概念の掘り起こしに必要な人件費を下げる。
【0081】
上記様々な形式のフローを使用して、ステップを再順序付けたり、追加したり、削除したりしてよいことを理解されたい。例えば、本願に記載された各ステップは、並列的に実行されてもよく、順次実行されてもよく、異なる順序で実行されてもよく、本願に開示されている技術手段の所望の結果を達成できる限り、本明細書はここで限定するものではない。
【0082】
上記発明を実施するための形態は、本願の保護範囲を限定するものではない。設計要件及びその他の要因に応じて、様々な修正、組み合わせ、部分組み合わせ及び置換を行うことができることは、当業者に理解されるところである。本願の精神及び原則内で行われるいかなる修正、同等置換、改善などは、いずれも本願の保護範囲に含まれるべきである。

図1
図2
図3
図4