Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6721533B2 - Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program - Google Patents
[go: Go Back, main page]

JP6721533B2 - Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program - Google Patents

Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program Download PDF

Info

Publication number
JP6721533B2
JP6721533B2 JP2017091621A JP2017091621A JP6721533B2 JP 6721533 B2 JP6721533 B2 JP 6721533B2 JP 2017091621 A JP2017091621 A JP 2017091621A JP 2017091621 A JP2017091621 A JP 2017091621A JP 6721533 B2 JP6721533 B2 JP 6721533B2
Authority
JP
Japan
Prior art keywords
calculation
coefficient
lasso
covariance
graphical
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
Application number
JP2017091621A
Other languages
Japanese (ja)
Other versions
JP2018190160A (en
Inventor
靖宏 藤原
靖宏 藤原
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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017091621A priority Critical patent/JP6721533B2/en
Publication of JP2018190160A publication Critical patent/JP2018190160A/en
Application granted granted Critical
Publication of JP6721533B2 publication Critical patent/JP6721533B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、graphical lasso計算装置、graphical lasso計算方法及びgraphical lasso計算プログラムに関する。 The present invention relates to a graphical lasso computing device, a graphical lasso computing method, and a graphical lasso computing program.

graphical lassoは、L正則化を用いて多次元データから無効グラフを計算する手法として最も有名なものの一つである(非特許文献1参照)。ここで、グラフのノードは、多次元データの各データポイントに対応し、エッジは、データポイント間の条件依存性に対応する。 Graphical lasso is one of the most famous methods for calculating an invalid graph from multidimensional data using L 1 regularization (see Non-Patent Document 1). Here, the node of the graph corresponds to each data point of the multidimensional data, and the edge corresponds to the condition dependency between the data points.

graphical lassoは平均μの多変数のガウス分布による共分散行列Σに対してその逆行列Θ(=Σ−1)を推定するものである。もし行列Θの(i,j)要素が非零であれば(θ[i,j]≠0)、i番目とj番目の変数は、条件付依存の関係にあるということになる。graphical lassoは、構造を疎にするために行列Θを推定するときに、Lのペナルティを用いる。行列XをN次元からなるP個の変数に対応するN×Pのデータ行列としたとき、行列Sを、S=XX(行列Xは行列Xの転置とする。)であるような共分散行列とすると、graphical lassoは、以下の式(1)に示す目的関数を最大化することによって、疎なグラフ構造を推定する。 The graphical lasso estimates the inverse matrix Θ (=Σ −1 ) of the covariance matrix Σ based on the multivariate Gaussian distribution with mean μ. If the (i,j) element of the matrix Θ is non-zero (θ[i,j]≠0), it means that the i-th and j-th variables have a conditional dependency. The graphical lasso uses the penalty of L 1 when estimating the matrix Θ to make the structure sparse. When the matrix X is an N×P data matrix corresponding to P variables of N dimensions, the matrix S is such that S=X T X (the matrix X T is the transpose of the matrix X). If the covariance matrix is used, the graphical lasso estimates a sparse graph structure by maximizing the objective function shown in Expression (1) below.

Figure 0006721533
Figure 0006721533

式(1)において、ρは、推定されたグラフの疎具合を決定する正のL正規化パラメータである。また、この(1)式において疎な構造を求める問題は凸になる。graphical lassoは、この問題を解くために座標降下法を用いてlassoの係数の更新を繰り返し行う。具体的には、graphical lassoは、推定する行列の各行及び各列を収束するまでラウンドロビンに計算する。 In Expression (1), ρ is a positive L 1 normalization parameter that determines the degree of sparseness of the estimated graph. Also, the problem of obtaining a sparse structure in this equation (1) becomes convex. The graphical lasso iteratively updates the lasso coefficients using the coordinate descent method to solve this problem. Specifically, the graphical lasso performs round-robin calculation until each row and each column of the matrix to be estimated converges.

そして、計算コストを下げるため、Friedmanらはスクリーニングによる手法を提案した(例えば、非特許文献2参照)。このスクリーニングによる手法は、係数の更新のための計算を連結成分にのみに限定するため、効果的に更新の計算を行う変数を特定することができる。graphical lassoの高速化については、このスクリーニングによる手法が最も知られている。 Then, in order to reduce the calculation cost, Friedman et al. proposed a screening method (see Non-Patent Document 2, for example). This screening method limits the calculation for updating the coefficient to only the connected components, so that it is possible to effectively specify the variable for which the update is calculated. This screening method is the most known method for accelerating the graphical lasso.

Jerome Friedman, Trevor Hastie and Robert Tibshirani, “Sparse inverse covariance estimation with the graphical lasso”, Biostatistics, 9(3):432−441, 2008.Jerome Friedman, Trevor Hastie and Robert Tibshirani, “Sparse inverse covariance estimation with the graphical lasso”, Biostatistics, 9(3):432−441, 2008. Daniela M. Witten, Jerome H. Friedman and Noah Simon, “New Insights and Faster Computations for the Graphical Lasso”, Journal of Computational and Graphical Statistics, 20(4):892−900, 2011.Daniela M. Witten, Jerome H. Friedman and Noah Simon, “New Insights and Faster Computations for the Graphical Lasso”, Journal of Computational and Graphical Statistics, 20(4):892−900, 2011.

しかしながら、このスクリーニングによる手法は、共分散行列の全ての要素を計算しなければならず、graphical lassoの計算コストを有効に減らすことができないという問題がある。 However, this screening method has a problem that all the elements of the covariance matrix must be calculated, and the calculation cost of the graphical lasso cannot be effectively reduced.

本発明は、上記に鑑みてなされたものであって、多次元データから疎な構造を計算するgraphical lassoを高速に計算することができるgraphical lasso計算装置、graphical lasso計算方法及びgraphical lasso計算プログラムを提供することを目的とする。 The present invention has been made in view of the above, and provides a graphical lasso calculation device, a graphical lasso calculation method, and a graphical lasso calculation program that can calculate a graphical lasso that calculates a sparse structure from multidimensional data at high speed. The purpose is to provide.

上述した課題を解決し、目的を達成するために、本発明に係るgraphical lasso計算装置は、多次元データから疎な構造を計算するgraphical lasso計算装置であって、入力される多次元行列の特異値分解(SVD:Singular Value Decomposition)を計算するSVD計算部と、データポイント間の近似の共分散をSVDから計算する近似共分散計算部と、近似によりエッジを有する可能性がある場合に、データポイント間の共分散を計算する共分散計算部と、共分散からなる隣接行列の連結部分であるブロックを計算する連結部分計算部と、ブロックのうち、lassoにおける係数の計算対象の成分を設定する更新成分設定部と、計算対象の成分において、lassoにおける第1の係数を繰り返し計算する係数計算部と、lassoにおける第2の係数が非零であるか否かを確認する非更新成分確認部と、第2の係数が非零であるか否かの確認結果に応じて、計算対象の成分における第1の係数に対する繰り返し計算を継続するか否かを判定する第1の判定部と、全成分の繰り返し計算を継続するか否かを判定する第2の判定部と、を有することを特徴とする。 In order to solve the above-mentioned problems and achieve the object, a graphical lasso calculation device according to the present invention is a graphical lasso calculation device that calculates a sparse structure from multidimensional data, and is a singular matrix of an input multidimensional matrix. An SVD calculator that calculates SVD (Singular Value Decomposition), an approximate covariance calculator that calculates the approximate covariance between data points from the SVD, and data that may have edges due to the approximation. Set the covariance calculator that calculates the covariance between points, the connected part calculator that calculates the block that is the connected part of the adjacency matrix that consists of the covariance, and the component of the block for which the coefficient of lasso is to be calculated. An update component setting unit, a coefficient calculation unit that repeatedly calculates the first coefficient in lasso, and a non-update component confirmation unit that confirms whether or not the second coefficient in lasso is non-zero for the component to be calculated. , A first determination unit that determines whether or not to continue the iterative calculation for the first coefficient in the component to be calculated, according to the confirmation result of whether or not the second coefficient is non-zero, and all components A second determination unit for determining whether or not to continue the iterative calculation of.

本発明によれば、多次元データから疎な構造を計算するgraphical lassoを高速に計算することができる。 According to the present invention, a graphical lasso that calculates a sparse structure from multidimensional data can be calculated at high speed.

図1は、式(3)における係数の求め方を示す図である。FIG. 1 is a diagram showing how to obtain the coefficient in Expression (3). 図2は、本実施の形態に係るgraphical lasso計算装置の要部構成の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of the main configuration of the graphical lasso calculation apparatus according to this embodiment. 図3は、定義1を示す図である。FIG. 3 is a diagram showing Definition 1. 図4は、定義2を示す図である。FIG. 4 is a diagram showing Definition 2. 図5は、補題1を示す図である。FIG. 5 is a diagram showing Lemma 1. 図6は、補題2を示す図である。FIG. 6 is a diagram showing Lemma 2. 図7は、補題3を示す図である。FIG. 7 is a diagram showing Lemma 3. 図8は、実施の形態に係るgraphical lasso計算処理のアルゴリズムを示す図である。FIG. 8 is a diagram showing an algorithm of the graphical lasso calculation process according to the embodiment. 図9は、実施の形態に係るgraphical lasso計算処理の処理手順を示すフローチャートである。FIG. 9 is a flowchart showing the processing procedure of the graphical lasso calculation processing according to the embodiment. 図10は、繰り返し計算打ち切りの条件を示す図である。FIG. 10 is a diagram showing conditions for repeated calculation termination. 図11は、定理1を示す図である。FIG. 11 is a diagram showing Theorem 1. 図12は、定理2を示す図である。FIG. 12 is a diagram showing Theorem 2. 図13は、プログラムが実行されることにより、graphical lasso計算装置が実現されるコンピュータの一例を示す図である。FIG. 13 is a diagram illustrating an example of a computer that realizes a graphical lasso calculation device by executing a program.

以下、図面を参照して、本発明の一実施の形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. The present invention is not limited to this embodiment. In the description of the drawings, the same parts are designated by the same reference numerals.

[従来のgraphical lasso計算手法]
まず、従来のgraphical lasso計算手法について説明する。graphical lassoは、多次元データから疎な構造を計算する計算手法である。例えば、N個の観測とP個の変数とからなるN×Pのデータ行列Xが与えられたとき、graphical lassoは、式(1)の目的関数を最大化することによって、行列Xから共分散行列Σの逆行列Θを推定する。Sを実際の共分散行列とし、Iを単位行列としたときに、graphical lassoは、S=S+ρIとして与えられる行列Wの各行と列とを座標降下法を用いて最適化する。具体的には、まず、graphical lassoでは、行列WとSとを以下の式(2)のように分割する。
[Conventional graphical lasso calculation method]
First, a conventional graphical lasso calculation method will be described. Graphical lasso is a calculation method that calculates sparse structures from multidimensional data. For example, given an N×P data matrix X consisting of N observations and P variables, the graphical lasso maximizes the objective function of equation (1) to obtain a covariance from the matrix X. Estimate the inverse matrix Θ of the matrix Σ. When S is the actual covariance matrix and I is the unit matrix, the graphical lasso optimizes each row and column of the matrix W given as S=S+ρI using the coordinate descent method. Specifically, first, in the graphical lasso, the matrices W and S are divided as in the following Expression (2).

Figure 0006721533
Figure 0006721533

graphical lassoでは、lassoの解を計算する行及び列が最後になるように、繰り返し行列Wとの各行と列を並び替える。続いて、以下の式(3)を示す。 In the graphical lasso, the rows and columns of the iteration matrix W are rearranged so that the row and the column for calculating the lasso solution come last. Then, the following formula (3) is shown.

Figure 0006721533
Figure 0006721533

なお、繰り返し計算において、行列Wの対角要素は不変とする。図1は、式(3)における係数の求め方を示す図である。図1に示すように、式(3)における係数を求める。 Note that the diagonal elements of the matrix W are unchanged in the iterative calculation. FIG. 1 is a diagram showing how to obtain the coefficient in Expression (3). As shown in FIG. 1, the coefficient in Expression (3) is obtained.

ここで、従来、計算コストを下げるため、Friedmanらはスクリーニングによる手法を提案した(非特許文献2参照)。このスクリーニングによる手法は、もし、|S[i,j]|≦ρが、i≠jであるすべてのj番目の変数に成り立てば、i番目の変数は推定されたグラフにおいて孤立したノードになるという知見に基づいている。このため、このスクリーニングによる手法では、|S[i,j]|>ρである場合に、ノードのペアがエッジでつながるグラフの隣接行列を求め、そのグラフの連結成分を求める。このスクリーニングによる手法は、係数の更新のための計算を連結成分にのみに限定するため、効果的に更新の計算を行う変数を特定することができる。 Here, in order to reduce the calculation cost, Friedman et al. proposed a screening method (see Non-Patent Document 2). This screening method is such that if |S[i,j]|≦ρ holds for all j-th variables where i≠j, then the i-th variable becomes an isolated node in the estimated graph. It is based on the knowledge. Therefore, in this screening method, when |S[i,j]|>ρ, an adjacency matrix of a graph in which a pair of nodes is connected by an edge is obtained, and a connected component of the graph is obtained. This screening method limits the calculation for updating the coefficient to only the connected components, so that it is possible to effectively specify the variable for which the update is calculated.

graphical lassoの高速化において、このスクリーニングによる手法は最も知られている。しかしながら、この手法は共分散行列の全ての要素を計算しなければならず、計算コストを有効に減らすことができないという問題がある。この場合の、Tを行列Σの各行及び列における繰り返し計算の回数とし、Bを推定されたグラフの各行及び列における非零成分の数とすると、graphical lassoに必要な計算コストは、O(NP+PBT)になる。 This screening method is the best known method for speeding up the graphical lasso. However, this method has a problem in that all the elements of the covariance matrix must be calculated and the calculation cost cannot be effectively reduced. In this case, letting T be the number of repeated calculations in each row and column of the matrix Σ and B be the number of non-zero components in each row and column of the estimated graph, the computational cost required for the graphical lasso is O(NP 2 +PBT).

[実施の形態の概要]
本実施の形態において用いられる手法によれば、より高速にgraphical lassoを計算することができる。まず、本実施の形態の計算手法の概要を述べた後に、本実施の形態による計算手法の詳細を述べる。なお、各集合を示すシンボルは、明細書中ではアルファベットの大文字で示し、図面中ではアルファベットの大文字を中抜きした字体で示す。
[Outline of Embodiment]
According to the method used in this embodiment, the graphical lasso can be calculated at higher speed. First, an outline of the calculation method according to the present embodiment will be described, and then the details of the calculation method according to the present embodiment will be described. It should be noted that the symbols indicating the respective sets are indicated by uppercase letters in the specification in the specification, and by a font style in which the uppercase letters are omitted in the drawings.

上述したように、従来の手法では、各繰り返し計算において更新される係数の数を減らすために、共分散行列Sの各要素を計算し、|S[i,j]|>ρであればエッジを追加する。これは、既存手法では、連続成分を計算するために行列Sの全ての要素を計算しなければならないことを示している。さらに、従来の手法では、lassoの性質により、ほぼ全ての係数の値が零になるにも関わらず、全ての係数をラウンドロビンに計算する。 As described above, in the conventional method, in order to reduce the number of coefficients updated in each iterative calculation, each element of the covariance matrix S is calculated, and if |S[i,j]|>ρ, the edge is calculated. To add. This indicates that in the existing method, all elements of the matrix S must be calculated in order to calculate the continuous component. Furthermore, in the conventional method, due to the property of lasso, all the coefficients are calculated as round robin even though the values of almost all the coefficients become zero.

これに対し、本実施の形態では、高速に計算を行うために、SVDを用いて、共分散S[i,j]の近似を行い、その上限値と下限値とを高速に計算する。 On the other hand, in the present embodiment, in order to perform the calculation at high speed, the SVD is used to approximate the covariance S[i,j], and the upper limit value and the lower limit value thereof are calculated at high speed.

そして、本実施の形態では、共分散が近似によりエッジを持つ可能性があると判定された場合に正確な共分散の値を計算する。言い換えると、本実施の形態では、SVDを用いて推定された行列において、非零になる成分を持つブロックを繰り返し計算に入る前に高速に求める。また、本実施の形態では、非零要素を持つことを期待される成分を、選択して繰り返し更新を行う。言い換えると、本実施の形態では、推定された行列において、非零になる成分を選択的に更新する。 Then, in the present embodiment, an accurate value of covariance is calculated when it is determined that covariance may have an edge by approximation. In other words, in the present embodiment, in the matrix estimated using SVD, a block having a non-zero component is obtained at high speed before starting repeated calculation. In addition, in the present embodiment, a component expected to have a non-zero element is selected and repeatedly updated. In other words, in the present embodiment, non-zero components in the estimated matrix are selectively updated.

このように、本実施の形態では、共分散が近似によりエッジを持つ可能性があると判定された場合にのみ正確な共分散の値を計算するともに、連結成分において少数の成分のみ繰り返し更新を行う。したがって、本実施の形態によれば、従来の手法よりも繰り返し計算を少ない回数とすることができるため、graphical lassoを高速に計算することができる。 As described above, in the present embodiment, an accurate covariance value is calculated only when it is determined that the covariance may have an edge by approximation, and only a small number of connected components are repeatedly updated. To do. Therefore, according to the present embodiment, the number of repetitive calculations can be reduced as compared with the conventional method, and thus the graphical lasso can be calculated at high speed.

[実施の形態の構成]
まず、図2を用いて、実施の形態に係るgraphical lasso計算装置の構成について説明する。図2は、本実施の形態に係るgraphical lasso計算装置の要部構成の一例を示すブロック図である。図2に示すように、graphical lasso計算装置1は、SVD計算部11、近似共分散計算部12、共分散計算部13、連結部分計算部14、更新成分設定部15、係数計算部16、非更新成分確認部17、繰り返し計算判定部18(第1の判定部)、収束判定部19及び逆行列計算部20を有する。
[Configuration of Embodiment]
First, the configuration of the graphical lasso calculation apparatus according to the embodiment will be described with reference to FIG. FIG. 2 is a block diagram showing an example of the main configuration of the graphical lasso calculation apparatus according to this embodiment. As shown in FIG. 2, the graphical lasso calculation device 1 includes an SVD calculation unit 11, an approximate covariance calculation unit 12, a covariance calculation unit 13, a connected portion calculation unit 14, an update component setting unit 15, a coefficient calculation unit 16, An update component confirmation unit 17, an iterative calculation determination unit 18 (first determination unit), a convergence determination unit 19, and an inverse matrix calculation unit 20 are included.

SVD計算部11は、入力される多次元行列のSVDを計算する。近似共分散計算部12は、近似によりエッジを有する可能性がある場合に、データポイント間の共分散を計算する。共分散計算部13は、近似によりエッジを有する可能性がある場合に、データポイント間の共分散を計算する。連結部分計算部14は、共分散からなる隣接行列の連結部分であるブロックを計算する。 The SVD calculator 11 calculates the SVD of the input multidimensional matrix. The approximate covariance calculation unit 12 calculates the covariance between data points when there is a possibility of having an edge due to the approximation. The covariance calculation unit 13 calculates the covariance between data points when there is a possibility of having edges due to approximation. The connected part calculator 14 calculates a block that is a connected part of an adjacency matrix composed of covariances.

更新成分設定部15は、ブロックのうち、lassoにおける係数の計算対象の成分を設定する。係数計算部16は、計算対象の成分において、lassoにおける第1の係数を繰り返し計算する。第1の係数は、後述の第2の係数のi番目の要素とする列ベクトルである。非更新成分確認部17は、lassoにおける第2の係数が非零であるか否かを確認する。第2の係数は、隣接行列のi(iは任意の数である。)番目の列に対応するi番目のlassoの係数である。 The update component setting unit 15 sets the component of the coefficient to be calculated in lasso among the blocks. The coefficient calculation unit 16 repeatedly calculates the first coefficient in lasso for the component to be calculated. The first coefficient is a column vector that is the i-th element of the second coefficient described later. The non-updated component confirmation unit 17 confirms whether or not the second coefficient in lasso is non-zero. The second coefficient is the coefficient of the i-th lasso corresponding to the i-th (i is an arbitrary number) column of the adjacency matrix.

繰り返し計算判定部18(第1の判定部)は、第2の係数が非零であるか否かの確認結果に応じて、計算対象の成分における第1の係数に対する繰り返し計算を継続するか否かを判定する。繰り返し計算判定部18は、lassoにおける第2の係数が非零でない場合に第1の係数に対する繰り返し計算を継続しないと判定する。収束判定部19(第2の判定部)は、全成分の繰り返し計算を継続するか否かを判定する。逆行列計算部20は、共分散行列Σの逆行列Θを計算する。 The iterative calculation determination unit 18 (first determination unit) determines whether or not to continue the iterative calculation for the first coefficient in the component to be calculated according to the confirmation result of whether or not the second coefficient is nonzero. Determine whether. The iterative calculation determination unit 18 determines not to continue the iterative calculation for the first coefficient when the second coefficient in lasso is not non-zero. The convergence determination unit 19 (second determination unit) determines whether or not to continue the iterative calculation of all components. The inverse matrix calculation unit 20 calculates the inverse matrix Θ of the covariance matrix Σ.

[近似共分散計算処理]
ここで、近似共分散計算部12は、SVDにより共分散の近似を行って該共分散の上限値及び下限値を計算する。このため、近似共分散計算部12による近似共分散計算処理、すなわち、近似共分散計算部12が共分散S[i,j]の上限値と下限値を求める手法について述べる。
[Approximate covariance calculation processing]
Here, the approximate covariance calculator 12 approximates the covariance by SVD to calculate the upper limit value and the lower limit value of the covariance. Therefore, an approximate covariance calculation process by the approximate covariance calculation unit 12, that is, a method by which the approximate covariance calculation unit 12 obtains the upper limit value and the lower limit value of the covariance S[i,j] will be described.

この手法は、N×Pのデータ行列を、SVDによりランクがn(n≪N)の行列で近似する。SVDは直行変換であり、二乗誤差の観点で高い精度となる。図3は、定義1を示す図である。図4は、定義2を示す図である。定義1,2は、近似共分散計算処理の際に必要となる。近似共分散計算部12は、図3に示す手法を用いて、共分散S[i,j]の上限値を求める。ここで繰り返し計算に入る前に列ベクトルのLは、O(NP)の計算コストで求めることができる。同様に行列XのSVDは、O(NPlogn)の計算コストで求めることができる(詳細は、非特許文献1参照)。 In this method, an N×P data matrix is approximated by a matrix of rank n (n<<N) by SVD. SVD is an orthogonal transform and has high accuracy in terms of squared error. FIG. 3 is a diagram showing Definition 1. FIG. 4 is a diagram showing Definition 2. Definitions 1 and 2 are necessary for the approximate covariance calculation process. The approximate covariance calculation unit 12 obtains the upper limit value of the covariance S[i,j] using the method shown in FIG. Here, before the iterative calculation is started, the column vector L 2 can be obtained at a calculation cost of O(NP). Similarly, the SVD of the matrix X can be obtained at a calculation cost of O(NPlogn) (for details, see Non-Patent Document 1).

そして、近似共分散計算部12は、図4に示す手法を用いて、共分散S[i,j]の下限値を求める。図5は、補題1を示す図である。図5に示す補題1に示す関係が、共分散S[i,j]の上限値及び下限値について成り立つ(詳細は、Nathan Halko,Per-Gunnar Martinsson and Joel A. Tropp, “FINDING STRUCTURE WITH RANDOMNESS: PROBABILISTIC ALGORITHMS FOR CONSTRUCTING APPROXIMATE MATRIX DECOMPOSITIONS”, SIAM Review, 53(2):217−288, 2011.参照) Then, the approximate covariance calculation unit 12 obtains the lower limit value of the covariance S[i,j] using the method shown in FIG. FIG. 5 is a diagram showing Lemma 1. The relation shown in Lemma 1 shown in FIG. 5 holds for the upper and lower limits of the covariance S[i,j] (for details, see Nathan Halko, Per-Gunnar Martinsson and Joel A. Tropp, “FINDING STRUCTURE WITH RANDOMNESS: (See PROBABILISTIC ALGORITHMS FOR CONSTRUCTING APPROXIMATE MATRIX DECOMPOSITIONS”, SIAM Review, 53(2):217-288, 2011.)

なお、計算量の観点において、もし行列Xの各列ベクトルのLとSVDとが計算済みであれば、上限値と下限値を計算するのに必要なコストは、図3及び図4に示す定義1,2からO(n)となる。 From the viewpoint of the amount of calculation, if L 2 and SVD of each column vector of the matrix X have been calculated, the costs required to calculate the upper limit value and the lower limit value are shown in FIGS. 3 and 4. From definitions 1 and 2, it becomes O(n).

[共分散計算処理]
続いて、共分散計算部13による共分散計算処理を説明する。共分散計算部13は、共分散の上限値及び下限値を用いてエッジを有する可能性の有無を特定する。データポイント間の共分散を計算する。図6は、補題2を示す図である。
[Covariance calculation processing]
Next, the covariance calculation processing by the covariance calculation unit 13 will be described. The covariance calculation unit 13 specifies whether or not there is a possibility of having an edge by using the upper limit value and the lower limit value of the covariance. Compute the covariance between data points. FIG. 6 is a diagram showing Lemma 2.

補題2より、L正規パラメータρが共分散の上限値以上、かつ、−ρが共分散の下限値以下である場合には、このノードのペアは隣接行列においてエッジを持たない。すなわち、ρが共分散の上限値未満、かつ、−ρが共分散の下限値より大である場合に、このノードのペアは隣接行列においてエッジを持つ可能性を有する。 From Lemma 2, if the L 1 normal parameter ρ is greater than or equal to the upper limit of covariance and −ρ is less than or equal to the lower limit of covariance, then this pair of nodes has no edges in the adjacency matrix. That is, if ρ is less than the upper limit of covariance and −ρ is greater than the lower limit of covariance, then this pair of nodes may have edges in the adjacency matrix.

本実施の形態では、共分散計算部13は、近似によりエッジを有する可能性がある場合、すなわち、ρが共分散の上限値未満、かつ、−ρが共分散の下限値より大である場合にのみ、データポイント間の共分散を計算する。したがって、共分散計算部13は、共分散の上限値及び下限値を用いてスクリーニングによる手法における隣接行列を、図6の補題2に示す性質から高速に計算することができる。 In the present embodiment, the covariance calculation unit 13 determines that there is a possibility of having an edge by approximation, that is, ρ is less than the upper limit of covariance and −ρ is greater than the lower limit of covariance. Only compute the covariance between the data points. Therefore, the covariance calculation unit 13 can quickly calculate the adjacency matrix in the screening method by using the upper limit value and the lower limit value of the covariance from the property shown in Lemma 2 of FIG.

[繰り返し計算処理]
続いて、実施の形態における繰り返し計算処理について説明する。実施の形態では、高速にgraphical lassoを計算するために、係数計算部16は、非零になることが期待されるlassoにおける第1の係数を選択的に収束するまで計算する。係数計算部16によって選択されなかった第1の係数については、非更新成分確認部17が、繰り返し計算の後に非零の係数を持つか否かを確認する。
[Repeated calculation processing]
Next, the iterative calculation process according to the embodiment will be described. In the embodiment, in order to calculate the graphical lasso at high speed, the coefficient calculation unit 16 calculates the first coefficient in the lasso expected to be non-zero until it selectively converges. For the first coefficient not selected by the coefficient calculation unit 16, the non-updated component confirmation unit 17 confirms whether or not it has a non-zero coefficient after the repeated calculation.

この処理では、|S[i,j]|>ρが成り立てば逆行列Θの(i,j)要素は非零の値を持つことが期待され、それに対応するlassoの係数も非零になる可能性が高いという知見に基づいている。Bをスクリーニングによる手法から得られたi番目の変数を含む連結成分のブロックとし、集合Bを集合B={j|B=B}であるような集合とすると、スクリーニングによる手法では、i番目の係数を集合B−iを用いて計算する。一方、本実施の形態では、係数計算部16は、i番目の変数に対して係数を、以下の式(4)として初期化される集合Uを用いて収束するまで式(3)を用いて計算を行う。 In this process, if |S[i,j]|>ρ holds, the (i,j) element of the inverse matrix Θ is expected to have a nonzero value, and the corresponding lasso coefficient also becomes nonzero. It is based on the finding that it is likely. A block of connected components comprising the i-th variable resulting B i from techniques by screening a set of set B i B i = | When set as a {j B j = B i} , technique by screening Then, the i-th coefficient is calculated using the set B i −i. On the other hand, in the present embodiment, the coefficient calculation unit 16 uses Equation (3) until the coefficients for the i-th variable are converged using the set U i initialized as Equation (4) below. Calculate.

Figure 0006721533
Figure 0006721533

ここで集合U⊆集合Bの関係であるあることは明らかである。そして、また上限値と下限値を用いて集合Uは高速に求めることができる。 Here, it is clear that the relationship is the set U i ⊆ set B i . Then, the set U i can be obtained at high speed by using the upper limit value and the lower limit value.

また、U´を以下の式(5)であるような集合とする。 Also, let U i ′ be a set as in the following expression (5).

Figure 0006721533
Figure 0006721533

非更新成分確認部17は、集合U´に含まれる係数が非零の係数を持つのか繰り返し計算の後に確認する。結果として、本実施の形態では、i番目の係数を計算するために、集合U+集合U´=集合B−iであるため、集合B−iを用いてi番目の係数を計算するスクリーニングによる手法と同じ結果を得ることができる。図7は、補題3を示す図である。本実施の形態は、理論的に補題3の性質に基づいている。 The non-updated component confirmation unit 17 confirms after repeated calculation whether the coefficients included in the set U i ′ have non-zero coefficients. As a result, in the present embodiment, in order to calculate the i-th coefficient, the set U i +the set U i ′=the set B i −i, so the i-th coefficient is calculated using the set B i −i. The same results can be obtained as with the computational screening method. FIG. 7 is a diagram showing Lemma 3. The present embodiment is theoretically based on the property of Lemma 3.

従来のスクリーニングよる手法が集合Bに含まれる係数をランドロビンに更新するのに対して、補題3は、本実施の形態が、集合U´に含まれる係数を確認することにより推定の結果に影響を与えることなく、集合U(集合U⊆集合B)に含まれる係数を選択的に更新することができることを示している。 Whereas the conventional screening method updates the coefficients included in the set B i to Land Robin, the lemma 3 is that the present embodiment confirms the coefficients included in the set U i ′ to obtain the result of estimation. It is shown that the coefficients included in the set U i (set U i ⊆ set B i ) can be selectively updated without affecting the.

本実施の形態では、集合Uに含まれる係数は繰り返し更新される一方、集合U´に含まれる係数に対しては繰り返し計算を行わない。この結果、本実施の形態によれば、係数を選択的に収束させているため、高速な処理が可能である。そして、本実施の形態では、非更新成分確認部17が、集合U´に非零の係数が含まれているか否かを確認し、集合U´に非零の係数が含まれていることを確認した場合、その係数を集合Uに追加する。そして、再帰的に係数が収束し、i∈集合U´であるような全てのiに対し、以下の式(6)となるまで処理を行う。 In the present embodiment, the coefficients included in the set U i are repeatedly updated, but the coefficients included in the set U i ′ are not repeatedly calculated. As a result, according to the present embodiment, since the coefficients are selectively converged, high speed processing is possible. In the present embodiment, the non-updated components check unit 17 'checks whether contains nonzero coefficients in the set U i' set U i contains nonzero coefficients in If so, add the coefficient to the set U i . Then, the coefficients are recursively converged, and the processing is performed for all i such that iε set U i ′ until the following expression (6) is satisfied.

Figure 0006721533
Figure 0006721533

[graphical lasso計算処理の処理手順]
図8及び図9を参照して、実施の形態に係るgraphical lasso計算処理の処理手順について説明する。図8は、実施の形態に係るgraphical lasso計算処理のアルゴリズムを示す図である。また、図9は、実施の形態に係るgraphical lasso計算処理の処理手順を示すフローチャートである。
[Processing procedure for graphical lasso calculation]
The processing procedure of the graphical lasso calculation processing according to the embodiment will be described with reference to FIGS. 8 and 9. FIG. 8 is a diagram showing an algorithm of the graphical lasso calculation process according to the embodiment. FIG. 9 is a flowchart showing the processing procedure of the graphical lasso calculation processing according to the embodiment.

図8に示すAlgorithm1において、行列Aは、P×Pの隣接行列であり、mは、スクリーニングによる手法で得られる連結成分のブロックの数とする。そして、本実施の形態に係るgraphical lasso計算処理では、ブロックを一つ一つ処理していく。また、行列S(i)、行列W(i)、単位行列I(i)、ベクトルw(i) 12,w(i) 11、逆行列Θ(i)は、それぞれiのブロックに対応する行列S、行列W、単位行列I、ベクトルw12,w11、逆行列Θとする。 In Algorithm 1 shown in FIG. 8, matrix A is a P×P adjacency matrix, and m is the number of blocks of connected components obtained by the screening method. Then, in the graphical lasso calculation process according to the present embodiment, the blocks are processed one by one. Further, the matrix S (i) , the matrix W (i) , the unit matrix I (i) , the vectors w (i) 12 , w (i) 11 , and the inverse matrix Θ (i) are matrices corresponding to the blocks of i, respectively. S, matrix W, unit matrix I, vectors w 12 , w 11 , and inverse matrix Θ.

本実施の形態では、まず、SVD計算部11が、データ行列XのSVDを計算し,隣接行列Aを初期化する(図8に示すアルゴリズム1,2行目、図9に示すステップS1,S2)。続いて、隣接行列のエッジを高速に求めるため、近似共分散計算部12が、行列Sの共分散の上限値と下限値とを計算し、もしこれらが補題2のエッジに対する条件を満たしたとき、共分散計算部13は、正確な共分散の値を計算する(図8に示すアルゴリズム3〜9行目、図9に示すステップS3〜S11)。 In the present embodiment, first, the SVD calculation unit 11 calculates the SVD of the data matrix X and initializes the adjacency matrix A (the first and second rows of the algorithm shown in FIG. 8 and steps S1 and S2 shown in FIG. 9). ). Subsequently, in order to obtain the edge of the adjacency matrix at high speed, the approximate covariance calculation unit 12 calculates the upper limit value and the lower limit value of the covariance of the matrix S, and if these satisfy the condition for the edge of Lemma 2. The covariance calculation unit 13 calculates an accurate value of covariance (algorithms 3 to 9 in FIG. 8, steps S3 to S11 in FIG. 9).

そして、連結部分計算部14は、行列Aから連結成分のブロックを計算する(図8に示すアルゴリズム10行目、図9のステップS12)。更新成分設定部15が、lassoにおける係数の計算対象のブロック1〜mを設定すると(図8に示すアルゴリズム11行目、図9のステップS13)、係数計算部16が、それぞれのブロックに対して、まず行列S()と行列W()とを計算する(図8に示すアルゴリズム12〜13行目、図9のステップS14,S15)。そして、係数計算部16が、集合Uを用いて繰り返し係数を収束するまで計算する(図8に示すアルゴリズム15〜18行目、図9のステップS16〜ステップS18)。 Then, the connected part calculation unit 14 calculates a block of connected components from the matrix A (10th line in the algorithm shown in FIG. 8, step S12 in FIG. 9). When the update component setting unit 15 sets the blocks 1 to m that are the coefficient calculation targets in lasso (the 11th line in the algorithm shown in FIG. 8, step S13 in FIG. 9), the coefficient calculation unit 16 sets First, the matrix S( i ) and the matrix W( i ) are calculated (algorithm lines 12 to 13 shown in FIG. 8, steps S14 and S15 in FIG. 9). Then, the coefficient calculation unit 16 calculates the iterative coefficient using the set U j until it converges (the 15th to 18th lines of the algorithm shown in FIG. 8, steps S16 to S18 in FIG. 9).

図10は、繰り返し計算打ち切りの条件を示す図である。非更新成分確認部17は、補題3に基づき、lassoにおける第2の係数が非零であるか否かを確認し、もし、図10に示す関係が成り立つと判断した場合、繰り返し計算判定部18は、繰り返し計算を打ち切る(図8に示すアルゴリズム19〜24行目、図9に示すステップS19〜S25)。 FIG. 10 is a diagram showing conditions for repeated calculation termination. Based on Lemma 3, the non-updated component confirmation unit 17 confirms whether or not the second coefficient in lasso is non-zero, and if it is determined that the relationship shown in FIG. Cancels the iterative calculation (algorithms 19 to 24 in FIG. 8, steps S19 to S25 in FIG. 9).

そして、更新成分設定部15は、繰り返し計算の後で行列W()を更新する(図8に示すアルゴリズム25行目、図9に示すステップS26)。続いて、収束判定部19は、行列W()が収束するか否かを判断する(図9に示すステップS27)。 Then, the update component setting unit 15 updates the matrix W( i ) after the iterative calculation (the 25th line of the algorithm shown in FIG. 8, step S26 shown in FIG. 9). Subsequently, the convergence determination unit 19 determines whether or not the matrix W( i ) converges (step S27 shown in FIG. 9).

収束判定部19は、行列W()が収束すると判断しない場合には(図9に示すステップS27:No)、これらの処理(図8に示すアルゴリズム11〜25行目、図9に示すステップS13〜S25)を行う(図8に示すアルゴリズム26行目)。 When the convergence determination unit 19 does not determine that the matrix W( i ) converges (step S27: No shown in FIG. 9), these processes (algorithms 11 to 25th line shown in FIG. 8, steps shown in FIG. 9). S13 to S25) are performed (the 26th line of the algorithm shown in FIG. 8).

続いて、行列W()が収束すると収束判定部19が判断した場合には(図9に示すステップS27:Yes)、逆行列計算部20は、行列W()から逆行列Θ()を計算し(図8に示すアルゴリズム27行目、図9に示すステップS28)、計算した逆行列Θ()を出力して(図9に示すステップS29)、graphical lasso計算処理を終了する。 Then, when the convergence determination unit 19 determines that the matrix W( i ) converges (step S27: Yes shown in FIG. 9), the inverse matrix calculation unit 20 calculates the inverse matrix Θ( i from the matrix W( i ). ) Is calculated (the 27th line of the algorithm shown in FIG. 8, step S28 shown in FIG. 9), the calculated inverse matrix Θ( i ) is output (step S29 shown in FIG. 9), and the graphical lasso calculation process ends. ..

そして、上記Algorithm1に対して、定理1,2に示す性質が成り立つ。図11は、定理1を示す図である。図12は、定理2を示す図である。 Then, for the above Algorithm 1, the properties shown in Theorems 1 and 2 hold. FIG. 11 is a diagram showing Theorem 1. FIG. 12 is a diagram showing Theorem 2.

[本実施の形態の効果]
このように、本実施の形態では、共分散が近似によりエッジを持つ可能性があると判定された場合にのみ正確な共分散の値を計算するともに、連結成分において少数の非零要素を持つことを期待される成分のみ繰り返し更新を行う。したがって、本実施の形態によれば、従来の手法よりも繰り返し計算を少ない回数とすることができるため、graphical lassoを高速に計算することができる。
[Effects of this Embodiment]
As described above, in this embodiment, an accurate covariance value is calculated only when it is determined that the covariance may have an edge by approximation, and the connected component has a small number of non-zero elements. Only the expected components are updated repeatedly. Therefore, according to the present embodiment, the number of repetitive calculations can be reduced as compared with the conventional method, and thus the graphical lasso can be calculated at high speed.

[実施の形態のシステム構成について]
図1に示したgraphical lasso計算装置1の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、graphical lasso計算装置1の機能の分散及び統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
[System configuration of the embodiment]
Each component of the graphical lasso calculation device 1 shown in FIG. 1 is functionally conceptual, and does not necessarily have to be physically configured as illustrated. That is, the specific form of the distribution and integration of the functions of the graphical lasso computing device 1 is not limited to the one shown in the figure, and all or part of the functional or functional units may be used in arbitrary units according to various loads and usage conditions. It can be physically distributed or integrated.

また、graphical lasso計算装置1においておこなわれる各処理は、全部または任意の一部が、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、及び、CPU、GPUにより解析実行されるプログラムにて実現されてもよい。また、graphical lasso計算装置1においておこなわれる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。 Further, each processing performed in the graphical lasso computing device 1 is realized by a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and a program that is analyzed and executed by the CPU and the GPU. May be done. Further, each processing performed in the graphical lasso calculation device 1 may be realized as hardware by a wired logic.

また、実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述及び図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。 Further, of the processes described in the embodiments, all or part of the processes described as being automatically performed can be manually performed. Alternatively, all or part of the processing described as being manually performed can be automatically performed by a known method. In addition, the processing procedure, control procedure, specific name, and information including various data and parameters described above and illustrated can be appropriately changed unless otherwise specified.

[プログラム]
図13は、プログラムが実行されることにより、graphical lasso計算装置1が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
[program]
FIG. 13 is a diagram illustrating an example of a computer in which the graphical lasso calculation device 1 is realized by executing a program. The computer 1000 has, for example, a memory 1010 and a CPU 1020. The computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These units are connected by a bus 1080.

メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。 The memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012. The ROM 1011 stores, for example, a boot program such as a BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to the hard disk drive 1090. The disk drive interface 1040 is connected to the disk drive 1100. For example, a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100. The serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120. The video adapter 1060 is connected to the display 1130, for example.

ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、graphical lasso計算装置1の各処理を規定するプログラムは、コンピュータ1000により実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、graphical lasso計算装置1における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。 The hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, the program defining each process of the graphical lasso computing device 1 is implemented as the program module 1093 in which the code executable by the computer 1000 is described. The program module 1093 is stored in the hard disk drive 1090, for example. For example, the hard disk drive 1090 stores a program module 1093 for executing the same processing as the functional configuration of the graphical lasso computing device 1. The hard disk drive 1090 may be replaced with an SSD (Solid State Drive).

また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。 Further, the setting data used in the processing of the above-described embodiment is stored as the program data 1094 in, for example, the memory 1010 or the hard disk drive 1090. Then, the CPU 1020 reads out the program module 1093 and the program data 1094 stored in the memory 1010 or the hard disk drive 1090 to the RAM 1012 as necessary and executes them.

なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN、WAN等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。 The program module 1093 and the program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN, WAN, etc.). Then, the program module 1093 and the program data 1094 may be read by the CPU 1020 from another computer via the network interface 1070.

以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。 The embodiments to which the invention made by the present inventor is applied have been described above, but the present invention is not limited to the description and the drawings, which form a part of the disclosure of the present invention according to the present embodiment. That is, all other embodiments, examples, operation techniques and the like made by those skilled in the art based on the present embodiment are included in the scope of the present invention.

1 graphical lasso計算装置
11 SVD計算部
12 近似共分散計算部
13 共分散計算部
14 連結部分計算部
15 更新成分設定部
16 係数計算部
17 非更新成分確認部
18 繰り返し計算判定部
19 収束判定部
20 逆行列計算部
1 graphical lasso calculation device 11 SVD calculation unit 12 approximate covariance calculation unit 13 covariance calculation unit 14 connected part calculation unit 15 update component setting unit 16 coefficient calculation unit 17 non-updated component confirmation unit 18 iterative calculation determination unit 19 convergence determination unit 20 Inverse matrix calculator

Claims (6)

多次元データから疎な構造を計算するgraphical lasso計算装置であって、
入力される多次元行列の特異値分解(SVD:Singular Value Decomposition)を計算するSVD計算部と、
データポイント間の近似の共分散をSVDから計算する近似共分散計算部と、
近似によりエッジを有する可能性がある場合に、データポイント間の共分散を計算する共分散計算部と、
共分散からなる隣接行列の連結部分であるブロックを計算する連結部分計算部と、
前記ブロックのうち、lassoにおける係数の計算対象の成分を設定する更新成分設定部と、
前記計算対象の成分において、lassoにおける第1の係数を繰り返し計算する係数計算部と、
lassoにおける第2の係数が非零であるか否かを確認する非更新成分確認部と、
前記第2の係数が非零であるか否かの確認結果に応じて、前記計算対象の成分における前記第1の係数に対する繰り返し計算を継続するか否かを判定する第1の判定部と、
全成分の繰り返し計算を継続するか否かを判定する第2の判定部と、
を有することを特徴とするgraphical lasso計算装置。
A graphical lasso computing device for computing a sparse structure from multidimensional data,
An SVD calculator that calculates a Singular Value Decomposition (SVD) of the input multidimensional matrix,
An approximate covariance calculator that calculates the approximate covariance between data points from SVD,
A covariance calculator that calculates the covariance between data points when there is a possibility of having edges due to approximation,
A connected part calculator that calculates a block that is the connected part of an adjacency matrix consisting of covariances,
Of the blocks, an update component setting unit that sets a component of a coefficient calculation target in lasso,
A coefficient calculation unit that repeatedly calculates a first coefficient in lasso in the component to be calculated;
a non-updated component confirmation unit that confirms whether or not the second coefficient in lasso is non-zero;
A first determination unit that determines whether or not to continue the iterative calculation for the first coefficient in the component to be calculated, according to the confirmation result of whether or not the second coefficient is non-zero;
A second determination unit that determines whether or not to continue the iterative calculation of all components;
And a graphical lasso computing device.
前記近似共分散計算部は、SVDにより共分散の近似を行って該共分散の上限値及び下限値を計算し、
前記共分散計算部は、前記共分散の上限値及び下限値を用いて前記エッジを有する可能性の有無を特定することを特徴とする請求項1に記載のgraphical lasso計算装置。
The approximate covariance calculation unit performs an approximation of covariance by SVD to calculate an upper limit value and a lower limit value of the covariance,
The graphical lasso calculation apparatus according to claim 1, wherein the covariance calculation unit uses the upper limit value and the lower limit value of the covariance to identify the presence or absence of the possibility of having the edge.
前記第2の係数は、前記計算対象の成分のi(iは任意の数である。)番目の列に対応するi番目のlassoの係数であり、
前記第1の係数は、前記第2の係数のi番目の要素とする列ベクトルであることを特徴とする請求項1または2に記載のgraphical lasso計算装置。
The second coefficient is the coefficient of the i-th lasso corresponding to the i-th (i is an arbitrary number) column of the component to be calculated,
3. The graphical lasso calculation device according to claim 1, wherein the first coefficient is a column vector which is an i-th element of the second coefficient.
前記第1の判定部は、前記第2の係数が非零でない場合に前記第1の係数に対する繰り返し計算を継続しないと判定し、前記第2の係数が非零である場合に前記第1の係数に対する繰り返し計算を継続すると判定することを特徴とする請求項1〜3のいずれか一つに記載のgraphical lasso計算装置。 The first determination unit determines that the iterative calculation for the first coefficient is not continued when the second coefficient is non-zero, and the first determination unit determines when the second coefficient is non-zero. 4. The graphical lasso calculation device according to claim 1, wherein it is determined that the iterative calculation for the coefficient is continued. 多次元データから疎な構造を計算するgraphical lasso計算装置が実行するgraphical lasso計算方法であって、
入力される多次元行列のSVDを計算するSVD計算工程と、
データポイント間の近似の共分散をSVDから計算する近似共分散計算工程と、
近似によりエッジを有する可能性がある場合に、データポイント間の共分散を計算する共分散計算工程と、
共分散からなる隣接行列の連結部分であるブロックを計算する連結部分計算工程と、
前記ブロックのうち、lassoにおける係数の計算対象の成分を設定する更新成分設定工程と、
前記計算対象の成分において、lassoにおける第1の係数を繰り返し計算する係数計算工程と、
lassoにおける第2の係数が非零であるか否かを確認する非更新成分確認工程と、
前記第2の係数が非零であるか否かの確認結果に応じて、前記計算対象の成分における前記第1の係数に対する繰り返し計算を継続するか否かを判定する第1の判定工程と、
全成分の繰り返し計算を継続するか否かを判定する第2の収束判定工程と、
を有することを特徴とするgraphical lasso計算方法。
A graphical lasso calculation method executed by a graphical lasso calculation device that calculates a sparse structure from multidimensional data,
An SVD calculation step for calculating the SVD of the input multidimensional matrix,
An approximate covariance calculation step of calculating an approximate covariance between data points from SVD,
A covariance calculation step of calculating a covariance between data points when there is a possibility that the approximation has edges.
A connected part calculation step of calculating a block that is a connected part of an adjacency matrix composed of covariance,
Of the blocks, an update component setting step of setting a component of a coefficient calculation target in lasso,
A coefficient calculation step of repeatedly calculating a first coefficient in lasso in the component to be calculated;
a non-updated component confirmation step of confirming whether or not the second coefficient in lasso is non-zero,
A first determining step of determining whether or not to continue the iterative calculation for the first coefficient in the component to be calculated, in accordance with the confirmation result of whether or not the second coefficient is non-zero;
A second convergence determination step of determining whether or not to repeat the iterative calculation of all components;
A method of computing a graphical lasso, characterized by having.
コンピュータを、請求項1〜4のいずれか一つに記載のgraphical lasso計算装置として機能させるためのgraphical lasso計算プログラム。 A graphical lasso calculation program for causing a computer to function as the graphical lasso calculation device according to claim 1.
JP2017091621A 2017-05-02 2017-05-02 Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program Active JP6721533B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017091621A JP6721533B2 (en) 2017-05-02 2017-05-02 Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017091621A JP6721533B2 (en) 2017-05-02 2017-05-02 Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program

Publications (2)

Publication Number Publication Date
JP2018190160A JP2018190160A (en) 2018-11-29
JP6721533B2 true JP6721533B2 (en) 2020-07-15

Family

ID=64479800

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017091621A Active JP6721533B2 (en) 2017-05-02 2017-05-02 Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program

Country Status (1)

Country Link
JP (1) JP6721533B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5186322B2 (en) * 2008-09-26 2013-04-17 インターナショナル・ビジネス・マシーンズ・コーポレーション Time series data analysis system, method and program

Also Published As

Publication number Publication date
JP2018190160A (en) 2018-11-29

Similar Documents

Publication Publication Date Title
Song et al. Kernel embeddings of conditional distributions: A unified kernel framework for nonparametric inference in graphical models
JP7283065B2 (en) Estimation device, optimization device, estimation method, optimization method, and program
Galatolo et al. An elementary approach to rigorous approximation of invariant measures
JP5349407B2 (en) A program to cluster samples using the mean shift procedure
CN109997131B (en) Method and electronic apparatus for generating input for kernel-based machine learning systems
CN113646782A (en) Information processing device, information processing system, information processing method, storage medium, and program
Galatolo et al. Rigorous computation of invariant measures and fractal dimension for maps with contracting fibers: 2D Lorenz-like maps
Habring et al. Subgradient Langevin methods for sampling from nonsmooth potentials
EP4141751A1 (en) Error mitigation for sampling on quantum devices
JP2022048780A (en) Calculation apparatus, calculation method, and program
Verma et al. A hybrid self-constrained genetic algorithm (HSGA) for digital image Denoising based on PSNR improvement
CN115294396B (en) Backbone network training method and image classification method
JP6954346B2 (en) Parameter estimator, parameter estimator, and program
JP6721533B2 (en) Graphical lasso computing device, graphical lasso computing method and graphical lasso computing program
JP2018073285A (en) L1 graph calculation device, L1 graph calculation method, and L1 graph calculation program
Khalili An overview of the new feature selection methods in finite mixture of regression models
Lindsey Fast randomized entropically regularized semidefinite programming
Kushida et al. Iterative approximation of preconditioning matrices through krylov-type solver iterations
JP6721535B2 (en) LLE calculation device, LLE calculation method, and LLE calculation program
WO2020177863A1 (en) Training of algorithms
US9355363B2 (en) Systems and methods for virtual parallel computing using matrix product states
JP6740193B2 (en) Parameter estimation device, parameter estimation method, and parameter estimation program
Gao et al. Quantum maximum entropy inference and Hamiltonian learning
Xu et al. A method for high-dimensional smoothing
Elanbari et al. Advanced computation of a sparse precision matrix hadap: A hadamard-dantzig estimation of a sparse precision matrix

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200327

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200618

R150 Certificate of patent or registration of utility model

Ref document number: 6721533

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350