JP2022072149A - 機械学習プログラム、装置、及び方法 - Google Patents

機械学習プログラム、装置、及び方法 Download PDF

Info

Publication number
JP2022072149A
JP2022072149A JP2020181443A JP2020181443A JP2022072149A JP 2022072149 A JP2022072149 A JP 2022072149A JP 2020181443 A JP2020181443 A JP 2020181443A JP 2020181443 A JP2020181443 A JP 2020181443A JP 2022072149 A JP2022072149 A JP 2022072149A
Authority
JP
Japan
Prior art keywords
graph information
machine learning
node
graph
changing
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
JP2020181443A
Other languages
English (en)
Other versions
JP7512843B2 (ja
Inventor
賢 等々力
Masaru Todoroki
弘治 丸橋
Hiroharu Maruhashi
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 JP2020181443A priority Critical patent/JP7512843B2/ja
Priority claimed from JP2020181443A external-priority patent/JP7512843B2/ja
Priority to US17/464,738 priority patent/US20220138627A1/en
Publication of JP2022072149A publication Critical patent/JP2022072149A/ja
Application granted granted Critical
Publication of JP7512843B2 publication Critical patent/JP7512843B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/28Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

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

Abstract

【課題】グラフ情報のデータ拡張を行ってモデルの機械学習を実行する場合における学習精度の低下を抑制する。【解決手段】機械学習装置は、第1のグラフ情報を取得し、第1のグラフ情報に含まれるノード間に新たなエッジを追加することなく、又、第1のグラフ情報に含まれるノード間の既存のエッジを削除することなく、ノードとノードとの関係を示す重みをランダムに変更する変更処理によって第2のグラフ情報を生成し、第1のグラフ情報と第2のグラフ情報とに基づいて、モデルの機械学習を実行する。【選択図】図7

Description

開示の技術は、機械学習プログラム、機械学習装置、及び機械学習方法に関する。
従来、複数のノードと、ノード間を接続するエッジとを含むグラフ情報で機械学習したモデルを用いて、情報を分析することが行われている。このモデルの機械学習を実行する際に、訓練データとなる手持ちの少量のグラフ情報に基づいて新たなグラフ情報を生成し、訓練データを拡張することが行われている。
例えば、マハラノビス平方距離によるオブジェクト判別分析のための訓練データを生成する訓練データ生成装置が提案されている。この装置は、抽出されたオブジェクト領域とそのオブジェクト領域を構成する画素の濃度に従って領域分割を行い、複数の小領域を生成し、複数の小領域間の隣接関係を表すグラフを生成する。また、この装置は、複数の小領域のうち隣接する小領域の濃度・高さ・幅の差の絶対値の重み付き和であるグラフのエッジの属性値を特徴量として、その全ての特徴量を含む特徴量データを生成する。そして、この装置は、生成された特徴量データをオブジェクト領域のオブジェクト種類毎にまとめる。そして、この装置は、この特徴量データに関し、最大個数の特徴量を有する特徴量データに合わせて特徴量の個数がその最大個数よりも少ない特徴量データにダミーの特徴量を追加して訓練データとする。
また、機械学習フェーズにおいて、従来の因果グラフに対して拡張した因果グラフを構築する状態判定装置が提案されている。この装置は、システムの各構成要素の状態に対応する第1の層とシステムにおける第1の層の各構成要素から出る観測情報の状態に対応する第2の層との関係を示すグラフを第1の因果グラフとする。また、この装置は、第1の因果グラフに対して、第1の層の各構成要素から出る観測情報に対する変換によって得られる第2の観測情報の状態に対応する第3の層を第1の層と第2の層との間に追加した第2の因果グラフを構築する。
特開2007-334755号公報 特開2018-124829号公報
しかしながら、元のグラフ情報に対してエッジを追加するなどして新たなグラフ情報を生成して訓練データのデータ拡張を行う場合、訓練データの純度が低下し、その結果として機械学習の精度が低下する場合がある、という問題がある。
一つの側面として、開示の技術は、グラフ情報のデータ拡張を行ってモデルの機械学習を実行する場合における学習精度の低下を抑制することを目的とする。
一つの態様として、開示の技術は、第1のグラフ情報を取得し、前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成する。そして、開示の技術は、前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する。
一つの側面として、グラフ情報のデータ拡張を行ってモデルを機械学習する場合における学習精度の低下を抑制することができる、という効果を有する。
機械学習装置の機能ブロック図である。 第1のグラフ情報集合に対応するグラフ集合の一例を示す図である。 第1のグラフ情報の一例を示す図である。 第1のグラフ情報の他の例を示す図である。 ローカルインデックス及びグローバルインデックスを説明するための図である。 ランダムに重みを変更する方法による第2のグラフ情報の生成を説明するための図である。 ランダムに重みを変更する方法による第2のグラフ情報の生成例を概略的に示す図である。 ヒストグラムにおける出現頻度の相対比率を説明するための図である。 ヒストグラムに応じて重みを変更する方法による第2のグラフ情報の生成を説明するための図である。 ヒストグラムに応じて重みを変更する方法による第2のグラフ情報の生成例を概略的に示す図である。 機械学習装置として機能するコンピュータの概略構成を示すブロック図である。 機械学習処理の一例を示すフローチャートである。 ランダムに重みを変更する方法と比較例との評価の比較を示す図である。 ランダムに重みを変更する際に適用する確率分布の分散の大小による評価の比較の一例を示す図である。 データ拡張によりデータ数を10倍に増加させた場合の評価の一例を示す図である。 種類の異なる複数の化合物データの各々に対する評価の一例を示す図である。 ヒストグラムに応じて重みを変更する方法と比較例との評価の比較を示す図である。
以下、図面を参照して、開示の技術に係る実施形態の一例を説明する。
図1に示すように、本実施形態に係る機械学習装置10には、入力データとして、モデルの機械学習を行うための訓練データであるグラフ情報集合が入力される。以下では、入力データであるグラフ情報を「第1のグラフ情報」ともいう。図2に、第1のグラフ情報集合に対応するグラフ集合の一例を示す。図2に示すように、グラフ集合には複数のグラフが含まれ、各グラフにはグラフの識別情報であるグラフIDが付与されている。各グラフは、複数のノード(図2中の丸印)と、ノード間を接続するエッジとで構成されている。なお、図2では、ノードが持つ情報によって分類される各ノードのカテゴリに応じて、各ノードを示す丸印内の網掛の態様を異ならせている。
本実施形態において、グラフ情報集合は、例えば図3に示すように、各グラフのグラフIDとグラフ情報とを対応付けて、複数のグラフ情報をまとめたものである。図3の例では、グラフ情報を、グラフに含まれるノード間の関係を表形式で表した情報としている。具体的には、エッジの一端に接続するノードを「ノード1」とし、エッジの他端に接続するノードを「ノード2」とし、各エッジに対して、ノード1とノード2との間の関係を表す「重み」が対応付けられている。なお、重みは、開示の技術の「ノードとノードとの接続の属性値」の一例である。図3の例では、エッジの種類毎に、グラフ内における該当種類のエッジの出現数を重みとして対応付けてグラフ情報としている。エッジの種類とは、エッジの両端のノードのカテゴリの組合せの各々である。
図4に、グラフ情報集合の他の例を示す。図4の例では、図3に示すグラフ情報のようにエッジの種類毎の情報ではなく、グラフに含まれるエッジ毎に重みを対応付けたグラフ情報となっている。この場合、重みは、ノード1とノード2との接続の強さを表す指標とすればよい。また、図4の例では、図3に示すグラフ情報が持つデータ列に加え、ノード又はエッジの属性情報である「ラベル」のデータ列が含まれている。図4では、「ラベル」列を1列のみ表記しているが、ノード1の属性1を表すラベル、ノード1の属性2を表すラベル、ノード2の属性1を表すラベル、・・・等、複数のラベル列を含んでもよい。なお、ラベルは、開示の技術の「ノードに対応付けられた特定の値」の一例である。
図3の例では、グラフ情報において、ノードを丸印で表しているが、実際の処理においては、各ノードをインデックス化した数値を用いる。他のデータ列についても、値の離散化等のインデックス化を行ってもよい。また、図4に示すグラフ情報では、「ラベル」の値はインデックス化されている。例えば、ノード1が企業名で、ラベルがノード1の業種である場合、各業種を数値で表すことにより、ラベルをインデックス化している。ここで、インデックスの種類には、ローカルインデックスとグローバルインデックスとがある。ローカルインデックスは、グラフ構造が類似している、すなわちトポロジーが近いことを重視し、グラフID毎に個別に設定されるインデックスである。グローバルインデックスは、ノード間の特定の繋がりを重視し、全グラフ情報に対して共通に設定されるインデックスである。
例えば、図5に示すように、各人物をノード(図5中の楕円)で表し、人物間の繋がりに基づいてノード間をエッジで接続したグラフにおいて、特定のカテゴリのノード(特定の人物)には着目しないが、グラフ間で何らかの共通の挙動又は関係があることに注目したい場合等には、ローカルインデックスが用いられる。一方、特定のカテゴリのノード(特定の人物)に着目して、全グラフに亘る、その特定の人物の挙動を知りたい場合等には、グローバルインデックスが用いられる。
機械学習装置10は、機能的には、図1に示すように、取得部12と、生成部14と、機械学習部16とを含む。
取得部12は、入力データとして機械学習装置10に入力された第1のグラフ情報集合を取得する。また、取得部12は、ユーザから、データ拡張の要否の指定を受け付ける。取得部12は、ユーザからデータ拡張要の指定を受け付けた場合、取得した第1のグラフ情報集合を生成部14へ受け渡す。一方、取得部12は、ユーザからデータ拡張不要の指定を受け付けた場合、取得した第1のグラフ情報集合を機械学習部16へ受け渡す。
生成部14は、取得部12から第1のグラフ情報集合を受け取る。そして、生成部14は、第1のグラフ情報集合に含まれる第1のグラフ情報毎に、第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成する。すなわち、生成部14は、第1のグラフ情報に含まれるノード間に新たなエッジを追加することなく、又、第1のグラフ情報に含まれる既存のエッジを削除することなく、エッジに対応付けられた重みを変更することにより、第2のグラフ情報を生成する。言い換えると、生成部14は、第1のグラフ情報の構成、すなわち骨格を保持したまま、グラフ情報の特徴である重みを変更した第2のグラフ情報を生成する。
具体的には、生成部14は、ユーザから、データ拡張の拡張方法の指定を受け付ける。本実施形態では、拡張方法として、重みをランダムに変更する方法と、重みを注目データ列の頻度分布に基づいて変更する方法(以下、「ヒストグラムによる方法」ともいう)とが選択可能である。
ユーザから、ランダムに変更する方法が指定された場合、生成部14は、重みの変更処理として、第1のグラフ情報の重みをランダムに変更する。例えば、図6に示すように、生成部14は、所定の確率分布の値を、第1のグラフ情報の重みにランダムに乗算することにより、第2のグラフ情報を生成する。例えば、所定の確率分布として、平均1の正規分布を採用した場合、生成部14は、ノード間の関係の重みを平均1の正規分布に応じて分散させた新たなグラフ情報を、第2グラフ情報として生成する。重みの変更処理に正規分布を用いることで、自然なデータ拡張が可能となる。なお、所定の確率分布は正規分布の場合に限定されず、分布形状が既知である任意の確率分布を適用可能である。なお、ランダムに変更する方法を適用する場合のグラフ情報のインデックスは、ローカルインデックスであっても、グローバルインデックスであってもよい。
生成部14は、所定の確率分布の値を、第1のグラフ情報の重みにランダムに乗算するパターンとして、複数の異なるパターンを適用して、1つの第1のグラフ情報から複数の第2のグラフ情報を生成してもよい。図7に、1つの第1のグラフ情報から、3パターンの第2のグラフ情報が生成された例を示す。なお、図7では、エッジの太さで、ノード間の関係の強弱、すなわち重みの大小を表現している。後述する図10においても同様である。
また、ユーザから、ヒストグラムによる方法が指定された場合、生成部14は、重みの変更処理として、エッジに対応するラベル又はノードの値の第1のグラフ情報における出現頻度に応じた係数を、該当のエッジに対応付けられた重みに乗算する。これにより、生成部14は、第1のグラフ情報の重みを変更する。
具体的には、生成部14は、ユーザから、第1のグラフ情報における注目データ列の指定を受け付ける。注目データ列としては、例えば、与えられたタスクにとって重要であり、グラフ情報全体を通して共通して現れる数値、又はカテゴリ値を含むデータ列が指定される。特に、ラベルを表すデータ列は注目データ列として指定され易い。なお、処理の性質上、ヒストグラムによる方法を適用する場合のグラフ情報のインデックスは、グローバルインデックスが対象となる。
例えば、図4のグラフ情報の例で、グラフ情報が金融取引データを表しており、機械学習によって信頼できる取引先を検知するためのモデルを生成する場合を考える。具体的には、グラフ情報において、ノード1が送金元企業、ノード2が送金先企業であり、ラベルとして、送金元又は送金先企業の業種、規模、組織構造、送金元企業と送金先企業との間の取引期間等が含まれているとする。また、重みは、送金元企業と送金先企業との間の取引額とする。この場合、注目データ列としては、取引先の特徴的な企業情報を示すデータ列が選択される。例えば、ノード1及びノード2が示す企業間の取引関係に特徴的な要素が、送金元企業の業種に関係すると考えた場合に、送金元企業の業種を示すラベル列が注目データ列として指定される。
また、注目データ列として指定されるのは、ラベル列に限定されない。例えば、グラフ情報がインターネットログデータを表しており、機械学習によって不正アクセスを検知するためのモデルを生成する場合を考える。具体的には、グラフ情報において、ノード1が送信元IPアドレス、ノード2が送信先IPアドレスであり、重みが、1回の通信でのパケット量であるとする。ある特定のIPアドレスから不正な通信が送信されており、特に頻繁に通信を行っている送信元IPアドレスが不正アクセスの踏み台となっていると考えた場合、ノード1が注目データ列として選択される。したがって、ラベルを含まないグラフ情報であっても、ヒストグラムによる方法を適用することができる。
生成部14は、図8の上段に示すように、第1のグラフ情報集合において、指定された注目データ列の値(インデックス番号)毎のエッジ(グラフ情報の各行)の出現頻度を示すヒストグラムを計算する。なお、ここでは、各グラフ情報には、与えられたタスクに対して正例となるか負例となるかの情報が付与されているものとし、図8では、正例及び負例毎にヒストグラムが計算された例を示している。
生成部14は、図8の下段に示すように、計算したヒストグラムに基づいて、所定の基準値に対する各インデックス番号に対応する出現頻度の相対比率を求める。そして、生成部14は、図9に示すように、求めた相対比率を、注目データ列の各インデックス番号に対応するエッジの重みに乗算することにより、第1のグラフ情報の重みを変更した第2のグラフ情報を生成する。生成部14は、所定の基準値を、ヒストグラムにおける各インデックス番号に対応する出現頻度の平均値又は中央値としてよい。この場合、重みの変更に偏りが生じることを抑制することができる。また、生成部14は、各インデックス番号について得られた相対比率を、1を中心とした所定範囲の値となるように調整してもよい。この場合、重みの変更に極端な影響が生じることを抑制することができる。
生成部14は、求めた相対比率を重みにそのまま乗算して生成した第2のグラフ情報に加え、相対比率を所定倍した値を重みに乗算して第2のグラフ情報を生成することで、1つの第1のグラフ情報から複数の第2のグラフ情報を生成してもよい。図10に、1つの第1のグラフ情報から、2パターンの第2のグラフ情報が生成された例を示す。図10の例では、求めた相対比率をそのまま重みに乗算した場合を「基本倍率」、相対比率を1より大きい所定倍(例えば2倍)にした値を重みに乗算した場合を「強倍率」としている。
生成部14は、第1のグラフ情報集合に含まれる第1のグラフ情報の各々について、第2のグラフ情報の各々を生成し、第2のグラフ情報集合とする。生成部14は、生成した第2のグラフ情報の各々に、第1のグラフ情報とは異なるグラフIDを付与する。例えば、第1のグラフ情報集合にグラフID=0,1,・・・,Nが使用されている場合、生成部14は、第2のグラフ情報の各々には、グラフID=N+1,N+2,・・・を付与する。生成部14は、第1のグラフ情報集合と、生成した第2のグラフ情報集合とを機械学習部16へ受け渡す。
機械学習部16は、取得部12から受け渡された第1のグラフ情報集合、又は、生成部14から受け渡された第1のグラフ情報集合と第2のグラフ情報集合とに基づいて、モデルの機械学習を実行する。すなわち、データ拡張を行わない場合には、機械学習部16は、第1のグラフ情報集合のみでモデルを訓練する。また、データ拡張を行う場合には、機械学習部16は、第1のグラフ情報集合と、拡張された第2のグラフ情報集合とを用いてモデルを訓練する。グラフ情報を用いた機械学習のアルゴリズムとしては、例えば、Deep Tensor、GCN(Graph Convolutional Networks)等が挙げられる。機械学習部16は、訓練済みのモデルを出力する。
機械学習装置10は、例えば図11に示すコンピュータ40で実現することができる。コンピュータ40は、CPU(Central Processing Unit)41と、一時記憶領域としてのメモリ42と、不揮発性の記憶部43とを備える。また、コンピュータ40は、入力部、表示部等の入出力装置44と、記憶媒体49に対するデータの読み込み及び書き込みを制御するR/W(Read/Write)部45とを備える。また、コンピュータ40は、インターネット等のネットワークに接続される通信I/F(Interface)46を備える。CPU41、メモリ42、記憶部43、入出力装置44、R/W部45、及び通信I/F46は、バス47を介して互いに接続される。
記憶部43は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部43には、コンピュータ40を、機械学習装置10として機能させるための機械学習プログラム50が記憶される。機械学習プログラム50は、取得プロセス52と、生成プロセス54と、機械学習プロセス56とを有する。
CPU41は、機械学習プログラム50を記憶部43から読み出してメモリ42に展開し、機械学習プログラム50が有するプロセスを順次実行する。CPU41は、取得プロセス52を実行することで、図1に示す取得部12として動作する。また、CPU41は、生成プロセス54を実行することで、図1に示す生成部14として動作する。また、CPU41は、機械学習プロセス56を実行することで、図1に示す機械学習部16として動作する。これにより、機械学習プログラム50を実行したコンピュータ40が、機械学習装置10として機能することになる。なお、プログラムを実行するCPU41はハードウェアである。
なお、機械学習プログラム50により実現される機能は、例えば半導体集積回路、より詳しくはASIC(Application Specific Integrated Circuit)等で実現することも可能である。
次に、本実施形態に係る機械学習装置10の作用について説明する。機械学習装置10に入力データとして、第1のグラフ情報集合が入力されると、機械学習装置10において、図12に示す機械学習処理が実行される。なお、機械学習処理は、開示の技術の機械学習方法の一例である。
ステップS12で、取得部12が、入力データとして機械学習装置10に入力された第1のグラフ情報集合を取得する。
次に、ステップS14で、取得部12が、ユーザから、データ拡張の要否の指定を受け付け、データ拡張要の指定を受け付けたか否かを判定する。データ拡張要の指定を受け付けた場合、取得部12が、第1のグラフ情報集合を生成部14へ受けし、処理はステップS18へ移行する。一方、データ拡張不要の指定を受け付けた場合、取得部12が、第1のグラフ情報集合を機械学習部16へ受け渡し、処理はステップS16へ移行する。
ステップS16では、機械学習部16が、取得部12から受け渡された第1のグラフ情報集合に基づいて、モデルの機械学習を実行し、訓練済みのモデルを出力して、機械学習処理は終了する。
ステップS18では、生成部14が、ユーザから、データ拡張の拡張方法の指定を受け付け、受け付けた拡張方法が、重みをランダムに変更する方法か、ヒストグラムによる方法かを判定する。重みをランダムに変更する方法の場合、処理はステップS20へ移行し、ヒストグラムによる方法の場合、処理はステップS22へ移行する。
ステップS20では、生成部14が、所定の確率分布の値を、第1のグラフ情報の重みにランダムに乗算することにより、第2のグラフ情報を生成する。そして、生成部14が、第1のグラフ情報集合と、生成した第2のグラフ情報集合とを機械学習部16へ受け渡し、処理はステップS26へ移行する。
一方、ステップS22では、生成部14が、ユーザから、第1のグラフ情報における注目データ列の指定を受け付ける。そして、生成部14が、第1のグラフ情報集合において、指定された注目データ列の値(インデックス番号)毎のエッジ(グラフ情報の各行)の出現頻度を示すヒストグラムを計算する。
次に、ステップS24で、生成部14が、計算したヒストグラムに基づいて、所定の基準値に対する各インデックス番号に対応する出現頻度の相対比率を求める。そして、生成部14が、求めた相対比率を、注目データ列の各インデックス番号に対応するエッジの重みに乗算することにより、第1のグラフ情報の重みを変更した第2のグラフ情報を生成する。そして、生成部14が、第1のグラフ情報集合と、生成した第2のグラフ情報集合とを機械学習部16へ受け渡し、処理はステップS26へ移行する。
ステップS26では、機械学習部16が、生成部14から受け渡された第1のグラフ情報集合と第2のグラフ情報集合とに基づいて、モデルの機械学習を実行し、訓練済みのモデルを出力して、機械学習処理は終了する。
以上説明したように、本実施形態に係る機械学習装置は、第1のグラフ情報を取得し、第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成する。そして、機械学習装置は、第1のグラフ情報と第2のグラフ情報とに基づいて、モデルの訓練を実行する。これにより、グラフ情報の基本構造を変更することなく、グラフ情報のノード間の関係を表す重みのみを変更することにより、第1のグラフ情報の骨格を保持しした訓練データのバリエーションを増加させ、データ拡張を行うことができる。結果として、グラフ情報のデータ拡張を行ってモデルを訓練する場合における学習精度の低下を抑制することができる。
また、Deep Tensorのように、局所よりもグラフ全体の特徴抽出が得意な手法では、細かな特徴を目立たなくさせる効果を発揮するランダム性は特に適しているため、本実施形態における、重みをランダムに変更する方法を適用することの効果が高い。
ここで、ある入力データセットを用いてDeep Tensorのアルゴリズムで機械学習されたモデルに対して、テストデータを用いて評価したモデルの精度について説明する。ここでは、評価指標として、ACC(Accuracy)及びAUC(Area Under the Curve)を用いた。ACCは、テスト結果全件に対して、モデルによる予測と正解とが一致した件数の割合である。AUCは、分類器の性能評価の指標であり、ROC曲線(Receiver Operating Characteristic Curve)の下側の面積に相当する。ROC曲線は、下記に示す真陽性率(True Positive Rate、TPR)と偽陽性率(False Positive Rate、FPR)とで成り立つ曲線であり、分類器の判別能を計ることに用いられる。AUCが1に近づけば近づく程、判別能は高く、AUC=0.5ではランダムな予測となる。
TPR=TP/(TP+FN)
FPR=FP/(FP+TN)
TP:予測がPositive、かつ正解がPositive
FN:予測がNegative、かつ正解がPositive
FP:予測がPositive、かつ正解がNegative
TN:予測がNegative、かつ正解がNegative
図13に、ランダムでの重み変更前後の、学習のエポック毎のACC及びAUCの比較の一例を示す。図13の例では、本実施形態の一例(以下、「本手法」という)として、平均1の正規分布に基づいてランダムで重みを変更し、1つの第1のグラフ情報から1つの第2のグラフ情報を生成した場合を採用した。すなわち、本手法では、第1のグラフ情報+第2のグラフ情報で、元のデータ数から2倍に拡張して機械学習を実行したモデルを対象とした。また、重み変更前の一例(以下、「比較例」という)として、第1のグラフ情報を単純に2倍にしたデータで機械学習を実行したモデルを対象とした。図13において、AUC(後)及びACC(後)は、本手法について評価指標、AUC(前)及びACC(前)は、比較例について評価指標である。以下の図14、図15、及び図17においても同様である。図13に示すように、ACC及びAUC共に、比較例に対して本手法の方が全体的に高い値を示しており、機械学習の精度低下が抑制されていることが分かる。
また、図14に、ランダムに重みを変更する際に適用する確率分布の分散の大小による評価の一例を示す。本手法及び比較例については、図13の場合と同様である。分散が大きい場合(図14の下段左)、本手法のACC及びAUCは、エポック数の前半で激しく変動し、安定していない。また、全体的にも、比較例と比べて精度が向上したとは言い難い。分散が小さい場合(図14の下段右)、本手法のAUCがエポック数の前半で他の分散条件よりも高精度となり、最終的にも、本分散条件の範囲では最も高い結果が得られている。なお、図14の上段は、分散が中間値の場合であり、図13の場合と同様である。このことから、図13で示した場合よりも、より高い精度が得られる適切な分散条件が存在することが示唆され、特に、分散が小さい程、その可能性が高くなると予想される。
次に、図15に、データ拡張によりデータ数を10倍に増加させた場合の評価の一例を示す。本手法では、1つの第1のグラフ情報から9つの第2のグラフ情報を生成することにより、元のデータ数の10倍にデータ拡張した。比較例では、第1のグラフ情報を単純に10倍した。その他の条件は図13の例と同様である。図15に示すように、データ数を2倍に拡張した場合よりも過学習に陥り易いため、本手法及び比較例共に、エポック数の増加と共に学習精度が低下する傾向がある。しかし、本手法のACC及びAUCは、より高くなり、特にエポック数が20前後で既に、データ数を2倍に拡張した場合の100エポック数での精度に到達しており、学習が速いことが分かる。
上記では、機械学習のアルゴリズムがDeep Tensorの例で説明したが、GCNのような比較的局所的な特徴抽出が得意な手法であっても、グラフ情報の性質に依っては、重みをランダムに変更する方法が効果的な場合がある。図16に、種類の異なる複数の化合物に関するグラフ情報(以下、「化合物データ」という)の各々に対する評価の一例を示す。図16の例では、評価指標として、10回のテストで得られたAUCの平均(以下、「平均AUC」という)を用いている。また、本手法は、図15と同様で、データ数を10倍に拡張した場合である。また、比較手法1は、データ拡張を行わず、第1のグラフ情報のみを用いた場合、比較手法2は、第1のグラフ情報を単純に10倍した場合である。図16に示すように、本手法の精度が、比較手法1及び2よりも高いケースがあり、機械学習のアルゴリズムに依らず、重みをランダムに変更する方法の効果が期待できる。
また、ヒストグラムによる方法では、注目データ列に関する特徴が強調されるように重みを変更することができるため、タスクに応じた学習精度を向上させることができる。図10では、黒丸で示されるノード同士の接続が重要であると考えられ、黒丸のノード間のエッジが強調された第2のグラフ情報が生成された例となっている。図17に、ヒストグラムによる方法で重みを変更した本手法と比較例との評価の一例を示す。本手法の重みを変更する方法以外の条件は、図13の例と同様である。本手法のACC及びAUCは、比較例よりも全体的に安定して、より高精度であることが分かる。また、ランダムに重みを変更する方法において適用する確率分布の適切な分布状態が不明な場合でも、ヒストグラムによる方法を適用することで、精度良くデータ拡張を行うことができる。
なお、上記実施形態では、2ノード間の接続を規定したグラフ情報の例について説明したが、3ノード以上の複数のノード間の接続について重みを規定したハイパーグラフのグラフ情報に対しても開示の技術は適用可能である。
また、上記実施形態では、機械学習プログラムが記憶部に予め記憶(インストール)されている態様を説明したが、これに限定されない。開示の技術に係るプログラムは、CD-ROM、DVD-ROM、USBメモリ等の記憶媒体に記憶された形態で提供することも可能である。
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
第1のグラフ情報を取得し、
前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成し、
前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する、
処理をコンピュータに実行させることを特徴とする機械学習プログラム。
(付記2)
前記接続状態を変更しないことは、前記第1のグラフ情報に含まれるノード間に新たな接続を追加しないこと、及び、前記第1のグラフ情報に含まれるノード間の既存の接続を削除しないことである、
ことを特徴とする付記1に記載の機械学習プログラム。
(付記3)
前記変更処理は、前記属性値をランダムに変更する処理を含む、
ことを特徴とする付記1又は付記2に記載の機械学習プログラム。
(付記4)
前記属性値をランダムに変更する処理は、特定の確率分布の値を前記属性値にランダムに乗算する処理を含む、
ことを特徴とする付記3に記載の機械学習プログラム。
(付記5)
前記変更処理は、ノードに対応付けられた特定の値又はカテゴリ毎の前記第1のグラフ情報における出現頻度に応じた係数を、前記特定の値又はカテゴリが対応付けられたノードを含む前記接続の属性値に乗算する処理を含む、
ことを特徴とする付記1~付記4のいずれか1項に記載の機械学習プログラム。
(付記6)
前記係数は、基準値に対する前記出現頻度に応じた相対比率である、
ことを特徴とする付記5に記載の機械学習プログラム。
(付記7)
前記基準値は、前記出現頻度の平均値又は中央値である、
ことを特徴とする付記6に記載の機械学習プログラム。
(付記8)
前記係数は、1を中心とした特定の範囲の値である、
ことを特徴とする付記5~付記7のいずれか1項に記載の機械学習プログラム。
(付記9)
第1のグラフ情報を取得し、
前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成し、
前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する、
処理を実行する制御部を含むことを特徴とする機械学習装置。
(付記10)
前記接続状態を変更しないことは、前記第1のグラフ情報に含まれるノード間に新たな接続を追加しないこと、及び、前記第1のグラフ情報に含まれるノード間の既存の接続を削除しないことである、
ことを特徴とする付記9に記載の機械学習装置。
(付記11)
前記変更処理は、前記属性値をランダムに変更する処理を含む、
ことを特徴とする付記9又は付記10に記載の機械学習装置。
(付記12)
前記属性値をランダムに変更する処理は、特定の確率分布の値を前記属性値にランダムに乗算する処理を含む、
ことを特徴とする付記11に記載の機械学習装置。
(付記13)
前記変更処理は、ノードに対応付けられた特定の値又はカテゴリ毎の前記第1のグラフ情報における出現頻度に応じた係数を、前記特定の値又はカテゴリが対応付けられたノードを含む前記接続の属性値に乗算する処理を含む、
ことを特徴とする付記9~付記12のいずれか1項に記載の機械学習装置。
(付記14)
前記係数は、基準値に対する前記出現頻度に応じた相対比率である、
ことを特徴とする付記13に記載の機械学習装置。
(付記15)
前記基準値は、前記出現頻度の平均値又は中央値である、
ことを特徴とする付記14に記載の機械学習装置。
(付記16)
前記係数は、1を中心とした特定の範囲の値である、
ことを特徴とする付記13~付記15のいずれか1項に記載の機械学習装置。
(付記17)
第1のグラフ情報を取得し、
前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成し、
前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する、
処理をコンピュータが実行することを特徴とする機械学習方法。
(付記18)
前記接続状態を変更しないことは、前記第1のグラフ情報に含まれるノード間に新たな接続を追加しないこと、及び、前記第1のグラフ情報に含まれるノード間の既存の接続を削除しないことである、
ことを特徴とする付記17に記載の機械学習方法。
(付記19)
前記変更処理は、前記属性値をランダムに変更する処理を含む、
ことを特徴とする付記17又は付記18に記載の機械学習方法。
(付記20)
第1のグラフ情報を取得し、
前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成し、
前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する、
処理をコンピュータに実行させることを特徴とする機械学習プログラムを記憶した記憶媒体。
10 機械学習装置
12 取得部
14 生成部
16 機械学習部
40 コンピュータ
41 CPU
42 メモリ
43 記憶部
49 記憶媒体
50 機械学習プログラム

Claims (10)

  1. 第1のグラフ情報を取得し、
    前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成し、
    前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する、
    処理をコンピュータに実行させることを特徴とする機械学習プログラム。
  2. 前記接続状態を変更しないことは、前記第1のグラフ情報に含まれるノード間に新たな接続を追加しないこと、及び、前記第1のグラフ情報に含まれるノード間の既存の接続を削除しないことである、
    ことを特徴とする請求項1に記載の機械学習プログラム。
  3. 前記変更処理は、前記属性値をランダムに変更する処理を含む、
    ことを特徴とする請求項1又は請求項2に記載の機械学習プログラム。
  4. 前記属性値をランダムに変更する処理は、特定の確率分布の値を前記属性値にランダムに乗算する処理を含む、
    ことを特徴とする請求項3に記載の機械学習プログラム。
  5. 前記変更処理は、ノードに対応付けられた特定の値又はカテゴリ毎の前記第1のグラフ情報における出現頻度に応じた係数を、前記特定の値又はカテゴリが対応付けられたノードを含む前記接続の属性値に乗算する処理を含む、
    ことを特徴とする請求項1~請求項4のいずれか1項に記載の機械学習プログラム。
  6. 前記係数は、基準値に対する前記出現頻度に応じた相対比率である、
    ことを特徴とする請求項5に記載の機械学習プログラム。
  7. 前記基準値は、前記出現頻度の平均値又は中央値である、
    ことを特徴とする請求項6に記載の機械学習プログラム。
  8. 前記係数は、1を中心とした特定の範囲の値である、
    ことを特徴とする請求項5~請求項7のいずれか1項に記載の機械学習プログラム。
  9. 第1のグラフ情報を取得し、
    前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成し、
    前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する、
    処理を実行する制御部を含むことを特徴とする機械学習装置。
  10. 第1のグラフ情報を取得し、
    前記第1のグラフ情報に含まれるノードとノードとの接続状態を変更することなしにノードとノードとの接続の属性値を変更する変更処理によって第2のグラフ情報を生成し、
    前記第1のグラフ情報と前記第2のグラフ情報とに基づいて、モデルの機械学習を実行する、
    処理をコンピュータが実行することを特徴とする機械学習方法。
JP2020181443A 2020-10-29 2020-10-29 機械学習プログラム、装置、及び方法 Active JP7512843B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020181443A JP7512843B2 (ja) 2020-10-29 機械学習プログラム、装置、及び方法
US17/464,738 US20220138627A1 (en) 2020-10-29 2021-09-02 Computer-readable recording medium storing machine learning program, machine learning apparatus, and machine learning method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020181443A JP7512843B2 (ja) 2020-10-29 機械学習プログラム、装置、及び方法

Publications (2)

Publication Number Publication Date
JP2022072149A true JP2022072149A (ja) 2022-05-17
JP7512843B2 JP7512843B2 (ja) 2024-07-09

Family

ID=

Also Published As

Publication number Publication date
US20220138627A1 (en) 2022-05-05

Similar Documents

Publication Publication Date Title
Talagala et al. Meta-learning how to forecast time series
US20200293924A1 (en) Gbdt model feature interpretation method and apparatus
Ewers et al. Using landscape history to predict biodiversity patterns in fragmented landscapes
JP6791780B2 (ja) 文章作成装置
US8954910B1 (en) Device mismatch contribution computation with nonlinear effects
JP2007329415A (ja) データ処理方法、データ処理プログラム、該プログラムを記録した記録媒体およびデータ処理装置
Khan et al. Moment tests for window length selection in singular spectrum analysis of short–and long–memory processes
US8813009B1 (en) Computing device mismatch variation contributions
WO2020255414A1 (ja) 学習支援装置、学習支援方法、及びコンピュータ読み取り可能な記録媒体
Khoshnevis et al. Prioritizing ground‐motion validation metrics using semisupervised and supervised learning
TWM577148U (zh) 評估金融風險的電子裝置
US20220138627A1 (en) Computer-readable recording medium storing machine learning program, machine learning apparatus, and machine learning method
CN117349160A (zh) 一种软件质量评估方法、装置及计算机可读存储介质
Nag et al. Multiple outlier detection in multivariate data using self-organizing maps title
JP7512843B2 (ja) 機械学習プログラム、装置、及び方法
JP5516925B2 (ja) 信頼度計算装置、信頼度計算方法、及びプログラム
Rysak et al. Search for optimal parameters in a recurrence analysis of the Duffing system with varying damping
Bond et al. An unsupervised machine learning approach for ground‐motion spectra clustering and selection
Miao et al. Informative core identification in complex networks
US11562110B1 (en) System and method for device mismatch contribution computation for non-continuous circuit outputs
Hewage et al. Optimizing the trade-off between classification accuracy and data privacy in the area of data stream mining
Owen et al. Classifying human development with latent class analysis
CN106897301A (zh) 一种搜索质量的评测方法、装置及电子设备
Sridhar et al. Feature based Community Detection by extracting Facebook profile details
JP7444252B2 (ja) 診断支援プログラム、装置、及び方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240517

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240528