[go: up one dir, main page]

JP5710539B2 - グラフ生成装置、方法、及びプログラム - Google Patents

グラフ生成装置、方法、及びプログラム Download PDF

Info

Publication number
JP5710539B2
JP5710539B2 JP2012094780A JP2012094780A JP5710539B2 JP 5710539 B2 JP5710539 B2 JP 5710539B2 JP 2012094780 A JP2012094780 A JP 2012094780A JP 2012094780 A JP2012094780 A JP 2012094780A JP 5710539 B2 JP5710539 B2 JP 5710539B2
Authority
JP
Japan
Prior art keywords
vertex
vertices
graph
information
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012094780A
Other languages
English (en)
Other versions
JP2013222388A (ja
Inventor
一生 青山
一生 青山
澤田 宏
宏 澤田
上田 修功
修功 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012094780A priority Critical patent/JP5710539B2/ja
Publication of JP2013222388A publication Critical patent/JP2013222388A/ja
Application granted granted Critical
Publication of JP5710539B2 publication Critical patent/JP5710539B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、グラフ生成装置、方法、及びプログラムに係り、特に、グラフを索引構造とする類似探索に使用されるグラフを生成するグラフ生成装置、方法、及びプログラムに関する。
文書、画像、音声音響信号、記号列等の多様で大規模なデータ(被探索オブジェクト集合又は略してオブジェクト集合と呼ぶ)から、与えられたクエリオブジェクトに類似するオブジェクトを高速に見つける探索法に、近傍グラフを索引とする類似探索法(グラフ索引類似探索法と略す)がある。グラフ索引類似探索法に使用されるグラフは、k近傍グラフ(k-nearest neighbor graph又はk-NNグラフと呼ぶ)を基本構造とするグラフが用いられてきた。一般的に、k近傍グラフには、有向グラフ(非特許文献4)と無向グラフがある。無向k近傍グラフを基本構造とするグラフのうち、特に、undirected degree-reduced k-nearest neighbor graph (k-DRグラフ)は、効率的な探索を可能にするグラフである(特許文献1,2、非特許文献1,2)。一方で、グラフを索引とする類似探索法は、探索アルゴリズムとして、複数の初期頂点を用いた貪欲探索(greedy-search, GSと略す)アルゴリズム(multiple starting greedy search algorithm: MSGS algorithm)を用いることで、近似探索法となる(非特許文献3)。近似探索法は、与えられた探索成功確率1-δを達成するように、グラフ構築時に、例えばk近傍グラフが用いられる場合であれば、k-NNグラフ又はk-DRグラフの構造変数kとMSGSアルゴリズムの初期頂点数Lとを決定する。
更に、この近似法は、k-NNやk-DRグラフ以外のグラフにも適用できる汎用法である。前述のグラフ構造変数kは、グラフ中のベイズンサイズを制御する変数であり、グラフのベイズンを推定することで、他のグラフを索引とする場合にも同様の近似法を適用できる。
このように、グラフ索引類似探索法は、与えられた成功確率で、高速に、クエリオブジェクトに最も類似するオブジェクトを見つけることができる。
特許第4774016号公報 特許第4774019号公報
K. Aoyama, K. Saito, T. Yamada, and N. Ueda, "Fast similarity search in small-world networks," Complex Networks: Int. Workshop on Complex Networks, pp. 185-196, Springer, 2009. K. Aoyama, S. Watanabe, H. Sawada, Y. Minami, N. Ueda, and K. Saito, "Fast similarity search on a large speech data set with neighborhood graph indexing," Int. Conf. Acoustics, Speech, Signal Process., pp. 5358-5361, 2010. K. Aoyama, K. Saito, H. Sawada, and N. Ueda, "Fast approximate similarity search based on degree-reduced neighborhood graphs," ACM SIGKDD Conf. Knowledge Discovery and Data Mining, 2011. W. Dong, M. Charikar, and K. Li, "Efficient K-nearest neighbor graph construction for generic similarity measures," Int. World Wide Web Conf. , 2011.
しかしながら、索引であるグラフを構築するために、多大な計算量を必要としていた。これは、グラフ構築時に、予め作成された厳密なk近傍リスト(k-NNリスト)を使用するためである。例えば、n個のオブジェクトから成る距離空間が与えられたとき、k-NNリストを作成するための計算量(距離計算回数で測られる)は、n(n-1)/2であり、計算複雑さは、O(n2)である。この計算量のために、大規模データを対象とした類似探索の索引を構築、変更する際に、多大な時間を要する、という問題があった。
本発明は、上記の問題を解決するためになされたもので、探索成功確率を低下させずに、少ない計算量で、情報探索のために使用されるグラフを生成するグラフ生成装置、方法、及びプログラムを提供することを目的とする。
上記の目的を達成するためにグラフ生成装置は、記憶部に格納されている情報探索集合の情報に対応する頂点における前記頂点間の類似度又は非類似度に基づき頂点間ネットワークを表わすグラフを生成するグラフ生成装置であって、(a1)前記情報探索集合の情報に対応する頂点の何れか一つをターゲット頂点として設定すると共に、前記情報探索集合の情報に対応する頂点の少なくとも1つを、初期頂点としてランダムに設定し、(a2)前記(a1)で設定したターゲット頂点をクエリとして、所定の探索アルゴリズムに従って、前記(a1)で設定された前記初期頂点から、前記クエリに類似する頂点を探索し、(a3)前記(a2)の結果、前記探索結果として得られた頂点が前記ターゲット頂点でない場合に、前記ターゲット頂点に辿り着く頂点集合内の何れか一つの頂点と、前記探索結果として得られた頂点とをリンク結合し、(a4)前記(a1)から前記(a3)の処理を、所定の第1条件が満たされるまで繰り返し、前記(a1)から前記(a4)の処理を、所定の第2条件が満たされるまで繰り返すことにより、前記グラフを生成し、前記生成したグラフを、前記記憶部に格納するグラフ生成部を含んで構成されている。
本発明に係るグラフ生成方法は、記憶部に格納されている情報探索集合の情報に対応する頂点における前記頂点間の類似度又は非類似度に基づき頂点間ネットワークを表わすグラフを生成するグラフ生成装置におけるグラフ生成方法であって、(a1)前記情報探索集合の情報に対応する頂点の何れか一つをターゲット頂点として設定すると共に、前記情報探索集合の情報に対応する頂点の少なくとも1つを、初期頂点としてランダムに設定し、(a2)前記(a1)で設定したターゲット頂点をクエリとして、所定の探索アルゴリズムに従って、前記(a1)で設定された前記初期頂点から、前記クエリに類似する頂点を探索し、(a3)前記(a2)の結果、前記探索結果として得られた頂点が前記ターゲット頂点でない場合に、前記ターゲット頂点に辿り着く頂点集合内の何れか一つの頂点と、前記探索結果として得られた頂点とをリンク結合し、(a4)前記(a1)から前記(a3)の処理を、所定の第1条件が満たされるまで繰り返し、前記(a1)から前記(a4)の処理を、所定の第2条件が満たされるまで繰り返すことにより、前記グラフを生成し、前記生成したグラフを、前記記憶部に格納する。
本発明によれば、所定の探索アルゴリズムに従って探索結果として得られた頂点がターゲット頂点でない場合に、ターゲット頂点に辿り着く頂点集合内の何れか一つの頂点と、探索結果として得られた頂点とをリンク結合することを繰り返すことにより、探索成功確率を低下させずに、少ない計算量で、情報探索のために使用されるグラフを生成することができる。
本発明に係るプログラムは、上記のグラフ生成装置の各手段としてコンピュータを機能させるためのプログラムである。
以上説明したように、本発明のグラフ生成装置、方法、及びプログラムによれば、所定の探索アルゴリズムに従って探索結果として得られた頂点がターゲット頂点でない場合に、ターゲット頂点に辿り着く頂点集合内の何れか一つの頂点と、探索結果として得られた頂点とをリンク結合することを繰り返すことにより、探索成功確率を低下させずに、少ない計算量で、情報探索のために使用されるグラフを生成することができる、という効果が得られる。
グラフ索引類似探索法を説明するための図である。 GSアルゴリズムを説明するための図である。 本発明の第1の実施の形態に係るグラフ生成装置の構成を示す概略図である。 FABアルゴリズムを説明するための図である。 FABアルゴリズムを説明するための図である。 本発明の第1の実施の形態に係るグラフ生成装置におけるFABグラフ構築処理ルーチンの内容を示すフローチャートである。 本発明の第2の実施の形態に係るグラフ生成装置のグラフ構築部の構成を示す概略図である。 本発明の第2の実施の形態に係るグラフを生成する方法の流れを説明するための図である。 NN-Descentアルゴリズムを説明するための図である。 本発明の第2にお実施の形態に係るグラフ生成装置のK−NNリスト生成処理ルーチンの内容を示すフローチャートである。 本発明の第2にお実施の形態に係るグラフ生成装置のk−DRグラフ生成処理ルーチンの内容を示すフローチャートである。 データサイズと距離計算回数との関係を示すグラフである。 繰り返し回数と距離計算回数との関係を示すグラフである。 探索成功率とそのFABグラフを構築するのに要したスキャンレートとの関係を示すグラフである。 探索成功率と探索コストとの関係を示すグラフである。
以下、図面を参照して本発明の実施の形態を詳細に説明する。
<概要>
まず、本発明の概要について説明する。
本発明においてグラフの生成に用いる方法は、フォールスアトラクタブリッジング(false-attractor bridging: FABと略す)である。FABアルゴリズムは、ある空間(非類似度が定義されたオブジェクト集合)から作られたグラフの初期状態(オブジェクトを頂点とみなす、リンクのないグラフを含む)が与えられたとき、グラフ内のある頂点に対し、MSGSを実行し、GSアルゴリズムの終了頂点(アトラクタと呼ぶ)と当該グラフ内のある頂点のベイズン(ベイズンとは、グラフ内の辺をGSアルゴリズムで辿り、当該グラフ内のある頂点へ到達する頂点の集合である)内のある頂点とをリンクで連結することにより、グラフにリンクを追加しながら、グラフを成長させるアルゴリズムである。
また、図1を用いて、グラフ索引類似探索法を簡単に説明する。オブジェクト集合(Object set)と非類似度(Dissimilarity)とから成る空間が与えられる。この空間に対し、グラフ構築アルゴリズム(Graph construction algorithm)を適用し、グラフ索引(Graph index)を構築する。特に、グラフとしてランクに基づくk-NNグラフを基本とするグラフを用いる。従来法では、グラフ構築アルゴリズムには、空間から作成された厳密なk-NNリストが与えられる。このリストを参照しながら、各オブジェクトに最も類似するオブジェクトからk個のオブジェクトにリンクを生成し、無向リンクに置換したグラフがk-NNグラフである。このとき、グラフの各頂点(Vertex)は各オブジェクト(Object)に対応し、その関係性(k近傍以内)がリンクで表される。以降、オブジェクトと頂点とは、言葉の意味上、区別なく使用する。また、無向リンク(無向辺)のことを単にリンク(辺)とも呼ぶ。
また、上記特許文献2、上記非特許文献1,2に示されるk-DRグラフを構築するアルゴリズム(DRアルゴリズム)も同様にk-NNリストを使用する。
このグラフ上を探索する際に、MSGSアルゴリズムを用いる。これにより近似探索が可能になる。
また、図2(A)〜(C)を参照しながら、GSアルゴリズムについて述べる。GSアルゴリズムとは、現頂点の隣接頂点のなかで、現頂点よりもクエリに近い頂点があれば、その近い頂点に移動し、近い頂点がなければ終了するというアルゴリズムである。例えば、10個のオブジェクトからユークリッド距離を用いて構築された10頂点からなる2-NNグラフに、クエリqが与えられる。図2(A)は、初期頂点としてbが選択され、bとqとの距離が計算される。次に、bの隣接頂点a,cとqとの距離が計算され、bよりもqに近いcを展開頂点とする。ここで展開頂点とは、自らとクエリとの距離が計算されており、隣接頂点とクエリとの距離も計算される(されている)頂点のことである。図2(B)では、展開頂点cの隣接頂点とクエリとの距離が計算されている。展開頂点が、より近い頂点dに移動する。図2(C)では、頂点dの隣接頂点とqとの距離が計算される。頂点dが最近傍頂点であるから、GSアルゴリズムは終了する。
MSGSアルゴリズムは、初期頂点として複数頂点を用いて各々が独立にGSアルゴリズムを実行し、複数の終了頂点の全て、又はそのうちで最近傍頂点やトップk個などの指定された頂点を返す。
〔第1の実施の形態〕
<システム構成>
図3に示すように、第1の実施の形態に係るグラフ生成装置100は、CPUと、RAMと、後述するFABグラフ構築処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
グラフ生成装置100は、探索されるオブジェクト集合の入力を受け付ける入力部10と、グラフを生成すると共に探索処理を行う演算部20と、探索結果を出力する出力部30と、を備えている。
演算部20は、オブジェクトデータベース21、グラフ構築部22、グラフ索引記憶部23、及び探索処理部24を備えている。グラフ構築部22は、グラフ生成部の一例である。
オブジェクトデータベース21は、入力部10より入力されたオブジェクトの集合を記憶すると共に、入力部10より入力された、オブジェクト間の距離(又は類似度又は非類似度)の定義を記憶する。なお、オブジェクト集合が、情報探索集合の一例であり、オブジェクトが、情報の一例である。また、オブジェクトデータベース21及びグラフ索引記憶部23は、記憶部の一例である。
グラフ構築部22は、オブジェクトデータベース21に記憶されたオブジェクト集合及びオブジェクト間の距離の定義に基づいて、オブジェクト集合を探索するためのグラフを生成する。
グラフ索引記憶部23は、グラフ構築部22によって生成されたグラフを索引として記憶する。
探索処理部24は、グラフ索引記憶部23に記憶されたグラフを索引として用いて、入力部10より入力されたクエリオブジェクトに類似するオブジェクトを、オブジェクトデータベース21に記憶されたオブジェクト集合の中から探索する。探索結果として得られるオブジェクトは、出力部30により、ユーザに対して出力される。
次に、本実施の形態においてグラフを構築する原理について説明する。本実施の形態では、FABアルゴリズムを用いて、グラフを構築する。
図4(A)〜(C)にFABアルゴリズムの概念図を示す。ある空間χ=(X,D)が与えられる。ここで、Xはオブジェクト集合、Dはオブジェクト集合の要素であるオブジェクト間に定義された非類似度とし、D(x,y)と記載した場合は、オブジェクト(又は頂点)xからオブジェクト(頂点)yへの非類似度を表す。χが距離空間である場合は、非類似度は距離であり、D(x,y)=D(y,x)である。
ある頂点x∈Xに対して、ある初期頂点集合X0⊆Xを選択する。頂点xをクエリ(Query: q)とし、x=q、X0を用いて、後述するMSGSアルゴリズムを実行する。このとき、qに最も類似するオブジェクト、即ち、qから最も近い頂点(Target: ターゲット x*(q))はq自身であり、初期頂点集合のうちのいくつかからスタートしたGSアルゴリズムはターゲットに辿りつくかも知れない。また、他のGSアルゴリズムはターゲットに辿りつかず、終了する。
ここで、ある頂点xに対するGSアルゴリズムが終了する頂点を頂点xのアトラクタと呼ぶ。また、頂点xが自明な場合は省略して、単に、アトラクタと呼ぶ。アトラクタには、真のアトラクタ(true attractor: TA)と偽のアトラクタ(false attractor: FA)がある。TAとはターゲットのことである。グラフΓにクエリqが与えられたとき、TAに辿りつく頂点集合を、クエリq、ターゲットx*(q)のベイズン(Basin(q,x*(q);Γ)と呼び、FAに辿りつく頂点集合を、q, FAのフォールスベイズンと呼ぶ。FABアルゴリズムとは、フォールスアトラクタのうちの少なくとも1つとベイズンのうちの少なくとも1つの頂点とをリンクで連結するアルゴリズムである。
図4(A)は、グラフ上の頂点をクエリとした場合、即ちq=x*(q)の場合のベイズンと、フォールスアトラクタ及びフォールスベイズンとを表した図である。図4(B)は、フォールスアトラクタの1つとベイズンの要素である頂点の1つとをリンク結合した(ブリッジングした)場合の図(図中、Bridgeで表されるリンクを生成)である。このリンク結合によりベイズンは、元のベイズンとリンク結合されたフォールスアトラクタのフォールスベイズンとの集合和(合併集合)になる。ベイズンサイズが大きくなることは、上記の非特許文献3に記載の近似アルゴリズムから分かるように、探索成功率を向上させる。図4(C)は、フォールスアトラクタのうち、ターゲットから最も近いもの(図中、closestと表現)を選び、ベイズンの要素の1つであるターゲットに直接リンク結合した場合の図である。このようなリンク結合の他に、最大フォールスベイズンを有すると推定されたフォールスアトラクタとベイズン内の頂点又はターゲット自体とをリンク結合する方法などもある。
ここで、MSGSアルゴリズムについて説明する。MSGSアルゴリズムとは、multiple starting greedy search algorithmであり、上記の非特許文献3で提案されたアルゴリズムであり、greedy search algorithm with multiple initial vertices(複数初期頂点を有する貪欲探索法)とも呼ぶ。グラフ上の貪欲探索(greedy search: GSと略す)法は、クエリ頂点が与えられたとき、以下の(1)〜(3)の手続きを実行する。
(1)ある初期頂点(starting vertex, initial vertex)x0を選択し、クエリ頂点qとの非類似度(又は距離)D(q,x0)を計算する。初期頂点を展開頂点とする。展開頂点とは、その頂点と隣接頂点とについて、クエリ頂点との非類似度が計算された(または、今計算するところの)頂点のことである。
(2)展開頂点の隣接頂点(リンクで接続された頂点)とクエリ頂点との非類似度を計算する。
(3)D(q,x0)より小さい値を持つ隣接頂点がなければ、終了する。D(q,x0)より小さい値を持つ隣接頂点があれば、その頂点を展開頂点yとし、上記(2)の手続きに戻る。
但し、上記(1)、(2)のクエリ頂点と隣接頂点との非類似度計算においては、本実施の形態では全ての隣接頂点と非類似度計算を行って、その中で最小値をもつ頂点を次の展開頂点とした。この代わりに、現在の展開頂点とクエリとの非類似度よりも小さい非類似度を示す頂点が見つかったとき、直ちにその頂点を展開頂点としてもよい。
MSGSアルゴリズムは、複数の初期頂点の各々からGSアルゴリズムを実行するアルゴリズムである。本実施の形態では、初期頂点を複数設けているが、初期頂点が1つであっても構わない。また、FABアルゴリズムの中で使用される場合は、FABアルゴリズムの実行時に、アルゴリズムの進行に従って、動的に頂点数を変えても良い。例えば、ある程度の頂点数を保つ、又は、開始時から徐々に少なくする、という頂点選択法が好ましい。
また、本実施の形態では、MSGSアルゴリズムを用いたが、MSGSアルゴリズム以外の他の方法も採用可能であり、例えば、最良優先探索法などにより複数のアトラクタを抽出することもできる。
図5(A)〜(C)に具体例を挙げる。12個の頂点にユークリッド距離が定義された空間が与えられ、リンクが図5(A)のように張られている。頂点gをクエリとする。このとき、ベイズンは、{ g, a, b, c, f, h }の6つの頂点からなる集合である。また、全頂点を初期頂点としたMSGSアルゴリズムを実行すると、図5(B)のように、3つのフォールスアトラクタを抽出できる。フォールスアトラクタ集合は、{e, i, m}である。頂点eのフォールスベイズンは{d,e}、頂点iのフォールスベイズンは{i,j,k}、頂点mのフォールスベイズンは{m}である。今、ターゲットとターゲットから最近傍のフォールスアトラクタとを連結するFABアルゴリズムを採用すると、図5(C)に示すように、ベイズンは、{ g, a, b, c, f, h }∪{d,e}であり、ベイズンサイズは2だけ大きくなる。
FABアルゴリズムの一例では、この1つのターゲット頂点に対する操作を、グラフ内の全頂点に対して実行する。FABアルゴリズムが繰り返されることによって、ベイズンサイズは大きくなり、MSGSアルゴリズムによる探索成功率は向上する。
探索処理部24は、グラフ索引記憶部23に記憶されたグラフを索引として用い、入力されたクエリに類似するオブジェクトを探索する。このとき、オブジェクト集合から、複数の初期頂点がランダムに設定され、MSGSアルゴリズムによって、各初期頂点について1つずつ最近傍となるオブジェクト(クエリに最も類似するオブジェクト)が、探索結果として得られる。そして、各初期頂点について得られた最近傍オブジェクトの集合が、出力部30により出力される。
<グラフ生成装置の動作>
次に、本実施の形態に係るグラフ生成装置100の作用について説明する。まず、オブジェクト集合及びオブジェクト間の非類似度の定義が入力部10を介してグラフ生成装置100に入力されると、オブジェクト集合及びオブジェクト間の非類似度の定義が、オブジェクトデータベース21に格納される。そして、グラフ生成装置100において、図6に示すFABグラフ構築処理ルーチンが実行される。
まず、ステップS101において、オブジェクトデータベース21からオブジェクト集合を取得すると共に、グラフの初期状態として、ベースグラフを設定する。本実施の形態では、オブジェクト集合の各々を頂点とみなすリンクのないグラフを、ベースグラフとして設定する。
そして、ステップS102において、繰り返し回数を示す変数iterに初期値1を設定する。次のステップS104では、オブジェクト集合に対応する全頂点から、ターゲットとなる頂点を1つだけ設定すると共に、オブジェクト集合に対応する全頂点から、複数の初期頂点をランダムに設定する。
ステップS105において、上記ステップS104で設定した初期頂点の各々から、GSアルゴリズムに従って、上記ステップS104で設定されたターゲットの頂点に類似する頂点を探索する処理を行う。これによって、初期頂点の各々に対してアトラクタが得られる。
そして、ステップS106において、上記ステップS105で得られたアトラクタと、ターゲットの頂点とを比較して、フォールスアトラクタがあるか否かを判定する。全てのアトラクタが、ターゲットの頂点と一致する場合には、後述するステップS108へ移行する。一方、少なくとも1つのアトラクタが、ターゲットの頂点と一致しない場合には、ステップS107で、グラフに対して、フォールスアトラクタのうちの何れか1つと、ターゲットの頂点のベイジン内の頂点とを結合するリンクを追加する。
ステップS108では、全ての頂点をターゲットとして上記ステップS104〜ステップS107の処理を実行したか否かを判定する。ターゲットして設定していない頂点が存在する場合には、上記ステップS104へ戻り、当該頂点をターゲットとして設定する。一方、全ての頂点をターゲットとして上記ステップS104〜ステップS107の処理を実行した場合には、ステップS109へ移行する。
そして、ステップS109において、繰り返し終了条件を満足したか否かを判定する。繰り返し終了条件は、例えば、繰り返し変数iterが、予め決めておいた繰り返し回数になったことである。繰り返し終了条件を満足していない場合には、ステップS110において、変数iterを1インクリメントして、上記ステップS104へ戻る。一方、繰り返し終了条件を満足する場合には、ステップS111において、最終的に得られたグラフを、FABグラフ(FABアルゴリズムで構築したグラフのことをFABグラフと呼ぶ)としてグラフ索引記憶部23に格納して、FABグラフ構築処理ルーチンを終了する。
そして、クエリオブジェクトが入力部10を介してグラフ生成装置100に入力されると、グラフ生成装置100の探索処理部24によって、グラフ索引記憶部23に記憶されたグラフを索引として用い、入力されたクエリオブジェクトに類似するオブジェクトを探索し、探索結果として得られるオブジェクトを、出力部30により出力する。
〔第2の実施の形態〕
<システム構成>
次に、第2の実施の形態について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
第2の実施の形態では、ベースグラフを生成してから、FABアルゴリズムを適用している点が、第1の実施の形態と異なっている。
第2の実施の形態に係るグラフ生成装置100のグラフ構築部22は、図7に示すように、K−NNリスト生成部221、k−DRグラフ構築部222、及びFABグラフ構築部223を備えている。
第2の実施の形態における、グラフを生成する手続き全体を図8に示す。本実施の形態では、近似K−NNリストを利用する。効率的に近似K−NNリストを作成するアルゴリズムにNN-Descentアルゴリズムがある(非特許文献4)。NN-Descentアルゴリズムは、オブジェクト集合のサイズ(又は、データサイズ)に対して適切なKを選択したとき、経験的に厳密なK−NNリストに対するリコールが高い近似K−NNリストを作成する。適切なKはデータサイズが大きくなるほど、データの固有次元(intrinsic dimensionality)が高くなるほど、大きくなる。NN-Descentアルゴリズムの計算量は、データサイズn、リスト変数Kに対して、O(K1.5〜1.8n1.1)であることが経験的に分かっている。
本実施の形態では、小さいKを用いるNN-Descentアルゴリズムにより、与えられた空間から近似K−NNリストを作成し、このリストを参照するDRアルゴリズムにより、k-DRグラフを構築する。
このk-DRグラフを、FABアルゴリズムの初期状態であるベースグラフとして用いる。FABアルゴリズムを繰り返すことにより、所定の探索成功率を満たすFABグラフを構築する。
K−NNリスト生成部221は、オブジェクトデータベース21に記憶されたオブジェクト集合及びオブジェクト間の距離の定義に基づいて、NN-Descentアルゴリズム(非特許文献4)に従って、オブジェクト集合の各オブジェクトについて、K近傍を求めた近似K−NNリストを生成する。
非特許文献4に示されるようにNN-Descentアルゴリズムには、基本形(basic)と完全形(full)とがある。ここでは、簡単のために基本形について図9を用いて説明する。完全形も同様に利用することができる。ある空間が与えられたとき、NN-Descentアルゴリズムは、この空間の各頂点に対するK近傍を求めた近似K−NNリストを作成する問題を解く。
NN-Descentアルゴリズムは、空間の各頂点が、Kアウトエッジ(out-edge)を有するランダムグラフを作成する。ここで、ある1つの頂点に着目し、説明を進める。ある頂点xのアウトエッジで接続されたK個の隣接頂点y1,y2,…,、及びその隣接頂点(アウトエッジ接続とインエッジ接続との両方を含む、即ち、リンクを無向リンクとみなしたときの隣接頂点)zの各々と、頂点xとの距離(一般的には非類似度であるが、簡単のために距離で説明する)を計算し(図9(A)参照)、最も近い頂点からK個の頂点を選択し、次にリンクを張る候補頂点y’とする(図9(B)参照)。
この操作を全ての頂点に順次実行する。全ての頂点に対する実行が終了した時点で、各頂点のリンクを候補頂点y’へ張り替える。この操作を、全ての頂点に対するK個の隣接頂点が変わらなくなるまで繰り返す。全ての頂点のK個の隣接頂点が不変になったとき、アルゴリズムは終了し、各頂点に対してK近傍(最も近い隣接頂点からK個の隣接頂点)を格納した近似K−NNリストが生成される。
K−DRグラフ構築部222は、NN-Descentアルゴリズムで作成した厳密ではない近似K−NNリストを用いて、K-DRグラフを作成する。手続きは、上記図8に示すように、NN-DescentアルゴリズムとDRアルゴリズムとをシリアル接続した構成になる。DRアルゴリズムは、上記の非特許文献1,2に記載されているアルゴリズムと同様である。
FABグラフ構築部223は、DRアルゴリズムで作成したK−DRグラフをベースグラフとして、FABアルゴリズムに従ってリンクを追加することを繰り返し、FABグラフを生成する。
<グラフ生成装置の動作>
次に、本実施の形態に係るグラフ生成装置100の作用について説明する。まず、オブジェクト集合及びオブジェクト間の非類似度の定義が入力部10を介してグラフ生成装置100に入力されると、オブジェクト集合及びオブジェクト間の非類似度の定義が、オブジェクトデータベース21に格納される。そして、グラフ生成装置100において、図10に示すK−NNリスト生成処理ルーチンが実行される。
まず、ステップS201で、オブジェクトデータベース21からオブジェクト集合を取得すると共に、オブジェクト集合の各々のオブジェクトを頂点として、各頂点xについて、K個の隣接頂点をランダムにサンプリングして決定する。
そして、ステップS202において、処理対象の頂点xを設定する。ステップS203において、頂点xのK個の隣接頂点、及び当該K個の隣接頂点の隣接頂点の各々について、頂点xとの距離を計算する。ステップS204では、頂点xのK個の隣接頂点、及び当該K個の隣接頂点の隣接頂点から、最も近い頂点からK個の頂点を選択し、候補頂点とする。
そして、ステップS205において、全ての頂点に対して、上記ステップS202〜S204の処理を実行したか否かを判定する。上記ステップS202〜S204の処理を実行していない頂点が存在する場合には、上記ステップS202へ戻り、当該頂点を、処理対象の頂点xとして設定する。一方、全ての頂点に対して、上記ステップS202〜S204の処理を実行した場合には、ステップS206へ移行する。
ステップS206では、各頂点xについて、上記ステップS204で得られた候補頂点へリンク結合されるように、リンクを張り替える。ステップS207では、上記ステップS206の処理により変化があったか否かを判定する。上記ステップS206においてリンクの張り替えがあり変化があった場合には、上記ステップS202へ戻る。一方、上記ステップS206においてリンクの張り替えがなく、変化がなかった場合には、ステップS208へ移行する。
ステップS208では、各頂点について得られたK個の隣接頂点を格納した近似K−NNリストを生成して、処理ルーチンを終了する。
そして、グラフ生成装置100において、図11に示すk−DRグラフ生成処理ルーチンが実行される。
まず、ステップS211において、上記で生成された近似K−NNリストに基づいて、オブジェクト集合中におけるすべての頂点xに対する1−DRグラフΓ(x)を求める。1−DRグラフΓ(x)は、以下の(1)式で示される要素である。
ここで、N1(x)は、任意の頂点xに対して、最も非類似度が小さい頂点である。
すなわち、頂点x(x∈X、Xはオブジェクト集合)との非類似度が最も小さい近傍頂点N1(x)を、オブジェクト集合中から求め、この近傍頂点N1(x)との間に無向リンクを生成する。
そして、任意の頂点xに対する1−DRグラフΓ(x)を抽出する。
次に、ステップS212において、出次数k(以下、適宜kと記載)を2に設定する(k←2)。ステップS213では、kが予め設定してある値nと等しいか否かを判定する。nは、グラフ生成のパラメータであり、K以下である。
上記ステップS213の結果、kがnと等しい場合、ステップS214において、取得した各頂点xに対するk−DRグラフΓ(x)を、k−DRグラフとしてメモリ(図示省略)に記憶する。
一方、上記ステップS213の結果、kがnと等しくない場合、ステップS215において、近似K−NNリストに基づいて、頂点xに対する近傍頂点集合Nk(x)および近傍頂点集合Nk−1(x)を求める。
そして、ステップS216において、求めた近傍頂点集合Nk(x)と、近傍頂点集合Nk−1(x)との差集合である頂点yを求める(y=Nk(x)−Nk−1(x))。すなわち、頂点xからk番目に非類似度の小さい頂点yを、オブジェクト集合に対応する頂点の中から抽出する。
そして、ステップS217において、GSアルゴリズムに従って、頂点yを初期頂点とし、頂点xをクエリとして、頂点xに類似する頂点x*を探索する。ステップS218では、上記ステップS217におけるGSアルゴリズムに基づく探索処理の結果、出力された頂点x*が、頂点xと等しい(x=x*)か否かを判定する。すなわち、DRグラフΓにおいて、頂点xおよび頂点yに対してGSアルゴリズムによる探索処理を行うことをGS(x,y,Γ)で表すと、ステップS218は、x=GS(x,y,Γ)が、真であるか否かを判定することになる。
上記ステップS218の結果、頂点x*が、頂点xと等しい場合、ステップS221へ移行する。すなわち、新たなリンクを生成しない。
上記ステップS218の結果、頂点x*が、頂点xと等しくない場合、ステップS219において、以下の(2)式を満たす要素zを求める。すなわち、近傍頂点集合Nk−1(x)と、要素xとの和集合のうちで、最も頂点yとの非類似度が小さい頂点zを求める。
そして、ステップS220において、以下の(3)式を実行することによって、頂点zと頂点yとの間に新しいリンクを生成する。
すなわち、頂点zを頂点yに対する(k−1)−DRグラフΓ(y)に加え、頂点yを頂点zに対する(k−1)−DRグラフΓ(z)に加えることで、頂点yと頂点zとの間に、無向リンクを生成する。これにより、頂点yと、頂点xに直接的にリンク結合している頂点x以外の頂点zとを、直接的にリンク結合する。
そして、ステップS221において、オブジェクト集合に対応するすべての頂点xに対して、上記ステップS215からステップS221の処理を行ったか否かを判定する。
上記ステップS221の結果、すべての頂点xに対して、処理を行っていない場合、新たな頂点xを取得し、ステップS215の処理へ戻る。
一方、上記ステップS221の結果、すべての頂点xに対して、処理を行った場合、ステップS222において、kを1だけインクリメントして、上記ステップS213の処理へ戻る。
この時点におけるグラフΓ(x)は、ステップS219およびステップS220の処理の実行の有無にかかわらずk−DRグラフとする。
そして、グラフ生成装置100において、上記図6に示すFABグラフ構築処理ルーチンが実行される。このとき、上記ステップS101では、ベースグラフとして、上記で生成されたk−DRグラフが設定される。
<実験例>
次に、上記第2の実施の形態で提案したグラフ生成方法を、大規模文書データに適用し、有効性を確認した。大規模文書データから成る空間は、The New York Times(登録商標)の記事(文書)からtf-idfに基づき作成された高次元スパースベクトルを特徴ベクトルとし、特徴ベクトル間にはコサイン類似度が定義された空間である。オブジェクト集合として、1,285,944件、116,905件、11,691件、1,170件の記事から抽出された特徴ベクトル集合(各々、1-M-size データ、100-K-size データ、10-K-size データ、1-K-size データと呼ぶ)を用いた。上記図8に示すように、まず初めにK=20に設定したNN-Descentアルゴリズムで20-NNリストを作成した。次に、20-NNリストを用いてDRアルゴリズムで、20-DRグラフを構築した。
この20-DRグラフをFABアルゴリズムのベースグラフとして用い、MSGSアルゴリズムのLB個の初期頂点をシンプルランダムサンプリングで選び、FABアルゴリズムを10回繰り返し、FABグラフを構築した。
図12、13は、LB=20に設定し実験した結果である。
図12は、横軸にデータサイズ、縦軸にグラフ構築のために要した距離計算回数を表している。距離計算回数は、ベースグラフを基に、1回目の繰り返し(図中iter1)、2回目の繰り返し(図中 iter2)、3回目の繰り返し(図中 iter3)の各繰り返し時の計算回数を表している。この図から、計算量が概ねO(n1.1〜1.2)であることが分かる。但し、nはデータサイズを表す。これは、非常に小さい計算量でグラフ構築に成功していることを表している。
図13は、繰り返し回数に対する距離計算回数を表している。図中、上から順に、1-M-size, 100-K-size, 10-K-size, 1-K-sizeデータの結果を表す。全てのデータサイズにおいて、繰り返し回数に対する距離計算回数の増加は小さいことがわかる。これは、NN-DescentアルゴリズムがKに関してO(K1.5〜1.8)の計算量であったのとは、対照的であり、繰り返しに対しても良好な性質があるといえる。
次に、低計算量で構築したFABグラフが探索に対しても有効であること示す。実験には、1-M-sizeデータから構築されたFABグラフ用いた。初期頂点数LsをLs=32に設定し、その初期頂点を無作為に選択したMSGSアルゴリズムを、12,989個の異なるクエリに対して実行した。探索性能としては、探索成功率を用いた。探索成功率とは、MSGSアルゴリズムを実行した結果、少なくとも1つのGS試行がターゲットに辿り着いた探索試行の回数の全試行回数に対する比である。図14は、探索成功率とそのFABグラフを構築するのに要したスキャンレートとの関係を表す図である。ここで、スキャンレートとは、実際に要した距離計算回数(# similarity calculations)の力任せ法(brute-force method, linear scan method)で要する距離計算回数に対する比であり、与えられる空間が距離空間である場合は、以下の式で表される。
Scan rate = (# similarity calculations )/{n(n-1)/2}
参考のために、K-DRグラフを索引構造とした場合の性能も図中(DRと表記)に表示している。図中のLBは、FABアルゴリズムのための初期頂点数であり、1,10,20,50,100の場合の性能を、FABアルゴリズムの繰り返し回数の昇順に(iter1, iter2, …)記載している。上記図14から、1回目のFABアルゴリズムで構築したFABグラフにより、探索成功率が大幅に向上していることが分かる。このように、僅かな計算コストで構築したFABグラフであっても、探索性能が著しく向上した。
最後に、探索性能(探索成功率と探索コスト)に関し、FABグラフを用いた場合とK-DRグラフを用いた場合とを比較した結果を、図15に示す。FABグラフを用いた場合の探索コストは、K-DRグラフを用いた場合に比べて、同一の探索成功率であって、探索成功率が0.8以下の小さい領域で僅かに高い。しかしながら、探索成功率が0.9以上の高い領域においては、K-DRグラフを用いた場合を外挿した値とほぼ同等であった。
以上説明したように、上記の実施の形態に係るグラフ生成装置によれば、選択された初期頂点から貪欲探索アルゴリズムに従って探索結果として得られた頂点がターゲット頂点でない場合に、ターゲット頂点に辿り着くベイズン内の何れか一つの頂点と、探索結果として得られた頂点とをリンク結合するFABアルゴリズムを繰り返し実行することにより、探索成功確率を低下させずに、少ない計算量で、情報探索のために使用されるFABグラフを生成することができる。
また、厳密なk-NNリストを作成することなく、経験的に計算量O(n1.1)でグラフ索引を構築できるため、計算量を大幅に低減できる。このため、グラフ索引類似探索法を大規模データに容易に適用できる。
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
例えば、オブジェクト集合の空間において、非類似度ではなく、類似度を定義するようにしてもよい。
また、近似K−NNリストを、NN-Descentアルゴリズムに従って生成する場合を例に説明したが、これに限定されるものではなく、他のアルゴリズムに従って、厳密でない近似K−NNリストを生成するようにしてもよい。
また、FABアルゴリズムでは、グラフ内の全頂点の各々をターゲット頂点として実行する場合を例に説明したが、これに限定されるものではない。グラフ内の頂点の部分集合の各々をターゲット頂点として、FABアルゴリズムを実行してもよい。この場合には、FABアルゴリズムの繰り返し毎に、ターゲットとする頂点の部分集合を変えても良い。例えば、iter=1のときは、偶数番号が付された頂点の各々をターゲット頂点として、FABアルゴリズムを実行し、iter=2のときは、奇数番号が付された頂点の各々をターゲット頂点として、FABアルゴリズムを実行するようにしてもよい。
上述のグラフ生成装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
10 入力部
20 演算部
21 オブジェクトデータベース
22 グラフ構築部
23 グラフ索引記憶部
24 探索処理部
30 出力部
100 グラフ生成装置
221 K−NNリスト生成部
222 k−DRグラフ構築部
223 FABグラフ構築部

Claims (7)

  1. 記憶部に格納されている情報探索集合の情報に対応する頂点における前記頂点間の類似度又は非類似度に基づき頂点間ネットワークを表わすグラフを生成するグラフ生成装置であって、
    (a1)前記情報探索集合の情報に対応する頂点の何れか一つをターゲット頂点として設定すると共に、前記情報探索集合の情報に対応する頂点の少なくとも1つを、初期頂点としてランダムに設定し、
    (a2)前記(a1)で設定したターゲット頂点をクエリとして、所定の探索アルゴリズムに従って、前記(a1)で設定された前記初期頂点から、前記クエリに類似する頂点を探索し、
    (a3)前記(a2)の結果、前記探索結果として得られた頂点が前記ターゲット頂点でない場合に、前記ターゲット頂点に辿り着く頂点集合内の何れか一つの頂点と、前記探索結果として得られた頂点とをリンク結合し、
    (a4)前記(a1)から前記(a3)の処理を、所定の第1条件が満たされるまで繰り返し、
    前記(a1)から前記(a4)の処理を、所定の第2条件が満たされるまで繰り返すことにより、前記グラフを生成し、前記生成したグラフを、前記記憶部に格納するグラフ生成部
    を含むグラフ生成装置。
  2. 前記(a1)の処理は、前記情報探索集合の情報に対応する頂点の何れか一つをターゲット頂点として設定すると共に、前記情報探索集合の情報に対応する頂点のうちの複数の頂点を、前記初期頂点としてランダムに設定し、
    前記(a2)の処理は、所定の探索アルゴリズムに従って、前記(a1)で設定された前記複数の初期頂点の各々から、前記クエリに類似する頂点を各々探索し、
    前記(a3)の処理は、前記探索結果として得られた頂点が前記ターゲット頂点でない場合に、前記ターゲット頂点と、前記探索結果として得られた前記ターゲット頂点でない頂点のうち、前記ターゲット頂点と最も類似する頂点とをリンク結合する請求項1記載のグラフ生成装置。
  3. K−NNリストを生成するK−NNリスト生成部と、前記K−NNリストに基づいて、ベースグラフを生成するベースグラフ生成部とを更に含み、
    前記K−NNリスト生成部は、
    (b1)前記情報探索集合の情報に対応する頂点の各々に対して、前記情報探索集合の情報に対応する頂点からランダムにK個の頂点を選択し、前記頂点を、前記K個の頂点の各々とリンク結合し、
    (b2)前記情報探索集合の情報に対応する頂点の各々に対して、前記頂点とリンク結合された前記K個の頂点と、前記K個の頂点の各々とリンク結合された頂点とから、前記頂点と類似するK個の頂点を選択し、
    (b3)前記情報探索集合の情報に対応する頂点の各々に対して、前記頂点と前記(b2)で選択された前記K個の頂点とがリンク結合されるようにリンクを張り替え、
    前記(b2)から前記(b3)の処理を、前記リンクの張り替えがなくなるまで繰り返すことにより、前記情報探索集合の情報に対応する頂点の各々に対する前記類似するK個の頂点が格納された前記K−NNリストを生成し、
    前記ベースグラフ生成部は、
    (c1)前記K−NNリストに基づいて、前記情報探索集合の情報に対応する頂点それぞれを、前記情報探索集合の前記頂点のうちの最も類似する頂点とリンク結合し、
    (c2)前記情報探索集合の情報に対応する各頂点から、前記情報探索集合の任意の前記頂点である第1の頂点を抽出し、前記K−NNリストに基づいて、当該第1の頂点からk番目(ただし、kは1より大きい整数)に類似する頂点である第2の頂点を、前記情報探索集合の情報に対応する各頂点から抽出し、
    (c3)前記第2の頂点を初期頂点とし、前記第1の頂点をクエリとして、貪欲探索アルゴリズムに従って、前記初期頂点から、前記クエリに類似する頂点を探索し、
    (c4)前記(c3)の結果、探索結果として得られた頂点が、前記第1の頂点でない場合に、当該第1の頂点と前記第2の頂点とを、直接的、または、当該1の頂点及び前記第2の頂点以外の頂点を介することにより間接的にリンク結合し、
    前記(c2)から前記(c4)の処理を、前記情報探索集合の前記頂点それぞれを前記第1の頂点として繰り返すことを、kが2からK以下である所定の値になるまで繰り返すことにより、頂点間ネットワークを表わすベースグラフを生成し、
    前記グラフ生成部は、前記生成されたベースグラフを用いて、前記グラフを生成する
    請求項1又は2記載のグラフ生成装置。
  4. 記憶部に格納されている情報探索集合の情報に対応する頂点における前記頂点間の類似度又は非類似度に基づき頂点間ネットワークを表わすグラフを生成するグラフ生成装置におけるグラフ生成方法であって、
    (a1)前記情報探索集合の情報に対応する頂点の何れか一つをターゲット頂点として設定すると共に、前記情報探索集合の情報に対応する頂点の少なくとも1つを、初期頂点としてランダムに設定し、
    (a2)前記(a1)で設定したターゲット頂点をクエリとして、所定の探索アルゴリズムに従って、前記(a1)で設定された前記初期頂点から、前記クエリに類似する頂点を探索し、
    (a3)前記(a2)の結果、前記探索結果として得られた頂点が前記ターゲット頂点でない場合に、前記ターゲット頂点に辿り着く頂点集合内の何れか一つの頂点と、前記探索結果として得られた頂点とをリンク結合し、
    (a4)前記(a1)から前記(a3)の処理を、所定の第1条件が満たされるまで繰り返し、
    前記(a1)から前記(a4)の処理を、所定の第2条件が満たされるまで繰り返すことにより、前記グラフを生成し、前記生成したグラフを、前記記憶部に格納する
    グラフ生成方法。
  5. 前記(a1)のステップは、前記情報探索集合の情報に対応する頂点の何れか一つをターゲット頂点として設定すると共に、前記情報探索集合の情報に対応する頂点のうちの複数の頂点を、前記初期頂点としてランダムに設定し、
    前記(a2)のステップは、所定の探索アルゴリズムに従って、前記(a1)で設定された前記複数の初期頂点の各々から、前記クエリに類似する頂点を各々探索し、
    前記(a3)のステップは、前記探索結果として得られた頂点が前記ターゲット頂点でない場合に、前記ターゲット頂点と、前記探索結果として得られた前記ターゲット頂点でない頂点のうち、前記ターゲット頂点と最も類似する頂点とをリンク結合する請求項4記載のグラフ生成方法。
  6. 前記グラフ生成装置は、K−NNリストを生成するK−NNリスト生成部と、前記K−NNリストに基づいて、ベースグラフを生成するベースグラフ生成部とを更に含み、
    前記K−NNリスト生成部は、
    (b1)前記情報探索集合の情報に対応する頂点の各々に対して、前記情報探索集合の情報に対応する頂点からランダムにK個の頂点を選択し、前記頂点を、前記K個の頂点の各々とリンク結合し、
    (b2)前記情報探索集合の情報に対応する頂点の各々に対して、前記頂点とリンク結合された前記K個の頂点と、前記K個の頂点の各々とリンク結合された頂点とから、前記頂点と類似するK個の頂点を選択し、
    (b3)前記情報探索集合の情報に対応する頂点の各々に対して、前記頂点と前記(b2)で選択された前記K個の頂点とがリンク結合されるようにリンクを張り替え、
    前記(b2)から前記(b3)の処理を、前記リンクの張り替えがなくなるまで繰り返すことにより、前記情報探索集合の情報に対応する頂点の各々に対する前記類似するK個の頂点が格納された前記K−NNリストを生成し、
    前記ベースグラフ生成部は、
    (c1)前記K−NNリストに基づいて、前記情報探索集合の情報に対応する頂点それぞれを、前記情報探索集合の前記頂点のうちの最も類似する頂点とリンク結合し、
    (c2)前記情報探索集合の情報に対応する各頂点から、前記情報探索集合の任意の前記頂点である第1の頂点を抽出し、前記K−NNリストに基づいて、当該第1の頂点からk番目(ただし、kは1より大きい整数)に類似する頂点である第2の頂点を、前記情報探索集合の情報に対応する各頂点から抽出し、
    (c3)前記第2の頂点を初期頂点とし、前記第1の頂点をクエリとして、貪欲探索アルゴリズムに従って、前記初期頂点から、前記クエリに類似する頂点を探索し、
    (c4)前記(c3)の結果、探索結果として得られた頂点が、前記第1の頂点でない場合に、当該第1の頂点と前記第2の頂点とを、直接的、または、当該1の頂点及び前記第2の頂点以外の頂点を介することにより間接的にリンク結合し、
    前記(c2)から前記(c4)の処理を、前記情報探索集合の前記頂点それぞれを前記第1の頂点として繰り返すことを、kが2からK以下である所定の値になるまで繰り返すことにより、頂点間ネットワークを表わすベースグラフを生成し、
    前記生成されたベースグラフを用いて、前記(a1)から前記(a4)の処理を、所定条件が満たされるまで繰り返すことにより、前記グラフを生成する
    請求項4又は5記載のグラフ生成方法。
  7. 請求項1〜請求項3の何れか1項に記載のグラフ生成装置を構成する各手段として、コンピュータを機能させることを特徴とするプログラム。
JP2012094780A 2012-04-18 2012-04-18 グラフ生成装置、方法、及びプログラム Active JP5710539B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012094780A JP5710539B2 (ja) 2012-04-18 2012-04-18 グラフ生成装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012094780A JP5710539B2 (ja) 2012-04-18 2012-04-18 グラフ生成装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2013222388A JP2013222388A (ja) 2013-10-28
JP5710539B2 true JP5710539B2 (ja) 2015-04-30

Family

ID=49593286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012094780A Active JP5710539B2 (ja) 2012-04-18 2012-04-18 グラフ生成装置、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP5710539B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12124230B2 (en) * 2021-12-10 2024-10-22 Mitsubishi Electric Research Laboratories, Inc. System and method for polytopic policy optimization for robust feedback control during learning

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4453440B2 (ja) * 2004-05-18 2010-04-21 日本電信電話株式会社 視覚的情報分類方法及び装置及びプログラム及び視覚的情報分類プログラムを記録した記憶媒体
JP4774019B2 (ja) * 2007-06-06 2011-09-14 日本電信電話株式会社 ネットワーク生成方法、情報探索方法、プログラム、ネットワーク生成装置および情報探索装置
US7818334B2 (en) * 2007-10-22 2010-10-19 Microsoft Corporation Query dependant link-based ranking using authority scores

Also Published As

Publication number Publication date
JP2013222388A (ja) 2013-10-28

Similar Documents

Publication Publication Date Title
Tsuda et al. Clustering graphs by weighted substructure mining
Yazdani et al. Optimization in dynamic environments utilizing a novel method based on particle swarm optimization
JP6977659B2 (ja) グラフ更新装置、グラフ更新方法、及びプログラム
Lou et al. Matchminer: Efficient spanning structure mining in large image collections
Somol et al. Efficient feature subset selection and subset size optimization
Du et al. Cognitive knowledge graph reasoning for one-shot relational learning
JP5711171B2 (ja) データ検索装置、データ検索方法、及びデータ検索プログラム
Liao et al. LD2: Scalable heterophilous graph neural network with decoupled embeddings
JP5851378B2 (ja) 時系列データ探索方法、装置、及びプログラム
JP5710539B2 (ja) グラフ生成装置、方法、及びプログラム
CN111400314B (zh) 利用向量图索引从数据库中检索节点向量的方法及装置
Van Zyl et al. A subspace-based method for PSO initialization
Silva et al. A parallel computing hybrid approach for feature selection
JP4774016B2 (ja) 情報探索方法、情報探索プログラムおよび情報探索装置
JP6898818B2 (ja) グラフ生成装置、グラフ生成方法、データ構造、及びプログラム
JP4774019B2 (ja) ネットワーク生成方法、情報探索方法、プログラム、ネットワーク生成装置および情報探索装置
Mohammad et al. Scale invariant multi-length motif discovery
Ougiaroglou et al. A simple noise-tolerant abstraction algorithm for fast k-nn classification
KR101887664B1 (ko) 그래프다발의 동적 분류 방법 및 장치
Phan et al. Enhancing clinical name entity recognition based on hybrid deep learning scheme
Jaeger et al. Efficient estimation of OOMs
Balov et al. How to use the catnet package
JP2012068776A (ja) 最適化装置、最適化方法、及び最適化プログラム
AlShami et al. Fuzzy partition technique for clustering Big Urban dataset
Dai et al. HLMA: An Efficient Subgraph Matching Algorithm

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140723

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150121

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150304

R150 Certificate of patent or registration of utility model

Ref document number: 5710539

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350