JP2021039580A - Information processing apparatus, information processing method, and program - Google Patents

Information processing apparatus, information processing method, and program Download PDF

Info

Publication number
JP2021039580A
JP2021039580A JP2019161031A JP2019161031A JP2021039580A JP 2021039580 A JP2021039580 A JP 2021039580A JP 2019161031 A JP2019161031 A JP 2019161031A JP 2019161031 A JP2019161031 A JP 2019161031A JP 2021039580 A JP2021039580 A JP 2021039580A
Authority
JP
Japan
Prior art keywords
matrix
metric
data
vector
data group
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
JP2019161031A
Other languages
Japanese (ja)
Other versions
JP7096218B2 (en
Inventor
一則 松本
Kazunori Matsumoto
一則 松本
啓一郎 帆足
Keiichiro Hoashi
啓一郎 帆足
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.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2019161031A priority Critical patent/JP7096218B2/en
Publication of JP2021039580A publication Critical patent/JP2021039580A/en
Application granted granted Critical
Publication of JP7096218B2 publication Critical patent/JP7096218B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

To put label propagation into practical use in semi-supervised learning using multidimensional Delaunay division.SOLUTION: A data acquisition unit 30 acquires a labeled data group in which data is with a label indicating a class that data belongs and an unlabeled data group for which the class that the data belongs is unknown. A matrix calculation unit 31 calculates a metering matrix formed by arranging metering vectors that have metering elements indicating similarity between the data. A matrix compression unit 32 generates a compression metering matrix formed by arranging compression metering vectors that are obtained by compressing the dimensions of each metering vector forming the metering matrix. A division unit 33 performs multidimensional Delaunay division for points that each of the compression metering vectors is mapped in multidimensional space. A adjacency matrix acquisition unit 34 acquires connection relationship of each point after the Delaunay division as an adjacency matrix. A label propagation unit 35 propagates the label to each data forming the unlabeled data group based on the adjacency matrix and the labels of the labeled data group.SELECTED DRAWING: Figure 1

Description

本発明は情報処理装置、情報処理方法、及びプログラムに関し、特に、半教師有り学習と呼ばれる機械学習分野の技術に関する。 The present invention relates to an information processing apparatus, an information processing method, and a program, and more particularly to a technique in a machine learning field called semi-supervised learning.

例えば、非特許文献1には、データ間の類似度をガウシアンカーネルとして表すことによってデータ多様体の計量を得たうえで、ラベル有りデータからラベル無しデータにラベル伝播を行う方法が開示されている。 For example, Non-Patent Document 1 discloses a method of performing label propagation from labeled data to unlabeled data after obtaining a metric of a data manifold by expressing the similarity between data as a Gaussian kernel. ..

また、非特許文献2では、データの隣接関係に基づいてラベル無しデータを学習に利用する半教師有り学習の手法において、データの隣接関係を適切に表すことを目的として、ドロネー三角形分割を多次元に拡張し、データの隣接性を抽出することで広域的な性質を組み込む技術が開示されている。 Further, in Non-Patent Document 2, in a semi-supervised learning method in which unlabeled data is used for learning based on the adjacency of data, Delaunay triangulation is multidimensionalized for the purpose of appropriately expressing the adjacency of data. A technique is disclosed that extends to and incorporates wide-area properties by extracting data adjacencies.

Zhou, D., Bousquet, O., Lal, N. T., Weston, J., Scholkopf, B. Learning with local and global consistency, Proceeding of Advances in neural information processing systems 2004.Zhou, D., Bousquet, O., Lal, N.T., Weston, J., Scholkopf, B. Learning with local and global consistency, Proceeding of Advances in neural information processing systems 2004. 松本一則, 帆足啓一郎, 池田和史, ドロネー分割を用いたラベル伝搬型半教師あり学習の検討, 信学技報 116(209), 211-214, 2016-09-05.Kazunori Matsumoto, Keiichiro Hoashi, Kazushi Ikeda, Study of label-propagated semi-supervised learning using Delaunay division, Shingaku Giho 116 (209), 211-214, 2016-09-05.

非特許文献2に開示されている技術では、多次元版ドロネー分割によって、広域的なデータも考慮したグラフ構造を得ている。しかしながら、非特許文献1に開示されている技術のような計量をデータ間の類似度として使用する場合、計量の次元数はラベル有り及びラベル無しのデータの総数に等しくなり、次元数が非常に大きくなる。この結果、多次元版のドロネー分割の計算量が膨大になってしまい、現実的な時間での計算が困難となるという問題が生じていた。 In the technique disclosed in Non-Patent Document 2, a graph structure considering a wide range of data is obtained by the multidimensional version of Delaunay division. However, when a metric such as the technique disclosed in Non-Patent Document 1 is used as the similarity between data, the number of dimensions of the metric is equal to the total number of labeled and unlabeled data, and the number of dimensions is very large. growing. As a result, the amount of calculation for the Delaunay division of the multidimensional version becomes enormous, and there is a problem that the calculation in a realistic time becomes difficult.

本発明はこれらの点に鑑みてなされたものであり、多次元のドロネー分割を利用した半教師有り学習におけるラベル伝搬を実用化するための技術を提供することを目的とする。 The present invention has been made in view of these points, and an object of the present invention is to provide a technique for putting label propagation into practical use in semi-supervised learning using multidimensional Delaunay division.

本発明の第1の態様は、情報処理装置である。この装置は、属するクラスを示すラベルが付されたラベル有りデータ群と、属するクラスが不明であるラベル無しデータ群とを取得するデータ取得部と、前記ラベル有りデータ群と前記ラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと当該1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルを、データ毎に並べて構成される計量行列を算出する行列算出部と、前記計量行列を構成する各計量ベクトルの次元を圧縮した圧縮計量ベクトルを並べて構成される圧縮計量行列を生成する行列圧縮部と、前記圧縮計量ベクトルそれぞれの要素を座標とする複数の点を前記圧縮計量ベクトルの次元数と同次元の多次元空間にマッピングし、前記複数の点に対して多次元のドロネー分割をする分割部と、ドロネー分割後の各点の接続関係を隣接行列として取得する隣接行列取得部と、前記隣接行列及び前記ラベル有りデータ群のラベルに基づいて、前記ラベル無しデータ群を構成する各データにラベルを伝搬させるラベル伝搬部と、を備える。 The first aspect of the present invention is an information processing device. This device includes a data acquisition unit that acquires a labeled data group with a label indicating a class to which it belongs, an unlabeled data group whose class belongs to unknown, and the labeled data group and the unlabeled data group. Calculate a metric matrix composed of metric vectors whose elements are metric showing the similarity between one data in the data constituting each of the above and the other data including the one data, arranged for each data. A matrix calculation unit, a matrix compression unit that generates a compression metric matrix formed by arranging compression metric vectors that compress the dimensions of each metric vector that constitutes the metric matrix, and a plurality of that have elements of each of the compression metric vectors as coordinates. Is mapped to a multidimensional space having the same dimension as the number of dimensions of the compression measurement vector, and the connection relationship between the division part that performs multidimensional drone division for the plurality of points and each point after the drone division is adjacent It includes an adjacent matrix acquisition unit that acquires as a matrix, and a label propagation unit that propagates a label to each data constituting the unlabeled data group based on the labels of the adjacent matrix and the labeled data group.

前記行列算出部は、半定値性を持つ関数を用いて前記計量を算出してもよい。 The matrix calculation unit may calculate the metric using a function having definite matrix.

前記行列算出部は、ガウシアンカーネルを用いて前記計量を算出してもよい。 The matrix calculation unit may calculate the metric using a Gaussian kernel.

前記行列圧縮部は、前記計量行列の要素のうち所定の閾値未満の要素を0で置換した後に、疎行列に基づく行列分解を用いて前記圧縮計量行列を生成してもよい。 The matrix compression unit may generate the compression metric matrix by using matrix factorization based on a sparse matrix after substituting 0 for elements of the metric matrix that are less than a predetermined threshold.

前記計量行列を構成する計量ベクトルを順に選択するベクトル選択部をさらに備えてもよく、前記行列圧縮部は、前記ベクトル選択部が選択した計量ベクトルの要素のうち所定の閾値以上の要素を抽出するとともに、前記計量行列を構成する他の計量ベクトルも前記計量ベクトルを構成する要素に対応する要素を抽出し、抽出した要素によって構成される行列を前記圧縮計量行列として生成してもよく、前記隣接行列取得部は、前記ベクトル選択部が選択した計量ベクトルに対応する点と他の点との接続関係を前記圧縮計量行列に基づいて特定することにより、前記ベクトル選択部が選択した計量ベクトルに対応する前記隣接行列の要素を決定してもよい。 A vector selection unit that sequentially selects the metric vectors constituting the metric matrix may be further provided, and the matrix compression unit extracts elements of the metric vector selected by the vector selection unit that are equal to or greater than a predetermined threshold. At the same time, other metric vectors constituting the metric matrix may also extract elements corresponding to the elements constituting the metric vector, and a matrix composed of the extracted elements may be generated as the compressed metric matrix. The matrix acquisition unit corresponds to the metric vector selected by the vector selection unit by specifying the connection relationship between the point corresponding to the metric vector selected by the vector selection unit and another point based on the compression metric matrix. The elements of the adjacent matrix may be determined.

本発明の第2の態様は、情報処理方法である。この方法において、プロセッサが、属するクラスを示すラベルが付されたラベル有りデータ群を取得するステップと、属するクラスが不明であるラベル無しデータ群を取得するステップと、前記ラベル有りデータ群と前記ラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと当該1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルを、データ毎に並べて構成される計量行列を算出するステップと、前記計量行列を構成する各計量ベクトルの次元を圧縮した圧縮計量ベクトルを並べて構成される圧縮計量行列を生成するステップと、前記圧縮計量ベクトルそれぞれの要素を座標とする複数の点を前記圧縮計量ベクトルの次元数と同次元の多次元空間にマッピングし、前記複数の点に対して多次元のドロネー分割をするステップと、ドロネー分割後の各点の接続関係を隣接行列として取得するステップと、前記隣接行列及び前記ラベル有りデータ群のラベルに基づいて、前記ラベル無しデータ群を構成する各データにラベルを伝搬させるステップと、を実行する。 A second aspect of the present invention is an information processing method. In this method, the processor obtains a labeled data group with a label indicating the class to which it belongs, a step of acquiring an unlabeled data group to which the class to which it belongs is unknown, and the labeled data group and the label. None A metric composed of metric vectors whose elements are metric showing the degree of similarity between one data in the data constituting each of the data groups and the other data including the one data, arranged side by side for each data. A step of calculating a matrix, a step of generating a compression metric matrix composed by arranging compression metric vectors obtained by arranging the dimensions of each metric vector constituting the metric matrix, and a plurality of coordinates having each element of the compression metric vector as coordinates. Is mapped to a multidimensional space having the same dimension as the number of dimensions of the compression metric vector, and the step of performing multidimensional drone division for the plurality of points and the connection relationship of each point after the drone division are shown in an adjacent matrix. And the step of propagating the label to each data constituting the unlabeled data group based on the label of the adjacent matrix and the labeled data group is executed.

本発明の第3の態様は、プログラムである。このプログラムは、コンピュータに、属するクラスを示すラベルが付されたラベル有りデータ群を取得する機能と、属するクラスが不明であるラベル無しデータ群を取得する機能と、前記ラベル有りデータ群と前記ラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと当該1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルを、データ毎に並べて構成される計量行列を算出する機能と、前記計量行列を構成する各計量ベクトルの次元を圧縮した圧縮計量ベクトルを並べて構成される圧縮計量行列を生成する機能と、前記圧縮計量ベクトルそれぞれの要素を座標とする複数の点を前記圧縮計量ベクトルの次元数と同次元の多次元空間にマッピングし、前記複数の点に対して多次元のドロネー分割をする機能と、ドロネー分割後の各点の接続関係を隣接行列として取得する機能と、前記隣接行列及び前記ラベル有りデータ群のラベルに基づいて、前記ラベル無しデータ群を構成する各データにラベルを伝搬させる機能と、を実現させる。 A third aspect of the present invention is a program. This program has a function of acquiring a labeled data group with a label indicating a class to which the computer belongs, a function of acquiring an unlabeled data group of which the class to which the computer belongs is unknown, and the labeled data group and the label. None A metric composed of metric vectors whose elements are metric showing the degree of similarity between one data in the data constituting each of the data groups and the other data including the one data, arranged side by side for each data. A function to calculate a matrix, a function to generate a compressed metric matrix composed by arranging compressed metric vectors obtained by compressing the dimensions of each metric vector constituting the metric matrix, and a plurality of coordinates having each element of the compressed metric vector as coordinates. Is mapped to a multidimensional space having the same dimension as the number of dimensions of the compression metric vector, and the function of performing multidimensional drone division for the plurality of points and the connection relationship of each point after the drone division are shown in an adjacent matrix. And a function of propagating the label to each data constituting the unlabeled data group based on the labels of the adjacent matrix and the labeled data group are realized.

このプログラムを提供するため、あるいはプログラムの一部をアップデートするために、このプログラムを記録したコンピュータ読み取り可能な記録媒体が提供されてもよく、また、このプログラムが通信回線で伝送されてもよい。 In order to provide this program or to update a part of the program, a computer-readable recording medium on which the program is recorded may be provided, or the program may be transmitted over a communication line.

なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。 It should be noted that any combination of the above components and the conversion of the expression of the present invention between methods, devices, systems, computer programs, data structures, recording media and the like are also effective as aspects of the present invention.

本発明によれば、多次元のドロネー分割を利用した半教師有り学習におけるラベル伝搬を実用化することができる。 According to the present invention, label propagation in semi-supervised learning using multidimensional Delaunay division can be put into practical use.

実施の形態に係る情報処理装置の機能構成を模式的に示す図である。It is a figure which shows typically the functional structure of the information processing apparatus which concerns on embodiment. 実施の形態に係る分割部が実行するドロネー分割を説明するための図である。It is a figure for demonstrating the Delaunay division performed by the division part which concerns on embodiment. 実施の形態に係る隣接行列取得部が取得した隣接行列の一例を模式的に示す図である。It is a figure which shows typically an example of the adjacency matrix acquired by the adjacency matrix acquisition part which concerns on embodiment. 実施の形態に係る行列算出部が算出する計量行列の一例を模式的に示す図である。It is a figure which shows typically an example of the metric matrix calculated by the matrix calculation part which concerns on embodiment. 実施の形態に係る行列圧縮部が実行する行列圧縮を説明するための図である。It is a figure for demonstrating the matrix compression performed by the matrix compression part which concerns on embodiment. 実施の形態に係る情報処理装置が実行する情報処理の流れを説明するためのフローチャートである。It is a flowchart for demonstrating the flow of information processing executed by the information processing apparatus which concerns on embodiment.

<実施の形態の概要>
実施の形態に係る情報処理方法は、属するクラスを示すラベルが付されたラベル有り学習データと、属するクラスが不明であるラベル無し学習データとの隣接関係に基づいて、ラベル有り学習データに付されたラベルをラベル無し学習データを構成する各データに伝搬させるための手法に関する。
<Outline of the embodiment>
The information processing method according to the embodiment is attached to the labeled learning data based on the adjacency relationship between the labeled learning data with a label indicating the class to which it belongs and the unlabeled learning data to which the class to which it belongs is unknown. The present invention relates to a method for propagating the labeled label to each data constituting the unlabeled learning data.

実施の形態に係る情報処理装置は、まず、ラベル有り学習データとラベル無し学習データとの各学習データを構成するデータ間の類似関係を示す計量行列を生成する。続いて、実施の形態に係る情報処理装置は、生成した計量行列を圧縮してサイズの小さな圧縮計量行列を生成する。次に、実施の形態に係る情報処理装置は、圧縮計量行列を構成する要素に基づいて、ラベル有り学習データとラベル無し学習データとの各学習データのデータ数Nと同じ次元のN次元空間上に各学習データに対応する点をマッピングし、マッピングした点群に対してN次元のドロネー三角形分割を実行する。最後に、実施の形態に係る情報処理装置は、ドロネー三角形分割後の各点の接続関係に基づいて、ラベル有り学習データに付されたラベルをラベル無し学習データを構成する各データに伝搬させる。 The information processing apparatus according to the embodiment first generates a metric matrix showing a similarity relationship between the data constituting each of the labeled learning data and the unlabeled learning data. Subsequently, the information processing apparatus according to the embodiment compresses the generated metric matrix to generate a small-sized compressed metric matrix. Next, the information processing apparatus according to the embodiment is on an N-dimensional space having the same dimension as the number N of the data of each of the labeled learning data and the unlabeled learning data based on the elements constituting the compression metric matrix. The points corresponding to each training data are mapped to, and N-dimensional Delaunay triangulation is executed for the mapped point cloud. Finally, the information processing apparatus according to the embodiment propagates the label attached to the labeled learning data to each data constituting the unlabeled learning data based on the connection relationship of each point after the Delaunay triangle division.

[ドロネー三角形分割]
ここで「ドロネー三角形分割」とは、2次元平面上に離散的に分布する点を頂点とする三角形によって2次元平面を漏れなくかつ重なりなく分割する手法の一種である。ドロネー三角形分割によって分割された三角形は以下に記載するような性質を持つ。すなわち、ドロネー三角形分割によって分割された任意の三角形の外接円の内部には、他の三角形を構成する点が含まれないという性質である。
[Delaunay triangle division]
Here, "Delaunay triangle division" is a kind of method of dividing a two-dimensional plane without omission and overlap by a triangle whose vertices are points distributed discretely on the two-dimensional plane. The triangle divided by the Delaunay triangulation has the properties described below. That is, the property is that the points constituting other triangles are not included in the circumscribed circle of any triangle divided by the Delaunay triangulation.

ドロネー三角形分割は、3次元以上の多次元空間における点群を対象とする空間分割手法に拡張できることが知られている。拡張されたドロネー三角形分割では、多次元空間上に離散的に分布する点を頂点とするシンプレックス(Simplex;単体)によって、多次元空間を分割することになる。 It is known that Delaunay triangulation can be extended to a space division method for a point cloud in a multidimensional space of three or more dimensions. In the extended Delaunay triangulation, the multidimensional space is divided by a simplex (simplex) whose vertices are points distributed discretely in the multidimensional space.

例えば、3次元空間におけるシンプレックスは四面体であるため、3次元空間におけるドロネー三角形分割は、3次元空間上に離散的に分布する点を頂点とする四面体で3次元空間を分割することになる。3次元空間におけるドロネー三角形分割を実行すると、任意の四面体の外接球の内部には、他の四面体を構成する点が含まれない。 For example, since the simplex in the three-dimensional space is a tetrahedron, the Dronay triangle division in the three-dimensional space divides the three-dimensional space by a tetrahedron whose apex is a point distributed discretely in the three-dimensional space. .. When the Delaunay triangulation is performed in three-dimensional space, the circumscribed sphere of any tetrahedron does not contain the points that make up the other tetrahedron.

同様に4次元空間におけるシンプレックスは五胞体であるため、4次元空間におけるドロネー三角形分割は、4次元空間上に離散的に分布する点を頂点とする五胞体で4次元空間を分割することになる。4次元空間におけるドロネー三角形分割を実行すると、任意の五胞体の外接球の内部には、他の五胞体を構成する点が含まれない。 Similarly, since the simplex in the four-dimensional space is a five-cell body, the Delaunay triangulation in the four-dimensional space divides the four-dimensional space by the five-cell bodies whose vertices are points distributed discretely in the four-dimensional space. .. When the Delaunay triangulation in four-dimensional space is performed, the circumscribed sphere of any 5-cell does not contain the points that make up the other 5-cell.

なお、四面体における“超平面”は三角形であり、五胞体における超平面は四面体である。一般に、N次元のシンプレックスを構成する超平面は、N−1次元のシンプレックスとなる。 The "hyperplane" in the tetrahedron is a triangle, and the hyperplane in the pentatope is a tetrahedron. In general, the hyperplane that constitutes an N-dimensional simplex is an N-1 dimensional simplex.

このように、3次元以上の多次元空間における点群を対象とするドロネー三角形分割は、正確には“シンプレックス分割”である。本明細書では2次元以上の多次元空間を対象とする分割を、便宜上単に「ドロネー分割」と記載し、ドロネー分割して得られた2次元又はそれ以上の次元のシンプレックスを、単に「シンプレックス」と記載する。ドロネー分割を実行することによって得られた任意のシンプレックスは、そのシンプレックスの外接超球の内部に他のシンプレックスを構成する点が含まれない。この性質は、既知データが分布する空間全体にわたって成り立つ広域的な性質である。 As described above, the Delaunay triangulation for a point cloud in a multidimensional space of three or more dimensions is, to be exact, a "simplex division". In the present specification, a division targeting a multidimensional space of two or more dimensions is simply referred to as "Delaunay division" for convenience, and a two-dimensional or higher dimensional simplex obtained by Delaunay division is simply referred to as "simplex". It is described as. Any simplex obtained by performing a Delaunay split does not include the points that make up the other simplex inside the circumscribed hypersphere of that simplex. This property is a wide-area property that holds throughout the space where known data is distributed.

一般にN次元空間におけるドロネー分割の計算量は、Nの3乗のオーダーである。機械学習に用いられるデータの数(すなわち、N次元空間における次元数N)は、数万から百万のオーダーとなり得るため、そのような場合は現実的な時間での処理が難しくなる。そこで、実施の形態に係る情報処理装置は、ラベル有り学習データとラベル無し学習データとの各学習データを構成するデータ間の類似関係を示す計量行列を圧縮して計算量を削減する。一例として、実施の形態に係る情報処理装置は、計量行列のサイズを百分の一に圧縮する。これにより、多次元空間におけるドロネー分割を現実的な時間で実行することができる。 Generally, the computational complexity of Delaunay division in N-dimensional space is on the order of N cubed. Since the number of data used for machine learning (that is, the number of dimensions N in the N-dimensional space) can be on the order of tens of thousands to millions, in such a case, processing in a realistic time becomes difficult. Therefore, the information processing apparatus according to the embodiment compresses a metric matrix showing a similarity relationship between the data constituting each learning data of the labeled learning data and the unlabeled learning data to reduce the amount of calculation. As an example, the information processing apparatus according to the embodiment compresses the size of the measurement matrix by a factor of 100. As a result, the Delaunay division in the multidimensional space can be executed in a realistic time.

<実施の形態に係る情報処理装置1の機能構成>
図1は、実施の形態に係る情報処理装置1の機能構成を模式的に示す図である。情報処理装置1は、記憶部2と制御部3とを備える。図1において、矢印は主なデータの流れを示しており、図1に示していないデータの流れがあってもよい。図1において、各機能ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図1に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に分かれて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。
<Functional configuration of the information processing device 1 according to the embodiment>
FIG. 1 is a diagram schematically showing a functional configuration of the information processing device 1 according to the embodiment. The information processing device 1 includes a storage unit 2 and a control unit 3. In FIG. 1, the arrows indicate the main data flows, and there may be data flows not shown in FIG. In FIG. 1, each functional block shows not a hardware (device) unit configuration but a functional unit configuration. Therefore, the functional block shown in FIG. 1 may be mounted in a single device, or may be mounted separately in a plurality of devices. Data can be exchanged between functional blocks via any means such as a data bus, a network, or a portable storage medium.

記憶部2は、情報処理装置1を実現するコンピュータのBIOS(Basic Input Output System)等を格納するROM(Read Only Memory)や情報処理装置1の作業領域となるRAM(Random Access Memory)、OS(Operating System)やアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するHDD(Hard Disk Drive)やSSD(Solid State Drive)等の大容量記憶装置である。 The storage unit 2 includes a ROM (Read Only Memory) for storing the BIOS (Basic Input Output System) of the computer that realizes the information processing device 1, a RAM (Random Access Memory) that serves as a work area for the information processing device 1, and an OS (OS). It is a large-capacity storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive) that stores an Operating System), an application program, and various information referred to when the application program is executed.

制御部3は、情報処理装置1のCPU(Central Processing Unit)やGPU(Graphics Processing Unit)等のプロセッサであり、記憶部2に記憶されたプログラムを実行することによってデータ取得部30、行列算出部31、行列圧縮部32、分割部33、隣接行列取得部34、ラベル伝搬部35、及びベクトル選択部36として機能する。 The control unit 3 is a processor such as a CPU (Central Processing Unit) or GPU (Graphics Processing Unit) of the information processing device 1, and a data acquisition unit 30 and a matrix calculation unit are executed by executing a program stored in the storage unit 2. It functions as 31, a matrix compression unit 32, a division unit 33, an adjacent matrix acquisition unit 34, a label propagation unit 35, and a vector selection unit 36.

なお、図1は、情報処理装置1が単一の装置で構成されている場合の例を示している。しかしながら、情報処理装置1は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部3を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。 Note that FIG. 1 shows an example in which the information processing device 1 is composed of a single device. However, the information processing device 1 may be realized by computing resources such as a plurality of processors and memories, such as a cloud computing system. In this case, each unit constituting the control unit 3 is realized by executing a program by at least one of a plurality of different processors.

データ取得部30は、属するクラスを示すラベルが付されたデータ群であるラベル有りデータ群を取得する。ラベル有りデータ群は、例えば記憶部2に格納されている。この場合、データ取得部30は、ラベル有りデータ群を記憶部2から読み出して取得する。ラベル有りデータ群を構成する各データはベクトルで表現される。このベクトルは、データを特徴付ける複数の特徴量を要素に持つベクトルであってもよい。 The data acquisition unit 30 acquires a labeled data group, which is a data group with a label indicating the class to which the data belongs. The labeled data group is stored in, for example, the storage unit 2. In this case, the data acquisition unit 30 reads the labeled data group from the storage unit 2 and acquires it. Each data constituting the labeled data group is represented by a vector. This vector may be a vector having a plurality of feature quantities that characterize the data as elements.

データ取得部30は、属するクラスが不明であるデータ群であるラベル無しデータ群も取得する。ラベル有りデータ群と同様に、ラベル無しデータ群も、例えば記憶部2に格納されている。ラベル無しデータ群を構成する各データは、ラベル有りデータ群を構成する各データと同次元のベクトルで表現されている。 The data acquisition unit 30 also acquires an unlabeled data group, which is a data group to which the class to which the data belongs is unknown. Like the labeled data group, the unlabeled data group is also stored in, for example, the storage unit 2. Each data constituting the unlabeled data group is represented by a vector having the same dimension as each data constituting the labeled data group.

行列算出部31は、ラベル有りデータ群とラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと、その1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルを、データ毎に並べて構成される計量行列を算出する。 The matrix calculation unit 31 uses a metric indicating the degree of similarity between one data in the data constituting each of the labeled data group and the unlabeled data group and the other data including the one data as an element. A metric matrix composed of arranging the metric vectors to be performed for each data is calculated.

具体的には、ラベル有りデータ群とラベル無しデータ群とのそれぞれを構成するデータの総計がN(Nは2以上の自然数)個であり、それぞれをx,x,・・・,xで表すとする。行列算出部31は、xからはじめてxに到達するまで順番にデータを選択する。いま、行列算出部31が選択したデータをxとする。行列算出部31は、xとxを含む他のデータとの類似度を示す計量を算出する。xを含む他のデータをxとし、xとxとの類似度を示す計量をgijとする。 Specifically, the total number of data constituting each of the labeled data group and the unlabeled data group is N (N is a natural number of 2 or more), and each of them is x 1 , x 2 , ..., X. It is represented by N. Matrix calculating unit 31 selects the data in order to reach the first time x N from x 1. Now, let xi be the data selected by the matrix calculation unit 31. Matrix calculating unit 31 calculates a metric that indicates the degree of similarity with other data including x i and x i. other data, including the x i and x j, a metric indicating the degree of similarity between x i and x j and g ij.

ij=F(x,x) (1)
式(1)において、Fはxとxとの計量を算出するための関数である。関数Fの詳細は後述する。
g ij = F (x i , x j ) (1)
In equation (1), F is a function for calculating the metric of x i and x j. The details of the function F will be described later.

行列算出部31は、x毎に、計量gijを要素とする計量ベクトルgを生成する。すなわち、計量ベクトルgは、以下の式(2)で表される。 Matrix calculating unit 31, for each x i, and generates a metric vector g i for the metering g ij as elements. That is, the metric vector g i is expressed by the following equation (2).

Figure 2021039580
Figure 2021039580

行列算出部31は、計量ベクトルgを並べた行列を生成し、計量行列Gとする。すなわち、計量行列Gは以下の式(3)で表される。 Matrix calculating unit 31 generates a matrix obtained by arranging metric vector g i, the metric matrix G. That is, the metric matrix G is represented by the following equation (3).

Figure 2021039580
Figure 2021039580

式(3)から明らかなように、計量行列GはN次の正方行列である。データ取得部30が取得するラベル有りデータ群とラベル無しデータ群とはいずれも、例えばDNN(Deep Neural Network)やSVM(Support Vector Machine)等のいわゆる教師有り学習に用いられるデータである。したがって、ラベル有りデータ群とラベル無しデータ群とのそれぞれを構成するデータの総計Nは、小さくても百のオーダーがあることが多く、大きい場合は百万のオーダーとなる。 As is clear from equation (3), the metric matrix G is an Nth-order square matrix. Both the labeled data group and the unlabeled data group acquired by the data acquisition unit 30 are data used for so-called supervised learning such as DNN (Deep Neural Network) and SVM (Support Vector Machine). Therefore, the total N of the data constituting each of the labeled data group and the unlabeled data group is often on the order of 100 even if it is small, and on the order of 1 million if it is large.

そこで、行列圧縮部32は、計量行列Gを構成する各計量ベクトルgの次元Nを圧縮した圧縮計量ベクトルを並べて構成される圧縮計量行列を生成する。行列圧縮部32が実行する圧縮処理の詳細は後述するが、行列圧縮部32は、各計量ベクトルgを圧縮することで、m次元(m<<N)の圧縮計量ベクトルcを生成する。一例として、mはNの百分の一程度である。行列圧縮部32は、圧縮計量ベクトルcを並べて構成される圧縮計量行列Cを生成する。圧縮計量行列Cは、以下の式(4)で表される。 Therefore, the matrix compression unit 32 generates a composed compressed metric matrix by arranging a compression metric vector obtained by compressing the dimension N of the metric vector g i constituting the metric matrix G. Although matrix compression unit 32 is more compression processing to be executed will be described later, the matrix compression unit 32 to compress each metric vector g i, to generate compressed metric vector c i m-dimensional (m << N) .. As an example, m is about one-hundredth of N. Matrix compression unit 32 generates a compression metric matrix C composed by arranging a compression metric vector c i. The compression metric matrix C is represented by the following equation (4).

Figure 2021039580
なお、m<Nであるため、圧縮計量行列Cは正方行列ではない。
Figure 2021039580
Since m <N, the compression metric matrix C is not a square matrix.

分割部33は、圧縮計量ベクトルcそれぞれの要素を座標とする複数の点を圧縮計量ベクトルcの次元数と同次元の多次元空間にマッピングし、複数の点に対して多次元のドロネー分割をする。 Dividing unit 33 maps the plurality of points the compression metric vector c i each element and coordinates dimensionality and the same dimension of the multidimensional space of the compression metric vector c i, multidimensional Delaunay for a plurality of points Divide.

図2(a)−(b)は、実施の形態に係る分割部33が実行するドロネー分割を説明するための図である。具体的には、図2(a)は、分割部33による圧縮計量ベクトルcのマッピング結果を示す図である。また、図2(b)は、分割部33によるドロネー分割の結果を示す図である。圧縮計量ベクトルcの第1の要素f1を第1の軸、第2の要素f2を第2の軸とすることで、分割部33は、圧縮計量ベクトルcを2次元空間上の1点にマッピングすることができる。 2 (a)-(b) are diagrams for explaining Delaunay division executed by the division unit 33 according to the embodiment. Specifically, FIG. 2 (a) is a diagram illustrating a mapping result of the compression metric vector c i by dividing unit 33. Further, FIG. 2B is a diagram showing the result of Delaunay division by the division unit 33. By setting the first element f1 of the compressed metric vector c i as the first axis and the second element f2 as the second axis, the dividing unit 33 sets the compressed metric vector c i as one point on the two-dimensional space. Can be mapped to.

一般に、圧縮計量ベクトルcの次元は2より大きいが、図示の便宜上、図2(a)−(b)は、圧縮計量ベクトルcの次元が2の場合の例を示している。圧縮計量ベクトルcが2次元の場合、圧縮計量ベクトルcは2つの要素f1及びf2によって構成される。図2(a)に示すように、圧縮計量ベクトルcの1つの要素f1を第1の軸、2つ目の要素f2を第2の軸とすることにより、各圧縮計量ベクトルcは圧縮計量ベクトルcの次元と同じ次元(図2では2次元)の空間中の1点にマッピングされる。 Generally, the dimension of the compression metric vector c i is larger than 2, but for convenience of illustration, FIGS. 2 (a)-(b) show an example in which the dimension of the compression metric vector c i is 2. When the compression metric vector c i is two-dimensional, the compression metric vector c i is composed of two elements f1 and f2. As shown in FIG. 2A , each compression metric vector c i is compressed by having one element f1 of the compression metric vector c i as the first axis and the second element f2 as the second axis. It is mapped to one point in the space of the same dimension as the dimension of the metric vector c i (two dimensions in FIG. 2).

分割部33は、多次元空間にマッピングした各圧縮計量ベクトルcに対してドロネー分割を実行する。この結果、図2(b)に示すように、多次元空間中にマッピングされた各圧縮計量ベクトルcを頂点とする複数のシンプレックス(図2(b)では三角形)が生成される。すなわち、多次元空間中にマッピングされた各圧縮計量ベクトルcは、それぞれ複数の他の圧縮計量ベクトルcと辺で結ばれることになる。 Dividing unit 33 performs Delaunay division for each compression metric vector c i which is mapped to the multidimensional space. As a result, as shown in FIG. 2 (b), a plurality of simplex whose vertices each compression metric vector c i mapped in multi-dimensional space (triangles in FIG. 2 (b)) is generated. That is, each compression metric vector c i mapped in the multidimensional space is connected to a plurality of other compression metric vectors c i by edges.

隣接行列取得部34は、ドロネー分割後の各点の接続関係を隣接行列として取得する。具体的には、隣接行列取得部34は、ドロネー分割の結果、互いに辺で直接結ばれた点に対応する圧縮計量ベクトルc同士は「接続関係有り」、互いに辺で直接結ばれていない点同士を「接続関係無し」とする接続行列を生成して取得する。 The adjacency matrix acquisition unit 34 acquires the connection relationship of each point after the Delaunay division as an adjacency matrix. Specifically, the adjacency matrix acquisition part 34, Delaunay division result "Yes connection relationship" compression metric vector c i with each other that corresponds to the point tied directly at the sides to each other, a point that is not connected directly with the sides to each other Generate and acquire a connection matrix that makes each other "no connection relationship".

図3は、実施の形態に係る隣接行列取得部34が取得した隣接行列の一例を模式的に示す図である。図3において、破線の矩形で示される領域が隣接行列を示している。 FIG. 3 is a diagram schematically showing an example of an adjacency matrix acquired by the adjacency matrix acquisition unit 34 according to the embodiment. In FIG. 3, the area indicated by the broken line rectangle indicates the adjacency matrix.

隣接行列は既知の概念であるため詳細な説明を省略するが、多次元空間中にマッピングされた複数の点(頂点)の対が辺(すなわちエッジ)で結ばれているか否かの関係を示す行列である。具体的には、隣接行列の各行を構成するベクトルの要素が、そのベクトルに対応する頂点と、他の頂点との接続関係を示している。このため、隣接行列は、頂点の数と同次元の対称行列となる。 Since the adjacency matrix is a known concept, detailed explanation is omitted, but it shows the relationship between whether or not a pair of points (vertices) mapped in a multidimensional space are connected by an edge (that is, an edge). It is a matrix. Specifically, the elements of the vector that make up each row of the adjacency matrix indicate the connection relationship between the vertices corresponding to the vector and other vertices. Therefore, the adjacency matrix is a symmetric matrix with the same dimensions as the number of vertices.

図3に示す例は、ラベル有りデータ群とラベル無しデータ群とのそれぞれを構成するN個のデータx,x,・・・,xについて、それぞれが他のベクトルと接続関係がある場合は1、接続関係がない場合は0として表している。具体的には、隣接行列の各行は、それぞれデータx,x,・・・,xに関する他のベクトルとの接続関係を示している。例えば、データxは自分自身との接続関係はないため、データxに対応する第1行を構成するベクトルの第1列目は0となる。また、データxはデータxと接続しているため、図3に示す隣接行列の1行N列の要素は1となっている。 In the example shown in FIG. 3, N data x 1 , x 2 , ..., X N constituting each of the labeled data group and the unlabeled data group have a connection relationship with other vectors. In the case, it is expressed as 1, and if there is no connection relationship, it is expressed as 0. Specifically, each row of the adjacency matrix shows the connection relationship with other vectors related to the data x 1 , x 2 , ..., X N, respectively. For example, since the data x 1 has no connection relationship with itself, the first column of the vector forming the first row corresponding to the data x 1 is 0. Further, since the data x 1 is connected to the data x N , the element of 1 row N column of the adjacency matrix shown in FIG. 3 is 1.

ラベル伝搬部35は、隣接行列及びラベル有りデータ群のラベルに基づいて、ラベル無しデータ群を構成する各データにラベルを伝搬させる。なお、隣接行列が既知である場合におけるラベル伝搬の手法は既知であるため、以下では、ラベルが+1と−1との2クラスである場合について、伝搬アルゴリズムの一例を簡単に説明する。 The label propagation unit 35 propagates the label to each data constituting the unlabeled data group based on the labels of the adjacency matrix and the labeled data group. Since the method of label propagation when the adjacency matrix is known is known, an example of the propagation algorithm will be briefly described below in the case where the label has two classes of +1 and -1.

いま、隣接行列をWで表す。また、ラベル有りデータ群とラベル無しデータ群とのそれぞれを構成するN個のデータx,x,・・・,xそれぞれのラベルをyで表す。具体的には、ラベル有りデータ群を構成する各データのラベルyは、+1又は−1のいずれかである。ラベル無しデータ群を構成する各ベクトルのラベルyは0とする。 Now, the adjacency matrix is represented by W. Further, the labels of the N data x 1 , x 2 , ..., X N constituting each of the labeled data group and the unlabeled data group are represented by y. Specifically, the label y of each data constituting the labeled data group is either +1 or -1. The label y of each vector constituting the unlabeled data group is set to 0.

ラベル無しデータ群を構成する各データのラベルyの予測値をfとする。fは、−1から+1までの間の実数を取り得る。このとき、予測性能を最大にする目的関数J(f)は以下の式(5)で示される。 Let f be the predicted value of the label y of each data constituting the unlabeled data group. f can take a real number between -1 and +1. At this time, the objective function J (f) that maximizes the prediction performance is represented by the following equation (5).

Figure 2021039580
ここで、L=D−Wであり、DはWの各行の和を対角成分に持つ行列、λは右辺第1項と第2項とのバランスを取る定数である。
Figure 2021039580
Here, L = D-W, D is a matrix having the sum of each row of W as a diagonal component, and λ is a constant that balances the first term and the second term on the right side.

式(5)において、目的関数J(f)の値を最小化するとき、以下の式(6)が成り立つ。
(1+λL)f=y (6)
In the equation (5), when the value of the objective function J (f) is minimized, the following equation (6) holds.
(1 + λL) f = y (6)

式(5)及び式(6)を用いることで、ラベル伝搬部35は、隣接行列及びラベル有りデータ群のラベルに基づいて、ラベル無しデータ群を構成する各データにラベルを伝搬させることができる。 By using the equations (5) and (6), the label propagation unit 35 can propagate the label to each data constituting the unlabeled data group based on the labels of the adjacency matrix and the labeled data group. ..

実施の形態に係る情報処理装置1は、各計量ベクトルgを圧縮してから多次元空間にマッピングするため、ドロネー分割を実用的な範囲の演算時間で終了することができる。このように、実施の形態に係る情報処理装置1は、多次元のドロネー分割を利用した半教師有り学習におけるラベル伝搬を実用化することができる。 The information processing apparatus 1 according to the embodiment, for mapping the multi-dimensional space after compressing each metric vector g i, can be terminated by the operation time of the practical range of Delaunay division. As described above, the information processing apparatus 1 according to the embodiment can put label propagation in semi-supervised learning using multidimensional Delaunay division into practical use.

[計量の算出]
行列算出部31が計量行列Gを算出するために用いる関数Fについて説明する。
実施の形態に係る行列算出部31は、半定値性を持つ関数Fを用いて各データ間の計量を算出する。半定値性を持つ関数Fの例としてはSVMにおけるカーネル関数が挙げられる。具体的には、多項式カーネル、ガウシアンカーネル、双曲線正接カーネル等が挙げられる。以下では、行列算出部31がガウシアンカーネルを用いて各データ間の計量を算出することを前提として説明する。
[Calculation of measurement]
The function F used by the matrix calculation unit 31 to calculate the metric matrix G will be described.
The matrix calculation unit 31 according to the embodiment calculates the metric between each data by using the function F having semi-fixed value. An example of the function F having definite matrix is a kernel function in SVM. Specific examples include a polynomial kernel, a Gaussian kernel, and a hyperbolic tangent kernel. In the following, it is assumed that the matrix calculation unit 31 calculates the metric between each data using the Gaussian kernel.

上述したように、ラベル有りデータ群とラベル無しデータ群とを構成する各データはベクトルで表現されている。それらをベクトルx,x,・・・,xとする。このとき、ガウシアンカーネルを用いる場合の関数Fは以下の式(7)で表される。 As described above, each data constituting the labeled data group and the unlabeled data group is represented by a vector. Let them be vectors x 1 , x 2 , ..., X N. At this time, the function F when using the Gaussian kernel is expressed by the following equation (7).

Figure 2021039580
式(7)において、xikは、ベクトルxのk番目の要素を示す。xjkも同様である。
Figure 2021039580
In equation (7), x ik represents the kth element of the vector x i. The same applies to x jk.

図4は、実施の形態に係る行列算出部31が算出する計量行列の一例を模式的に示す図である。図4において、破線の矩形で示される領域が計量行列を示している。式(7)に示す関数Fの定義から明らかなように、計量gijは0以上1以下の値を取り、ベクトルxとベクトルxとが同値の場合(すなわち、最も類似している場合)1となり、ベクトルxとベクトルxとが離れるほど0に近い値となる。図4に示す例では、ベクトルxはベクトルxよりもベクトルxと類似していることを示している。 FIG. 4 is a diagram schematically showing an example of a measurement matrix calculated by the matrix calculation unit 31 according to the embodiment. In FIG. 4, the area indicated by the broken line rectangle indicates the metric matrix. As is clear from the definition of the function F shown in the equation (7), the metric gij takes a value of 0 or more and 1 or less, and when the vector x i and the vector x j have the same value (that is, when they are most similar). ) 1, and the farther the vector x i and the vector x j are, the closer the value becomes to 0. In the example shown in FIG. 4, the vector x 1 is shown to be more similar to the vector x 2 than the vector x N.

[計量行列Gの圧縮]
続いて、行列圧縮部32による計量行列Gの圧縮について説明する。行列圧縮部32は、互いに独立な2つの手法を用いて計量行列Gを圧縮する。
[Compression of metric matrix G]
Subsequently, the compression of the metric matrix G by the matrix compression unit 32 will be described. The matrix compression unit 32 compresses the metric matrix G by using two methods independent of each other.

(第1の手法)
式(7)に示す関数Fの定義から明らかなように、計量gijは、ベクトルxとベクトルxとが離れるほど急激に0に近づく。したがって、ラベル有りデータ群とラベル無しデータ群とに偏りがないことを前提とすれば、計量行列Gの要素は0に近いものが多いと考えられる。
(First method)
As is clear from the definition of the function F shown in the equation (7), the metric g ij rapidly approaches 0 as the vector x i and the vector x j are separated from each other. Therefore, assuming that there is no bias between the labeled data group and the unlabeled data group, it is considered that many of the elements of the metric matrix G are close to zero.

そこで、行列圧縮部32は、計量行列Gの要素のうち所定の閾値未満の要素を0で置換して行列Dを生成する。「所定の閾値」とは、行列圧縮部32がデータ間の接続関係がないと見なすために参照する「接続関係判定時参照閾値」である。接続関係判定時参照閾値の具体的な値は、圧縮効率(すなわち、演算効率)と精度とのバランス、及び式(7)におけるγの値等を考慮して実験により定めればよいが、例えば0.5である。これにより、行列圧縮部32は、行列算出部31が算出した計量行列Gを疎行列である行列Dに変換する。続いて、行列圧縮部32は、行列Dを、疎行列に基づく行列分解を用いて圧縮計量行列Cを生成する。 Therefore, the matrix compression unit 32 replaces the elements of the metric matrix G that are less than a predetermined threshold value with 0 to generate the matrix D. The “predetermined threshold value” is a “reference threshold value at the time of determining the connection relationship” that the matrix compression unit 32 refers to in order to consider that there is no connection relationship between the data. The specific value of the reference threshold value at the time of determining the connection relationship may be determined experimentally in consideration of the balance between the compression efficiency (that is, the calculation efficiency) and the accuracy, the value of γ in the equation (7), and the like. It is 0.5. As a result, the matrix compression unit 32 converts the metric matrix G calculated by the matrix calculation unit 31 into a sparse matrix D. Subsequently, the matrix compression unit 32 generates a compression metric matrix C by using the matrix factorization based on the sparse matrix of the matrix D.

図5(a)−(b)は、実施の形態に係る行列圧縮部32が実行する行列圧縮を説明するための図である。具体的には、図5(a)は、一般的な特異値分解を説明するための図であり、図5(b)は、特異値分解を利用したベクトルの圧縮を説明するための図である。 5 (a)-(b) are diagrams for explaining the matrix compression executed by the matrix compression unit 32 according to the embodiment. Specifically, FIG. 5A is a diagram for explaining general singular value decomposition, and FIG. 5B is a diagram for explaining vector compression using singular value decomposition. is there.

図5(a)に示すように、行列圧縮部32が行列Dに対して特異値分解を実行することにより、行列Dは、左特異ベクトルを並べて構成される行列Sと、特異値を対角成分に持つ行列Σと、右特異ベクトルを並べて構成される行列V(Tは行列の転置)とに分解される。なお、図5(a)は一般的な特異値分解を説明するための図であるため行列Dは行の長さと列の長さとが異なるように図示しているが、計量行列Gは正方行列であるため、行の長さと列の長さとは等しい。 As shown in FIG. 5A, the matrix compression unit 32 performs singular value decomposition on the matrix D, so that the matrix D is diagonally opposite to the matrix S formed by arranging the left singular vectors. a matrix Σ with the components, the matrix V T constructed by arranging the right singular vectors (T is the transpose of the matrix) is decomposed into. Since FIG. 5A is a diagram for explaining a general singular value decomposition, the matrix D is shown so that the row length and the column length are different, but the metric matrix G is a square matrix. Therefore, the row length and the column length are equal.

行列Σの対角成分は、特異値を大きい順に並べて構成されている。行列圧縮部32は、所定の値以下となる特異値を切り捨てることにより、新たな行列Σ’を生成する。行列Σ’は、行列Σと比較して、行の長さが短い。 The diagonal components of the matrix Σ are configured by arranging the singular values in descending order. The matrix compression unit 32 generates a new matrix Σ'by truncating a singular value that is equal to or less than a predetermined value. The matrix Σ'has a shorter row length than the matrix Σ.

行列圧縮部32は、左特異ベクトルを並べて構成される行列Sに行列Σ’を乗算することで、新たな行列D’を算出する。行列D’は、行列Dと比較すると、行の長さが短くなっている。行列D’の列の長さは行列Dと同じであり、ラベル有りデータ群とラベル無しデータ群とを構成する各データの数と等しい。行列圧縮部32は、行列D’を構成するi番目の行ベクトルを、圧縮計量ベクトルcとする。これにより、行列圧縮部32は、計量行列Gの行方向のサイズを圧縮することができる。 The matrix compression unit 32 calculates a new matrix D'by multiplying the matrix S formed by arranging the left singular vectors by the matrix Σ'. The row length of the matrix D'is shorter than that of the matrix D. The length of the matrix D'is the same as that of the matrix D, and is equal to the number of data constituting the labeled data group and the unlabeled data group. Matrix compression unit 32, the i-th row vector constituting the matrix D ', the compression metric vector c i. As a result, the matrix compression unit 32 can compress the size of the weighing matrix G in the row direction.

(第2の手法)
続いて、行列圧縮部32による計量行列Gの圧縮の第2の手法について説明する。
(Second method)
Subsequently, a second method of compressing the metric matrix G by the matrix compression unit 32 will be described.

計量行列Gの圧縮の第2の手法の概要は、計量ベクトルgの接続関係を決定する際には、多次元空間において計量ベクトルgの近傍に存在する計量ベクトルgのみを選択して決定するというものである。 Summary of the second approach of the compression of the metric matrix G is weighed in determining the connection relationship of the vector g i selects only metric vector g j present in the vicinity of the metric vector g i in a multidimensional space It is to decide.

これを実現するために、ベクトル選択部36は、まず計量行列Gを構成する計量ベクトルgを順に選択する。計量ベクトルgの各要素は、他の計量ベクトルgとの類似度を表している。そこで、行列圧縮部32は、ベクトル選択部36が選択した計量ベクトルgの要素のうち所定の閾値以上の要素を抽出する。ここで、所定の閾値とは、行列圧縮部32が計量ベクトルgの対が近傍であるかどうか、言い換えると、計量ベクトルgの対が類似しているか否かを判定するために参照する「近傍判定用閾値」である。近傍判定用閾値の具体的な値は、圧縮効率(すなわち、演算効率)と精度とのバランスや、計量の算出に用いる関数Fの値域等を考慮して実験により定めればよい。 To achieve this, the vector selection unit 36 selects a metric vector g i first configure the metric matrix G in this order. Each element of the metric vector g i represents the degree of similarity with other metric vectors g j. Therefore, the matrix compression unit 32 extracts a predetermined threshold value or more elements among the elements of the metric vector g i the vector selection unit 36 has selected. Here, the predetermined threshold value is a "neighborhood" referred to by the matrix compression unit 32 for determining whether or not the pairs of the metric vectors g are close to each other, in other words, whether or not the pairs of the metric vector g are similar. Judgment threshold ". The specific value of the threshold value for neighborhood determination may be determined experimentally in consideration of the balance between compression efficiency (that is, calculation efficiency) and accuracy, the range of the function F used for calculating the metric, and the like.

行列圧縮部32は、計量行列Gを構成する他の計量ベクトルgも計量ベクトルgを構成する要素に対応する要素を抽出し、抽出した要素によって構成される行列を計量ベクトルgに関する圧縮計量行列Cとして生成する。 The matrix compression unit 32 extracts elements corresponding to the elements constituting the metric vector g i as well as other metric vectors g j constituting the metric matrix G, and compresses the matrix composed of the extracted elements with respect to the metric vector g j. generating a metric matrix C i.

例えば、ベクトル選択部36が、ベクトルxに対応する計量ベクトルgを選択したとする。行列圧縮部32が、計量ベクトルgを構成する要素(g11,g12,・・・,g1N)の中から近傍判定用閾値以上の要素を抽出した結果、1番目、5番目、及びN番目の要素であるg11,g15,及びg1Nが抽出されたとする。この場合、圧縮計量ベクトルcは、c(g11,g15,g)となる。行列圧縮部32は、残りの計量ベクトルc(計量ベクトルgから計量ベクトルg)についても1番目、5番目、及びN番目の要素を抽出して圧縮計量ベクトルcを生成する。これにより、行列圧縮部32は、計量ベクトルgに関する圧縮計量行列Cを生成する。 For example, suppose that the vector selection unit 36 selects the metric vector g 1 corresponding to the vector x 1 . As a result of the matrix compression unit 32 extracting the elements above the neighborhood determination threshold value from the elements (g 11 , g 12 , ..., G 1N ) constituting the metric vector g 1, the first, fifth, and It is assumed that the Nth elements g 11 , g 15 , and g 1N are extracted. In this case, the compression metric vector c 1 becomes c 1 (g 11 , g 15 , g N ). The matrix compression unit 32 also extracts the first, fifth, and Nth elements of the remaining metric vector c j (metric vector g 2 to metric vector g N ) to generate a compressed metric vector c j. As a result, the matrix compression unit 32 generates a compression metric matrix C 1 with respect to the metric vector g 1.

ベクトル選択部36が計量ベクトルgを選択する度に、行列圧縮部32は、選択された計量ベクトルgに対応する圧縮計量行列Cを生成する。隣接行列取得部34は、ベクトル選択部36が選択した計量ベクトルgに対応する点と他の点との接続関係を圧縮計量行列Cに基づいて特定することにより、ベクトル選択部36が選択した計量ベクトルgに対応する隣接行列の要素を決定する。 Each time a vector selection unit 36 selects a metric vector g i, the matrix compression unit 32 generates a compression metric matrix C i corresponding to the selected metric vector g i. Adjacency matrix acquisition unit 34, by specifying, based connection between points in the other point corresponding to the metric vector g i the vector selection unit 36 selects the compression metric matrix C i, selected vector selection unit 36 determining the elements of the adjacency matrix corresponding to the metric vector g i.

これにより、情報処理装置1は、各計量ベクトルgについて、その計量ベクトルgの近傍にある計量ベクトルgのみを用いて隣接行列を決定することができる。ゆえに、すべての計量ベクトルgの接続関係を特定する場合と比較して、情報処理装置1は、隣接行列の算出に要する演算時間を短縮することができる。 As a result, the information processing apparatus 1 can determine an adjacency matrix for each metric vector g by using only the metric vector g in the vicinity of the metric vector g. Therefore, the information processing apparatus 1 can shorten the calculation time required for calculating the adjacency matrix as compared with the case of specifying the connection relationship of all the metric vectors g.

(第1の手法と第2の手法との関係)
上述した計量行列Gの圧縮に関する第1の手法と第2の手法とは互いに独立している。したがって、行列圧縮部32は、第1の手法と第2の手法とを併用することができる。具体的には、行列圧縮部32は、第1の手法を用いて算出した行列に対して、さらに第2の手法を用いて圧縮することができる。
(Relationship between the first method and the second method)
The first method and the second method regarding the compression of the metric matrix G described above are independent of each other. Therefore, the matrix compression unit 32 can use both the first method and the second method together. Specifically, the matrix compression unit 32 can further compress the matrix calculated by using the first method by using the second method.

<情報処理装置1が実行する情報処理方法の処理フロー>
図6は、実施の形態に係る情報処理装置1が実行する情報処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば情報処理装置1が起動したときに開始する。
<Processing flow of information processing method executed by information processing device 1>
FIG. 6 is a flowchart for explaining the flow of information processing executed by the information processing apparatus 1 according to the embodiment. The process in this flowchart starts, for example, when the information processing device 1 is activated.

データ取得部30は、属するクラスを示すラベルが付されたラベル有りデータを取得する(S2)。また、データ取得部30は、属するクラスが不明であるラベル無しデータ群を取得する(S4)。 The data acquisition unit 30 acquires labeled data with a label indicating the class to which it belongs (S2). Further, the data acquisition unit 30 acquires an unlabeled data group to which the class to which the data belongs is unknown (S4).

行列算出部31は、ラベル有りデータ群とラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと、その1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルgを、データ毎に並べて構成される計量行列Gを算出する(S6)。 The matrix calculation unit 31 uses a metric indicating the degree of similarity between one data in the data constituting each of the labeled data group and the unlabeled data group and the other data including the one data as an element. A metric matrix G is calculated by arranging the metric vectors g to be performed for each data (S6).

行列圧縮部32は、計量行列Gを構成する各計量ベクトルgの次元を圧縮した圧縮計量ベクトルcを並べて構成される圧縮計量行列Cを生成する(S8)。分割部33は、圧縮計量ベクトルcそれぞれの要素を座標とする複数の点を圧縮計量ベクトルcの次元数と同次元の多次元空間にマッピングし、複数の点に対して多次元のドロネー分割を実行する(S10)。 The matrix compression unit 32 generates a compression metric matrix C formed by arranging compression metric vectors c obtained by compressing the dimensions of each metric vector g constituting the metric matrix G (S8). The division unit 33 maps a plurality of points whose coordinates are each element of the compression measurement vector c to a multidimensional space having the same dimension as the number of dimensions of the compression measurement vector c, and performs multidimensional drone division for the plurality of points. Execute (S10).

隣接行列取得部34は、分割部33によるドロネー分割後の各点の接続関係を隣接行列として取得する(S12)。ラベル伝搬部35は、隣接行列及びラベル有りデータ群のラベルに基づいて、ラベル無しデータ群を構成する各データにラベルを伝搬させる(S14)。 The adjacency matrix acquisition unit 34 acquires the connection relationship of each point after the Delaunay division by the division unit 33 as an adjacency matrix (S12). The label propagation unit 35 propagates the label to each data constituting the unlabeled data group based on the labels of the adjacency matrix and the labeled data group (S14).

ラベル伝搬部35がラベル無しデータ群を構成する各データにラベルを伝搬させると、本フローチャートにおける処理は終了する。 When the label propagation unit 35 propagates the label to each data constituting the unlabeled data group, the process in this flowchart ends.

<実施の形態に係る情報処理装置1が奏する効果>
以上説明したように、実施の形態に係る情報処理装置1によれば、多次元のドロネー分割を利用した半教師有り学習におけるラベル伝搬を実用化することができる。
<Effects of the information processing device 1 according to the embodiment>
As described above, according to the information processing apparatus 1 according to the embodiment, label propagation in semi-supervised learning using multidimensional Delaunay division can be put into practical use.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果をあわせ持つ。 Although the present invention has been described above using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments, and various modifications and changes can be made within the scope of the gist thereof. is there. For example, all or a part of the device can be functionally or physically distributed / integrated in any unit. Also included in the embodiments of the present invention are new embodiments resulting from any combination of the plurality of embodiments. The effect of the new embodiment produced by the combination also has the effect of the original embodiment.

1・・・情報処理装置
2・・・記憶部
3・・・制御部
30・・・データ取得部
31・・・行列算出部
32・・・行列圧縮部
33・・・分割部
34・・・隣接行列取得部
35・・・ラベル伝搬部
36・・・ベクトル選択部
1 ... Information processing device 2 ... Storage unit 3 ... Control unit 30 ... Data acquisition unit 31 ... Matrix calculation unit 32 ... Matrix compression unit 33 ... Division unit 34 ... Adjacency matrix acquisition unit 35 ... Label propagation unit 36 ... Vector selection unit

Claims (7)

属するクラスを示すラベルが付されたラベル有りデータ群と、属するクラスが不明であるラベル無しデータ群とを取得するデータ取得部と、
前記ラベル有りデータ群と前記ラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと当該1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルを、データ毎に並べて構成される計量行列を算出する行列算出部と、
前記計量行列を構成する各計量ベクトルの次元を圧縮した圧縮計量ベクトルを並べて構成される圧縮計量行列を生成する行列圧縮部と、
前記圧縮計量ベクトルそれぞれの要素を座標とする複数の点を前記圧縮計量ベクトルの次元数と同次元の多次元空間にマッピングし、前記複数の点に対して多次元のドロネー分割をする分割部と、
ドロネー分割後の各点の接続関係を隣接行列として取得する隣接行列取得部と、
前記隣接行列及び前記ラベル有りデータ群のラベルに基づいて、前記ラベル無しデータ群を構成する各データにラベルを伝搬させるラベル伝搬部と、
を備える情報処理装置。
A data acquisition unit that acquires a labeled data group with a label indicating the class to which it belongs and an unlabeled data group to which the class to which it belongs is unknown.
A metric vector whose element is a metric indicating the degree of similarity between one data in the data constituting each of the labeled data group and the unlabeled data group and the other data including the one data. A matrix calculation unit that calculates a metric matrix that is arranged side by side for each data,
A matrix compression unit that generates a compressed metric matrix composed by arranging compressed metric vectors that compress the dimensions of each metric vector that constitutes the metric matrix.
A division unit that maps a plurality of points whose coordinates are each element of the compression metric vector into a multidimensional space having the same dimension as the number of dimensions of the compression metric vector, and performs multidimensional drone division for the plurality of points. ,
An adjacency matrix acquisition unit that acquires the connection relationship of each point after Delaunay division as an adjacency matrix,
A label propagation unit that propagates a label to each data constituting the unlabeled data group based on the labels of the adjacency matrix and the labeled data group.
Information processing device equipped with.
前記行列算出部は、半定値性を持つ関数を用いて前記計量を算出する、
請求項1に記載の情報処理装置。
The matrix calculation unit calculates the metric using a function having definite matrix.
The information processing device according to claim 1.
前記行列算出部は、ガウシアンカーネルを用いて前記計量を算出する、
請求項1又は2に記載の情報処理装置。
The matrix calculation unit calculates the metric using a Gaussian kernel.
The information processing device according to claim 1 or 2.
前記行列圧縮部は、前記計量行列の要素のうち所定の閾値未満の要素を0で置換した後に、疎行列に基づく行列分解を用いて前記圧縮計量行列を生成する、
請求項3に記載の情報処理装置。
The matrix compression unit generates the compressed metric matrix by using matrix factorization based on a sparse matrix after substituting 0 for elements of the metric matrix that are less than a predetermined threshold.
The information processing device according to claim 3.
前記計量行列を構成する計量ベクトルを順に選択するベクトル選択部をさらに備え、
前記行列圧縮部は、前記ベクトル選択部が選択した計量ベクトルの要素のうち所定の閾値以上の要素を抽出するとともに、前記計量行列を構成する他の計量ベクトルも前記計量ベクトルを構成する要素に対応する要素を抽出し、抽出した要素によって構成される行列を前記圧縮計量行列として生成し、
前記隣接行列取得部は、前記ベクトル選択部が選択した計量ベクトルに対応する点と他の点との接続関係を前記圧縮計量行列に基づいて特定することにより、前記ベクトル選択部が選択した計量ベクトルに対応する前記隣接行列の要素を決定する、
請求項3又は4に記載の情報処理装置。
A vector selection unit for sequentially selecting the metric vectors constituting the metric matrix is further provided.
The matrix compression unit extracts elements of the metric vector selected by the vector selection unit that are equal to or greater than a predetermined threshold, and other metric vectors that make up the metric matrix also correspond to the elements that make up the metric vector. The elements to be used are extracted, and a matrix composed of the extracted elements is generated as the compression metric matrix.
The adjacency matrix acquisition unit specifies the connection relationship between a point corresponding to the metric vector selected by the vector selection unit and another point based on the compression metric matrix, so that the metric vector selected by the vector selection unit To determine the elements of the adjacency matrix corresponding to
The information processing device according to claim 3 or 4.
プロセッサが、
属するクラスを示すラベルが付されたラベル有りデータ群を取得するステップと、
属するクラスが不明であるラベル無しデータ群を取得するステップと、
前記ラベル有りデータ群と前記ラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと当該1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルを、データ毎に並べて構成される計量行列を算出するステップと、
前記計量行列を構成する各計量ベクトルの次元を圧縮した圧縮計量ベクトルを並べて構成される圧縮計量行列を生成するステップと、
前記圧縮計量ベクトルそれぞれの要素を座標とする複数の点を前記圧縮計量ベクトルの次元数と同次元の多次元空間にマッピングし、前記複数の点に対して多次元のドロネー分割をするステップと、
ドロネー分割後の各点の接続関係を隣接行列として取得するステップと、
前記隣接行列及び前記ラベル有りデータ群のラベルに基づいて、前記ラベル無しデータ群を構成する各データにラベルを伝搬させるステップと、
を実行する情報処理方法。
The processor,
A step to acquire a labeled data group with a label indicating the class to which it belongs, and
The step to get the unlabeled data group whose class belongs to unknown,
A metric vector whose element is a metric indicating the degree of similarity between one data in the data constituting each of the labeled data group and the unlabeled data group and the other data including the one data. Steps to calculate the metric matrix constructed side by side for each data,
A step of generating a compressed metric matrix composed by arranging compressed metric vectors obtained by compressing the dimensions of each metric vector constituting the metric matrix, and
A step of mapping a plurality of points whose coordinates are each element of the compression metric vector into a multidimensional space having the same dimension as the number of dimensions of the compression metric vector, and performing multidimensional drone division for the plurality of points.
The step of acquiring the connection relationship of each point after Delaunay division as an adjacency matrix,
A step of propagating a label to each data constituting the unlabeled data group based on the labels of the adjacency matrix and the labeled data group.
Information processing method to execute.
コンピュータに、
属するクラスを示すラベルが付されたラベル有りデータ群を取得する機能と、
属するクラスが不明であるラベル無しデータ群を取得する機能と、
前記ラベル有りデータ群と前記ラベル無しデータ群とのそれぞれを構成するデータ中の1つのデータと当該1つのデータを含む他のデータとの間の類似度を示す計量を要素とする計量ベクトルを、データ毎に並べて構成される計量行列を算出する機能と、
前記計量行列を構成する各計量ベクトルの次元を圧縮した圧縮計量ベクトルを並べて構成される圧縮計量行列を生成する機能と、
前記圧縮計量ベクトルそれぞれの要素を座標とする複数の点を前記圧縮計量ベクトルの次元数と同次元の多次元空間にマッピングし、前記複数の点に対して多次元のドロネー分割をする機能と、
ドロネー分割後の各点の接続関係を隣接行列として取得する機能と、
前記隣接行列及び前記ラベル有りデータ群のラベルに基づいて、前記ラベル無しデータ群を構成する各データにラベルを伝搬させる機能と、
を実現させるプログラム。
On the computer
A function to acquire a labeled data group with a label indicating the class to which it belongs, and
A function to get unlabeled data group whose class belongs to unknown,
A metric vector whose element is a metric indicating the degree of similarity between one data in the data constituting each of the labeled data group and the unlabeled data group and the other data including the one data. A function to calculate a metric matrix composed of data arranged side by side, and
A function to generate a compressed metric matrix composed by arranging compressed metric vectors obtained by compressing the dimensions of each metric vector constituting the metric matrix, and
A function of mapping a plurality of points whose coordinates are each element of the compression metric vector into a multidimensional space having the same dimension as the number of dimensions of the compression metric vector, and performing multidimensional drone division for the plurality of points.
A function to acquire the connection relationship of each point after Delaunay division as an adjacency matrix,
A function of propagating a label to each data constituting the unlabeled data group based on the labels of the adjacency matrix and the labeled data group.
A program that realizes.
JP2019161031A 2019-09-04 2019-09-04 Information processing equipment, information processing methods, and programs Active JP7096218B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019161031A JP7096218B2 (en) 2019-09-04 2019-09-04 Information processing equipment, information processing methods, and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019161031A JP7096218B2 (en) 2019-09-04 2019-09-04 Information processing equipment, information processing methods, and programs

Publications (2)

Publication Number Publication Date
JP2021039580A true JP2021039580A (en) 2021-03-11
JP7096218B2 JP7096218B2 (en) 2022-07-05

Family

ID=74847153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019161031A Active JP7096218B2 (en) 2019-09-04 2019-09-04 Information processing equipment, information processing methods, and programs

Country Status (1)

Country Link
JP (1) JP7096218B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272291A (en) * 2006-03-30 2007-10-18 Kddi Corp Potential class extraction method and device, potential class extraction program and its recording medium
JP2009230362A (en) * 2008-03-21 2009-10-08 Nec Corp Label propagation device, method, and program
WO2017154946A1 (en) * 2016-03-09 2017-09-14 日本電気株式会社 Information processing device, information processing method, data structure, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272291A (en) * 2006-03-30 2007-10-18 Kddi Corp Potential class extraction method and device, potential class extraction program and its recording medium
JP2009230362A (en) * 2008-03-21 2009-10-08 Nec Corp Label propagation device, method, and program
WO2017154946A1 (en) * 2016-03-09 2017-09-14 日本電気株式会社 Information processing device, information processing method, data structure, and program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DENGYONG ZHOU ET AL.: "Learning with local and global consistency", PROCEEDING OF ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS [ONLINE], JPN6022021509, 2004, ISSN: 0004786315 *
松本一則ほか: "ドロネー分割を用いたラベル伝搬型半教師あり学習の検討", 電子情報通信学会技術研究報告, vol. 116, no. 209, JPN6022021510, 29 August 2016 (2016-08-29), JP, pages 211 - 214, ISSN: 0004786314 *

Also Published As

Publication number Publication date
JP7096218B2 (en) 2022-07-05

Similar Documents

Publication Publication Date Title
US20230267319A1 (en) Training neural network accelerators using mixed precision data formats
Yu et al. Capri-net: Learning compact cad shapes with adaptive primitive assembly
EP3788559A1 (en) Quantization for dnn accelerators
US20200210839A1 (en) Neural network activation compression with outlier block floating-point
WO2020142192A1 (en) Neural network activation compression with narrow block floating-point
Park et al. Unstructured grid adaptation and solver technology for turbulent flows
Gupta et al. Three-dimensional deep learning-based reduced order model for unsteady flow dynamics with variable Reynolds number
Ravi Efficient on-device models using neural projections
Eliasof et al. Diffgcn: Graph convolutional networks via differential operators and algebraic multigrid pooling
McComb Toward the rapid design of engineered systems through deep neural networks
US20220382246A1 (en) Differentiable simulator for robotic cutting
US11295050B2 (en) Structural analysis method and structural analysis apparatus
Vasudevan Still a fight to get it right: Verification in the era of machine learning
Trent et al. Using image processing techniques in computational mechanics
Iquebal et al. Emulating the evolution of phase separating microstructures using low-dimensional tensor decomposition and nonlinear regression
Kapsoulis et al. The use of Kernel PCA in evolutionary optimization for computationally demanding engineering applications
JP7096218B2 (en) Information processing equipment, information processing methods, and programs
Kuleshov et al. Adaptive models of complex systems based on data handling
Peres et al. Faster convolutional neural networks in low density fpgas using block pruning
Takatsuka et al. Parallel batch training of the self-organizing map using OpenCL
D’Agostino et al. Augmented design-space exploration by nonlinear dimensionality reduction methods
Yan et al. A feature selection method for projection twin support vector machine
Konstantinidis et al. Kernel learning with tensor networks
Zapata et al. A GPU parallel finite volume method for a 3D Poisson equation on arbitrary geometries
Daneshpajouh et al. Parallel batch self-organizing map on graphics processing unit using CUDA

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210623

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

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220531

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220623

R150 Certificate of patent or registration of utility model

Ref document number: 7096218

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150