JP2017220222A - データグラフを比較する方法、プログラム、及び装置 - Google Patents
データグラフを比較する方法、プログラム、及び装置 Download PDFInfo
- Publication number
- JP2017220222A JP2017220222A JP2017088432A JP2017088432A JP2017220222A JP 2017220222 A JP2017220222 A JP 2017220222A JP 2017088432 A JP2017088432 A JP 2017088432A JP 2017088432 A JP2017088432 A JP 2017088432A JP 2017220222 A JP2017220222 A JP 2017220222A
- Authority
- JP
- Japan
- Prior art keywords
- image
- graph data
- value
- feature vector
- computer
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Biodiversity & Conservation Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
【課題】データグラフを比較する方法等を提供する。
【解決手段】実施形態は、変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用することと、抽出プロセスを、第1の特徴ベクトルを抽出するよう第1の画像に、及び第2の特徴ベクトルを抽出するよう第2の画像に適用し、第1の特徴ベクトル及び第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有することと、共通の組の特徴についての各々の定量化可能な値に基づき第1及び第2の特徴ベクトルの間の類似を表す相似値を計算することと、計算された相似値を出力することとを有する、コンピュータにより実装される方法を含む。
【選択図】図1
【解決手段】実施形態は、変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用することと、抽出プロセスを、第1の特徴ベクトルを抽出するよう第1の画像に、及び第2の特徴ベクトルを抽出するよう第2の画像に適用し、第1の特徴ベクトル及び第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有することと、共通の組の特徴についての各々の定量化可能な値に基づき第1及び第2の特徴ベクトルの間の類似を表す相似値を計算することと、計算された相似値を出力することとを有する、コンピュータにより実装される方法を含む。
【選択図】図1
Description
本発明は、データ解析の分野にある。特に、本発明は、データグラフの比較に関係がある。
データグラフは複雑であり、2つのデータグラフ又はグラフデータの2つの部分の比較を行うことは計算コストが高い。データグラフの比較は、従って、システムのアイドル時間まで実施も表示もされないか、あるいは、比較を行うコンピュータ又はコンピュータネットワークに相当な実施負担をかけて実施される。データグラフ比較の多数の工学的応用は、計算コストの高さに起因して実現されない。
グラフ類似度の算出は、難しく、且つ、計算コストが高い。これまで、次のアプローチのうちの1つが取られている。G1及びG2を前提として、
1.ブルートフォース(brute force);全ての頂点及び辺を総当たりして、2つのグラフを比較する。
2.グラフ編集距離(graph edit distance):グラフG1をG2に変換する動作に数値を割り当てる。全体の類似度は、全ての動作の積み重なりである。このアプローチは、高い複雑性を依然として有し、グラフのサイズとともに指数関数的に大きくなりうる。
3.特徴抽出(feature extraction):予め定義された特徴のリストに基づき、G1及びG2のそのような特徴の値を計算する。ドメイン・ヒューリスティクス(domain heuristics)が特徴抽出では時々使用される。
1.ブルートフォース(brute force);全ての頂点及び辺を総当たりして、2つのグラフを比較する。
2.グラフ編集距離(graph edit distance):グラフG1をG2に変換する動作に数値を割り当てる。全体の類似度は、全ての動作の積み重なりである。このアプローチは、高い複雑性を依然として有し、グラフのサイズとともに指数関数的に大きくなりうる。
3.特徴抽出(feature extraction):予め定義された特徴のリストに基づき、G1及びG2のそのような特徴の値を計算する。ドメイン・ヒューリスティクス(domain heuristics)が特徴抽出では時々使用される。
一般に、既存のアプローチは、計算複雑性又は特徴選択の複雑さ及び恣意性に苦しむ。
データグラフを比較するための、計算コストがより低く且つよりスケーラブルな技術を考え出すことが望ましい。
実施形態は、変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用することと、抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用し、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有することと、前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算ことと、前記計算された相似値を出力することとを有する、コンピュータにより実施される方法を含む。
有利なことに、実施形態は、グラフデータを画像に変換し、該画像から特徴を抽出し、グラフデータの他の部分から同じようにして抽出された特徴どうしを比較することによって、グラフデータの部分どうしを比較するメカニズムを提供する。すなわち、画像比較技術は、グラフデータの部分どうしを比較するために利用される。
例えばリコンシリエーション処理のような、グラフデータの比較を必要とするプロシージャは、計算効率が良く、且つ、将来の比較のために有効に記憶され得るグラフデータの中間表現を含む様態において、実施され得る。実施形態は、グラフデータを比較する分野において特に有効である具体的な様態において、複雑なデータを比較のための簡単なフォーマットに要約する原理を利用する。
画像は画像データとして明らかであるから、前記抽出プロセスは、画像データに適用されると考えられ得る。画像データは、ピクセルの2次元アレイについて<位置,ピクセル値>のタプルであってよい。
任意に、前記グラフデータの第1の部分及び前記グラフデータの第2の部分は、複数の辺によって相互に接続されている複数の頂点を夫々が有し、前記複数の辺の夫々は、源点としての前記複数の頂点のうちの1つをあて先頂点としての前記複数の頂点のうちの他の1つへ接続し、前記変換プロセスは、前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々における各頂点を、2つの次元のうちの第1の次元における一意の位置及び前記2つの次元のうちの第2の次元における一意の位置に割り当て、ピクセル値の2次元アレイにおける各エントリにおいてピクセル値を設定することを有し、前記ピクセル値を設定することは、前記複数の辺の夫々について、対応するエントリにあるピクセル値を第1の値域の中の値として設定し、前記対応するエントリは、前記第1の次元において前記源点に割り当てられている一意の位置及び前記第2の次元において前記あて先頂点に割り当てられている一意の位置にあるエントリであり、残りのアレイエントリにあるピクセル値を前記第1の値域の外の値に設定することによる。
画像は、画像データとも呼ばれ得る。ピクセルの2次元アレイは画像データである。画像データは、メタデータ、例えば、グラフデータの部分に割り当てられているID、を更に含んでよい。
前記複数の頂点に割り当てられる一意の位置の順序は、前記2つの次元のうちの両方の次元において同じである。
前記複数の頂点は、グラフデータの部分において順序付けられてよく、その場合に、グラフデータのその部分からの順序付けは、一意の位置を頂点に割り当てることにおいて維持され得る。例えば、前記複数の頂点が場所を表す場合に、該場所は、それらの緯度の位置又は経度の位置に従って順序付けられてよい。代替的に、前記複数の頂点がグラフデータの部分においてラベルを付される場合に、順序付けメトリック(例えば、番号順、アルファベット順、又は英数字順)が、一意の位置を割り当てることにおいて前記複数の頂点に適用され得る。一意の位置の順序はその順序付けメトリックによって決定される。同じ順序付けメトリックは、変換プロセスにおいてグラフデータの2つの部分の両方に適用され得る。
グラフデータは、双方向の辺を有してよく、該双方向の辺の夫々は、2つの頂点を、源点及びあて先頂点の両方として、互いに接続する。
グラフデータの部分は、もっぱら双方向の辺を有してよい。双方向の辺の使用は、グラフデータによってモデル化/表現されるドメインに依存する。例えば、道路網をモデル化することを考えると、複数の頂点は町を表し、重み付けされた辺は、辺によって接続されている頂点によって表された2つの町の間の最短ルートを表す。辺によって表される情報は方向性を持たないので、辺は双方向であることができる。他方で、メッセージがノード間で送信される電気通信網をモデル化することを考えると、ノードiからノードjへ送られるメッセージの数は、ノードiからノードjへの重み付けされた辺によって表される。メッセージは本質的に方向性を持ち、従って、辺は双方向ではなく方向性を持つ。
任意に、グラフデータは、夫々の定量的なラベルによって重み付けされた複数の辺を有してよく、そのような場合に、定量的なラベルによって前記複数の辺の夫々について前記対応するエントリにあるピクセル値を設定することは、前記対応するエントリにあるピクセル値を、前記定量的なラベルを表す前記第1の値域の中の値として設定することを有する。
定量的なラベルは、数、すなわち、数値であってよい。定量的なラベルを表す第1の値域の中の値としてピクセル値を設定することは、定量的なラベルをスケーリングすることを有してよい。例えば、スキャンは、定量的なラベルの最高数量を確立するよう、変換されるグラフデータの部分、又は集合体としてのグラフデータの2つの部分のいずれかにおいて、定量化ラベルに対して実施されてよい。このとき、スケーリングは、その最高数量がとり得るピクセル値の範囲の中の最大値に設定されるように、設定される。そして、スケーリングは、全てのピクセルについて維持される。
有利なことに、本発明者は、重み付けされた辺がピクセル値に変換され得ることに気付いた。そして、ピクセル値の適切な配置によって、グラフデータは画像データとして表現され、画像データに特化した技術による比較を受けることができる。
グラフデータにおける複数の頂点の夫々は、エンティティを表し、前記変換プロセスは、前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々から1つずつの頂点を有し、同じエンティティを表す頂点の対を決定することと、夫々の決定された対について、当該対に含まれる頂点を、ピクセル値の夫々の2次元アレイの前記第1の次元及び前記第2の次元における等価な一意の位置に割り当てることとを含んでよい。
例えば、グラフデータの2つの部分において同じエンティティを表す頂点は、同じラベルに帰する。代替的に、何らかのマッピングが、グラフデータの第1の部分におけるどの頂点がグラフデータの第2の部分からの所与の頂点と同じエンティティを表すかを定めるために必要とされ得る。マッピングは、例えば、言語間の変換、又はマッピング・ルックアップ・テーブルの参照であってよい。
前記抽出プロセスは、前記第1の画像からの特徴ベクトル及び前記第2の画像からの特徴ベクトルを抽出する。前記抽出プロセスは、人工ニューラルネットワークを夫々の画像に適用して、特徴ベクトルを抽出することを有してよい。特に、前記抽出プロセスは、畳み込みニューラルネットワークを夫々の画像に適用して、夫々の特徴ベクトルを抽出することを有してよい。
畳み込みニューラルネットワーク(convolutional neural network)は、畳み込みニューラルネットワークモデルとも呼ばれ得る。具体的に、畳み込みニューラルネットワークモデルは、画像分類ニューラルネットワークモデルであってよい。畳み込みニューラルネットワークを適用することは、夫々の画像を入力として使用して畳み込みニューラルネットワークを順方向に伝播することである。畳み込みニューラルネットワークは、夫々の画像の全体に適用される。
有利なことに、畳み込みニューラルネットワークは、画像分類の分野において特に有効である特殊な形のニューラルネットワークである。実施形態は、グラフデータを画像データに変換することによって、グラフデータの分野において畳み込みニューラルネットワークモデルを利用するメカニズムを提供する。
任意に、実施形態は、画像分類畳み込みニューラルネットワークモデルをトレーニングし、該トレーニングされた画像分類畳み込みニューラルネットワークモデルを前記畳み込みニューラルネットワークとして記憶することを更に有してよく、あるいは、そのために適切であり得る。前記トレーニングすることは、画像対のトレーニング組を取得し、該画像対のトレーニング組の中の画像対について、対応する目標相似値を取得することと、前記画像対のトレーニング組の中の夫々の画像対について、順番に、夫々の画像に対して前記画像分類畳み込みニューラルネットワークモデルを実行することによって当該画像対の各画像から特徴ベクトルを抽出し、2つの該特徴ベクトルの間の類似を表す相似値を計算し、該計算された相似値と前記目標相似値との間に差がある場合には、前記画像分類畳み込みニューラルネットワークモデル変更して前記差を小さくするようバックワード・エラー・プロパゲーションを実施することとを有する。このとき、前記抽出すること、前記計算すること、及び前記バックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に到達するか又は前記差が閾値を下回るまで、繰り返し実施される。
トレーニング・プロシージャは、バックワード・エラー・プロパゲーション(backward error propagation)・プロシージャであってよい。そのプロシージャにおいて、画像分類ニューラルネットワークモデルによって抽出された特徴ベクトルによって生成される計算された相似値と、画像対についての目標相似値との間の差は、適応可能な係数に対する前記差の勾配に基づき、重み係数及びバイアス係数のような、画像分類ニューラルネットワークモデルの畳み込みレイヤにおけるパラメータ、又はモデルの各レイヤでの他の変更プロセスを適応させることによって、最小限にされる。トレーニング・プロシージャは、時間プロセッサノード以外の他の入力ノードの重み係数を適応させるためにも使用されてよい。なお、本発明の実施形態は、用いられる特定のトレーニング・プロシージャによって制限されない。
例えば、前記画像対のトレーニング組は、グラフデータのサンプル部分を取得し、グラフデータのそれらサンプル部分に対して前記変換プロセスを実施してサンプル画像データを取得することによって生成される画像の組である。対応する目標相似値を求めることは、グラフデータのサンプル部分に対して既存のグラフ類似度算出を実行するプロセスであってよく、そのように求められた相似値(場合により、スケーリングを受ける。)が目標相似値として設定される。既存のグラフ類似度算出は、ブルートフォース演算(全ての頂点及び辺を総当たりして、2つのグラフを比較する。)、又はグラフ編集距離(1つのサンプル部分を他に変換する動作に数値を割り当て、全体の類似度が全ての動作の積み重なりである。)であってよい。有利なことに、計算コストが高い既存のグラフ類似度算出は、実行するのに計算コストがより低い畳み込みニューラルネットワークモデルが、将来の実行のためにトレーニングされ得るように、トレーニングの部分として実行される。すなわち、トレーニング・プロシージャは、計算コストが高くなり得るので、意図的に、適切な目標相似値が使用されるために、一度トレーニングされると、グラフデータの将来の比較は、グラフデータから変換された画像どうしを比較するために、計算コストがより低い、トレーニングされた畳み込みニューラルネットワークを使用して実施され得ることになる。
更なる代替案として、前記画像対のトレーニング組を取得することは、画像レポジトリから画像対をダウンロードすることを有してよい。あるいは、前記画像対のトレーニング組を取得することは、原ラスター画像の組を生成することと、前記原ラスター画像の夫々について、回転及び/又はランダムなピクセル値編集を含む編集を当該原ラスター画像に対して行うことによって1つ以上の新しい画像を生成し、該1つ以上の新しい画像の夫々とともに当該原ラスター画像を前記画像対のトレーニング組に加えることとを有してよい。そのような場合に、前記画像対の夫々について前記目標相似値を取得することは、当該画像対において前記原ラスター画像から前記新しい画像を取得するために実施される前記編集の程度を定量化し、該編集の程度を前記目標相似値において表すことを有してよい。
すなわち、2つの画像の間の編集距離が計算される。このとき、原画像を新しい画像に変換する動作には数値が割り当てられ、目標相似値は全ての動作の積み重ねである。
他の態様の実施形態は、グラフデータの部分に分割されたデータグラフを記憶するグラフデータ記憶システムにおける、コンピュータにより実施される方法であって、グラフデータの各部分は、複数の物理データ記憶ユニットの中の1つに記憶される、方法において、前記データグラフへの追加のためにグラフデータの一部分を受け取ることと、前記複数の物理データ記憶ユニットの中から、前記受け取られたグラフデータの一部分を記憶するための十分な利用可能記憶容量を有している物理データ記憶ユニットを候補として選択することと、前記候補となる物理データ記憶ユニットの夫々について、当該候補となる物理記憶ユニットに記憶されている前記グラフデータの部分又は各部分ごとに、グラフデータの第1及び第2の部分を比較する実施形態のコンピュータにより実施される方法を、前記受け取られたグラフデータの一部分を前記グラフデータの第1の部分とし且つ前記記憶されているグラフデータの部分を前記グラフデータの第2の部分として実行し、当該候補となる物理データ記憶ユニットについて前記計算された相似値又は夫々の計算された相似値を記録し、夫々の候補となる物理データ記憶ユニットは単一の計算された相似値又は複数の計算された相似値を有し、当該候補となる物理データ記憶ユニットが複数の計算された相似値を有している場合には、該複数の計算された相似値の平均又は最大値を計算することによって前記複数の計算された相似値を単一の計算された相似値にすることと、前記受け取られたグラフデータの一部分を記憶するために、最大の単一の相似値を有している前記候補となる物理データ記憶ユニットを選択し、前記受け取られたグラフデータの一部分を前記選択された候補となる物理データ記憶ユニットに書き込むこととを有する、コンピュータにより実施される方法を含む。
実施形態は、変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用するよう構成される変換プロセッサと、抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用するよう構成され、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、抽出プロセッサと、前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される相似値計算部と、前記計算された相似値を出力するよう構成される出力部とを有する装置を含んでよい。
実施形態は、変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用する手段と、
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用し、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、手段と、前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算する手段と、前記計算された相似値を出力する手段とを有する装置を含んでよい。
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用し、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、手段と、前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算する手段と、前記計算された相似値を出力する手段とを有する装置を含んでよい。
実施形態は、コンピュータ装置によって実行される場合に、該コンピュータ装置に、本発明を具現する方法を実行させる、例えばコンピュータプログラムのようなソフトウェアを含んでよい。そのようなコンピュータ装置は、例えばサーバ又は他のコンピュータのようなコンピュータデバイスであってよく、あるいは、互いに協働する、相互接続されたコンピュータデバイスのネットワークであってよい。ソフトウェア又はコンピュータプログラムは、コンピュータ可読媒体に記憶されてよい。コンピュータ可読媒体は、非一時的なコンピュータ可読媒体であってよい。
実施形態の詳細な説明は、これより、添付の図面を参照して与えられる。
実施形態における処理のフローを説明する概略図である。
有向グラフデータの部分の視覚化を表す。
図2aのグラフデータのエンコーディングの例を表す。
実施形態の装置を表す。
実施形態の装置の基礎にあるシステムアーキテクチャの例を表す。
実施形態の方法を表す。
グラフデータの部分の視覚化を表す。
実施形態によって生成されるグレースケール画像を表す。
実施形態のシステムを表す。
畳み込みニューラルネットワークモデルの例を表す。
図1は、実施形態における処理のフローを説明する概略図である。
ステップS101で、変換プロセスは、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用される。変換プロセスは、グラフデータの2つの部分を入力としてとり、グラフデータの各部分を各々のデータに変換し、各々の画像を出力する。変換プロセスは、グラフデータの夫々の部分から情報を抽出することと、抽出された情報を位置及びピクセル値の対に変換することを含み、画像はピクセル値の2次元アレイである。
グラフの部分はグラフ全体であってよい。グラフはタプル<V,E>である。ここで、Vは、エンティティ(場合により、頂点ラベルを伴う。)の有限集合であり、Eは、関係<a,b>∈V×V(場合により、辺ラベルを伴う。)の有限集合である。辺は、有向である(第1の頂点aから第2の頂点bへ向く。)か、又は無向であることができる。グラフの例は、コンピュータネットワーク、道路網、オンライン又はリアルライフ・ソーシャルネットワーク、などである。これらの例では、コンピュータ、不動産、人/アバターが頂点であり、ファイバケーブル、道路及びコンタクトが辺である。それらの例の中でも、コンピュータネットワーク及び道路網は双方向又は無向であることができ、一方、ソーシャルネットワークは有向である可能性が高い。それらの例のいずれもが、グラフデータの部分として表現され得る。
変換プロセスは、グラフデータの第1及び第2の部分を取得する取得ステップを含むか、あるいは、取得ステップによって先行されてよい。コンピュータにより実施される方法は、入力を受け入れるためのインターフェイスを含む、実行可能なコンピュータプログラムであってよく、あるいは、グラフデータ部分の物理アドレスのような入力は、方法を開始するコマンドライン命令(又は同等物)において引数として供給され得る。
コンピュータにより実施される方法は、処理されているデータを、それらが処理されるまで保持することを含んでよく、処理された時点でデータは捨てられ、あるいは、グラフデータの様々なバージョン(グラフデータの部分、画像、及び/又は特徴ベクトル)は、ユーザがそれらを維持されるよう、他の位置へ転送されるよう、又は捨てられるよう指示するまで、全てがストレージにおいて留められてよい。ユーザは、これに関連して、コンピュータにより実施される方法を開始し、方法が実行されるべきグラフデータの第1及び第2の部分の選択する人又はエンティティであると見なされることが知られる。
グラフ及び画像のサイズには制限がない。実際に、グラフは、分散ストレージにおいて記憶され、隣接行列として符号化され得、各サーバが隣接行列のタイルを保持する。
変換プロセスは、グラフデータの部分を画像データに変換する。変換プロセスの間に生成されるデータの中間顕現が存在し得る。例えば、グラフデータの部分は、それらが変換プロセスへの入力に対して隣接行列の形をとらない場合に、隣接行列へ、それから画像データへ変換されてよい。
図2aは、有向グラフデータの部分の視覚化を表し、図2bは、グラフの例となるエンコーディングを表す。変換プロセスは、グラフデータの第1及び/又は第2の部分を、それらのネイティブのエンコーディングから隣接行列へ、そして隣接行列から画像データへ変換することを含んでよい。画像は、グラフデータの各々の部分に相当する。例えば頂点ラベルのような、グラフデータにおいて存在するある情報は、画像表現において失われ、それにより、画像は、グラフデータの部分から抽出されると、すなわち、その部分の抽出部であると見なされ得る。
隣接行列は、夫々の頂点についての行及び列を含む。夫々の辺は、源点の行及びあて先頂点の列にある行列エントリで“1”によって表される。隣接行列は、位置が保たれた状態で、隣接行列エントリをピクセル値に変換することによって画像データに変換され得る(すなわち、位置(i,j)での隣接行列エントリは、(i,j)でのピクセルのピクセル値に変換される。)。変換は、画像データが生成されることおいて許されているピクセル値の範囲に依存する。例えば、夫々のピクセルは黒又は白のいずれかであることができ、それにより、“0”及び“1”の値は変更される必要がない。代替的に、辺は重み付けられ、行列エントリは辺の重みを表し、値域の中の1つの値であることができる。その値域は、その場合に、画像データのピクセル値の範囲に適合するよう増減されてよい。
画像データは、ピクセル値の2次元アレイであってよい、任意に、画像メタデータを更に含む。2次元アレイは、辺を表すエントリでの値がピクセル値の範囲から選択される点を除いて(隣接行列では、他方で、値は0から1の間である。)、それがあたかも隣接行列であるかのようにコンパイルされ得る。例えば、ピクセル値の範囲は0から255であってよい。変換プロセスは、グラフデータの各々の部分における各頂点に、2つの次元のうちの第1の次元における一意の位置及び2つの次元のうちの第2の次元における一意の位置を割り当てることと、ピクセル値の2次元アレイにおける各エントリにおいてピクセル値を設定することとを有してよい。ピクセル値を設定することは、複数の辺の夫々について、対応するエントリにあるピクセル値を第1の値域の中の値として設定し、前記対応するエントリは、第1の次元において源点に割り当てられている一意の位置及び第2の次元においてあて先頂点に割り当てられている一意の位置にあるエントリであり、残りのアレイエントリにあるピクセル値を前記第1の値域の外の値に設定することによる。例えば、第1の値域の外の値は、とり得るピクセル値の範囲の一方の端にある値であってよく、第1のピクセル値範囲は、とり得るピクセル値の範囲の中の全ての他のピクセル値であってよい。
ピクセル値は、ピクセルの色を表してよい。マトリクスエントリごとに1つのピクセル値が存在する例では、画像はモノクロ画像であり、ピクセル値は、そのピクセルでのモノクロームの強さに対応する。例えば、画像はグレースケールであってよく、とり得るピクセル値の範囲は、白から黒に対応する、最小値(例えば、0)から最大値(例えば、255)である。
生成された画像は画像データとして記憶される。画像は、ロー(raw)画像データとして、ビットマップとして、あるいは、jpeg又はpngのような圧縮画像ファイルとして記憶されてよい。記憶される画像は、ストレージにおいてグラフデータの各々の部分に取って代わってよく、あるいは、グラフデータの各々の部分と関連付けて記憶されてよい。
変換ステップは、2つの画像においてピクセルの数に違いがある場合に、空(empty)の、すなわち、零値のピクセルの行及び列を2つの画像のうちの小さい方へ、2つの画像がサイズ的に等しくなる(すなわち、第1の画像はm×nピクセルであり、第2の画像はj×kピクセルであり、j=m且つk=n。)まで加えることを更に含んでよい。
任意に、実施が受け入れるよう構成される最大画像サイズが存在してよく(利用可能なプロセッシングハードウェア、結果を得るまでの所要時間、などのような因子に応じて決定される。)、全ての画像は、空の、すなわち、零値のピクセルの行及び列を加えることによって、(特徴抽出のためのモデルをトレーニングすること、及び特徴抽出のためのモデルを実行することの両方において)最大画像サイズまで大きくされる。すなわち、画像サイズは固定されてよく、空のピクセルは、より小さい画像を固定画像サイズに変換するために加えられる。
次に、ステップS102で、抽出プロセスが画像に対して実施される。抽出プロセスは、画像に適用されて各々の特徴ベクトルを抽出するプロセスである。抽出プロセスへの入力は第1の画像及び第2の画像であり、抽出プロセスは、画像を、出力としての各々の特徴ベクトルへ変換する。特徴ベクトルは、共通の組の特徴の中の夫々の特徴についての定量化可能な値(すなわち、数)を有する。共通の組の特徴は、画像の特徴であり、画像に畳み込みニューラルネットワークモデルを受けさせることによって抽出され得る。
畳み込みニューラルネットワークモデルは、抽出プロセスを実施するための、例となるモデルである。入力データ、すなわち、画像は、サイズが大きいことがある。畳み込みニューラルネットワークモデルは、次元削減を有効に実施して、画像を画像の特徴を表すベクトルへと減じる。
畳み込みニューラルネットワークモデルは、抽出プロセスによって適用される、予めトレーニングされた画像分類畳み込みニューラルネットワークモデルであってよい。トレーニングは、コンピュータにより実施される方法の部分として行われてよく、あるいは、トレーニングは、サード・パーティによって行われてよい。
特徴ベクトルは記憶されてよい。特徴ベクトルは、ストレージにおいてグラフデータの各々の部分及び/又は各々の画像データに取って代わってよい。例えば、グラフデータの部分は、その特徴ベクトルと関連付けて記憶されてよく、それにより、グラフデータの部分に係る特徴比較は、変換プロセス及び抽出プロセスがない場合に実施可能である。
ステップS103で、相似値、すなわち、第1の特徴ベクトルと第2の特徴ベクトルとの間の類似を表す値が、共通の組の特徴についての各々の定量化可能な値に基づき計算される。計算は、例えば、コサイン距離算出であってよい。出力は0から1の間の値、又はステップS102で抽出された2つの特徴ベクトルの類似を表す、何らかの他の方法でスケーリングされた値であってよい。
ステップS104で、計算された相似値が出力される。出力は、コンピュータにより実施される方法を開始するエンティティへ返されてよく、あるいは、方法の開始時に指定された物理アドレスへ送られてよい。出力は、2つの特徴ベクトルの類似、言い換えると、従って、2つの画像、最終的には、グラフデータの2つの部分の類似を表す。計算された相似値は、ブール値(Boolean value)、すなわち、2つのオプション、グラフデータの部分(すなわち、より具体的には、グラフデータのそれらの部分から変換された画像から抽出する特徴ベクトル)が類似していること、又はそれらが類似していないこと、のうちの一方を表す値であってよい。代替的に、例えば0から1の間といった、値域が存在してよく、出力される相似値は、計算された類似度を表す範囲の中の値である。
例えば、グラフデータの第1及び第2の部分は道路網の表現であってよい(頂点はジャンクションを表し、重み付けされた辺は、接続されたジャンクション間の距離又は移動時間を表す。)。出力された相似値は、1つの道路網の交通静穏化(traffic calming)又は交通制御対策が他の道路網に適用され得るかどうかを判定するために利用されてよい。代替の利用では、第1及び第2のデータ部分は、電気通信又はコンピュータネットワークのようなメッセージング又は通信システムの表現であってよい。このとき、頂点は、ノード又は端末を表し、辺は、夫々の期間中にノード間で送信されるメッセージ又はデータを表す。辺は、送信されるメッセージの数又はデータの量を表す重みにより重み付けされてよい。相似値を求めることは、異なるネットワークにおけるアクティビティが比較されること、又は異なる期間中の同じネットワークにおけるアクティビティが比較されることを、計算効率の良い様態において可能にする。そのような比較は、パターンマッチング及び/又は不良若しくは疑わしいネットワークアクティビティを識別することにとって有益であり得る。例えば、期間を表すデータグラフは、1つ以上の先行する期間を表すデータグラフ又は夫々のデータグラフと比較されてよく、1つ以上の先行する期間の予め定義された割合以上について予め定義された閾値を下回る計算された相似値(すなわち、“否定(no)”の、又は別なふうに非類似を表す、計算された相似値)は、問題となっている期間において異常なアクティビティ(例えば、不良又はサージ)が起きたとの警報(例えば、ユーザ端末又は他の出力あて先に対する。)を引き起こし得る。
図3は、実施形態の装置を表す。装置は、変換プロセッサ101、抽出プロセッサ102、類似計算部103、及び出力部104を有する。
変換プロセッサ101は、グラフデータの第1の部分及びグラフデータの第2の部分を入力として受信又は取得するよう構成される(変換プロセッサへ向けられた矢印によって表される。)。変換プロセッサ101は、図1のステップS101の変換プロセス、又は本明細書の別の場所で記載されている変換プロセスを実施し、それによって、第1の画像データとして現れる第1の画像及び第2の画像データとして表れる第2の画像を生成するよう構成される。図3において変換プロセッサ101から外に向かう矢印は、変換プロセッサ101から抽出プロセッサ102への第1の画像データの転送、及び変換プロセッサ101から抽出プロセッサ102への第2の画像データの転送を表す。
抽出プロセッサ102は、第1の画像データ及び第2の画像データを入力として受信又は取得するよう構成される。抽出プロセッサ102は、図1のステップS102の抽出プロセス、又は本明細書の別の場所で記載されている抽出プロセスを実施し、それによって、第1の画像データからは第1の特徴ベクトルを、第2の画像データからは第2の特徴ベクトルを抽出するよう構成される。例えば、抽出プロセッサ102は、画像データに対して画像畳み込みニューラルネットワークを適用して、各々の特徴ベクトルを抽出するよう構成されてよい。抽出プロセッサ102から外に向かう矢印は、抽出プロセッサ102から類似計算部103への第1及び第2の特徴ベクトルの転送を表す。
類似計算部103は、第1の特徴ベクトル及び第2の特徴ベクトルを入力として受信又は取得するよう構成される。類似計算部103は、ステップS103の相似値の計算、又は本明細書の別の場所で記載される、2つの特徴ベクトルから相似値を計算するプロシージャを実施し、それによって、第1の特徴ベクトルと第2の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される。例えば、類似計算部103は、コサイン距離比較を実施してよい。類似計算部103は、計算された相似値を出力部104へ転送するよう構成される。
出力部104は、計算された相似値を類似計算部から取得又は受信し、相似値を出力あて先へ出力するよう構成される。出力部104は、図1のS104での出力ステップを実施するよう構成される。出力あて先は、指定された記憶場所であってよい。代替的に、出力される場所は、変換プロセッサ101へグラフデータの部分を供給する装置又はエンティティであってよい。
図4は、実施形態の装置の基礎にあるか、実施形態のコンピュータにより実施される方法を実施するか、又は実施形態のプログラム若しくはソフトウェアを実行する、例となるシステムアーキテクチャを表す。
図5のシステムアーキテクチャは、例えば、データ記憶サーバ、データベースコントローラ、又はサーバのような、コンピュータデバイスである。システムアーキテクチャは、協働する多数のそのようなコンピュータデバイスを有し得る。コンピュータデバイスは、プロセッサ993及びメモリ994を有する。任意に、コンピュータデバイスは、他のコンピュータデバイスとの、例えば、本発明の実施形態の他のコンピュータデバイスとの通信のためのネットワークインターフェイス997を更に含む。
例えば、実施形態は、そのようなコンピュータデバイスのネットワークから成ってよい。任意に、コンピュータデバイスは、例えば、キーボード及びマウス996のような、1つ以上の入力メカニズムと、例えば、1つ以上のモニタ995のような、表示ユニットとを更に含む。コンポーネントは、バス992を介して互いへ接続される。
メモリ994はコンピュータ可読媒体を含んでよい。語「コンピュータ可読媒体」は、コンピュータ実行可能命令を搬送するよう又はデータ構造が記憶されるよう構成される単一の媒体又は複数の媒体(例えば、中央集権型若しくは分散型データベース並びに/又は関連するキャッシュ及びサーバ)を指してよい。コンピュータ実行可能命令は、例えば、汎用コンピュータ、特別目的のコンピュータ、又は特別目的のプロセッシングデバイス(例えば、1つ以上のプロセッサ)がアクセス可能であって、それらに1つ以上の機能又は動作、例えば、実施形態のコンピュータにより実施される方法(例えば、図1を参照)を実行させ、あるいは、それらを実施形態の機能装置(例えば、図3を参照)として動作させる命令及びデータを含んでよい。よって、語「コンピュータ可読記憶媒体」、気化による実行のための命令の組であって、機械に、本開示の方法のうちのいずれか1つ以上を実行させるものを記憶し、符号化し、又は搬送することができる如何なる媒体も含んでよい。語「コンピュータ可読記憶媒体」は、制限なしに、固体状態メモリ、光学媒体及び磁気媒体を含むと然るべく理解され得る。例として、制限なしに、そのようなコンピュータ可読媒体は、ランダムアクセスメモリ(RAM;Random Access Memory)、リードオンリーメモリ(ROM;Read-Only Memory)、電気的消去可能なプログラム可能リードオンリーメモリ(EEPROM;Electrically Erasable Programmable Read-Only Memory)、コンパクトディスク・リードオンリーメモリ(CD−ROM;Compact Disc Read-Only Memory)若しくは他の光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気記憶デバイス、フラッシュメモリデバイス(例えば、固体状態メモリデバイス)を含む、非一時的なコンピュータ可読記憶媒体を含んでよい。
プロセッサ993は、コンピュータデバイスを制御し、処理演算(例えば、実施形態のコンピュータにより実施される方法(例えば、図1を参照)を実施するようメモリに記憶されているコードを実行すること)を実行するよう、あるいは、本明細書で及び特許請求の範囲で記載されるトレーニングマシン又はトレーニングプロセッサ、変換プロセッサ101、抽出プロセッサ102、相似値計算部103、及び出力部104の多種多様な機能を実装するよう構成される。メモリ994は、プロセッサ993によって読み出し及び書き込みされるデータを記憶する。本明細書で言及されるように、プロセッサは、例えば、マイクロプロセッサ、中央演算処理装置、又は同様のもののような、1つ以上の汎用のプロセッシングデバイスを含んでよい。プロセッサは、複数命令セットコンピューティング(CISC;complex instruction set computing)マイクロプロセッサ、縮小命令セットコンピューティング(RISC;reduced instruction set computing)マイクロプロセッサ、超長命令語(VLIW;very long instruction word)マイクロプロセッサ、又は他の命令セットを実装するプロセッサ若しくは命令セットの組み合わせを実装するプロセッサを含んでよい。プロセッサは、例えば、特定用途向け集積回路(ASIC;application specific integrated circuit)、フィールドプログラマブルゲートアレイ(FPGA;field programmable gate array)、デジタル信号プロセッサ(DSP;digital signal processor)、ネットワークプロセッサ、又は同様のもののような、1つ以上の特別目的のプロセッシングデバイスを更に含んでよい。1つ以上の実施形態において、プロセッサは、本明細書で説明される動作及びステップを実施するための命令を実行するよう構成される。
表示ユニット995は、コンピュータデバイスによって記憶されているデータの表現を表示してよく、更には、ユーザとコンピュータデバイスに記憶されているプログラム及びデータとの間のインタラクションを可能にするカーソル及びダイアログボックス及び画面を表示してよい。入力メカニズム996は、ユーザがデータ及び命令をコンピュータデバイスへ入力することを可能にしてよい。
ネットワークインターフェイス(ネットワークI/F)997は、例えばインターネットのようなネットワークへ接続されてよく、他のそのようなコンピュータデバイスへネットワークを介して接続される。ネットワークI/F997は、ネットワークを介した他の装置との間のデータ入出力を制御してよい。例えば、マイクロホン、スピーカ、プリンタ、電源ユニット、ファン、ケース、スキャナ、トラッカーボール、などのような、他の周辺機器が、コンピュータデバイスにおいて含まれてよい。
図3の変換プロセッサ101は、メモリ994に記憶されているプロセッシング命令(プログラム)を実行し且つデータをネットワークI/F997を介して交換するプロセッサ993(又は複数のプロセッサ993)であってよい。特に、プロセッサ993は、ネットワークI/F997を介して、又は装置内の内部バスを介して、グラフデータの類似比較を要求するエンティティ(エンティティは、コンピュータデバイスの外部にあってよく、あるいは、同じコンピュータデバイス上で実行されるプログラムであってよい。)からグラフデータの第1及び第2の部分を受信し、図1のステップS101で見られるように、グラフデータの第1及び第2の部分を第1及び第2の画像に変換するよう、プロセッシング命令を実行する。更には、プロセッサ993は、接続されている記憶ユニットにおいて画像(又はそれらを符号化するデータ)を記憶するよう、且つ/あるいは、ネットワークI/F997を介して、又は内部バスを介して、第1の画像を符号化するデータ及び第2の画像を符号化するデータを抽出プロセッサへ送るよう、プロセッシング命令を実行してよい。
図3の抽出プロセッサ102は、メモリ994に記憶されているプロセッシング命令(プログラム)を実行し且つデータをネットワークI/F997を介して交換するプロセッサ993(又は複数のプロセッサ993)であってよい。特に、プロセッサ993は、ネットワークI/F997を介して、又は装置内の内部バスを介して、変換プロセッサ101から第1及び第2の画像を受信し、図1のステップS102で見られるように、第1及び第2の画像から第1の特徴ベクトル及び第2の特徴ベクトルを抽出するよう、プロセッシング命令を実行する。更には、プロセッサ993は、接続されている記憶ユニットにおいて特徴ベクトル(又はそれらを符号化するデータ)を記憶するよう、且つ/あるいは、ネットワークI/F997を介して、又は内部バスを介して、第1及び第2の特徴ベクトルを相似値計算部103へ送るよう、プロセッシング命令を実行してよい。
図1及び3には表されていないが、実施形態のコンピュータにより実施される方法は、トレーニングプロセスを含んでよく、実施形態の装置は、トレーニングプロセスを実行するよう構成されるトレーニングプロセッサを含んでよい。トレーニングプロセスは別な場所で記載されており、画像分類ニューラルネットワークモデルをトレーニングする(すなわち、画像分類ニューラルネットワークモデルにおける構成可能パラメータの値を設定する)プロセスである。画像分類ニューラルネットワークモデルは抽出プロセッサ102へ供給され、ステップS102を実行する際に抽出プロセッサ102で第1及び第2の画像に対して実行又は適用される。トレーニングプロセッサは、メモリ994に記憶されているプロセッシング命令(プログラム)を実行し且つデータをネットワークI/F997を介して交換するプロセッサ993(又は複数のプロセッサ993)であってよい。特に、プロセッサ993は、ネットワークI/F997を介して、又は装置内の内部バスを介して、画像対のトレーニング組を受信又は取得し、画像対のトレーニング組の中の画像対について、対応する目標相似値を求め、画像対のトレーニング組及び目標相似値を用いて画像分類ニューラルネットワークモデルをトレーニングするよう、プロセッシング命令を実行する。更には、プロセッサ993は、接続されている記憶ユニットにおいて、トレーニングされた画像分類ニューラルネットワークモデルを記憶するよう、且つ/あるいは、ネットワークI/F997を介して、又は内部バスを介して、トレーニングされた画像分類ニューラルネットワークモデルを抽出プロセッサ102へ送るよう、プロセッシング命令を実行してよい。
図3の相似値計算部103は、メモリ994に記憶されているプロセッシング命令(プログラム)を実行し且つデータをネットワークI/F997を介して交換するプロセッサ993(又は複数のプロセッサ993)であってよい。特に、プロセッサ993は、ネットワークI/F997を介して、又は装置内の内部バスを介して、抽出プロセッサ102から第1及び第2の特徴ベクトルを受信し、図1のステップS103で見られるように、2つの特徴ベクトルの間の類似を表す相似値を計算するよう、プロセッシング命令を実行する。更には、プロセッサ993は、接続されている記憶ユニットにおいて、計算された相似値を記憶するよう、且つ/あるいは、ネットワークI/F997を介して、又は内部バスを介して、計算された相似値を出力部104へ送るよう、プロセッシング命令を実行してよい。
図3の出力部104は、メモリ994に記憶されているプロセッシング命令(プログラム)を実行し且つデータをネットワークI/F997を介して交換するプロセッサ993(又は複数のプロセッサ993)であってよい。特に、プロセッサ993は、ネットワークI/F997を介して、又は装置内の内部バスを介して、相似値計算部103から計算された相似値を受信し、図1のステップS104で見られるように、計算された相似値を出力するよう、プロセッシング命令を実行する。
本発明を具現する方法は、図4に表されているようなコンピュータデバイスで実行されてよい。そのようなコンピュータデバイスは、図4に表されているあらゆるコンポーネントを有する必要はなく、それらのコンポーネントの一部から構成されてよい。本発明を具現する方法は、ネットワークを介して1つ以上のデータ記憶サーバと通信する単一のコンピュータデバイスによって実行されてよい。コンピュータデバイスは、画像分類畳み込みニューラルネットワークを記憶するデータストレージ自体であってよい。
図5は、実施形態の方法を表し、方法は、システムによって実施される。システムは、例えば、図4のハードウェアによって実装される、図3に表されているような装置であってよい。
ステップS501a及びS501bは、図1のステップS101のプロセスのような変換プロセスの一例である。ステップS501aで、第1及び第2のグラフは、グラフデータの第1及び第2の部分の例であって、それらのネイティブな表現においてシステム内にロードされる。システムは、ネイティブなグラフ表現(図2a及び図6aで視覚化される。)を隣接行列(図2bで視覚化される。)に変換する処理を実施する。例えば、グラフ内の各頂点は、第1の次元における一意の位置を割り当てられ、言い換えれば、頂点は順序付けられる。頂点は、第2の次元における同じ一意の位置を夫々割り当てられる。隣接行列は2次元行列である。隣接は、隣接する頂点に対応する行列エントリにある位置によって表される。このとき、隣接は、2つの頂点を接続するグラフ内の辺によって決定される。重み付けされた辺の場合に、重み付けされた辺によって接続されている2つの頂点に対応する列及び行にある行列エントリは、重み付けされた辺の重みを表す値である。なお、何らかのスケーリングが実行されてよい点に留意されたい。グラフ内の全ての辺が隣接行列において表されると、残りのエントリ(すなわち、未だ設定されていないエントリ)は0に設定される。
ステップS501bで、ステップS501aで生成された2つの隣接行列は、各々のモノクロ(例えば、グレースケール)画像に変換される。例えば、ステップS102の変換プロセス、又は具体的に、ステップS501bのグレースケール画像変換プロセスによって生成されるような、例となるグレースケール画像は、図6bで表される。各々の隣接行列からの各行列セル/エントリは、ピクセル値に変換される。このようにして、重み付けされた辺の例では、辺の重みは、任意のスケーリングを介して、行列エントリとしてピクセル値へ変換される。ピクセル値は、画像における特定のピクセル(位置)での色の強さを表す。グレースケールの例では、強さは白から黒の範囲に及ぶ。行列エントリをピクセル値のフルスケールにスケールアップすること、又はピクセル値のフルスケールにスケールダウンすることが、とり得るピクセル値の範囲に応じて必要であり得る。
ステップS502aで、特徴抽出のためのトレーニングされたモデルが存在するかどうかが判定される。トレーニングされたモデルの一例は、トレーニングされた画像分類畳み込みニューラルネットワークである。
ステップS502aで、特徴抽出のためのトレーニングされたモデルが存在しないと決定される場合には、トレーニングプロセスがステップS505で実施される。このステップについては、以下で更に詳細に記載される。
ステップS502aで、特徴抽出のためのトレーニングされたモデルが存在すると決定される場合には、あるいは、モデルがステップS505でトレーニングされると、ステップS503で、特徴抽出のためのトレーニングされたモデルは、第1の特徴ベクトルを生成するよう第1の画像に適用され、第2の特徴ベクトルを生成するよう第2の画像に適用される。ステップS503は、図1のステップS103の相似値の計算である。例えば、2つの特徴ベクトルのコサイン相似値が計算される。
プロセスは、出力として計算された相似値を有して、ステップS504で終了する。
計算された相似値は、グラフデータの部分の物理的な記憶場所を決定するために使用されてよい。例えば、グラフデータ記憶システムは、複数の物理データ記憶ユニットにわたって分散されたデータグラフを記憶してよい。夫々の物理データ記憶ユニットは、データグラフを構成するグラフデータの1つ以上の部分を記憶する。それらの部分は必ずしも互いから独立している必要はなく、部分的に交差した辺がデータグラフにおいて存在してよい。アルゴリズムは、データグラフを記憶のための部分に分割するために存在してよい。グラフデータの新しい部分のための物理的な記憶場所を決定するための次のプロシージャは、例えば、データベースコントローラ又はデータベース管理システムによって、実施されてよい。グラフデータベースへの追加のためにグラフデータの新しい部分を受け取ると、最初に、どの物理データ記憶ユニットがその新しい部分を記憶するための容量を有しているかが判定される。新しい部分を記憶するための容量を有していると決定された物理データ記憶ユニットは、候補となる物理データ記憶ユニットと呼ばれてよい。グラフデータの新しい部分は、候補となる物理データ記憶ユニットの夫々に記憶されているグラフデータの部分又は夫々の部分と比較される。比較は、実施形態のプロシージャ、例えば、ステップS501a乃至S504、又はステップS101乃至S104を用いて、実施される。1つ以上の計算された相似値は、候補となる物理データ記憶ユニットの夫々について計算される(すなわち、1つの相似値は、候補となる物理データ記憶ユニットに既に記憶されているグラフデータの部分ごとに計算される。)。グラフデータの部分ごとに1つよりも多い相似値が存在している場合において、それらの1つよりも多い相似値は、単一の値へと結合される。その単一の値は、1つよりも多い値の平均値として、又は1つよりも多い値の中の最大値として、計算される。そのような結合の後に、候補となる物理データ記憶ユニットごとに1つの相似値が存在する。グラフデータの新しい部分は、最も大きい1つの相似値を有している候補となる物理データ記憶ユニットに記憶される。互角の場合に、グラフデータの新しい部分は、互角であった物理データ記憶ユニットの中で最も大きい利用可能な記憶容量を有している候補となる物理データ記憶ユニットに記憶される。論理的根拠は、同様のグラフデータ部分は一緒にクエリされる可能性が高く、従って、ユニット間をまたぐグラフのトラバースは低減されることである。
図7は、実施形態のシステムを表す。図7の特定のシステムは、トレーニングプロセッサ703を含む。トレーニングプロセッサ703は、テストデータ701及び注釈付きデータ702を用いて、特徴抽出のためのトレーニングされたモデル704を生成する。このトレーニングされたモデルは、抽出プロセッサ102(特徴算出プロセッサと呼ばれる。)によってアクセスされる。
システムは、図4に表されているようなハードウェアアーキテクチャを有する。特に、プロセッサは、トレーニングプロセッサ703、変換プロセッサ101、抽出プロセッサ102、及び相似値算出プロセッサ103のプロセッシング命令を実行する。1つ以上の記憶ユニット(メモリ)は、プロセッシング命令、特徴抽出のためのトレーニングされたモデル704、グラフデータの第1及び第2の部分、第1及び第2の画像、並びに第1及び第2の特徴ベクトルを記憶する。
同じ参照番号は、図3のコンポーネントと共通するコンポーネントに割り当てられており、従って、それらのコンポーネントの説明はここで繰り返されない。図3と共通するコンポーネント101乃至103は、図7との関連で“アプリケーション装置”と呼ばれる。アプリケーション装置は、トレーニング装置701乃至704、すなわち、トレーニングプロセスを実施するよう構成される装置を更に含む。
トレーニング装置は、トレーニングプロセッサ703の制御下にあり、テストデータ701、注釈付きデータ702、及びトレーニングされているモデル704を記憶するよう構成される。
例えば、トレーニングされているモデル704は、画像分類畳み込みニューラルネットワークモデルであってよい。テストデータ701は、画像対のトレーニング組であってよく、注釈付きデータ702は、トレーニング組における画像対の組の各画像対についての目標相似値であってよい。目標相似値は、画像の対応する対が類似していると見なされ得るかどうかを表す値であり、バイナリ“はい(yes)”又は“いいえ(no)”であってよく、あるいは、類似を定量化する値、例えば、0から1の間の値であってよい。テストデータ701及び注釈付きデータ702は、単一のストレージ、例えば、インデックス付きテーブルにおいてまとめられてよく、そのようなテーブルにおいて、各行は、画像の対の各画像についての画像データと、その対についての目標相似値とを含む。
画像の対は、ロー(raw)画像ファイル(すなわち、ピクセル値×ピクセル値)として記憶されるか、あるいは、例えば、tiff、jpeg又はビットマップのような、画像フォーマットにおいて記憶されてよい。インデックス付きテーブルは、分散型データ記憶として複数のコンピュータサーバにわたって分散されてよい。
トレーニングされていない、又は未だ十分にトレーニングされていない画像分類畳み込みニューラルネットワークモデルは、記憶ユニット704において記憶される。トレーニングプロセスは、畳み込みニューラルネットワークにおける構成可能パラメータを変更するバックワード・エラー・プロパゲーション・プロシージャである。画像の各対及び対応する目標相似値について、トレーニングプロセッサ703は、記憶されている画像分類ニューラルネットワークモデルを夫々の画像に対して実行することによってその画像対の各画像から特徴ベクトルを抽出し、ステップS103の相似値の計算に従って、2つの特徴ベクトルの間の類似を表す相似値を計算し、計算された相似値と目標相似値との間に差がある場合には、バックワード・エラー・プロパゲーションを実施して、その差を小さくするよう画像分類ニューラルネットワークモデルを変更するよう構成される。このとき、抽出する動作、計算する動作、及びバックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に達するか、あるいは、差が閾値を下回るまで、繰り返し実施される。バックワード・エラー・プロパゲーションは、エラー(差)が1つ以上の構成可能パラメータに応じてどのように変化するかを観測することによって、及び構成可能パラメータを順にアドレッシングし、エラーを最小限にする構成可能パラメータの値を見つけることによって、実施される。エラーの最小化は、畳み込みニューラルネットワークをトレーニングするためにこれまで使用されてきたトレーニング画像の全ての対にわたる総合的なエラーである。
トレーニングプロセッサ703は、テストデータ701における画像の全対にわたって繰り返し、対応する目標相似値に一致する結果(計算された相似値)の確率を最大にする画像の特徴を見つけるよう試みる。エラーは、次いで、畳み込みニューラルネットワークの最初のレイヤへ後方伝播される。エラー(すなわち、その対についての目標相似値とその対についての計算された相似値との間の差)は、トレーニングされている畳み込みニューラルネットワークにおける構成可能パラメータ(例えば、重み及びバイアス係数)の調整を生じさせる。フィードバックループは、予め定義された最多繰り返し回数に達するか、又はエラーが許容範囲に収束するまで、続く。
例えばLeNet又はAlexNetのような画像分類ニューラルネットワークモデルは、画像分類畳み込みニューラルネットワークモデルとして記憶され、トレーニングプロセッサ703によってトレーニングされ得る。入力される画像データは、通常、サイズが大きいので、畳み込みニューラルネットワークモデルは、次元削減を有効に行って、入力された画像データを画像ごとに、グラフデータの部分の画像表現の重要な特徴を表す特徴値の単一ベクトルへと低減する。
トレーニングは、入力画像をタイリングすることによって並列処理され得る。
トレーニングデータは、次の3つの方法において求められ得る:
1)既存の画像レポジトリ(例えば、数字認識のためのMNistデータ)を再利用する。
2)グレースケールラスター画像を生成し、夫々の画像について、回転させ且つランダムに編集して、原画像にある程度類似していると見なされる“新しい”画像を生成し、原画像及び編集された画像の対に“T/F”又は目標相似値のいずれかによりラベルを付すことによって、意図的に構築する。例えば、目標相似値は、対をなす原画像から新しい画像を得るために実施された編集の程度を定量化し、編集の程度を目標相似値において表すことによって、求められてよい。すなわち、2つの画像の間の編集距離が計算される。このとき、原画像を新しい画像に変換する動作には数値が割り当てられ、目標相似値は全ての動作の積み重なりである。
3)相似値が知られているか又は計算されているグラフデータの部分のサンプル対を求めるか、あるいは、例えば、ブルートフォース比較又はグラフ編集距離を使用して、そのような計算を実施する。グラフデータの部分のサンプル対にステップS102の変換処理を受けさせる。目標相似値として(必要に応じて調整された)相似値を有して、畳み込みニューラルネットワーク704のためのトレーニング画像の対としてそのように生成された画像の対を使用する。
1)既存の画像レポジトリ(例えば、数字認識のためのMNistデータ)を再利用する。
2)グレースケールラスター画像を生成し、夫々の画像について、回転させ且つランダムに編集して、原画像にある程度類似していると見なされる“新しい”画像を生成し、原画像及び編集された画像の対に“T/F”又は目標相似値のいずれかによりラベルを付すことによって、意図的に構築する。例えば、目標相似値は、対をなす原画像から新しい画像を得るために実施された編集の程度を定量化し、編集の程度を目標相似値において表すことによって、求められてよい。すなわち、2つの画像の間の編集距離が計算される。このとき、原画像を新しい画像に変換する動作には数値が割り当てられ、目標相似値は全ての動作の積み重なりである。
3)相似値が知られているか又は計算されているグラフデータの部分のサンプル対を求めるか、あるいは、例えば、ブルートフォース比較又はグラフ編集距離を使用して、そのような計算を実施する。グラフデータの部分のサンプル対にステップS102の変換処理を受けさせる。目標相似値として(必要に応じて調整された)相似値を有して、畳み込みニューラルネットワーク704のためのトレーニング画像の対としてそのように生成された画像の対を使用する。
トレーニングプロセスが完了すると、トレーニングされた画像分類畳み込みニューラルネットワークモデルが得られる。このモデルは、アプリケーション装置によって、具体的に、抽出プロセッサ102によって、画像データに直接に適用され得る。そのような直接的な適用は、フォワード・プロパゲーションと呼ばれ得る。
図8は、畳み込みニューラルネットワークモデルの一例を表す。モデルの各レイヤには、トレーニング画像の対及び目標相似値を用いて学習(すなわち、構成)される構成可能パラメータ(例えば、重み及びバイアス係数)が存在する。そのようなパラメータの目的は、入力された画像データを複数レベルの抽出及び投影を通じて集約することであり、それにより、画像の最終的な、抽出された特徴ベクトルは、目標相似値と一致する計算された相似値の確率を最大にし、且つ、目標表示値と一致しない計算された相似値の確率を最小にすることができる。
畳み込みニューラルネットワークモデルは、1つ以上の畳み込みレイヤ(convolution layers)801(入力された画像データを構成可能パラメータを用いて畳み込む。)、1つ以上のサブサンプリングレイヤ(sub-sampling layers)802(畳み込みレイヤからの空間的に関連した値をプールする。)、及び1つ以上の完全接続レイヤ(fully connected layers)(内積レイヤ(inner product layers))803を有する多層ニューラルネットワークアーキテクチャである。畳み込みニューラルネットワークは、構成可能なReLuレイヤ804を更に含む。このレイヤ804は、ネットワーク内のニューロンの活性化機能を構成する活性化関数である。内積レイヤは、数値を用いて表現される必要がある特徴のサイズを圧縮する次元削減に関与する。内積レイヤ803は、内積レイヤが次元削減のための最終レイヤであって、数百という大きさのベクトルをより小さい個数の特徴へと低減するので、画像サイズに従って構成されてよい。
トレーニングの結果は、将来的に直接に適用され得るローカルストレージ内のニューラルネットワークモデルである。図8のダイアグラムはCNNモデルの一例である。このモデルの各レイヤには、入力された注釈付き画像対を用いて学習されるパラメータ(重み及びバイアス係数)が存在する。そのようなパラメータの目的は、入力された画像データを複数レベルの抽出及び投影を通じて集約することであり、それにより、画像の最終的な、抽出された特徴ベクトルは、割り当てられているラベルの蓋然性を最大にし、且つ、画像に割り当てられていないラベルの蓋然性を最小にすることができる。
上記の実施形態に加えて、以下の付記を開示する。
(付記1)
変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用し、
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用し、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有し、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算し、
前記計算された相似値を出力する
ことを有する、コンピュータにより実施される方法。
(付記2)
前記グラフデータの第1の部分及び前記グラフデータの第2の部分は、複数の辺によって相互に接続されている複数の頂点を夫々が有し、前記複数の辺の夫々は、源点としての前記複数の頂点のうちの1つをあて先頂点としての前記複数の頂点のうちの他の1つへ接続し、
前記変換プロセスは、
前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々における各頂点を、2つの次元のうちの第1の次元における一意の位置及び前記2つの次元のうちの第2の次元における一意の位置に割り当て、
ピクセル値の2次元アレイにおける各エントリにおいてピクセル値を設定する
ことを有し、
前記ピクセル値を設定することは、
前記複数の辺の夫々について、対応するエントリにあるピクセル値を第1の値域の中の値として設定し、前記対応するエントリは、前記第1の次元において前記源点に割り当てられている一意の位置及び前記第2の次元において前記あて先頂点に割り当てられている一意の位置にあるエントリであり、
残りのアレイエントリにあるピクセル値を前記第1の値域の外の値に設定する
ことによる、付記1に記載のコンピュータにより実施される方法。
(付記3)
前記複数の辺は、双方向の辺を有し、該双方向の辺の夫々は、2つの頂点を、源点及びあて先頂点の両方として、互いに接続する、
付記2に記載のコンピュータにより実施される方法。
(付記4)
前記複数の辺は、定量的なラベルによって重み付けされた辺を有し、定量的なラベルによって前記複数の辺の夫々について前記対応するエントリにあるピクセル値を設定することは、前記対応するエントリにあるピクセル値を、前記定量的なラベルを表す前記第1の値域の中の値として設定することを有する、
付記2に記載のコンピュータにより実施される方法。
(付記5)
前記複数の頂点の夫々は、エンティティを表し、前記変換プロセスは、
前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々から1つずつの頂点を有し、同じエンティティを表す頂点の対を決定し、夫々の決定された対について、当該対に含まれる頂点を、ピクセル値の夫々の2次元アレイの前記第1の次元及び前記第2の次元における等価な一意の位置に割り当てることを含む、
付記2に記載のコンピュータにより実施される方法。
(付記6)
前記抽出プロセスは、人工ニューラルネットワークを夫々の画像に適用して、夫々の特徴ベクトルを抽出することを有する、
付記1に記載のコンピュータにより実施される方法。
(付記7)
前記人工ニューラルネットワークは、畳み込みニューラルネットワークである、
付記6に記載のコンピュータにより実施される方法。
(付記8)
画像分類畳み込みニューラルネットワークモデルをトレーニングし、該トレーニングされた画像分類畳み込みニューラルネットワークモデルを前記畳み込みニューラルネットワークとして記憶することを更に有し、
前記トレーニングすることは、
画像対のトレーニング組を取得し、該画像対のトレーニング組の中の画像対について、対応する目標相似値を取得し、
前記画像対のトレーニング組の中の夫々の画像対について、順番に、
夫々の画像に対して前記画像分類畳み込みニューラルネットワークモデルを実行することによって当該画像対の各画像から特徴ベクトルを抽出し、2つの該特徴ベクトルの間の類似を表す相似値を計算し、該計算された相似値と前記目標相似値との間に差がある場合には、前記画像分類畳み込みニューラルネットワークモデル変更して前記差を小さくするようバックワード・エラー・プロパゲーションを実施し、前記抽出すること、前記計算すること、及び前記バックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に到達するか又は前記差が閾値を下回るまで、繰り返し実施される
ことを有する、付記7に記載のコンピュータにより実施される方法。
(付記9)
前記画像対のトレーニング組を取得することは、画像レポジトリから画像対をダウンロードすることを有する、
付記8に記載のコンピュータにより実施される方法。
(付記10)
前記画像対のトレーニング組を取得することは、
原ラスター画像の組を生成し、
前記原ラスター画像の夫々について、回転及び/又はランダムなピクセル値編集を含む編集を当該原ラスター画像に対して行うことによって1つ以上の新しい画像を生成し、該1つ以上の新しい画像の夫々とともに当該原ラスター画像を前記画像対のトレーニング組に加えること
を有する、付記8に記載のコンピュータにより実施される方法。
(付記11)
前記画像対の夫々について前記目標相似値を取得することは、当該画像対において前記原ラスター画像から前記新しい画像を取得するために実施される前記編集の程度を定量化し、該編集の程度を前記目標相似値において表すことを有する、
付記10に記載のコンピュータにより実施される方法。
(付記12)
グラフデータの部分に分割されたデータグラフを記憶するグラフデータ記憶システムにおける、コンピュータにより実施される方法であって、グラフデータの各部分は、複数の物理データ記憶ユニットの中の1つに記憶される、方法において、
前記データグラフへの追加のためにグラフデータの一部分を受け取り、
前記複数の物理データ記憶ユニットの中から、前記受け取られたグラフデータの一部分を記憶するための十分な利用可能記憶容量を有している物理データ記憶ユニットを候補として選択し、
前記候補となる物理データ記憶ユニットの夫々について、当該候補となる物理記憶ユニットに記憶されている前記グラフデータの部分又は各部分ごとに付記1乃至11のうちいずれか一つに記載のコンピュータにより実施される方法を、前記受け取られたグラフデータの一部分を前記グラフデータの第1の部分とし且つ前記記憶されているグラフデータの部分を前記グラフデータの第2の部分として実行し、当該候補となる物理データ記憶ユニットについて前記計算された相似値又は夫々の計算された相似値を記録し、夫々の候補となる物理データ記憶ユニットは単一の計算された相似値又は複数の計算された相似値を有し、当該候補となる物理データ記憶ユニットが複数の計算された相似値を有している場合には、該複数の計算された相似値の平均又は最大値を計算することによって前記複数の計算された相似値を単一の計算された相似値にし、
前記受け取られたグラフデータの一部分を記憶するために、最大の単一の相似値を有している前記候補となる物理データ記憶ユニットを選択し、前記受け取られたグラフデータの一部分を前記選択された候補となる物理データ記憶ユニットに書き込む
ことを有する、コンピュータにより実施される方法。
(付記13)
変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用するよう構成される変換プロセッサと、
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用するよう構成され、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、抽出プロセッサと、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される相似値計算部と、
前記計算された相似値を出力するよう構成される出力部と
を有する装置。
(付記14)
コンピュータデバイスによって実行される場合に、該コンピュータデバイスに、付記1乃至12のうちいずれか一つに記載のコンピュータにより実施される方法を実行させるコンピュータプログラム。
(付記15)
グラフデータベースから分割されるグラフデータの複数の部分の中のグラフデータの1つ以上の部分を夫々が記憶している複数の物理データ記憶ユニットと、
付記12に記載のコンピュータにより実施される方法を実行するよう構成されるデータベース管理システムと
を有するグラフデータ記憶システム。
(付記1)
変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用し、
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用し、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有し、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算し、
前記計算された相似値を出力する
ことを有する、コンピュータにより実施される方法。
(付記2)
前記グラフデータの第1の部分及び前記グラフデータの第2の部分は、複数の辺によって相互に接続されている複数の頂点を夫々が有し、前記複数の辺の夫々は、源点としての前記複数の頂点のうちの1つをあて先頂点としての前記複数の頂点のうちの他の1つへ接続し、
前記変換プロセスは、
前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々における各頂点を、2つの次元のうちの第1の次元における一意の位置及び前記2つの次元のうちの第2の次元における一意の位置に割り当て、
ピクセル値の2次元アレイにおける各エントリにおいてピクセル値を設定する
ことを有し、
前記ピクセル値を設定することは、
前記複数の辺の夫々について、対応するエントリにあるピクセル値を第1の値域の中の値として設定し、前記対応するエントリは、前記第1の次元において前記源点に割り当てられている一意の位置及び前記第2の次元において前記あて先頂点に割り当てられている一意の位置にあるエントリであり、
残りのアレイエントリにあるピクセル値を前記第1の値域の外の値に設定する
ことによる、付記1に記載のコンピュータにより実施される方法。
(付記3)
前記複数の辺は、双方向の辺を有し、該双方向の辺の夫々は、2つの頂点を、源点及びあて先頂点の両方として、互いに接続する、
付記2に記載のコンピュータにより実施される方法。
(付記4)
前記複数の辺は、定量的なラベルによって重み付けされた辺を有し、定量的なラベルによって前記複数の辺の夫々について前記対応するエントリにあるピクセル値を設定することは、前記対応するエントリにあるピクセル値を、前記定量的なラベルを表す前記第1の値域の中の値として設定することを有する、
付記2に記載のコンピュータにより実施される方法。
(付記5)
前記複数の頂点の夫々は、エンティティを表し、前記変換プロセスは、
前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々から1つずつの頂点を有し、同じエンティティを表す頂点の対を決定し、夫々の決定された対について、当該対に含まれる頂点を、ピクセル値の夫々の2次元アレイの前記第1の次元及び前記第2の次元における等価な一意の位置に割り当てることを含む、
付記2に記載のコンピュータにより実施される方法。
(付記6)
前記抽出プロセスは、人工ニューラルネットワークを夫々の画像に適用して、夫々の特徴ベクトルを抽出することを有する、
付記1に記載のコンピュータにより実施される方法。
(付記7)
前記人工ニューラルネットワークは、畳み込みニューラルネットワークである、
付記6に記載のコンピュータにより実施される方法。
(付記8)
画像分類畳み込みニューラルネットワークモデルをトレーニングし、該トレーニングされた画像分類畳み込みニューラルネットワークモデルを前記畳み込みニューラルネットワークとして記憶することを更に有し、
前記トレーニングすることは、
画像対のトレーニング組を取得し、該画像対のトレーニング組の中の画像対について、対応する目標相似値を取得し、
前記画像対のトレーニング組の中の夫々の画像対について、順番に、
夫々の画像に対して前記画像分類畳み込みニューラルネットワークモデルを実行することによって当該画像対の各画像から特徴ベクトルを抽出し、2つの該特徴ベクトルの間の類似を表す相似値を計算し、該計算された相似値と前記目標相似値との間に差がある場合には、前記画像分類畳み込みニューラルネットワークモデル変更して前記差を小さくするようバックワード・エラー・プロパゲーションを実施し、前記抽出すること、前記計算すること、及び前記バックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に到達するか又は前記差が閾値を下回るまで、繰り返し実施される
ことを有する、付記7に記載のコンピュータにより実施される方法。
(付記9)
前記画像対のトレーニング組を取得することは、画像レポジトリから画像対をダウンロードすることを有する、
付記8に記載のコンピュータにより実施される方法。
(付記10)
前記画像対のトレーニング組を取得することは、
原ラスター画像の組を生成し、
前記原ラスター画像の夫々について、回転及び/又はランダムなピクセル値編集を含む編集を当該原ラスター画像に対して行うことによって1つ以上の新しい画像を生成し、該1つ以上の新しい画像の夫々とともに当該原ラスター画像を前記画像対のトレーニング組に加えること
を有する、付記8に記載のコンピュータにより実施される方法。
(付記11)
前記画像対の夫々について前記目標相似値を取得することは、当該画像対において前記原ラスター画像から前記新しい画像を取得するために実施される前記編集の程度を定量化し、該編集の程度を前記目標相似値において表すことを有する、
付記10に記載のコンピュータにより実施される方法。
(付記12)
グラフデータの部分に分割されたデータグラフを記憶するグラフデータ記憶システムにおける、コンピュータにより実施される方法であって、グラフデータの各部分は、複数の物理データ記憶ユニットの中の1つに記憶される、方法において、
前記データグラフへの追加のためにグラフデータの一部分を受け取り、
前記複数の物理データ記憶ユニットの中から、前記受け取られたグラフデータの一部分を記憶するための十分な利用可能記憶容量を有している物理データ記憶ユニットを候補として選択し、
前記候補となる物理データ記憶ユニットの夫々について、当該候補となる物理記憶ユニットに記憶されている前記グラフデータの部分又は各部分ごとに付記1乃至11のうちいずれか一つに記載のコンピュータにより実施される方法を、前記受け取られたグラフデータの一部分を前記グラフデータの第1の部分とし且つ前記記憶されているグラフデータの部分を前記グラフデータの第2の部分として実行し、当該候補となる物理データ記憶ユニットについて前記計算された相似値又は夫々の計算された相似値を記録し、夫々の候補となる物理データ記憶ユニットは単一の計算された相似値又は複数の計算された相似値を有し、当該候補となる物理データ記憶ユニットが複数の計算された相似値を有している場合には、該複数の計算された相似値の平均又は最大値を計算することによって前記複数の計算された相似値を単一の計算された相似値にし、
前記受け取られたグラフデータの一部分を記憶するために、最大の単一の相似値を有している前記候補となる物理データ記憶ユニットを選択し、前記受け取られたグラフデータの一部分を前記選択された候補となる物理データ記憶ユニットに書き込む
ことを有する、コンピュータにより実施される方法。
(付記13)
変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用するよう構成される変換プロセッサと、
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用するよう構成され、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、抽出プロセッサと、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される相似値計算部と、
前記計算された相似値を出力するよう構成される出力部と
を有する装置。
(付記14)
コンピュータデバイスによって実行される場合に、該コンピュータデバイスに、付記1乃至12のうちいずれか一つに記載のコンピュータにより実施される方法を実行させるコンピュータプログラム。
(付記15)
グラフデータベースから分割されるグラフデータの複数の部分の中のグラフデータの1つ以上の部分を夫々が記憶している複数の物理データ記憶ユニットと、
付記12に記載のコンピュータにより実施される方法を実行するよう構成されるデータベース管理システムと
を有するグラフデータ記憶システム。
101 変換プロセッサ
102 抽出プロセッサ
103 類似計算部
104 出力部
102 抽出プロセッサ
103 類似計算部
104 出力部
Claims (15)
- 変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用し、
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用し、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有し、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算し、
前記計算された相似値を出力する
ことを有する、コンピュータにより実施される方法。 - 前記グラフデータの第1の部分及び前記グラフデータの第2の部分は、複数の辺によって相互に接続されている複数の頂点を夫々が有し、前記複数の辺の夫々は、源点としての前記複数の頂点のうちの1つをあて先頂点としての前記複数の頂点のうちの他の1つへ接続し、
前記変換プロセスは、
前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々における各頂点を、2つの次元のうちの第1の次元における一意の位置及び前記2つの次元のうちの第2の次元における一意の位置に割り当て、
ピクセル値の2次元アレイにおける各エントリにおいてピクセル値を設定する
ことを有し、
前記ピクセル値を設定することは、
前記複数の辺の夫々について、対応するエントリにあるピクセル値を第1の値域の中の値として設定し、前記対応するエントリは、前記第1の次元において前記源点に割り当てられている一意の位置及び前記第2の次元において前記あて先頂点に割り当てられている一意の位置にあるエントリであり、
残りのアレイエントリにあるピクセル値を前記第1の値域の外の値に設定する
ことによる、請求項1に記載のコンピュータにより実施される方法。 - 前記複数の辺は、双方向の辺を有し、該双方向の辺の夫々は、2つの頂点を、源点及びあて先頂点の両方として、互いに接続する、
請求項2に記載のコンピュータにより実施される方法。 - 前記複数の辺は、定量的なラベルによって重み付けされた辺を有し、定量的なラベルによって前記複数の辺の夫々について前記対応するエントリにあるピクセル値を設定することは、前記対応するエントリにあるピクセル値を、前記定量的なラベルを表す前記第1の値域の中の値として設定することを有する、
請求項2に記載のコンピュータにより実施される方法。 - 前記複数の頂点の夫々は、エンティティを表し、前記変換プロセスは、
前記グラフデータの第1の部分及び前記グラフデータの第2の部分の夫々から1つずつの頂点を有し、同じエンティティを表す頂点の対を決定し、夫々の決定された対について、当該対に含まれる頂点を、ピクセル値の夫々の2次元アレイの前記第1の次元及び前記第2の次元における等価な一意の位置に割り当てることを含む、
請求項2に記載のコンピュータにより実施される方法。 - 前記抽出プロセスは、人工ニューラルネットワークを夫々の画像に適用して、夫々の特徴ベクトルを抽出することを有する、
請求項1に記載のコンピュータにより実施される方法。 - 前記人工ニューラルネットワークは、畳み込みニューラルネットワークである、
請求項6に記載のコンピュータにより実施される方法。 - 画像分類畳み込みニューラルネットワークモデルをトレーニングし、該トレーニングされた画像分類畳み込みニューラルネットワークモデルを前記畳み込みニューラルネットワークとして記憶することを更に有し、
前記トレーニングすることは、
画像対のトレーニング組を取得し、該画像対のトレーニング組の中の画像対について、対応する目標相似値を取得し、
前記画像対のトレーニング組の中の夫々の画像対について、順番に、
夫々の画像に対して前記画像分類畳み込みニューラルネットワークモデルを実行することによって当該画像対の各画像から特徴ベクトルを抽出し、2つの該特徴ベクトルの間の類似を表す相似値を計算し、該計算された相似値と前記目標相似値との間に差がある場合には、前記画像分類畳み込みニューラルネットワークモデル変更して前記差を小さくするようバックワード・エラー・プロパゲーションを実施し、前記抽出すること、前記計算すること、及び前記バックワード・エラー・プロパゲーションは、予め定義された最多繰り返し回数に到達するか又は前記差が閾値を下回るまで、繰り返し実施される
ことを有する、請求項7に記載のコンピュータにより実施される方法。 - 前記画像対のトレーニング組を取得することは、画像レポジトリから画像対をダウンロードすることを有する、
請求項8に記載のコンピュータにより実施される方法。 - 前記画像対のトレーニング組を取得することは、
原ラスター画像の組を生成し、
前記原ラスター画像の夫々について、回転及び/又はランダムなピクセル値編集を含む編集を当該原ラスター画像に対して行うことによって1つ以上の新しい画像を生成し、該1つ以上の新しい画像の夫々とともに当該原ラスター画像を前記画像対のトレーニング組に加えること
を有する、請求項8に記載のコンピュータにより実施される方法。 - 前記画像対の夫々について前記目標相似値を取得することは、当該画像対において前記原ラスター画像から前記新しい画像を取得するために実施される前記編集の程度を定量化し、該編集の程度を前記目標相似値において表すことを有する、
請求項10に記載のコンピュータにより実施される方法。 - グラフデータの部分に分割されたデータグラフを記憶するグラフデータ記憶システムにおける、コンピュータにより実施される方法であって、グラフデータの各部分は、複数の物理データ記憶ユニットの中の1つに記憶される、方法において、
前記データグラフへの追加のためにグラフデータの一部分を受け取り、
前記複数の物理データ記憶ユニットの中から、前記受け取られたグラフデータの一部分を記憶するための十分な利用可能記憶容量を有している物理データ記憶ユニットを候補として選択し、
前記候補となる物理データ記憶ユニットの夫々について、当該候補となる物理記憶ユニットに記憶されている前記グラフデータの部分又は各部分ごとに請求項1乃至11のうちいずれか一項に記載のコンピュータにより実施される方法を、前記受け取られたグラフデータの一部分を前記グラフデータの第1の部分とし且つ前記記憶されているグラフデータの部分を前記グラフデータの第2の部分として実行し、当該候補となる物理データ記憶ユニットについて前記計算された相似値又は夫々の計算された相似値を記録し、夫々の候補となる物理データ記憶ユニットは単一の計算された相似値又は複数の計算された相似値を有し、当該候補となる物理データ記憶ユニットが複数の計算された相似値を有している場合には、該複数の計算された相似値の平均又は最大値を計算することによって前記複数の計算された相似値を単一の計算された相似値にし、
前記受け取られたグラフデータの一部分を記憶するために、最大の単一の相似値を有している前記候補となる物理データ記憶ユニットを選択し、前記受け取られたグラフデータの一部分を前記選択された候補となる物理データ記憶ユニットに書き込む
ことを有する、コンピュータにより実施される方法。 - 変換プロセスを、第1の画像を生成するようグラフデータの第1の部分に、及び第2の画像を生成するようグラフデータの第2の部分に適用するよう構成される変換プロセッサと、
抽出プロセスを、第1の特徴ベクトルを抽出するよう前記第1の画像に、及び第2の特徴ベクトルを抽出するよう前記第2の画像に適用するよう構成され、前記第1の特徴ベクトル及び前記第2の特徴ベクトルは、共通の組の特徴の中の夫々についての定量化可能な値を有する、抽出プロセッサと、
前記共通の組の特徴についての各々の定量化可能な値に基づき前記第1の特徴ベクトルと前記第2の特徴ベクトルとの間の類似を表す相似値を計算するよう構成される相似値計算部と、
前記計算された相似値を出力するよう構成される出力部と
を有する装置。 - コンピュータデバイスによって実行される場合に、該コンピュータデバイスに、請求項1乃至12のうちいずれか一項に記載のコンピュータにより実施される方法を実行させるコンピュータプログラム。
- グラフデータベースから分割されるグラフデータの複数の部分の中のグラフデータの1つ以上の部分を夫々が記憶している複数の物理データ記憶ユニットと、
請求項12に記載のコンピュータにより実施される方法を実行するよう構成されるデータベース管理システムと
を有するグラフデータ記憶システム。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1609871.7 | 2016-06-06 | ||
DE102016209932.9 | 2016-06-06 | ||
GBGB1609871.7A GB201609871D0 (en) | 2016-06-06 | 2016-06-06 | Method, program, and apparatus for comparing data graphs |
DE102016209932 | 2016-06-06 | ||
EP17164017.0A EP3255586A1 (en) | 2016-06-06 | 2017-03-30 | Method, program, and apparatus for comparing data graphs |
EP17164017.0 | 2017-03-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017220222A true JP2017220222A (ja) | 2017-12-14 |
Family
ID=58461247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017088432A Pending JP2017220222A (ja) | 2016-06-06 | 2017-04-27 | データグラフを比較する方法、プログラム、及び装置 |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP3255586A1 (ja) |
JP (1) | JP2017220222A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019156254A1 (ja) * | 2018-02-09 | 2019-08-15 | アクシオンリサーチ株式会社 | 検査対象の複雑系の状態を推定するシステム |
JP2019144939A (ja) * | 2018-02-22 | 2019-08-29 | Kddi株式会社 | 情報処理装置、情報処理方法、及びプログラム |
CN110321967A (zh) * | 2019-07-11 | 2019-10-11 | 南京邮电大学 | 基于卷积神经网络的图像分类改进算法 |
JP7491106B2 (ja) | 2020-01-27 | 2024-05-28 | 富士フイルムビジネスイノベーション株式会社 | 方法、プログラム、及びコンピュータ装置 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110020249B (zh) * | 2017-12-28 | 2021-11-30 | 中国移动通信集团山东有限公司 | 一种url资源的缓存方法、装置及电子设备 |
US11461996B2 (en) * | 2018-03-05 | 2022-10-04 | Omron Corporation | Method, apparatus and system for determining feature data of image data, and storage medium |
US11486950B2 (en) * | 2018-08-01 | 2022-11-01 | General Electric Company | Systems and methods for automated graphical prescription with deep neural networks |
CN109308726B (zh) * | 2018-09-07 | 2023-04-28 | 华南理工大学 | 人脸图像编辑模板的快速生成方法和系统 |
GB2582563A (en) * | 2019-03-23 | 2020-09-30 | British Telecomm | Feature detection in temporal graphs |
CN111930681B (zh) * | 2019-05-13 | 2023-10-10 | 中科寒武纪科技股份有限公司 | 一种计算装置及相关产品 |
CN110533735B (zh) * | 2019-08-01 | 2023-04-07 | 深圳大学 | 一种基于图像集的可视化配色方法、存储介质及终端设备 |
CN112487853A (zh) * | 2019-09-12 | 2021-03-12 | 广州慧睿思通信息科技有限公司 | 一种字迹比对方法、系统、电子设备及存储介质 |
CN111046911A (zh) * | 2019-11-13 | 2020-04-21 | 泰康保险集团股份有限公司 | 一种图像处理方法和装置 |
CN111597373B (zh) * | 2020-05-19 | 2023-06-20 | 清华大学 | 基于卷积神经网络和连通图的图片归类方法及相关设备 |
CN112215270B (zh) * | 2020-09-27 | 2022-12-20 | 苏州浪潮智能科技有限公司 | 一种模型的相似度对比方法、系统、设备以及介质 |
CN112328839B (zh) * | 2020-11-05 | 2024-02-27 | 航天信息股份有限公司 | 一种基于企业进销关系图谱的企业风险识别方法与系统 |
CN113111901B (zh) * | 2020-12-17 | 2022-06-14 | 哈尔滨工业大学 | 水下非合作平台运动要素最优解算过程的选择方法及系统 |
CN112541638B (zh) * | 2020-12-21 | 2022-07-12 | 北京邮电大学 | 一种网联车车辆行程时间估计方法 |
CN114692711A (zh) * | 2020-12-29 | 2022-07-01 | 华为技术有限公司 | 计算图的算子映射方法以及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8019708B2 (en) * | 2007-12-05 | 2011-09-13 | Yahoo! Inc. | Methods and apparatus for computing graph similarity via signature similarity |
-
2017
- 2017-03-30 EP EP17164017.0A patent/EP3255586A1/en not_active Withdrawn
- 2017-04-27 JP JP2017088432A patent/JP2017220222A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019156254A1 (ja) * | 2018-02-09 | 2019-08-15 | アクシオンリサーチ株式会社 | 検査対象の複雑系の状態を推定するシステム |
JPWO2019156254A1 (ja) * | 2018-02-09 | 2020-09-03 | アクシオンリサーチ株式会社 | 検査対象の複雑系の状態を推定するシステム |
JP2019144939A (ja) * | 2018-02-22 | 2019-08-29 | Kddi株式会社 | 情報処理装置、情報処理方法、及びプログラム |
CN110321967A (zh) * | 2019-07-11 | 2019-10-11 | 南京邮电大学 | 基于卷积神经网络的图像分类改进算法 |
JP7491106B2 (ja) | 2020-01-27 | 2024-05-28 | 富士フイルムビジネスイノベーション株式会社 | 方法、プログラム、及びコンピュータ装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3255586A1 (en) | 2017-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2017220222A (ja) | データグラフを比較する方法、プログラム、及び装置 | |
CN111324774B (zh) | 一种视频去重方法和装置 | |
WO2022267976A1 (zh) | 多模态知识图谱的实体对齐方法、装置及存储介质 | |
BR112020022270A2 (pt) | sistemas e métodos para unificar modelos estatísticos para diferentes modalidades de dados | |
JP2018535491A (ja) | 画像のセマンティックセグメンテーションのためのシステム及びコンピューター実施方法、並びに非一時的コンピューター可読媒体 | |
JP6393058B2 (ja) | 情報処理装置、情報処理方法 | |
CN111079532A (zh) | 一种基于文本自编码器的视频内容描述方法 | |
EP3333771A1 (en) | Method, program, and apparatus for comparing data hypergraphs | |
US11983903B2 (en) | Processing images using self-attention based neural networks | |
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
EP3333770A1 (en) | Matching graph entities in graph data | |
US9852177B1 (en) | System and method for generating automated response to an input query received from a user in a human-machine interaction environment | |
CN108549909B (zh) | 基于众包的对象分类方法及对象分类系统 | |
US20230306723A1 (en) | Systems, methods, and apparatuses for implementing self-supervised domain-adaptive pre-training via a transformer for use with medical image classification | |
CN111079930A (zh) | 数据集质量参数的确定方法、装置及电子设备 | |
CN114187598B (zh) | 手写数字识别方法、设备及计算机可读存储介质 | |
CN117058554A (zh) | 电力设备目标检测方法、模型训练方法和装置 | |
CN116797850A (zh) | 基于知识蒸馏和一致性正则化的类增量图像分类方法 | |
CN116310624A (zh) | 用于图像的模型训练方法以及无监督图像哈希检索方法 | |
CN113343100B (zh) | 一种基于知识图谱的智慧城市资源推荐方法和系统 | |
CN115168326A (zh) | Hadoop大数据平台分布式能源数据清洗方法及系统 | |
CN113554145B (zh) | 确定神经网络的输出的方法、电子设备和计算机程序产品 | |
CN116415624A (zh) | 模型训练方法及装置、内容推荐方法及装置 | |
Sato et al. | Artificial bee colony for affine and perspective template matching | |
KR102389555B1 (ko) | 가중 트리플 지식 그래프를 생성하는 장치, 방법 및 컴퓨터 프로그램 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170517 |