JP6659618B2 - Analysis apparatus, analysis method and analysis program - Google Patents

Analysis apparatus, analysis method and analysis program Download PDF

Info

Publication number
JP6659618B2
JP6659618B2 JP2017091187A JP2017091187A JP6659618B2 JP 6659618 B2 JP6659618 B2 JP 6659618B2 JP 2017091187 A JP2017091187 A JP 2017091187A JP 2017091187 A JP2017091187 A JP 2017091187A JP 6659618 B2 JP6659618 B2 JP 6659618B2
Authority
JP
Japan
Prior art keywords
data
prediction
predetermined
setting contents
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017091187A
Other languages
Japanese (ja)
Other versions
JP2018190130A (en
Inventor
哲哉 塩田
哲哉 塩田
一樹 及川
一樹 及川
雅人 澤田
雅人 澤田
拓郎 宇田川
拓郎 宇田川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2017091187A priority Critical patent/JP6659618B2/en
Publication of JP2018190130A publication Critical patent/JP2018190130A/en
Application granted granted Critical
Publication of JP6659618B2 publication Critical patent/JP6659618B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、分析装置、分析方法及び分析プログラムに関する。   The present invention relates to an analysis device, an analysis method, and an analysis program.

近年、機械学習を用いたデータ分析の適用事例が増加している。一方、データ分析に不可欠な統計や機械学習の知識の習得には、中長期的な教育が必要となる。そこで、非専門家が統計や機械学習の知識の習得を行うことなく、容易にデータ分析に従事できるよう、データ分析を支援する技術が開示されている。   In recent years, application examples of data analysis using machine learning have increased. On the other hand, acquiring statistics and machine learning knowledge, which are essential for data analysis, requires mid- to long-term education. Therefore, a technology that supports data analysis has been disclosed so that a non-expert can easily engage in data analysis without acquiring knowledge of statistics and machine learning.

例えば、逐次的最適化手法(SMBO:Sequential model-based optimization)を用いてパイプラインごとに精度の評価を行い、最適なパイプラインを探索する手法が知られている(例えば、非特許文献1及び2を参照)。なお、ここでは、パイプラインとは、予測モデルを構築する一連の処理であり、入力されたデータに対する前処理、ハイパーパラメータに基づくデータの学習等が含まれる。また、あらかじめ専門家が設計した多数のパイプラインの中から、分析対象のデータに適合した少数のパイプラインをユーザに提示する技術が知られている。   For example, there is known a method of evaluating the accuracy of each pipeline using a sequential optimization method (SMBO: Sequential model-based optimization) and searching for an optimal pipeline (for example, Non-Patent Document 1 and 2). Here, the pipeline is a series of processes for constructing a prediction model, and includes preprocessing for input data, learning of data based on hyperparameters, and the like. In addition, there is known a technique of presenting a user with a small number of pipelines suitable for data to be analyzed from a large number of pipelines designed in advance by experts.

また、一般的に、パイプラインを構成するデータの前処理や予測アルゴリズムに関する設定内容の候補が増加すると、より予測精度の高い予測モデルを構築可能なパイプラインが見つかる可能性が高くなる一方で、探索に要する時間が増加する。   Also, in general, when the number of candidates for the setting contents related to the pre-processing of data constituting the pipeline and the prediction algorithm increases, while the possibility of finding a pipeline capable of constructing a prediction model with higher prediction accuracy increases, The time required for searching increases.

Matthias Feurer,Aaron Klein,Katharina Eggensperger,Jost Tobias Springenberg,Manuel Blum,Frank Hutter,“Efficient and Robust Automated Machine Learning”,NIPS'15 Proceedings of the 28th International Conference on Neural Information Processing Systems,2015年12月,PP.2755-2763Matthias Feurer, Aaron Klein, Katharina Eggensperger, Jost Tobias Springenberg, Manuel Blum, Frank Hutter, “Efficient and Robust Automated Machine Learning”, NIPS'15 Proceedings of the 28th International Conference on Neural Information Processing Systems, December 2015, PP. 2755-2763 Lisha Li,Kevin Jamieson,Giulia DeSalvo,Afshin Rostamizadeh,Ameet Talwalkar,“Hyperband:A Novel Bandit-Based Approach to Hyperparameter Optimization”,arXiv:1603.06560v3,cs.LG,2016年11月Lisha Li, Kevin Jamieson, Giulia DeSalvo, Afshin Rostamizadeh, Ameet Talwalkar, "Hyperband: A Novel Bandit-Based Approach to Hyperparameter Optimization", arXiv: 1603.06560v3, cs. LG, November 2016

しかしながら、従来のデータ分析を自動化する技術には、パイプラインの探索に要する時間を短縮しつつ、予測精度の高い予測モデルを構築することができない場合があるという問題があった。例えば、単に探索の候補となる設定内容を削減することでパイプラインの探索に要する時間を削減することが考えられるが、この場合、十分な探索が行われず予測モデルの精度が低下する場合がある。   However, the conventional technology for automating data analysis has a problem in that it may not be possible to construct a prediction model with high prediction accuracy while reducing the time required for searching for a pipeline. For example, it is conceivable to reduce the time required for searching a pipeline simply by reducing the setting contents serving as search candidates, but in this case, sufficient search is not performed, and the accuracy of the prediction model may decrease. .

本発明の分析装置は、データが入力された場合、当該入力されたデータから所定の割合のデータをサンプルデータとして抽出し、前記所定の割合が増加した場合、前記入力されたデータから当該増加した所定の割合のデータを前記サンプルデータとしてさらに抽出する抽出部と、前記抽出部によって前記サンプルデータが抽出されるたびに、前記サンプルデータを用いて所定の処理のうちの一部を行った際に要した時間に基づいて、前記入力されたデータを用いて前記所定の処理を行った際に要する時間を推定し、当該推定した時間があらかじめ設定された制限時間未満である場合、前記所定の割合を増加させる推定部と、所定のデータに基づく予測モデルを構築する際に実行される複数の処理に適用される設定内容の組合せの候補から、前記複数の処理に適用された場合に構築される前記サンプルデータに基づく予測モデルの予測精度が所定の条件を満たすような設定内容の組合せを探索する探索部と、前記探索部によって探索された設定内容の組合せから、前記複数の処理に適用された場合に構築される前記入力されたデータに基づく予測モデルの予測精度が所定の閾値以上となる設定内容の組合せを選択する選択部と、を有することを特徴とする。   The analyzer of the present invention, when data is input, extracts a predetermined ratio of data as sample data from the input data, and when the predetermined ratio increases, the data is increased from the input data. An extracting unit for further extracting a predetermined ratio of data as the sample data, and each time the extracting unit extracts the sample data, a part of a predetermined process is performed using the sample data. Based on the required time, the time required for performing the predetermined processing using the input data is estimated, and if the estimated time is less than a preset time limit, the predetermined ratio And a candidate for a combination of setting contents applied to a plurality of processes executed when constructing a prediction model based on predetermined data, A search unit that searches for a combination of setting contents such that the prediction accuracy of a prediction model based on the sample data constructed when applied to a plurality of processes satisfies a predetermined condition; and a setting content searched by the search unit. And a selection unit that selects a combination of setting contents in which a prediction accuracy of a prediction model based on the input data constructed when applied to the plurality of processes is equal to or more than a predetermined threshold, from combinations of It is characterized by.

本発明によれば、パイプラインの探索に要する時間を短縮しつつ、予測精度の高い予測モデルを構築することができる。   According to the present invention, it is possible to construct a prediction model with high prediction accuracy while reducing the time required for searching for a pipeline.

図1は、第1の実施形態に係る分析装置の構成の一例を示す図である。FIG. 1 is a diagram illustrating an example of a configuration of the analyzer according to the first embodiment. 図2は、第1の実施形態に係る設定情報のデータ構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of a data configuration of the setting information according to the first embodiment. 図3は、第1の実施形態に係る予測器情報のデータ構成の一例を示す図である。FIG. 3 is a diagram illustrating an example of a data configuration of predictor information according to the first embodiment. 図4は、第1の実施形態に係る分析装置の処理概要を説明するための図である。FIG. 4 is a diagram for explaining an outline of a process performed by the analyzer according to the first embodiment. 図5は、第1の実施形態に係るパイプラインの探索について説明するための図である。FIG. 5 is a diagram for describing a search for a pipeline according to the first embodiment. 図6は、第1の実施形態に係る交差検証について説明するための図である。FIG. 6 is a diagram illustrating the cross-validation according to the first embodiment. 図7は、第1の実施形態に係るパイプラインの探索について説明するための図である。FIG. 7 is a diagram illustrating a search for a pipeline according to the first embodiment. 図8は、第1の実施形態に係る有望領域について説明するための図である。FIG. 8 is a diagram for explaining a promising area according to the first embodiment. 図9は、第1の実施形態に係るパイプラインの選択について説明するための図である。FIG. 9 is a diagram for describing selection of a pipeline according to the first embodiment. 図10は、第1の実施形態に係る有望領域について説明するための図である。FIG. 10 is a diagram for explaining a promising area according to the first embodiment. 図11は、第1の実施形態に係る予測モデルの合成について説明するための図である。FIG. 11 is a diagram for explaining the synthesis of the prediction model according to the first embodiment. 図12は、第1の実施形態に係る予測モデルの合成について説明するための図である。FIG. 12 is a diagram for describing the synthesis of the prediction model according to the first embodiment. 図13は、第1の実施形態に係る分析装置の処理の流れを示すフローチャートである。FIG. 13 is a flowchart illustrating the flow of the process of the analyzer according to the first embodiment. 図14は、第1の実施形態に係る分析装置の処理の流れを示すフローチャートである。FIG. 14 is a flowchart illustrating the flow of the process of the analyzer according to the first embodiment. 図15は、第1の実施形態の効果を説明するための図である。FIG. 15 is a diagram for explaining the effect of the first embodiment. 図16は、第1の実施形態の効果を説明するための図である。FIG. 16 is a diagram for explaining the effect of the first embodiment. 図17は、第2の実施形態に係る分析装置の処理の流れを示すフローチャートである。FIG. 17 is a flowchart illustrating the flow of the process of the analyzer according to the second embodiment. 図18は、分析プログラムを実行するコンピュータの一例を示す図である。FIG. 18 is a diagram illustrating an example of a computer that executes an analysis program.

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

[第1の実施形態]
[分析装置の構成]
図1を用いて、分析装置10の構成について説明する。図1は、第1の実施形態に係る分析装置の構成の一例を示す図である。図1に示すように、分析装置10は、ワークステーションやパソコン等の汎用コンピュータで実現され、入力部11と、出力部12と、通信制御部13と、記憶部14と、制御部15とを備える。
[First Embodiment]
[Configuration of analyzer]
The configuration of the analyzer 10 will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of a configuration of the analyzer according to the first embodiment. As shown in FIG. 1, the analyzer 10 is realized by a general-purpose computer such as a workstation or a personal computer, and includes an input unit 11, an output unit 12, a communication control unit 13, a storage unit 14, and a control unit 15. Prepare.

入力部11は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部15に対して各種指示情報を入力する。出力部12は、液晶ディスプレイ等の表示装置、プリンター等の印刷装置、情報通信装置等によって実現され、データ分析の結果等を操作者に対して出力する。   The input unit 11 is realized using an input device such as a keyboard and a mouse, and inputs various kinds of instruction information to the control unit 15 in response to an input operation by an operator. The output unit 12 is realized by a display device such as a liquid crystal display, a printing device such as a printer, an information communication device, and the like, and outputs a result of data analysis and the like to an operator.

通信制御部13は、NIC(Network Interface Card)等で実現され、LAN(Local Area Network)やインターネット等の電気通信回線を介した管理サーバ等の外部の装置と制御部15との通信を制御する。   The communication control unit 13 is realized by a NIC (Network Interface Card) or the like, and controls communication between the control unit 15 and an external device such as a management server via an electric communication line such as a LAN (Local Area Network) or the Internet. .

記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部14には、分析装置10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータ等があらかじめ記憶され、あるいは処理の都度一時的に記憶される。記憶部14は、通信制御部13を介して制御部15と通信する構成でもよい。また、記憶部14は、設定情報141及び予測器情報142を記憶する。   The storage unit 14 is realized by a semiconductor memory device such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk or an optical disk. In the storage unit 14, a processing program for operating the analyzer 10, data used during execution of the processing program, and the like are stored in advance, or temporarily stored for each processing. The storage unit 14 may be configured to communicate with the control unit 15 via the communication control unit 13. The storage unit 14 stores the setting information 141 and the predictor information 142.

ここで、図2を用いて、設定情報141について説明する。図2は、第1の実施形態に係る設定情報のデータ構成の一例を示す図である。図2に示すように、設定情報141は、ステップごとの実行順序及び設定内容候補を含む。設定内容候補は、各ステップに対応する設定項目の設定内容の候補である。   Here, the setting information 141 will be described with reference to FIG. FIG. 2 is a diagram illustrating an example of a data configuration of the setting information according to the first embodiment. As shown in FIG. 2, the setting information 141 includes an execution order for each step and a setting content candidate. The setting content candidate is a candidate for the setting content of the setting item corresponding to each step.

図2の例では、設定情報141は、ステップとして「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」があることを示している。なお、これらのステップは、データの前処理に対応するものである。   In the example of FIG. 2, the setting information 141 indicates that there are “missing value complementing method search”, “normalization method searching”, and “feature selection method searching” as steps. These steps correspond to data pre-processing.

図2の例では、設定情報141は、ステップ「特徴選択手法探索」が3番目に実行されるステップであることを示している。また、設定情報141は、ステップ「特徴選択手法探索」に対応する設定項目の設定内容の候補として、「決定木」、「L1正則化」、「分散分析」及び「無処理」があることを示している。なお、図2の例では、ステップ「特徴選択手法探索」に対応する設定項目は、特徴選択で用いられる手法である。   In the example of FIG. 2, the setting information 141 indicates that the step “feature selection method search” is the third step to be executed. Further, the setting information 141 indicates that there are “decision tree”, “L1 regularization”, “variance analysis”, and “no processing” as setting content candidates corresponding to the step “feature selection method search”. Is shown. In the example of FIG. 2, the setting item corresponding to the step “feature selection method search” is a method used in feature selection.

次に、図3を用いて、予測器情報142について説明する。図3は、第1の実施形態に係る予測器情報のデータ構成の一例を示す図である。図3に示すように、予測器情報142は、予測器ごとのデフォルトパラメータを含む。また、デフォルトパラメータは、各予測器のハイパーパラメータのデフォルト値である。例えば、予測器情報142は、予測器AのハイパーパラメータNのデフォルト値が100であることを示している。 Next, the predictor information 142 will be described with reference to FIG. FIG. 3 is a diagram illustrating an example of a data configuration of predictor information according to the first embodiment. As shown in FIG. 3, the predictor information 142 includes a default parameter for each predictor. The default parameter is a default value of the hyper parameter of each predictor. For example, the predictor information 142, the default value of the hyper-parameter N predictor A 1 indicates that it is 100.

制御部15は、CPU(Central Processing Unit)等の演算処理装置がメモリに記憶された処理プログラムを実行することにより、図1に例示するように、抽出部151、探索部152、推定部154、合成部155及び検証部156として機能する。また、探索部152は、ステップ選択部152a、精度計算部152b及び設定内容決定部152cを含む。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。   As illustrated in FIG. 1, the control unit 15 executes a processing program stored in a memory by an arithmetic processing device such as a CPU (Central Processing Unit), thereby extracting an extraction unit 151, a search unit 152, an estimation unit 154, It functions as the synthesis unit 155 and the verification unit 156. The search unit 152 includes a step selection unit 152a, an accuracy calculation unit 152b, and a setting content determination unit 152c. These functional units may be implemented individually or partially in different hardware.

抽出部151は、データが入力された場合、当該入力されたデータから所定の割合のデータをサンプルデータとして抽出し、所定の割合が増加した場合、入力されたデータから当該増加した所定の割合のデータをサンプルデータとしてさらに抽出する。図4に示すように、抽出部151は、入力された全データである学習用データからサンプルデータを抽出する。図4は、第1の実施形態に係る分析装置の処理概要を説明するための図である。ここで、抽出部151がサンプルデータを抽出する所定の割合、すなわちサンプリングにおけるサンプル率は、あらかじめ設定されているものとする。   When data is input, the extraction unit 151 extracts a predetermined ratio of data as sample data from the input data, and when the predetermined ratio increases, extracts the predetermined ratio of the increased predetermined ratio from the input data. The data is further extracted as sample data. As illustrated in FIG. 4, the extraction unit 151 extracts sample data from learning data, which is all input data. FIG. 4 is a diagram for explaining an outline of a process performed by the analyzer according to the first embodiment. Here, it is assumed that a predetermined ratio at which the extracting unit 151 extracts the sample data, that is, a sampling rate in sampling is set in advance.

探索部152は、所定のデータに基づく予測モデルを構築する際に実行される複数の処理に適用される設定内容の組合せの候補から、複数の処理に適用された場合に構築されるサンプルデータに基づく予測モデルの予測精度が所定の条件を満たすような設定内容の組合せを探索する。   The search unit 152 converts a candidate of a combination of setting contents applied to a plurality of processes executed when constructing a prediction model based on predetermined data from a sample data constructed when applied to a plurality of processes. Search for a combination of setting contents such that the prediction accuracy of the based prediction model satisfies predetermined conditions.

図4に示すように、探索部152は、予測器ごとに探索を行う。また、探索部152は、前処理の有効性判定を行ったうえでパラメータ探索を行い、交差検証による交差検証精度でパイプラインの取捨選択を行う。   As illustrated in FIG. 4, the search unit 152 performs a search for each predictor. In addition, the search unit 152 performs a parameter search after determining the validity of the preprocessing, and selects a pipeline with the cross-validation accuracy by the cross-validation.

ここで、図5を用いて、探索部152の処理について説明する。図5は、第1の実施形態に係るパイプラインの探索について説明するための図である。なお、探索部152における処理は、ステップ選択部152a、精度計算部152b及び設定内容決定部152cによって行われる。   Here, the processing of the search unit 152 will be described with reference to FIG. FIG. 5 is a diagram for describing a search for a pipeline according to the first embodiment. Note that the processing in the search unit 152 is performed by the step selection unit 152a, the accuracy calculation unit 152b, and the setting content determination unit 152c.

図5に示すように、まず、探索部152は、予測器ごとに、ステップ1〜3を実行することで予測モデルの構築に必要なパイプラインの決定を行う。例えば、探索部152は、予測器Aについてステップ1〜3を実行した後、パラメータ探索を実行する。 As illustrated in FIG. 5, first, the search unit 152 determines a pipeline necessary for constructing a prediction model by executing steps 1 to 3 for each predictor. For example, the search unit 152, after performing the steps 1 to 3 for the predictor A 1, executes the parameter search.

ステップ選択部152aは、予測モデルを構築する際に実行される複数の処理、すなわちパイプラインのそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する。設定内容決定部152cは、各ステップの設定内容を、設定情報141に含まれる設定内容候補の中から決定する。このとき、ステップ選択部152aは、設定情報141に示される実行順序に従って、設定内容が決定された次のステップを選択する。なお、いずれのステップも未実行である場合、ステップ選択部152aは実行順序が最も前であるステップを選択する。   The step selecting unit 152a corresponds to a plurality of processes executed when constructing the prediction model, that is, corresponds to each of the pipelines, and in the step of sequentially determining the setting content of the corresponding process, every time the setting content is determined. , Select the next step to be performed. The setting content determining unit 152c determines the setting content of each step from the setting content candidates included in the setting information 141. At this time, the step selecting unit 152a selects the next step whose setting content is determined according to the execution order indicated in the setting information 141. If none of the steps has been executed, the step selecting unit 152a selects the step whose execution order is the earliest.

例えば、図5に示すように、ステップ「正規化手法探索」の次のステップは「特徴選択手法探索」なので、ステップ「正規化手法探索」の設定内容が決定された場合、ステップ選択部152aは、次のステップとして「特徴選択手法探索」を選択する。   For example, as shown in FIG. 5, since the next step after the step “normalization method search” is “feature selection method search”, when the setting content of the step “normalization method search” is determined, the step selection unit 152a As a next step, "feature selection method search" is selected.

また、図5のステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」は、それぞれ、学習用及び分析用のデータの前処理である欠損値補完、正規化及び特徴選択の設定内容を決定するステップである。また、ステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」の設定内容候補は、それぞれ、欠損値補完、正規化及び特徴選択で用いられる手法である。   In addition, the steps “missing value complementing method search”, “normalization method searching”, and “feature selection method searching” in FIG. 5 are missing value complementing, normalizing, and normalizing data pre-processing of learning and analysis data, respectively. This is a step of determining the setting contents of the feature selection. The setting content candidates of the steps “missing value complementing method search”, “normalization method searching”, and “feature selection method searching” are methods used in missing value complementing, normalization, and feature selection, respectively.

精度計算部152bは、複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、ステップ選択部152aによって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に構築される予測モデルのそれぞれについて予測精度を計算する。   The accuracy calculation unit 152b performs the process of which the setting content is determined among the plurality of processes by applying the determined setting content, and performs the process corresponding to the step selected by the step selection unit 152a as the setting content. The prediction accuracy is calculated for each of the prediction models constructed when each of the candidates is applied.

例えば、ステップ選択部152aによってステップ「特徴選択手法探索」が選択された場合、ステップ「特徴選択手法探索」よりも実行順序が前であるステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容は決定済みであるため、ステップ「欠損値補完手法探索」及び「正規化手法探索」で決定された設定内容と、ステップ「特徴選択手法探索」の設定内容の候補のそれぞれを適用した予測モデルの構築が可能である。このとき、ステップ「特徴選択手法探索」の設定内容の候補は4つであるため、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容が1つに決定されている場合、少なくとも4通りの予測モデルが構築可能である。   For example, when the step “feature selection method search” is selected by the step selection unit 152a, the steps “missing value complementation method search” and “normalization method search” whose execution order is earlier than the step “feature selection method search” Since the setting contents of have already been determined, each of the setting contents determined in the steps “Search for missing value complementing method” and “Search for normalization method” and the candidates for the setting contents in the step “Search for feature selection method” were applied. It is possible to construct a prediction model. At this time, since there are four candidates for the setting contents of the step “feature selection method search”, when the setting contents of the steps “missing value complementing method search” and “normalization method search” are determined to be one, At least four types of prediction models can be constructed.

そして、精度計算部152bは、構築可能な予測モデルそれぞれについて予測精度を計算する。なお、このとき、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容は複数通り決定されていてもよい。例えば、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容が2通り決定されている場合、構築可能な予測モデルの数は少なくとも8通りである。また、精度計算部152bは、所定数に分割した学習用のデータを用いた交差検証を行うことで予測精度を計算することができる。ここで、図6を用いて交差検証について説明する。図6は、第1の実施形態に係る交差検証について説明するための図である。   Then, the accuracy calculator 152b calculates the prediction accuracy for each of the predictable models that can be constructed. At this time, the setting contents of the steps “search for missing value complementing method” and “search for normalizing method” may be determined in a plurality of ways. For example, when two settings are made for the steps “search for missing value complementing method” and “search for normalizing method”, the number of predictable models that can be constructed is at least eight. The accuracy calculation unit 152b can calculate the prediction accuracy by performing cross-validation using learning data divided into a predetermined number. Here, the cross-validation will be described with reference to FIG. FIG. 6 is a diagram illustrating the cross-validation according to the first embodiment.

図6に示すように、まず、精度計算部152bは、サンプルデータを分割データ20a、20b、20c及び20dの4つに分割する。そして、精度計算部152bは、1回目の処理として、予測モデルを用いて、分割データ20b、20c及び20dを予測器に学習させ、分割データ20aを用いて学習済みの予測器の精度を測定する。   As shown in FIG. 6, first, the accuracy calculation unit 152b divides the sample data into four pieces of divided data 20a, 20b, 20c, and 20d. Then, as the first process, the accuracy calculation unit 152b causes the predictor to learn the divided data 20b, 20c, and 20d using the prediction model, and measures the accuracy of the learned predictor using the divided data 20a. .

同様に、精度計算部152bは、2回目の処理では、分割データ20a、20c及び20dを予測器に学習させ、分割データ20bを用いて学習済みの予測器の精度を測定する。また、精度計算部152bは、3回目の処理では、分割データ20a、20b及び20dを予測器に学習させ、分割データ20cを用いて学習済みの予測器の精度を測定する。また、精度計算部152bは、4回目の処理では、分割データ20a、20b及び20cを予測器に学習させ、分割データ20dを用いて学習済みの予測器の精度を測定する。そして、精度計算部152bは、4回の処理で測定した精度の平均値である交差検証精度を予測精度とする。なお、交差検証における分割数は4に限定されず、任意の数とすることができる。   Similarly, in the second process, the accuracy calculation unit 152b causes the predictor to learn the divided data 20a, 20c, and 20d, and measures the accuracy of the learned predictor using the divided data 20b. In the third process, the accuracy calculation unit 152b causes the predictor to learn the divided data 20a, 20b, and 20d, and measures the accuracy of the learned predictor using the divided data 20c. In the fourth process, the accuracy calculation unit 152b causes the predictor to learn the divided data 20a, 20b, and 20c, and measures the accuracy of the learned predictor using the divided data 20d. Then, the accuracy calculation unit 152b sets the cross-validation accuracy, which is the average value of the accuracy measured in the four processes, as the prediction accuracy. Note that the number of divisions in the cross-validation is not limited to four, and may be any number.

設定内容決定部152cは、精度計算部152bによって計算された各予測精度を比較し、設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、ステップ選択部152aによって選択されたステップに対応する処理の設定内容に決定する。   The setting content determination unit 152c compares the prediction accuracy calculated by the accuracy calculation unit 152b, and determines the setting content candidate having the highest prediction accuracy among the setting content candidates in the step selected by the step selection unit 152a. Determine the settings for the corresponding process.

例えば、図5に示すように、ステップ「正規化手法探索」では、精度計算部152bは、設定内容「最大最小」に対応する予測モデルの予測精度を72%と計算し、設定内容「標準化」に対応する予測モデルの予測精度を78%と計算し、設定内容「Zスコア」に対応する予測モデルの予測精度を72%と計算し、設定内容「無処理」に対応する予測モデルの予測精度を70%と計算した。このとき、ステップ「正規化手法探索」において最も予測精度が高い予測モデルは設定内容「標準化」に対応する予測モデルであるため、設定内容決定部152cは、ステップ「正規化手法探索」に対応する設定項目の設定内容を「標準化」に決定する。つまり、設定内容決定部152cは、データの前処理である正規化で用いられる手法を標準化に決定する。   For example, as shown in FIG. 5, in the step “normalization method search”, the accuracy calculation unit 152b calculates the prediction accuracy of the prediction model corresponding to the setting content “maximum / minimum” as 72%, and sets the setting content “standardization”. The prediction accuracy of the prediction model corresponding to the setting content is calculated as 78%, the prediction accuracy of the prediction model corresponding to the setting content “Z score” is calculated as 72%, and the prediction accuracy of the prediction model corresponding to the setting content “no processing” Was calculated as 70%. At this time, since the prediction model having the highest prediction accuracy in the step “normalization method search” is the prediction model corresponding to the setting content “standardization”, the setting content determination unit 152c corresponds to the step “normalization method search”. Set the settings of the setting items to "Standardized". That is, the setting content determination unit 152c determines the method used in the normalization which is the pre-processing of the data to the standardization.

そして、前述の通り、ステップ選択部152aは、設定内容決定部152cによって設定内容が決定されたステップの次に実行されるステップを選択する。例えば、設定内容決定部152cによってステップ「正規化手法探索」における設定内容が決定された場合、ステップ選択部152aは、ステップ「特徴選択手法探索」を選択する。   Then, as described above, the step selecting unit 152a selects a step to be executed next to the step whose setting content is determined by the setting content determining unit 152c. For example, when the setting content in the step “normalization method search” is determined by the setting content determination unit 152c, the step selection unit 152a selects the step “feature selection method search”.

さらに、探索部152は、パラメータ探索を行う。パラメータ探索では、探索部152は、ハイパーパラメータの組合せごとの予測精度を網羅的に計算し、最も予測精度が高くなるベストパラメータを探索する。   Further, the search unit 152 performs a parameter search. In the parameter search, the search unit 152 comprehensively calculates the prediction accuracy for each combination of the hyperparameters, and searches for the best parameter with the highest prediction accuracy.

探索部152は、最終的に、パイプラインのうち、予測モデルの予測精度が所定の条件を満たすようなパイプラインを探索する。例えば、予測精度の閾値を70%とし、予測精度が閾値以上であるパイプラインのみを探索する場合、図7に示すように、探索部152は、パイプラインP〜Pを探索結果とする。図7は、第1の実施形態に係るパイプラインの探索について説明するための図である。 The search unit 152 finally searches the pipeline such that the prediction accuracy of the prediction model satisfies a predetermined condition. For example, when the threshold of the prediction accuracy is set to 70% and only the pipelines whose prediction accuracy is equal to or more than the threshold are searched, as illustrated in FIG. 7, the search unit 152 sets the pipelines P 1 to P 3 as the search result. . FIG. 7 is a diagram illustrating a search for a pipeline according to the first embodiment.

なお、探索部152によるハイパーパラメータの探索結果は、図8に示すように、領域として表すことができる。図8は、第1の実施形態に係る有望領域について説明するための図である。例えば、図8の(a)の縦軸は第1のハイパーパラメータを表し、横軸は第2のパラメータを表している。そして、図8の(a)は、パターンが密である領域ほど予測精度が高かったことを示している。   The search result of the hyperparameter by the search unit 152 can be represented as an area as shown in FIG. FIG. 8 is a diagram for explaining a promising area according to the first embodiment. For example, the vertical axis of FIG. 8A represents the first hyperparameter, and the horizontal axis represents the second parameter. FIG. 8A shows that the higher the density of the pattern, the higher the prediction accuracy.

このとき、探索部152は、予測精度が70%以上となるパイプラインだけでなく、予測精度が70%と統計的な有意差のない値になるようなパイプラインを探索結果とすることができる。つまり、探索部152は、複数の処理に適用された場合に構築されるサンプルデータに基づく予測モデルの予測精度が70%以上であるような設定内容の組合せ、及び、予測精度と70%以上である予測精度との間に統計的な有意差がないような設定内容の組合せを探索する。なお、ここでの70%は、第2の閾値の一例である。そして、この場合の探索結果に対応するハイパーパラメータの組合せに対応する領域を有望領域とよぶ。   At this time, the search unit 152 can set, as a search result, not only a pipeline having a prediction accuracy of 70% or more, but also a pipeline having a prediction accuracy of 70% and a value having no statistically significant difference. . That is, the search unit 152 sets the combination of the setting contents such that the prediction accuracy of the prediction model based on the sample data constructed when applied to a plurality of processes is 70% or more, and sets the prediction accuracy to 70% or more. A combination of setting contents that does not have a statistically significant difference from a certain prediction accuracy is searched. Note that 70% here is an example of the second threshold value. The area corresponding to the combination of the hyperparameters corresponding to the search result in this case is called a promising area.

ここで、図8の(a)は、サンプルデータを用いた場合の予測精度の有望領域を表している。また、図8の(b)は、サンプルデータの抽出元である学習用データを用いた場合の予測精度の有望領域を表している。図8に示すように、2つの有望領域は類似する。有望領域は、選択部153による処理で用いられる。   Here, FIG. 8A shows a promising region of the prediction accuracy when the sample data is used. FIG. 8B illustrates a promising region of the prediction accuracy when the learning data from which the sample data is extracted is used. As shown in FIG. 8, the two promising regions are similar. The promising area is used in the processing by the selection unit 153.

選択部153は、探索部152によって探索された設定内容の組合せから、複数の処理に適用された場合に構築される入力されたデータに基づく予測モデルの予測精度が所定の閾値以上となる設定内容の組合せを選択する。   The selecting unit 153 sets, from the combination of the setting contents searched by the searching unit 152, the setting contents in which the prediction accuracy of the prediction model based on the input data constructed when applied to a plurality of processes is equal to or more than a predetermined threshold value Select the combination of

つまり、探索部152がサンプルデータを用いて予測モデルの予測精度を評価していたのに対し、選択部153は学習用データを用いて予測モデルの予測精度を評価する。このとき、選択部153は、探索部152によって探索されたパイプラインごとの予測精度を、さらに閾値を用いて絞り込む。   That is, while the search unit 152 evaluates the prediction accuracy of the prediction model using the sample data, the selection unit 153 evaluates the prediction accuracy of the prediction model using the learning data. At this time, the selection unit 153 further narrows down the prediction accuracy for each pipeline searched by the search unit 152 using a threshold.

ここで、選択部153は、単に各予測精度が閾値以上となるパイプラインを選択してもよいし、各予測精度を最大予測精度で割った値が閾値以上となるパイプラインを選択してもよい。例えば、図9に示すように、パイプラインP、P、Pの予測精度が85%、70%、83%である場合、最大予測精度は85%である。図9は、第1の実施形態に係るパイプラインの選択について説明するための図である。 Here, the selection unit 153 may simply select a pipeline in which each prediction accuracy is equal to or more than a threshold, or select a pipeline in which a value obtained by dividing each prediction accuracy by the maximum prediction accuracy is equal to or more than the threshold. Good. For example, as shown in FIG. 9, when the prediction accuracy of the pipelines P 1 , P 2 , and P 3 is 85%, 70%, and 83%, the maximum prediction accuracy is 85%. FIG. 9 is a diagram for describing selection of a pipeline according to the first embodiment.

このとき、選択部153は、パイプラインPについては85/85と閾値を比較し、パイプラインPについては83/85と閾値を比較し、パイプラインPについては70/85と閾値を比較した結果を用いてパイプラインの選択を行うことができる。 In this case, selection section 153 compares the 85/85 and the threshold for the pipeline P 1 is compared with 83/85 and the threshold for the pipeline P 2, the 70/85 and the threshold for the pipeline P 1 The pipeline can be selected using the comparison result.

さらに、選択部153は、選択した組合せのデータの前処理に関する設定内容を固定し、ハイパーパラメータ探索を行う。ここで、探索部152による探索の結果、最も予測精度が高かったハイパーパラメータをベストパラメータ210とすると、有望領域は図10のように表すことができる。図10は、第1の実施形態に係る有望領域について説明するための図である。   Further, the selection unit 153 fixes the setting contents regarding the pre-processing of the data of the selected combination, and performs a hyperparameter search. Here, assuming that the hyperparameter with the highest prediction accuracy as a result of the search by the search unit 152 is the best parameter 210, the promising area can be represented as shown in FIG. FIG. 10 is a diagram for explaining a promising area according to the first embodiment.

図10の塗りつぶされた部分は有望領域を表している。また、図10の斜線部分は、探索部152によるハイパーパラメータ探索の対象であったが、選択部153によるハイパーパラメータ探索の対象から除外された領域である。なお、探索部152は、ベストパラメータ210の場合の予測精度を用いたt検定によって有意差の有無を判定することができる。   The shaded portions in FIG. 10 represent promising regions. The hatched portion in FIG. 10 is an area that is a target of the hyperparameter search by the search unit 152 but is excluded from a target of the hyperparameter search by the selection unit 153. Note that the search unit 152 can determine the presence or absence of a significant difference by a t-test using prediction accuracy in the case of the best parameter 210.

推定部154は、抽出部151によってサンプルデータが抽出されるたびに、サンプルデータを用いて所定の処理のうちの一部を行った際に要した時間に基づいて、入力されたデータを用いて所定の処理を行った際に要する時間を推定し、当該推定した時間があらかじめ設定された制限時間未満である場合、所定の割合を増加させる。推定部154による処理は、探索部152の処理の実行中の任意のタイミング、又は、探索部152の処理の実行前、又は、探索部152の処理の実行後であって選択部153の処理が行われる前に実行されてもよい。例えば、推定部154は、図5のステップ「欠損値補完手法探索」についての「平均値」の予測精度が計算された時点で、探索部152及び選択部153の処理時間を推定することができる。   Each time the extraction unit 151 extracts the sample data, the estimation unit 154 uses the input data based on the time required to perform a part of a predetermined process using the sample data. The time required for performing the predetermined process is estimated, and if the estimated time is less than a preset time limit, the predetermined ratio is increased. The processing by the estimation unit 154 is performed at an arbitrary timing during the execution of the processing of the search unit 152, before the execution of the processing of the search unit 152, or after the execution of the processing of the search unit 152, and when the processing of the selection unit 153 is executed. It may be performed before it is performed. For example, the estimating unit 154 can estimate the processing time of the searching unit 152 and the selecting unit 153 when the prediction accuracy of the “average value” for the step “missing value complementing method search” in FIG. 5 is calculated. .

まず、予測器ごとの、データ数が増加した場合の計算量の増加量が既知であることとする。例えば予測器Aの計算量の増加量がO(n)であるとする。また、サンプル率を20%とし、ステップ「欠損値補完手法探索」についての「平均値」の予測精度の計算に要した時間が100秒であったとする。図5に示すように、ステップは3つであり、各ステップには4つずつの設定内容の候補があるため、推定部154は、予測器Aについての探索部152の処理時間を、式(1)のように計算する。
100(秒)×3(ステップ)×4(設定内容)=1200(秒)・・・(1)
First, it is assumed that the amount of increase in the amount of calculation for each predictor when the number of data increases is known. For example the increase of the calculation amount predictor A 1 is assumed to be O (n 2). It is also assumed that the sample rate is 20% and the time required for calculating the prediction accuracy of the “average value” in the step “missing value complementing method search” is 100 seconds. As shown in FIG. 5, steps are three, because each step has a candidate set of parameters for each four, estimation unit 154, the processing time of the search section 152 for the predictor A 1, wherein Calculate as in (1).
100 (seconds) x 3 (steps) x 4 (settings) = 1200 (seconds) ... (1)

また、選択部153では、探索部152の100/20倍、すなわち5倍のデータが対象となるため、推定部154は、予測器Aについての選択部153の処理時間を、式(2)のように計算する。
100(秒)×5(計算量の増加量)×3(ステップ)×1(設定内容)
=7500(秒)・・・(2)
Further, the selecting unit 153, 100/20 times the search section 152, that is, the 5 times the data is of interest, estimating section 154, the processing time of the selection unit 153 of the predictor A 1, equation (2) Calculate as follows.
100 (seconds) x 5 2 (increase in calculation amount) x 3 (steps) x 1 (settings)
= 7500 (seconds) ... (2)

ここで、推定部154によって計算された処理時間((1)と(2)の合計)があらかじめ定められた制限時間未満であるか否かによって、以降の処理が異なる。探索部152は、推定部154によって推定された所要時間があらかじめ定められた制限時間未満である場合、所定の割合よりも高い割合で抽出部151によって抽出されたサンプルデータを用いてさらに探索を行う。   Here, the subsequent processing differs depending on whether or not the processing time (total of (1) and (2)) calculated by the estimating unit 154 is shorter than a predetermined time limit. When the required time estimated by the estimating unit 154 is shorter than a predetermined time limit, the searching unit 152 performs a further search using the sample data extracted by the extracting unit 151 at a rate higher than a predetermined rate. .

一方、探索部152は、推定部154によって推定された所要時間が制限時間以上である場合、予測方法が類似した予測アルゴリズムを除外して探索を実行する。このとき、探索部152は、推定時間が制限時間未満になるまで、予測アルゴリズムを除外する。   On the other hand, when the required time estimated by the estimating unit 154 is equal to or longer than the time limit, the searching unit 152 performs a search excluding a prediction algorithm having a similar prediction method. At this time, the search unit 152 excludes the prediction algorithm until the estimated time becomes less than the time limit.

具体的には、まず、予測器情報142は、予測アルゴリズム、すなわち予測器ごとのカテゴリを記憶しておく。そして、探索部152は、推定部154によって推定された所要時間が制限時間以上である場合、予測器情報142を参照し、カテゴリが同一である複数の予測器のうちのいずれかを除外する。例えば、探索部152は、あらかじめ設定された実行時間に関する情報に基づいて、実行時間が長い順に予測器を除外する。   Specifically, first, the predictor information 142 stores a prediction algorithm, that is, a category for each predictor. Then, when the required time estimated by the estimating unit 154 is equal to or longer than the time limit, the searching unit 152 refers to the predictor information 142 and excludes any one of the plurality of predictors having the same category. For example, the search unit 152 excludes the predictors in descending order of the execution time based on information about the execution time set in advance.

例えば、図3の予測器AをRandom Forest、予測器AをExtra Random Trees、予測器AをLogistic Regression、AをLinear SVMとする。そして、予測器情報142には、A及びAのカテゴリとして「決定木カテゴリ」が設定され、A及びAのカテゴリとして「線形予測器カテゴリ」が設定されていることとする。また、予測器情報142には、実行時間の長さの順序が、A、A、A、Aであることが設定されていることとする。 For example, predictor A 1 a Random Forest in FIG. 3, the predictor A 2 the Extra Random Trees, predictor A 3 a Logistic Regression, the A 4 and Linear SVM. Then, the predictor information 142, "decision tree category" is set as the category of A 1 and A 2, and the "linear predictor category" is set as the category of A 3 and A 4. Further, it is assumed that the order of the execution time lengths is set to A 2 , A 1 , A 3 , and A 4 in the predictor information 142.

このとき、探索部152は、推定部154によって推定された所要時間が制限時間以上である場合、まず、同一のカテゴリに複数の予測器が設定されていて、かつ、最も実行時間が長いAを除外する。ここで、Aが除外されても所要時間が制限時間以上であると推定される場合、探索部152は、残った予測器のうち、同一のカテゴリに複数の予測器が設定されていて、かつ、最も実行時間が長いAを除外する。探索部152は、複数の予測器が設定されたカテゴリがなくなるまで、又は、所要時間が制限時間以上であると推定されなくなるまで予測器の除外を繰り返す。 At this time, when the required time estimated by the estimating unit 154 is equal to or longer than the time limit, the searching unit 152 first sets A 2 in which a plurality of predictors are set in the same category and the execution time is the longest. Exclude Here, if be excluded A 1 is estimated to be required time is the time limit or more, the search unit 152, among the remaining predictor, a plurality of predictor is set to the same category, and, most execution time excludes a long a 3. The search unit 152 repeats the elimination of predictors until there is no category in which a plurality of predictors are set, or until the required time is not estimated to be longer than the time limit.

合成部155は、複数の設定内容の組合せが選択部153によって選択された場合、複数の設定内容の組合せのそれぞれに対応する複数の予測モデルを、所定のアンサンブル手法を用いて合成する。例えば、図11に示すように、選択部153によって2つのパイプラインが選択された場合、Model A及びModel Aの2つの予測モデルが構築可能となる。図11は、第1の実施形態に係る予測モデルの合成について説明するための図である。このとき、合成部155は、所定のアンサンブル手法により、Model A及びModel Aにそれぞれ重みw及び重みwを付けて合成する。 When a combination of a plurality of setting contents is selected by the selection unit 153, the combining unit 155 combines a plurality of prediction models corresponding to the respective combinations of the plurality of setting contents using a predetermined ensemble technique. For example, as shown in FIG. 11, if the two pipelines is selected by the selection unit 153, the two predictive models Model A 1 and Model A 3 is possible construction. FIG. 11 is a diagram for explaining the synthesis of the prediction model according to the first embodiment. In this case, the combining unit 155 by a predetermined ensemble technique, each synthesized weighted w 1 and the weight w 2 in Model A 1 and Model A 3.

さらに、合成部155は、図12に示すように、Model A、Model A、及び合成したEnsemble Modelのうち、汎化性能が最も大きい予測モデルをベストモデルとする。図12は、第1の実施形態に係る予測モデルの合成について説明するための図である。 Furthermore, as illustrated in FIG. 12, the combining unit 155 sets the prediction model having the largest generalization performance among the Model A 1 , the Model A 3 , and the combined Ensemble Model as the best model. FIG. 12 is a diagram for describing the synthesis of the prediction model according to the first embodiment.

検証部156は、選択部153によって選択されたパイプラインに基づいて構築される予測モデルの検証を行う。選択部153によってパイプラインが選択されると、検証部156は、決定されたパイプラインに基づいて予測器に学習用データを学習させ、予測モデルを構築する。そして、検証部156は、学習用データとは別のテスト用データを用いて、構築した予測モデルの予測精度をテスト精度として測定する。例えば、分析装置10は、ここで測定されたテスト精度を最終的な出力としてもよい。また、学習用データと異なるテスト用データを用いた検証を行うことで、過学習状態及び未学習状態の確認が可能となる。   The verification unit 156 verifies a prediction model constructed based on the pipeline selected by the selection unit 153. When a pipeline is selected by the selection unit 153, the verification unit 156 causes the predictor to learn learning data based on the determined pipeline, and constructs a prediction model. Then, the verification unit 156 uses the test data different from the learning data to measure the prediction accuracy of the constructed prediction model as the test accuracy. For example, the analyzer 10 may use the test accuracy measured here as a final output. In addition, by performing verification using test data different from the learning data, it is possible to confirm the overlearned state and the unlearned state.

[第1の実施形態の処理]
図13及び14を用いて、第1の実施形態に係る分析装置10の処理の流れについて説明する。図13及び14は、第1の実施形態に係る分析装置の処理の流れを示すフローチャートである。図13に示すように、まず、分析装置10は、学習用データを読み込む(ステップS101)。次に、抽出部151は、学習データから所定のサンプルサイズのサンプルデータを抽出する(ステップS102)。
[Processing of First Embodiment]
The processing flow of the analyzer 10 according to the first embodiment will be described with reference to FIGS. FIGS. 13 and 14 are flowcharts showing the flow of the process of the analyzer according to the first embodiment. As shown in FIG. 13, first, the analyzer 10 reads the learning data (step S101). Next, the extraction unit 151 extracts sample data of a predetermined sample size from the learning data (Step S102).

次に、探索部152は、未選択の予測器がある場合(ステップS103、Yes)、予測器情報142を参照し、次の予測器を選択する(ステップS104)。次に、探索部152は、読み込んだ学習用データを用いて、選択した予測器のパイプラインを決定する(ステップS105)。探索部152は、複数のパイプラインを決定してもよい。   Next, when there is an unselected predictor (Step S103, Yes), the search unit 152 refers to the predictor information 142 and selects the next predictor (Step S104). Next, the search unit 152 determines a pipeline of the selected predictor using the read learning data (step S105). The search unit 152 may determine a plurality of pipelines.

次に、図14を用いて、探索部152がパイプラインを決定する処理(図13のステップS105)について詳細に説明する。図14に示すように、ステップ選択部152aは、未選択のステップがある場合(ステップS201、Yes)、設定情報141を参照し、次のステップを選択する(ステップS202)。なお、次のステップとは、未選択のステップのうち、最も実行順序が早いステップである。また、本実施形態では、各ステップはデータの前処理のそれぞれに対応するものである。一方、未選択のステップがない場合(ステップS201、No)、分析装置10は、ハイパーパラメータの探索を行う(ステップS207)。   Next, the process in which the search unit 152 determines a pipeline (step S105 in FIG. 13) will be described in detail with reference to FIG. As illustrated in FIG. 14, when there is an unselected step (Step S201, Yes), the step selecting unit 152a refers to the setting information 141 and selects the next step (Step S202). The next step is a step having the earliest execution order among unselected steps. In this embodiment, each step corresponds to each of the data pre-processing. On the other hand, when there is no unselected step (Step S201, No), the analyzer 10 searches for a hyper parameter (Step S207).

ステップ選択部152aによって選択されたステップの設定内容候補のうち、未選択の設定内容がある場合(ステップS203、Yes)、精度計算部152bは、次の設定内容を選択する(ステップS204)。一方、未選択の設定内容がない場合(ステップS203、No)、設定内容決定部152cは、精度計算部152bによって計算された予測精度が最も高い設定内容をステップ選択部152aによって選択されたステップの設定内容に決定する(ステップS206)。   When there is an unselected setting content among the setting content candidates of the step selected by the step selecting unit 152a (Step S203, Yes), the accuracy calculation unit 152b selects the next setting content (Step S204). On the other hand, when there is no unselected setting content (No at Step S203), the setting content determining unit 152c determines the setting content having the highest prediction accuracy calculated by the accuracy calculating unit 152b in the step selected by the step selecting unit 152a. The content is determined (step S206).

精度計算部152bは、設定内容を選択すると、当該選択した設定内容を適用したパイプラインに基づいて構築される予測モデルの予測精度を計算する(ステップS205)。このとき、精度計算部152bは、所定数に分割した学習用データを用いた交差検証によって予測精度の計算を行うことができる。そして、精度計算部152bは、未選択の設定内容がなくなるまで、ステップS203〜S205の処理を繰り返す。   When the setting content is selected, the accuracy calculation unit 152b calculates the prediction accuracy of the prediction model constructed based on the pipeline to which the selected setting content is applied (Step S205). At this time, the accuracy calculation unit 152b can calculate the prediction accuracy by cross-validation using the learning data divided into a predetermined number. Then, the accuracy calculation unit 152b repeats the processing of steps S203 to S205 until there is no unselected setting content.

図13に戻り、推定部154は、未選択の予測器がない場合(ステップS103、No)、処理全体の時間を推定する(ステップS106)。推定した時間が制限時間未満である場合(ステップS107、Yes)、推定部154はサンプル率を増加させる(ステップS108)。そして、抽出部151は増加したサンプル率で再度サンプルデータを抽出する(ステップS102)。その後、分析装置10は、推定部154によって推定される時間が制限時間未満でなくなるまで処理を繰り返す。   Returning to FIG. 13, when there is no unselected predictor (No at Step S103), the estimating unit 154 estimates the entire processing time (Step S106). If the estimated time is less than the time limit (step S107, Yes), the estimating unit 154 increases the sample rate (step S108). Then, the extraction unit 151 extracts the sample data again at the increased sample rate (Step S102). Thereafter, the analyzer 10 repeats the processing until the time estimated by the estimating unit 154 is not less than the time limit.

一方、推定部154によって推定された時間が制限時間未満でない場合(ステップS107、No)、探索部152は、予測アルゴリズムを削減する(ステップS109)。そして、選択部153は、探索部152によって決定されたパイプラインから予測精度が閾値以上であるパイプラインを選択し、さらに、選択したパイプラインについてのハイパーパラメータ探索を行う(ステップS110)。そして、検証部156は、選択されたパイプラインに基づいて予測モデルを構築し(ステップS111)、構築した予測モデルをテスト用データを用いて検証する(ステップS112)。   On the other hand, when the time estimated by the estimating unit 154 is not less than the time limit (step S107, No), the searching unit 152 reduces the prediction algorithm (step S109). Then, the selecting unit 153 selects a pipeline whose prediction accuracy is equal to or larger than the threshold from the pipeline determined by the searching unit 152, and further performs a hyperparameter search for the selected pipeline (step S110). Then, the verification unit 156 constructs a prediction model based on the selected pipeline (Step S111), and verifies the constructed prediction model using the test data (Step S112).

[第1の実施形態の効果]
抽出部151は、データが入力された場合、当該入力されたデータから所定の割合のデータをサンプルデータとして抽出し、所定の割合が増加した場合、入力されたデータから当該増加した所定の割合のデータをサンプルデータとしてさらに抽出する。推定部154は、抽出部151によってサンプルデータが抽出されるたびに、サンプルデータを用いて所定の処理のうちの一部を行った際に要した時間に基づいて、入力されたデータを用いて所定の処理を行った際に要する時間を推定し、当該推定した時間があらかじめ設定された制限時間未満である場合、所定の割合を増加させる。また、探索部152は、所定のデータに基づく予測モデルを構築する際に実行される複数の処理に適用される設定内容の組合せの候補から、複数の処理に適用された場合に構築されるサンプルデータに基づく予測モデルの予測精度が所定の条件を満たすような設定内容の組合せを探索する。また、選択部153は、探索部152によって探索された設定内容の組合せから、複数の処理に適用された場合に構築される入力されたデータに基づく予測モデルの予測精度が所定の閾値以上となる設定内容の組合せを選択する。このように、サンプルデータを用いて予測精度が高くなるようなパイプラインを大まかに決定しておき、全データを用いて最終的なパイプラインを選択することで、パイプラインの探索に要する時間を短縮しつつ、予測精度の高い予測モデルを構築することができる。
[Effect of First Embodiment]
When data is input, the extraction unit 151 extracts a predetermined ratio of data as sample data from the input data, and when the predetermined ratio increases, extracts the predetermined ratio of the increased predetermined ratio from the input data. The data is further extracted as sample data. Each time the extraction unit 151 extracts the sample data, the estimation unit 154 uses the input data based on the time required to perform a part of a predetermined process using the sample data. The time required for performing the predetermined process is estimated, and if the estimated time is less than a preset time limit, the predetermined ratio is increased. In addition, the search unit 152 extracts a sample constructed when applied to a plurality of processes from a candidate of a combination of setting contents applied to a plurality of processes executed when constructing a prediction model based on predetermined data. A search is made for a combination of setting contents such that the prediction accuracy of the prediction model based on the data satisfies a predetermined condition. Further, the selecting unit 153 determines, from the combination of the setting contents searched by the searching unit 152, that the prediction accuracy of the prediction model based on the input data constructed when applied to a plurality of processes is equal to or greater than a predetermined threshold. Select a combination of settings. In this way, by roughly determining a pipeline with high prediction accuracy using sample data and selecting a final pipeline using all data, the time required for searching the pipeline is reduced. It is possible to construct a prediction model with high prediction accuracy while shortening.

図15は、auto−sklearnを用いた場合及び本実施形態を用いた場合についての、同じ実行時間の分析によって構築された予測モデルの予測精度を示している。図15は、第1の実施形態の効果を説明するための図である。図15に示すように、12種類中8種類のデータで、本実施形態の方が予測精度が高くなった。また、残り4種類についても、ほぼ同等の予想精度となった。   FIG. 15 shows the prediction accuracy of the prediction model constructed by the analysis of the same execution time when auto-skearn is used and when this embodiment is used. FIG. 15 is a diagram for explaining the effect of the first embodiment. As shown in FIG. 15, the prediction accuracy was higher in the present embodiment for eight of the twelve types of data. In addition, the same prediction accuracy was obtained for the remaining four types.

また、図16は、サンプルの抽出を行わずに探索部152及び選択部153の処理を行った場合(自動化ルール)、及び本実施形態の場合の、実行時間及び予測精度を示している。図16は、第1の実施形態の効果を説明するための図である。図16に示すように、本実施形態では、予測精度をほとんど低下させることなく、約70%の処理時間を削減することができた。   FIG. 16 shows the execution time and the prediction accuracy in the case where the processing of the search unit 152 and the selection unit 153 is performed without extracting the sample (automation rule), and in the case of the present embodiment. FIG. 16 is a diagram for explaining the effect of the first embodiment. As shown in FIG. 16, in the present embodiment, it was possible to reduce the processing time by about 70% without substantially lowering the prediction accuracy.

探索部152は、推定部154によって推定された所要時間が制限時間以上である場合、予測方法が類似した予測アルゴリズムを除外して探索を実行する。これにより、時間に余裕がない場合はさらに処理時間を短縮でき、時間に余裕がある場合はさらに予想精度の高い予測モデルを構築することができる。   When the required time estimated by the estimating unit 154 is equal to or longer than the time limit, the searching unit 152 performs a search excluding a prediction algorithm having a similar prediction method. As a result, when there is not enough time, the processing time can be further reduced, and when there is enough time, a prediction model with higher prediction accuracy can be constructed.

探索部152は、複数の処理に適用された場合に構築されるサンプルデータに基づく予測モデルの予測精度が第2の閾値以上であるような設定内容の組合せ、及び、予測精度と第2の閾値以上である予測精度との間に統計的な有意差がないような設定内容の組合せを探索する。これにより、最適なハイパーパラメータを短時間で探索することができるようになる。   The search unit 152 is a combination of setting contents such that the prediction accuracy of a prediction model based on sample data constructed when applied to a plurality of processes is equal to or greater than a second threshold, and the prediction accuracy and the second threshold A combination of setting contents that does not have a statistically significant difference from the prediction accuracy described above is searched. As a result, it is possible to search for an optimal hyper parameter in a short time.

合成部155は、複数の設定内容の組合せが選択部153によって選択された場合、複数の設定内容の組合せのそれぞれに対応する複数の予測モデルを、所定のアンサンブル手法を用いて合成する。これにより、各パイプラインを単独で選択する場合と比べて、より予測精度の高い予測モデルを構築できる。   When a combination of a plurality of setting contents is selected by the selection unit 153, the combining unit 155 combines a plurality of prediction models corresponding to the respective combinations of the plurality of setting contents using a predetermined ensemble technique. This makes it possible to construct a prediction model with higher prediction accuracy than in a case where each pipeline is selected alone.

[第2の実施形態]
第1の実施形態では、探索部152によってパイプラインが決定された後に、推定部154による処理時間の推定が行われる場合について説明した。ここで、前述の通り、推定部154による処理は、探索部152の処理の実行中の任意のタイミング、又は、探索部152の処理の実行前に行われてもよい。第2の実施形態では、探索部152によるパイプラインの決定に関する処理が開始される前に、推定部154による処理時間の推定が行われる。
[Second embodiment]
In the first embodiment, the case has been described where the estimation unit 154 estimates the processing time after the search unit 152 determines the pipeline. Here, as described above, the processing by the estimation unit 154 may be performed at any timing during the execution of the processing of the search unit 152 or before the execution of the processing of the search unit 152. In the second embodiment, the processing time is estimated by the estimating unit 154 before the processing regarding the determination of the pipeline by the searching unit 152 is started.

[第2の実施形態の処理]
図17を用いて、第2の実施形態に係る分析装置10の処理の流れについて説明する。図17は、第2の実施形態に係る分析装置の処理の流れを示すフローチャートである。図17に示すように、まず、分析装置10は、学習用データを読み込む(ステップS301)。次に、抽出部151は、学習データから所定のサンプルサイズのサンプルデータを抽出する(ステップS302)。
[Processing of the Second Embodiment]
The processing flow of the analyzer 10 according to the second embodiment will be described with reference to FIG. FIG. 17 is a flowchart illustrating the flow of the process of the analyzer according to the second embodiment. As shown in FIG. 17, first, the analyzer 10 reads the learning data (step S301). Next, the extraction unit 151 extracts sample data of a predetermined sample size from the learning data (Step S302).

次に、推定部154は、未選択の予測器がある場合(ステップS303、Yes)、予測器情報142を参照し、次の予測器を選択する(ステップS304)。次に、推定部154は、サンプルデータでの実行時間を実測し、学習用データでの実行時間を予測する(ステップS305)。   Next, when there is an unselected predictor (step S303, Yes), the estimating unit 154 refers to the predictor information 142 and selects the next predictor (step S304). Next, the estimating unit 154 actually measures the execution time in the sample data, and predicts the execution time in the learning data (step S305).

ここで、推定部154は、サンプルデータを用いた交差検証を実際に行い、その際に要した時間を計測する。具体的には、推定部154は、図6に示すような、精度計算部152bによる処理と同様の処理を行う。ただし、推定部154は、処理に要した時間を計測することを目的としているため、予測精度の計算は行わなくてもよい。   Here, the estimating unit 154 actually performs the cross-validation using the sample data, and measures the time required at that time. Specifically, the estimation unit 154 performs the same processing as the processing by the accuracy calculation unit 152b as shown in FIG. However, since the estimation unit 154 aims to measure the time required for the processing, it is not necessary to calculate the prediction accuracy.

また、精度計算部152bは、サンプルデータに対し前処理を行ったうえで当該サンプルデータを予測器に学習させる。これに対し、推定部154は、サンプルデータに対し前処理を行わず、直接学習器に学習させる。また、推定部154は、前述の式(1)及び(2)を用いて、学習用データでの実行時間を予測する。   Further, the accuracy calculation unit 152b performs pre-processing on the sample data, and then makes the predictor learn the sample data. On the other hand, the estimating unit 154 does not perform preprocessing on the sample data, and directly makes the learning device learn. Further, the estimating unit 154 estimates the execution time in the learning data using the above-described equations (1) and (2).

推定部154は、予測器を順次選択し、ステップS305を実行する。推定部154は、未選択の予測器がない場合(ステップS303、No)、処理全体の時間を推定する(ステップS306)。推定した時間が制限時間未満である場合(ステップS307、Yes)、推定部154はサンプル率を増加させる(ステップS308)。そして、抽出部151は増加したサンプル率で再度サンプルデータを抽出する(ステップS302)。その後、分析装置10は、推定部154によって推定される時間が制限時間未満でなくなるまで処理を繰り返す。   The estimating unit 154 sequentially selects predictors, and executes step S305. When there is no unselected predictor (No at Step S303), the estimating unit 154 estimates the time of the entire process (Step S306). When the estimated time is less than the time limit (step S307, Yes), the estimating unit 154 increases the sample rate (step S308). Then, the extraction unit 151 extracts the sample data again at the increased sample rate (Step S302). Thereafter, the analyzer 10 repeats the processing until the time estimated by the estimating unit 154 is not less than the time limit.

一方、推定部154によって推定された時間が制限時間未満でない場合(ステップS307、No)、探索部152は、予測アルゴリズムを削減する(ステップS309)。次に、探索部152は、未選択の予測器がある場合(ステップS310、Yes)、予測器情報142を参照し、次の予測器を選択する(ステップS311)。次に、探索部152は、読み込んだ学習用データを用いて、選択した予測器のパイプラインを決定する(ステップS312)。探索部152は、複数のパイプラインを決定してもよい。なお、探索部152がパイプラインを決定する処理は、図14に示す処理と同様である。   On the other hand, when the time estimated by the estimating unit 154 is not less than the time limit (No at Step S307), the searching unit 152 reduces the prediction algorithm (Step S309). Next, when there is an unselected predictor (step S310, Yes), the search unit 152 refers to the predictor information 142 and selects the next predictor (step S311). Next, the search unit 152 determines a pipeline of the selected predictor by using the read learning data (step S312). The search unit 152 may determine a plurality of pipelines. The process in which the search unit 152 determines a pipeline is the same as the process illustrated in FIG.

未選択の予測器がない場合(ステップS310、No)、選択部153は、探索部152によって決定されたパイプラインから予測精度が閾値以上であるパイプラインを選択し、さらに、選択したパイプラインについてのハイパーパラメータ探索を行う(ステップS313)。そして、検証部156は、選択されたパイプラインに基づいて予測モデルを構築し(ステップS314)、構築した予測モデルをテスト用データを用いて検証する(ステップS315)。   If there is no unselected predictor (No at Step S310), the selecting unit 153 selects a pipeline whose prediction accuracy is equal to or larger than a threshold from the pipelines determined by the searching unit 152, and further selects a pipeline with respect to the selected pipeline. Is performed (step S313). Then, the verification unit 156 constructs a prediction model based on the selected pipeline (Step S314), and verifies the constructed prediction model using the test data (Step S315).

[その他の実施形態]
探索部152は、入力されたデータの特徴量に所定のデータ特性がある場合、設定内容の組合せの候補のうち、所定のデータ特性にあらかじめ対応付けられた設定内容の組合せの候補から探索を行ってもよい。例えば、テキストデータのように、データに占めるゼロの割合が多いデータの場合、すなわちデータがスパースである場合、線形の予測器でも十分な精度が得られることが多い。このため、探索部152は、学習用データ又はサンプルデータがスパースである場合、予測器のうち、非線形の予測器を除外する。例えば、探索部152は、ゼロの割合が閾値r以上であるスパースな特徴量の、全体に占める割合が閾値r以上である場合、データがスパースであると判定する。閾値r及びrは、例えば0.9とすることができる。
[Other Embodiments]
When the feature amount of the input data has a predetermined data characteristic, the search unit 152 performs a search from the setting content combination candidates that are previously associated with the predetermined data characteristic among the setting content combination candidates. You may. For example, in the case of data such as text data in which the proportion of zero in the data is large, that is, when the data is sparse, sufficient accuracy can often be obtained even with a linear predictor. Therefore, when the learning data or the sample data is sparse, the search unit 152 excludes a non-linear predictor from the predictors. For example, the search unit 152, a sparse feature quantity ratio of zero is equal to or greater than the threshold r f, when the ratio of total is the threshold value r a more, determines that the data is sparse. Threshold r f and r a can be, for example, 0.9.

[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[System configuration, etc.]
Each component of each device illustrated is a functional concept and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed / arbitrarily divided into arbitrary units according to various loads and usage conditions. Can be integrated and configured. Further, all or any part of each processing function performed by each device can be realized by a CPU and a program analyzed and executed by the CPU, or can be realized as hardware by wired logic.

また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。   Further, of the processes described in the present embodiment, all or a part of the processes described as being performed automatically can be manually performed, or the processes described as being performed manually can be performed. All or part can be performed automatically by a known method. In addition, the processing procedures, control procedures, specific names, and information including various data and parameters shown in the above-mentioned documents and drawings can be arbitrarily changed unless otherwise specified.

[プログラム]
一実施形態として、分析装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の分析を実行する分析プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の分析プログラムを情報処理装置に実行させることにより、情報処理装置を分析装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
[program]
As one embodiment, the analyzer 10 can be implemented by installing an analysis program for performing the above analysis as package software or online software on a desired computer. For example, by causing the information processing device to execute the analysis program, the information processing device can function as the analysis device 10. The information processing apparatus referred to here includes a desktop or notebook personal computer. In addition, the information processing apparatus includes mobile communication terminals such as a smartphone, a mobile phone, and a PHS (Personal Handyphone System), and a slate terminal such as a PDA (Personal Digital Assistant).

また、分析装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の分析に関するサービスを提供する分析サーバ装置として実装することもできる。例えば、分析サーバ装置は、学習用データを入力とし、パイプライン又は予測モデルを出力とする分析サービスを提供するサーバ装置として実装される。この場合、分析サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の分析に関するサービスを提供するクラウドとして実装することとしてもかまわない。   Further, the analysis device 10 can be implemented as an analysis server device that provides a terminal device used by a user as a client and provides the client with the above-described analysis service. For example, the analysis server device is implemented as a server device that provides an analysis service that inputs learning data and outputs a pipeline or a prediction model. In this case, the analysis server device may be implemented as a Web server, or may be implemented as a cloud that provides the above-described analysis services by outsourcing.

図18は、分析プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。   FIG. 18 is a diagram illustrating an example of a computer that executes an analysis program. The computer 1000 has, for example, a memory 1010 and a CPU 1020. The computer 1000 has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.

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

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

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

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

10 分析装置
11 入力部
12 出力部
13 通信制御部
14 記憶部
15 制御部
141 設定情報
142 予測器情報
151 抽出部
152 探索部
152a ステップ選択部
152b 精度計算部
152c 設定内容決定部
153 選択部
154 推定部
155 合成部
156 検証部
Reference Signs List 10 analyzer 11 input unit 12 output unit 13 communication control unit 14 storage unit 15 control unit 141 setting information 142 predictor information 151 extraction unit 152 search unit 152a step selection unit 152b accuracy calculation unit 152c setting content determination unit 153 selection unit 154 estimation Unit 155 Synthesis unit 156 Verification unit

Claims (8)

データが入力された場合、当該入力されたデータから所定の割合のデータをサンプルデータとして抽出し、前記所定の割合が増加した場合、前記入力されたデータから当該増加した所定の割合のデータを前記サンプルデータとしてさらに抽出する抽出部と、
前記抽出部によって前記サンプルデータが抽出されるたびに、前記サンプルデータを用いて、あらかじめカテゴリが設定された予測アルゴリズムごとに、所定の処理のうちの一部を行った際に要した実行時間に基づいて、前記入力されたデータを用いて前記所定の処理を行った際に要する時間を推定し、当該推定した推定時間があらかじめ設定された制限時間未満である場合、前記所定の割合を増加させる推定部と、
前記推定時間が前記制限時間以上である場合、前記予測アルゴリズムのうち、同一のカテゴリが設定された予測アルゴリズムが複数ある予測アルゴリズムから、実行時間に基づいてあらかじめ設定された順序に従って予測アルゴリズムを除外した上で、所定のデータに基づく予測モデルを構築する際に実行される複数の処理に適用される設定内容であって、前記予測アルゴリズムの選択を含む設定内容の組合せの候補から、前記複数の処理に適用された場合に構築される前記サンプルデータに基づく予測モデルの予測精度が所定の条件を満たすような設定内容の組合せを探索する探索部と、
前記探索部によって探索された設定内容の組合せから、前記複数の処理に適用された場合に構築される前記入力されたデータに基づく予測モデルの予測精度が所定の閾値以上となる設定内容の組合せを選択する選択部と、
を有することを特徴とする分析装置。
When data is input, a predetermined ratio of data is extracted as sample data from the input data, and when the predetermined ratio is increased, the increased predetermined ratio of data is extracted from the input data. An extraction unit for further extracting as sample data,
Each time the sample data is extracted by the extraction unit, using the sample data, for each prediction algorithm in which a category is set in advance , the execution time required when performing a part of predetermined processing is reduced. Based on the input data, the time required for performing the predetermined process is estimated, and when the estimated time is shorter than a preset time limit, the predetermined ratio is increased. An estimator,
In the case where the estimated time is equal to or longer than the time limit, the prediction algorithm is excluded from a plurality of prediction algorithms in which the same category is set, according to a preset order based on the execution time. In the above, the setting contents applied to a plurality of processes executed when constructing a prediction model based on predetermined data, wherein the plurality of processes are selected from candidates of a combination of setting contents including selection of the prediction algorithm. A search unit that searches for a combination of setting contents such that the prediction accuracy of the prediction model based on the sample data constructed when applied to the predetermined condition is satisfied,
From the combination of setting contents searched by the search unit, a combination of setting contents where the prediction accuracy of a prediction model based on the input data constructed when applied to the plurality of processes is equal to or more than a predetermined threshold value is determined. A selection section to be selected,
An analyzer comprising:
データが入力された場合、当該入力されたデータから所定の割合のデータをサンプルデータとして抽出し、前記所定の割合が増加した場合、前記入力されたデータから当該増加した所定の割合のデータを前記サンプルデータとしてさらに抽出する抽出部と、When data is input, a predetermined ratio of data is extracted as sample data from the input data, and when the predetermined ratio is increased, the increased predetermined ratio of data is extracted from the input data. An extraction unit for further extracting as sample data,
前記抽出部によって前記サンプルデータが抽出されるたびに、前記サンプルデータを用いて、あらかじめカテゴリが設定された予測アルゴリズムごとに、所定の処理のうちの一部を行った際に要した実行時間に基づいて、前記入力されたデータを用いて前記所定の処理を行った際に要する時間を推定し、当該推定した推定時間があらかじめ設定された制限時間未満である場合、前記所定の割合を増加させる推定部と、Each time the sample data is extracted by the extraction unit, using the sample data, for each prediction algorithm in which a category is set in advance, the execution time required when performing a part of predetermined processing is reduced. Based on the input data, the time required for performing the predetermined process is estimated, and if the estimated time is less than a preset time limit, the predetermined ratio is increased. An estimator,
前記推定時間が前記制限時間以上である場合、前記予測アルゴリズムのうち、同一のカテゴリが設定された予測アルゴリズムが複数ある予測アルゴリズムから、実行時間に基づいてあらかじめ設定された順序に従って予測アルゴリズムを除外した上で、所定のデータに基づく予測モデルを構築する際に実行される複数の処理に適用される設定内容であって、前記予測アルゴリズムの選択、入力されるデータに対する前処理、及びハイパーパラメータのそれぞれの設定内容の組合せの候補から、前記複数の処理に適用された場合に構築される前記サンプルデータに基づく予測モデルの予測精度が所定の条件を満たすような設定内容の組合せを探索する探索部と、In the case where the estimated time is equal to or longer than the time limit, the prediction algorithm is excluded from a plurality of prediction algorithms in which the same category is set, according to a preset order based on the execution time. Above, the setting contents applied to a plurality of processes performed when constructing a prediction model based on predetermined data, each of the selection of the prediction algorithm, preprocessing for input data, and hyperparameters A search unit that searches for a combination of setting contents such that the prediction accuracy of a prediction model based on the sample data constructed when applied to the plurality of processes satisfies a predetermined condition, from candidates of the combination of setting contents. ,
前記探索部によって探索された設定内容の組合せから、前記複数の処理に適用された場合に構築される前記入力されたデータに基づく予測モデルの予測精度が所定の閾値以上となる設定内容の組合せを選択する選択部と、From the combination of setting contents searched by the search unit, a combination of setting contents where the prediction accuracy of a prediction model based on the input data constructed when applied to the plurality of processes is equal to or more than a predetermined threshold value is determined. A selection section to be selected,
を有することを特徴とする分析装置。An analyzer comprising:
前記探索部は、前記入力されたデータの特徴量に所定のデータ特性がある場合、前記設定内容の組合せの候補のうち、前記所定のデータ特性にあらかじめ対応付けられた設定内容の組合せの候補から探索を行うことを特徴とする請求項1又は2に記載の分析装置。 The search unit, when the feature amount of the input data has a predetermined data characteristic, among the candidates for the combination of the setting contents, from the candidates for the combination of the setting contents previously associated with the predetermined data characteristic. analyzer according to claim 1 or 2, characterized in that to search. 複数の設定内容の組合せが前記選択部によって選択された場合、前記複数の設定内容の組合せのそれぞれに対応する複数の予測モデルを、所定のアンサンブル手法を用いて合成する合成部をさらに有することを特徴とする請求項1から3のいずれか1項に記載の分析装置。   When a combination of a plurality of setting contents is selected by the selection unit, a combination unit for combining a plurality of prediction models corresponding to each of the plurality of combination of setting contents by using a predetermined ensemble method. The analyzer according to any one of claims 1 to 3, characterized in that: 前記探索部は、
予測モデルを構築する際に実行される複数の処理のそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択し、
前記複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、前記次に実行されるステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に構築される予測モデルのそれぞれについて予測精度を計算し、
計算した各予測精度を比較し、前記設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、前記次に実行されるステップに対応する処理の設定内容に決定することを特徴とする請求項1又は2に記載の分析装置。
The search unit,
In the step of sequentially determining the setting content of the corresponding process corresponding to each of the plurality of processes executed when constructing the prediction model, each time the setting content is determined, the step to be executed next is selected. ,
Among the plurality of processes, the setting content is determined by applying the determined setting content, and the process corresponding to the next step is performed by applying each of the setting content candidates. Calculate the prediction accuracy for each of the prediction models built when performed
The calculated prediction accuracy is compared, and among the setting content candidates, the setting content candidate having the highest prediction accuracy is determined as the setting content of the process corresponding to the next executed step. analyzer according to claim 1 or 2.
分析装置で実行される分析方法であって、
データが入力された場合、当該入力されたデータから所定の割合のデータをサンプルデータとして抽出し、前記所定の割合が増加した場合、前記入力されたデータから当該増加した所定の割合のデータを前記サンプルデータとしてさらに抽出する抽出工程と、
前記抽出工程によって前記サンプルデータが抽出されるたびに、前記サンプルデータを用いて、あらかじめカテゴリが設定された予測アルゴリズムごとに、所定の処理のうちの一部を行った際に要した実行時間に基づいて、前記入力されたデータを用いて前記所定の処理を行った際に要する時間を推定し、当該推定した推定時間があらかじめ設定された制限時間未満である場合、前記所定の割合を増加させる推定工程と、
前記推定時間が前記制限時間以上である場合、前記予測アルゴリズムのうち、同一のカテゴリが設定された予測アルゴリズムが複数ある予測アルゴリズムから、実行時間に基づいてあらかじめ設定された順序に従って予測アルゴリズムを除外した上で、所定のデータに基づく予測モデルを構築する際に実行される複数の処理に適用される設定内容であって、前記予測アルゴリズムの選択を含む設定内容の組合せの候補から、前記複数の処理に適用された場合に構築される前記サンプルデータに基づく予測モデルの予測精度が所定の条件を満たすような設定内容の組合せを探索する探索工程と、
前記探索工程によって探索された設定内容の組合せから、前記複数の処理に適用された場合に構築される前記入力されたデータに基づく予測モデルの予測精度が所定の閾値以上となる設定内容の組合せを選択する選択工程と、
を含んだことを特徴とする分析方法。
An analysis method performed by the analysis device,
When data is input, a predetermined ratio of data is extracted as sample data from the input data, and when the predetermined ratio is increased, the increased predetermined ratio of data is extracted from the input data. An extraction step for further extracting as sample data ,
Each time the sample data is extracted by the extraction step, using the sample data, for each prediction algorithm in which a category is set in advance, the execution time required when performing a part of predetermined processing is reduced. Based on the input data, the time required for performing the predetermined process is estimated, and when the estimated time is shorter than a preset time limit, the predetermined ratio is increased. The estimation process;
In the case where the estimated time is equal to or longer than the time limit, the prediction algorithm is excluded from the plurality of prediction algorithms in which the same category is set according to a preset order based on the execution time. In the above, the setting contents applied to a plurality of processes executed when constructing a prediction model based on predetermined data, wherein the plurality of processes are selected from candidates of a combination of setting contents including selection of the prediction algorithm. A search step of searching for a combination of setting contents such that the prediction accuracy of the prediction model based on the sample data constructed when applied to the predetermined condition is satisfied;
From the combination of setting contents searched in the search step, a combination of setting contents in which the prediction accuracy of a prediction model based on the input data constructed when applied to the plurality of processes is equal to or more than a predetermined threshold is determined. A selection process to select;
An analysis method comprising:
分析装置で実行される分析方法であって、An analysis method performed by the analysis device,
データが入力された場合、当該入力されたデータから所定の割合のデータをサンプルデータとして抽出し、前記所定の割合が増加した場合、前記入力されたデータから当該増加した所定の割合のデータを前記サンプルデータとしてさらに抽出する抽出工程と、When data is input, a predetermined ratio of data is extracted as sample data from the input data, and when the predetermined ratio is increased, the increased predetermined ratio of data is extracted from the input data. An extraction step for further extracting as sample data,
前記抽出工程によって前記サンプルデータが抽出されるたびに、前記サンプルデータを用いて、あらかじめカテゴリが設定された予測アルゴリズムごとに、所定の処理のうちの一部を行った際に要した実行時間に基づいて、前記入力されたデータを用いて前記所定の処理を行った際に要する時間を推定し、当該推定した推定時間があらかじめ設定された制限時間未満である場合、前記所定の割合を増加させる推定工程と、Each time the sample data is extracted by the extraction step, using the sample data, for each prediction algorithm in which a category is set in advance, the execution time required when performing a part of predetermined processing is reduced. Based on the input data, the time required for performing the predetermined process is estimated, and if the estimated time is less than a preset time limit, the predetermined ratio is increased. The estimation process;
前記推定時間が前記制限時間以上である場合、前記予測アルゴリズムのうち、同一のカテゴリが設定された予測アルゴリズムが複数ある予測アルゴリズムから、実行時間に基づいてあらかじめ設定された順序に従って予測アルゴリズムを除外した上で、所定のデータに基づく予測モデルを構築する際に実行される複数の処理に適用される設定内容であって、前記予測アルゴリズムの選択、入力されるデータに対する前処理、及びハイパーパラメータのそれぞれの設定内容の組合せの候補から、前記複数の処理に適用された場合に構築される前記サンプルデータに基づく予測モデルの予測精度が所定の条件を満たすような設定内容の組合せを探索する探索工程と、In the case where the estimated time is equal to or longer than the time limit, the prediction algorithm is excluded from a plurality of prediction algorithms in which the same category is set, according to a preset order based on the execution time. Above, the setting contents applied to a plurality of processes performed when constructing a prediction model based on predetermined data, each of the selection of the prediction algorithm, preprocessing for input data, and hyperparameters A search step of searching for a combination of setting contents such that the prediction accuracy of a prediction model based on the sample data constructed when applied to the plurality of processes satisfies a predetermined condition, from candidates of the combination of setting contents. ,
前記探索工程によって探索された設定内容の組合せから、前記複数の処理に適用された場合に構築される前記入力されたデータに基づく予測モデルの予測精度が所定の閾値以上となる設定内容の組合せを選択する選択工程と、From the combination of setting contents searched in the search step, a combination of setting contents in which the prediction accuracy of a prediction model based on the input data constructed when applied to the plurality of processes is equal to or more than a predetermined threshold is determined. A selection process to select;
を含んだことを特徴とする分析方法。An analysis method comprising:
コンピュータを、請求項1から5のいずれか1項に記載の分析装置として機能させるための分析プログラム。   An analysis program for causing a computer to function as the analysis device according to any one of claims 1 to 5.
JP2017091187A 2017-05-01 2017-05-01 Analysis apparatus, analysis method and analysis program Active JP6659618B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017091187A JP6659618B2 (en) 2017-05-01 2017-05-01 Analysis apparatus, analysis method and analysis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017091187A JP6659618B2 (en) 2017-05-01 2017-05-01 Analysis apparatus, analysis method and analysis program

Publications (2)

Publication Number Publication Date
JP2018190130A JP2018190130A (en) 2018-11-29
JP6659618B2 true JP6659618B2 (en) 2020-03-04

Family

ID=64478573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017091187A Active JP6659618B2 (en) 2017-05-01 2017-05-01 Analysis apparatus, analysis method and analysis program

Country Status (1)

Country Link
JP (1) JP6659618B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109947974A (en) * 2019-03-15 2019-06-28 百度在线网络技术(北京)有限公司 A kind of picture group packet method and device
JP7330783B2 (en) * 2019-07-03 2023-08-22 ロジスティード株式会社 Information processing system and information processing method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6555015B2 (en) * 2015-08-31 2019-08-07 富士通株式会社 Machine learning management program, machine learning management apparatus, and machine learning management method

Also Published As

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

Similar Documents

Publication Publication Date Title
US11568300B2 (en) Apparatus and method for managing machine learning with plurality of learning algorithms and plurality of training dataset sizes
US10839314B2 (en) Automated system for development and deployment of heterogeneous predictive models
US9684634B2 (en) Method and apparatus for evaluating predictive model
CN113168591A (en) Efficient configuration selection for automated machine learning
US20210103858A1 (en) Method and system for model auto-selection using an ensemble of machine learning models
JP6585654B2 (en) Determination apparatus, analysis system, determination method, and determination program
JP2019204499A (en) Data processing method and electronic apparatus
CN110909758A (en) Computer-readable recording medium, learning method, and learning apparatus
US9324026B2 (en) Hierarchical latent variable model estimation device, hierarchical latent variable model estimation method, supply amount prediction device, supply amount prediction method, and recording medium
JP6588495B2 (en) Analysis system, setting method and setting program
JP6659618B2 (en) Analysis apparatus, analysis method and analysis program
CN113159355A (en) Data prediction method, data prediction device, logistics cargo quantity prediction method, medium and equipment
JP6577516B2 (en) Determination apparatus, analysis system, determination method, and determination program
JP6577515B2 (en) Analysis apparatus, analysis method, and analysis program
JP7424373B2 (en) Analytical equipment, analytical methods and analytical programs
JP6611268B2 (en) Identification device, analysis system, identification method, and identification program
JP6588494B2 (en) Extraction apparatus, analysis system, extraction method, and extraction program
JP6233432B2 (en) Method and apparatus for selecting mixed model
JP6805313B2 (en) Specific device, specific method and specific program
US11177018B2 (en) Stable genes in comparative transcriptomics
WO2021075009A1 (en) Learning device, estimation device, learning method, and learning program
EP4310736A1 (en) Method and system of generating causal structure
US20220335310A1 (en) Detect un-inferable data
van der Hoeven The probability to select the correct model using likelihood-ratio based criteria in choosing between two nested models of which the more extended one is true
US20240111931A1 (en) Trial manufacturing condition proposing system and trial manufacturing condition proposing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190618

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190806

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200206

R150 Certificate of patent or registration of utility model

Ref document number: 6659618

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150