JP2016173784A - Tensor factorization processing device, tensor factorization processing method, and tensor factorization processing program - Google Patents

Tensor factorization processing device, tensor factorization processing method, and tensor factorization processing program Download PDF

Info

Publication number
JP2016173784A
JP2016173784A JP2015054271A JP2015054271A JP2016173784A JP 2016173784 A JP2016173784 A JP 2016173784A JP 2015054271 A JP2015054271 A JP 2015054271A JP 2015054271 A JP2015054271 A JP 2015054271A JP 2016173784 A JP2016173784 A JP 2016173784A
Authority
JP
Japan
Prior art keywords
tensor
factor matrix
auxiliary data
information
factor
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
JP2015054271A
Other languages
Japanese (ja)
Other versions
JP6038987B2 (en
Inventor
良太 今井
Ryota Imai
良太 今井
達史 松林
Tatsufumi Matsubayashi
達史 松林
力 堀岡
Tsutomu Horioka
力 堀岡
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2015054271A priority Critical patent/JP6038987B2/en
Publication of JP2016173784A publication Critical patent/JP2016173784A/en
Application granted granted Critical
Publication of JP6038987B2 publication Critical patent/JP6038987B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To dynamically determine a correct processing procedure for any input condition in tensor factorization processing.SOLUTION: A tensor factorization processing device 1 for performing tensor factorization processing includes: a tensor construction unit 11 for constructing a tensor having, as mode, attribute information extracted from a group of log data including a plurality of pieces of attribute information of a specific event; an auxiliary data construction unit 12 for constructing auxiliary data formed of tensor information including a factor matrix of each tensor and factor matrix information including a sequence in the tensor for each factor matrix; and a reference determination unit 21 for determining a factor matrix to be referred to during the update of the factor matrix on the basis of the auxiliary data.SELECTED DRAWING: Figure 1

Description

本発明は、データマイニング技術、特に、複数の属性情報から要因パターンを抽出する因子分解に関する技術に関する。   The present invention relates to a data mining technique, and more particularly to a technique related to factorization for extracting a factor pattern from a plurality of attribute information.

複数の属性情報から要因パターンを抽出する技術として、非負値複合テンソル因子分解と呼ばれる技術がある(例えば非特許文献1)。この技術は数式として定式化されており、入力条件が定まっていれば、数値計算用のソフトウェアを用いて入力条件に応じた因子分解処理手順を設定することにより、要因パターンを表す行列(因子行列)を得ることができる。   As a technique for extracting a factor pattern from a plurality of attribute information, there is a technique called non-negative composite tensor factorization (for example, Non-Patent Document 1). This technology is formulated as a mathematical formula. If the input conditions are determined, a factorization processing procedure corresponding to the input conditions is set by using software for numerical calculation (factor matrix). ) Can be obtained.

Koh Takeuchi , Ryota Tomioka , Katsuhiko Ishiguro , Akisato Kimura , and Hiroshi Sawada ," Non-negative Multiple Tensor Factorization ", ICDM , 2013Koh Takeuchi, Ryota Tomioka, Katsuhiko Ishiguro, Akisato Kimura, and Hiroshi Sawada, "Non-negative Multiple Tensor Factorization", ICDM, 2013

従来の技術では、任意の入力条件について数式通りのテンソルの因子分解処理手順を動的に決定する手法がなく、入力条件に応じてその都度処理手順の設定を行わなければならない。   In the prior art, there is no method for dynamically determining the factorization processing procedure of a tensor as a mathematical expression for an arbitrary input condition, and the processing procedure must be set each time according to the input condition.

入力条件の違いと処理手順への影響としては、例えば、入力するテンソルの個数や階数に依って出力される因子行列の個数が異なる。また、複数のテンソルが共有モードを有する場合に各テンソルを因子分解して更新処理する際に参照すべき当該テンソルの因子行列の値やその個数が異なる。   As the difference in the input conditions and the influence on the processing procedure, for example, the number of factor matrices to be output differs depending on the number of input tensors and ranks. In addition, when a plurality of tensors have a shared mode, the values and the number of factor matrices of the tensors to be referred to when the tensor is factorized and updated are different.

本発明は、上記の事情に鑑み、テンソルの因子分解処理において任意の入力条件について正しい処理手順を動的に決定することを課題とする。   In view of the above circumstances, an object of the present invention is to dynamically determine a correct processing procedure for arbitrary input conditions in tensor factorization processing.

そこで、本発明は、特定の事象の属性情報を含むログデータから構築したテンソルとその補助データとに基づきテンソルの因子分解処理を行う。   Therefore, the present invention performs a tensor factorization process based on a tensor constructed from log data including attribute information of a specific event and its auxiliary data.

本発明のテンソル因子分解処理装置としての態様は、テンソルの因子分解処理を行うテンソル因子分解処理装置であって、特定の事象の属性情報を含むログデータの群から抽出した属性情報をモードとするテンソルを構築するテンソル構築手段と、前記テンソル毎に当該テンソルの因子行列を含んだテンソル情報と当該因子行列毎のテンソル内順序を含んだ因子行列情報とから成る補助データを構築する補助データ構築手段と、前記補助データに基づき前記因子行列の更新時に参照すべき因子行列を決定する参照決定手段とを備える。   An aspect of the present invention as a tensor factorization processing apparatus is a tensor factorization processing apparatus that performs tensor factorization processing, and uses attribute information extracted from a group of log data including attribute information of a specific event as a mode. Tensor construction means for constructing a tensor, and auxiliary data construction means for constructing auxiliary data composed of tensor information including the factor matrix of the tensor for each tensor and factor matrix information including the order in the tensor for each factor matrix And reference determination means for determining a factor matrix to be referred to when updating the factor matrix based on the auxiliary data.

本発明のテンソル因子分解処理方法としての態様は、テンソルの因子分解処理を行うテンソル因子分解処理装置が実行するテンソル因子分解処理方法であって、特定の事象の属性情報を含むログデータの群から抽出した属性情報をモードとするテンソルを構築するテンソル構築ステップと、前記テンソル毎に当該テンソルの因子行列を含んだテンソル情報と当該因子行列毎のテンソル内順序を含んだ因子行列情報とから成る補助データを構築する補助データ構築ステップと、前記補助データに基づき前記因子行列の更新時に参照すべき因子行列を決定する参照決定ステップを有する。   An aspect as a tensor factorization processing method of the present invention is a tensor factorization processing method executed by a tensor factorization processing apparatus that performs tensor factorization processing, and includes a log data group including attribute information of a specific event. Auxiliary steps consisting of a tensor construction step that constructs a tensor with the extracted attribute information as a mode, tensor information including the factor matrix of the tensor for each tensor, and factor matrix information including the order in the tensor for each factor matrix An auxiliary data construction step of constructing data; and a reference determination step of determining a factor matrix to be referred to when updating the factor matrix based on the auxiliary data.

尚、本発明は上記装置の各手段としてコンピュータを機能させるプログラム若しくは上記方法の各ステップをコンピュータに実行させるプログラムの態様とすることもできる。   Note that the present invention may be in the form of a program that causes a computer to function as each unit of the apparatus or a program that causes a computer to execute each step of the method.

以上の発明によればテンソルの因子分解処理において任意の入力条件に対する正しい処理手順を動的に決定できる。   According to the above invention, the correct processing procedure for an arbitrary input condition can be dynamically determined in the factorization processing of the tensor.

(a)は本発明の実施形態におけるテンソル因子分解処理装置のブロック構成図、(b)は同装置におけるテンソル分解部のブロック構成図。(A) is a block block diagram of the tensor factor decomposition processing apparatus in the embodiment of the present invention, (b) is a block block diagram of a tensor decomposition unit in the apparatus. ログデータの一例を示したデータ構成図。The data block diagram which showed an example of log data. ログデータに基づくテンソルの一例を示したデータ構成図。The data block diagram which showed an example of the tensor based on log data. ログデータからテンソルが構築される過程の説明図。Explanatory drawing of the process in which a tensor is constructed from log data. (a)は補助データのテンソル情報の一例を示したデータ構成図、(b)は同補助データの因子行例情報の一例を示したデータ構成図。(A) is a data block diagram which showed an example of the tensor information of auxiliary data, (b) is a data block diagram which showed an example of factor row example information of the auxiliary data. テンソルを構築する過程を説明したフローチャート。The flowchart explaining the process of building a tensor. 補助データを構築する過程を説明したフローチャート。The flowchart explaining the process of constructing auxiliary data. テンソルの因子行列を初期化する過程を説明したフローチャート。The flowchart explaining the process which initializes the factor matrix of a tensor. 参照すべき因子行列の決定過程を説明したフローチャート。The flowchart explaining the determination process of the factor matrix which should be referred. 前記因子行列を更新する過程を説明したフローチャート。The flowchart explaining the process which updates the said factor matrix.

以下、図面を参照しながら本発明の実施の形態について説明するが本発明はこの実施形態に限定されるものではない。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the present invention is not limited to these embodiments.

[概要]
図1に示した本実施形態のテンソル因子分解処理装置1はテンソルの因子行列の更新処理手順を決定するためのデータ構造を構築する。そして、このデータ構造を一定の手順で参照することにより、任意の入力条件に対するテンソルの因子行列の正しい更新処理手順を動的に決定する。
[Overview]
The tensor factorization processing apparatus 1 of the present embodiment shown in FIG. 1 constructs a data structure for determining a tensor factor matrix update processing procedure. The correct update process procedure of the tensor factor matrix for an arbitrary input condition is dynamically determined by referring to this data structure in a certain procedure.

[技術用語の説明]
本実施形態の説明にあたり、本実施形態に関連する技術用語について説明する。
[Explanation of technical terms]
In describing the present embodiment, technical terms related to the present embodiment will be described.

ログデータとは、特定の事象の複数の属性情報の組合せとこの組合せに対応する属性値とを含んでなるデータである。例えば、人々が商店を訪れたことのログデータは、ユーザID,店ID,曜日の3つの属性と、これらの属性に対応する訪問回数や滞在時間で示される属性値とを含んでなる。尚、ログデータはその属性をモードとみなすことでテンソルとして表すことができる。   The log data is data including a combination of a plurality of attribute information of a specific event and attribute values corresponding to the combination. For example, log data indicating that people have visited a store includes three attributes of a user ID, a store ID, and a day of the week, and attribute values indicated by the number of visits and the stay time corresponding to these attributes. The log data can be expressed as a tensor by regarding the attribute as a mode.

テンソルとは、本発明においては多次元の配列と同義である。例えば、3階のテンソルは3次元配列として表現できる。   A tensor is synonymous with a multidimensional array in the present invention. For example, the third-floor tensor can be expressed as a three-dimensional array.

モードとは、テンソルの軸を指す。例えば、行列は2階のテンソルとみなせるが、このとき行方向と列方向の2つのモードがある。ログデータをテンソルで表すとき、各モードはログデータの属性と一対一で対応する。   Mode refers to the tensor axis. For example, a matrix can be regarded as a tensor of the second floor, but at this time, there are two modes of a row direction and a column direction. When log data is represented by a tensor, each mode has a one-to-one correspondence with the attribute of the log data.

共有モードとは、入力するテンソルのうち複数のテンソルに現れるモードである。例えば、入力として(ユーザID,店ID,曜日)のモードをもつテンソルと、(ユーザID,環境種別,時間帯)のモードをもつテンソルがあるとき、ユーザIDが共有モードとなる。   The shared mode is a mode that appears in a plurality of tensors among the input tensors. For example, when there is a tensor having a mode of (user ID, store ID, day of the week) and a tensor having a mode of (user ID, environment type, time zone) as an input, the user ID becomes the sharing mode.

因子行列とは、テンソルを因子分解することで得られる行列であり、モードと同じ数だけ存在する。前述の入力例では、5つのモードに対応して5つの因子行列が得られる。   The factor matrix is a matrix obtained by factorizing the tensor, and there are as many as the modes. In the above input example, five factor matrices are obtained corresponding to the five modes.

[装置の構成]
テンソル因子分解処理装置1は、入力データ記憶部10,テンソル構築部11,補助データ構築部12,テンソル分解部13,出力データ記憶部14を備える。
[Device configuration]
The tensor factorization processing apparatus 1 includes an input data storage unit 10, a tensor construction unit 11, an auxiliary data construction unit 12, a tensor decomposition unit 13, and an output data storage unit 14.

入力データ記憶部10は、因子分解するテンソルの元データであるログデータと、非負値複合テンソル因子分解で用いるパラメータを保存している。尚、ログデータは予め保存されているものとする。   The input data storage unit 10 stores log data, which is original data of a tensor to be factorized, and parameters used in non-negative composite tensor factorization. Note that log data is stored in advance.

入力データ記憶部10に保存されているログデータの一例を図2に示す。本事例のログデータは、ユーザIDや店ID等の属性情報の組合せとこの組合せに対応する属性値とを含んでいる。但し、属性情報の組合せのみで属性値を有しない形式も想定される場合は、ログデータ内の同一の組合せの重複をカウントし、そのカウント値を属性値としている。   An example of log data stored in the input data storage unit 10 is shown in FIG. The log data of this example includes a combination of attribute information such as a user ID and a store ID and attribute values corresponding to the combination. However, when a format that includes only attribute information and does not have an attribute value is also assumed, duplication of the same combination in the log data is counted, and the count value is used as the attribute value.

テンソル構築部11は、入力データ記憶部10からログデータの群を引き出してこのログデータの群から抽出した特定の事象の属性情報をモードとするテンソルを構築する。この構築されたテンソルの一例を図3,4に示す。詳細な処理は後述する。   The tensor construction unit 11 extracts a group of log data from the input data storage unit 10 and constructs a tensor using the attribute information of a specific event extracted from the log data group as a mode. An example of the constructed tensor is shown in FIGS. Detailed processing will be described later.

補助データ構築部12は、テンソル構築部11によって構築されたテンソルに基づき補助データを構築する。この補助データはテンソル情報と因子行列情報とから成る。前記テンソル情報は、前記テンソル毎に対応付けられた重みと当該テンソルの因子行列とを含む。前記因子行列情報は、前記因子行列毎のテンソル内順序を含む。この構築された補助データの一例を図5に示す。詳細な処理は後述する。   The auxiliary data construction unit 12 constructs auxiliary data based on the tensor constructed by the tensor construction unit 11. This auxiliary data consists of tensor information and factor matrix information. The tensor information includes a weight associated with each tensor and a factor matrix of the tensor. The factor matrix information includes an in-tensor order for each factor matrix. An example of the constructed auxiliary data is shown in FIG. Detailed processing will be described later.

テンソル分解部13は、前記テンソルと前記補助データとを用いて、テンソルの因子分解処理を実行する。テンソル分解部13は、図1に示したようにその具体的な構成要素として、初期化部20、参照決定部21、行列更新部22及び計算終了評価部23を備える。   The tensor decomposition unit 13 performs tensor factorization using the tensor and the auxiliary data. As shown in FIG. 1, the tensor decomposition unit 13 includes an initialization unit 20, a reference determination unit 21, a matrix update unit 22, and a calculation end evaluation unit 23 as specific components.

初期化部20は、テンソル構築部11にて構築されたテンソルの因子行列を乱数で初期化する。詳細な処理は後述する。   The initialization unit 20 initializes the factor matrix of the tensor constructed by the tensor construction unit 11 with a random number. Detailed processing will be described later.

参照決定部21は、補助データ構築部12にて構築された補助データに基づき前記初期化済みのテンソルの因子行列の更新時に参照すべき因子行列を決定する。詳細な処理は後述する。   The reference determination unit 21 determines a factor matrix to be referred to when updating the factor matrix of the initialized tensor based on the auxiliary data constructed by the auxiliary data construction unit 12. Detailed processing will be described later.

行列更新部22は、参照決定部21にて決定された参照すべき因子行列の要素を更新する。詳細な処理は後述する。   The matrix update unit 22 updates the elements of the factor matrix to be referred to that are determined by the reference determination unit 21. Detailed processing will be described later.

計算終了評価部23は、所定基準に基づき前記更新の継続、終了のいずれかを決定する。   The calculation end evaluation unit 23 determines whether to continue or end the update based on a predetermined criterion.

出力データ記憶部14は、テンソル分解部13で得られた因子行列を保存する。   The output data storage unit 14 stores the factor matrix obtained by the tensor decomposition unit 13.

以上のテンソル因子分解処理装置1の機能部10〜14,20〜23はコンピュータのハードウェアリソースによって実現される。すなわち、テンソル因子分解処理装置1は、少なくとも演算装置(CPU)、記憶装置(メモリ、ハードディスク装置等)、通信インタフェース等のコンピュータに係るハードウェアリソースを備える。そして、これらのハードウェアリソースがソフトウェアリソース(OS、アプリケーション等)と協働することにより各機能部10〜14,20〜23が実装される。また、各々のコンピュータに機能部10〜14,20〜23を各々実装させるようにしてもよい。   The functional units 10 to 14 and 20 to 23 of the tensor factorization processing apparatus 1 described above are realized by hardware resources of a computer. That is, the tensor factorization processing apparatus 1 includes hardware resources related to a computer such as at least an arithmetic device (CPU), a storage device (memory, a hard disk device, etc.), a communication interface, and the like. And these hardware resources cooperate with software resources (OS, application, etc.), and each function part 10-14, 20-23 is mounted. Moreover, you may make it each implement | achieve the function parts 10-14 and 20-23 in each computer.

[本実施形態のテンソル因子分解処理の過程]
本過程は、以下の「テンソルの構築」、「補助データの構築」、「因子行列の初期化」、「参照すべき因子行列の決定」及び「因子行列の更新」の過程を有する。
[Process of tensor factorization processing of this embodiment]
This process includes the following processes of “tensor construction”, “construction of auxiliary data”, “initialization of factor matrix”, “determination of factor matrix to be referred to”, and “update of factor matrix”.

(テンソルの構築)
図6を参照しながらテンソル構築の過程S100〜S106について説明する。本過程はテンソル構築部11によって実行される。
(Tensor construction)
The steps S100 to S106 of tensor construction will be described with reference to FIG. This process is executed by the tensor construction unit 11.

S100:入力データ記憶部10から引き出した各ログデータについて要素の値が全て0であるテンソルを用意してS101以降の処理を実行する。全てのログデータについて処理が終了したときは処理終了に進む。   S100: A tensor whose element values are all 0 is prepared for each log data extracted from the input data storage unit 10, and the processes after S101 are executed. When the process is completed for all log data, the process proceeds to the end.

S101:1つのログデータの各行について、S102以降の処理を実行する。全ての行についての処理が終了したときは、S100に進む。   S101: The processing from S102 onward is executed for each row of one log data. When the processing for all the rows is completed, the process proceeds to S100.

S102:1行の各属性について、S103以降の処理を実行する。全ての属性について処理が終了したときは、S106に進む。   S102: The processing from S103 onward is executed for each attribute of one line. When the processing is completed for all attributes, the process proceeds to S106.

S103:ある属性の属性値が過去にS105で添え字に割り当てられたことがあればS104に進み、そうでなければS105に進む。   S103: If an attribute value of a certain attribute has been assigned to a subscript in S105 in the past, the process proceeds to S104, and if not, the process proceeds to S105.

S104:属性値を過去に割り当てられた添え字に変換し、S102に進む。   S104: The attribute value is converted into a subscript assigned in the past, and the process proceeds to S102.

S105:属性値に未割当の添え字を割り当て、この属性値を当該添え字に変換してS102に進む。   S105: An unassigned subscript is assigned to the attribute value, the attribute value is converted into the subscript, and the process proceeds to S102.

S106:テンソルのS103〜S106で変換した添え字が指す要素に属性値を代入する。   S106: The attribute value is assigned to the element indicated by the subscript converted in S103 to S106 of the tensor.

以上のS100〜S106の過程で構築された図3に例示されたテンソルT0,T1、図4に例示されたテンソルT0は図5(a)に例示したように重みの値と対応づけて入力データ記憶部10に保存される。   The tensors T0 and T1 illustrated in FIG. 3 and the tensor T0 illustrated in FIG. 4 constructed in the process of S100 to S106 described above are associated with the weight values as illustrated in FIG. It is stored in the storage unit 10.

(補助データの構築)
図7を参照しながら補助データ構築の過程S200〜S207について説明する。本過程は補助データ構築部12によって実行される。
(Construction of auxiliary data)
The auxiliary data construction steps S200 to S207 will be described with reference to FIG. This process is executed by the auxiliary data construction unit 12.

S200:入力データ記憶部10に保存された各テンソルについてS201以降の処理を実行する。全てのテンソルについて処理が終了したときは、処理終了に進む。   S200: The processing after S201 is executed for each tensor stored in the input data storage unit 10. When the processing is completed for all tensors, the processing is terminated.

S201:入力データ記憶部10からテンソルをその重みの値と共に引き出す。   S201: A tensor is extracted from the input data storage unit 10 together with its weight value.

S202:前記テンソルの各モードに対応するログデータの属性名(図4の事例では、ユーザID、店ID、曜日、環境種別、時間帯)を入力データ記憶部10から引き出す。   S202: The log data attribute name (in the example of FIG. 4, user ID, store ID, day of the week, environment type, time zone) corresponding to each mode of the tensor is extracted from the input data storage unit 10.

S203:前記テンソルの各モードについてS204以降の処理を実行する。入力データ記憶部10の保存された全てのテンソルの全てのモードについて処理が終了したときは、S207に進む。   S203: The processing after S204 is executed for each mode of the tensor. When processing is completed for all modes of all tensors stored in the input data storage unit 10, the process proceeds to S207.

S204:あるモードについて同じ属性名をもつ因子行列情報があればS205に進み、当該因子行列情報がなければS206に進む。   S204: If there is factor matrix information having the same attribute name for a certain mode, the process proceeds to S205, and if there is no factor matrix information, the process proceeds to S206.

S205:当該因子行列情報にテンソル情報の番号と、この番号に対応したテンソルの因子行列のテンソル内順序を追加する。テンソル情報の番号には、この時点で作成されたテンソル情報の総数を用いる。例えば、まだ1つもテンソル情報が作成されていないときは0となる。   S205: The tensor information number and the in-tensor order of the factor matrix of the tensor corresponding to this number are added to the factor matrix information. The total number of tensor information created at this point is used as the tensor information number. For example, it is 0 when no tensor information has been created yet.

S206:新しい因子行列情報を追加し、この因子行列情報にS205と同様にモードの属性名、当該モードを成分とするテンソルの番号、この番号に対応したテンソルの因子行列のテンソル内順序を追加する。   S206: New factor matrix information is added, and the attribute name of the mode, the tensor number having the mode as a component, and the in-tensor order of the factor matrix of the tensor corresponding to this number are added to this factor matrix information as in S205. .

S207:新しいテンソル情報を追加し、このテンソル情報にS201にて読み込んだ重みを対応付けさせ、S205,S206にて選択または追加した因子行列情報の番号を追加する。   S207: New tensor information is added, the weight read in S201 is associated with this tensor information, and the number of the factor matrix information selected or added in S205 and S206 is added.

以上のS200〜S207の過程で構築された補助データは、例えば図5(a)に示されたテンソル情報と図5(b)に示された因子行列情報とから成る態様で入力データ記憶部10に保存される。   The auxiliary data constructed in the process of S200 to S207 described above is, for example, an input data storage unit 10 in a form composed of tensor information shown in FIG. 5A and factor matrix information shown in FIG. Saved in.

(因子行列の初期化)
図8を参照しながら因子行列の初期化の過程S300〜S302について説明する。本過程はテンソル分解部13の初期化部20によって実行される。
(Factor matrix initialization)
The factor matrix initialization steps S300 to S302 will be described with reference to FIG. This process is executed by the initialization unit 20 of the tensor decomposition unit 13.

S300:入力データ記憶部10から本実施形態の因子分解で用いるパラメータとしてランク数(階数)を引き出す。   S300: The rank number (rank) is extracted from the input data storage unit 10 as a parameter used in the factorization of this embodiment.

S301:補助データ構築部12にて構築された補助データの各因子行列情報について、S302の処理を実行する。全ての因子行列情報について処理が終了したときは、処理終了に進む。   S301: The processing of S302 is executed for each factor matrix information of the auxiliary data constructed by the auxiliary data construction unit 12. When the process is completed for all factor matrix information, the process proceeds to the end.

S302:前記各因子行列情報に対応したテンソルの因子行列の全ての要素について、0より大きい乱数を代入する。尚、因子行列は、行の大きさを対応するモードの大きさとし、列の大きさをS300で引き出したランク数とする。   S302: Random numbers greater than 0 are substituted for all elements of the factor matrix of the tensor corresponding to each factor matrix information. In the factor matrix, the row size is the size of the corresponding mode, and the column size is the rank number derived in S300.

(参照すべき因子行列の決定)
図9に基づき参照すべき因子行列の決定の過程S400〜S404について説明する。本過程はテンソル分解部13の参照決定部21によって実行される。
(Determining the factor matrix to be referenced)
The process S400 to S404 for determining a factor matrix to be referred to will be described with reference to FIG. This process is executed by the reference determination unit 21 of the tensor decomposition unit 13.

S400:前記因子行列が初期化された前記補助データの各テンソル情報について、S401以降の処理を実行する。全てのテンソル情報について処理が終了したときは、処理終了に進む。   S400: The processing after S401 is executed for each tensor information of the auxiliary data in which the factor matrix is initialized. When the process is completed for all tensor information, the process proceeds to the end.

S401:前記各テンソル情報に対応した各因子行列情報について、S402以降の処理を実行する。全ての因子行列情報について処理が終了したときは、S400に進む。   S401: Processes after S402 are executed for each factor matrix information corresponding to each tensor information. When the processing is completed for all factor matrix information, the process proceeds to S400.

S402:前記因子行列情報の各テンソル情報について、対応するテンソルの推定値を計算する。このテンソル情報に対応するテンソルの推定値は、当該テンソル情報の因子行列情報の番号に対応する因子行列によって算出できる。図5(a)の事例では、テンソル0の推定値は、因子行列番号0,1,2に対応する因子行列の要素の値に基づき算出される。この推定値の数学的な定義は非特許文献1において開示されている。   S402: For each tensor information of the factor matrix information, an estimated value of the corresponding tensor is calculated. The estimated value of the tensor corresponding to the tensor information can be calculated from the factor matrix corresponding to the number of the factor matrix information of the tensor information. In the example of FIG. 5A, the estimated value of tensor 0 is calculated based on the values of the elements of the factor matrix corresponding to the factor matrix numbers 0, 1, and 2. The mathematical definition of this estimated value is disclosed in Non-Patent Document 1.

S403:前記因子行列情報の各テンソル情報について、対応するテンソル内順序以外の順序を有する因子行列情報を選択する。図5の事例において、因子行列情報1を処理する場合、テンソル情報0についてテンソル0内順序が1以外の順序0,2に対応した因子行列情報、すなわち、因子行列情報0,2が選択される。同様に、因子行列情報0について処理する場合、テンソル情報0についてテンソル0内順序が0以外の順序1,2に対応した因子行列情報1,2が、テンソル情報1についてテンソル1内順序が0以外の順序1,2に対応した因子行列情報3,4が選択される。   S403: For each tensor information of the factor matrix information, select factor matrix information having an order other than the corresponding intra-tensor order. In the case of FIG. 5, when the factor matrix information 1 is processed, the factor matrix information corresponding to the orders 0 and 2 in which the order in the tensor 0 is other than 1 for the tensor information 0, that is, the factor matrix information 0 and 2 is selected. . Similarly, when processing is performed on the factor matrix information 0, the factor matrix information 1 and 2 corresponding to the orders 1 and 2 in which the order in the tensor 0 is other than 0 for the tensor information 0, and the order in the tensor 1 is other than 0 for the tensor information 1 Factor matrix information 3 and 4 corresponding to orders 1 and 2 are selected.

S404:行列更新部22に対して、更新する因子行列情報の番号と、(テンソル情報の番号,因子行列情報の番号のリスト)の1つ以上の組を指定する。図5の事例では、因子行列情報0を処理する場合は「0,(0,1,2),(1,3,4)」を指定する。因子行列情報1を処理する場合は「1,(0,0,2)」を指定する。   S404: The matrix updating unit 22 is designated with one or more sets of factor matrix information numbers to be updated and (a list of tensor information numbers and factor matrix information numbers). In the case of FIG. 5, when the factor matrix information 0 is processed, “0, (0, 1, 2), (1, 3, 4)” is designated. When the factor matrix information 1 is processed, “1, (0, 0, 2)” is designated.

(因子行列の更新)
図10を参照しながら因子行列の更新の過程について説明する。本過程はテンソル分解部13の行列更新部22によって実行される。
(Update factor matrix)
The process of updating the factor matrix will be described with reference to FIG. This process is executed by the matrix update unit 22 of the tensor decomposition unit 13.

S500:前記指定された因子行列情報に対応する因子行列の各要素について、S501以降の処理を行う。全ての要素について処理が終了したときは、処理終了に進む。   S500: The processing from S501 is performed on each element of the factor matrix corresponding to the designated factor matrix information. When the process is completed for all elements, the process proceeds to the end.

S501:前記指定されたテンソル情報の番号、因子行列情報の番号のリストに基づき、因子行列の要素の更新式の値を計算し、要素を更新する。すなわち、前記指定されたテンソル情報の番号のテンソルに対応した前記因子行列情報の番号の順に当該テンソルの因子行列の要素の更新式の値を計算し、当該要素を更新する。   S501: Based on the list of the specified tensor information number and factor matrix information number, the value of the update formula of the factor matrix element is calculated, and the element is updated. That is, the value of the update formula of the element matrix element of the tensor is calculated in the order of the number of the factor matrix information corresponding to the tensor of the designated tensor information number, and the element is updated.

更新式はテンソル間の距離の定義により異なるが、例えば一般化KLダイバージェンスを距離としたときの、2つのテンソルが関わる因子行列の要素の更新式は以下の式(1)となる。この更新式の計算に必要なパラメータは、テンソル情報に対応するテンソルの重みηの値、S402で算出された当該テンソルの推定値、S403で得られた当該テンソルの因子行列である。   The update formula varies depending on the definition of the distance between the tensors. For example, when the generalized KL divergence is the distance, the update formula for the elements of the factor matrix related to the two tensors is expressed by the following formula (1). The parameters necessary for the calculation of the update formula are the value of the tensor weight η corresponding to the tensor information, the estimated value of the tensor calculated in S402, and the factor matrix of the tensor obtained in S403.

Figure 2016173784
Figure 2016173784

そして、計算終了評価部23は、S501で更新された因子行列に基づき、前記更新(S500,S501)の終了、継続のいずれかを決定する。   Then, the calculation end evaluation unit 23 determines whether to end or continue the update (S500, S501) based on the factor matrix updated in S501.

具体的には、計算終了評価部23は、テンソルごとに「更新された因子行列から計算できるそのテンソルの推定値」と「テンソル構築部11で構築した最初のテンソル」の距離若しくは前記更新の回数に基づき前記更新の継続,終了のいずれかの決定を行う。前記距離には例えばKLダイバージェンス距離が採用される。この一般化KLダイバージェンスは一例であり、他の確率論的な周知の距離を採用することもできる。尚、ここで他の距離を採用すれば、式(1)もその距離に適したものを採用することになる。   Specifically, the calculation end evaluation unit 23 determines, for each tensor, the distance between the “estimated value of the tensor that can be calculated from the updated factor matrix” and the “first tensor constructed by the tensor construction unit 11” or the number of times of the update. Whether to continue or end the update is determined based on the above. For example, a KL divergence distance is adopted as the distance. This generalized KL divergence is an example, and other stochastic known distances may be employed. If another distance is adopted here, Equation (1) is also suitable for that distance.

そして、前記距離が前記終了条件を満たしていない場合、または、前記回数が前記上限に達していない場合、前記更新の継続と決定する。   Then, when the distance does not satisfy the termination condition, or when the number of times does not reach the upper limit, it is determined that the update is continued.

一方、前記距離が予め設定された終了条件を満たした場合、または、前記回数が予め設定された上限に達した場合、前記更新の終了と決定する。   On the other hand, when the distance satisfies a preset end condition, or when the number of times reaches a preset upper limit, the end of the update is determined.

以上のように更新されたテンソルの因子行列は出力データ記憶部14に保存される。   The tensor factor matrix updated as described above is stored in the output data storage unit 14.

[本実施形態の効果]
本実施形態のテンソル因子分解処理装置1によれば、テンソルの因子行列の更新処理手順を決定するためのデータ構造を一定の手順で参照することにより、任意の入力条件に対する因子行列の正しい更新処理手順を動的に決定することができる。これにより、異なる入力条件に対応するためのコードの変更が不要となり、多様な条件に対するデータマイニングを効率的に行うことができる。
[Effect of this embodiment]
According to the tensor factorization processing apparatus 1 of the present embodiment, by referring to a data structure for determining a tensor factor matrix update process procedure in a certain procedure, a correct update process of a factor matrix for an arbitrary input condition is performed. The procedure can be determined dynamically. Thereby, it is not necessary to change the code to cope with different input conditions, and data mining for various conditions can be performed efficiently.

したがって、例えば、入力されるテンソルの個数や階数に依って出力されるテンソルの因子行列の個数が異なる場合や、共有モードを有する複数のテンソルを因子分解して更新処理する際に参照すべき各テンソルの因子行列の値やその個数が異なる場合でも、因子分解の正しい更新処理手順を動的に決定できる。   Therefore, for example, when the number of tensor factor matrices to be output differs depending on the number of input tensors and ranks, or when performing update processing by factorizing multiple tensors having shared modes, Even when the values of tensor factor matrices and their numbers are different, the correct update procedure for factorization can be determined dynamically.

また、上述実施形態のテンソル因子分解処理は3階のテンソルの事例であるが、入力の一部が行列であったり、4階以上のテンソルであったりする場合でも同様に処理手順を決定することができる。これにより、ビッグデータのような多様なデータにも対応できる。   The tensor factorization process of the above embodiment is an example of a third-order tensor, but the processing procedure is determined in the same manner even when a part of the input is a matrix or a tensor of the fourth or higher floor. Can do. This makes it possible to handle various data such as big data.

さらに、前記補助データの因子行列を更新する場合に、ステップS403において、補助データの因子行列を更新する場合に当該因子行列のテンソル内順序以外の順序に対応した因子行列を参照すべき因子行列として決定する。これにより、前記更新にあたり更新すべき因子行列を動的に決定できる。   Further, when the factor matrix of the auxiliary data is updated, in step S403, when updating the factor matrix of the auxiliary data, a factor matrix corresponding to an order other than the order in the tensor of the factor matrix is referred to as a factor matrix to be referred to. decide. Thereby, the factor matrix to be updated in the update can be dynamically determined.

また、前記補助データの構築の過程(S200〜S207)では、前記テンソルがその重みに対応付けて前記テンソル情報に格納される。これにより、因子行列のテンソルの重みを反映した因子行列の要素の更新を行える。   In the process of constructing the auxiliary data (S200 to S207), the tensor is stored in the tensor information in association with the weight. Thereby, the element of the factor matrix reflecting the weight of the tensor of the factor matrix can be updated.

[本発明の他の態様]
本発明は、テンソル因子分解処理装置1を構成する上記の機能部11〜13,20〜23の一部若しくは全てとしてコンピュータを機能させるプログラムで構成しこれを当該コンピュータに実行させることにより実現できる。または、同装置1が実行する上記のステップS100〜S106,S200〜S207,S300〜S302,S400〜S404,S500,S501の一部若しくは全てをコンピュータに実行させるプログラムで構成しこれを当該コンピュータに実行させることにより実現できる。そして、このプログラムをそのコンピュータが読み取り可能な周知の記録媒体(例えば、ハードディスク、フレキシブルディスク、CD−ROM等)に格納して提供できる。または、前記プログラムをインターネットや電子メール等でネットワークを介して提供できる。
[Other Embodiments of the Present Invention]
The present invention can be realized by configuring a program that causes a computer to function as a part or all of the functional units 11 to 13 and 20 to 23 constituting the tensor factorization processing apparatus 1, and causing the computer to execute the program. Alternatively, a part or all of the above steps S100 to S106, S200 to S207, S300 to S302, S400 to S404, S500, and S501 executed by the apparatus 1 are configured and executed by the computer. This can be realized. The program can be provided by being stored in a known recording medium (for example, a hard disk, a flexible disk, a CD-ROM, etc.) that can be read by the computer. Alternatively, the program can be provided via the network via the Internet or e-mail.

尚、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更、応用が可能である。   The present invention is not limited to the above-described embodiments, and various modifications and applications can be made within the scope of the claims.

1…テンソル因子分解処理装置
11…テンソル構築部(テンソル構築手段)
12…補助データ構築部(補助データ構築手段)
13…テンソル分解部
20…初期化部
21…参照決定部(参照決定手段)
22…行列更新部
23…計算終了評価部
DESCRIPTION OF SYMBOLS 1 ... Tensor factorization processing apparatus 11 ... Tensor construction part (tensor construction means)
12 ... Auxiliary data construction unit (Auxiliary data construction means)
13 ... tensor decomposition unit 20 ... initialization unit 21 ... reference determination unit (reference determination means)
22 ... Matrix update unit 23 ... Calculation end evaluation unit

Claims (7)

テンソルの因子分解処理を行うテンソル因子分解処理装置であって、
特定の事象の複数の属性情報を含むログデータの群から抽出した属性情報をモードとするテンソルを構築するテンソル構築手段と、
前記テンソル毎に当該テンソルの因子行列を含んだテンソル情報と当該因子行列毎のテンソル内順序を含んだ因子行列情報とから成る補助データを構築する補助データ構築手段と、
前記補助データに基づき前記因子行列の更新時に参照すべき因子行列を決定する参照決定手段と
を備えたことを特徴とするテンソル因子分解処理装置。
A tensor factorization processing apparatus that performs tensor factorization processing,
A tensor construction means for constructing a tensor having a mode of attribute information extracted from a group of log data including a plurality of attribute information of a specific event;
Auxiliary data construction means for constructing auxiliary data composed of tensor information including the factor matrix of the tensor for each tensor and factor matrix information including the order in the tensor for each factor matrix;
A tensor factorization processing apparatus comprising: a reference determination unit that determines a factor matrix to be referred to when updating the factor matrix based on the auxiliary data.
前記参照決定手段は、前記補助データの因子行列を更新する場合に当該因子行列のテンソル内順序以外の順序に対応した因子行列を前記参照すべき因子行列として決定すること
を特徴とする請求項1に記載のテンソル因子分解処理装置。
2. The reference determining unit, when updating a factor matrix of the auxiliary data, determines a factor matrix corresponding to an order other than the order in the tensor of the factor matrix as the factor matrix to be referred to. The tensor factorization processing apparatus according to 1.
前記補助データ構築手段は、前記テンソルをその重みに対応付けて前記テンソル情報に格納することを特徴とする請求項1または2に記載のテンソル因子分解処理装置。   The tensor factorization processing apparatus according to claim 1, wherein the auxiliary data construction unit stores the tensor in the tensor information in association with the weight. テンソルの因子分解処理を行うテンソル因子分解処理装置が実行するテンソル因子分解処理方法であって、
特定の事象の複数の属性情報を含むログデータの群から抽出した属性情報をモードとするテンソルを構築するテンソル構築ステップと、
前記テンソル毎に当該テンソルの因子行列を含んだテンソル情報と当該因子行列毎のテンソル内順序を含んだ因子行列情報とから成る補助データを構築する補助データ構築ステップと、
前記補助データに基づき前記因子行列の更新時に参照すべき因子行列を決定する参照決定ステップと
を有することを特徴とするテンソル因子分解処理方法。
A tensor factorization processing method executed by a tensor factorization processing apparatus that performs tensor factorization processing,
A tensor construction step for constructing a tensor having a mode of attribute information extracted from a group of log data including a plurality of attribute information of a specific event;
Auxiliary data construction step of constructing auxiliary data consisting of tensor information including the factor matrix of the tensor for each tensor and factor matrix information including the order in the tensor for each factor matrix;
A tensor factorization processing method, comprising: a reference determination step of determining a factor matrix to be referred to when updating the factor matrix based on the auxiliary data.
前記参照決定ステップにおいて、前記補助データの因子行列を更新する場合に当該因子行列のテンソル内順序以外の順序に対応した因子行列を前記参照すべき因子行列として決定すること
を特徴とする請求項4に記載のテンソル因子分解処理方法。
5. In the reference determination step, when updating the factor matrix of the auxiliary data, a factor matrix corresponding to an order other than the order in the tensor of the factor matrix is determined as the factor matrix to be referred to. The tensor factorization processing method described in 1.
前記補助データ構築ステップにおいて、前記テンソルをその重みに対応付けて前記テンソル情報に格納すること
を特徴とする請求項4または5に記載のテンソル因子分解処理方法。
6. The tensor factorization processing method according to claim 4, wherein, in the auxiliary data construction step, the tensor is stored in the tensor information in association with the weight.
コンピュータを請求項1から3のいずれか1項に記載のテンソル因子分解処理装置を構成する各手段として機能させることを特徴とするテンソル因子分解処理プログラム。   A tensor factor decomposition processing program for causing a computer to function as each means constituting the tensor factor decomposition processing device according to any one of claims 1 to 3.
JP2015054271A 2015-03-18 2015-03-18 Tensor factorization processing apparatus, tensor factorization processing method, and tensor factorization processing program Active JP6038987B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015054271A JP6038987B2 (en) 2015-03-18 2015-03-18 Tensor factorization processing apparatus, tensor factorization processing method, and tensor factorization processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015054271A JP6038987B2 (en) 2015-03-18 2015-03-18 Tensor factorization processing apparatus, tensor factorization processing method, and tensor factorization processing program

Publications (2)

Publication Number Publication Date
JP2016173784A true JP2016173784A (en) 2016-09-29
JP6038987B2 JP6038987B2 (en) 2016-12-07

Family

ID=57008972

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015054271A Active JP6038987B2 (en) 2015-03-18 2015-03-18 Tensor factorization processing apparatus, tensor factorization processing method, and tensor factorization processing program

Country Status (1)

Country Link
JP (1) JP6038987B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107944556A (en) * 2017-12-12 2018-04-20 电子科技大学 Deep neural network compression method based on block item tensor resolution
JP2018128708A (en) * 2017-02-06 2018-08-16 日本電信電話株式会社 Tensor factor decomposition processing apparatus, tensor factor decomposition processing method and tensor factor decomposition processing program
JP2019220015A (en) * 2018-06-21 2019-12-26 日本電信電話株式会社 Processing apparatus, method, and program
JP2020027547A (en) * 2018-08-16 2020-02-20 日本電信電話株式会社 Tensor data calculation device, tensor data calculation method, and program
CN110941793A (en) * 2019-11-21 2020-03-31 湖南大学 Network traffic data filling method, device, equipment and storage medium
WO2020170358A1 (en) * 2019-02-20 2020-08-27 日本電気株式会社 Tensor decomposition processing system, method and program
KR20240046975A (en) 2022-10-04 2024-04-12 서울대학교산학협력단 Data-adaptive tensor analysis method and tensor analysis apparatus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015088118A (en) * 2013-11-01 2015-05-07 日本電信電話株式会社 Data analyzer, data analysis method, and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015088118A (en) * 2013-11-01 2015-05-07 日本電信電話株式会社 Data analyzer, data analysis method, and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016040431; Ji Liu et al.: '"Sparse non-negative tensor factorization using columnwise coordinate descent"' Pattern Recognition Vol.45, No.1, 201201, p.649-656 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018128708A (en) * 2017-02-06 2018-08-16 日本電信電話株式会社 Tensor factor decomposition processing apparatus, tensor factor decomposition processing method and tensor factor decomposition processing program
CN107944556A (en) * 2017-12-12 2018-04-20 电子科技大学 Deep neural network compression method based on block item tensor resolution
CN107944556B (en) * 2017-12-12 2020-09-08 电子科技大学 Deep neural network compression method based on block item tensor decomposition
JP2019220015A (en) * 2018-06-21 2019-12-26 日本電信電話株式会社 Processing apparatus, method, and program
JP6992688B2 (en) 2018-06-21 2022-01-13 日本電信電話株式会社 Processing equipment, methods, and programs
JP2020027547A (en) * 2018-08-16 2020-02-20 日本電信電話株式会社 Tensor data calculation device, tensor data calculation method, and program
JP7091930B2 (en) 2018-08-16 2022-06-28 日本電信電話株式会社 Tensor data calculator, tensor data calculation method and program
WO2020170358A1 (en) * 2019-02-20 2020-08-27 日本電気株式会社 Tensor decomposition processing system, method and program
US11789731B2 (en) 2019-02-20 2023-10-17 Nec Corporation Tensor decomposition processing system, method and program
CN110941793A (en) * 2019-11-21 2020-03-31 湖南大学 Network traffic data filling method, device, equipment and storage medium
CN110941793B (en) * 2019-11-21 2023-10-27 湖南大学 Network traffic data filling method, device, equipment and storage medium
KR20240046975A (en) 2022-10-04 2024-04-12 서울대학교산학협력단 Data-adaptive tensor analysis method and tensor analysis apparatus

Also Published As

Publication number Publication date
JP6038987B2 (en) 2016-12-07

Similar Documents

Publication Publication Date Title
JP6038987B2 (en) Tensor factorization processing apparatus, tensor factorization processing method, and tensor factorization processing program
Trodden et al. Distributed model predictive control of linear systems with persistent disturbances
Reina et al. A design pattern for decentralised decision making
Cai et al. Modeling and evaluating the AVS/RS with tier-to-tier vehicles using a semi-open queueing network
CN107111517B (en) Optimized allocation and/or generation of virtual machines for reducer tasks
Evtushenko et al. A deterministic algorithm for global multi-objective optimization
JP2018128708A (en) Tensor factor decomposition processing apparatus, tensor factor decomposition processing method and tensor factor decomposition processing program
Lippiello et al. Parameter estimation in the ETAS model: Approximations and novel methods
Xu et al. Adaptive surrogate-based design optimization with expected improvement used as infill criterion
Chakrabarty et al. Understanding heavy tails in a bounded world or, is a truncated heavy tail heavy or not?
Sartono et al. Constructing general orthogonal fractional factorial split-plot designs
Cai et al. Competitive exclusion in a vector–host epidemic model with distributed delay
Avrachenkov et al. Stability analysis and simulation of N-class retrial system with constant retrial rates and Poisson inputs
Stanimirović et al. Decomposition of Catalan numbers and convex polygon triangulations
Bouzebda et al. On a multidimensional general bootstrap for empirical estimator of continuous-time semi-Markov kernels with applications
US20150154493A1 (en) Techniques for utilizing and adapting a prediction model
Byrd et al. An active-set algorithm for nonlinear programming using parametric linear programming
Lin et al. On the multi-server retrial queue with geometric loss and feedback: computational algorithm and parameter optimization
Singh et al. Efficient calculation of the makespan for job-shop systems without recirculation using max-plus algebra
Torres et al. Storage services in private clouds: Analysis, performance and availability modeling
CN103970925B (en) The method of product structure behavior, system and storaging medium in simulating impact event
JP5555238B2 (en) Information processing apparatus and program for Bayesian network structure learning
Khaji et al. Uncertainty analysis of elastostatic problems incorporating a new hybrid stochastic-spectral finite element method
JP7039232B2 (en) Technical information sharing system and technical information sharing method
WO2020263180A1 (en) A computational and visualization aid for brainstorming and crowdsourcing of ideas

Legal Events

Date Code Title Description
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: 20161025

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161102

R150 Certificate of patent or registration of utility model

Ref document number: 6038987

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150