JPWO2013183425A1 - Performance prediction apparatus, performance prediction method, and program - Google Patents
Performance prediction apparatus, performance prediction method, and program Download PDFInfo
- Publication number
- JPWO2013183425A1 JPWO2013183425A1 JP2014519903A JP2014519903A JPWO2013183425A1 JP WO2013183425 A1 JPWO2013183425 A1 JP WO2013183425A1 JP 2014519903 A JP2014519903 A JP 2014519903A JP 2014519903 A JP2014519903 A JP 2014519903A JP WO2013183425 A1 JPWO2013183425 A1 JP WO2013183425A1
- Authority
- JP
- Japan
- Prior art keywords
- performance prediction
- model
- input
- cluster
- clusters
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3447—Performance evaluation by modeling
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
性能予測の対象システムの実際の振る舞いを反映した性能予測を行う。性能予測装置は、性能予測の対象とする性能予測対象システムの入力を、入力の種類と相互作用を考慮して、複数のクラスタにクラスタリングし、前記複数のクラスタのそれぞれに対応する前記性能予測対象システムの性能予測モデルに基づいて、入力に対して前記性能予測モデルの予測出力を算出し、前記算出した予測出力と性能予測対象システムの実際の出力との差がより小さくなるように、前記複数のクラスタのそれぞれに対応する性能予測対象システムの性能予測モデルを調整する。Performs performance prediction that reflects the actual behavior of the target system for performance prediction. The performance prediction apparatus clusters the input of the performance prediction target system as a target of performance prediction into a plurality of clusters in consideration of the type and interaction of the inputs, and the performance prediction target corresponding to each of the plurality of clusters Based on the performance prediction model of the system, the predicted output of the performance prediction model is calculated with respect to the input, and the plurality of the plurality of the output values so that the difference between the calculated predicted output and the actual output of the performance prediction target system is smaller. The performance prediction model of the performance prediction target system corresponding to each of the clusters is adjusted.
Description
本発明は、システムの実際の振る舞いを反映して、システムの性能予測を行う技術に関する。 The present invention relates to a technique for predicting system performance by reflecting actual behavior of the system.
システムの性能予測の技術に関して、特許文献1には、並列計算機システムを待ち行列モデルに変換することによって、マルチタスク環境における並列計算機のスループットやレスポンス、リソース使用率などの性能指標を予測する方法が提案されている。この待ち行列モデルによる予測においては、構築するシステムに関するパラメータ(例えば、1リクエストあたりの処理時間(Demand)など)が事前に与えられ、そのパラメータを用いて予測する。このパラメータを調整する技術として、特許文献2には、アプリケーションとアプリケーションモデルのそれぞれのログ出力を比較し、自動的にアプリケーションモデルのパラメータを調整して反映させることが開示されている。これにより、アプリケーションの実行環境に応じた適当なパラメータを選び、性能予測の精度を向上させることができる。
Regarding system performance prediction technology,
また、特許文献3においては、サーバ計算機システム全体をブラックボックス化し、計測トランザクションを与えて、待ち行列網によるモデルとは異なる単純確立計算で同時処理数を推定している。また、特許文献4では、機械の性能を推定するために、複数のデータ群のそれぞれを複数のモデルの学習データとして用いている。また、特許文献5には、モデルの構築方法に関する技術が開示されている。
In
しかしながら、特許文献1に開示された性能予測では、パラメータの調整が行われていないため、事前に与えられたパラメータの値と実際に構築した対象システムのパラメータの値とが異なることがある。そのため、モデルを用いて予測した性能指標が実際に構築した対象システムの性能指標とずれるという問題がある。
However, in the performance prediction disclosed in
また、特許文献2,3に開示された性能予測では、計測したデータを用いてパラメータ等の調整を行なっている。しかしながら、複数の異なる種類のリクエストが入力されるシステムの性能を予測する場合、調整に用いた計測データに対する入力データにおけるリクエストの各種類の比率と、予測したい状況の入力データにおけるリクエストの各種類の比率とが異なると、予測の精度が落ちるという問題がある。
In the performance prediction disclosed in
また、特許文献4においては、複数の異なる種類の運転環境データを複数のデータ群に分類している。しかしながら、分類の方法は、単純に各次元を所定の値に従い分割したものである。従って、この方法を複数の異なる種類のリクエストが入力されるシステムの性能予測に適用しても、これらのリクエストがシステムで同時実行される場合のリクエスト間の競合・干渉などを考慮した性能予測を行うことができない。
In
本発明は、上述の課題を解決するためになされたものであり、その目的は、システムの実際の振る舞いを反映してシステムの性能予測を行うことが可能な性能予測装置、性能予測方法及びプログラムを提供することである。 The present invention has been made to solve the above-described problems, and its purpose is to provide a performance prediction apparatus, a performance prediction method, and a program capable of performing system performance prediction reflecting the actual behavior of the system. Is to provide.
上記目的を達成するため、本発明に係る性能予測装置は、性能予測の対象となるシステムへの入力を、当該入力の種類及び当該入力間の相互作用に応じて複数のクラスタのいずれかに分類するクラスタリング手段と、前記分類されたクラスタに対応する前記システムの性能予測モデルを用いて、前記入力に対する予測出力を算出する予測出力算出手段と、前記算出された予測出力と前記システムの実際の出力との差が小さくなるように、前記分類されたクラスタに対応する前記システムの性能予測モデルのパラメータを調整するモデル調整手段とを備えたことを特徴とする。 In order to achieve the above object, the performance prediction apparatus according to the present invention classifies an input to a system subject to performance prediction into one of a plurality of clusters according to the type of the input and the interaction between the inputs. Clustering means, a predicted output calculating means for calculating a predicted output for the input using a performance prediction model of the system corresponding to the classified cluster, the calculated predicted output, and an actual output of the system Model adjustment means for adjusting parameters of the performance prediction model of the system corresponding to the classified clusters.
本発明に係る性能予測方法は、制御部を有する情報処理装置において実施される方法であって、前記制御部が、性能予測の対象となるシステムへの入力を、当該入力の種類及び当該入力間の相互作用に応じて複数のクラスタのいずれかに分類するクラスタリングステップと、前記制御部が、前記分類されたクラスタに対応する前記システムの性能予測モデルを用いて、前記入力に対する予測出力を算出する予測出力算出ステップと、前記制御部が、前記算出された予測出力と前記システムの実際の出力との差が小さくなるように、前記分類されたクラスタに対応する前記システムの性能予測モデルのパラメータを調整するモデル調整ステップとを備えることを特徴とする。 The performance prediction method according to the present invention is a method implemented in an information processing apparatus having a control unit, wherein the control unit inputs an input to a system that is a target of performance prediction, between the type of the input and the input between the inputs. A clustering step of classifying the cluster into one of a plurality of clusters according to the interaction, and the control unit calculates a predicted output for the input using a performance prediction model of the system corresponding to the classified cluster A predicted output calculation step, and the control unit sets parameters of the system performance prediction model corresponding to the classified cluster such that a difference between the calculated predicted output and the actual output of the system is reduced. And a model adjustment step for adjustment.
本発明に係るプログラムは、コンピュータを、本発明に係る前記性能予測装置として機能させることを特徴とする。 A program according to the present invention causes a computer to function as the performance prediction apparatus according to the present invention.
本発明によれば、システムの実際の振る舞いを反映してシステムの性能予測を行うことが可能な性能予測装置、性能予測方法及びプログラムを提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the performance prediction apparatus, the performance prediction method, and program which can perform the performance prediction of a system reflecting the actual behavior of a system can be provided.
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素は単なる例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。 Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the drawings. However, the constituent elements described in the following embodiments are merely examples, and are not intended to limit the technical scope of the present invention only to them.
[第1の実施形態]
図1は、本発明の第1の実施形態に係る情報処理装置1の機能構成例を示すブロック図である。情報処理装置1は、性能予測装置として機能する。情報処理装置1は、コンピュータ等のプログラムに従って動作する装置である。情報処理装置1は、モデル蓄積部101と、クラスタリング部102と、性能予測部103と、モデル調整部104と、を含む。[First Embodiment]
FIG. 1 is a block diagram illustrating a functional configuration example of the
モデル蓄積部101は、性能予測の対象とするシステムの性能指標の入力と出力の関係のモデルを蓄積しているデータベース(以下、DB)である。
ここで、入力とは、例えば、単位時間内にシステムが処理しなくてはならないリクエスト数などである。出力とは、例えば、システムのスループットや応答時間などである。しかし、入力及び出力はこれらに限定されるものではなく、独立変数と従属変数の関係としてモデルで記述できる場合には、その独立変数を入力とし、従属変数を出力としてもよい。The
Here, the input is, for example, the number of requests that the system must process within a unit time. The output is, for example, system throughput or response time. However, the input and output are not limited to these, and if the model can be described as the relationship between the independent variable and the dependent variable, the independent variable may be the input and the dependent variable may be the output.
ここで、モデルとは、システムの性能予測モデルであり、システムへの入力に対して、あらかじめ定められた手順に従って、計算もしくはシミュレーションを行うことによって、システムからの出力の予測を決定するものである。例えば、CPU(Central Processing Unit)などのコンピュータの各構成要素の動作を模倣した待ち行列をモデルとすることができる。また、学習や回帰などの手段によって、入力に対して適当な出力を決定することができる仕組み(例えば、ニューラルネットワークや隠れマルコフモデル、多項式関数近似など)をモデルとすることができる。これらのモデルは単なる例示であり、モデルをこれらに限定するものではない。 Here, the model is a system performance prediction model, and determines the prediction of the output from the system by performing calculation or simulation according to a predetermined procedure with respect to the input to the system. . For example, a queue that imitates the operation of each component of a computer such as a CPU (Central Processing Unit) can be used as a model. In addition, a mechanism (for example, a neural network, a hidden Markov model, a polynomial function approximation, or the like) that can determine an appropriate output for an input by means such as learning or regression can be used as a model. These models are merely examples, and the models are not limited to these.
クラスタリング部102は、性能予測の対象とするシステムへの入力を、入力の種類と入力間の相互作用(関係性)を考慮して、複数のクラスタのいずれかにクラスタリングする。ここで、クラスタリングとは、あるデータの集合に対し、関係性を有するデータ同士が同じ組(クラスタ)となるようにデータを分類する処理である。
The
例えば、性能予測対象システムへの入力が複数の異なる種類のリクエストを含む場合、各クラスタは、入力におけるリクエストの種類毎の比率で与えられる(比率に応じて定義される)。例えば、平日・休日・月末など、ある時期における典型的な比率が分かっている場合、各時期における比率をそれぞれクラスタとして定義してもよい。この場合、予測したい時期における性能予測対象システムへの入力リクエストの比率が、どのクラスタに属するかが判別される。 For example, when the input to the performance prediction target system includes a plurality of different types of requests, each cluster is given at a ratio for each type of request in the input (defined according to the ratio). For example, when typical ratios at a certain time such as weekdays, holidays, and the end of the month are known, the ratios at each time may be defined as clusters. In this case, it is determined to which cluster the ratio of input requests to the performance prediction target system at the time of prediction belongs.
性能予測部103は、モデル蓄積部101を参照してシステムへの入力が属するクラスタに対応するモデルを特定し、当該モデルにおける入力と出力との関係を用いて、性能予測対象システムの入力に対する予測出力を算出する。
The performance prediction unit 103 refers to the
モデル調整部104は、あるクラスタに対応するモデルについて、性能予測部103が算出した予測出力と、性能予測対象システムの実際の出力との間の差に基づいて、モデルのパラメータを調整する。ここで、モデルのパラメータとは、例えば、待ち行列モデルであれば、1リクエストあたりの処理時間などであり、ニューラルネットワークであれば、シナプス荷重などである。以下では、モデルに含まれるパラメータを調整することを、モデルを調整する、と表現する。
The
なお、性能予測対象システムの実際の出力の値は、任意の方法で取得することができる。例えば、性能予測対象システムの実際の出力の値は、情報処理装置1が有する記憶部から取得されてもよいし、情報処理装置1の外部装置から取得されてもよい。また、調整後のパラメータは、性能予測部103によって保持される。しかしながら、これに限定されず、調整後のパラメータは、モデル蓄積部101又は他の要素によって保持されてもよい。性能予測部103は、調整後のパラメータを用いて、モデルによって予測出力を算出する。
The actual output value of the performance prediction target system can be obtained by any method. For example, the actual output value of the performance prediction target system may be acquired from a storage unit included in the
モデルを調整するアルゴリズムは、具体的には、算出したモデルの予測出力を性能予測対象システムの実際の出力に近づけるように、学習または最適化手法などの方法を用いてモデルを調整する。例えば、モデルがニューラルネットワークの場合には、バックプロパゲーションなどの学習アルゴリズムによってシナプス荷重を補正する。モデルが多項式近似の場合は、最小二乗法などで各項の係数を補正する。モデルが待ち行列の場合は、カルマンフィルタなどでリクエストの処理時間を補正する。このほかにも、性能予測対象システムの実際の出力と予測出力の差を評価する関数として、強化学習や遺伝的アルゴリズム、モンテカルロ法、線形計画法などを用いて、モデルのパラメータを補正しても良く、モデルを調整する方法は、これらの例示に限定されない。 Specifically, the algorithm for adjusting the model adjusts the model by using a method such as a learning or optimization method so that the predicted output of the calculated model approaches the actual output of the performance prediction target system. For example, when the model is a neural network, the synaptic load is corrected by a learning algorithm such as backpropagation. When the model is a polynomial approximation, the coefficient of each term is corrected by the least square method or the like. If the model is a queue, the request processing time is corrected by a Kalman filter or the like. In addition, as a function to evaluate the difference between the actual output of the performance prediction target system and the predicted output, the model parameters can be corrected using reinforcement learning, genetic algorithm, Monte Carlo method, linear programming, etc. The method for adjusting the model is not limited to these examples.
また、一実施形態において、情報処理装置1は、ハードウェア構成として、制御部、記憶部、及び入出力部を備える。制御部は、CPUなどで構成される。記憶部は、RAM(Random Access Memory)、ROM(Read Only Memory)、及びHDD(Hard Disc Drive)などで構成される。入出力部は、操作部、表示部、及び通信インタフェースなどの各種インタフェースで構成される。上述した情報処理装置1が備える機能は、これらのハードウェアと記憶部に記憶された各種プログラムとの協働により実現される。
In one embodiment, the
図2を参照して、モデル蓄積部101に記憶されているデータの構成を説明する。予測対象システムID151は、性能予測の対象となるシステムを識別する識別子である。クラスタID152は、予測対象システムへの入力が属するクラスタを識別する識別子である。モデル153は、システムの性能予測モデルの種類である。モデル調整アルゴリズム154は、モデルを調整するために用いられるアルゴリズムの種類である。モデル調整条件155は、モデルの調整を終了する条件である。
With reference to FIG. 2, the configuration of data stored in the
クラスタID152は、予測対象システムID151に対応付けて記憶されている。同様に、モデル153、モデル調整アルゴリズム154及びモデル調整条件155は、ブラックボックスID151及びクラスタID152に対応付けて記憶されている。
The
モデル調整条件155に関して、例えば、モデル調整部104は、性能予測対象システムの実際の出力と、モデルが予測した予測出力とを比較し、その差があらかじめ定められた精度(すなわち、モデル調整条件155として記憶された値)以下である場合に調整を完了する。このように調整が完了したとき、モデルによって、あらかじめ定められた精度内で実システムの振る舞いを予測できる。
With respect to the
また、変形例として、性能予測対象システムの実際の出力と、モデルが予測した予測出力との差が、ある一定回数の調整を経ても変化しない場合(すなわち、調整が平衡状態にあるとみなせる場合)に調整完了としてもよい。あるいは、あらかじめ定められた回数の調整を行った場合に、調整完了としてもよい。 As a modification, the difference between the actual output of the performance prediction target system and the predicted output predicted by the model does not change after a certain number of adjustments (ie, the adjustment can be considered to be in an equilibrium state). ) May be completed. Alternatively, the adjustment may be completed when the adjustment is performed a predetermined number of times.
なお、図2の予測対象システムID151が「001」の場合のように、全てのクラスタに対して、同じモデル、モデル調整アルゴリズム、モデル調整条件を適用しても良い。あるいは、予測対象システムID151が「002」の場合のように、各クラスタで、異なったモデル、モデル調整アルゴリズム、モデル調整条件を適用しても良い。
Note that the same model, model adjustment algorithm, and model adjustment condition may be applied to all clusters, as in the case where the prediction
次に、図3を参照して、情報処理装置1による処理のフローの例について説明する。この処理の制御は、情報処理装置1に備える制御部が記憶部に記憶されたプログラムを展開し、実行することによって行われる。
Next, an example of the flow of processing by the
まず、ステップS201において、クラスタリング部102は、性能予測対象システムへの入力データをいずれかのクラスタにクラスタリング(分類)する。このクラスタリングは、性能予測対象システムへの入力データの種類及び入力データ間の相互作用に応じて行われる。
First, in step S201, the
例えば、リクエストの相互作用は、入力されたリクエスト内におけるリクエストの種類の比率(すなわち、システムが同時に処理するリクエスト)に依存する。従って、性能予測対象システムへの入力データ内における入力データの種類の比率に応じて入力データをクラスタリングすることによって、入力データの種類及び相互作用に応じたクラスタリングを行うことができる。 For example, request interaction depends on the ratio of request types in the input request (ie, requests that the system processes simultaneously). Therefore, clustering according to the type and interaction of the input data can be performed by clustering the input data according to the ratio of the type of input data in the input data to the performance prediction target system.
図4Aは、性能予測対象システムへの入力データの例を示しているである。ここでは、入力データには2種類のリクエストが含まれており、それぞれのリクエストの単位時刻あたりの数がグラフで示されている。横軸は時刻、縦軸は単位時刻あたりのリクエスト数である。この例では、2種類のリクエストの比率に応じて、クラスタ1,2が定義されているとする。クラスタ1は、リクエスト1の数とリクエスト2の数の比が1:2であるクラスタである。クラスタ2は、リクエスト1の数とリクエスト2の数の比が4:3であるクラスタである。入力データに含まれているリクエストの比率がどのクラスタに近いかを判別することによって、クラスタリングが行なわれる。
FIG. 4A shows an example of input data to the performance prediction target system. Here, the input data includes two types of requests, and the number of each request per unit time is shown in a graph. The horizontal axis represents time, and the vertical axis represents the number of requests per unit time. In this example, it is assumed that
図4Bは、図4Aに示される入力データを、横軸をリクエスト1の数、縦軸をリクエスト2の数でプロットしたグラフを示している。図4Bのグラフには、入力データのほかに、リクエスト数の比が1:2の直線と、4:3の直線がプロットされている。図4Bでは、×印で表された入力データはクラスタ1にクラスタリングされ、○印で表された入力データはクラスタ2にクラスタリングされている。ここで、入力データとクラスタの近さの指標は、例えば、入力データの比率と各クラスタの比率の距離(ユークリッド距離など)、及び/又は図4Bのような複数種類のリクエスト数のプロットにおいて注目しているデータ点と直線で表現されるクラスタとの距離を用いることができる。その他に、注目しているデータ点と原点を通る直線とクラスタを表現する直線のそれぞれの傾きを表す単位ベクトルの内積を用いることができる。しかしながら、入力データとクラスタの近さの指標は、これらの例示に限定されるものではない。
4B shows a graph in which the input data shown in FIG. 4A is plotted with the number of
図4A、図4Bでは2種類のリクエスト、2種類のクラスタの場合を例示したが、複数種類のリクエスト、複数種類のクラスタの場合でも適用が容易にできることは自明であろう。 4A and 4B exemplify the case of two types of requests and two types of clusters. However, it is obvious that the application can be easily performed even in the case of a plurality of types of requests and a plurality of types of clusters.
次に、ステップS202において、性能予測部103は、モデル蓄積部101を参照して、S201でクラスタリングされたクラスタに対応するモデルの入力と出力との関係を用いて、性能予測対象システムへの入力に対する予測出力を算出する。
Next, in step S202, the performance prediction unit 103 refers to the
そして、ステップS203において、モデル調整部104は、モデルの調整が終了したか否かをモデル蓄積部101のモデル調整条件155に基づいて判断する。ここで、モデルの調整が終了したかどうかは、各クラスタに対応するモデルのそれぞれについて、図2のモデル調整条件155に基づいて判断される。モデルの調整が終了したと判断された場合、処理は終了する。調整終了と判断されない場合、処理はステップS204に進む。
In step S <b> 203, the
ステップS204において、モデル調整部104は、ステップS202において算出されたモデルの予測出力と、性能予測対象システムの実際の出力とを基に、モデルを調整する。ここで、モデルの調整は、各クラスタに対応するモデルのそれぞれについて、図2のモデル調整アルゴリズム154に基づいて行なわれる。ステップS204でモデルを調整した後、処理はステップS203に戻り、性能予測部103は、調整されたモデルが予測する予測出力を再び算出する。
In step S204, the
次に、本実施形態の効果について説明する。本実施形態においては、性能予測対象システムの入力を、入力の種類と相互作用(関係性)(例えば、入力に含まれるリクエストの種類ごとの比率)を考慮して、複数のクラスタのいずれかにクラスタリングする。そして、性能予測対象システムの入力に対して、クラスタに対応するモデルが予測する予測出力を算出し、性能予測対象システムの実際の出力と予測出力との差が小さくなるように、モデルを調整する。その結果、本実施形態によれば、複数種類の入力の相互作用によって性能の変動がある性能予測対象システムに対して、複数のクラスタに対応するモデルを調整することで、性能予測の対象システムの実際の振る舞いを反映した性能予測を行うことができる。例えば、複数のクラスタは、システムへの入力に含まれる各リクエストの比率などで定義されても良い。リクエストの相互作用は、リクエストの比率(すなわち、システムが同時に処理するリクエスト)に依存する。従って、クラスタごとにモデルを調整することは、実際に生じるリクエストの相互作用を反映することに他ならない。 Next, the effect of this embodiment will be described. In this embodiment, the input of the performance prediction target system is assigned to any of a plurality of clusters in consideration of the type of input and interaction (relationship) (for example, the ratio for each type of request included in the input). Clustering. Then, for the input of the performance prediction target system, the prediction output predicted by the model corresponding to the cluster is calculated, and the model is adjusted so that the difference between the actual output of the performance prediction target system and the prediction output is small. . As a result, according to the present embodiment, by adjusting the models corresponding to a plurality of clusters with respect to the performance prediction target system in which the performance varies due to the interaction of multiple types of inputs, Performance prediction that reflects actual behavior can be performed. For example, a plurality of clusters may be defined by the ratio of each request included in the input to the system. Request interaction depends on the ratio of requests (ie, requests that the system processes simultaneously). Therefore, adjusting the model for each cluster is a reflection of the actual interaction of requests.
[第2の実施形態]
図5は、本発明の第2の実施形態に係る情報処理装置3の機能構成例を示すブロック図である。情報処理装置3の構成のうち、第1の実施形態における情報処理装置1と同じ構成については、同じ符号を付している。ここでは、情報処理装置3の構成のうち、情報処理装置1と異なる部分についてのみ説明する。その他の構成およびその動作については、説明を省略する。なお、情報処理装置3のハードウェア構成は、第1の実施形態と同様である。[Second Embodiment]
FIG. 5 is a block diagram illustrating a functional configuration example of the
クラスタリング部302は、性能予測対象システムへの入力の種類及び相互作用に応じて、複数のクラスタを作成し、当該入力を複数のクラスタのいずれかにクラスタリングする。ここで、クラスタの作成は、例えば、入力に含まれる複数種類のリクエストに対して重回帰式などをあてはめることによって行うことができる。
The
図6に、性能予測対象システムへの入力データの例を示す。この例では、入力データに2種類のリクエストが含まれている。図6は、横軸をリクエスト1の数、縦軸をリクエスト2の数で単位時刻ごとにプロットしたグラフを示している。図6には、入力データのほかに、入力データを回帰式にあてはめた2本の直線をプロットしている。それぞれの直線(すなわち、回帰式)がそれぞれのクラスタを示している。入力データは、2種類のクラスタのどちらかにクラスタリングされる。図6では、2種類のリクエスト、2つのクラスタの場合を例示したが、一般には、複数種類のリクエストに対して、複数の重回帰式をあてはめればよい。複数の重回帰式を当てはめる方法は、例えば、特許文献5に記載の方法でも良いし、他の方法でも良い。なお、複数の重回帰式の全てが同じ次元でなくても良い。
FIG. 6 shows an example of input data to the performance prediction target system. In this example, two types of requests are included in the input data. FIG. 6 shows a graph in which the horizontal axis plots the number of
図7に、リクエストが3種類である場合の例を示す。各軸は、各リクエストの単位時刻の数を表している。リクエスト1,2,3の数をそれぞれN1,N2,N3とする。このとき、クラスタ1は、N3=A*N1+B*N2という重回帰式で表されるような2次元平面的なクラスタである(A、Bは係数)。クラスタ2は、N3=C*N2かつN2=D*N1という重回帰式で表されるような1次元直線的なクラスタである(C、Dは係数)。このように違う次元のクラスタを作成しても良い。作成されるクラスタの個数は、あらかじめ決められていても良いし、作成された回帰式の自由度と精度からモデルの良さを評価する指標(赤池情報量規準:AICやベイズ情報量規準:BICなど)を計算し、その値が最適な値になるような個数だけクラスタを作成するようにしてもよい。
FIG. 7 shows an example in which there are three types of requests. Each axis represents the number of unit times of each request. Assume that the numbers of
モデル作成部305は、クラスタリング部302が作成したクラスタのそれぞれに対応するモデルを作成する。
図8Aに、クラスタを作成する前の時点での、モデルを蓄積しているDBの構成を示す。クラスタが作成される前なので、クラスタは1つである(すなわち全ての入力は同じクラスタに属している)。クラスタを作成後、モデル作成部305は、例えば、各クラスタに対するモデルを、図8Aに示されるようなクラスタ作成前のモデルを複製することによって、作成する。予測対象システムID151が「001」のものに対して、3つのクラスタを作成し、それに対応するモデルを作成した様子を図8Bに示す。図8Bに例示されるように、予測対象システムID151が「001」のものの全てのクラスタに対して同じモデルが作成されている。The
FIG. 8A shows the configuration of the DB storing the models at the time before creating the cluster. Since the cluster is not created, there is only one cluster (ie all inputs belong to the same cluster). After creating the cluster, the
あるいは、モデル作成部305は、例えば、各クラスタに対するモデルを、クラスタの性質を取り入れて作成しても良い。図8Aに示されるようなクラスタ作成前のモデルを複製した後、各クラスタの性質を取り入れてモデルを作成した場合を図8Cに例示する。図8Cに例示されるように、予測対象システムID151が「001」のものの各クラスタに対するモデルは、種類の違うニューラルネットワークとなっている。
Alternatively, for example, the
クラスタの性質を取り入れる方法としては、クラスタが重回帰式の場合、その次元を反映させるなどが考えられる。例えば、図8Aの時点でのニューラルネットワークの入力ニューロンの数は、リクエストの種類の数だけあり、各入力ニューロンには、対応する種類のリクエストの単位時刻の数が入力されるとする。このようなニューラルネットワークが複製され、各クラスタに対応される場合を考える。例として図7の場合を考えると、クラスタ1は2次元平面的なクラスタなので、このクラスタ内の任意の1点を指定するのに必要な独立な変数の数は2つで十分である。よって、このクラスタ内の独立した基底ベクトルを新たに2つとり、それらをモデルへの入力変数とすることができる。よって、このクラスタに対応するニューラルネットワークの入力ニューロンの数は、リクエストの種類の数である3個から、独立変数の数である2個でよいことになる。同様に、クラスタ2は1次元直線的なクラスタなので、このクラスタに対応するニューラルネットワークの入力ニューロンは1個でよい。このように、クラスタの次元を考慮することによって、入力ニューロンの数を減らすことができる。ニューラルネットワークに限らず、一般的なモデルで、このような入力変数の種類の削減が可能であることは自明であろう。
As a method of incorporating the properties of the cluster, when the cluster is a multiple regression equation, the dimension can be reflected. For example, it is assumed that the number of input neurons of the neural network at the time of FIG. 8A is the number of request types, and the number of unit times of the corresponding type of request is input to each input neuron. Consider a case where such a neural network is duplicated and corresponds to each cluster. Considering the case of FIG. 7 as an example, since the
次に情報処理装置3による処理のフローについて説明する。図9は、情報処理装置3の処理を示すフローチャートである。この処理の制御は、情報処理装置3の制御部が記憶部に記憶されたプログラムを展開し、実行することによって行われる。なお、図9において、第1の実施形態の図3と同様のステップには同じ参照番号が付されており、これらのステップについては、第1の実施形態と同様の処理を行うため、説明は省略する。
Next, the flow of processing by the
ステップS401において、クラスタリング部302は、性能予測対象システムへの入力に応じて、クラスタを作成する。そして、ステップS402において、モデル生成部305は、クラスタリング部302で作成されたクラスタのそれぞれに対応するモデルを作成する。なお、ステップS402において、作成されたモデルや付随するモデル調整アルゴリズム・モデル調整条件を、対応するクラスタを参照しながら人手によって修正を加えても良い。
In step S401, the
次に、第2の実施形態の効果について説明する。本実施形態に係る性能予測装置としての情報処理装置3は、第1の実施形態と比べると、入力からクラスタを作成し、クラスタごとにモデルを作成する点で異なる。本実施形態によれば、入力からクラスタを作成するので、性能予測を行うときにクラスタが生成されていない場合でも、入力の内容に応じてクラスタを生成することができ、かつ、生成されたクラスタごとにモデルを対応させることができる。
Next, effects of the second embodiment will be described. The
また、重回帰式によってクラスタを作成することで、入力の相互作用を取り入れたモデルの調整ができる。例えば、1次元直線的なクラスタの場合は、各種類のリクエストの比率が一定であることを示しており、このような場合でのモデルの調整ができる。2次元平面的なクラスタの場合(すなわち、N3=A*N1+B*N2のような場合)には、リクエスト1が(1/A)回起こるとリクエスト3が1回起こる、または、リクエスト2が(1/B)回起こるとリクエスト3が1回起こる、というリクエストの平均的な振る舞いを表しており、このような場合でのモデルの調整ができる。3次元以上のクラスタの場合でも同様である。
In addition, by creating clusters using multiple regression equations, it is possible to adjust models that incorporate input interactions. For example, in the case of a one-dimensional linear cluster, the ratio of requests of each type is constant, and the model can be adjusted in such a case. In the case of a two-dimensional planar cluster (ie, N3 = A * N1 + B * N2), if
さらに、本実施形態によれば、各クラスタに対応するモデルを、クラスタの情報を反映して作成することができる。例えば、クラスタの次元を反映すると、上記で説明したように、入力変数の次元を減らすことができる。一般に、次元が小さいほど学習の速度は速くなる効果が得られる。 Furthermore, according to the present embodiment, a model corresponding to each cluster can be created by reflecting the cluster information. For example, reflecting the dimension of the cluster can reduce the dimension of the input variable as described above. In general, the smaller the dimension, the higher the learning speed.
本発明の具体的な構成は前述の実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の変更があってもこの発明に含まれる。 The specific configuration of the present invention is not limited to the above-described embodiment, and modifications within a range not departing from the gist of the present invention are included in the present invention.
この出願は、2012年6月6日に出願された日本出願特願2012−129164を基礎とする優先権を主張し、その開示の全てをここに取り込む。 This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2012-129164 for which it applied on June 6, 2012, and takes in those the indications of all here.
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
上記の実施の形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。 A part or all of the above embodiment can be described as in the following supplementary notes, but is not limited thereto.
(付記1)性能予測の対象となるシステムへの入力を、当該入力の種類及び当該入力間の相互作用に応じて複数のクラスタのいずれかに分類するクラスタリング手段と、
前記分類されたクラスタに対応する前記システムの性能予測モデルを用いて、前記入力に対する予測出力を算出する予測出力算出手段と、
前記算出された予測出力と前記システムの実際の出力との差が小さくなるように、前記分類されたクラスタに対応する前記システムの性能予測モデルのパラメータを調整するモデル調整手段と
を備えたことを特徴とする性能予測装置。(Appendix 1) Clustering means for classifying the input to the system subject to performance prediction into one of a plurality of clusters according to the type of the input and the interaction between the inputs,
Predicted output calculation means for calculating a predicted output for the input using a performance prediction model of the system corresponding to the classified cluster;
Model adjustment means for adjusting parameters of the performance prediction model of the system corresponding to the classified cluster so that a difference between the calculated predicted output and the actual output of the system is reduced. A characteristic performance prediction device.
(付記2)前記クラスタリング手段は、性能予測の対象となるシステムへの入力の種類及び入力間の相互作用に応じて、当該入力についての複数のクラスタを作成することを特徴とする付記1に記載の性能予測装置。
(Additional remark 2) The said clustering means produces the several cluster about the said input according to the kind of input to the system used as the object of performance prediction, and the interaction between inputs, The
(付記3)前記複数のクラスタのそれぞれに対応する前記システムの性能予測モデルを作成するモデル作成手段を備えることを特徴とする付記1又は2に記載の性能予測装置。
(Additional remark 3) The performance prediction apparatus of
(付記4)前記モデル作成手段は、前記クラスタの情報を反映して前記性能予測モデルを生成することを特徴とする付記3に記載の性能予測装置。
(Additional remark 4) The said model preparation means produces | generates the said performance prediction model reflecting the information of the said cluster, The performance prediction apparatus of
(付記5)前記クラスタは、前記入力に含まれるリクエストの種類のそれぞれの比率に応じて定義されることを特徴とする付記1から4のいずれか1つに記載の性能予測装置。
(Additional remark 5) The said cluster is defined according to each ratio of the kind of request contained in the said input, The performance prediction apparatus as described in any one of
(付記6)前記クラスタは、前記入力に対して重回帰式をあてはめることによって定義することを特徴とする付記1から4のいずれか1つに記載の性能予測装置。
(Supplementary note 6) The performance prediction apparatus according to any one of
(付記7)制御部を有する情報処理装置において実施される性能予測方法であって、
前記制御部が、性能予測の対象となるシステムへの入力を、当該入力の種類及び当該入力間の相互作用に応じて複数のクラスタのいずれかに分類するクラスタリングステップと、
前記制御部が、前記分類されたクラスタに対応する前記システムの性能予測モデルを用いて、前記入力に対する予測出力を算出する予測出力算出ステップと、
前記制御部が、前記算出された予測出力と前記システムの実際の出力との差が小さくなるように、前記分類されたクラスタに対応する前記システムの性能予測モデルのパラメータを調整するモデル調整ステップと
を備えることを特徴とする性能予測方法。(Appendix 7) A performance prediction method implemented in an information processing apparatus having a control unit,
A clustering step in which the control unit classifies the input to the system that is the target of performance prediction into one of a plurality of clusters according to the type of the input and the interaction between the inputs;
A predictive output calculating step in which the control unit calculates a predictive output for the input using a performance prediction model of the system corresponding to the classified cluster;
A model adjustment step in which the control unit adjusts parameters of the performance prediction model of the system corresponding to the classified cluster so that a difference between the calculated predicted output and an actual output of the system is reduced; A performance prediction method comprising:
(付記8)コンピュータを付記1から7のいずれか1つに記載の性能予測装置として機能させるためのプログラム。
(Additional remark 8) The program for functioning a computer as a performance prediction apparatus as described in any one of
1,3 情報処理装置
101 モデル蓄積部
102,302 クラスタリング部
103 性能予測部
104 モデル調整部
305 モデル生成部1, 3
Claims (8)
前記分類されたクラスタに対応する前記システムの性能予測モデルを用いて、前記入力に対する予測出力を算出する予測出力算出手段と、
前記算出された予測出力と前記システムの実際の出力との差が小さくなるように、前記分類されたクラスタに対応する前記システムの性能予測モデルのパラメータを調整するモデル調整手段と
を備えたことを特徴とする性能予測装置。Clustering means for classifying the input to the system subject to performance prediction into one of a plurality of clusters according to the type of the input and the interaction between the inputs;
Predicted output calculation means for calculating a predicted output for the input using a performance prediction model of the system corresponding to the classified cluster;
Model adjustment means for adjusting parameters of the performance prediction model of the system corresponding to the classified cluster so that a difference between the calculated predicted output and the actual output of the system is reduced. A characteristic performance prediction device.
前記制御部が、性能予測の対象となるシステムへの入力を、当該入力の種類及び当該入力間の相互作用に応じて複数のクラスタのいずれかに分類するクラスタリングステップと、
前記制御部が、前記分類されたクラスタに対応する前記システムの性能予測モデルを用いて、前記入力に対する予測出力を算出する予測出力算出ステップと、
前記制御部が、前記算出された予測出力と前記システムの実際の出力との差が小さくなるように、前記分類されたクラスタに対応する前記システムの性能予測モデルのパラメータを調整するモデル調整ステップと
を備えることを特徴とする性能予測方法。A performance prediction method implemented in an information processing apparatus having a control unit,
A clustering step in which the control unit classifies the input to the system that is the target of performance prediction into one of a plurality of clusters according to the type of the input and the interaction between the inputs;
A predictive output calculating step in which the control unit calculates a predictive output for the input using a performance prediction model of the system corresponding to the classified cluster;
A model adjustment step in which the control unit adjusts parameters of the performance prediction model of the system corresponding to the classified cluster so that a difference between the calculated predicted output and an actual output of the system is reduced; A performance prediction method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014519903A JPWO2013183425A1 (en) | 2012-06-06 | 2013-05-17 | Performance prediction apparatus, performance prediction method, and program |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012129164 | 2012-06-06 | ||
JP2012129164 | 2012-06-06 | ||
JP2014519903A JPWO2013183425A1 (en) | 2012-06-06 | 2013-05-17 | Performance prediction apparatus, performance prediction method, and program |
PCT/JP2013/063850 WO2013183425A1 (en) | 2012-06-06 | 2013-05-17 | Performance estimate device, performance estimate method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2013183425A1 true JPWO2013183425A1 (en) | 2016-01-28 |
Family
ID=49711825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014519903A Pending JPWO2013183425A1 (en) | 2012-06-06 | 2013-05-17 | Performance prediction apparatus, performance prediction method, and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2013183425A1 (en) |
WO (1) | WO2013183425A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108734778A (en) * | 2018-06-07 | 2018-11-02 | 北京必可测科技股份有限公司 | A kind of technical supervision data visualization method and system |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3200038A4 (en) * | 2014-09-26 | 2018-06-13 | Nec Corporation | Model evaluation device, model evaluation method, and program recording medium |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0534246A (en) * | 1991-07-30 | 1993-02-09 | Toshiba Corp | Method and apparatus for monitoring static characteristics in plant |
JP2004086897A (en) * | 2002-08-06 | 2004-03-18 | Fuji Electric Holdings Co Ltd | Method and system for constructing model |
JP2004086896A (en) * | 2002-08-06 | 2004-03-18 | Fuji Electric Holdings Co Ltd | Method and system for constructing adaptive prediction model |
JP5636922B2 (en) * | 2010-12-02 | 2014-12-10 | 日本電気株式会社 | Performance prediction apparatus, performance prediction method, and program |
-
2013
- 2013-05-17 JP JP2014519903A patent/JPWO2013183425A1/en active Pending
- 2013-05-17 WO PCT/JP2013/063850 patent/WO2013183425A1/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108734778A (en) * | 2018-06-07 | 2018-11-02 | 北京必可测科技股份有限公司 | A kind of technical supervision data visualization method and system |
Also Published As
Publication number | Publication date |
---|---|
WO2013183425A1 (en) | 2013-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11599393B2 (en) | Guaranteed quality of service in cloud computing environments | |
US9336493B2 (en) | Systems and methods for clustering time series data based on forecast distributions | |
US11693917B2 (en) | Computational model optimizations | |
CN113574325B (en) | Method and system for controlling an environment by selecting a control setting | |
CN110717535B (en) | Automatic modeling method and system based on data analysis processing system | |
WO2020208444A1 (en) | Fairness improvement through reinforcement learning | |
WO2018205881A1 (en) | Estimating the number of samples satisfying a query | |
CN113302605A (en) | Robust and data efficient black box optimization | |
US20240168808A1 (en) | Systems and methods of optimizing resource allocation using machine learning and predictive control | |
CN112070545B (en) | Method, apparatus, medium, and electronic device for optimizing information reach | |
WO2021236984A1 (en) | Predictive modeling of a manufacturing process using a set of inverted models | |
EP3938849A1 (en) | Tuning pid parameters using causal models | |
WO2013183425A1 (en) | Performance estimate device, performance estimate method, and program | |
Gerling et al. | Comparison of algorithms for error prediction in manufacturing with automl and a cost-based metric | |
WO2024104233A1 (en) | Method and apparatus for predicting cyclic data, and device and medium | |
CN117422573A (en) | Financial tax data prediction method and system based on dynamic neural network | |
JP7363912B2 (en) | Display method, display program and information processing device | |
JP7363911B2 (en) | Display method, display program and information processing device | |
CN112801226A (en) | Data screening method and device, computer readable storage medium and electronic equipment | |
Ogunnaike et al. | Prediction of insurance claim severity loss using regression models | |
WO2022244563A1 (en) | Prediction device, learning device, prediction method, learning method, prediction program, and learning program | |
Strotherm et al. | Fairness-Enhancing Ensemble Classification in Water Distribution Networks | |
EP4141707A1 (en) | Method and apparatus with data exploration | |
WO2022174792A1 (en) | Automated time series forecasting pipeline ranking | |
US20240202378A1 (en) | Method for identifying representatives for engineering design concepts |