(57)【要約】【課題】データグラフを比較する方法等を提供する。【解決手段】実施形態は、変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用することと、抽出プロセスを、第１の特徴ベクトルを抽出するよう第１の画像に、及び第２の特徴ベクトルを抽出するよう第２の画像に適用し、第１の特徴ベクトル及び第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有することと、共通の組の特徴についての各々の定量化可能な値に基づき第１及び第２の特徴ベクトルの間の類似を表す相似値を計算することと、計算された相似値を出力することとを有する、コンピュータにより実装される方法を含む。【選択図】図１
2017220222.tif 000002
【特許請求の範囲】
【請求項１】
変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用し、
抽出プロセスを、第１の特徴ベクトルを抽出するよう前記第１の画像に、及び第２の特徴ベクトルを抽出するよう前記第２の画像に適用し、前記第１の特徴ベクトル及び前記第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有し、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第１の特徴ベクトルと前記第２の特徴ベクトルとの間の類似を表す相似値を計算し、
前記計算された相似値を出力する
ことを有する、コンピュータにより実施される方法。
【請求項２】
前記グラフデータの第１の部分及び前記グラフデータの第２の部分は、複数の辺によって相互に接続されている複数の頂点を夫々が有し、前記複数の辺の夫々は、源点としての前記複数の頂点のうちの１つをあて先頂点としての前記複数の頂点のうちの他の１つへ接続し、
前記変換プロセスは、
前記グラフデータの第１の部分及び前記グラフデータの第２の部分の夫々における各頂点を、２つの次元のうちの第１の次元における一意の位置及び前記２つの次元のうちの第２の次元における一意の位置に割り当て、
ピクセル値の２次元アレイにおける各エントリにおいてピクセル値を設定する
ことを有し、
前記ピクセル値を設定することは、
前記複数の辺の夫々について、対応するエントリにあるピクセル値を第１の値域の中の値として設定し、前記対応するエントリは、前記第１の次元において前記源点に割り当てられている一意の位置及び前記第２の次元において前記あて先頂点に割り当てられている一意の位置にあるエントリであり、
残りのアレイエントリにあるピクセル値を前記第１の値域の外の値に設定する
ことによる、請求項１に記載のコンピュータにより実施される方法。
【請求項３】
前記複数の辺は、双方向の辺を有し、該双方向の辺の夫々は、２つの頂点を、源点及びあて先頂点の両方として、互いに接続する、
請求項２に記載のコンピュータにより実施される方法。
【請求項４】
前記複数の辺は、定量的なラベルによって重み付けされた辺を有し、定量的なラベルによって前記複数の辺の夫々について前記対応するエントリにあるピクセル値を設定することは、前記対応するエントリにあるピクセル値を、前記定量的なラベルを表す前記第１の値域の中の値として設定することを有する、
請求項２に記載のコンピュータにより実施される方法。
【請求項５】
前記複数の頂点の夫々は、エンティティを表し、前記変換プロセスは、
前記グラフデータの第１の部分及び前記グラフデータの第２の部分の夫々から１つずつの頂点を有し、同じエンティティを表す頂点の対を決定し、夫々の決定された対について、当該対に含まれる頂点を、ピクセル値の夫々の２次元アレイの前記第１の次元及び前記第２の次元における等価な一意の位置に割り当てることを含む、
請求項２に記載のコンピュータにより実施される方法。
【請求項６】
前記抽出プロセスは、人工ニューラルネットワークを夫々の画像に適用して、夫々の特徴ベクトルを抽出することを有する、
請求項１に記載のコンピュータにより実施される方法。
【請求項７】
前記人工ニューラルネットワークは、畳み込みニューラルネットワークである、
請求項６に記載のコンピュータにより実施される方法。
【請求項８】
画像分類畳み込みニューラルネットワークモデルをトレーニングし、該トレーニングされた画像分類畳み込みニューラルネットワークモデルを前記畳み込みニューラルネットワークとして記憶することを更に有し、
前記トレーニングすることは、
画像対のトレーニング組を取得し、該画像対のトレーニング組の中の画像対について、対応する目標相似値を取得し、
前記画像対のトレーニング組の中の夫々の画像対について、順番に、
夫々の画像に対して前記画像分類畳み込みニューラルネットワークモデルを実行することによって当該画像対の各画像から特徴ベクトルを抽出し、２つの該特徴ベクトルの間の類似を表す相似値を計算し、該計算された相似値と前記目標相似値との間に差がある場合には、前記画像分類畳み込みニューラルネットワークモデル変更して前記差を小さくするようバックワード・エラー・プロパゲーションを実施し、前記抽出すること、前記計算すること、及び前記バックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に到達するか又は前記差が閾値を下回るまで、繰り返し実施される
ことを有する、請求項７に記載のコンピュータにより実施される方法。
【請求項９】
前記画像対のトレーニング組を取得することは、画像レポジトリから画像対をダウンロードすることを有する、
請求項８に記載のコンピュータにより実施される方法。
【請求項１０】
前記画像対のトレーニング組を取得することは、
原ラスター画像の組を生成し、
前記原ラスター画像の夫々について、回転及び／又はランダムなピクセル値編集を含む編集を当該原ラスター画像に対して行うことによって１つ以上の新しい画像を生成し、該１つ以上の新しい画像の夫々とともに当該原ラスター画像を前記画像対のトレーニング組に加えること
を有する、請求項８に記載のコンピュータにより実施される方法。
【請求項１１】
前記画像対の夫々について前記目標相似値を取得することは、当該画像対において前記原ラスター画像から前記新しい画像を取得するために実施される前記編集の程度を定量化し、該編集の程度を前記目標相似値において表すことを有する、
請求項１０に記載のコンピュータにより実施される方法。
【請求項１２】
グラフデータの部分に分割されたデータグラフを記憶するグラフデータ記憶システムにおける、コンピュータにより実施される方法であって、グラフデータの各部分は、複数の物理データ記憶ユニットの中の１つに記憶される、方法において、
前記データグラフへの追加のためにグラフデータの一部分を受け取り、
前記複数の物理データ記憶ユニットの中から、前記受け取られたグラフデータの一部分を記憶するための十分な利用可能記憶容量を有している物理データ記憶ユニットを候補として選択し、
前記候補となる物理データ記憶ユニットの夫々について、当該候補となる物理記憶ユニットに記憶されている前記グラフデータの部分又は各部分ごとに請求項１乃至１１のうちいずれか一項に記載のコンピュータにより実施される方法を、前記受け取られたグラフデータの一部分を前記グラフデータの第１の部分とし且つ前記記憶されているグラフデータの部分を前記グラフデータの第２の部分として実行し、当該候補となる物理データ記憶ユニットについて前記計算された相似値又は夫々の計算された相似値を記録し、夫々の候補となる物理データ記憶ユニットは単一の計算された相似値又は複数の計算された相似値を有し、当該候補となる物理データ記憶ユニットが複数の計算された相似値を有している場合には、該複数の計算された相似値の平均又は最大値を計算することによって前記複数の計算された相似値を単一の計算された相似値にし、
前記受け取られたグラフデータの一部分を記憶するために、最大の単一の相似値を有している前記候補となる物理データ記憶ユニットを選択し、前記受け取られたグラフデータの一部分を前記選択された候補となる物理データ記憶ユニットに書き込む
ことを有する、コンピュータにより実施される方法。
【請求項１３】
変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用するよう構成される変換プロセッサと、
抽出プロセスを、第１の特徴ベクトルを抽出するよう前記第１の画像に、及び第２の特徴ベクトルを抽出するよう前記第２の画像に適用するよう構成され、前記第１の特徴ベクトル及び前記第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、抽出プロセッサと、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第１の特徴ベクトルと前記第２の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される相似値計算部と、
前記計算された相似値を出力するよう構成される出力部と
を有する装置。
【請求項１４】
コンピュータデバイスによって実行される場合に、該コンピュータデバイスに、請求項１乃至１２のうちいずれか一項に記載のコンピュータにより実施される方法を実行させるコンピュータプログラム。
【請求項１５】
グラフデータベースから分割されるグラフデータの複数の部分の中のグラフデータの１つ以上の部分を夫々が記憶している複数の物理データ記憶ユニットと、
請求項１２に記載のコンピュータにより実施される方法を実行するよう構成されるデータベース管理システムと
を有するグラフデータ記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ解析の分野にある。特に、本発明は、データグラフの比較に関係がある。
【背景技術】
【０００２】
データグラフは複雑であり、２つのデータグラフ又はグラフデータの２つの部分の比較を行うことは計算コストが高い。データグラフの比較は、従って、システムのアイドル時間まで実施も表示もされないか、あるいは、比較を行うコンピュータ又はコンピュータネットワークに相当な実施負担をかけて実施される。データグラフ比較の多数の工学的応用は、計算コストの高さに起因して実現されない。
【０００３】
グラフ類似度の算出は、難しく、且つ、計算コストが高い。これまで、次のアプローチのうちの１つが取られている。Ｇ１及びＧ２を前提として、
１．ブルートフォース（brute  force）；全ての頂点及び辺を総当たりして、２つのグラフを比較する。
２．グラフ編集距離（graph  edit  distance）：グラフＧ１をＧ２に変換する動作に数値を割り当てる。全体の類似度は、全ての動作の積み重なりである。このアプローチは、高い複雑性を依然として有し、グラフのサイズとともに指数関数的に大きくなりうる。
３．特徴抽出（feature  extraction）：予め定義された特徴のリストに基づき、Ｇ１及びＧ２のそのような特徴の値を計算する。ドメイン・ヒューリスティクス（domain  heuristics）が特徴抽出では時々使用される。
【０００４】
一般に、既存のアプローチは、計算複雑性又は特徴選択の複雑さ及び恣意性に苦しむ。
【発明の概要】
【０００５】
データグラフを比較するための、計算コストがより低く且つよりスケーラブルな技術を考え出すことが望ましい。
【０００６】
実施形態は、変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用することと、抽出プロセスを、第１の特徴ベクトルを抽出するよう前記第１の画像に、及び第２の特徴ベクトルを抽出するよう前記第２の画像に適用し、前記第１の特徴ベクトル及び前記第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有することと、前記共通の組の特徴についての各々の定量化可能な値に基づき前記第１の特徴ベクトルと前記第２の特徴ベクトルとの間の類似を表す相似値を計算ことと、前記計算された相似値を出力することとを有する、コンピュータにより実施される方法を含む。
【０００７】
有利なことに、実施形態は、グラフデータを画像に変換し、該画像から特徴を抽出し、グラフデータの他の部分から同じようにして抽出された特徴どうしを比較することによって、グラフデータの部分どうしを比較するメカニズムを提供する。すなわち、画像比較技術は、グラフデータの部分どうしを比較するために利用される。
【０００８】
例えばリコンシリエーション処理のような、グラフデータの比較を必要とするプロシージャは、計算効率が良く、且つ、将来の比較のために有効に記憶され得るグラフデータの中間表現を含む様態において、実施され得る。実施形態は、グラフデータを比較する分野において特に有効である具体的な様態において、複雑なデータを比較のための簡単なフォーマットに要約する原理を利用する。
【０００９】
画像は画像データとして明らかであるから、前記抽出プロセスは、画像データに適用されると考えられ得る。画像データは、ピクセルの２次元アレイについて＜位置，ピクセル値＞のタプルであってよい。
【００１０】
任意に、前記グラフデータの第１の部分及び前記グラフデータの第２の部分は、複数の辺によって相互に接続されている複数の頂点を夫々が有し、前記複数の辺の夫々は、源点としての前記複数の頂点のうちの１つをあて先頂点としての前記複数の頂点のうちの他の１つへ接続し、前記変換プロセスは、前記グラフデータの第１の部分及び前記グラフデータの第２の部分の夫々における各頂点を、２つの次元のうちの第１の次元における一意の位置及び前記２つの次元のうちの第２の次元における一意の位置に割り当て、ピクセル値の２次元アレイにおける各エントリにおいてピクセル値を設定することを有し、前記ピクセル値を設定することは、前記複数の辺の夫々について、対応するエントリにあるピクセル値を第１の値域の中の値として設定し、前記対応するエントリは、前記第１の次元において前記源点に割り当てられている一意の位置及び前記第２の次元において前記あて先頂点に割り当てられている一意の位置にあるエントリであり、残りのアレイエントリにあるピクセル値を前記第１の値域の外の値に設定することによる。
【００１１】
画像は、画像データとも呼ばれ得る。ピクセルの２次元アレイは画像データである。画像データは、メタデータ、例えば、グラフデータの部分に割り当てられているＩＤ、を更に含んでよい。
【００１２】
前記複数の頂点に割り当てられる一意の位置の順序は、前記２つの次元のうちの両方の次元において同じである。
【００１３】
前記複数の頂点は、グラフデータの部分において順序付けられてよく、その場合に、グラフデータのその部分からの順序付けは、一意の位置を頂点に割り当てることにおいて維持され得る。例えば、前記複数の頂点が場所を表す場合に、該場所は、それらの緯度の位置又は経度の位置に従って順序付けられてよい。代替的に、前記複数の頂点がグラフデータの部分においてラベルを付される場合に、順序付けメトリック（例えば、番号順、アルファベット順、又は英数字順）が、一意の位置を割り当てることにおいて前記複数の頂点に適用され得る。一意の位置の順序はその順序付けメトリックによって決定される。同じ順序付けメトリックは、変換プロセスにおいてグラフデータの２つの部分の両方に適用され得る。
【００１４】
グラフデータは、双方向の辺を有してよく、該双方向の辺の夫々は、２つの頂点を、源点及びあて先頂点の両方として、互いに接続する。
【００１５】
グラフデータの部分は、もっぱら双方向の辺を有してよい。双方向の辺の使用は、グラフデータによってモデル化／表現されるドメインに依存する。例えば、道路網をモデル化することを考えると、複数の頂点は町を表し、重み付けされた辺は、辺によって接続されている頂点によって表された２つの町の間の最短ルートを表す。辺によって表される情報は方向性を持たないので、辺は双方向であることができる。他方で、メッセージがノード間で送信される電気通信網をモデル化することを考えると、ノードｉからノードｊへ送られるメッセージの数は、ノードｉからノードｊへの重み付けされた辺によって表される。メッセージは本質的に方向性を持ち、従って、辺は双方向ではなく方向性を持つ。
【００１６】
任意に、グラフデータは、夫々の定量的なラベルによって重み付けされた複数の辺を有してよく、そのような場合に、定量的なラベルによって前記複数の辺の夫々について前記対応するエントリにあるピクセル値を設定することは、前記対応するエントリにあるピクセル値を、前記定量的なラベルを表す前記第１の値域の中の値として設定することを有する。
【００１７】
定量的なラベルは、数、すなわち、数値であってよい。定量的なラベルを表す第１の値域の中の値としてピクセル値を設定することは、定量的なラベルをスケーリングすることを有してよい。例えば、スキャンは、定量的なラベルの最高数量を確立するよう、変換されるグラフデータの部分、又は集合体としてのグラフデータの２つの部分のいずれかにおいて、定量化ラベルに対して実施されてよい。このとき、スケーリングは、その最高数量がとり得るピクセル値の範囲の中の最大値に設定されるように、設定される。そして、スケーリングは、全てのピクセルについて維持される。
【００１８】
有利なことに、本発明者は、重み付けされた辺がピクセル値に変換され得ることに気付いた。そして、ピクセル値の適切な配置によって、グラフデータは画像データとして表現され、画像データに特化した技術による比較を受けることができる。
【００１９】
グラフデータにおける複数の頂点の夫々は、エンティティを表し、前記変換プロセスは、前記グラフデータの第１の部分及び前記グラフデータの第２の部分の夫々から１つずつの頂点を有し、同じエンティティを表す頂点の対を決定することと、夫々の決定された対について、当該対に含まれる頂点を、ピクセル値の夫々の２次元アレイの前記第１の次元及び前記第２の次元における等価な一意の位置に割り当てることとを含んでよい。
【００２０】
例えば、グラフデータの２つの部分において同じエンティティを表す頂点は、同じラベルに帰する。代替的に、何らかのマッピングが、グラフデータの第１の部分におけるどの頂点がグラフデータの第２の部分からの所与の頂点と同じエンティティを表すかを定めるために必要とされ得る。マッピングは、例えば、言語間の変換、又はマッピング・ルックアップ・テーブルの参照であってよい。
【００２１】
前記抽出プロセスは、前記第１の画像からの特徴ベクトル及び前記第２の画像からの特徴ベクトルを抽出する。前記抽出プロセスは、人工ニューラルネットワークを夫々の画像に適用して、特徴ベクトルを抽出することを有してよい。特に、前記抽出プロセスは、畳み込みニューラルネットワークを夫々の画像に適用して、夫々の特徴ベクトルを抽出することを有してよい。
【００２２】
畳み込みニューラルネットワーク（convolutional  neural  network）は、畳み込みニューラルネットワークモデルとも呼ばれ得る。具体的に、畳み込みニューラルネットワークモデルは、画像分類ニューラルネットワークモデルであってよい。畳み込みニューラルネットワークを適用することは、夫々の画像を入力として使用して畳み込みニューラルネットワークを順方向に伝播することである。畳み込みニューラルネットワークは、夫々の画像の全体に適用される。
【００２３】
有利なことに、畳み込みニューラルネットワークは、画像分類の分野において特に有効である特殊な形のニューラルネットワークである。実施形態は、グラフデータを画像データに変換することによって、グラフデータの分野において畳み込みニューラルネットワークモデルを利用するメカニズムを提供する。
【００２４】
任意に、実施形態は、画像分類畳み込みニューラルネットワークモデルをトレーニングし、該トレーニングされた画像分類畳み込みニューラルネットワークモデルを前記畳み込みニューラルネットワークとして記憶することを更に有してよく、あるいは、そのために適切であり得る。前記トレーニングすることは、画像対のトレーニング組を取得し、該画像対のトレーニング組の中の画像対について、対応する目標相似値を取得することと、前記画像対のトレーニング組の中の夫々の画像対について、順番に、夫々の画像に対して前記画像分類畳み込みニューラルネットワークモデルを実行することによって当該画像対の各画像から特徴ベクトルを抽出し、２つの該特徴ベクトルの間の類似を表す相似値を計算し、該計算された相似値と前記目標相似値との間に差がある場合には、前記画像分類畳み込みニューラルネットワークモデル変更して前記差を小さくするようバックワード・エラー・プロパゲーションを実施することとを有する。このとき、前記抽出すること、前記計算すること、及び前記バックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に到達するか又は前記差が閾値を下回るまで、繰り返し実施される。
【００２５】
トレーニング・プロシージャは、バックワード・エラー・プロパゲーション（backward  error  propagation）・プロシージャであってよい。そのプロシージャにおいて、画像分類ニューラルネットワークモデルによって抽出された特徴ベクトルによって生成される計算された相似値と、画像対についての目標相似値との間の差は、適応可能な係数に対する前記差の勾配に基づき、重み係数及びバイアス係数のような、画像分類ニューラルネットワークモデルの畳み込みレイヤにおけるパラメータ、又はモデルの各レイヤでの他の変更プロセスを適応させることによって、最小限にされる。トレーニング・プロシージャは、時間プロセッサノード以外の他の入力ノードの重み係数を適応させるためにも使用されてよい。なお、本発明の実施形態は、用いられる特定のトレーニング・プロシージャによって制限されない。
【００２６】
例えば、前記画像対のトレーニング組は、グラフデータのサンプル部分を取得し、グラフデータのそれらサンプル部分に対して前記変換プロセスを実施してサンプル画像データを取得することによって生成される画像の組である。対応する目標相似値を求めることは、グラフデータのサンプル部分に対して既存のグラフ類似度算出を実行するプロセスであってよく、そのように求められた相似値（場合により、スケーリングを受ける。）が目標相似値として設定される。既存のグラフ類似度算出は、ブルートフォース演算（全ての頂点及び辺を総当たりして、２つのグラフを比較する。）、又はグラフ編集距離（１つのサンプル部分を他に変換する動作に数値を割り当て、全体の類似度が全ての動作の積み重なりである。）であってよい。有利なことに、計算コストが高い既存のグラフ類似度算出は、実行するのに計算コストがより低い畳み込みニューラルネットワークモデルが、将来の実行のためにトレーニングされ得るように、トレーニングの部分として実行される。すなわち、トレーニング・プロシージャは、計算コストが高くなり得るので、意図的に、適切な目標相似値が使用されるために、一度トレーニングされると、グラフデータの将来の比較は、グラフデータから変換された画像どうしを比較するために、計算コストがより低い、トレーニングされた畳み込みニューラルネットワークを使用して実施され得ることになる。
【００２７】
更なる代替案として、前記画像対のトレーニング組を取得することは、画像レポジトリから画像対をダウンロードすることを有してよい。あるいは、前記画像対のトレーニング組を取得することは、原ラスター画像の組を生成することと、前記原ラスター画像の夫々について、回転及び／又はランダムなピクセル値編集を含む編集を当該原ラスター画像に対して行うことによって１つ以上の新しい画像を生成し、該１つ以上の新しい画像の夫々とともに当該原ラスター画像を前記画像対のトレーニング組に加えることとを有してよい。そのような場合に、前記画像対の夫々について前記目標相似値を取得することは、当該画像対において前記原ラスター画像から前記新しい画像を取得するために実施される前記編集の程度を定量化し、該編集の程度を前記目標相似値において表すことを有してよい。
【００２８】
すなわち、２つの画像の間の編集距離が計算される。このとき、原画像を新しい画像に変換する動作には数値が割り当てられ、目標相似値は全ての動作の積み重ねである。
【００２９】
他の態様の実施形態は、グラフデータの部分に分割されたデータグラフを記憶するグラフデータ記憶システムにおける、コンピュータにより実施される方法であって、グラフデータの各部分は、複数の物理データ記憶ユニットの中の１つに記憶される、方法において、前記データグラフへの追加のためにグラフデータの一部分を受け取ることと、前記複数の物理データ記憶ユニットの中から、前記受け取られたグラフデータの一部分を記憶するための十分な利用可能記憶容量を有している物理データ記憶ユニットを候補として選択することと、前記候補となる物理データ記憶ユニットの夫々について、当該候補となる物理記憶ユニットに記憶されている前記グラフデータの部分又は各部分ごとに、グラフデータの第１及び第２の部分を比較する実施形態のコンピュータにより実施される方法を、前記受け取られたグラフデータの一部分を前記グラフデータの第１の部分とし且つ前記記憶されているグラフデータの部分を前記グラフデータの第２の部分として実行し、当該候補となる物理データ記憶ユニットについて前記計算された相似値又は夫々の計算された相似値を記録し、夫々の候補となる物理データ記憶ユニットは単一の計算された相似値又は複数の計算された相似値を有し、当該候補となる物理データ記憶ユニットが複数の計算された相似値を有している場合には、該複数の計算された相似値の平均又は最大値を計算することによって前記複数の計算された相似値を単一の計算された相似値にすることと、前記受け取られたグラフデータの一部分を記憶するために、最大の単一の相似値を有している前記候補となる物理データ記憶ユニットを選択し、前記受け取られたグラフデータの一部分を前記選択された候補となる物理データ記憶ユニットに書き込むこととを有する、コンピュータにより実施される方法を含む。
【００３０】
実施形態は、変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用するよう構成される変換プロセッサと、抽出プロセスを、第１の特徴ベクトルを抽出するよう前記第１の画像に、及び第２の特徴ベクトルを抽出するよう前記第２の画像に適用するよう構成され、前記第１の特徴ベクトル及び前記第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、抽出プロセッサと、前記共通の組の特徴についての各々の定量化可能な値に基づき前記第１の特徴ベクトルと前記第２の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される相似値計算部と、前記計算された相似値を出力するよう構成される出力部とを有する装置を含んでよい。
【００３１】
実施形態は、変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用する手段と、
抽出プロセスを、第１の特徴ベクトルを抽出するよう前記第１の画像に、及び第２の特徴ベクトルを抽出するよう前記第２の画像に適用し、前記第１の特徴ベクトル及び前記第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、手段と、前記共通の組の特徴についての各々の定量化可能な値に基づき前記第１の特徴ベクトルと前記第２の特徴ベクトルとの間の類似を表す相似値を計算する手段と、前記計算された相似値を出力する手段とを有する装置を含んでよい。
【００３２】
実施形態は、コンピュータ装置によって実行される場合に、該コンピュータ装置に、本発明を具現する方法を実行させる、例えばコンピュータプログラムのようなソフトウェアを含んでよい。そのようなコンピュータ装置は、例えばサーバ又は他のコンピュータのようなコンピュータデバイスであってよく、あるいは、互いに協働する、相互接続されたコンピュータデバイスのネットワークであってよい。ソフトウェア又はコンピュータプログラムは、コンピュータ可読媒体に記憶されてよい。コンピュータ可読媒体は、非一時的なコンピュータ可読媒体であってよい。
【図面の簡単な説明】
【００３３】
実施形態の詳細な説明は、これより、添付の図面を参照して与えられる。
【図１】実施形態における処理のフローを説明する概略図である。
【図２ａ】有向グラフデータの部分の視覚化を表す。
【図２ｂ】図２ａのグラフデータのエンコーディングの例を表す。
【図３】実施形態の装置を表す。
【図４】実施形態の装置の基礎にあるシステムアーキテクチャの例を表す。
【図５】実施形態の方法を表す。
【図６ａ】グラフデータの部分の視覚化を表す。
【図６ｂ】実施形態によって生成されるグレースケール画像を表す。
【図７】実施形態のシステムを表す。
【図８】畳み込みニューラルネットワークモデルの例を表す。
【発明を実施するための形態】
【００３４】
図１は、実施形態における処理のフローを説明する概略図である。
【００３５】
ステップＳ１０１で、変換プロセスは、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用される。変換プロセスは、グラフデータの２つの部分を入力としてとり、グラフデータの各部分を各々のデータに変換し、各々の画像を出力する。変換プロセスは、グラフデータの夫々の部分から情報を抽出することと、抽出された情報を位置及びピクセル値の対に変換することを含み、画像はピクセル値の２次元アレイである。
【００３６】
グラフの部分はグラフ全体であってよい。グラフはタプル＜Ｖ，Ｅ＞である。ここで、Ｖは、エンティティ（場合により、頂点ラベルを伴う。）の有限集合であり、Ｅは、関係＜ａ，ｂ＞∈Ｖ×Ｖ（場合により、辺ラベルを伴う。）の有限集合である。辺は、有向である（第１の頂点ａから第２の頂点ｂへ向く。）か、又は無向であることができる。グラフの例は、コンピュータネットワーク、道路網、オンライン又はリアルライフ・ソーシャルネットワーク、などである。これらの例では、コンピュータ、不動産、人／アバターが頂点であり、ファイバケーブル、道路及びコンタクトが辺である。それらの例の中でも、コンピュータネットワーク及び道路網は双方向又は無向であることができ、一方、ソーシャルネットワークは有向である可能性が高い。それらの例のいずれもが、グラフデータの部分として表現され得る。
【００３７】
変換プロセスは、グラフデータの第１及び第２の部分を取得する取得ステップを含むか、あるいは、取得ステップによって先行されてよい。コンピュータにより実施される方法は、入力を受け入れるためのインターフェイスを含む、実行可能なコンピュータプログラムであってよく、あるいは、グラフデータ部分の物理アドレスのような入力は、方法を開始するコマンドライン命令（又は同等物）において引数として供給され得る。
【００３８】
コンピュータにより実施される方法は、処理されているデータを、それらが処理されるまで保持することを含んでよく、処理された時点でデータは捨てられ、あるいは、グラフデータの様々なバージョン（グラフデータの部分、画像、及び／又は特徴ベクトル）は、ユーザがそれらを維持されるよう、他の位置へ転送されるよう、又は捨てられるよう指示するまで、全てがストレージにおいて留められてよい。ユーザは、これに関連して、コンピュータにより実施される方法を開始し、方法が実行されるべきグラフデータの第１及び第２の部分の選択する人又はエンティティであると見なされることが知られる。
【００３９】
グラフ及び画像のサイズには制限がない。実際に、グラフは、分散ストレージにおいて記憶され、隣接行列として符号化され得、各サーバが隣接行列のタイルを保持する。
【００４０】
変換プロセスは、グラフデータの部分を画像データに変換する。変換プロセスの間に生成されるデータの中間顕現が存在し得る。例えば、グラフデータの部分は、それらが変換プロセスへの入力に対して隣接行列の形をとらない場合に、隣接行列へ、それから画像データへ変換されてよい。
【００４１】
図２ａは、有向グラフデータの部分の視覚化を表し、図２ｂは、グラフの例となるエンコーディングを表す。変換プロセスは、グラフデータの第１及び／又は第２の部分を、それらのネイティブのエンコーディングから隣接行列へ、そして隣接行列から画像データへ変換することを含んでよい。画像は、グラフデータの各々の部分に相当する。例えば頂点ラベルのような、グラフデータにおいて存在するある情報は、画像表現において失われ、それにより、画像は、グラフデータの部分から抽出されると、すなわち、その部分の抽出部であると見なされ得る。
【００４２】
隣接行列は、夫々の頂点についての行及び列を含む。夫々の辺は、源点の行及びあて先頂点の列にある行列エントリで“１”によって表される。隣接行列は、位置が保たれた状態で、隣接行列エントリをピクセル値に変換することによって画像データに変換され得る（すなわち、位置（ｉ，ｊ）での隣接行列エントリは、（ｉ，ｊ）でのピクセルのピクセル値に変換される。）。変換は、画像データが生成されることおいて許されているピクセル値の範囲に依存する。例えば、夫々のピクセルは黒又は白のいずれかであることができ、それにより、“０”及び“１”の値は変更される必要がない。代替的に、辺は重み付けられ、行列エントリは辺の重みを表し、値域の中の１つの値であることができる。その値域は、その場合に、画像データのピクセル値の範囲に適合するよう増減されてよい。
【００４３】
画像データは、ピクセル値の２次元アレイであってよい、任意に、画像メタデータを更に含む。２次元アレイは、辺を表すエントリでの値がピクセル値の範囲から選択される点を除いて（隣接行列では、他方で、値は０から１の間である。）、それがあたかも隣接行列であるかのようにコンパイルされ得る。例えば、ピクセル値の範囲は０から２５５であってよい。変換プロセスは、グラフデータの各々の部分における各頂点に、２つの次元のうちの第１の次元における一意の位置及び２つの次元のうちの第２の次元における一意の位置を割り当てることと、ピクセル値の２次元アレイにおける各エントリにおいてピクセル値を設定することとを有してよい。ピクセル値を設定することは、複数の辺の夫々について、対応するエントリにあるピクセル値を第１の値域の中の値として設定し、前記対応するエントリは、第１の次元において源点に割り当てられている一意の位置及び第２の次元においてあて先頂点に割り当てられている一意の位置にあるエントリであり、残りのアレイエントリにあるピクセル値を前記第１の値域の外の値に設定することによる。例えば、第１の値域の外の値は、とり得るピクセル値の範囲の一方の端にある値であってよく、第１のピクセル値範囲は、とり得るピクセル値の範囲の中の全ての他のピクセル値であってよい。
【００４４】
ピクセル値は、ピクセルの色を表してよい。マトリクスエントリごとに１つのピクセル値が存在する例では、画像はモノクロ画像であり、ピクセル値は、そのピクセルでのモノクロームの強さに対応する。例えば、画像はグレースケールであってよく、とり得るピクセル値の範囲は、白から黒に対応する、最小値（例えば、０）から最大値（例えば、２５５）である。
【００４５】
生成された画像は画像データとして記憶される。画像は、ロー（raw）画像データとして、ビットマップとして、あるいは、ｊｐｅｇ又はｐｎｇのような圧縮画像ファイルとして記憶されてよい。記憶される画像は、ストレージにおいてグラフデータの各々の部分に取って代わってよく、あるいは、グラフデータの各々の部分と関連付けて記憶されてよい。
【００４６】
変換ステップは、２つの画像においてピクセルの数に違いがある場合に、空（empty）の、すなわち、零値のピクセルの行及び列を２つの画像のうちの小さい方へ、２つの画像がサイズ的に等しくなる（すなわち、第１の画像はｍ×ｎピクセルであり、第２の画像はｊ×ｋピクセルであり、ｊ＝ｍ且つｋ＝ｎ。）まで加えることを更に含んでよい。
【００４７】
任意に、実施が受け入れるよう構成される最大画像サイズが存在してよく（利用可能なプロセッシングハードウェア、結果を得るまでの所要時間、などのような因子に応じて決定される。）、全ての画像は、空の、すなわち、零値のピクセルの行及び列を加えることによって、（特徴抽出のためのモデルをトレーニングすること、及び特徴抽出のためのモデルを実行することの両方において）最大画像サイズまで大きくされる。すなわち、画像サイズは固定されてよく、空のピクセルは、より小さい画像を固定画像サイズに変換するために加えられる。
【００４８】
次に、ステップＳ１０２で、抽出プロセスが画像に対して実施される。抽出プロセスは、画像に適用されて各々の特徴ベクトルを抽出するプロセスである。抽出プロセスへの入力は第１の画像及び第２の画像であり、抽出プロセスは、画像を、出力としての各々の特徴ベクトルへ変換する。特徴ベクトルは、共通の組の特徴の中の夫々の特徴についての定量化可能な値（すなわち、数）を有する。共通の組の特徴は、画像の特徴であり、画像に畳み込みニューラルネットワークモデルを受けさせることによって抽出され得る。
【００４９】
畳み込みニューラルネットワークモデルは、抽出プロセスを実施するための、例となるモデルである。入力データ、すなわち、画像は、サイズが大きいことがある。畳み込みニューラルネットワークモデルは、次元削減を有効に実施して、画像を画像の特徴を表すベクトルへと減じる。
【００５０】
畳み込みニューラルネットワークモデルは、抽出プロセスによって適用される、予めトレーニングされた画像分類畳み込みニューラルネットワークモデルであってよい。トレーニングは、コンピュータにより実施される方法の部分として行われてよく、あるいは、トレーニングは、サード・パーティによって行われてよい。
【００５１】
特徴ベクトルは記憶されてよい。特徴ベクトルは、ストレージにおいてグラフデータの各々の部分及び／又は各々の画像データに取って代わってよい。例えば、グラフデータの部分は、その特徴ベクトルと関連付けて記憶されてよく、それにより、グラフデータの部分に係る特徴比較は、変換プロセス及び抽出プロセスがない場合に実施可能である。
【００５２】
ステップＳ１０３で、相似値、すなわち、第１の特徴ベクトルと第２の特徴ベクトルとの間の類似を表す値が、共通の組の特徴についての各々の定量化可能な値に基づき計算される。計算は、例えば、コサイン距離算出であってよい。出力は０から１の間の値、又はステップＳ１０２で抽出された２つの特徴ベクトルの類似を表す、何らかの他の方法でスケーリングされた値であってよい。
【００５３】
ステップＳ１０４で、計算された相似値が出力される。出力は、コンピュータにより実施される方法を開始するエンティティへ返されてよく、あるいは、方法の開始時に指定された物理アドレスへ送られてよい。出力は、２つの特徴ベクトルの類似、言い換えると、従って、２つの画像、最終的には、グラフデータの２つの部分の類似を表す。計算された相似値は、ブール値（Boolean  value）、すなわち、２つのオプション、グラフデータの部分（すなわち、より具体的には、グラフデータのそれらの部分から変換された画像から抽出する特徴ベクトル）が類似していること、又はそれらが類似していないこと、のうちの一方を表す値であってよい。代替的に、例えば０から１の間といった、値域が存在してよく、出力される相似値は、計算された類似度を表す範囲の中の値である。
【００５４】
例えば、グラフデータの第１及び第２の部分は道路網の表現であってよい（頂点はジャンクションを表し、重み付けされた辺は、接続されたジャンクション間の距離又は移動時間を表す。）。出力された相似値は、１つの道路網の交通静穏化（traffic  calming）又は交通制御対策が他の道路網に適用され得るかどうかを判定するために利用されてよい。代替の利用では、第１及び第２のデータ部分は、電気通信又はコンピュータネットワークのようなメッセージング又は通信システムの表現であってよい。このとき、頂点は、ノード又は端末を表し、辺は、夫々の期間中にノード間で送信されるメッセージ又はデータを表す。辺は、送信されるメッセージの数又はデータの量を表す重みにより重み付けされてよい。相似値を求めることは、異なるネットワークにおけるアクティビティが比較されること、又は異なる期間中の同じネットワークにおけるアクティビティが比較されることを、計算効率の良い様態において可能にする。そのような比較は、パターンマッチング及び／又は不良若しくは疑わしいネットワークアクティビティを識別することにとって有益であり得る。例えば、期間を表すデータグラフは、１つ以上の先行する期間を表すデータグラフ又は夫々のデータグラフと比較されてよく、１つ以上の先行する期間の予め定義された割合以上について予め定義された閾値を下回る計算された相似値（すなわち、“否定（no）”の、又は別なふうに非類似を表す、計算された相似値）は、問題となっている期間において異常なアクティビティ（例えば、不良又はサージ）が起きたとの警報（例えば、ユーザ端末又は他の出力あて先に対する。）を引き起こし得る。
【００５５】
図３は、実施形態の装置を表す。装置は、変換プロセッサ１０１、抽出プロセッサ１０２、類似計算部１０３、及び出力部１０４を有する。
【００５６】
変換プロセッサ１０１は、グラフデータの第１の部分及びグラフデータの第２の部分を入力として受信又は取得するよう構成される（変換プロセッサへ向けられた矢印によって表される。）。変換プロセッサ１０１は、図１のステップＳ１０１の変換プロセス、又は本明細書の別の場所で記載されている変換プロセスを実施し、それによって、第１の画像データとして現れる第１の画像及び第２の画像データとして表れる第２の画像を生成するよう構成される。図３において変換プロセッサ１０１から外に向かう矢印は、変換プロセッサ１０１から抽出プロセッサ１０２への第１の画像データの転送、及び変換プロセッサ１０１から抽出プロセッサ１０２への第２の画像データの転送を表す。
【００５７】
抽出プロセッサ１０２は、第１の画像データ及び第２の画像データを入力として受信又は取得するよう構成される。抽出プロセッサ１０２は、図１のステップＳ１０２の抽出プロセス、又は本明細書の別の場所で記載されている抽出プロセスを実施し、それによって、第１の画像データからは第１の特徴ベクトルを、第２の画像データからは第２の特徴ベクトルを抽出するよう構成される。例えば、抽出プロセッサ１０２は、画像データに対して画像畳み込みニューラルネットワークを適用して、各々の特徴ベクトルを抽出するよう構成されてよい。抽出プロセッサ１０２から外に向かう矢印は、抽出プロセッサ１０２から類似計算部１０３への第１及び第２の特徴ベクトルの転送を表す。
【００５８】
類似計算部１０３は、第１の特徴ベクトル及び第２の特徴ベクトルを入力として受信又は取得するよう構成される。類似計算部１０３は、ステップＳ１０３の相似値の計算、又は本明細書の別の場所で記載される、２つの特徴ベクトルから相似値を計算するプロシージャを実施し、それによって、第１の特徴ベクトルと第２の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される。例えば、類似計算部１０３は、コサイン距離比較を実施してよい。類似計算部１０３は、計算された相似値を出力部１０４へ転送するよう構成される。
【００５９】
出力部１０４は、計算された相似値を類似計算部から取得又は受信し、相似値を出力あて先へ出力するよう構成される。出力部１０４は、図１のＳ１０４での出力ステップを実施するよう構成される。出力あて先は、指定された記憶場所であってよい。代替的に、出力される場所は、変換プロセッサ１０１へグラフデータの部分を供給する装置又はエンティティであってよい。
【００６０】
図４は、実施形態の装置の基礎にあるか、実施形態のコンピュータにより実施される方法を実施するか、又は実施形態のプログラム若しくはソフトウェアを実行する、例となるシステムアーキテクチャを表す。
【００６１】
図５のシステムアーキテクチャは、例えば、データ記憶サーバ、データベースコントローラ、又はサーバのような、コンピュータデバイスである。システムアーキテクチャは、協働する多数のそのようなコンピュータデバイスを有し得る。コンピュータデバイスは、プロセッサ９９３及びメモリ９９４を有する。任意に、コンピュータデバイスは、他のコンピュータデバイスとの、例えば、本発明の実施形態の他のコンピュータデバイスとの通信のためのネットワークインターフェイス９９７を更に含む。
【００６２】
例えば、実施形態は、そのようなコンピュータデバイスのネットワークから成ってよい。任意に、コンピュータデバイスは、例えば、キーボード及びマウス９９６のような、１つ以上の入力メカニズムと、例えば、１つ以上のモニタ９９５のような、表示ユニットとを更に含む。コンポーネントは、バス９９２を介して互いへ接続される。
【００６３】
メモリ９９４はコンピュータ可読媒体を含んでよい。語「コンピュータ可読媒体」は、コンピュータ実行可能命令を搬送するよう又はデータ構造が記憶されるよう構成される単一の媒体又は複数の媒体（例えば、中央集権型若しくは分散型データベース並びに／又は関連するキャッシュ及びサーバ）を指してよい。コンピュータ実行可能命令は、例えば、汎用コンピュータ、特別目的のコンピュータ、又は特別目的のプロセッシングデバイス（例えば、１つ以上のプロセッサ）がアクセス可能であって、それらに１つ以上の機能又は動作、例えば、実施形態のコンピュータにより実施される方法（例えば、図１を参照）を実行させ、あるいは、それらを実施形態の機能装置（例えば、図３を参照）として動作させる命令及びデータを含んでよい。よって、語「コンピュータ可読記憶媒体」、気化による実行のための命令の組であって、機械に、本開示の方法のうちのいずれか１つ以上を実行させるものを記憶し、符号化し、又は搬送することができる如何なる媒体も含んでよい。語「コンピュータ可読記憶媒体」は、制限なしに、固体状態メモリ、光学媒体及び磁気媒体を含むと然るべく理解され得る。例として、制限なしに、そのようなコンピュータ可読媒体は、ランダムアクセスメモリ（ＲＡＭ；Random  Access  Memory）、リードオンリーメモリ（ＲＯＭ；Read-Only  Memory）、電気的消去可能なプログラム可能リードオンリーメモリ（ＥＥＰＲＯＭ；Electrically  Erasable  Programmable  Read-Only  Memory）、コンパクトディスク・リードオンリーメモリ（ＣＤ−ＲＯＭ；Compact  Disc  Read-Only  Memory）若しくは他の光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気記憶デバイス、フラッシュメモリデバイス（例えば、固体状態メモリデバイス）を含む、非一時的なコンピュータ可読記憶媒体を含んでよい。
【００６４】
プロセッサ９９３は、コンピュータデバイスを制御し、処理演算（例えば、実施形態のコンピュータにより実施される方法（例えば、図１を参照）を実施するようメモリに記憶されているコードを実行すること）を実行するよう、あるいは、本明細書で及び特許請求の範囲で記載されるトレーニングマシン又はトレーニングプロセッサ、変換プロセッサ１０１、抽出プロセッサ１０２、相似値計算部１０３、及び出力部１０４の多種多様な機能を実装するよう構成される。メモリ９９４は、プロセッサ９９３によって読み出し及び書き込みされるデータを記憶する。本明細書で言及されるように、プロセッサは、例えば、マイクロプロセッサ、中央演算処理装置、又は同様のもののような、１つ以上の汎用のプロセッシングデバイスを含んでよい。プロセッサは、複数命令セットコンピューティング（ＣＩＳＣ；complex  instruction  set  computing）マイクロプロセッサ、縮小命令セットコンピューティング（ＲＩＳＣ；reduced  instruction  set  computing）マイクロプロセッサ、超長命令語（ＶＬＩＷ；very  long  instruction  word）マイクロプロセッサ、又は他の命令セットを実装するプロセッサ若しくは命令セットの組み合わせを実装するプロセッサを含んでよい。プロセッサは、例えば、特定用途向け集積回路（ＡＳＩＣ；application  specific  integrated  circuit）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ；field  programmable  gate  array）、デジタル信号プロセッサ（ＤＳＰ；digital  signal  processor）、ネットワークプロセッサ、又は同様のもののような、１つ以上の特別目的のプロセッシングデバイスを更に含んでよい。１つ以上の実施形態において、プロセッサは、本明細書で説明される動作及びステップを実施するための命令を実行するよう構成される。
【００６５】
表示ユニット９９５は、コンピュータデバイスによって記憶されているデータの表現を表示してよく、更には、ユーザとコンピュータデバイスに記憶されているプログラム及びデータとの間のインタラクションを可能にするカーソル及びダイアログボックス及び画面を表示してよい。入力メカニズム９９６は、ユーザがデータ及び命令をコンピュータデバイスへ入力することを可能にしてよい。
【００６６】
ネットワークインターフェイス（ネットワークＩ／Ｆ）９９７は、例えばインターネットのようなネットワークへ接続されてよく、他のそのようなコンピュータデバイスへネットワークを介して接続される。ネットワークＩ／Ｆ９９７は、ネットワークを介した他の装置との間のデータ入出力を制御してよい。例えば、マイクロホン、スピーカ、プリンタ、電源ユニット、ファン、ケース、スキャナ、トラッカーボール、などのような、他の周辺機器が、コンピュータデバイスにおいて含まれてよい。
【００６７】
図３の変換プロセッサ１０１は、メモリ９９４に記憶されているプロセッシング命令（プログラム）を実行し且つデータをネットワークＩ／Ｆ９９７を介して交換するプロセッサ９９３（又は複数のプロセッサ９９３）であってよい。特に、プロセッサ９９３は、ネットワークＩ／Ｆ９９７を介して、又は装置内の内部バスを介して、グラフデータの類似比較を要求するエンティティ（エンティティは、コンピュータデバイスの外部にあってよく、あるいは、同じコンピュータデバイス上で実行されるプログラムであってよい。）からグラフデータの第１及び第２の部分を受信し、図１のステップＳ１０１で見られるように、グラフデータの第１及び第２の部分を第１及び第２の画像に変換するよう、プロセッシング命令を実行する。更には、プロセッサ９９３は、接続されている記憶ユニットにおいて画像（又はそれらを符号化するデータ）を記憶するよう、且つ／あるいは、ネットワークＩ／Ｆ９９７を介して、又は内部バスを介して、第１の画像を符号化するデータ及び第２の画像を符号化するデータを抽出プロセッサへ送るよう、プロセッシング命令を実行してよい。
【００６８】
図３の抽出プロセッサ１０２は、メモリ９９４に記憶されているプロセッシング命令（プログラム）を実行し且つデータをネットワークＩ／Ｆ９９７を介して交換するプロセッサ９９３（又は複数のプロセッサ９９３）であってよい。特に、プロセッサ９９３は、ネットワークＩ／Ｆ９９７を介して、又は装置内の内部バスを介して、変換プロセッサ１０１から第１及び第２の画像を受信し、図１のステップＳ１０２で見られるように、第１及び第２の画像から第１の特徴ベクトル及び第２の特徴ベクトルを抽出するよう、プロセッシング命令を実行する。更には、プロセッサ９９３は、接続されている記憶ユニットにおいて特徴ベクトル（又はそれらを符号化するデータ）を記憶するよう、且つ／あるいは、ネットワークＩ／Ｆ９９７を介して、又は内部バスを介して、第１及び第２の特徴ベクトルを相似値計算部１０３へ送るよう、プロセッシング命令を実行してよい。
【００６９】
図１及び３には表されていないが、実施形態のコンピュータにより実施される方法は、トレーニングプロセスを含んでよく、実施形態の装置は、トレーニングプロセスを実行するよう構成されるトレーニングプロセッサを含んでよい。トレーニングプロセスは別な場所で記載されており、画像分類ニューラルネットワークモデルをトレーニングする（すなわち、画像分類ニューラルネットワークモデルにおける構成可能パラメータの値を設定する）プロセスである。画像分類ニューラルネットワークモデルは抽出プロセッサ１０２へ供給され、ステップＳ１０２を実行する際に抽出プロセッサ１０２で第１及び第２の画像に対して実行又は適用される。トレーニングプロセッサは、メモリ９９４に記憶されているプロセッシング命令（プログラム）を実行し且つデータをネットワークＩ／Ｆ９９７を介して交換するプロセッサ９９３（又は複数のプロセッサ９９３）であってよい。特に、プロセッサ９９３は、ネットワークＩ／Ｆ９９７を介して、又は装置内の内部バスを介して、画像対のトレーニング組を受信又は取得し、画像対のトレーニング組の中の画像対について、対応する目標相似値を求め、画像対のトレーニング組及び目標相似値を用いて画像分類ニューラルネットワークモデルをトレーニングするよう、プロセッシング命令を実行する。更には、プロセッサ９９３は、接続されている記憶ユニットにおいて、トレーニングされた画像分類ニューラルネットワークモデルを記憶するよう、且つ／あるいは、ネットワークＩ／Ｆ９９７を介して、又は内部バスを介して、トレーニングされた画像分類ニューラルネットワークモデルを抽出プロセッサ１０２へ送るよう、プロセッシング命令を実行してよい。
【００７０】
図３の相似値計算部１０３は、メモリ９９４に記憶されているプロセッシング命令（プログラム）を実行し且つデータをネットワークＩ／Ｆ９９７を介して交換するプロセッサ９９３（又は複数のプロセッサ９９３）であってよい。特に、プロセッサ９９３は、ネットワークＩ／Ｆ９９７を介して、又は装置内の内部バスを介して、抽出プロセッサ１０２から第１及び第２の特徴ベクトルを受信し、図１のステップＳ１０３で見られるように、２つの特徴ベクトルの間の類似を表す相似値を計算するよう、プロセッシング命令を実行する。更には、プロセッサ９９３は、接続されている記憶ユニットにおいて、計算された相似値を記憶するよう、且つ／あるいは、ネットワークＩ／Ｆ９９７を介して、又は内部バスを介して、計算された相似値を出力部１０４へ送るよう、プロセッシング命令を実行してよい。
【００７１】
図３の出力部１０４は、メモリ９９４に記憶されているプロセッシング命令（プログラム）を実行し且つデータをネットワークＩ／Ｆ９９７を介して交換するプロセッサ９９３（又は複数のプロセッサ９９３）であってよい。特に、プロセッサ９９３は、ネットワークＩ／Ｆ９９７を介して、又は装置内の内部バスを介して、相似値計算部１０３から計算された相似値を受信し、図１のステップＳ１０４で見られるように、計算された相似値を出力するよう、プロセッシング命令を実行する。
【００７２】
本発明を具現する方法は、図４に表されているようなコンピュータデバイスで実行されてよい。そのようなコンピュータデバイスは、図４に表されているあらゆるコンポーネントを有する必要はなく、それらのコンポーネントの一部から構成されてよい。本発明を具現する方法は、ネットワークを介して１つ以上のデータ記憶サーバと通信する単一のコンピュータデバイスによって実行されてよい。コンピュータデバイスは、画像分類畳み込みニューラルネットワークを記憶するデータストレージ自体であってよい。
【００７３】
図５は、実施形態の方法を表し、方法は、システムによって実施される。システムは、例えば、図４のハードウェアによって実装される、図３に表されているような装置であってよい。
【００７４】
ステップＳ５０１ａ及びＳ５０１ｂは、図１のステップＳ１０１のプロセスのような変換プロセスの一例である。ステップＳ５０１ａで、第１及び第２のグラフは、グラフデータの第１及び第２の部分の例であって、それらのネイティブな表現においてシステム内にロードされる。システムは、ネイティブなグラフ表現（図２ａ及び図６ａで視覚化される。）を隣接行列（図２ｂで視覚化される。）に変換する処理を実施する。例えば、グラフ内の各頂点は、第１の次元における一意の位置を割り当てられ、言い換えれば、頂点は順序付けられる。頂点は、第２の次元における同じ一意の位置を夫々割り当てられる。隣接行列は２次元行列である。隣接は、隣接する頂点に対応する行列エントリにある位置によって表される。このとき、隣接は、２つの頂点を接続するグラフ内の辺によって決定される。重み付けされた辺の場合に、重み付けされた辺によって接続されている２つの頂点に対応する列及び行にある行列エントリは、重み付けされた辺の重みを表す値である。なお、何らかのスケーリングが実行されてよい点に留意されたい。グラフ内の全ての辺が隣接行列において表されると、残りのエントリ（すなわち、未だ設定されていないエントリ）は０に設定される。
【００７５】
ステップＳ５０１ｂで、ステップＳ５０１ａで生成された２つの隣接行列は、各々のモノクロ（例えば、グレースケール）画像に変換される。例えば、ステップＳ１０２の変換プロセス、又は具体的に、ステップＳ５０１ｂのグレースケール画像変換プロセスによって生成されるような、例となるグレースケール画像は、図６ｂで表される。各々の隣接行列からの各行列セル／エントリは、ピクセル値に変換される。このようにして、重み付けされた辺の例では、辺の重みは、任意のスケーリングを介して、行列エントリとしてピクセル値へ変換される。ピクセル値は、画像における特定のピクセル（位置）での色の強さを表す。グレースケールの例では、強さは白から黒の範囲に及ぶ。行列エントリをピクセル値のフルスケールにスケールアップすること、又はピクセル値のフルスケールにスケールダウンすることが、とり得るピクセル値の範囲に応じて必要であり得る。
【００７６】
ステップＳ５０２ａで、特徴抽出のためのトレーニングされたモデルが存在するかどうかが判定される。トレーニングされたモデルの一例は、トレーニングされた画像分類畳み込みニューラルネットワークである。
【００７７】
ステップＳ５０２ａで、特徴抽出のためのトレーニングされたモデルが存在しないと決定される場合には、トレーニングプロセスがステップＳ５０５で実施される。このステップについては、以下で更に詳細に記載される。
【００７８】
ステップＳ５０２ａで、特徴抽出のためのトレーニングされたモデルが存在すると決定される場合には、あるいは、モデルがステップＳ５０５でトレーニングされると、ステップＳ５０３で、特徴抽出のためのトレーニングされたモデルは、第１の特徴ベクトルを生成するよう第１の画像に適用され、第２の特徴ベクトルを生成するよう第２の画像に適用される。ステップＳ５０３は、図１のステップＳ１０３の相似値の計算である。例えば、２つの特徴ベクトルのコサイン相似値が計算される。
【００７９】
プロセスは、出力として計算された相似値を有して、ステップＳ５０４で終了する。
【００８０】
計算された相似値は、グラフデータの部分の物理的な記憶場所を決定するために使用されてよい。例えば、グラフデータ記憶システムは、複数の物理データ記憶ユニットにわたって分散されたデータグラフを記憶してよい。夫々の物理データ記憶ユニットは、データグラフを構成するグラフデータの１つ以上の部分を記憶する。それらの部分は必ずしも互いから独立している必要はなく、部分的に交差した辺がデータグラフにおいて存在してよい。アルゴリズムは、データグラフを記憶のための部分に分割するために存在してよい。グラフデータの新しい部分のための物理的な記憶場所を決定するための次のプロシージャは、例えば、データベースコントローラ又はデータベース管理システムによって、実施されてよい。グラフデータベースへの追加のためにグラフデータの新しい部分を受け取ると、最初に、どの物理データ記憶ユニットがその新しい部分を記憶するための容量を有しているかが判定される。新しい部分を記憶するための容量を有していると決定された物理データ記憶ユニットは、候補となる物理データ記憶ユニットと呼ばれてよい。グラフデータの新しい部分は、候補となる物理データ記憶ユニットの夫々に記憶されているグラフデータの部分又は夫々の部分と比較される。比較は、実施形態のプロシージャ、例えば、ステップＳ５０１ａ乃至Ｓ５０４、又はステップＳ１０１乃至Ｓ１０４を用いて、実施される。１つ以上の計算された相似値は、候補となる物理データ記憶ユニットの夫々について計算される（すなわち、１つの相似値は、候補となる物理データ記憶ユニットに既に記憶されているグラフデータの部分ごとに計算される。）。グラフデータの部分ごとに１つよりも多い相似値が存在している場合において、それらの１つよりも多い相似値は、単一の値へと結合される。その単一の値は、１つよりも多い値の平均値として、又は１つよりも多い値の中の最大値として、計算される。そのような結合の後に、候補となる物理データ記憶ユニットごとに１つの相似値が存在する。グラフデータの新しい部分は、最も大きい１つの相似値を有している候補となる物理データ記憶ユニットに記憶される。互角の場合に、グラフデータの新しい部分は、互角であった物理データ記憶ユニットの中で最も大きい利用可能な記憶容量を有している候補となる物理データ記憶ユニットに記憶される。論理的根拠は、同様のグラフデータ部分は一緒にクエリされる可能性が高く、従って、ユニット間をまたぐグラフのトラバースは低減されることである。
【００８１】
図７は、実施形態のシステムを表す。図７の特定のシステムは、トレーニングプロセッサ７０３を含む。トレーニングプロセッサ７０３は、テストデータ７０１及び注釈付きデータ７０２を用いて、特徴抽出のためのトレーニングされたモデル７０４を生成する。このトレーニングされたモデルは、抽出プロセッサ１０２（特徴算出プロセッサと呼ばれる。）によってアクセスされる。
【００８２】
システムは、図４に表されているようなハードウェアアーキテクチャを有する。特に、プロセッサは、トレーニングプロセッサ７０３、変換プロセッサ１０１、抽出プロセッサ１０２、及び相似値算出プロセッサ１０３のプロセッシング命令を実行する。１つ以上の記憶ユニット（メモリ）は、プロセッシング命令、特徴抽出のためのトレーニングされたモデル７０４、グラフデータの第１及び第２の部分、第１及び第２の画像、並びに第１及び第２の特徴ベクトルを記憶する。
【００８３】
同じ参照番号は、図３のコンポーネントと共通するコンポーネントに割り当てられており、従って、それらのコンポーネントの説明はここで繰り返されない。図３と共通するコンポーネント１０１乃至１０３は、図７との関連で“アプリケーション装置”と呼ばれる。アプリケーション装置は、トレーニング装置７０１乃至７０４、すなわち、トレーニングプロセスを実施するよう構成される装置を更に含む。
【００８４】
トレーニング装置は、トレーニングプロセッサ７０３の制御下にあり、テストデータ７０１、注釈付きデータ７０２、及びトレーニングされているモデル７０４を記憶するよう構成される。
【００８５】
例えば、トレーニングされているモデル７０４は、画像分類畳み込みニューラルネットワークモデルであってよい。テストデータ７０１は、画像対のトレーニング組であってよく、注釈付きデータ７０２は、トレーニング組における画像対の組の各画像対についての目標相似値であってよい。目標相似値は、画像の対応する対が類似していると見なされ得るかどうかを表す値であり、バイナリ“はい（yes）”又は“いいえ（no）”であってよく、あるいは、類似を定量化する値、例えば、０から１の間の値であってよい。テストデータ７０１及び注釈付きデータ７０２は、単一のストレージ、例えば、インデックス付きテーブルにおいてまとめられてよく、そのようなテーブルにおいて、各行は、画像の対の各画像についての画像データと、その対についての目標相似値とを含む。
【００８６】
画像の対は、ロー（raw）画像ファイル（すなわち、ピクセル値×ピクセル値）として記憶されるか、あるいは、例えば、ｔｉｆｆ、ｊｐｅｇ又はビットマップのような、画像フォーマットにおいて記憶されてよい。インデックス付きテーブルは、分散型データ記憶として複数のコンピュータサーバにわたって分散されてよい。
【００８７】
トレーニングされていない、又は未だ十分にトレーニングされていない画像分類畳み込みニューラルネットワークモデルは、記憶ユニット７０４において記憶される。トレーニングプロセスは、畳み込みニューラルネットワークにおける構成可能パラメータを変更するバックワード・エラー・プロパゲーション・プロシージャである。画像の各対及び対応する目標相似値について、トレーニングプロセッサ７０３は、記憶されている画像分類ニューラルネットワークモデルを夫々の画像に対して実行することによってその画像対の各画像から特徴ベクトルを抽出し、ステップＳ１０３の相似値の計算に従って、２つの特徴ベクトルの間の類似を表す相似値を計算し、計算された相似値と目標相似値との間に差がある場合には、バックワード・エラー・プロパゲーションを実施して、その差を小さくするよう画像分類ニューラルネットワークモデルを変更するよう構成される。このとき、抽出する動作、計算する動作、及びバックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に達するか、あるいは、差が閾値を下回るまで、繰り返し実施される。バックワード・エラー・プロパゲーションは、エラー（差）が１つ以上の構成可能パラメータに応じてどのように変化するかを観測することによって、及び構成可能パラメータを順にアドレッシングし、エラーを最小限にする構成可能パラメータの値を見つけることによって、実施される。エラーの最小化は、畳み込みニューラルネットワークをトレーニングするためにこれまで使用されてきたトレーニング画像の全ての対にわたる総合的なエラーである。
【００８８】
トレーニングプロセッサ７０３は、テストデータ７０１における画像の全対にわたって繰り返し、対応する目標相似値に一致する結果（計算された相似値）の確率を最大にする画像の特徴を見つけるよう試みる。エラーは、次いで、畳み込みニューラルネットワークの最初のレイヤへ後方伝播される。エラー（すなわち、その対についての目標相似値とその対についての計算された相似値との間の差）は、トレーニングされている畳み込みニューラルネットワークにおける構成可能パラメータ（例えば、重み及びバイアス係数）の調整を生じさせる。フィードバックループは、予め定義された最多繰り返し回数に達するか、又はエラーが許容範囲に収束するまで、続く。
【００８９】
例えばＬｅＮｅｔ又はＡｌｅｘＮｅｔのような画像分類ニューラルネットワークモデルは、画像分類畳み込みニューラルネットワークモデルとして記憶され、トレーニングプロセッサ７０３によってトレーニングされ得る。入力される画像データは、通常、サイズが大きいので、畳み込みニューラルネットワークモデルは、次元削減を有効に行って、入力された画像データを画像ごとに、グラフデータの部分の画像表現の重要な特徴を表す特徴値の単一ベクトルへと低減する。
【００９０】
トレーニングは、入力画像をタイリングすることによって並列処理され得る。
【００９１】
トレーニングデータは、次の３つの方法において求められ得る：
１）既存の画像レポジトリ（例えば、数字認識のためのＭＮｉｓｔデータ）を再利用する。
２）グレースケールラスター画像を生成し、夫々の画像について、回転させ且つランダムに編集して、原画像にある程度類似していると見なされる“新しい”画像を生成し、原画像及び編集された画像の対に“Ｔ／Ｆ”又は目標相似値のいずれかによりラベルを付すことによって、意図的に構築する。例えば、目標相似値は、対をなす原画像から新しい画像を得るために実施された編集の程度を定量化し、編集の程度を目標相似値において表すことによって、求められてよい。すなわち、２つの画像の間の編集距離が計算される。このとき、原画像を新しい画像に変換する動作には数値が割り当てられ、目標相似値は全ての動作の積み重なりである。
３）相似値が知られているか又は計算されているグラフデータの部分のサンプル対を求めるか、あるいは、例えば、ブルートフォース比較又はグラフ編集距離を使用して、そのような計算を実施する。グラフデータの部分のサンプル対にステップＳ１０２の変換処理を受けさせる。目標相似値として（必要に応じて調整された）相似値を有して、畳み込みニューラルネットワーク７０４のためのトレーニング画像の対としてそのように生成された画像の対を使用する。
【００９２】
トレーニングプロセスが完了すると、トレーニングされた画像分類畳み込みニューラルネットワークモデルが得られる。このモデルは、アプリケーション装置によって、具体的に、抽出プロセッサ１０２によって、画像データに直接に適用され得る。そのような直接的な適用は、フォワード・プロパゲーションと呼ばれ得る。
【００９３】
図８は、畳み込みニューラルネットワークモデルの一例を表す。モデルの各レイヤには、トレーニング画像の対及び目標相似値を用いて学習（すなわち、構成）される構成可能パラメータ（例えば、重み及びバイアス係数）が存在する。そのようなパラメータの目的は、入力された画像データを複数レベルの抽出及び投影を通じて集約することであり、それにより、画像の最終的な、抽出された特徴ベクトルは、目標相似値と一致する計算された相似値の確率を最大にし、且つ、目標表示値と一致しない計算された相似値の確率を最小にすることができる。
【００９４】
畳み込みニューラルネットワークモデルは、１つ以上の畳み込みレイヤ（convolution  layers）８０１（入力された画像データを構成可能パラメータを用いて畳み込む。）、１つ以上のサブサンプリングレイヤ（sub-sampling  layers）８０２（畳み込みレイヤからの空間的に関連した値をプールする。）、及び１つ以上の完全接続レイヤ（fully  connected  layers）（内積レイヤ（inner  product  layers））８０３を有する多層ニューラルネットワークアーキテクチャである。畳み込みニューラルネットワークは、構成可能なＲｅＬｕレイヤ８０４を更に含む。このレイヤ８０４は、ネットワーク内のニューロンの活性化機能を構成する活性化関数である。内積レイヤは、数値を用いて表現される必要がある特徴のサイズを圧縮する次元削減に関与する。内積レイヤ８０３は、内積レイヤが次元削減のための最終レイヤであって、数百という大きさのベクトルをより小さい個数の特徴へと低減するので、画像サイズに従って構成されてよい。
【００９５】
トレーニングの結果は、将来的に直接に適用され得るローカルストレージ内のニューラルネットワークモデルである。図８のダイアグラムはＣＮＮモデルの一例である。このモデルの各レイヤには、入力された注釈付き画像対を用いて学習されるパラメータ（重み及びバイアス係数）が存在する。そのようなパラメータの目的は、入力された画像データを複数レベルの抽出及び投影を通じて集約することであり、それにより、画像の最終的な、抽出された特徴ベクトルは、割り当てられているラベルの蓋然性を最大にし、且つ、画像に割り当てられていないラベルの蓋然性を最小にすることができる。
【００９６】
上記の実施形態に加えて、以下の付記を開示する。
（付記１）
変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用し、
抽出プロセスを、第１の特徴ベクトルを抽出するよう前記第１の画像に、及び第２の特徴ベクトルを抽出するよう前記第２の画像に適用し、前記第１の特徴ベクトル及び前記第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有し、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第１の特徴ベクトルと前記第２の特徴ベクトルとの間の類似を表す相似値を計算し、
前記計算された相似値を出力する
ことを有する、コンピュータにより実施される方法。
（付記２）
前記グラフデータの第１の部分及び前記グラフデータの第２の部分は、複数の辺によって相互に接続されている複数の頂点を夫々が有し、前記複数の辺の夫々は、源点としての前記複数の頂点のうちの１つをあて先頂点としての前記複数の頂点のうちの他の１つへ接続し、
前記変換プロセスは、
前記グラフデータの第１の部分及び前記グラフデータの第２の部分の夫々における各頂点を、２つの次元のうちの第１の次元における一意の位置及び前記２つの次元のうちの第２の次元における一意の位置に割り当て、
ピクセル値の２次元アレイにおける各エントリにおいてピクセル値を設定する
ことを有し、
前記ピクセル値を設定することは、
前記複数の辺の夫々について、対応するエントリにあるピクセル値を第１の値域の中の値として設定し、前記対応するエントリは、前記第１の次元において前記源点に割り当てられている一意の位置及び前記第２の次元において前記あて先頂点に割り当てられている一意の位置にあるエントリであり、
残りのアレイエントリにあるピクセル値を前記第１の値域の外の値に設定する
ことによる、付記１に記載のコンピュータにより実施される方法。
（付記３）
前記複数の辺は、双方向の辺を有し、該双方向の辺の夫々は、２つの頂点を、源点及びあて先頂点の両方として、互いに接続する、
付記２に記載のコンピュータにより実施される方法。
（付記４）
前記複数の辺は、定量的なラベルによって重み付けされた辺を有し、定量的なラベルによって前記複数の辺の夫々について前記対応するエントリにあるピクセル値を設定することは、前記対応するエントリにあるピクセル値を、前記定量的なラベルを表す前記第１の値域の中の値として設定することを有する、
付記２に記載のコンピュータにより実施される方法。
（付記５）
前記複数の頂点の夫々は、エンティティを表し、前記変換プロセスは、
前記グラフデータの第１の部分及び前記グラフデータの第２の部分の夫々から１つずつの頂点を有し、同じエンティティを表す頂点の対を決定し、夫々の決定された対について、当該対に含まれる頂点を、ピクセル値の夫々の２次元アレイの前記第１の次元及び前記第２の次元における等価な一意の位置に割り当てることを含む、
付記２に記載のコンピュータにより実施される方法。
（付記６）
前記抽出プロセスは、人工ニューラルネットワークを夫々の画像に適用して、夫々の特徴ベクトルを抽出することを有する、
付記１に記載のコンピュータにより実施される方法。
（付記７）
前記人工ニューラルネットワークは、畳み込みニューラルネットワークである、
付記６に記載のコンピュータにより実施される方法。
（付記８）
画像分類畳み込みニューラルネットワークモデルをトレーニングし、該トレーニングされた画像分類畳み込みニューラルネットワークモデルを前記畳み込みニューラルネットワークとして記憶することを更に有し、
前記トレーニングすることは、
画像対のトレーニング組を取得し、該画像対のトレーニング組の中の画像対について、対応する目標相似値を取得し、
前記画像対のトレーニング組の中の夫々の画像対について、順番に、
夫々の画像に対して前記画像分類畳み込みニューラルネットワークモデルを実行することによって当該画像対の各画像から特徴ベクトルを抽出し、２つの該特徴ベクトルの間の類似を表す相似値を計算し、該計算された相似値と前記目標相似値との間に差がある場合には、前記画像分類畳み込みニューラルネットワークモデル変更して前記差を小さくするようバックワード・エラー・プロパゲーションを実施し、前記抽出すること、前記計算すること、及び前記バックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に到達するか又は前記差が閾値を下回るまで、繰り返し実施される
ことを有する、付記７に記載のコンピュータにより実施される方法。
（付記９）
前記画像対のトレーニング組を取得することは、画像レポジトリから画像対をダウンロードすることを有する、
付記８に記載のコンピュータにより実施される方法。
（付記１０）
前記画像対のトレーニング組を取得することは、
原ラスター画像の組を生成し、
前記原ラスター画像の夫々について、回転及び／又はランダムなピクセル値編集を含む編集を当該原ラスター画像に対して行うことによって１つ以上の新しい画像を生成し、該１つ以上の新しい画像の夫々とともに当該原ラスター画像を前記画像対のトレーニング組に加えること
を有する、付記８に記載のコンピュータにより実施される方法。
（付記１１）
前記画像対の夫々について前記目標相似値を取得することは、当該画像対において前記原ラスター画像から前記新しい画像を取得するために実施される前記編集の程度を定量化し、該編集の程度を前記目標相似値において表すことを有する、
付記１０に記載のコンピュータにより実施される方法。
（付記１２）
グラフデータの部分に分割されたデータグラフを記憶するグラフデータ記憶システムにおける、コンピュータにより実施される方法であって、グラフデータの各部分は、複数の物理データ記憶ユニットの中の１つに記憶される、方法において、
前記データグラフへの追加のためにグラフデータの一部分を受け取り、
前記複数の物理データ記憶ユニットの中から、前記受け取られたグラフデータの一部分を記憶するための十分な利用可能記憶容量を有している物理データ記憶ユニットを候補として選択し、
前記候補となる物理データ記憶ユニットの夫々について、当該候補となる物理記憶ユニットに記憶されている前記グラフデータの部分又は各部分ごとに付記１乃至１１のうちいずれか一つに記載のコンピュータにより実施される方法を、前記受け取られたグラフデータの一部分を前記グラフデータの第１の部分とし且つ前記記憶されているグラフデータの部分を前記グラフデータの第２の部分として実行し、当該候補となる物理データ記憶ユニットについて前記計算された相似値又は夫々の計算された相似値を記録し、夫々の候補となる物理データ記憶ユニットは単一の計算された相似値又は複数の計算された相似値を有し、当該候補となる物理データ記憶ユニットが複数の計算された相似値を有している場合には、該複数の計算された相似値の平均又は最大値を計算することによって前記複数の計算された相似値を単一の計算された相似値にし、
前記受け取られたグラフデータの一部分を記憶するために、最大の単一の相似値を有している前記候補となる物理データ記憶ユニットを選択し、前記受け取られたグラフデータの一部分を前記選択された候補となる物理データ記憶ユニットに書き込む
ことを有する、コンピュータにより実施される方法。
（付記１３）
変換プロセスを、第１の画像を生成するようグラフデータの第１の部分に、及び第２の画像を生成するようグラフデータの第２の部分に適用するよう構成される変換プロセッサと、
抽出プロセスを、第１の特徴ベクトルを抽出するよう前記第１の画像に、及び第２の特徴ベクトルを抽出するよう前記第２の画像に適用するよう構成され、前記第１の特徴ベクトル及び前記第２の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、抽出プロセッサと、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第１の特徴ベクトルと前記第２の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される相似値計算部と、
前記計算された相似値を出力するよう構成される出力部と
を有する装置。
（付記１４）
コンピュータデバイスによって実行される場合に、該コンピュータデバイスに、付記１乃至１２のうちいずれか一つに記載のコンピュータにより実施される方法を実行させるコンピュータプログラム。
（付記１５）
グラフデータベースから分割されるグラフデータの複数の部分の中のグラフデータの１つ以上の部分を夫々が記憶している複数の物理データ記憶ユニットと、
付記１２に記載のコンピュータにより実施される方法を実行するよう構成されるデータベース管理システムと
を有するグラフデータ記憶システム。
【符号の説明】
【００９７】
１０１  変換プロセッサ
１０２  抽出プロセッサ
１０３  類似計算部
１０４  出力部
【図１】
2017220222.tif 000003
【図２ａ】
2017220222.tif 000004
【図２ｂ】
2017220222.tif 000005
【図３】
2017220222.tif 000006
【図４】
2017220222.tif 000007
【図５】
2017220222.tif 000008
【図６ａ】
2017220222.tif 000009
【図６ｂ】
2017220222.tif 000010
【図７】
2017220222.tif 000011
【図８】
2017220222.tif 000012