JP7172816B2 - データ分析装置、データ分析方法及びデータ分析プログラム - Google Patents
データ分析装置、データ分析方法及びデータ分析プログラム Download PDFInfo
- Publication number
- JP7172816B2 JP7172816B2 JP2019075952A JP2019075952A JP7172816B2 JP 7172816 B2 JP7172816 B2 JP 7172816B2 JP 2019075952 A JP2019075952 A JP 2019075952A JP 2019075952 A JP2019075952 A JP 2019075952A JP 7172816 B2 JP7172816 B2 JP 7172816B2
- Authority
- JP
- Japan
- Prior art keywords
- group
- calculation
- data analysis
- data
- score
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Operations Research (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、データ分析装置、データ分析方法及びデータ分析プログラムに関する。
特徴抽出は、データから重要な特徴を抽出する手法群であり、データマイニングにおいてデータの説明のために広く使われている。データマイニングでは、しばしばデータの特徴がグループ構造を持っていることがある。
例えば、地域毎の天候データは、各地域が各グループに対応し、それぞれのグループ内に「気温」「湿度」「天候」「風向き」などの特徴が入ったデータと見なすことができる。このようなグループ構造を持ったデータにおいては、重要な特徴を抽出するだけでなく、重要な特徴のグループ(例えば、地域に相当するグループ)を抽出することでデータを説明する場合がある。Sparse Group Lassoは、この特徴のグループの抽出における代表的な手法である。
Sparse Group Lassoは、線形回帰に基づく手法である(例えば、非特許文献1参照)。具体的には、Sparse Group Lassoは、線形回帰モデルの係数にグループ制約を課すことによって、グループ特徴を扱うことができる。Sparse Group Lassoでは、線形回帰モデルの係数の学習において、Block Coordinate Descentが標準的に使われている。
Block Coordinate Descentは、Sparse Group Lassoの係数をグループ毎に独立して更新し学習するアルゴリズムである。その更新計算は、大きく次のような2ステップに分けられる。
第1ステップは、グループ内の係数が全てゼロになるか否かをチェックするステップである。第2ステップは、グループ内の係数が全てゼロにならない場合はグループ内の係数を更新するステップである。
Block Coordinate Descentは、この第1ステップ及び第2ステップを、全ての係数が収束するまで繰り返す。最終的に、係数がゼロとなるグループは、重要でない特徴のグループであり、係数が非ゼロとなるグループは重要な特徴のグループと言える。
しかしながら、Block Coordinate Descentは、大規模データに対して計算が遅いという課題がある。これは、第1ステップの計算において、全体の特徴の数に比例する計算オーダーが必要となるためである。この結果、Sparse Group Lassoを大規模データに適用することが困難になっている。
ここで、Sparse Group Lassoを大規模データに適用するために、safe screening (非特許文献2参照)という手法が広く用いられている。Safe screeningは、Block Coordinate Descentで係数を学習する前に、係数がゼロとなるようなグループを特定して削除する手法である。
N. Simon, J. Friedman, T. Hastie, and R. Tibshirani, "A SPARSE-GROUP LASSO", Journal of Computational and Graphical Statistics, 22(2), 231-245, 2013.
E. Ndiaye, O. Fercoq, A. Gramfort, and J. Salmon, "Gap Safe Screening Rules for Sparse-Group Lasso", In Advances in Neural Information Processing Systems, pp. 388-396, 2016.
しかしながら、safe screeningにおいて、削除できるグループの数が少ない場合には、Block Coordinate Descentは、高速化されない。特に、safe screeningでは、係数の初期値が最適な係数から遠い場合、グループが削除しづらいことが理論的に知られている。
本発明は、上記に鑑みてなされたものであって、Block Coordinate Descentを高速化することができるデータ分析装置、データ分析方法及びデータ分析プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明に係るデータ分析装置は、Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出するデータ分析装置であって、与えられたデータのグラム行列のノルムを計算する第1の計算部と、ノルムを基にデータのグループのうち計算対象のグループに対するスコアを計算する第2の計算部と、第2の計算部が計算したスコアを基に計算対象のグループに対する計算を省略するか否かを判定する判定部と、判定部が計算対象のグループに対する計算を省略しないと判定した場合、計算対象のグループに対し、Sparse Group Lassoが最適化問題を解く場合に用いるBlock Coordinate Descentの計算処理を適用する適用部と、を有することを特徴とする。
また、本発明に係るデータ分析方法は、Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出するデータ分析装置が実行するデータ分析方法であって、与えられたデータのグラム行列のノルムを計算する工程と、ノルムを基にデータのグループのうち計算対象のグループに対するスコアを計算する工程と、スコアを基に計算対象のグループに対する計算を省略するか否かを判定する工程と、判定する工程において、計算対象のグループに対する計算を省略しないと判定された場合、計算対象のグループに対し、Sparse Group Lassoが最適化問題を解く場合に用いるBlock Coordinate Descentの計算処理を適用する工程と、を含んだことを特徴とする。
また、本発明に係るデータ分析プログラムは、与えられた多次元データのグラム行列のノルムを計算するステップと、ノルムを基にデータのグループのうち計算対象のグループに対するスコアを計算するステップと、スコアを基に計算対象のグループに対する計算を省略するか否かを判定するステップと、判定するステップにおいて、計算対象のグループに対する計算を省略しないと判定された場合、計算対象のグループに対し、Sparse Group Lassoが最適化問題を解く場合に用いるBlock Coordinate Descentの計算処理を適用するステップと、をコンピュータに実行させることを特徴とする。
本発明によれば、Block Coordinate Descentを高速化することができる。
以下、図面を参照して、本発明の一実施の形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
なお、以下ではベクトル、行列又はスカラーであるAに対し、“^A”と記載する場合は「“A”の直上に“^”が記された記号」と同等であるとする。また、ベクトル、行列又はスカラーであるAに対し、“~A”と記載する場合は「“A”の直上に“~”が記された記号」と同等であるとする。また、ベクトル又は行列であるAに対し、ATはAの転置を表す。
[従来の数理的背景]
まず、以降の説明において必要となる背景知識として、Sparse Group Lasso及びBlock Coordinate Descentについて説明する。
まず、以降の説明において必要となる背景知識として、Sparse Group Lasso及びBlock Coordinate Descentについて説明する。
Sparse Group Lassoのベースは線形回帰モデルであるため、線形回帰問題を考える。nをデータ数とし、それぞれのデータは、p次元の特徴量で表現されるとする。これによって、データは、X∈Rn×pの行列で表現できる。線形回帰は、各データに対して応答を予測する問題であるため、応答は、データ数次元のベクトルy∈Rnとして表現できる。線形回帰は、データと係数ベクトルとの内積を計算することによって予測を行うため、この係数ベクトルは、β∈Rpと表現される。
上記の設定のもと、Sparse Group Lassoは、次の式(1)及び式(2)に示す最適化問題を解くことで、重要な特徴及び、重要な特徴のグループを抽出する。
式(1)及び式(2)において、X(g)∈Rn×pgは、行列Xの部分行列であり、pgは、g番目のグループの特徴量のサイズである。同様に、β(g)は、g番目のグループの係数である。Gは、全グループの数を表す。α∈[0,1]及びλは、ハイパーパラメータであり、人手でチューニングする対象となる。
Block Coordinate Descentは、式(1)及び式(2)に示す最適化問題を解くためのアルゴリズムである。具体的には、以下の2ステップから構成されるアルゴリズムである。
第1ステップは、グループ内の係数がすべてゼロになるか否かをチェックするステップである。第1ステップのチェックに用いられる式は、以下の不等式(3)及び式(4)である。
ここで、関数S(・,・)は、引数z,γに対し、式(5)のように計算される。
不等式(3)が成立するとき、g番目のグループの係数は、全てゼロになる。この場合、アルゴリズムは、次のグループに処理が移り、再び第1ステップの計算を行う。一方、不等式(3)が成立しないとき、係数は非ゼロであると判断され、アルゴリズムは、次の第2ステップを実行する。
第2ステップは、グループ内の係数を更新するステップである。第2ステップにおける係数の更新は、以下の式(6)及び式(7)を用いて実行される。式(6)及び式(7)において、tは、更新幅である。
アルゴリズムは、第1ステップ及び第2ステップを係数全体が収束するまで繰り返す。このアルゴリズムでは、第1ステップの計算にO(ppg+pg
2)が必要となり、第2ステップの計算にO(pg)が必要となる。したがって、Block Coordinate Descentでは、第1ステップがボトルネックとなる。
[本実施の形態の数理的背景]
続いて、本実施の形態の数理的背景について説明する。本実施の形態は、Block Coordinate Descentのボトルネックである第1ステップの計算量を小さくすることによって、高速化を行う。
続いて、本実施の形態の数理的背景について説明する。本実施の形態は、Block Coordinate Descentのボトルネックである第1ステップの計算量を小さくすることによって、高速化を行う。
具体的には、本実施の形態では、第1ステップにおいて使用される不等式(3)を近似することによって、計算量を小さくする。この近似は、不等式(3)内の||S(X(g)Tγ(-g),αλ||の項の上限値U(g)を用いて不等式の成立の可否をチェックすることで実現される。すなわち、第1ステップにおいて、不等式(8)となるようなU(g)を近似値として使い、計算量の大きい不等式(3)に代えて、不等式(9)をチェックする。
U(g)は、データのグラム行列をK=XTX∈Rp×pとしたとき、次のように式(10)及び式(11)のように計算される。
式(10)及び式(11)において、~γ(-g)及び~β(l)は、それぞれγ(-g)及びβ(l)に対応する値である。これらの値は、Block Coordinate Descentのイテレーションの中において、一定間隔で更新される。
^K(g)[l]∈Rpgのi番目の要素は、K(g,l)∈Rpg×plをKの部分行列としたとき、そのi番目の行のL2ノルム||K(g,l)[i;]||2として計算される。
上限値の式(10)の初期値は、定式化通り計算を行う。ただし、その後は、β(g)が更新された場合だけ、以下の式(12)に示す計算を行う。この結果、本実施の形態では、小さな計算量で上限値を更新することができる。
β(g)´は、更新後のβ(g)である。これにより、元のBlock Coordinate Descentの式(3)がO(ppg+pg
2)の計算量を要するのに対し、不等式(9)の計算量は、O(pg)と十分に小さくなる。このため、本実施の形態では、従来のアルゴリズムにおいてボトルネックであった第1ステップの計算を、高速に近似計算することができる。
不等式(9)が成り立つ場合、そのグループgの係数は、全てゼロとなる。この場合、||S(X(g)Tγ(-g),αλ||≦U(g)の関係が成り立つため、誤って係数をゼロとすることはなく、安全に係数をゼロとすることができる。これに対し、不等式(9)が成り立たなかった場合、通常のBlock Coordinate Descentの第1ステップ及び第2ステップを実行する。
本実施の形態は、上記したように、誤って係数をゼロにすることはないため、係数の初期値と更新順序とが同じ場合は、元のBlock Coordinate Descentと同じ解を得ることができる。
[本実施の形態]
そこで、本実施の形態にデータ分析装置について説明する。本実施の形態に係るデータ分析装置は、Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出する線形回帰モデルの学習装置である。
そこで、本実施の形態にデータ分析装置について説明する。本実施の形態に係るデータ分析装置は、Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出する線形回帰モデルの学習装置である。
図1は、実施の形態に係るデータ分析装置の構成の一例を示すブロック図である。図1に示すように、本実施の形態に係るデータ分析装置10は、行列ノルム計算部11(第1の計算部)、スコア計算部12(第2の計算部)、省略判定部13(判定部)、ソルバ適用部14(適用部)、スコア更新部15及び収束判定部16を有する。データ分析装置10は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、CPU(Central Processing Unit)等を含むコンピュータ等に所定のプログラムが読み込まれて、CPUが所定のプログラムを実行することで実現される。
行列ノルム計算部11は、与えられたデータのグラム行列のノルムを計算する。本実施の形態では、式(10)及び式(11)を基に上限値U(g)を計算する必要がある。ここで、式(11)の||^K(g)[l]||2は、データが与えられた時点で事前計算が可能であり、アルゴリズム中で変更されることはない。行列ノルム計算部11は、この||^K(g)[l]||2を計算する機能を有する。||^K(g)[l]||2は、上述の通りグラム行列Kのノルムである。
スコア計算部12は、行列ノルム計算部11が計算したノルムを基に、データのグループのうち計算対象のグループに対するスコアを計算する。スコアは、計算対象のグループの計算を省略するか否かを判定するために使用する値である。スコア計算部12は、式(10)で表される上限値U(g)を全グループで計算する。本実施の形態では、スコアを、上限値U(g)と定める。すなわち、スコアは、不等式(3)内の||S(X(g)Tγ(-g),αλ||の項を近似した際の上限値U(g)そのものである。
省略判定部13は、スコア計算部12が計算したスコアを基に、計算対象のグループの計算を省略するか否かを判定する。省略判定部13は、スコア計算部12が求めたスコア(上限値U(g))を用いて、不等式(9)が成立するか否かを判定する。省略判定部13は、Block Coordinate Descentの計算処理のうち、グループ内の係数がすべてゼロになるか否かをチェックする場合に使用する不等式(3)内の項を該項の上限値U(g)で近似した近似式(不等式(9))を用いて評価を行う。省略判定部13は、不等式(9)が成立する場合には、このグループ内の係数を全て0とする。したがって、省略判定部13は、不等式(9)が成立する場合、このグループについて、通常のBlock Coordinate Descent(ソルバ)の計算処理を省略すると判定する。
ソルバ適用部14は、収束判定部13が計算対象のグループに対する計算を省略しないと判定した場合、通常のBlock Coordinate Descent(ソルバ)の計算処理を実行する。すなわち、ソルバ適用部14は、不等式(9)が成立しなかった場合、ソルバの計算処理を実行する。つまり、ソルバ適用部14は、不等式(3)を用いてループ内の係数がすべてゼロになるか否かをチェックする第1ステップを行う。ソルバ適用部14は、不等式(3)が成立した場合、このグループの係数を全て0にする。これに対し、ソルバ適用部14は、不等式(3)が成立しない場合には、式(6)及び式(7)を用いてグループ内の係数を更新する第2ステップを実行する。
スコア更新部15は、計算対象のグループに対するスコアを更新する。スコア更新部15は、ソルバ適用部14によって係数が更新された場合に、式(12)を用いて、このグループに対するスコア(上限値U(g))を更新する。データ分析装置10は、全グループに対し、省略計算部13による処理を適用し、不等式(9)が成立しなかった場合にソルバ適用部14による計算処理を適用する。
収束判定部16は、全グループに対し、省略計算部13による処理を適用し、式(9)の不等式が成立しなかった場合にソルバ適用部14による計算処理を適用した後、係数が収束したか否かを判定する。収束判定部16は、係数が収束している場合には、収束した係数を返す。収束判定部16は、係数が収束していない場合には、スコア計算部12による処理に戻り、収束するまで処理を繰り返す。
[処理の流れ]
次に、データ分析装置10が使用するアルゴリズム、及び、データ分析装置10が実行する処理の流れについて説明する。図2は、図1に示すデータ分析装置10が使用するアルゴリズムを示す図である。図3は、実施の形態に係るデータ分析方法の処理手順を示すフローチャートである。
次に、データ分析装置10が使用するアルゴリズム、及び、データ分析装置10が実行する処理の流れについて説明する。図2は、図1に示すデータ分析装置10が使用するアルゴリズムを示す図である。図3は、実施の形態に係るデータ分析方法の処理手順を示すフローチャートである。
図2のアルゴリズム及び図3のフローチャートに示すように、行列ノルム計算部11は、与えられたデータのグラム行列のノルムを計算する(図2の1~3行目及び図3のステップS1)。
続いて、スコア計算部12は、式(10)及び式(11)を用いて、式(10)で表される上限値U(g)を、グループに対するスコアとして、全グループで計算する(図2の5~7行目及び図3のステップS2)。
省略判定部13は、スコアからグループの計算の省略可否を判定する。具体的には、省略判定部13は、スコア計算部12が求めたスコア(上限値U(g))を用いて、不等式(9)が成立するか否かを判定する(図3のステップS3)。
そして、省略判定部13は、不等式(9)が成立すると判定した場合(図2の9行目及び図3のステップS3:Yes)、このグループ内の係数は全て0とする(図2の10行目及び図3のステップS4)。
これに対し、省略判定部13が、不等式(9)が成立しないと判定した場合(図2の12行目及び図3のステップS3:No)、ソルバ適用部14は、通常のBlock Coordinate Descent(ソルバ)の計算処理を実行する(図2の12~17行目及び図3のステップS5)。具体的には、ソルバ適用部14は、不等式(3)を用いてループ内の係数がすべてゼロになるか否かをチェックする第1ステップを行い、不等式(3)が成立した場合(図2の12行目)、このグループの係数を全て0にする(図2の13行目)。これに対し、ソルバ適用部14は、不等式(3)が成立しない場合(図2の14行目)、式(6)及び式(7)を用いてグループ内の係数を更新する第2ステップを実行する(図2の15~17行目)。
そして、スコア更新部15は、ソルバ適用部14によって係数が更新された場合(ステップS6:Yes)、式(12)を用いて、グループに対するスコア(上限値U(g))を更新する(図2の18行目及び図3のステップS7)。
データ分析装置10は、全グループに対してステップS3~ステップS7を適用していない場合(図3のステップS8:No)、次のグループに進み(ステップS9)、ステップS3以降の処理を実行する。また、全グループに対してステップS3~ステップS7を適用した場合(図2の8~18行目及び図3のステップS8:Yes)、収束判定部16は、係数が収束したか否かを判定する(図2の19行目及び図3のステップS10)。
係収束判定部16は、係数が収束していると判定した場合(図3のステップS10:Yes)、収束した係数を返して、処理を終了する。収束判定部16は、係数が収束していないと判定した場合(図3のステップS10:No)、ステップS2の処理に戻り、収束するまで、ステップS2~ステップS10の処理を繰り返す。
[実施の形態の効果]
このように、本実施の形態に係るデータ分析装置10は、Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出する線形回帰モデルの学習装置である。そして、データ分析装置10は、与えられたデータのグラム行列のノルムを計算し、データ分析装置10は、データのグループのうち計算対象のグループに対するスコアを計算する。続いて、データ分析装置10は、スコアを基に、計算対象のグループに対する計算を省略するか否かを判定する。
このように、本実施の形態に係るデータ分析装置10は、Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出する線形回帰モデルの学習装置である。そして、データ分析装置10は、与えられたデータのグラム行列のノルムを計算し、データ分析装置10は、データのグループのうち計算対象のグループに対するスコアを計算する。続いて、データ分析装置10は、スコアを基に、計算対象のグループに対する計算を省略するか否かを判定する。
そして、データ分析装置10は、計算対象のグループに対する計算を省略しないと判定した場合、計算対象のグループに対し、Sparse Group Lassoが最適化問題を解く場合に用いるBlock Coordinate Descentの計算処理を適用する。このため、データ分析装置10は、全てのグループに対してBlock Coordinate Descentの計算処理を適用しないため、Block Coordinate Descentを高速化することができる。
この際、データ分析装置10は、Block Coordinate Descentの計算処理のうち、グループ内の係数がすべてゼロになるか否かをチェックする場合に使用する不等式内の項を該項の上限値で近似した近似式を用いて評価を行う。言い換えると、データ分析装置10は、グループ内の係数がすべてゼロになるか否かをチェックする場合に使用する不等式を、より計算量の小さい近似式に置き換える。このため、データ分析装置10は、不等式(3)を用いるBlock Coordinate Descentのボトルネックである、グループの係数がゼロか非ゼロかを判定する第1ステップの計算を軽量化でき、Block Coordinate Descentを高速化することができる。
この結果、本実施の形態によれば、Block Coordinate Descentが高速化されることによって、Sparse Group Lassoによる特徴のグループ抽出処理を高速化することができる。また、本実施の形態では、上述の近似を導入することによってBlock Coordinate Descentを高速化するが、その学習結果は、元のBlock Coordinate Descentと一致することを保証する。このため、本実施の形態によれば、正確にSparse Group Lassoによる特徴グループを抽出することができる。
[実施形態のシステム構成について]
図1に示したデータ分析装置10の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、データ分析装置10の機能の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
図1に示したデータ分析装置10の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、データ分析装置10の機能の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
また、データ分析装置10においておこなわれる各処理は、全部または任意の一部が、CPUおよびCPUにより解析実行されるプログラムにて実現されてもよい。また、データ分析装置10においておこなわれる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。
また、実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述および図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。
[プログラム]
図4は、プログラムが実行されることにより、データ分析装置10が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
図4は、プログラムが実行されることにより、データ分析装置10が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、データ分析装置10の各処理を規定するプログラムは、コンピュータ1000により実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、データ分析装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
10 データ分析装置
11 行列ノルム計算部
12 スコア計算部
13 省略判定部
14 ソルバ適用部
15 スコア更新部
16 収束判定部
11 行列ノルム計算部
12 スコア計算部
13 省略判定部
14 ソルバ適用部
15 スコア更新部
16 収束判定部
Claims (4)
- Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出するデータ分析装置であって、
与えられたデータのグラム行列のノルムを計算する第1の計算部と、
前記ノルムを基に前記データのグループのうち計算対象のグループに対するスコアを計算する第2の計算部と、
前記第2の計算部が計算したスコアを基に前記計算対象のグループに対する計算を省略するか否かを判定する判定部と、
前記判定部が前記計算対象のグループに対する計算を省略しないと判定した場合、前記計算対象のグループに対し、前記Sparse Group Lassoが最適化問題を解く場合に用いるBlock Coordinate Descentの計算処理を適用する適用部と、
を有することを特徴とするデータ分析装置。 - 前記判定部は、前記Block Coordinate Descentの計算処理のうち、グループ内の係数がすべてゼロになるか否かをチェックする場合に使用する不等式内の項を該項の上限値で近似した近似式を用いて評価を行うことを特徴とする請求項1に記載のデータ分析装置。
- Sparse Group Lassoを用いて、多次元データから重要な特徴のグループを抽出するデータ分析装置が実行するデータ分析方法であって、
与えられたデータのグラム行列のノルムを計算する工程と、
前記ノルムを基に前記データのグループのうち計算対象のグループに対するスコアを計算する工程と、
前記スコアを基に前記計算対象のグループに対する計算を省略するか否かを判定する工程と、
前記判定する工程において、前記計算対象のグループに対する計算を省略しないと判定された場合、前記計算対象のグループに対し、前記Sparse Group Lassoが最適化問題を解く場合に用いるBlock Coordinate Descentの計算処理を適用する工程と、
を含んだことを特徴とするデータ分析方法。 - 与えられた多次元データのグラム行列のノルムを計算するステップと、
前記ノルムを基に前記多次元データのグループのうち計算対象のグループに対するスコアを計算するステップと、
前記スコアを基に前記計算対象のグループに対する計算を省略するか否かを判定するステップと、
前記判定するステップにおいて、前記計算対象のグループに対する計算を省略しないと判定された場合、前記計算対象のグループに対し、Sparse Group Lassoが最適化問題を解く場合に用いるBlock Coordinate Descentの計算処理を適用するステップと、
をコンピュータに実行させることを特徴とするデータ分析プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019075952A JP7172816B2 (ja) | 2019-04-11 | 2019-04-11 | データ分析装置、データ分析方法及びデータ分析プログラム |
US17/438,475 US20220147537A1 (en) | 2019-04-11 | 2020-03-26 | Data analysis device, data analysis method, and data analysis program |
PCT/JP2020/013688 WO2020209086A1 (ja) | 2019-04-11 | 2020-03-26 | データ分析装置、データ分析方法及びデータ分析プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019075952A JP7172816B2 (ja) | 2019-04-11 | 2019-04-11 | データ分析装置、データ分析方法及びデータ分析プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020173674A JP2020173674A (ja) | 2020-10-22 |
JP7172816B2 true JP7172816B2 (ja) | 2022-11-16 |
Family
ID=72751095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019075952A Active JP7172816B2 (ja) | 2019-04-11 | 2019-04-11 | データ分析装置、データ分析方法及びデータ分析プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220147537A1 (ja) |
JP (1) | JP7172816B2 (ja) |
WO (1) | WO2020209086A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024029020A1 (ja) * | 2022-08-04 | 2024-02-08 | 日本電信電話株式会社 | データ分析装置、データ分析方法及びデータ分析プログラム |
CN117370975B (zh) * | 2023-12-08 | 2024-03-26 | 国任财产保险股份有限公司 | 一种基于深度学习的sql注入检测方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140309122A1 (en) * | 2013-04-11 | 2014-10-16 | Nec Laboratories America, Inc. | Knowledge-driven sparse learning approach to identifying interpretable high-order feature interactions for system output prediction |
JP6409463B2 (ja) * | 2014-09-30 | 2018-10-24 | 日本電気株式会社 | パターン認識装置、パターン学習装置、パターン学習方法およびパターン学習プログラム |
-
2019
- 2019-04-11 JP JP2019075952A patent/JP7172816B2/ja active Active
-
2020
- 2020-03-26 US US17/438,475 patent/US20220147537A1/en active Pending
- 2020-03-26 WO PCT/JP2020/013688 patent/WO2020209086A1/ja active Application Filing
Non-Patent Citations (1)
Title |
---|
N. Simon, J. Friedman, T. Hastie, and R. Tibshirani,A SPARSE-GROUP LASSO,Journal of Computational and Graphical Statistics,2013, Vol.22(2),Alexandria: Taylor & Francis Group,2013年,Vol.22(2),231-245,https://hastie.su.domains/Papers/SGLpaper.pdf |
Also Published As
Publication number | Publication date |
---|---|
JP2020173674A (ja) | 2020-10-22 |
US20220147537A1 (en) | 2022-05-12 |
WO2020209086A1 (ja) | 2020-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3504666B1 (en) | Asychronous training of machine learning model | |
TWI444844B (zh) | 模擬參數校正技術 | |
JP7566080B2 (ja) | 予測モデルの改良 | |
US11593673B2 (en) | Systems and methods for identifying influential training data points | |
CN109242106B (zh) | 样本处理方法、装置、设备和存储介质 | |
JP7172816B2 (ja) | データ分析装置、データ分析方法及びデータ分析プログラム | |
US9626631B2 (en) | Analysis device, analysis method, and program | |
US11461694B2 (en) | Machine learning implementation in processing systems | |
Amiri et al. | Recursive estimation of nonparametric regression with functional covariate | |
WO2020116211A1 (ja) | 推定装置、最適化装置、推定方法、最適化方法、及びプログラム | |
US9652722B1 (en) | Methods and systems for robust supervised machine learning | |
Chen et al. | Kalman Filtering Under Information Theoretic Criteria | |
KR102601275B1 (ko) | 후성유전체 데이터 분석을 위한 인간 시각 검사를 모방하는 cnn 기반 머신러닝 시스템 및 그 동작 방법 | |
JP6662754B2 (ja) | L1グラフ計算装置、l1グラフ計算方法及びl1グラフ計算プログラム | |
Kleppe | Modified Cholesky Riemann manifold Hamiltonian Monte Carlo: exploiting sparsity for fast sampling of high-dimensional targets | |
Axelsson | Optimality properties of a square block matrix preconditioner with applications | |
JP6954346B2 (ja) | パラメータ推定装置、パラメータ推定方法、及びプログラム | |
US8694289B2 (en) | Bayesian model generating computer product, apparatus, and method | |
JP6810092B2 (ja) | 学習装置、学習方法及び学習プログラム | |
WO2024029020A1 (ja) | データ分析装置、データ分析方法及びデータ分析プログラム | |
WO2021178402A1 (en) | Automated design tool | |
Jian et al. | Laplace error penalty-based M-type model detection for a class of high dimensional semiparametric models | |
JP7384279B2 (ja) | データ処理方法、データ処理装置及びデータ処理プログラム | |
Cheng et al. | Online bootstrap inference for the geometric median | |
Rong et al. | Kernel Cox partially linear regression: Building predictive models for cancer patients' survival |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210721 |
|
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: 20221004 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221017 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7172816 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |