WO2019187289A1 - 評価システム、評価方法および評価用プログラム - Google Patents

評価システム、評価方法および評価用プログラム Download PDF

Info

Publication number
WO2019187289A1
WO2019187289A1 PCT/JP2018/040117 JP2018040117W WO2019187289A1 WO 2019187289 A1 WO2019187289 A1 WO 2019187289A1 JP 2018040117 W JP2018040117 W JP 2018040117W WO 2019187289 A1 WO2019187289 A1 WO 2019187289A1
Authority
WO
WIPO (PCT)
Prior art keywords
optimization
objective function
evaluation
learning
generates
Prior art date
Application number
PCT/JP2018/040117
Other languages
English (en)
French (fr)
Inventor
伸志 伊藤
遼平 藤巻
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2020509593A priority Critical patent/JP7044153B2/ja
Priority to US17/043,329 priority patent/US20210027109A1/en
Publication of WO2019187289A1 publication Critical patent/WO2019187289A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Definitions

  • the present invention relates to an evaluation system, an evaluation method, and an evaluation program for evaluating a result of optimization based on prediction.
  • the objective function is estimated by machine learning. For example, in the price optimization based on the forecast, the future profit is originally unknown, and therefore, the function for predicting the profit is estimated by the regression equation of demand as a function of the product price.
  • Patent Document 1 describes an ordering plan determination device for determining a product ordering plan.
  • the ordering plan determination apparatus described in Patent Literature 1 predicts the demand for goods for each price, and solves the optimization problem of the objective function that inputs the price and the order quantity and outputs the profit using the predicted demand. As a result, the combination of the price and order quantity of the product with the maximum profit is calculated.
  • Non-Patent Document 1 describes a method for determining an appropriate discount for a given sharp ratio.
  • Patent Document 1 As a specific method for determining a strategy based on prediction, as described in Patent Document 1, a prediction model is created based on observed data, and an optimal strategy is calculated based on the prediction model. Means are mentioned. At this time, it is important to estimate the effect of the optimized result.
  • One simple method of evaluating the effect is a method of estimating the effect of the optimal solution using the prediction model used for the optimization.
  • Patent Document 1 does not describe a specific method for estimating the effect.
  • the superscript ⁇ may be written together with the symbol.
  • the superscript ⁇ of ⁇ may be written as ⁇ ⁇ .
  • z and ⁇ represent the decision variable and the parameter of f, respectively. Also, let the estimated optimal strategy be z ⁇ . That is, It is.
  • Z is a range in which z can move.
  • f (z ⁇ , ⁇ * ) In predictive optimization, the actual effect of the estimated optimal strategy corresponds to f (z ⁇ , ⁇ * ), so it is important to estimate this value. On the other hand, it is difficult to observe f (z ⁇ , ⁇ * ) because it is necessary to execute the strategy z ⁇ in an actual environment. Therefore, in order to evaluate the effect of z ⁇ , f (z ⁇ , ⁇ * ) is generally estimated by f (z ⁇ , ⁇ ⁇ ).
  • f (z ⁇ , ⁇ ⁇ ) tends to be very optimistic in algorithm investment and portfolio optimization. In other words, the optimum value based on the estimation is generally biased in an optimistic direction.
  • Non-Patent Document 1 a general method for evaluating a trading strategy is a simple heuristic method of discounting an estimated target by 50%. That is, in Non-Patent Document 1, 0.5f (z ⁇ , ⁇ ⁇ ) is regarded as an estimator of f (z, ⁇ * ). Recent studies have also proposed algorithms that are statistically analyzed to mitigate problems.
  • an object of the present invention is to provide an evaluation system, an evaluation method, and an evaluation system capable of performing evaluation while suppressing an optimistic bias in predictive optimization.
  • the evaluation system generates a plurality of sample groups from samples used for learning so that at least some of the included samples are different, and generates a plurality of prediction models using the generated sample groups. And an optimization unit that generates an objective function represented by the sum of a plurality of functions based on the explained variable predicted by the prediction model and the constraint condition for optimization, and optimizes the generated objective function; And an evaluation unit that evaluates the optimization result for each objective function.
  • the evaluation method generates a plurality of sample groups from samples used for learning so that at least some of the included samples are different, generates a plurality of prediction models using the generated sample groups, and performs prediction. Generates an objective function represented by the sum of multiple functions based on the dependent variables predicted by the model and the constraint conditions for optimization, optimizes the generated objective function, and returns the optimization results for each objective function. It is characterized by evaluating.
  • the evaluation program generates a plurality of sample groups from a sample used for learning on a computer so that at least some of the included samples are different, and generates a plurality of prediction models using the generated sample groups. Optimization that generates the objective function represented by the sum of multiple functions based on the learning process to be generated, the explained variable predicted by the prediction model, and the optimization constraint conditions, and optimizes the generated objective function An evaluation process for evaluating the process and the optimization result for each objective function is executed.
  • the probability of appearing in each pattern it is considered that betting on the table is optimal for the patterns (1) and (2), and that it is optimal for betting on the back in the patterns (3) and (4). Conceivable.
  • Equation 1 Equation 1 shown below holds.
  • Equation 1 is satisfied, and z ⁇ and z * each satisfy the following.
  • Equation 2 shown below is established.
  • z ⁇ is not optimal with respect to the true objective function f (z, ⁇ * )
  • the right inequality in Equation 2 holds as an inequality sign.
  • the present inventor has found a solution based on cross-validation in experience loss minimization (ERM: Empirical Risk Minimization). Specifically, the present inventor has found a method for solving the optimistic bias problem using a machine learning overfitting solution.
  • the learner determines the prediction rule h ⁇ ⁇ H by minimizing experience loss. That is, the following Expression 3 is established.
  • Equation 3 is observation data generated from the distribution D, and l is a loss function.
  • Equation 4 is the generalization error in any given prediction rule h This is an estimator without bias. That is, Formula 5 shown below holds for an arbitrarily determined h.
  • Table 1 shows a comparison between experience loss minimization (ERM) and predictive optimization.
  • the problem concerning the prediction optimization bias has the same structure as the problem of minimizing experience loss.
  • Typical methods for estimating generalization errors in machine learning are cross-validation and asymptotic bias correction such as AIC (Akaike Information Criterion Akaike ⁇ ).
  • an estimator having no bias with respect to the true objective function value f (z ⁇ , ⁇ * ) in the calculated strategy is generated. That is, in the present embodiment, an estimator ⁇ (X n ⁇ R) that satisfies the following Expression 6 is generated. In this embodiment, it is assumed that an estimator having no bias of ⁇ * is ⁇ ⁇ .
  • the present inventor has also found that the same problem as described above exists even when the objective function can be expressed by the sum of a plurality of functions. That is, simply estimating the value of each function included in the objective function results in overestimation (that is, optimistic evaluation) for each result. Therefore, in the present invention, a method for evaluating an optimization result for each function when the objective function can be expressed as a sum of a plurality of functions will be described. That is, in the following description, it is assumed that the objective function f (z, ⁇ * ) can be expressed by a plurality of functions as shown in the following Expression 7, and f 1 is obtained with respect to the obtained optimal solution z ⁇ . Assume that the values of (z ⁇ , ⁇ * ), ..., f m (z ⁇ , ⁇ * ) are estimated.
  • price optimization based on prediction will be described with specific examples.
  • the predicted profit corresponds to the evaluation result.
  • the objective function is represented by the sum of the sales profits of a plurality of products.
  • FIG. 1 is a block diagram showing a configuration example of an embodiment of an evaluation system according to the present invention.
  • the evaluation system 100 of this embodiment includes a storage unit 10, a learning unit 20, an optimization unit 30, an evaluation unit 40, and an output unit 50.
  • the storage unit 10 stores learning data (hereinafter also referred to as a sample) used by the learning unit 20 described later for learning.
  • learning data hereinafter also referred to as a sample
  • past sales data, price, and data representing factors affecting sales hereinafter sometimes referred to as external factor data
  • FIG. 2 is an explanatory diagram showing an example of learning data.
  • the learning data illustrated in FIG. 2 shows an example in which the fixed price and the actually set selling price of each product and the sales quantity of each product are stored for each date.
  • FIG. 3 is an explanatory diagram showing an example of external factor data.
  • the external factor data illustrated in FIG. 3 shows an example in which calendar information for each date is stored. Further, as illustrated in FIG. 3, the external factor data may include data such as weather forecasts.
  • FIG. 4 is an explanatory diagram illustrating an example of a constraint condition.
  • the constraint condition illustrated in FIG. 4 indicates that the possible selling price is determined according to the discount rate for the fixed price of each product.
  • the storage unit 10 is realized by, for example, a magnetic disk.
  • the learning unit 20 generates a prediction model that predicts a variable used for calculation of optimization. For example, in the case of the problem of optimizing the price for maximizing the total sales, since the sales are calculated by the product of the price and the sales quantity, the learning unit 20 generates a prediction model for predicting the sales quantity. Also good.
  • the explanatory variable means a variable that can affect the prediction target. For example, when the prediction target is the sales volume, the selling price, sales volume, calendar information, etc. of past products correspond to the explanatory variables.
  • the prediction target is also called “objective variable” in the field of machine learning.
  • object variable a variable representing a prediction target is referred to as an explained variable. Therefore, it can be said that the prediction model is a model that represents the explained variable using one or more explanatory variables.
  • the learning unit 20 generates a plurality of sample groups from the samples used for learning so that at least some of the included samples are different, and generates a plurality of prediction models using the generated sample groups.
  • a plurality of sample groups from the samples used for learning so that at least some of the included samples are different, and generates a plurality of prediction models using the generated sample groups.
  • two sample groups hereinafter referred to as a first sample group and a second sample group
  • the number of sample groups to be generated is not limited to two and may be three or more.
  • the learning unit 20 when the evaluation unit 40 described later performs evaluation using cross-validation, the learning unit 20 generates a plurality of sample groups from the sample group used for learning, and learning is performed among the generated sample groups. A plurality of prediction models are generated so that sample groups to be used do not overlap. For example, when two sample groups are generated, the learning unit 20 uses the first sample group to generate a first prediction model that predicts the sales volume of the product, and uses the second sample group. A second prediction model for predicting the sales volume of the product is generated.
  • the learning unit 20 when the evaluation unit 40 described later performs evaluation using the bootstrap method, the learning unit 20 generates a plurality of sample groups by restoration extraction from the sample groups used for learning, and uses the generated sample groups. Multiple prediction models.
  • FIG. 5 is an explanatory diagram illustrating an example of a prediction model.
  • the prediction model illustrated in FIG. 5 is a prediction model for predicting the sales quantity of each product, and a prediction formula is selected according to the contents of the explanatory variables.
  • the optimization unit 30 generates an objective function based on the explained variable predicted by the generated prediction model and the constraint conditions for optimization. Specifically, the optimization unit 30 generates an objective function represented by the sum of a plurality of functions. Then, the optimization unit 30 optimizes the generated objective function. For example, when two prediction models are generated, the optimization unit 30 generates the first objective function based on the explained variable predicted by the first prediction model, and is predicted by the second prediction model. A second objective function is generated based on the explained variable. Then, the optimization unit 30 optimizes the generated first objective function and second objective function.
  • the method by which the optimization part 30 performs an optimization process is arbitrary.
  • the optimization unit 30 calculates the product of the sales volume predicted based on the prediction model and the price of the product based on the constraint condition illustrated in FIG. Generate the sum as an objective function. Then, the optimization unit 30 may specify the price of a product that optimizes the generated objective function and maximizes the total sales.
  • the optimization target may be gross profit instead of gross sales.
  • FIG. 6 is an explanatory diagram showing an example of the optimization problem.
  • the objective function illustrated in FIG. 6A is a function for calculating, as a net profit, a sum obtained by multiplying the difference between the product selling price and the cost by the predicted sales volume. Specifically, the sales volume is predicted by the prediction model learned by the learning unit 20. Then, the optimization unit 30 optimizes the objective function so as to maximize the total profit based on the constraint condition indicating the price candidate illustrated in FIG.
  • the objective function illustrated in FIG. 6B is a function for maximizing total profit and total sales.
  • the optimization unit 30 may also optimize the objective function so as to maximize the gross profit and the total sales based on the constraint condition indicating the price candidate illustrated in FIG.
  • the evaluation unit 40 evaluates the optimization result by the optimization unit 30 for each objective function. Specifically, when evaluation is performed using cross-validation, the evaluation unit 40 is used for learning the prediction model in learning the prediction model used to generate the objective function targeted for optimization. Identify missing sample groups. And the evaluation part 40 evaluates the optimization result with respect to each of the several function showing an objective function using the specified sample group.
  • the optimization unit 30 generates the first objective function using the first prediction model learned using the first sample group.
  • the evaluation unit 40 evaluates the optimization result using the second sample group.
  • the optimization unit 30 generates the second objective function using the second prediction model learned using the second sample group.
  • the evaluation unit 40 evaluates the optimization result using the first sample group. For example, in the case of a price optimization problem, the evaluation unit 40 may evaluate the optimization result by calculating profit based on the specified price.
  • the evaluation unit 40 estimates the bias based on the optimization result for each objective function used for the optimization, and calculates the optimization result based on the estimated bias. to correct.
  • the evaluation unit 40 may evaluate the optimization results by aggregating the optimization results by each objective function. Specifically, the evaluation unit 40 may calculate an average of optimization results by each objective function as an optimization result. In the example illustrated in FIG. 6B, the evaluation unit 40 may evaluate the optimization result by calculating the total profit and the total sales based on the specified price.
  • the optimization unit 30 may solve the problem of maximizing the value of the objective function defined as profit + sales. Then, the evaluation unit 40 may evaluate each of profit and sales. Further, for example, in the case where profit is more important than sales, an objective function that performs weighting (for example, 2 ⁇ profit + sales) larger than the profit function may be defined.
  • the output unit 50 outputs the optimized result.
  • the output unit 50 may output an optimized result and an evaluation for the result.
  • the output unit 50 may display the optimization result on a display device (not shown) or may store it in the storage unit 10.
  • the output unit 50 may display the sales amount and the total sales amount for each product in a graph format based on the optimization result. Further, the output unit 50 may superimpose and display optimization results for each function such as profit and sales. Further, as illustrated in FIG. 8, the output unit 50 may display a sales forecast for the set selling price in a table format. At that time, the output unit 50 may display the regular price and the discounted selling price in a manner that can be distinguished.
  • the learning unit 20, the optimization unit 30, the evaluation unit 40, and the output unit 50 are a computer processor (for example, CPU (Central Processing Unit)), GPU (Graphics Processing Unit), which operates according to a program (evaluation program), It is realized by FPGA (field-programmable gate array).
  • CPU Central Processing Unit
  • GPU Graphics Processing Unit
  • FPGA field-programmable gate array
  • the program may be stored in the storage unit 10, for example, and the processor may read the program and operate as the learning unit 20, the optimization unit 30, the evaluation unit 40, and the output unit 50 according to the program. Further, the function of the evaluation system may be provided in SaaS (Software as Service) format.
  • SaaS Software as Service
  • the learning unit 20, the optimization unit 30, the evaluation unit 40, and the output unit 50 may each be realized by dedicated hardware. Moreover, a part or all of each component of each device may be realized by a general-purpose or dedicated circuit (circuitry), a processor, or a combination thereof. These may be configured by a single chip or may be configured by a plurality of chips connected via a bus. Part or all of each component of each device may be realized by a combination of the above-described circuit and the like and a program.
  • the plurality of information processing devices and circuits may be centrally arranged or distributedly arranged. May be.
  • the information processing device, the circuit, and the like may be realized as a form in which each is connected via a communication network, such as a client server system and a cloud computing system.
  • FIG. 9 is a flowchart showing an operation example of the evaluation system of the present embodiment.
  • the learning unit 20 generates a plurality of sample groups from the samples used for learning (step S11). And the learning part 20 produces
  • the optimization unit 30 generates an objective function based on the explained variable predicted by the prediction model and the optimization constraint condition (step S13). Then, the optimization unit 30 optimizes the generated objective function (Step S14).
  • the evaluation unit 40 evaluates the optimization result using a sample group that has not been used in the learning of the prediction model (step S15).
  • the learning unit 20 generates a plurality of sample groups, and generates a plurality of prediction models so that the sample groups used for learning do not overlap.
  • the optimization unit 30 generates and optimizes an objective function represented by the sum of a plurality of functions based on the explained variable (prediction target) predicted by the prediction model and the constraint condition for optimization.
  • the evaluation part 40 evaluates the optimization result for every function using the sample group which was not used by learning of the prediction model. Therefore, it is possible to perform evaluation while suppressing an optimistic bias in predictive optimization.
  • the goal of portfolio optimization is to maximize the return on investment (ie, average rate of return or expected rate of return) as much as possible while minimizing risk (ie, rate of return variability, variance).
  • an objective function is defined as (return magnitude) ⁇ weighting factor ⁇ (risk magnitude), and the optimization unit 30 maximizes the objective function.
  • the magnitude of the return and the magnitude of the risk can be estimated while suppressing the optimistic bias.
  • an estimator based on x 1 is denoted as ⁇ 1 ⁇
  • an estimator based on x 2 is denoted as ⁇ 2 ⁇ .
  • Equation 8 the optimal strategy based on each estimator is expressed by Equation 8 shown below.
  • Equation 10 shown below is close to Equation 11. This idea can be extended to k-cross validation that divides data x into K parts.
  • z k ⁇ is calculated from ⁇ x 1 ,..., x K ⁇ ⁇ ⁇ x k ⁇ , and ⁇ k ⁇ is calculated from x k .
  • a value CV K (i) shown in Expression 12 below satisfies Expression 13 shown below.
  • z ⁇ represents a strategy calculated from (K ⁇ 1) N ′ samples.
  • FIG. 10 is a flowchart illustrating an example of an evaluation method using a cross-validation method. Specifically, FIG. 10 shows an example of an algorithm for generating the estimator f (z ⁇ , ⁇ * ).
  • the learning section 20 K pieces of data x ⁇ X N (However, K ⁇ 2) partial x 1 of is divided into ... x K (step S21).
  • the learning unit 20 defines x ⁇ k as all samples of x except x k
  • the learning unit 20 calculates ⁇ k ⁇ and ⁇ k ⁇ from x k and x ⁇ k for each divided part k.
  • the optimization unit 30 solves the optimization problem shown in the following Expression 14 (Step S23).
  • FIG. 11 is a flowchart illustrating an example of an evaluation method using the bootstrap method.
  • X j 1,..., M
  • X j based on the bootstrap method is assumed to be N random samples from X.
  • the learning unit 20 calculates an estimated value ⁇ ⁇ having asymptotic normality from X (step S32).
  • the learning unit 20 calculates ⁇ j ⁇ from X j (step S34).
  • the optimization part 30 calculates z shown to the following formula
  • the optimization unit 30 calculates the z j as shown in equation 15, the evaluation unit 40 is f (z j, ⁇ 0 ⁇ ) and f (z j, ⁇ j ⁇ ) difference (specifically Specifically, the average of the sum of the differences) is calculated as a bias of the evaluation value between the true model and the prediction model. Therefore, it is possible to theoretically prevent a bias generated between the two.
  • the present invention uses cross-validation and bootstrap methods known in the fields of statistics and machine learning. Further, in the present invention, so-called mathematical programming and operations research techniques are also used. In the present invention, it can be said that an appropriate evaluation method is realized by fusing techniques of different regions.
  • FIG. 12 is a block diagram showing an outline of the evaluation system according to the present invention.
  • the evaluation system 80 according to the present invention generates a plurality of sample groups from samples used for learning so that at least some of the included samples are different, and generates a plurality of prediction models using each of the generated sample groups.
  • the objective function represented by the sum of a plurality of functions is generated based on the explained variable predicted by the predicting model and the constraint condition for optimization based on the part 81 (for example, the learning unit 20), and the generated objective function Is provided with an optimization unit 82 (for example, the optimization unit 30) and an evaluation unit 83 (for example, the evaluation unit 40) for evaluating the optimization result for each objective function.
  • the learning unit 81 generates a plurality of sample groups from the samples used for learning, and the sample groups used for learning among the generated sample groups do not overlap.
  • the evaluation unit 83 generates a plurality of prediction models as described above, and the evaluation unit 83 uses the sample group that was not used in the learning of the prediction model used for generating the objective function targeted for optimization, and the optimization result for each objective function. May be evaluated.
  • the optimization unit 82 may generate an objective function based on each generated prediction model, and may optimize each generated objective function. Then, the evaluation unit 83 may evaluate the optimization results by collecting the optimization results based on the objective functions.
  • the evaluation unit 83 may calculate the average of the optimization results by each objective function as the optimization result.
  • the learning unit 81 generates two sample groups from the samples used for learning, generates a first prediction model using the first sample group, and uses the second sample group to generate a second prediction model. May be generated.
  • the optimization unit 82 generates a first objective function based on the explained variable predicted by the first prediction model, and performs the second operation based on the explained variable predicted by the second prediction model. An objective function may be generated, and the generated first objective function and second objective function may be optimized.
  • the evaluation unit 83 evaluates the optimization result of the first objective function using the second sample group, and evaluates the optimization result of the second objective function using the first sample group. May be.
  • the learning unit 81 when evaluation by the bootstrap method is performed, the learning unit 81 generates a plurality of sample groups by restoration extraction from the sample group used for learning, and uses the generated sample groups to generate a plurality of prediction models.
  • the evaluation unit 83 may estimate the bias based on the optimization result for each objective function used for optimization, and correct the optimization result based on the estimated bias.
  • the learning unit 81 may generate a plurality of prediction models for predicting the sales volume of the product.
  • the optimization unit 82 is based on the first function for calculating the total sales based on the sales quantity based on the prediction model and the selling price of the product, and on the profit obtained by subtracting the cost from the sales volume based on the prediction model and the sales price.
  • An objective function including a second function for calculating the gross profit may be generated, and the price of the product that maximizes the total sales and the gross profit may be specified by optimizing the generated objective function.
  • the evaluation unit 83 may evaluate the optimization result by calculating total profit and total sales based on the specified price.
  • the optimization unit 82 may generate an objective function with the selling price of each product as a constraint.
  • FIG. 13 is a schematic block diagram showing a configuration of a computer according to at least one embodiment.
  • the computer 1000 includes a processor 1001, a main storage device 1002, an auxiliary storage device 1003, and an interface 1004.
  • the above-described evaluation system is mounted on the computer 1000.
  • the operation of each processing unit described above is stored in the auxiliary storage device 1003 in the form of a program (evaluation program).
  • the processor 1001 reads out the program from the auxiliary storage device 1003, develops it in the main storage device 1002, and executes the above processing according to the program.
  • the auxiliary storage device 1003 is an example of a tangible medium that is not temporary.
  • Other examples of the non-temporary tangible medium include a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, and a semiconductor memory connected via the interface 1004.
  • this program is distributed to the computer 1000 via a communication line, the computer 1000 that has received the distribution may develop the program in the main storage device 1002 and execute the above processing.
  • the program may be for realizing a part of the functions described above. Further, the program may be a so-called difference file (difference program) that realizes the above-described function in combination with another program already stored in the auxiliary storage device 1003.
  • difference file difference program

Abstract

学習部81は、学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する。最適化部82は、予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、生成された目的関数を最適化する。評価部83は、最適化の結果を目的関数ごとに評価する。

Description

評価システム、評価方法および評価用プログラム
 本発明は、予測に基づく最適化の結果を評価する評価システム、評価方法および評価用プログラムに関する。
 近年、データ駆動型の意思決定は、大きな注目を集めており、多くの実用的なアプリケーションで使用されている。最も有望なアプローチの1つが、機械学習によって生成される予測モデルに基づく数理最適化である。近年の機械学習の進歩により、正確な予測モデルを作成することが容易になり、予測結果が数理最適化の問題を構築するために使用されている。以下の説明では、このような問題を、予測型数理最適化、または単に予測最適化と記す。
 これらのアプローチは、頻繁な試行錯誤プロセスが実用的とは言えない水分配最適化、エネルギー生成計画、小売価格最適化、サプライチェーン管理、ポートフォリオ最適化などのアプリケーションで使用される。
 予測最適化の重要な特徴の1つは、標準的な最適化とは異なり、目的関数が機械学習によって推定されることである。例えば、予測に基づく価格最適化では、将来の収益は本来未知であるため、収益を予測するための関数は製品価格の関数として、需要の回帰式により推定される。
 特許文献1には、商品の発注計画を決定する発注計画決定装置が記載されている。特許文献1記載の発注計画決定装置は、価格ごとの商品の需要を予測し、予測された需要を用いて価格と発注量とを入力とし且つ利益を出力とする目的関数の最適化問題を解くことにより、利益が最大となる商品の価格と発注量の組み合わせを算出する。
 なお、非特許文献1には、与えられたシャープ・レシオに対して適切な割引を決定する方法が記載されている。
特開2016-110591号公報
Harvey, Campbell R and Liu, Yan, "Backtesting", SSRN Electronic Journal, 2015
 予測に基づいて戦略を決める具体的な方法として、特許文献1に記載されているように、観測されたデータを元に予測モデルを作成し、予測モデルをもとに最適な戦略を計算するという手段が挙げられる。このとき最適化した結果の効果を見積もることが重要である。効果の単純な評価方法の一つは、最適化に用いた予測モデルを用いて最適解による効果を見積もるという方法である。ただし、特許文献1には、効果を見積もる具体的な方法は記載されていない。
 ここで、現実そのものを表す(真の)目的関数f(z,θ)に対して推定された目的関数f(z,θ^)を想定する。なお、本明細書において、上付き^を、記号に併記して記すこともある。例えば、θの上付き^を、θ^と記すこともある。
 zとθは、決定変数とfのパラメータをそれぞれ表す。また、推定された最適戦略をz^とする。すなわち、
Figure JPOXMLDOC01-appb-M000001
 
 である。ここで、Zはzの動き得る範囲である。
 予測最適化において、推定された最適戦略の実際の効果は、f(z^,θ)に対応しているため、この値を見積もることが重要である。一方で、f(z^,θ)を観測するには、現実の環境において戦略z^を実行することが必要なため困難である。そのため、z^の効果を評価するため、一般にf(z^,θ^)によってf(z^,θ)が推定される。
 しかし、非特許文献1に記載されているように、アルゴリズム投資やポートフォリオ最適化において、f(z^,θ^)は、非常に楽観的になる傾向がある。言い換えると、推定に基づく最適値は、一般的に楽観的な方向に偏ってしまう。
 非特許文献1の記載によれば、トレーディング戦略を評価する際の一般的な方法は、推定目標を50%割り引くという単純な発見的方法である。すなわち、非特許文献1では、0.5f(z^,θ^)をf(z,θ)の推定器とみなしている。また、最近の研究では、統計的に分析され、問題を緩和するアルゴリズムが提案されている。
 しかし、これらのアルゴリズムは、特定のアプリケーション(例えば、アルゴリズム投資)に限定されている。さらに、一般的な予測最適化問題において、f(z,θ)のバイアスのない推定器のための正当性が保証されたアルゴリズムは存在しない。
 そこで、本発明は、予測最適化における楽観的なバイアスを抑制した評価を行うことができる評価システム、評価方法および評価システムを提供することを目的とする。
 本発明による評価システムは、学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する学習部と、予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、生成された目的関数を最適化する最適化部と、最適化の結果を目的関数ごとに評価する評価部とを備えたことを特徴とする。
 本発明による評価方法は、学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成し、予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、生成された目的関数を最適化し、最適化の結果を目的関数ごとに評価することを特徴とする。
 本発明による評価用プログラムは、コンピュータに、学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する学習処理、予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、生成された目的関数を最適化する最適化処理、および、最適化の結果を目的関数ごとに評価する評価処理を実行させることを特徴とする。
 本発明によれば、予測最適化における楽観的なバイアスを抑制した評価を行うことができる。
本発明による評価システムの一実施形態の構成例を示すブロック図である。 学習データの例を示す説明図である。 外部要因データの例を示す説明図である。 制約条件の例を示す説明図である。 予測モデルの例を示す説明図である。 最適化問題の例を示す説明図である。 評価結果を出力する例を示す説明図である。 評価結果を出力する例を示す説明図である。 評価システムの動作例を示すフローチャートである。 クロスバリデーション法を用いた評価方法の例を示すフローチャートである。 ブートストラップ法を用いた評価方法の例を示すフローチャートである。 本発明による評価システムの概要を示すブロック図である。 少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
 まず初めに、最適値における楽観的なバイアスについて具体例を用いて説明する。ここでは、説明を簡易化するために、コイントスゲームにおける儲けの期待値を見積もる場合について説明する。ここで説明するコイントスゲームは、コインを投げた時に表(H)または裏(T)のどちらが出るかを予想するものであり、予想が的中した場合に1ドル得られ、予想が外れた時には何も得られないものとする。
 ここで、3回試行した場合、(1)3回とも表(HHH)、(2)2回は表で1回は裏(HHT)、(3)1回は表で2回は裏(HTT)、(4)3回とも裏(TTT)の4パターンが存在する。この4パターンにおいて、表の出る確率は、それぞれ、(1)1、(2)2/3、(3)1/3、(4)0、と推定される。
 それぞれのパターンで表の出る確率を考慮すると、(1)および(2)のパターンでは、表に賭けるのが最適と考えられ、(3)および(4)のパターンでは裏に賭けるのが最適と考えられる。このように賭けた場合、(1)のパターンでの予想儲けは、1×1ドル=1ドル、(2)のパターンでの予想儲けは、2/3×1ドル=0.67ドル、(3)のパターンでの予想儲けは、(1-1/3)×1ドル=0.67ドル、(4)のパターンでの予想儲けは、(1-0)×1ドル=1ドルと算出される。表の確率が1/2ならば、これらのパターン(1)、(2)、(3)、(4)が観測される確率は、それぞれ1/8、3/8、3/8、1/8となるから、この4パターンの最適解を考慮した場合の予想儲けの期待値は1×1/8+0.67×3/8+0.67×3/8+1×1/8=0.75ドルと算出される。これが、予測に基づいて最適解を選択した場合の儲けの推定値の期待値である。
 しかし、コインを投げた場合に表(または裏)の確率は1/2である。したがって、予想儲けは1/2×1ドル=0.5ドルになるはずである。すなわち、予測に基づいて最適解を選択した場合の儲けの推定値の期待値(0.75ドル)が、実際に想定される儲けの期待値(0.5ドル)よりも、楽観的なバイアスを含んでしまっていることが分かる。
 次に、θ^がθの適切な推定器であったとしても、f(z^,θ^)がf(z^,θ)の適切な推定器とは言えない理由を説明する。
 目的関数f(z,θ^)は、真の目的関数f(z,θ)の不偏推定量である、すなわち、以下に示す式1が成り立つとする。
Figure JPOXMLDOC01-appb-M000002
 
 上記式1の等号関係から、E[f(z^,θ^)]とf(z^,θ^)が、それぞれE[f(z^,θ)]とf(z^,θ)の推定量であるとも考えられる。しかし、以下の定理が存在する。
 すなわち、式1を満たし、z^およびzがそれぞれ以下を満たすとする。
Figure JPOXMLDOC01-appb-M000003
 
 この場合、以下に示す式2が成り立つ。また、z^が、真の目的関数f(z,θ)に関して最適でない場合が起こりうるとき、式2における右の不等式が不等号で成り立つ。
Figure JPOXMLDOC01-appb-M000004
 
 この定理は、たとえ、推定された目的関数f(z,θ^)が真の目的関数の不偏推定量だとしても、推定された最適値f(z^,θ^)は、f(z^,θ)の不偏推定量ではないことを意味する。
 この楽観的なバイアスは、ポートフォリオ最適化の文脈で経験的に知られている。この問題に対し、統計的検定に基づくバイアス補正方法が提案されているが、これは、目的関数がシャープ・レシオである場合にのみ適用可能である。しかし、これらの方法は、一般的な予測最適化問題に適用可能であるが、バイアスのない推定器を得ることは示されていない。
 この問題に対し、本発明者は、経験損失最小化(ERM:Empirical Risk Minimization )でのクロスバリデーションに基づく解決方法を見出した。具体的には、本発明者は、機械学習のオーバーフィッティングの解決法を利用して楽観的なバイアスの問題を解決する方法を見出した。
 教師あり機械学習では、学習器は、経験損失を最小化することによって予測ルールh^∈Hを決定する。すなわち、以下に示す式3が成り立つ。
Figure JPOXMLDOC01-appb-M000005
 
 式3におけるxは、分布Dから生成される観測データであり、lは損失関数である。以下の式4に示す経験損失
Figure JPOXMLDOC01-appb-M000006
 
は、任意の決まった予測ルールhにおける汎化誤差
Figure JPOXMLDOC01-appb-M000007
 
のバイアスのない推定器である。すなわち、任意の決まったhについて、以下に示す式5が成り立つ。
Figure JPOXMLDOC01-appb-M000008
 
 上記式5にも関わらず、計算されたパラメータh^の経験損失は、ほとんどの場合、h^の汎化誤差よりも小さい。これは、良く知られているように、h^が観測されたサンプルに過剰適合するためである。
 この状況に対し、発明者は、楽観的なバイアスおよび機械学習における過剰適合の問題の原因が、目的関数の評価および客観的価値の評価において、データセットを再利用することであることを見出した。
 表1に、経験損失最小化(ERM)と予測最適化との比較を示す。
Figure JPOXMLDOC01-appb-T000009
 
 表1に示すように、予測最適化のバイアスに関する問題は、経験損失を最小化する問題と同様の構造を有する。機械学習における汎化誤差を推定する典型的な方法は、クロスバリデーションと、AIC(Akaike Information Criterion Akaike :赤池情報量規準)のような漸近的なバイアス補正である。
 以上を考慮し、本実施形態では、計算された戦略における真の目的関数の値f(z^,θ)に対するバイアスのない推定器を生成する。すなわち、本実施形態では、以下に示す式6を満たす推定器ρ(X→R)を生成する。なお、本実施形態では、θのバイアスのない推定器をθ^と想定する。
Figure JPOXMLDOC01-appb-M000010
 
 また、本発明者は、目的関数が複数の関数の和で表記できる場合も、上記と同様の問題が存在することを発見した。すなわち、単純に目的関数に含まれる各関数の値を推定するだけでは、個々の結果に対して過大評価(すなわち、楽観的に評価)されてしまう。そこで、本発明では、目的関数が、複数の関数の和で表記できる場合に、それらの関数ごとに最適化の結果を評価する方法を説明する。すなわち、以下の説明では、目的関数f(z,θ)が、以下に例示する式7のように複数の関数で表すことができるとし、求められた最適解z^に対して、f(z^,θ),…,f(z^,θ)の値を推定するものとする。
Figure JPOXMLDOC01-appb-M000011
 
 以上の想定のもと、本発明の実施形態を図面を参照して説明する。以下では、予測に基づく価格最適化について具体例を挙げながら説明する。予測に基づく価格最適化の例では、予測利益が評価結果に対応する。一般に、総利益を最大化する価格最適化では、目的関数は複数の商品の販売利益の和で表される。本実施形態で示す方法を用いることで、楽観的なバイアスを抑制して、各商品から得られる利益をそれぞれ推定できる。
 図1は、本発明による評価システムの一実施形態の構成例を示すブロック図である。本実施形態の評価システム100は、記憶部10と、学習部20と、最適化部30と、評価部40と、出力部50とを備えている。
 記憶部10は、後述する学習部20が学習に用いる学習データ(以下、サンプルと記すこともある。)を記憶する。価格最適化の例の場合、学習データとして、過去の売上データや価格、売上に影響する因子を表すデータ(以下、外部要因データと記すこともある。)を記憶する。
 図2は、学習データの例を示す説明図である。図2に例示する学習データは、各商品の定価および実際に設定した売価、並びに各商品の売上数量を日付ごとに記憶している例を示す。
 また、図3は、外部要因データの例を示す説明図である。図3に例示する外部要因データは、日付ごとのカレンダ情報を記憶している例を示す。また、図3に例示するように、外部要因データが、気象予報などのデータを含んでいてもよい。
 また、記憶部10は、後述する最適化部30が最適化処理を行う際の制約条件を記憶する。図4は、制約条件の例を示す説明図である。図4に例示する制約条件は、各商品の定価に対する割引率に応じて、取り得る売価が定められることを示す。記憶部10は、例えば、磁気ディスク等により実現される。
 学習部20は、最適化の算出に用いられる変数を予測する予測モデルを生成する。例えば、総売上を最大にするための価格を最適化する問題の場合、売上は価格と売上数量の積で算出されることから、学習部20は、売上数量を予測する予測モデルを生成してもよい。以下の説明では、説明変数とは、予測対象に影響を与え得る変数を意味する。例えば、予測対象が売上数量の場合、過去の商品の売価や売上数量、カレンダ情報などが説明変数に該当する。
 予測対象は、機械学習の分野では、「目的変数」とも呼ばれる。なお、後述する最適化処理で一般的に用いられる「目的変数」との混同を避けるため、以下の説明では、予測対象を表す変数を被説明変数と記す。したがって、予測モデルは、被説明変数を1つ以上の説明変数を用いて表したモデルということができる。
 具体的には、学習部20は、学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する。以下、説明を簡略化するため、学習に用いるサンプルから、少なくとも一部のサンプルが異なる2つのサンプル群(以下、第1のサンプル群と第2のサンプル群と記す。)を生成する場合について説明する。ただし、生成するサンプル群の数は2つに限定されず、3つ以上であってもよい。
 具体的には、後述する評価部40が、クロスバリデーションを用いて評価を行う場合、学習部20は、学習に用いるサンプル群から複数のサンプル群を生成し、生成されたサンプル群のうち学習に用いるサンプル群が重複しないように複数の予測モデルを生成する。例えば、2つのサンプル群が生成された場合、学習部20は、第1のサンプル群を用いて、商品の売上数量を予測する第1の予測モデルを生成し、第2のサンプル群を用いて、商品の売上数量を予測する第2の予測モデルを生成する。
 また、後述する評価部40が、ブートストラップ法を用いて評価を行う場合、学習部20は、学習に用いるサンプル群から復元抽出により複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する。
 学習部20が予測モデルを生成する方法は任意である。学習部20は、FAB(Factorized Asymptotic Bayesian inference)などの機械学習エンジンを用いて予測モデルを生成してもよい。図5は、予測モデルの例を示す説明図である。図5に例示する予測モデルは、各商品の売上数量を予測する予測モデルであり、説明変数の内容に応じて予測式が選択される。
 最適化部30は、生成した予測モデルにより予測される被説明変数および最適化の制約条件に基づいて目的関数を生成する。具体的には、最適化部30は、複数の関数の和で表される目的関数を生成する。そして、最適化部30は、生成された目的関数を最適化する。例えば、2つの予測モデルが生成された場合、最適化部30は、第1の予測モデルにより予測される被説明変数に基づいて第1の目的関数を生成し、第2の予測モデルにより予測される被説明変数に基づいて第2の目的関数を生成する。そして、最適化部30は、生成された第1の目的関数および第2の目的関数を最適化する。
 なお、最適化部30が最適化処理を行う方法は任意である。例えば、期待される総売上を最大化する問題の場合、最適化部30は、予測モデルに基づいて予測される売上数量と図4に例示するような制約条件に基づく商品の価格との積の総和を目的関数として生成する。そして、最適化部30は、生成された目的関数を最適化して総売上を最大にする商品の価格を特定してもよい。なお、最適化対象を総売上ではなく総利益としてもよい。
 図6は、最適化問題の例を示す説明図である。図6(a)に例示する目的関数は、商品売価と原価との差に、予測される売上数量を乗じた総和を純利益として算出するための関数である。具体的には、売上数量は、学習部20により学習された予測モデルで予測される。そして、最適化部30は、図6(a)に例示する価格の候補を示す制約条件に基づいて総利益を最大化するように目的関数を最適化する。
 また、図6(b)に例示する目的関数は、総利益および総売上を最大化するための関数である。なお、最適化部30も、図6(a)に例示する価格の候補を示す制約条件に基づいて総利益および総売上を最大化するように目的関数を最適化すればよい。
 評価部40は、最適化部30による最適化の結果を目的関数ごとに評価する。具体的には、クロスバリデーションを用いて評価が行われる場合、評価部40は、最適化の対象とした目的関数を生成するために用いた予測モデルの学習において、その予測モデルの学習に用いられなかったサンプル群を特定する。そして、評価部40は、特定したサンプル群を用いて、目的関数を表す複数の関数それぞれに対する最適化の結果を評価する。
 例えば、最適化部30が、第1のサンプル群を用いて学習された第1の予測モデルを用いて第1の目的関数を生成したとする。このとき、評価部40は、第2のサンプル群を用いて最適化の結果を評価する。同様に、最適化部30が、第2のサンプル群を用いて学習された第2の予測モデルを用いて第2の目的関数を生成したとする。このとき、評価部40は、第1のサンプル群を用いて最適化の結果を評価する。例えば、価格最適化の問題の場合、評価部40は、特定した価格に基づいて利益を算出することにより、最適化の結果を評価してもよい。
 また、ブートストラップ法を用いて評価が行われる場合、評価部40は、最適化に用いた目的関数ごとの最適化結果に基づいてバイアスを推定し、推定されたバイアスに基づいて最適化結果を補正する。
 さらに、評価部40は、最適化の結果を、各目的関数による最適化の結果を集計して評価してもよい。具体的には、評価部40は、最適化の結果として、各目的関数による最適化の結果の平均を算出してもよい。また、図6(b)に示す例では、評価部40は、特定した価格に基づいて総利益および総売上を算出することにより、最適化の結果を評価してもよい。
 価格最適化の場面では、本実施形態の評価システムを用いることで、楽観的なバイアスを抑制して、最適化時の利益と売上をそれぞれ推定できる。また、例えば、利益と売上の両方をできるだけ大きくしたい場合、最適化部30は、利益+売上と定義された目的関数の値を最大化する問題を解いてもよい。そして、評価部40は、利益および売上のそれぞれについて評価を行ってもよい。また、例えば、売上よりも利益を重視する場合には、利益の関数により大きな重み付け(例えば、2×利益+売上)を行った目的関数が定義されればよい。
 出力部50は、最適化した結果を出力する。出力部50は、最適化した結果とその結果に対する評価を出力してもよい。出力部50は、最適化結果をディスプレイ装置(図示せず)に表示してもよいし、記憶部10に記憶してもよい。
 図7および図8は、評価結果を出力する例を示す説明図である。図7に例示するように、出力部50は、最適化結果に基づいて、商品別の売上額や総売上額をグラフ形式で表示してもよい。また、出力部50は、利益と売上のように関数ごとの最適化結果を重畳させて表示してもよい。また、出力部50は、図8に例示するように、設定した売価に対する売上予測を表形式で表示してもよい。その際、出力部50は、定価と割引後の売価とを区別しうる態様で表示してもよい。
 学習部20と、最適化部30と、評価部40と、出力部50とは、プログラム(評価プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit )、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array ))によって実現される。
 上記プログラムは、例えば、記憶部10に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、学習部20、最適化部30、評価部40および出力部50として動作してもよい。また、評価システムの機能がSaaS(Software as a Service )形式で提供されてもよい。
 学習部20と、最適化部30と、評価部40と、出力部50とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
 また、評価システムの各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
 次に、本実施形態の評価システムの動作を説明する。図9は、本実施形態の評価システムの動作例を示すフローチャートである。
 学習部20は、学習に用いるサンプルから複数のサンプル群を生成する(ステップS11)。そして、学習部20は、生成されたサンプル群のうち学習に用いるサンプル群が重複しないように複数の予測モデルを生成する(ステップS12)。最適化部30は、予測モデルにより予測される被説明変数および最適化の制約条件に基づいて目的関数を生成する(ステップS13)。そして、最適化部30は、生成された目的関数を最適化する(ステップS14)。評価部40は、最適化の結果を予測モデルの学習で用いなかったサンプル群を用いて評価する(ステップS15)。
 以上のように、本実施形態では、学習部20が複数のサンプル群を生成し、学習に用いるサンプル群が重複しないように複数の予測モデルを生成する。また、最適化部30が、予測モデルにより予測される被説明変数(予測対象)と最適化の制約条件に基づいて複数の関数の和で表される目的関数を生成し、最適化する。そして、評価部40が、予測モデルの学習で用いなかったサンプル群を用いて関数ごとに最適化の結果を評価する。よって、予測最適化における楽観的なバイアスを抑制した評価を行うことができる。
 なお、本実施形態では、総売上を最大化する価格最適化について説明した。他にも、本実施形態の評価システムを用いて、最適な投資方法を発見するポートフォリオ最適化問題の結果を評価することも可能である。
 ポートフォリオ最適化問題では、投資によって得られるリターン(すなわち、平均的な収益率や、期待収益率)をできるだけ大きくしつつ、リスク(すなわち、収益率のバラツキ、分散)をできるだけ小さくすることが目標になる。この問題に対して、例えば、目的関数を、(リターンの大きさ)-重み係数×(リスクの大きさ)と定義し、最適化部30が、この目的関数を最大化する。本実施形態では、このリターンの大きさとリスクの大きさを、それぞれ楽観的なバイアスを抑制しながら推定できる。
 すなわち、上述するように、利益および売上の両方を大きくするような価格最適化問題や、リターンの大きさおよびリスクの大きさのトレードオフを検討するポートフォリオ最適化問題のように、複数の評価指標が存在する場合がある。このような複数の評価指標のトレードオフおよびバランスを考慮する必要がある場合、これら複数の評価指標の重み付和を目的関数として最適化する方法が考えられる。
 一般的な方法を用いた場合、この最適化結果を単純に推定した場合には、上述するような楽観的なバイアスが含まれてしまう恐れがある。本実施形態では、楽観的なバイアスを抑制したうえで、複数の評価指標それぞれの値を推定できる。
 以下、本実施形態の推定システムによって、バイアスのない推定器が生成される理由を説明する。ここでは、クロスバリデーション法およびブートストラップ法を用いて推定器を生成する方法を説明する。
 まず初めに、クロスバリデーション法を用いて、バイアスなく評価する方法を説明する。クロスバリデーション法の主たるアイデアは、データx∈Xを2つの部分x∈XN1、x∈XN2(ただし、N+N=N)に分割することである。なお、xおよびxにおける各要素は、独立してpに従うため、xおよびxは、独立した確率変数である。以下、xに基づく推定器をθ^と記し、xに基づく推定器をθ^と記す。
 また、各推定器に基づく最適戦略を、以下に示す式8で表す。
Figure JPOXMLDOC01-appb-M000012
 
 このとき、z^とθ^は独立であり、また、z^とθ^も独立である。したがって、それぞれの関数f(i=1,2,…,m)に対して、以下に示す式9が成り立つ。
Figure JPOXMLDOC01-appb-M000013
 
 さらに、Nが十分大きい場合、以下に示す式10は、式11に近くなる。この考えは、データxをK個の部分に分割するk-クロスバリデーションに拡張可能である。
Figure JPOXMLDOC01-appb-M000014
 
 z は、{x,...,x}\{x}から計算され、θ^は、xから計算される。このとき、各i=1,2,…,mに対して、以下の式12に示す値CV (i)は、以下に示す式13を満たす。式13におけるz~は、(K-1)N´個のサンプルから計算された戦略を表す。
Figure JPOXMLDOC01-appb-M000015
 
 図10は、クロスバリデーション法を用いた評価方法の例を示すフローチャートである。具体的には、図10は、推定器f(z~,θ)を生成するアルゴリズムの例を示す。まず、学習部20は、データx∈XをK個(ただし、K≧2)の部分x,...xに分割する(ステップS21)。次に、学習部20は、x-kをxを除くxの全てのサンプルと定義したとき、分割した各部分kについて、xおよびx-kからθ^およびθ を計算する(ステップS22)。最適化部30は、以下の式14に示す最適化問題を解く(ステップS23)。
Figure JPOXMLDOC01-appb-M000016
 
 そして、評価部40は、各i=1,2,…,mについて上記に示す式12を計算することで、最適化結果を評価し(ステップS24)、出力部50は、評価結果を出力する(ステップS25)。
 次に、ブートストラップ法を用いて、バイアスなく評価する方法を説明する。図11は、ブートストラップ法を用いた評価方法の例を示すフローチャートである。まず、評価システム100に、N個のサンプルX={x,…,x}と、M∈{1,2,…}が入力される(ステップS31)。ここで、j=1,…,Mについて、ブートストラップ法に基づくXをXからのN個のランダムサンプルであるとする。
 学習部20は、Xから漸近正規性をもつ推定値θ^を計算する(ステップS32)。学習部20は、XからN個のランダム復元抽出を行い、Xとする。これを、j=1,2,…,Mに対して行う(ステップS33)。また、同様に、学習部20は、Xからθ^を計算する(ステップS34)。そして、最適化部30は、以下の式15に示すzを計算する(ステップS35)。すなわち、最適化部30は、zの計算をM回繰り返す。
Figure JPOXMLDOC01-appb-M000017
 
 評価部40は、各i=1,2,…,mについて以下の式16で示すρiを計算し(ステップS36)、出力部50は、各i=1,2,…,mについてρiを出力する。
Figure JPOXMLDOC01-appb-M000018
 
 このように、最適化部30が、上記式15に示すようなzを算出し、評価部40がf(z,θ^)とf(z,θ^)の差分(具体的には、差分の総和の平均)を、真のモデルと予測モデルとの評価値のバイアスとして算出する。よって、両者の間に生ずるバイアスを理論的に生じさせなくすることが可能になる。
 以上に示すように、本発明は、統計学や機械学習の分野で知られているクロスバリデーションやブートストラップ法などを用いている。さらに、本発明では、いわゆる数理計画やオペレーションズリサーチの手法も用いている。本発明では、このように、異なる領域の手法を融合させて、適切な評価方法を実現していると言える。
 次に、本発明の概要を説明する。図12は、本発明による評価システムの概要を示すブロック図である。本発明による評価システム80は、学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する学習部81(例えば、学習部20)と、予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、生成された目的関数を最適化する最適化部82(例えば、最適化部30)と、最適化の結果を目的関数ごとに評価する評価部83(例えば、評価部40)とを備えている。
 そのような構成により、予測最適化における楽観的なバイアスを抑制した評価を行うことができる。
 具体的には(例えば、クロスバリデーションにより評価が行われる場合)、学習部81は、学習に用いるサンプルから複数のサンプル群を生成し、生成されたサンプル群のうち学習に用いるサンプル群が重複しないように複数の予測モデルを生成し、評価部83は、最適化の対象とした目的関数の生成に用いた予測モデルの学習で用いなかったサンプル群を用いて、目的関数ごとに最適化の結果を評価してもよい。
 また、最適化部82は、生成された各予測モデルに基づいて目的関数を生成し、生成した各目的関数を最適化してもよい。そして、評価部83は、最適化の結果を、各目的関数による最適化の結果を集計して評価してもよい。
 具体的には、評価部83は、最適化の結果として、各目的関数による最適化の結果の平均を算出してもよい。
 また、学習部81は、学習に用いるサンプルから2つのサンプル群を生成し、第1のサンプル群を用いて第1の予測モデルを生成し、第2のサンプル群を用いて第2の予測モデルを生成してもよい。また、最適化部82は、第1の予測モデルにより予測される被説明変数に基づいて第1の目的関数を生成し、第2の予測モデルにより予測される被説明変数に基づいて第2の目的関数を生成し、生成された第1の目的関数および第2の目的関数を最適化してもよい。そして、評価部83は、第1の目的関数の最適化の結果を第2のサンプル群を用いて評価し、第2の目的関数の最適化の結果を第1のサンプル群を用いて評価してもよい。
 一方(例えば、ブートストラップ法による評価が行われる場合)、学習部81は、学習に用いるサンプル群から復元抽出により複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成し、評価部83は、最適化に用いた目的関数ごとの最適化結果に基づいてバイアスを推定し、推定されたバイアスに基づいて最適化結果を補正してもよい。
 また、学習部81は、商品の売上数量を予測する予測モデルを複数生成してもよい。また、最適化部82は、予測モデルに基づく売上数量と商品の売価とに基づいて総売上を算出する第一の関数と、予測モデルに基づく売上数量と売価から原価を減じた利益とに基づいて総利益を算出する第二の関数とを含む目的関数を生成し、生成された目的関数を最適化して総売上および総利益を最大にする商品の価格を特定してもよい。そして、評価部83は、特定した価格に基づいて総利益および総売上を算出することにより、前記最適化の結果を評価してもよい。
 その際、最適化部82は、各商品の取り得る売価を制約条件とする目的関数を生成してもよい。
 図13は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ1000は、プロセッサ1001、主記憶装置1002、補助記憶装置1003、インタフェース1004を備える。
 上述の評価システムは、コンピュータ1000に実装される。そして、上述した各処理部の動作は、プログラム(評価プログラム)の形式で補助記憶装置1003に記憶されている。プロセッサ1001は、プログラムを補助記憶装置1003から読み出して主記憶装置1002に展開し、当該プログラムに従って上記処理を実行する。
 なお、少なくとも1つの実施形態において、補助記憶装置1003は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース1004を介して接続される磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ1000に配信される場合、配信を受けたコンピュータ1000が当該プログラムを主記憶装置1002に展開し、上記処理を実行しても良い。
 また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置1003に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であっても良い。
 以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2018年3月30日に出願された米国仮出願第62/650,389号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 10 記憶部
 20 学習部
 30 最適化部
 40 評価部
 50 出力部

Claims (10)

  1.  学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する学習部と、
     前記予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、生成された目的関数を最適化する最適化部と、
     前記最適化の結果を前記目的関数ごとに評価する評価部とを備えた
     ことを特徴とする評価システム。
  2.  学習部は、学習に用いるサンプルから複数のサンプル群を生成し、生成されたサンプル群のうち学習に用いるサンプル群が重複しないように複数の予測モデルを生成し、
     評価部は、最適化の対象とした目的関数の生成に用いた予測モデルの学習で用いなかったサンプル群を用いて、前記目的関数ごとに最適化の結果を評価する
     請求項1記載の評価システム。
  3.  最適化部は、生成された各予測モデルに基づいて目的関数を生成し、生成した各目的関数を最適化し、
     評価部は、最適化の結果を、各目的関数による最適化の結果を集計して評価する
     請求項2記載の評価システム。
  4.  評価部は、最適化の結果として、各目的関数による最適化の結果の平均を算出する
     請求項3記載の評価システム。
  5.  学習部は、学習に用いるサンプルから2つのサンプル群を生成し、第1のサンプル群を用いて第1の予測モデルを生成し、第2のサンプル群を用いて第2の予測モデルを生成し、
     最適化部は、前記第1の予測モデルにより予測される被説明変数に基づいて第1の目的関数を生成し、前記第2の予測モデルにより予測される被説明変数に基づいて第2の目的関数を生成し、生成された前記第1の目的関数および前記第2の目的関数を最適化し、
     評価部は、前記第1の目的関数の最適化の結果を前記第2のサンプル群を用いて評価し、前記第2の目的関数の最適化の結果を前記第1のサンプル群を用いて評価する
     請求項1から請求項4のうちのいずれか1項に記載の評価システム。
  6.  学習部は、学習に用いるサンプル群から復元抽出により複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成し、
     評価部は、最適化に用いた目的関数ごとの最適化結果に基づいてバイアスを推定し、推定されたバイアスに基づいて最適化結果を補正する
     請求項1記載の評価システム。
  7.  学習部は、商品の売上数量を予測する予測モデルを複数生成し、
     最適化部は、前記予測モデルに基づく売上数量と商品の売価とに基づいて総売上を算出する第一の関数と、前記予測モデルに基づく売上数量と売価から原価を減じた利益とに基づいて総利益を算出する第二の関数とを含む目的関数を生成し、生成された目的関数を最適化して総売上および総利益を最大にする商品の価格を特定し、
     評価部は、特定した価格に基づいて総利益および総売上を算出することにより、前記最適化の結果を評価する
     請求項1から請求項6のうちのいずれか1項に記載の評価システム。
  8.  最適化部は、各商品の取り得る売価を制約条件とする目的関数を生成する
     請求項7記載の評価システム。
  9.  学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、
     生成された各サンプル群を用いて複数の予測モデルを生成し、
     前記予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、
     生成された目的関数を最適化し、
     前記最適化の結果を前記目的関数ごとに評価する
     ことを特徴とする評価方法。
  10.  コンピュータに、
     学習に用いるサンプルから、含まれるサンプルの少なくとも一部が異なるように複数のサンプル群を生成し、生成された各サンプル群を用いて複数の予測モデルを生成する学習処理、
     前記予測モデルにより予測される被説明変数および最適化の制約条件に基づいて、複数の関数の和で表される目的関数を生成し、生成された目的関数を最適化する最適化処理、および、
     前記最適化の結果を前記目的関数ごとに評価する評価処理
     を実行させるための評価プログラム。
PCT/JP2018/040117 2018-03-30 2018-10-29 評価システム、評価方法および評価用プログラム WO2019187289A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020509593A JP7044153B2 (ja) 2018-03-30 2018-10-29 評価システム、評価方法および評価用プログラム
US17/043,329 US20210027109A1 (en) 2018-03-30 2018-10-29 Evaluation system, evaluation method, and program for evaluation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862650389P 2018-03-30 2018-03-30
US62/650,389 2018-03-30

Publications (1)

Publication Number Publication Date
WO2019187289A1 true WO2019187289A1 (ja) 2019-10-03

Family

ID=68058639

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/040117 WO2019187289A1 (ja) 2018-03-30 2018-10-29 評価システム、評価方法および評価用プログラム

Country Status (3)

Country Link
US (1) US20210027109A1 (ja)
JP (1) JP7044153B2 (ja)
WO (1) WO2019187289A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023240769A1 (zh) * 2022-06-17 2023-12-21 浙大城市学院 一种用于远程控制设备的监控管理系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4180088A1 (en) * 2021-11-16 2023-05-17 Koninklijke Philips N.V. A machine learning based system for generating objective functions for radiation therapy treatment planning

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017094207A1 (ja) * 2015-11-30 2017-06-08 日本電気株式会社 情報処理システム、情報処理方法および情報処理用プログラム
WO2017199753A1 (ja) * 2016-05-18 2017-11-23 日本電気株式会社 最適化システム、最適化方法および最適化プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7120567B2 (en) * 2002-08-20 2006-10-10 Sun Microsystems, Inc. Method and apparatus for determining output uncertainty of computer system models
US20070050154A1 (en) * 2005-09-01 2007-03-01 Albahri Tareq A Method and apparatus for measuring the properties of petroleum fuels by distillation
US9495645B2 (en) * 2012-10-21 2016-11-15 Concept.Io, Inc. Method and system of iteratively autotuning prediction parameters in a media content recommender

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017094207A1 (ja) * 2015-11-30 2017-06-08 日本電気株式会社 情報処理システム、情報処理方法および情報処理用プログラム
WO2017199753A1 (ja) * 2016-05-18 2017-11-23 日本電気株式会社 最適化システム、最適化方法および最適化プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YAMASHITA, SATOSHI: "Predictive Accuracy of Credit Risk Models: AR Values and Evaluation Indices. 1st Ed.", 15 September 2011, ASAKURA PUBLISHING CO., LTD., ISBN: 978-4-254-29541-2, pages: 138 - 144 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023240769A1 (zh) * 2022-06-17 2023-12-21 浙大城市学院 一种用于远程控制设备的监控管理系统

Also Published As

Publication number Publication date
US20210027109A1 (en) 2021-01-28
JPWO2019187289A1 (ja) 2021-03-11
JP7044153B2 (ja) 2022-03-30

Similar Documents

Publication Publication Date Title
Kwon et al. A hybrid neurogenetic approach for stock forecasting
JP6992526B2 (ja) 需要予測プログラム、需要予測方法および需要予測装置
US9286573B2 (en) Cost-aware non-stationary online learning
Sun et al. Solving the multi-stage portfolio optimization problem with a novel particle swarm optimization
JP6907664B2 (ja) 非定常時系列データの予測に用いる方法及び装置
JP2019153259A (ja) 機械学習装置、予測システム、及び、プログラム
US10074142B1 (en) Computational architecture and method for a time-varying control system
WO2019187289A1 (ja) 評価システム、評価方法および評価用プログラム
Chen et al. Cloud–edge collaboration task scheduling in cloud manufacturing: An attention-based deep reinforcement learning approach
JP6828830B2 (ja) 評価システム、評価方法および評価用プログラム
Pachos et al. Trade-off informed adaptive and robust real options water resources planning
US11410240B2 (en) Tactical investment algorithms through Monte Carlo backtesting
Lin et al. A deep reinforcement learning framework for optimal trade execution
Christensen et al. Prediction of hidden liquidity in thelimit order book of globex futures
JP6947229B2 (ja) 最適化装置、最適化方法および最適化プログラム
John et al. Optimization of software development life cycle process to minimize the delivered defect density
Wolgast et al. Approximating energy market clearing and bidding with model-based reinforcement learning
WO2019220479A1 (ja) 施策決定システム、施策決定方法および施策決定プログラム
JPWO2019053828A1 (ja) 情報分析装置、情報分析方法および情報分析プログラム
JP6534028B2 (ja) 先見2次ロジック流動数管理システム、プログラム及び方法
JP2020024621A (ja) 情報処理装置、方法及びプログラム
WO2023084781A1 (ja) 入荷量予測モデル生成装置、取引量予測装置、入荷量予測モデル生成方法、取引量予測方法、及び入荷量予測モデル生成プログラム
JPWO2019053827A1 (ja) 情報分析装置、情報分析方法および情報分析プログラム
WO2023166833A1 (ja) 経済性評価シミュレーション装置及び経済性評価シミュレーション方法
JP5248227B2 (ja) 地物確率モデル装置、地物確率モデル処理方法およびコンピュータプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18911736

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020509593

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 18911736

Country of ref document: EP

Kind code of ref document: A1