特開2020-61147(P2020-61147A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ネイバー コーポレーションの特許一覧

特開2020-61147CNN基盤イメージ検索方法および装置
<>
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000010
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000011
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000012
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000013
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000014
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000015
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000016
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000017
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000018
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000019
  • 特開2020061147-CNN基盤イメージ検索方法および装置 図000020
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2020-61147(P2020-61147A)
(43)【公開日】2020年4月16日
(54)【発明の名称】CNN基盤イメージ検索方法および装置
(51)【国際特許分類】
   G06F 16/583 20190101AFI20200319BHJP
   G06F 16/55 20190101ALI20200319BHJP
   G06F 16/532 20190101ALI20200319BHJP
   G06T 7/00 20170101ALI20200319BHJP
【FI】
   G06F16/583
   G06F16/55
   G06F16/532
   G06T7/00 350C
【審査請求】有
【請求項の数】20
【出願形態】OL
【全頁数】21
(21)【出願番号】特願2019-186779(P2019-186779)
(22)【出願日】2019年10月10日
(31)【優先権主張番号】10-2018-0121175
(32)【優先日】2018年10月11日
(33)【優先権主張国】KR
(31)【優先権主張番号】10-2019-0015457
(32)【優先日】2019年2月11日
(33)【優先権主張国】KR
(71)【出願人】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】趙 根熙
(72)【発明者】
【氏名】宋 ▲ちょる▼▲ふぁん▼
(72)【発明者】
【氏名】徐 在權
(72)【発明者】
【氏名】金 尚範
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096EA39
5L096FA62
5L096HA11
5L096JA05
5L096JA11
5L096KA04
5L096MA07
(57)【要約】
【課題】 畳み込みニューラルネットワーク(CNN)に基づいてイメージを検索する技術に関する。
【解決手段】 CNNの全結合層から抽出された特徴をイメージ特徴を示すために使用し、検索しようとするテキストに対して少なくとも1つの代表イメージを事前に登録しておき、少なくとも1つの代表イメージと少なくとも1つの候補イメージとの類似度を計算し、計算された類似度を検索ランキングに反映することができる。また、検索意図に対する分類名を予め定めず、CNN特徴を利用して大量のイメージをクラスタリングすることができる。
【選択図】 図2
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサを含むコンピュータ装置のイメージ検索方法であって、
前記少なくとも1つのプロセッサにより、クエリに対する検索結果に含まれた少なくとも1つの候補イメージを確認する段階、
前記少なくとも1つのプロセッサにより、前記クエリと対応する主題に対する少なくとも1つの代表イメージの特徴値を取得する段階、
前記少なくとも1つのプロセッサにより、前記少なくとも1つの代表イメージの特徴値および前記少なくとも1つの候補イメージの特徴値を利用して前記少なくとも1つの候補イメージそれぞれに対して前記少なくとも1つの代表イメージそれぞれに対するイメージ類似度を計算する段階、および
前記少なくとも1つのプロセッサにより、前記計算されたイメージ類似度を前記検索結果における前記少なくとも1つの候補イメージのランキングに反映する段階
を含む、イメージ検索方法。
【請求項2】
前記イメージ類似度を計算する段階は、
前記少なくとも1つの代表イメージの特徴値と前記少なくとも1つの候補イメージの特徴値とのコサイン距離を利用して前記イメージ類似度を計算する、
請求項1に記載のイメージ検索方法。
【請求項3】
前記ランキングに反映する段階は、
前記少なくとも1つの候補イメージそれぞれに対し、テキスト基盤検索モデリング技法によって得られるテキスト類似度に前記計算されたイメージ類似度を適用することで前記少なくとも1つの候補イメージそれぞれのスコアを計算し、前記計算されたスコアにしたがって前記テキスト類似度による前記少なくとも1つの候補イメージの基本順位を再順位化する、
請求項1に記載のイメージ検索方法。
【請求項4】
ユーザの意図によって予め定義された複数のカテゴリに分類されたイメージを利用してイメージ基盤検索モデルが入力されるイメージに対応するカテゴリを決定するように前記イメージ基盤検索モデルで学習する段階、および
前記ユーザのクエリによって提供されたイメージのうちで前記ユーザによって選択されたイメージを前記イメージ基盤検索モデルに入力し、前記選択されたイメージに対応するカテゴリを前記ユーザの意図として決定する段階
をさらに含む、請求項1に記載のイメージ検索方法。
【請求項5】
前記ユーザのクエリおよび前記選択されたイメージと関連するクリック情報に基づいて前記イメージ基盤検索モデルを検証する段階
をさらに含む、請求項4に記載のイメージ検索方法。
【請求項6】
前記少なくとも1つのプロセッサにより、複数のイメージそれぞれの特徴値を利用して前記複数のイメージを複数のクラスタにクラスタリングする段階
をさらに含み、
前記少なくとも1つの候補イメージを確認する段階は、
前記複数のクラスタのうち、前記クエリと対応するクラスタに含まれたイメージを前記候補イメージとして確認する、
請求項1に記載のイメージ検索方法。
【請求項7】
前記少なくとも1つの候補イメージを確認する段階は、
前記複数のクラスタそれぞれと対応するクエリパターンを記録し、前記複数のクラスタのうちで前記クエリに対して抽出されるクエリパターンに対応するクラスタに動的に加重値を付与する、
請求項6に記載のイメージ検索方法。
【請求項8】
前記少なくとも1つの候補イメージを確認する段階は、
前記複数のクラスタそれぞれに対応する主題を記録し、前記複数のクラスタのうちで前記クエリに対して抽出される主題に対応するクラスタに動的に加重値を付与する、
請求項6に記載のイメージ検索方法。
【請求項9】
前記少なくとも1つの候補イメージを確認する段階は、
前記複数のクラスタそれぞれに前記クエリによって検索されたイメージが含まれた数に基づいてクラスタに動的に加重値を付与する、
請求項6に記載のイメージ検索方法。
【請求項10】
イメージが追加される場合、前記追加されるイメージの特徴値と、前記複数のクラスタそれぞれが含むイメージの特徴値の中心値に基づき、前記追加されるイメージが含まれるクラスタを決定する段階
をさらに含む、請求項6に記載のイメージ検索方法。
【請求項11】
周期ごとに前記複数のイメージを再クラスタリングするか、または前記中心値をアップデートする段階
をさらに含む、請求項10に記載のイメージ検索方法。
【請求項12】
前記少なくとも1つの代表イメージの特徴値と前記少なくとも1つの候補イメージの特徴値それぞれは、前記少なくとも1つの代表イメージそれぞれ、さらに前記少なくとも1つの候補イメージそれぞれに対し、CNNを介して得られる特徴値を含む、
請求項1に記載のイメージ検索方法。
【請求項13】
請求項1〜12のうちのいずれか一項に記載のイメージ検索方法をコンピュータ装置に実行させる、コンピュータプログラム。
【請求項14】
請求項1〜12のうちのいずれか一項に記載のイメージ検索方法をコンピュータ装置に実行させるためのコンピュータプログラムが記録されている、コンピュータ読み取り可能な記録媒体。
【請求項15】
コンピュータ装置であって、
前記コンピュータ装置で読み取り可能な命令を実行するように実現される少なくとも1つのプロセッサ
を含み、
前記少なくとも1つのプロセッサにより、
クエリに対する検索結果に含まれた少なくとも1つの候補イメージを確認し、
前記クエリと対応する主題に対する少なくとも1つの代表イメージの特徴値を取得し、
前記少なくとも1つの代表イメージの特徴値および前記少なくとも1つの候補イメージの特徴値を利用して前記少なくとも1つの候補イメージそれぞれに対して前記少なくとも1つの代表イメージそれぞれに対するイメージ類似度を計算し、
前記計算されたイメージ類似度を利用して前記検索結果における前記少なくとも1つの候補イメージのランキングに反映する、
コンピュータ装置。
【請求項16】
前記少なくとも1つのプロセッサにより、
前記少なくとも1つの代表イメージの特徴値と前記少なくとも1つの候補イメージの特徴値とのコサイン距離を利用して前記イメージ類似度を計算する、
請求項15に記載のコンピュータ装置。
【請求項17】
前記少なくとも1つのプロセッサにより、
前記少なくとも1つの候補イメージそれぞれに対し、テキスト基盤検索モデリング技法によって得られるテキスト類似度に前記計算されたイメージ類似度を適用することで前記少なくとも1つの候補イメージそれぞれのスコアを計算し、前記計算されたスコアにしたがって前記テキスト類似度による前記少なくとも1つの候補イメージの基本順位を再順位化する、
請求項15に記載のコンピュータ装置。
【請求項18】
前記少なくとも1つのプロセッサにより、
ユーザの意図によって予め定義された複数のカテゴリに分類されたイメージを利用してイメージ基盤検索モデルが入力されるイメージに対応するカテゴリを決定するように前記イメージ基盤検索モデルで学習し、
前記ユーザのクエリによって提供されたイメージのうちで前記ユーザによって選択されたイメージを前記イメージ基盤検索モデルに入力し、前記選択されたイメージに対応するカテゴリを前記ユーザの意図として決定する、
請求項15に記載のコンピュータ装置。
【請求項19】
前記少なくとも1つのプロセッサにより、
複数のイメージを前記複数のイメージそれぞれの特徴値を利用して複数のクラスタにクラスタリングし、
前記複数のクラスタのうち、前記クエリと対応するクラスタに含まれたイメージを前記候補イメージとして確認する、
請求項15に記載のコンピュータ装置。
【請求項20】
前記少なくとも1つのプロセッサにより、
前記複数のクラスタそれぞれと対応するクエリパターンを記録し、前記複数のクラスタのうちで前記クエリに対して抽出されるクエリパターンに対応するクラスタに動的に加重値を付与するルールベースの検索方式、
前記複数のクラスタそれぞれに対応する主題を記録し、前記複数のクラスタのうちで前記クエリに対して抽出される主題に対応するクラスタに動的に加重値を付与するトピックモデリングの検索方式、および
前記複数のクラスタそれぞれに前記クエリによって検索されたイメージが含まれた数に基づいてクラスタに動的に加重値を付与する再順位化の検索方式
のうちの少なくとも1つの検索方式を利用して前記候補イメージを確認する、
請求項19に記載のコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【0001】
実施形態は、イメージを検索する方法および装置に関し、より詳細には、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)に基づいてイメージを検索する技術に関する。
【背景技術】
【0002】
イメージを生成および使用しようとする需要は、継続して増加し続けている。
【0003】
テキストを用いてイメージを検索する場合、例えば、検索エンジンの検索ウィンドウに特定のテキストを入力し、この検索結果としてイメージを得ようとする場合、該当のテキストと関連する文書に含まれたイメージが検索結果として表示されている。このような検索結果には、必要としないイメージや、テキストとは関連のないイメージが含まれることがあるので、意味のある検索結果を得るためにイメージ自体に対する分析が求められる。
【0004】
CNNを活用する技術として、教師あり学習(Supervised Learning)に基づく分類(classification)技術をイメージタギングに活用する技術が存在する。例えば、特許文献1は、弱教師あり学習を基盤とした機械学習方法およびその装置を開示している。しかし、このような従来技術の場合には、十分な学習データおよび再学習が求められる上に、モデルが変更される場合には大量の推論(inferencing)が求められるため、大量のイメージに対する検索は困難であった。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】韓国登録特許第10−1908680号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
検索結果として、ユーザの検索意図に適したイメージ検索結果を得ることができるようにする。
【課題を解決するための手段】
【0007】
少なくとも1つのプロセッサを含むコンピュータ装置のイメージ検索方法であって、前記少なくとも1つのプロセッサにより、クエリに対する検索結果に含まれた少なくとも1つの候補イメージを確認する段階、前記少なくとも1つのプロセッサにより、前記クエリと対応する主題に対する少なくとも1つの代表イメージの特徴値を取得する段階、前記少なくとも1つのプロセッサにより、前記少なくとも1つの代表イメージの特徴値および前記少なくとも1つの候補イメージの特徴値を利用して前記少なくとも1つの候補イメージそれぞれに対して前記少なくとも1つの代表イメージそれぞれに対するイメージ類似度を計算する段階、および前記少なくとも1つのプロセッサにより、前記計算されたイメージ類似度を前記検索結果における前記少なくとも1つの候補イメージのランキングに反映する段階を含む、イメージ検索方法を提供する。
【0008】
一側によると、前記イメージ類似度を計算する段階は、前記少なくとも1つの代表イメージの特徴値と前記少なくとも1つの候補イメージの特徴値とのコサイン距離(cosine distance)を利用して前記イメージ類似度を計算してよい。
【0009】
他の側面によると、前記ランキングに反映する段階は、前記少なくとも1つの候補イメージそれぞれに対し、テキスト基盤の検索モデリング技法によって得られたテキスト類似度に前記計算されたイメージ類似度を適用して前記少なくとも1つの候補イメージそれぞれのスコアを計算し、前記計算されたスコアにしたがって前記テキスト類似度による前記少なくとも1つの候補イメージの基本順位を再順位化(re−ranking)してよい。
【0010】
また他の側面によると、前記イメージ検索方法は、ユーザの意図によって予め定義された複数のカテゴリに分類されたイメージを利用してイメージ基盤検索モデルが入力されるイメージに対応するカテゴリを決定するように前記イメージ基盤検索モデルで学習する段階、および前記ユーザのクエリにしたがって提供されたイメージのうちで前記ユーザによって選択されたイメージを前記イメージ基盤検索モデルに入力し、前記選択されたイメージに対応するカテゴリを前記ユーザの意図として決定する段階をさらに含んでよい。
【0011】
また他の側面によると、前記イメージ検索方法は、前記ユーザのクエリおよび前記選択されたイメージと関連するクリック情報に基づいて前記イメージ基盤検索モデルを検証する段階をさらに含んでよい。
【0012】
また他の側面によると、前記イメージ検索方法は、前記少なくとも1つのプロセッサにより、複数のイメージを前記複数のイメージそれぞれの特徴値を利用して複数のクラスタにクラスタリングする段階をさらに含み、前記少なくとも1つの候補イメージを確認する段階は、前記複数のクラスタのうちで前記クエリと対応するクラスタに含まれたイメージを前記候補イメージとして確認してよい。
【0013】
また他の側面によると、前記少なくとも1つの候補イメージを確認する段階は、前記複数のクラスタそれぞれと対応するクエリパターンを記録し、前記複数のクラスタのうちで前記クエリに対して抽出されるクエリパターンと対応するクラスタに動的に加重値を付与してよい。
【0014】
また他の側面によると、前記少なくとも1つの候補イメージを確認する段階は、前記複数のクラスタそれぞれと対応する主題を記録し、前記複数のクラスタのうちで前記クエリに対して抽出される主題と対応するクラスタに動的に加重値を付与してよい。
【0015】
また他の側面によると、前記少なくとも1つの候補イメージを確認する段階は、前記複数のクラスタそれぞれに前記クエリに対して検索されたイメージが含まれた数に基づいてクラスタに動的に加重値を付与してよい。
【0016】
また他の側面によると、前記イメージ検索方法は、イメージが追加される場合、前記追加されるイメージの特徴値と、前記複数のクラスタそれぞれが含むイメージの特徴値の中心値に基づいて前記追加されるイメージが含まれるクラスタを決定する段階をさらに含んでよい。
【0017】
また他の側面によると、前記イメージ検索方法は、周期ごとに前記複数のイメージを再クラスタリングするか、前記中心値をアップデートする段階をさらに含んでよい。
【0018】
さらに他の側面によると、前記少なくとも1つの代表イメージの特徴値と前記少なくとも1つの候補イメージの特徴値それぞれは、前記少なくとも1つの代表イメージそれぞれ、さらに前記少なくとも1つの候補イメージそれぞれに対し、CNNを介して得られる特徴値を含んでよい。
【0019】
コンピュータ装置と結合して前記イメージ検索方法をコンピュータ装置に実行させるためにコンピュータ読み取り可能な記録媒体に記録されたコンピュータプログラムを提供する。
【0020】
前記イメージ検索方法をコンピュータ装置に実行させるためのコンピュータプログラムが記録されているコンピュータ読み取り可能な記録媒体を提供する。
【0021】
コンピュータ装置であって、前記コンピュータ装置で読み取り可能な命令を実行するように実現される少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサにより、クエリに対する検索結果に含まれた少なくとも1つの候補イメージを確認し、前記クエリと対応する主題に対する少なくとも1つの代表イメージの特徴値を取得し、前記少なくとも1つの代表イメージの特徴値および前記少なくとも1つの候補イメージの特徴値を利用して前記少なくとも1つの候補イメージそれぞれに対して前記少なくとも1つの代表イメージそれぞれに対するイメージ類似度を計算し、前記計算されたイメージ類似度を利用して前記検索結果における前記少なくとも1つの候補イメージのランキングに反映する、コンピュータ装置を提供する。
【発明の効果】
【0022】
検索結果として、ユーザの検索意図に適したイメージ検索結果を提供することができる。
【図面の簡単な説明】
【0023】
図1】本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。
図2】本発明の一実施形態における、CNN特徴を利用したイメージ類似度の計算方法の例を示した図である。
図3】本発明の一実施形態における、候補イメージの再順位化過程の例を示した図である。
図4】本発明の一実施形態における、検索フィルタの例を示した図である。
図5】本発明の一実施形態における、クラスタリング構造の例を示した図である。
図6】本発明の一実施形態における、クラスタにクラスタリングされたイメージの例を示した図である。
図7】本発明の一実施形態における、クラスタを検索ランキングに反映するための例を示した図である。
図8】イメージ検索における既存の重複排除方法の例を示した図である。
図9】本発明の一実施形態における、検索結果の多様性および検索コレクション(索引範囲)の縮小化のために改善された方法を説明するための図である。
図10】本発明の一実施形態における、イメージ検索方法の例を示したフローチャートである。
図11】本発明の一実施形態における、候補イメージ選定方式の例を示したフローチャートである。
【発明を実施するための形態】
【0024】
以下で、添付の図面を参照しながら、実施形態について詳しく説明する。各図面に提示された同じ参照符号は、同じ部材を示してよい。
【0025】
本発明の実施形態に係るイメージ検索方法は、以下で説明されるコンピュータ装置によって実行されてよい。例えば、コンピュータ装置においては、本発明の一実施形態に係るコンピュータプログラムがインストールされて実行されてよく、コンピュータ装置は、実行されるコンピュータプログラムの制御にしたがって本発明の一実施形態に係るイメージ検索方法を実行してよい。上述したコンピュータプログラムは、コンピュータ装置と結合してイメージ検索方法をコンピュータ装置に実行させるためにコンピュータ読み取り可能な記録媒体に記録されてよい。ここで、説明したコンピュータプログラムは、独立する1つのプログラムパッケージの形態を有してもよいし、独立する1つのプログラムパッケージの形態がコンピュータ装置に予めインストールされてオペレーティングシステムや他のプログラムパッケージと連係する形態を有してもよい。
【0026】
図1は、本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。一例として、本発明の実施形態に係るイメージ検索方法は、図1に示したコンピュータ装置100によって実行されてよい。
【0027】
このようなコンピュータ装置100は、図1に示すように、メモリ110、プロセッサ120、通信インタフェース130、および入力/出力インタフェース140を含んでよい。メモリ110は、コンピュータ読み取り可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、およびディスクドライブのような永続的大容量記録装置を含んでよい。ここで、ROMやディスクドライブのような永続的大容量記録装置は、メモリ110とは区分される別の永続的記録装置としてコンピュータ装置100に含まれてもよい。また、メモリ110には、オペレーティングシステムと、少なくとも1つのプログラムコードが記録されてよい。このようなソフトウェア構成要素は、メモリ110とは別のコンピュータ読み取り可能な記録媒体からメモリ110にロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー(登録商標)ドライブ、ディスク、テープ、DVD/CD−ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信インタフェース130を通じてメモリ110にロードされてもよい。例えば、ソフトウェア構成要素は、ネットワーク160を介して受信されるファイルによってインストールされるコンピュータプログラムに基づいてコンピュータ装置100のメモリ110にロードされてよい。
【0028】
プロセッサ120は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ110または通信インタフェース130によって、プロセッサ120に提供されてよい。例えば、プロセッサ120は、メモリ110のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【0029】
通信インタフェース130は、ネットワーク160を介してコンピュータ装置100が他の装置(一例として、上述した記録装置)と互いに通信するための機能を提供してよい。一例として、コンピュータ装置100のプロセッサ120がメモリ110のような記録装置に記録されたプログラムコードにしたがって生成した要求や命令、データ、ファイルなどが、通信インタフェース130の制御にしたがってネットワーク160を介して他の装置に伝達されてよい。これとは逆に、他の装置からの信号や命令、データ、ファイルなどが、ネットワーク160を経てコンピュータ装置100の通信インタフェース130を通じてコンピュータ装置100に受信されてよい。通信インタフェース130を通じて受信された信号や命令、データなどは、プロセッサ120やメモリ110に伝達されてよく、ファイルなどは、コンピュータ装置100がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。
【0030】
入力/出力インタフェース140は、入力/出力装置150とのインタフェースのための手段であってよい。例えば、入力装置は、マイク、キーボード、またはマウスなどの装置を、出力装置は、ディスプレイやスピーカのような装置を含んでよい。他の例として、入力/出力インタフェース140は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置150は、コンピュータシステム100と1つの装置で構成されてもよい。
【0031】
また、他の実施形態において、コンピュータ装置100は、図1の構成要素よりも少ないか多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、コンピュータ装置100は、上述した入力/出力装置150のうちの少なくとも一部を含むように実現されてもよいし、トランシーバやデータベースなどのような他の構成要素をさらに含んでもよい。
【0032】
通信方式が制限されることはなく、ネットワーク160が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を活用する通信方式だけでなく、ブルートゥース(Bluetooth(登録商標))やNFC(Near Field Communication)のような近距離無線通信が含まれてもよい。例えば、ネットワーク160は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。また、ネットワーク160は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター−バスネットワーク、ツリーまたは階層的(hierarchical)ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでよいが、これに制限されることはない。
【0033】
CNNの全結合層(Fully Connected Layer)から抽出された特徴(Feature)は、イメージを適切に埋め込むこと(embedding)ができるため、イメージ特徴を現わすためにCNN特徴が使用されてよい。イメージを適切に埋め込んでいるCNN特徴は、イメージ類似度計算および確率モデルに対する結合を容易に行うことができる。
【0034】
全結合層は、一般的な神経網構造のように、以前レイヤのすべてのアクティベーション(activation)と結合している。以前の畳み込み層(convolution layer)から抽出された特徴値が、高次元ベクトル(一般的に、256〜4096次元)の値で表現されてよい。
【0035】
検索しようとするテキストに対して少なくとも1つの代表イメージが事前に登録されてよい。このとき、少なくとも1つの代表イメージと少なくとも1つの候補イメージの類似度が計算されてよく、計算された類似度が検索ランキングに反映されてよい。
【0036】
図2は、本発明の一実施形態における、CNN特徴を利用したイメージ類似度の計算方法の例を示した図である。イメージ類似度を計算するために、1つの主題(一例として「りんご(apple)」)に対する代表イメージの集合Rと候補イメージの集合Cが存在すると仮定する。ここで、主題とは、検索のためのクエリ(またはキーワードや検索語)に対応してよい。図2では、集合Rには集合の主題を示すテキスト(一例として「りんご」)とn個の代表イメージが含まれ、集合Cにはm個の候補イメージが含まれる例を示している。ここで、nとmは、自然数であってよい。このとき、候補イメージj(jは、m以下の自然数)の代表イメージの集合Rに対するイメージ類似度ImageSimilarity(R、j)は、以下の数式(1)のように計算されてよい。
【0037】
【数1】
ここで、rは代表イメージi(iは、n以下の自然数)のCNN特徴を、cは候補イメージjのCNN特徴をそれぞれ意味してよい。
【0038】
一例として、コンピュータ装置100は、候補イメージjの代表イメージの集合Rに対するイメージ類似度を計算するために、代表イメージの集合Rに含まれるイメージそれぞれのCNN特徴(r、r、・・・、r)と候補イメージjのCNN特徴(c)を抽出してイメージ類似度の計算のためのパラメータを取得してよく、取得したパラメータを数式(1)に反映してイメージ類似度(R、c)を計算してよい。
【0039】
代表イメージは複数であってよく、必要に応じて重要度が異なるように設定されてもよい。例えば、集合Rで優先的に配列される代表イメージ1は、他の代表イメージに比べて高い代表性を有するものであってよく、この場合、相対的に高い加重値が付与されてよい。この場合、候補イメージjの集合Rに対するイメージ類似度は、以下の数式(2)のように計算されてよい。
【0040】
【数2】
【0041】
ここで、wは、代表イメージiの加重値(代表イメージiのCNN特性rに対する加重値)であってよい。
【0042】
このとき、コンピュータ装置100は、n個の代表イメージを使用してm個の候補イメージのランキングを再順位化してよい。
【0043】
図3は、本発明の一実施形態における、候補イメージの再順位化過程の例を示した図である。代表イメージ310は、上述したように、検索のためのクエリ(または、キーワードや検索語)に対応する主題と、少なくとも1つの代表イメージの集合Rとを含んでよい。一例として、管理者は、管理ツール320を利用して主題と集合Rを代表イメージ310として登録してよい。この場合、管理者は、1つの主題に対して少量の代表イメージを登録するだけでよいため、それぞれのイメージに対してラベル(label)を追加する負担を軽減することができる。
【0044】
このとき、イメージの再順位化のためにランカー(Ranker)330が実現されてよい。一例として、検索サーバ340がクエリに対する検索結果としてのイメージをランカー330に伝達すると、ランカー330は伝達されたイメージの再順位化を処理した後、再順位化がなされたイメージの索引350を生成してよい。この場合、検索サーバ340は、索引350の順位にしたがって整列されたイメージを含む検索結果を提供してよい。実施形態によって、ランカー330は、検索サーバ340に含まれる形態で実現されてもよいし、検索サーバ340とは別の装置で実現されてネットワークを介して検索サーバ340と通信する形態で実現されてもよい。
【0045】
このとき、ランカー330は、以下の数式(3)を利用してクエリqに対するイメージjのスコアscore(q、j)を計算してもよく、計算されたスコアにしたがってイメージを再順位化してもよい。
【0046】
【数3】
【0047】
ここで、数式(3)は、クエリqに対するイメージiの基本順位のためのテキスト類似度であるBaseRanking(q、i)にイメージiの代表イメージの集合Rに対するイメージ類似度であるImageSimilarity(R、j)を適用(合算)してクエリqに対するイメージiのスコアを計算することを示している。このとき、BaseRanking(q、i)は、クエリqとイメージiを含む文書とのテキスト類似度を示しており、この類似度を計算するためには、周知のテキスト基盤の検索モデリング技法(一例として、BIM、TF−IDF、BM25など)のうちの少なくとも1つが利用されてよい。ImageSimilarity(R、j)は、上述したように、数式(1)または数式(2)のように計算されてよい。
【0048】
以下では、CNNを利用してユーザ要求を分類する方法について説明する。
【0049】
図4は、本発明の一実施形態における、検索フィルタの例を示した図である。検索フィルタ410は、ユーザの意図によって予め定義されたいくつのカテゴリ(クラスタ)別に検索フィルタを含んでよい。例えば、検索フィルタ410は、「実写」、「塗り絵」、「カラー漫画」、「スケッチ」、「クリップボード」、「商品」、「人物」、「テキスト」などのようなクエリと対応するイメージのうちからどのような類型のイメージが望まれるか選択することにより、該当の類型のイメージだけをフィルタリングして提供するために活用されてよい。言い換えれば、イメージ検索フィルタは、ユーザの意図によって予め定義されたいくつのカテゴリにイメージを分類およびフィルタリングして提供するための機能を含んでよい。このように、検索フィルタ410は、ユーザのクエリに対する正確な検索結果を見つけるためにユーザの検索要求の類型を分類してよく、該当の類型に分類されたイメージを提供するための機能であってよい。
【0050】
一方、CNNを利用してユーザの意図を分類してもよい。例えば、以下の表1のように、主要検索フィルタである8種類を選定し、8つのラベルを有するCNNモデルで学習してもよい。
【0051】
【表1】
【0052】
学習されるCNNモデルとしてはDeep CNNが使用されてよく、CNNモデルはImageNetデータに初期化されてよい。学習データを構築した後、微調整(fine−tuning)と拡張(augmentation)によって最終学習データが選別されてよい。ユーザ意図分類モデルは、クエリおよびイメージと関連するクリック情報に基づいて検証されてよい。例えば、クエリに対してイメージ検索の検索結果として提供されるイメージと関連するクリック情報に基づいて共通してクリックされたイメージの実際のクエリを確認することにより、ユーザ意図分類モデルが検証されてよい。
【0053】
例えば、クリックログ{click、click、click、・・・、click}において、click=(q、d)(Nは任意の自然数、aはN以下の自然数)のように、クエリqとクリックによって接近されたイメージデータdを含んでよい。l個の検索フィルタに対応するイメージ分類{label、label、・・・、label}に対し、検索コレクション{d、d、d、・・・、d}において、d(Mは任意の自然数、bはM以下の自然数)は、該当のイメージデータがどのイメージ分類に分類されるのかに関する情報を含んでよい。例えば、イメージ分類L={0、1、2、3、4、5、6、7}のように、表1を参照しながら説明した8つの主要検索フィルタに対応してよく、dが塗り絵およびカラー漫画に分類される特徴を有するイメージであれば、d=(1、2)のように表現されてよい。このようなクリックログと検索コレクションを接合することにより、{(q、label)、(q、label)、(q、label)、・・・、(q、label)}(i、j、k、pは、l以下の任意の自然数)のようにクエリと検索フィルタに対応するイメージ分類との関係が得られてよく、これを下記のようにクエリ別の複数の集合に分類してよい。このとき、集合それぞれの元素の個数は、互いに異なってよい。クエリ別の集合の一例は、次のように表現されてよい。
【0054】
{(q、label)、(q、label)、・・・、(q、label)}
{(q、label)、(q、label)、(q、label)}
・・・
{(q、l)、(q、l)、・・・、(q、l)}
【0055】
このような分析により、クエリと検索フィルタとの関係が、一例として以下の表2のように得られるようになる。
【0056】
【表2】
【0057】
一方、ユーザの意図をより細分化するために、8個のラベルを、例えば37種のラベルにその分類を確張してもよい。一例として、以下の表3は、検索クエリを細分化してイメージ類型を37種類(op1〜op37)に分類した例を示している。このようなイメージ類型は、イメージ検索の検索ログ(クリックログ)を基盤として検索語主題(クエリ)分類を参照することによって個別類型が分類されてよい。
【0058】
【表3】
【0059】
表3の大分類は、ユーザ意図分類モデルのためのユーザの意図を、非実写、アイコニック、実写、テキスト類型に大きく分けた例であり、大分類の下に示される37種類の詳細属性のように、各大分類内でもより細分化されたモデルが開発されてよい。
【0060】
以下の表4は、イメージ類型による詳細検索フィルタの例を示している。
【0061】
【表4】
【0062】
以下では、分類名を予め定めずに、CNN特徴を利用して大量のイメージをクラスタリングする方法について説明する。
【0063】
図5は、本発明の一実施形態における、クラスタリング構造の例を示した図である。クラスタリングは、階層的に実行されてよい。例えば、2−depthでクラスタリングを実行する実施形態が考えられる。例えば、100個のクラスタにクラスタリングした後、各クラスタを再び100個にクラスタリングしてよい。これにより、1万個のクラスタに拡張するようになる。図5は、イメージ検索コレクション510のイメージが第1点線ボックス520に示された上位レベル(High Level)の100個のクラスタに分類された後、上位レベルの100個のクラスタそれぞれが含む下位レベル(Low Level)の100個のクラスタに分類されることを示している。このとき、第2点線ボックス530は、上位レベル「クラスタ2」の下位レベルに該当する100個のクラスタを示している。
【0064】
イメージ検索コレクション510のイメージは、イメージそれぞれのCNN特性を利用して分類されてよい。このとき、各クラスタの識別子は、階層構造を適切に示すように付与されてよい。例えば、下位レベルのクラスタの識別子は、自身の上位レベルのクラスタの固有番号および下位階層内での固有番号を結合するものが付与されてよい。図6は、本発明の一実施形態における、クラスタにクラスタリングされたイメージの例を示した図である。
【0065】
このようなクラスタリング方法の場合、学習データの構築が必要なく、検索コレクション内のイメージ特徴に応じて可変的にクラスタの数を決定することができるため、学習基盤技法に比べて極めて効果的にイメージを分類することができる。また、再順位化(テキストに対する検索結果として出たイメージのうちで最も多くのイメージを含むクラスタ(最も多く出たクラスタ)に対して加重値を反映する順位付け)を実行するにあたり、下位クラスタが極めて細かく細分化されていて最も多く出たクラスタを見つけることができない場合(言い換えれば、下位階層分類でクラスタ同士の優劣をつけることができない場合)、該当のクラスタが多く集まっている上位階層クラスタ(1depthのクラスタ)を、加重値を反映するクラスタとして決定してよい。
【0066】
クラスタは、検索特徴に活用されてよい。言い換えれば、クラスタは、検索ランキングに反映されてよい。以下では、分類されたクラスタを検索ランキングに反映するいくつかの方法を紹介する。
【0067】
図7は、本発明の一実施形態における、クラスタを検索ランキングに反映するための例を示した図である。
【0068】
第1点線ボックス710に示されたルールベース(Rule−based)の検索方式は、クエリパターンに応じて適するクラスタを予め定めておき、入力されるクエリに対して抽出されるクエリパターンにしたがってクラスタを選択する検索方式であってよい(例えば、「〜楽譜」で終わるクエリパターンに対しては、「クラスタ10」が重要となると予め定めておく)。一例として、ルールベースの検索方式は、接尾辞(Suffix)基盤のクエリデータベースを構築しておき、入力されるクエリに対するクエリパターンをクエリデータベースから抽出した後、抽出されたクエリパターンによって予め定められたクラスタに動的に加重値を反映する検索方式であってよい。
【0069】
第2点線ボックス720に示されたトピックモデリング(Topic Modeling)の検索方式は、クラスタ別に主題を決定し、クエリに対する主題を抽出した後(例えば、主題「ファッション」)、該当の主題に対するクラスタに対して動的に加重値を反映する検索方式であってよい(例えば、主題「ファッション」と関連するクラスタ10、20、30に加重値を反映する)。
【0070】
第3点線ボックス730に示された再順位化の検索方式は、テキストに対する検索結果として出たイメージのうちで最も多くのイメージを含むクラスタ(最も多く出たクラスタ)に対して動的に加重値を反映する検索方式であってよい。一例として、再順位化の検索方式は、初期検索の属性分布ベクトルを利用して動的に加重値を反映する検索方式であってよい。
【0071】
上述したようなルールベースの検索方式、トピックモデリングの検索方式、および再順位化の検索方式は、それぞれ個別に使用されてもよいし、優先順位にしたがって選択的に使用されてもよい。例えば、クエリにパターンが存在するときにはルールベースの検索方式が使用されるが、パターンが存在しないときにはトピックモデリングの検索方式を使用して主題を抽出し、主題が存在しない場合には再順位化の検索方式が活用されるようにしてよい。また、ルールベースの検索方式、トピックモデリングの検索方式、および再順位化の検索方式それぞれから得られる加重値の合計を検索ランキングに反映してもよい。
【0072】
検索対象イメージが追加される場合、該当の追加イメージは、既存にクラスタリングされているクラスタそれぞれの中心値に基づいてクラスタリングされてよい。例えば、クラスタの中心値は、クラスタに含まれたイメージのCNN特徴値の中心値であってよく、追加イメージのCNN特徴値と最も類似する中心値を有するクラスタに属するようにしてよい。全体イメージは、所定の周期で再クラスタリングされてもよいし、クラスタそれぞれの中心値が所定の周期にアップデートされてもよい。
【0073】
以下では、検索によって多数の類似イメージが表示される場合に、類似または重複イメージを排除する方法について説明する。図8は、イメージ検索における既存の重複排除方法の例を示した図であり、図9は、本発明の一実施形態における、検索結果との多様性(diversification)および検索コレクション(索引範囲)縮小化のために改善された方法を説明するための図である。
【0074】
図10は、本発明の一実施形態における、イメージ検索方法の例を示したフローチャートである。本実施形態に係るイメージ検索方法は、一例として、上述したコンピュータ装置100によって実行されてよい。例えば、コンピュータ装置100のプロセッサ120は、メモリ110が含むオペレーティングシステムのコードと、少なくとも1つのプログラムのコードとによる制御命令(instruction)を実行するように実現されてよい。ここで、プロセッサ120は、コンピュータ装置100に記録されたコードが提供する制御命令にしたがってコンピュータ装置100が図10の方法に含まれる段階1010〜1050を実行するようにコンピュータ装置100を制御してよい。
【0075】
段階1010で、コンピュータ装置100は、主題別に少なくとも1つの代表イメージを記録してよい。一例として、1つの主題に対し、主題を示すテキスト(クエリ/キーワード/検索語)と少なくとも1つの代表イメージが代表イメージデータベースに記録されてよい。このような主題別の代表イメージは、一例として、図3を参照しながら説明したように、管理者が管理ツール320を利用して登録してよい。
【0076】
段階1020で、コンピュータ装置100は、クエリに対する検索結果に含まれた少なくとも1つの候補イメージを確認してよい。一実施形態において、クエリによる候補イメージは、コンピュータ装置100が含む検索エンジンによって検索されるイメージを含んでよい。他の実施形態として、クエリによる候補イメージは、別の検索サーバによって検索されるイメージを含んでよく、このとき、コンピュータ装置100は、段階1020で、検索サーバと通信して候補イメージを受信してよい。候補イメージが選定される方式については、図11を参照しながらさらに詳しく説明する。
【0077】
段階1030で、コンピュータ装置100は、クエリと対応する主題に対する少なくとも1つの代表イメージの特徴値を取得してよい。一例として、コンピュータ装置100は、段階1010で主題別に記録された少なくとも1つの代表イメージのうち、クエリと対応する主題に対して記録された少なくとも1つの代表イメージを抽出してよい。このとき、抽出された少なくとも1つの代表イメージの特徴値は、抽出された少なくとも1つの代表イメージそれぞれに対してCNNを介して得られる特徴値を含んでよい。
【0078】
段階1040で、コンピュータ装置100は、少なくとも1つの代表イメージの特徴値と少なくとも1つの候補イメージの特徴値を利用して少なくとも1つの候補イメージそれぞれに対して少なくとも1つの代表イメージそれぞれに対するイメージ類似度を計算してよい。例えば、コンピュータ装置100は、少なくとも1つの代表イメージの特徴値と少なくとも1つの候補イメージの特徴値とのコサイン距離を利用してイメージ類似度を計算してよい。このようなイメージ類似度の計算方式の例は、数式(1)および数式(2)を参照しながら上述したとおりである。数式(2)では、代表イメージ別に加重値を付与してイメージ類似度を計算する方式を示している。ここで、少なくとも1つの候補イメージの特徴値は、少なくとも1つの候補イメージそれぞれに対してCNNを介して得られる特徴値を含んでよい。
【0079】
段階1050で、コンピュータ装置100は、計算されたイメージ類似度を利用して検索結果における少なくとも1つの候補イメージのランキングに反映してよい。候補イメージの再順位化は、一例として、数式(3)を参照しながら説明したとおりである。例えば、コンピュータ装置100は、少なくとも1つの候補イメージそれぞれに対し、テキスト基盤検索モデリング技法によって得られるテキスト類似度に計算されたイメージ類似度を適用することで少なくとも1つの候補イメージそれぞれのスコアを計算し、計算されたスコアにしたがってテキスト類似度による少なくとも1つの候補イメージの基本順位を再順位化してよい。このとき、再順位化とは、基本順位が決定されていない場合には、コンピュータ装置100がテキスト類似度にイメージ類似度を適用することによって候補イメージそれぞれの順位を決定することを含んでよい。
【0080】
一方、一実施形態において、コンピュータ装置100は、ユーザ意図を分類するためにイメージ基盤検索モデルを活用してもよい。例えば、コンピュータ装置100は、ユーザの意図によって予め定義された複数のカテゴリに分類されたイメージを利用してイメージ基盤検索モデルが入力されるイメージに対応するカテゴリを決定するように前記イメージ基盤検索モデルで学習してよく、ユーザのクエリによって提供されたイメージのうち、ユーザによって選択されたイメージをイメージ基盤検索モデルに入力することにより、選択されたイメージに対応するカテゴリをユーザの意図として決定してよい。このようなイメージ基盤検索モデルは、ユーザのクエリおよび選択されたイメージと関連するクリック情報に基づいて検証されてよい。クリックログと検索コレクションによってクエリとカテゴリを関連させる実施形態については、上述で詳しく説明したとおりである。このようなイメージ基盤検索モデルとしては、一例として、CNNモデルが活用されてよい。
【0081】
このように、本実施形態では、クエリに対する検索結果に含まれる少なくとも1つの候補イメージの順位を候補イメージと代表イメージの特徴値(一例として、CNN特徴値)によるイメージ類似度を利用して再順位化することにより、ユーザ意図に適したイメージを提供することができる。また、イメージ基盤検索モデル(一例として、CNNモデル)は、ユーザ意図を分類するために活用されることもできる。クエリに対して決定されるユーザ意図は、クエリによって候補イメージを選定するための検索特徴として活用されてよい。
【0082】
一方、以下では、図11を参照しながら候補イメージを選定するための他の実施形態について説明する。図11は、本発明の一実施形態における、候補イメージ選定方式の例を示したフローチャートである。図11の段階1110〜1150は、図10を参照しながら説明したイメージ検索方法に含まれる段階であってよい。例えば、段階1110は、段階1010以前や段階1020以前に含まれてよく、段階1120および段階1130は、段階1020に含まれてよい。また、段階1140および段階1150は、段階1110以後に含まれ、図10の段階1010〜1040と並列的に実行されてよい。他の実施形態として、図11の段階1110〜1150は、それ自体で1つのイメージ検索方法となってもよい。例えば、決定される候補イメージが再順位化されず、クエリに対する検索結果に含まれて提供されてもよい。
【0083】
段階1110で、コンピュータ装置100は、複数のイメージを、複数のイメージそれぞれの特徴値を利用して複数のクラスタにクラスタリングしてよい。このとき、複数のクラスタは、上述したように、複数の階層(一例として、図5の上位レベルおよび下位レベル)で構成されてもよい。
【0084】
段階1120で、コンピュータ装置100は、ルールベースの検索方式、トピックモデリングの検索方式、および再順位化の検索方式のうちの少なくとも1つの検索方式を利用してクラスタに加重値を付与してよい。ここで、ルールベースの検索方式は、複数のクラスタそれぞれと対応するクエリパターンを記録し、複数のクラスタのうちでクエリに対して抽出されるクエリパターンに対応するクラスタに動的に加重値を付与する検索方式であってよい。また、トピックモデリングの検索方式は、複数のクラスタそれぞれに対応する主題を記録し、複数のクラスタのうちでクエリに対して抽出される主題に対応するクラスタに動的に加重値を付与する検索方式であってよい。さらに、再順位化の検索方式は、複数のクラスタそれぞれにクエリによって検索されたイメージが含まれた数に基づいてクラスタに動的に加重値を付与する検索方式であってよい。上述したように、検索方式は、状況によって動的に選択されてもよいし、2つ以上の検索方式が同時に活用されて加重値の合計が利用されてもよい。
【0085】
段階1130で、コンピュータ装置100は、付与された加重値に基づいて選択されるクラスタに含まれたイメージを候補イメージとして決定してよい。決定された候補イメージは、図10で確認される候補イメージに対応してよい。他の実施形態において、候補イメージの再順位化が適用されない場合、このような候補イメージがクエリによる検索結果に含まれてよい。
【0086】
段階1140で、コンピュータ装置100は、イメージが追加される場合、追加されるイメージの特徴値と、複数のクラスタそれぞれが含むイメージの特徴値の中心値に基づき、追加されるイメージが含まれるクラスタを決定してよい。言い換えれば、新たに追加されるイメージも、特徴値を利用してクラスタリングされてよい。
【0087】
段階1150で、コンピュータ装置100は、周期ごとに複数のイメージを再クラスタリングするか、中心値をアップデートしてよい。このような再クラスタリングや中心値のアップデートは、新たに追加されるイメージによってクラスタのCNN特徴値が変更することを反映するためになされてよい。
【0088】
このように、本発明の実施形態によると、検索結果として、ユーザの検索意図に適したイメージ検索結果を提供することができる。
【0089】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、例えば、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPA(field programmable array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)および前記OS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを格納、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0090】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、仮想装置、コンピュータ格納媒体または装置、または伝送される信号波に永久的または一時的に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で格納されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【0091】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。前記コンピュータ読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含んでよい。前記媒体に記録されるプログラム命令は、実施形態のために特別に設計されて構成されたものであってもよいし、コンピュータソフトウェア当業者に公知な使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク、および磁気テープのような磁気媒体、CD−ROM、DVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどのようなプログラム命令を格納して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例は、コンパイラによって生成されるもののような機械語コードだけではなく、インタプリタなどを使用してコンピュータによって実行される高級言語コードを含む。上述したハードウェア装置は、実施形態の動作を実行するために1つ以上のソフトウェアモジュールとして動作するように構成されてよく、その逆も同じである。
【0092】
以上のように、実施形態を、限定された実施形態と図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【0093】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【0094】
310:代表イメージ
320:管理ツール
330:ランカー
340:検索サーバ
350:索引
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11