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

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

Info

Publication number
JP2019135634A
JP2019135634A JP2018018716A JP2018018716A JP2019135634A JP 2019135634 A JP2019135634 A JP 2019135634A JP 2018018716 A JP2018018716 A JP 2018018716A JP 2018018716 A JP2018018716 A JP 2018018716A JP 2019135634 A JP2019135634 A JP 2019135634A
Authority
JP
Japan
Prior art keywords
stock
child
tree structure
binary tree
new
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.)
Granted
Application number
JP2018018716A
Other languages
English (en)
Other versions
JP6973137B2 (ja
Inventor
達哉 浅井
Tatsuya Asai
達哉 浅井
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018018716A priority Critical patent/JP6973137B2/ja
Priority to US16/262,254 priority patent/US20190243811A1/en
Publication of JP2019135634A publication Critical patent/JP2019135634A/ja
Application granted granted Critical
Publication of JP6973137B2 publication Critical patent/JP6973137B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】二分木を高速に列挙する。【解決手段】生成装置は、最小の二分木であり、根と左子及び右子の2つの子とを有する株から、根が他の株に接続されていない親株の2つの子のうち少なくともいずれかに、他の株の根を接続する形で拡張した株の木構造を生成する。生成装置は、株の木構造を構成する株それぞれを二分木に展開することにより、株の木構造から二分木を生成する。生成装置は、接続対象の株が、親株から右子に接続された株、若しくは右子に株が接続されていない場合において左子に接続された株を辿って得られる株の系列である最右株列上の株であって末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続する。生成装置は、接続対象の株が株の木構造の最右株列上の株であって、末端の株以外である場合は、当該接続対象の株の右子にのみ新たな株を接続する。【選択図】図4

Description

本発明は、生成プログラム、生成方法及び生成装置に関する。
情報処理における基本的なデータ構造の一つである、二分木を列挙する技術が知られている。例えば、基本ボリュームを表す葉ノードと、2項可換演算組合せボリュームを表す非葉ノードと、を持つ二分木の葉ノードの追加または除去をトリガする設計動作を実行し、二分木を修正し、一方で、弱い葉ノードの個数を最小化する技術が知られている。
また、主成分分析に基づく二分木を用いて、最近傍のデータ点を効率的に探索する技術も知られている。当該技術は、主成分得点に応じた第1および第2子クラスターを有する二分木の階層構造にベクトルデータが分類された近似最近傍探索用データベース、およびクエリーベクトルデータを用いる。当該技術は、探索対象クラスターの初期値を二分木の根ノードとし、クエリーから対象クラスターの平均ベクトルを差引いて補正し、対象クラスターの主成分分析を行って得られる第一主成分ベクトルとの内積を、対象クラスターに対するクエリー主成分得点とする。当該技術は、クエリー主成分得点がゼロ以下ならば、第1子クラスターを、クエリー主成分得点が正ならば第2子クラスターを探索クラスターとし、末端の階層に至るまで探索を繰り返す。当該技術は、末端の階層の探索クラスターに属し、クエリーから最も近い距離のベクトルデータを最近傍のデータとする。
特開2015−64876号公報 特開2013−73256号公報
しかし、上記技術においては、ノードを1個ずつ追加していく際に、二分木以外の木も列挙する場合があるため、木の列挙に時間を要する。また、列挙された木から二分木だけを取り出す際のコストが大きい。
一つの側面では、二分木を高速に列挙できる生成プログラム、生成方法及び生成装置を提供することを目的とする。
一つの態様において、生成装置は、最小の二分木であり、根と左子及び右子の2つの子とを有する株から、根が他の株に接続されていない親株の2つの子のうち少なくともいずれかに、他の株の根を接続する形で拡張した株の木構造を生成する。生成装置は、株の木構造を構成する株それぞれを二分木に展開することにより、株の木構造から二分木を生成する。生成装置は、接続対象の株が、親株から右子に接続された株、若しくは右子に株が接続されていない場合において左子に接続された株を辿って得られる株の系列である最右株列上の株であって末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続する。生成装置は、接続対象の株が株の木構造の最右株列上の株であって、末端の株以外である場合は、当該接続対象の株の右子にのみ新たな株を接続する。
一つの態様によれば、二分木を高速に列挙できる。
図1は、実施例1における二分木の一例を示す図である。 図2は、一般技術における二分木列挙処理の一例を示す図である。 図3は、実施例1における二分木列挙処理の一例を示す図である。 図4は、実施例1における生成装置の一例を示す図である。 図5は、実施例1におけるスタックの一例を示す図である。 図6は、実施例1における二分木DBの一例を示す図である。 図7は、実施例1における条件記憶部の一例を示す図である。 図8は、実施例1における株の一例を示す図である。 図9は、実施例1における二分木とスタックとの対応関係の一例を示す図である。 図10は、実施例1において生成された二分木の集合の一例を示す図である。 図11は、実施例1における生成処理の一例を示すフローチャートである。 図12は、実施例1における列挙処理の一例を示すフローチャートである。 図13は、実施例1における拡張処理の一例を示すフローチャートである。 図14は、実施例2における監査処理の一例を示す図である。 図15は、生成プログラムを実行するコンピュータの一例を示す図である。
以下に、本願の開示する生成プログラム、生成方法及び生成装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせてもよい。
本実施例における、後に説明する生成装置100は、図1に示すような二分木を生成する。図1は、実施例1における二分木の一例を示す図である。図1に示すように、生成装置100が生成する二分木b1は、左右2個の子ノードを有するノードと、子ノードを1個も有さないノードとから構成される。本実施例における二分木b1は、例えば1個だけ子ノードを有するノードや、3個以上の子ノードを有するノードを含まない。
図1に示すような二分木b1を生成する際、一般技術においては、例えば、木の一番右のノードに新しいノードを付け加える操作を繰り返す最右拡張法を用いる。図2は、一般技術における二分木列挙処理の一例を示す図である。図2に示すように、例えば最右拡張法などの一般技術においては、まず、子ノードを有さないノード10を生成し、ノード10に子ノードを付与して、2個のノードからなる木を生成する。次に、一般技術においては、ノード10、又はノード10の子ノードに対して、新たな子ノードを付け加えることにより、3個のノードからなる木を生成する。この段階において、最も単純な二分木11aが生成される。
一般技術においては、木の一番右のノードに新しいノードを付け加える操作をさらに繰り返し、より多くのノードからなる木を生成することにより、二分木12a及び12bを生成する。このように、一般技術においては、例えば3個の二分木11a、12a及び12bを生成する際に、20個以上の木が生成されるので、木の生成及び二分木の列挙に時間を要する。
一方、本実施例における生成装置100は、図3に示すように、親ノードと、左右2個の子ノードとの3個のノードからなる「株」を、その他の株に接続する。図3は、実施例1における二分木列挙処理の一例を示す図である。なお、以下において、左の子ノードを「左子」と表記し、右の子ノードを「右子」と表記する場合がある。
生成装置100は、例えば、二分木11aの株11の左子に新たな株を接続することにより、二分木12aを生成する。また、生成装置100は、例えば、株11の右子に新たな株を接続することにより、二分木12bを生成する。すなわち、生成装置100は、図1に示すような二分木のみを生成し、例えば1個だけ子ノードを有するノードや、3個以上の子ノードを有するノードを生成しない。
また、本実施例における生成装置100は、他の株に接続されていないルート株から、右子に接続された株又は右子に株がない場合に左子に接続された株を辿った系列を、「最右株列」として特定する。なお、以下において、最右株列に属する株であって、新たな株を接続する対象とする株を「接続対象の株」と表記する場合がある。
生成装置100は、最右株列に属する株のうち、左子及び右子のいずれの子ノードにも株が接続されていない末端の株である「最右下株」には、左子又は右子のいずれにも株を接続することができる。また、最右株列に属する株のうち、末端以外の株には、右子にのみ株を接続することができる。なお、生成装置100は、左右いずれにも他の株が接続されている株、及び最右株列に属さない株に対しては、新たな株を接続しない。
すなわち、生成装置100は、親と左右の子とを有する株を、ルート株から、右子に付いた株又は右子に株がない場合に左子に付いた株を辿った系列である最右株列の右子、及び最右株列の最下段株の左子にのみ付けるので、二分木を高速に列挙できる。
[機能ブロック]
次に、本実施例における生成装置100の一例について、図4を用いて説明する。図4は、実施例1における生成装置の一例を示す図である。図4に示すように、本実施例における生成装置100は、外部I/F110と、記憶部120と、制御部130とを有する。生成装置100は、例えばスタンドアロンのコンピュータにより実装されるが、これに限られず、コンピュータと無線又は有線にて相互に通信可能なサーバコンピュータであってもよく、またクラウド上において実装されてもよい。
外部I/F110は、有線又は無線を問わず、生成装置100の利用者(不図示)の端末(不図示)など、その他のコンピュータなどとの通信を制御する。外部I/F110は、例えばNIC(Network Interface Card)などの通信インタフェースなどであるが、これに限られず、キーボードなどの入力デバイスや、ディスプレイなどの出力デバイスから構成されていてもよい。
記憶部120は、例えば制御部130が実行するプログラムなどの各種データなどを記憶する記憶装置の一例であり、例えばメモリやプロセッサなどである。記憶部120は、スタック121、二分木DB122及び条件記憶部123を有する。なお、以下の説明では、データベース(Database)を「DB」と表記する場合がある。
スタック121は、二分木の最右株列に属する株に対して、新たな株を接続できるか否かに関する情報を記憶する。図5は、実施例1におけるスタックの一例を示す図である。図5に示すように、スタック121は、例えば、「No.」に対応付けて、「株ID(Identifer)」と、「ステータス」とを対応付けて記憶する。なお、スタック121に記憶される情報は、例えば後に説明する対象特定部131により入力され、また株接続部132により入力又は更新される。
スタック121は、例えば、生成される二分木1個ごとに1テーブルを有し、また二分木に含まれる最右株列に属する株1個ごとに1レコードとして記憶する。例えば、図5は、生成される二分木を一意に識別する二分木IDが「b56」であり、最右株列に属する株が「t」個である二分木に対応するテーブルを示す。なお、以下において、二分木IDが「bXX」である二分木を、単に「二分木bXX」と表記する場合がある。
なお、以下において、生成される二分木を「b」と表記し、二分木bに対応するスタックを「s」と表記する場合がある。また、二分木bとスタックsとの組み合わせを「(b,s)」と表記し、サイズnの(b,s)の集合を「Bn」と表記する場合がある。なお、以下において、二分木bのサイズnは、例えば二分木bに含まれる株の数であるが、これに限られず、二分木bの段数や二分木bに含まれるノードの数を、サイズnとして用いてもよい。
図5において、「No.」は、二分木bの最右株列に属する株の順番を示す。「株ID」は、各レコードに対応する最右株列に属する株を一意に識別する情報である。「ステータス」は、レコードに対応する最右株列に属する株に対して、他の株を接続可能であるか否かを示す。また、以下において、最右株列に属する株に対応するスタック121の各レコードの「ステータス」を「セル」と表記する場合がある。また、以下において、株IDが「XX」である株を、単に「株XX」と表記する場合がある。
図5において、「◎」は、当該セルに対応する最右株列に属する株に対して、右子にのみ新たな株を接続することができることを示す。また、「×」は、当該セルに対応する最右株列に属する株に対して、左子及び右子のいずれに対しても新たな株を接続することはできないことを示す。「last」は、当該セルに対応する最右株列に属する株が、最右下株であることを示す。すなわち、ステータスが「last」であるセルに対応する最右株列に属する株に対しては、左子及び右子のいずれにも新たな株を接続できる。
次に、二分木DB122は、生成された二分木に関する情報を記憶する。図6は、実施例1における二分木DBの一例を示す図である。図6に示すように、二分木DB122は、例えば、「株ID」と、「親ノードID」と、「左子株ID」及び「右子株ID」とを対応付けて記憶する。なお、二分木DB122に記憶される情報は、例えば後に説明する株接続部132により入力される。
二分木DB122は、例えば、生成される二分木1個ごとに1テーブルを有し、また二分木に含まれる株1個ごとに1レコードとして記憶する。例えば、図6は、二分木IDが「b33」であり、「4」個の株を有する二分木に対応するテーブルを示す。
図6において、「親ノードID」は、当該株IDの株が接続される株のノードを一意に識別する情報を示す。なお、「親ノードID」は、例えば親ノードの株IDに、左子であることを示す「L」又は右子であることを示す「R」を付したIDである。また、当該株IDの株が、二分木のルートを含む株である場合、親ノードIDは「−」となる。
図6において、例えば、株ID「21」の株は、株ID「11」の株の左子に接続され、株ID「22」の株は、株ID「11」の株の右子に接続される。また、株ID「11」は、二分木のルートを含む株である。
図6において、「左子株ID」及び「右子株ID」は、当該株の左子に接続される株の株ID、及び当該株の右子に接続される株の株IDをそれぞれ示す。なお、左子又は右子に他の株が接続されていない場合、「左子株ID」又は「右子株ID」は「−」となる。例えば、株ID「22」の株に対しては、左子に株ID「41」の株が接続され、右子には株が接続されていない。
次に、条件記憶部123は、二分木の生成を終了する条件に関する情報を記憶する。図7は、実施例1における条件記憶部の一例を示す図である。図7に示すように、条件記憶部123は、例えば、「種別」と「条件」とを対応付けて記憶する。なお、条件記憶部123に記憶される情報は、例えば対象特定部131により入力される。
図7において、「種別」は、条件の種別を示し、「条件」は、当該種別における具体的な条件を示す。例えば、図7は、二分木に含まれる株の数を示す「株数」及び二分木に含まれるノードの段の数を示す「段数」については条件を設けず、「ノード数」が「7」になった場合に二分木の生成を終了することを示す。
図4に戻って、制御部130は、生成装置100全体を司る処理部であり、例えばプロセッサなどである。制御部130は、対象特定部131、株接続部132、条件判定部133及び出力部134を有する。なお、対象特定部131、株接続部132、条件判定部133及び出力部134は、プロセッサが有する電子回路の一例やプロセッサが実行するプロセスの一例である。
対象特定部131は、二分木の生成処理の開始指示を受け付けるとともに、株を接続する対象となる株及び左子又は右子を特定する。例えば、対象特定部131は、外部I/F110を通じて、生成装置100の利用者の端末から二分木の生成処理の開始指示を受け付けると、株を1個だけ有する、大きさ1の二分木bを生成する。また、対象特定部131は、二分木の生成処理の開始指示において受け付けた、二分木の生成を終了する条件に関する情報を、条件記憶部123に記憶する。なお、対象特定部131は、木構造生成部の一例である。
また、対象特定部131は、二分木bの最右株列を管理する長さ1のスタックsを生成し、スタックsの唯一のセルs[1]に「last」を記憶する。さらに、対象特定部131は、二分木bとスタックsとの組み合わせB(b,s)を生成する。すなわち、対象特定部131は、他の根に接続されていない親株であって、左子及び右子のいずれにも他の株を接続させることができる株を生成する。
本実施例における株について、図8を用いて説明する。図8は、実施例1における株の一例を示す図である。図8に示すように、株11は、親ノード11Pと、左子11L及び右子11Rとの3個のノードを有する。生成装置100は、左子11L及び右子11Rに、それぞれ1個だけ株を接続することができる。
次に、株接続部132は、生成された二分木bに、株を接続して二分木を生成する。株接続部132は、生成された全ての二分木に対して、新たな株を接続する処理を繰り返す。なお、株接続部132は、接続部の一例である。
株接続部132は、例えば、B(b,s)に含まれる二分木bについて、スタックsを参照して株を接続する。この場合において、株接続部132は、スタックsのセルs[1]が「last」である、すなわち接続対象の株が二分木bの最右下株であることを示すので、接続対象の株の左子に株を接続した二分木と、接続対象の株の右子に株を接続した二分木とを生成する。
例えば、株接続部132は、接続対象の株の左子に新たな株を接続した二分木Leftを生成する。また、株接続部132は、セルs[1]を「◎」に更新し、左子に接続した株に対応するセルs[2]に「last」を登録したスタック「s_Left」を生成する。
また、株接続部132は、スタックsのセルs[1]が「last」である場合、接続対象の株の右子に新たな株を接続した二分木Rightを生成する。この際、株接続部132は、セルs[1]を「×」に更新し、右子に接続した新たな株に対応するセルs[2]に「last」を登録したスタック「s_Right」を生成する。すなわち、株接続部132は、二分木Rightにおいて、接続対象の株の左子には新たな株を接続しない。
また、株接続部132は、接続対象の株に対応するセルs[i]が「◎」であると判定した場合、接続対象の株の右子に新たな株を接続した二分木Newを生成する。この際、株接続部132は、セルs[i]を「×」に更新したスタック「s_New」を生成する。
また、株接続部132は、スタック「s_New」を生成する際に、セルs[i+1]に対応付けられる株を、接続対象の株の左子に接続された株から、接続対象の株の右子に接続された新たな株に更新する。例えば、株接続部132は、スタック121のセルs[i+1]に対応する株IDを更新する。すなわち、株接続部132は、接続対象の株の左子に接続された株を、最右株列から除外する。
さらに、株接続部132は、セルs[i+1]が「last」以外である場合、「last」に更新する。すなわち、株接続部132は、接続対象の株の右子に新たに接続された株を最右下株として特定する。また、この場合、最右下株は変更されるものの、最右下株の高さには変更がない。
さらに、株接続部132は、スタックs_Newにおいて、セルs[i+1]より下位のセル、例えば接続対象の株の左子に接続された株にさらに接続された株が存在すると判定した場合、当該セルを削除する。すなわち、株接続部132は、例えばセルs[i+2]に対応する、接続対象の株の左子に接続された株にさらに接続された株を、最右株列から除外する。
また、株接続部132は、接続対象の株の左子又は右子に新たな株を接続する拡張処理を、二分木に含まれる全ての最右株列に対して行う。例えば、株接続部132は、最右株列の上位の株に対して株を接続するたびにカウンタmを1インクリメントし、カウンタmがスタックsの長さtに到達するまで処理を繰り返す。
株接続部132による二分木の生成とスタックの更新の流れについて、図9を用いて説明する。図9は、実施例1における二分木とスタックとの対応関係の一例を示す図である。図9において、株接続部132は、まず、株を1個だけ有する二分木b11に、新たな株を接続する。例えば、株接続部132は、二分木b11に含まれる株11の左子11Lに、新たな株21を接続して、二分木b21を生成する。
この場合において、最右株列は、ルート株である株11の右子に株が接続されていないため、左子に接続された株21を辿る系列となる。従って、株11及び株21は、いずれも最右株列に属し、さらに株21は最右下株に該当する。また、株接続部132は、株11に対しては、右子にのみ新たな株を接続可能であり、株21に対しては左子及び右子の両方に新たな株を接続可能である。
この際、株接続部132は、第1の最右株列である株11に対応するセルs[1]に「◎」を記憶し、第2の最右株列である株21に対応するセルs[2]には「last」を記憶した新たなスタックs_21を生成する。
次に、株接続部132は、二分木b21に対し、株11の右子11Rに、新たな株22を接続することにより、二分木b23を生成する。この場合において、最右株列は、ルート株である株11の右子に接続された株22を辿る系列となる。これにより、株21は最右株列から除外される。
この場合において、株接続部132は、スタックs_21における第2の最右株列に対応するレコードの株IDを、「21」から「22」に更新した新たなスタックs_23を生成する。また、スタックs_23における株22に対応するセルs_23[2]には「last」を記憶する。
さらに、株接続部132は、株11の左子11L及び右子11Rの両方にそれぞれ新たな株が接続されたため、スタックs_23における第1の最右株列に対応するセルs_23[1]を「×」に更新する。
次に、株接続部132は、二分木b23に対し、株22の左子22Lに、新たな株41を接続することにより、二分木b33を生成する。この場合において、新たに接続された株41は、ルート株である株11の右子に接続された株22を辿る系列に含まれ、かつ末端の株であるため、最右下株に該当する。
そこで、株接続部132は、スタックs_23における第3の最右株列に対応するレコードを追加した新たなスタックs_33を生成する。株接続部132は、スタックs_33のセルs_33[3]に対応する株ID「41」を記憶する。また、株接続部132は、スタックs_33の株22に対応するセルs_33[2]を「◎」に更新する。なお、株接続部132は、接続対象の株である株22より上の株に対応するセルs_33[1]は更新しない。
このような処理により生成される二分木について、図10を用いて説明する。図10は、実施例1において生成された二分木の集合の一例を示す図である。図10は、二分木の最大サイズNが「3」である場合に生成される二分木の集合を列挙した例を示す。
図9に示す例と同様に、株接続部132は、二分木b11から二分木b21を生成し、二分木b21から二分木b23を生成する。なお、二分木b33は、サイズnが「4」であるため、図10においては列挙されない。
一方、株接続部132は、二分木b22においてスタックs_22の株11に対応するセルs_22[1]は「×」であるので、株11の左子11Lに新たな株を接続して二分木b23を生成することはない。これにより、株接続部132は、二分木が重複して生成されることを抑制する。
図4に戻って、条件判定部133は、二分木の生成処理を終了するか否かの条件を判定する。条件判定部133は、例えば、二分木を列挙する処理において、サイズnの二分木を全て列挙したか否かを判定する。条件判定部133は、全ての二分木を列挙していない場合は二分木を列挙する処理を繰り返し、全ての二分木の列挙が完了している場合は、二分木のサイズnを1インクリメントし、サイズnの二分木を列挙する処理に戻る。
また、条件判定部133は、例えば、二分木に株を接続する拡張処理において、二分木bに対応するスタックの最後のセルs[t]まで処理が完了したか否かを判定する。例えば、条件判定部133は、株接続部132によりインクリメントされるカウンタmが、スタックsの長さtに到達するまで処理を繰り返す。条件判定部133は、スタックの最後のセルs[t]まで処理が完了していない場合は拡張処理を繰り返し、スタックの最後のセルs[t]まで処理が完了している場合は、次の二分木を列挙する処理に戻る。
さらに、条件判定部133は、例えば、条件記憶部123を参照し、生成された二分木が、記憶された条件を満たすか否かを判定する。条件判定部133は、例えば図7に示すような条件記憶部123を参照した場合、生成された二分木のサイズnが、二分木の最大サイズNに到達したか否かを判定する。条件判定部133は、二分木の最大サイズNに到達していない場合は二分木の生成処理を繰り返し、二分木の最大サイズNに到達した場合は出力部134に二分木を出力させる。
次に、出力部134は、生成された組み合わせの集合Bnに含まれる二分木bの集合を出力する。例えば、出力部134は、図10に示すような列挙された二分木の一覧を、外部I/F110を通じて利用者の端末に出力する。また、出力部134は、図6に示すような二分木DB122のテーブルを出力してもよい。なお、出力部134は、二分木生成部の一例である。
[処理の流れ]
次に、本実施例における処理について、図11乃至図13を用いて説明する。図11は、実施例1における生成処理の一例を示すフローチャートである。図11に示すように、生成装置100の対象特定部131は、例えば外部I/F110を通じて、利用者の端末から二分木の生成処理の開始指示を受け付けるまで待機する(S10:No)。
対象特定部131は、開始指示を受け付けたと判定した場合(S10:Yes)、大きさ1の二分木、すなわち株を1個だけ有する二分木bを生成し、二分木bのサイズnを1に設定する(S11)。次に、対象特定部131は、二分木bの最右株列を管理する長さ1のスタックsを生成し(S12)、セルに“last”を記録する。そして、対象特定部131は、二分木bとスタックsとの組み合わせB(b,s)を生成する。
次に、株接続部132は、列挙処理を行う(S13)。図12は、実施例1における列挙処理の一例を示すフローチャートである。図12に示すように、株接続部132は、二分木bとスタックsとの組み合わせの集合Bnから、二分木とスタックとの組み合わせを特定する(S101)。次に、株接続部132は、特定した未処理の二分木とスタックとの組み合わせに含まれる二分木に対する拡張処理を行う(S102)。
図13は、実施例1における拡張処理の一例を示すフローチャートである。図13に示すように、株接続部132は、カウンタmがスタックsの長さtに到達したか否か、すなわち接続対象の株が最右下株か否かを判定する(S201)。
株接続部132は、カウンタmがスタックsの長さtに到達したと判定した場合(S201:Yes)、接続対象の株の左子に新たな株を接続した二分木Leftを生成する(S202)。そして、株接続部132は、接続対象の株に対応するセルs[m]を「◎」に更新する(S203)。また、株接続部132は、接続した新たな株に対応するセルs[m+1]を生成し、「last」を登録する(S204)。
次に、株接続部132は、株の右子に新たな株を接続した二分木Rightを生成する(S205)。そして、株接続部132は、セルs[m]を「×」に更新する(S206)。また、株接続部132は、スタックsにおける接続した新たな株に対応するセルs[m+1]に「last」を登録する(S207)。そして、株接続部132は、Bnに(New,s_New)を追加し、S102に戻る。
一方、株接続部132は、カウンタmはスタックsの長さtに到達していないと判定した場合(S201:No)、スタックsの対応するセルs[m]は「◎」であるか否か、すなわち接続対象の株の左子に別の株が接続されているか否かを判定する(S211)。株接続部132は、セルs[m]が「◎」でもないと判定した場合(S211:No)、接続対象の株に対応するセルs[m]は「×」であり、新たな株を接続できないので、新たな株を接続せずにS102に戻る。
一方、株接続部132は、セルs[m]が「◎」であると判定した場合(S211:Yes)、株の右子に新たな株を接続した二分木Newを生成する(S212)。そして、株接続部132は、セルs[m]を「×」に更新する(S213)。また、株接続部132は、接続した新たな株に対応するセルs[m+1]の株ID、すなわち最右株列の株IDを、接続対象の株の左子に接続された株から、右子に接続された株に変更する(S214)。この際、株接続部132は、セルs[m+1]が「last」ではない場合、セルs[m+1]を「last」に更新する。
次に、株接続部132は、スタックsに、セルs[m+1]よりさらに下位のセルがあるか否か、すなわち接続対象の株の左子にさらに別の株が接続されているか否かを判定する(S221)。株接続部132は、さらに下位のセルはないと判定した場合(S221:No)、S102に戻る。一方、株接続部132は、さらに下位のセルがあると判定した場合(S221:Yes)、当該セルを削除し(S222)、S102に戻る。
図12に戻って、条件判定部133は、カウンタmを1インクリメントする(S103)。そして、条件判定部133は、カウンタmが、スタックsのセルの長さtに到達したか否か、すなわちスタックsの全てのセルについて処理を完了したか否かを判定する(S111)。条件判定部133は、カウンタmが、スタックsのセルの長さtに到達していないと判定した場合(S111:No)、S102に戻って処理を繰り返す。
一方、条件判定部133は、カウンタmが、スタックsのセルの長さtに到達したと判定した場合(S111:Yes)、Bnに含まれる全ての二分木について処理が完了したか否かを判定する(S112)。条件判定部133は、全ての二分木について処理が完了していないと判定した場合(S112:No)、S101に戻って処理を繰り返す。条件判定部133は、全ての二分木について処理が完了したと判定した場合(S112:Yes)、S13の処理に戻る。
図11に戻って、条件判定部133は、二分木のサイズnを1インクリメントする(S14)。そして、条件判定部133は、二分木のサイズnが、例えば条件判定部133に記憶された二分木の最大サイズNに到達したか否かを判定する(S31)。条件判定部133は、二分木のサイズnが二分木の最大サイズNに到達していないと判定した場合(S31:No)、S13に戻って処理を繰り返す。
一方、出力部134は、二分木のサイズnが二分木の最大サイズNに到達したと判定した場合(S31:Yes)、二分木DB122に記憶された、生成された二分木bの集合を出力し(S32)、処理を終了する。
[効果]
以上説明したように、本実施例における生成装置は、最小の二分木であり、根と左子及び右子の2つの子とを有する株から、根が他の株に接続されていない親株の2つの子のうち少なくともいずれかに、他の株の根を接続する形で拡張した株の木構造を生成する。生成装置は、株の木構造を構成する株それぞれを二分木に展開することにより、株の木構造から二分木を生成する。生成装置は、接続対象の株が、親株から右子に接続された株、若しくは右子に株が接続されていない場合において左子に接続された株を辿って得られる株の系列である最右株列上の株であって末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続する。生成装置は、接続対象の株が株の木構造の最右株列上の株であって、末端の株以外である場合は、当該接続対象の株の右子にのみ新たな株を接続する。これにより、生成装置は、二分木を高速に列挙できる。
また、生成装置は、接続対象の株が最右株列上の株である場合において、当該接続対象の株の左子に他の株が接続され、当該接続対象の株の右子に他の株が接続されていない場合には、当該接続対象の株の右子に別の新たな株を接続し、又は接続対象の株が最左株列上の株である場合において、当該接続対象の株の右子に他の株が接続され、当該接続対象の株の右子に他の株が接続されていない場合には、当該接続対象の株の左子に別の新たな株を接続する。さらに、生成装置は、株の木構造に含まれる株の数又は株の木構造の段数が所定の数に到達するまで、所定の拡張手法を繰り返してもよい。これにより、生成装置は、所定のノード数を含む二分木のパターンを漏れなく生成できる。
また、生成装置は、接続対象の株が、最右株列上の株に新たな株が接続されて株の木構造が拡張された場合における最右株列上の株ではない場合、並びに最左株列に新たな株が接続されて株の木構造が拡張された場合における最左株列上の株ではない場合、当該接続対象の株への新たな株の接続を抑止する。生成装置は、接続対象の株が、最右株列上の株に新たな株が接続されて株の木構造が拡張された場合において、当該接続対象の株の右子に他の株が接続されている場合、又は最左株列上の株に新たな株が接続されて株の木構造が拡張された場合において、当該接続対象の株の左子に他の株が接続されている場合、当該接続対象の株への新たな株の接続を抑止する。これにより、生成装置は、重複なく二分木を生成できる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。例えば、実施例1においては、二分木の木構造を列挙する構成について説明したが、同一の木構造の二分木であっても、各ノードにそれぞれ異なるラベルが付与される場合がある。
例えば、第1の株について、親ノードに「身長160cm以上?」というラベルが付与され、左子には「T」(True)というラベルが付与され、右子には「性別は女性?」というラベルが付与されている場合が考えられる。一方、第2の株については、親ノードに「身長160cm以上?」というラベルが付与され、左子には「性別は女性?」というラベルが付与され、右子には「F」(False)というラベルが付与されている場合が考えられる。
このような場合、第1の株と第2の株は、二分木の木構造は同一であるが、各ノードのラベルにまで着目した場合、同一の二分木ではない。例えば、ディープラーニングなどの学習過程において二分木が生成される場合において、生成された二分木が適正であるかを、当該二分木の各ノードに付与されたラベルに着目して監視したい場合が考えられる。そこで、本実施例においては、各ノードに付与されたラベルが同一であるか否かをさらに判定する構成について生成する。
図14は、実施例2における監査処理の一例を示す図である。図14に示すように、本実施例における生成装置200(不図示)は、ノードにラベルL1乃至L4が付された二分木C11及びC12を生成する。図14において、例えばラベルL1は「y」であり、ラベルL2は、「z」であり、ラベルL3は「T」であり、ラベルL4は「F」である。そして、生成装置200は、生成した二分木C11及びC12を、別の二分木D1と比較する。なお、二分木D1は、例えば二分木C11及びC12よりも大きなサイズを持つ。
この場合において、二分木D1の一部D11は、二分木C11と同一の木構造を含み、かつ各ノードに付されたラベルも、二分木C11のものと一致する。一方、二分木C12は、木構造も、各ノードに付されたラベルも、二分木D1の一部D11とは一致しない。このような場合、生成装置200は、二分木D1は、二分木C11を包含するが、二分木C12は包含しないと判定する。
以上説明したように、本実施例における生成装置は、根並びに左子及び右子のうち少なくともいずれかのノードにラベルが付された新たな株を接続し、ラベルが付されたノードを含む株の木構造を用いて生成された二分木が、ラベルが付されたノードを含む他の二分木と一致するか否かを判定する。これにより、生成装置は、学習した決定木の監査ができる。
なお、ラベルは、例えばルート株又はその他の株に接続される新たな株のノードに付与されるが、これに限られず、ルート株のノードにラベルが付与されていてもよい。
また、実施例1においては、ルート株から、右子に接続された株又は右子に株がない場合に左子に接続された株を辿る「最右株列」について説明したが、実施の形態はこれに限られない。例えば、生成装置100が、ルート株から、左子に接続された株又は左子に株がない場合に右子に接続された株を辿る、すなわち実施例1における「左子」と「右子」とを読み替えて処理を行うような構成であってもよい。
また、条件記憶部123に記憶される情報は一例であり、二分木に含まれる株の数やノードの段数などの複数の条件のうち、いずれか1つの条件又は全ての条件を満たすか否かを判定するような構成であってもよい。さらに、条件は上限値に限られず、例えば「株の数が5個以上9個未満」のように、下限値を設定するような条件であってもよい。
なお、図5乃至図7に示す各テーブルの構成は一例であり、その他の項目を含んでもよく、また少なくともいずれかの項目を含まない構成であってもよい。例えば、図6に示す二分木DB122が、「親ノードID」並びに「左子株ID」及び「右子株ID」のうち、少なくともいずれかの項目を含まないような構成であってもよい。
[システム]
また、各実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の一部を手動的におこなうこともできる。あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図4に示す対象特定部131及び株接続部132、又は株接続部132及び条件判定部133を統合してもよい。また、図4に示す条件判定部133を、図11に示す生成処理の終了条件を判定する処理部と、図13に示す拡張処理の終了条件を判定する処理部とに分散してもよい。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[二分木生成プログラム]
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。図15は、生成プログラムを実行するコンピュータの一例を示す図である。なお、以下においては、実施例1における生成装置100を例として説明するが、実施例2における対応する各装置についても同様である。
図15に示すように、コンピュータ300は、CPU(Central Processing Unit)310、HDD(Hard Disk Drive)320、RAM(Random Access Memory)340を有する。これら300〜340の各部は、バス400を介して接続される。
なお、図15において、CPU310は、プロセッサの一例であり、HDD320及びRAM340は、メモリの一例である。また、メモリとしては、例えば、SDRAM(Synchronous Dynamic Random Access Memory)などの各種のRAM、ROM(Read Only Memory)、フラッシュメモリなどが挙げられる。プロセッサとしては、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)、PLD(Programmable Logic Device)などが挙げられる。
HDD320には上記の対象特定部131、株接続部132、条件判定部133及び出力部134と同様の機能を発揮する二分木生成プログラム320Aが予め記憶される。なお、二分木生成プログラム320Aについては、適宜分離してもよい。
また、HDD320は、各種情報を記憶する。例えば、HDD320は、OSや各種の処理に用いる各種データを記憶する。
そして、CPU310が、二分木生成プログラム320AをHDD320から読み出して実行することで、実施例の各処理部と同様の動作を実行する。すなわち、二分木生成プログラム320Aは、対象特定部131、株接続部132、条件判定部133及び出力部134と同様の動作を実行する。
なお、上記した二分木生成プログラム320Aは、必ずしも最初からHDD320に記憶させることを要しない。
また、例えば、二分木生成プログラム320Aは、コンピュータ300に挿入されるCD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」にプログラムを記憶させてもよい。そして、コンピュータ300がこれらからプログラムを読み出して実行するようにしてもよい。
さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータ300に接続される「他のコンピュータ(又はサーバ)」などにプログラムを記憶させてもよい。そして、コンピュータ300がこれらからプログラムを読み出して実行するようにしてもよい。
100、200 生成装置
110 外部I/F
120 記憶部
121 スタック
122 二分木DB
123 条件記憶部
130 制御部
131 対象特定部
132 株接続部
133 条件判定部
134 出力部

Claims (8)

  1. コンピュータに、
    最小の二分木であり、根と左子及び右子の2つの子とを有する株から、前記根が他の株に接続されていない親株の前記左子及び右子の2つの子のうち少なくともいずれかに、所定の拡張手法により他の株の前記根を接続する形で拡張した、株の木構造を生成し、
    前記株の木構造を構成する株それぞれを二分木に展開することにより、前記株の木構造から二分木を生成する、
    処理を実行させる生成プログラムであって、
    前記所定の拡張手法は、
    接続対象の株が、前記株の木構造のうち、前記親株から右子に接続された株、若しくは右子に株が接続されていない場合において左子に接続された株を辿って得られる株の系列である最右株列上の株であって、右子にも左子にも株が接続されていない末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記株の木構造の最右株列上の株であって、末端の株以外である場合は、当該接続対象の株の右子にのみ新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記親株から左子に接続された株、若しくは左子に株が接続されていない場合において右子に接続された株を辿って得られる株の系列である最左株列上の末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記株の木構造の最左株列上の株であって、末端の株以外である場合は、当該接続対象の株の左子にのみ新たな株を接続して拡張する
    ことを特徴とする生成プログラム。
  2. 前記所定の拡張手法は、前記接続対象の株が最右株列上の株である場合において、当該接続対象の株の左子に他の株が接続され、当該接続対象の株の右子に他の株が接続されていない場合には、当該接続対象の株の右子に別の新たな株を接続し、又は前記接続対象の株が最左株列上の株である場合において、当該接続対象の株の右子に他の株が接続され、当該接続対象の株の右子に他の株が接続されていない場合には、当該接続対象の株の左子に別の新たな株を接続することを特徴とする請求項1に記載の生成プログラム。
  3. 前記所定の拡張手法は、前記接続対象の株が、前記最右株列上の株に前記新たな株が接続されて前記株の木構造が拡張された場合における前記最右株列上の株ではない場合、並びに前記最左株列に前記新たな株が接続されて前記株の木構造が拡張された場合における前記最左株列上の株ではない場合、当該接続対象の株への新たな株の接続を抑止することを特徴とする請求項1又は2に記載の生成プログラム。
  4. 前記所定の拡張手法は、前記接続対象の株が、前記最右株列上の株に前記新たな株が接続されて前記株の木構造が拡張された場合において、当該接続対象の株の右子に他の株が接続されている場合、又は前記最左株列上の株に前記新たな株が接続されて前記株の木構造が拡張された場合において、当該接続対象の株の左子に他の株が接続されている場合、当該接続対象の株への新たな株の接続を抑止することを特徴とする請求項1乃至3のいずれか1つに記載の生成プログラム。
  5. 前記株の木構造に含まれる株の数又は前記株の木構造の段数が所定の数に到達するまで、前記所定の拡張手法を繰り返すことを特徴とする請求項1乃至4のいずれか1つに記載の生成プログラム。
  6. 前記所定の拡張手法は、前記根並びに前記左子及び右子のうち少なくともいずれかのノードにラベルが付された前記新たな株を接続し、
    前記ラベルが付されたノードを含む株の木構造を用いて生成された前記二分木が、ラベルが付されたノードを含む他の二分木と一致するか否かを判定する
    ことを特徴とする請求項1乃至5のいずれか1つに記載の生成プログラム。
  7. コンピュータが、
    最小の二分木であり、根と左子及び右子の2つの子とを有する株から、前記根が他の株に接続されていない親株の前記左子及び右子の2つの子のうち少なくともいずれかに所定の拡張手法により他の株の前記根を接続する形で拡張した、株の木構造を生成し、
    前記株の木構造を構成する株それぞれを二分木に展開することにより、前記株の木構造から二分木を生成する、
    処理を行う生成方法であって、
    前記所定の拡張手法は、
    接続対象の株が、前記株の木構造のうち、前記親株から右子に接続された株、若しくは右子に株が接続されていない場合において左子に接続された株を辿って得られる株の系列である最右株列上の株であって、右子にも左子にも株が接続されていない末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記株の木構造の最右株列上の株であって、末端の株以外である場合は、当該接続対象の株の右子にのみ新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記親株から左子に接続された株、若しくは左子に株が接続されていない場合において右子に接続された株を辿って得られる株の系列である最左株列上の末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記株の木構造の最左株列上の株であって、末端の株以外である場合は、当該接続対象の株の左子にのみ新たな株を接続して拡張し、
    処理を行うことを特徴とする生成方法。
  8. 最小の二分木であり、根と左子及び右子の2つの子とを有する株から、前記根が他の株に接続されていない親株の前記左子及び右子の2つの子のうち少なくともいずれかに、所定の拡張手法により他の株の前記根を接続する形で拡張した、株の木構造を生成する木構造生成部と、
    前記株の木構造を構成する株それぞれを二分木に展開することにより、前記株の木構造から二分木を生成する二分木生成部と、
    を有する生成装置であって、
    前記所定の拡張手法は、
    接続対象の株が、前記株の木構造のうち、前記親株から右子に接続された株、若しくは右子に株が接続されていない場合において左子に接続された株を辿って得られる株の系列である最右株列上の株であって、右子にも左子にも株が接続されていない末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記株の木構造の最右株列上の株であって、末端の株以外である場合は、当該接続対象の株の右子にのみ新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記親株から左子に接続された株、若しくは左子に株が接続されていない場合において右子に接続された株を辿って得られる株の系列である最左株列上の末端の株である場合は、当該接続対象の株の右子若しくは左子に新たな株を接続して拡張し、
    接続対象の株が、前記株の木構造のうち、前記株の木構造の最左株列上の株であって、末端の株以外である場合は、当該接続対象の株の左子にのみ新たな株を接続して拡張する
    ことを特徴とする生成装置。
JP2018018716A 2018-02-05 2018-02-05 生成プログラム、生成方法及び生成装置 Active JP6973137B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018018716A JP6973137B2 (ja) 2018-02-05 2018-02-05 生成プログラム、生成方法及び生成装置
US16/262,254 US20190243811A1 (en) 2018-02-05 2019-01-30 Generation method, generation device, and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018018716A JP6973137B2 (ja) 2018-02-05 2018-02-05 生成プログラム、生成方法及び生成装置

Publications (2)

Publication Number Publication Date
JP2019135634A true JP2019135634A (ja) 2019-08-15
JP6973137B2 JP6973137B2 (ja) 2021-11-24

Family

ID=67475128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018018716A Active JP6973137B2 (ja) 2018-02-05 2018-02-05 生成プログラム、生成方法及び生成装置

Country Status (2)

Country Link
US (1) US20190243811A1 (ja)
JP (1) JP6973137B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11526529B2 (en) 2018-11-08 2022-12-13 Fujitsu Limited Efficient discovery of a binary tree pattern from a large amount of binary tree data

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625694B (zh) * 2020-06-05 2023-04-07 中国银行股份有限公司 多级标签处理方法、装置及计算机设备
US11985102B2 (en) * 2021-04-30 2024-05-14 Asapp, Inc. Processing clusters with mathematical models for message suggestion

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11526529B2 (en) 2018-11-08 2022-12-13 Fujitsu Limited Efficient discovery of a binary tree pattern from a large amount of binary tree data

Also Published As

Publication number Publication date
US20190243811A1 (en) 2019-08-08
JP6973137B2 (ja) 2021-11-24

Similar Documents

Publication Publication Date Title
Lee et al. A survey of algorithms for dense subgraph discovery
US8732173B2 (en) Classification hierarchy regeneration system, classification hierarchy regeneration method, and classification hierarchy regeneration program
JP5755822B1 (ja) 類似度算出システム、類似度算出方法およびプログラム
JP6973137B2 (ja) 生成プログラム、生成方法及び生成装置
CN103914506A (zh) 数据检索装置、数据存储方法和数据检索方法
CN109493246B (zh) 一种动态社交网络社区演化分析方法及其系统
TWI652586B (zh) 基於社交網路的群組查找方法和裝置
CN105989015B (zh) 一种数据库扩容方法和装置以及访问数据库的方法和装置
CN111159184A (zh) 元数据追溯方法、装置及服务器
CN111708805A (zh) 数据查询方法、装置、电子设备及存储介质
CN111666468A (zh) 一种基于团簇属性在社交网络中搜索个性化影响力社区的方法
JP2020135892A (ja) 誤り訂正方法及び装置、コンピュータ読み取り可能な媒体
CN115293919A (zh) 面向社交网络分布外泛化的图神经网络预测方法及系统
CN114840487A (zh) 分布式文件系统的元数据管理方法和装置
CN114781688A (zh) 业扩项目的异常数据的识别方法、装置、设备及存储介质
CN110737779A (zh) 知识图谱的构建方法、装置、存储介质和电子设备
Khan et al. Set-based unified approach for attributed graph summarization
JP6705764B2 (ja) 生成装置、生成方法、及び生成プログラム
CN116186298A (zh) 信息检索方法和装置
Wen et al. Computing k-cores in large uncertain graphs: An index-based optimal approach
KR20180137387A (ko) 중첩 커뮤니티 검출 장치 및 방법
US11468065B2 (en) Information processing apparatus, information processing method, and non-transitory computer-readable recording medium
KR20220099745A (ko) 지리공간 블록체인 데이터 검색을 위한 공간 분할 기반의 트리 인덱싱 및 질의어 처리 방법 및 장치
CN111309704B (zh) 数据库操作方法和数据库操作系统
JPWO2013172309A1 (ja) ルール発見システムと方法と装置並びにプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210929

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: 20211005

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211018

R150 Certificate of patent or registration of utility model

Ref document number: 6973137

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150