WO2023149120A1 - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
WO2023149120A1
WO2023149120A1 PCT/JP2022/047415 JP2022047415W WO2023149120A1 WO 2023149120 A1 WO2023149120 A1 WO 2023149120A1 JP 2022047415 W JP2022047415 W JP 2022047415W WO 2023149120 A1 WO2023149120 A1 WO 2023149120A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction
production environment
data
model
information processing
Prior art date
Application number
PCT/JP2022/047415
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 ソニーグループ株式会社
Publication of WO2023149120A1 publication Critical patent/WO2023149120A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Definitions

  • the present technology relates to an information processing device, an information processing method, and a program.
  • Patent Document 1 As a method for maintaining the accuracy of prediction (inference), a technology has been proposed that prepares multiple inference units that perform inference and switches the inference unit when a drop in inference accuracy is detected (Patent Document 1).
  • Patent Document 1 is based on the assumption that there is a correct answer in the input data for prediction (inference), and there is a problem that prediction cannot be performed for input data that does not have a correct answer. Also, when making predictions using a prediction model, there is a learning time to generate a prediction model and a production environment to make predictions, but in the production environment where there is no correct answer in the input data, the prediction model outputs correct prediction results. The problem is that it is difficult to guarantee that
  • the present technology has been developed in view of such problems, and aims to provide an information processing device, an information processing method, and a program that generate a prediction model that outputs a correct prediction result even based on input data that does not have a correct answer. aim.
  • the first technology uses a plurality of prediction models generated based on input data at the time of learning to make predictions based on input data in the production environment after the time of learning.
  • the information processing apparatus includes a prediction unit that obtains a plurality of prediction results for each model, and a determination unit that determines whether or not the environment is a production environment from the plurality of prediction results using a discriminant model.
  • the second technology uses a plurality of prediction models generated based on input data during learning, and generates a plurality of prediction results for each prediction model based on input data in the production environment after learning. is obtained, and a discriminant model is used to determine whether or not it is a production environment from a plurality of prediction results.
  • the third technology uses a plurality of prediction models generated based on the input data during learning, and generates multiple prediction results for each prediction model based on the input data in the production environment after the learning time. is obtained, and a discriminant model is used to determine whether or not it is a production environment from a plurality of prediction results.
  • FIG. 2 is a block diagram showing the configuration of the information processing apparatus 100;
  • FIG. FIG. 4 is an explanatory diagram of learning time data and production environment data;
  • 3 is a block diagram showing the configuration of a prediction section 110;
  • FIG. 3 is a block diagram showing the configuration of a determination unit 120;
  • FIG. 4 is a flowchart showing overall processing of the information processing apparatus 100;
  • 4 is a flowchart showing processing by a prediction unit 110;
  • FIG. 4 is an explanatory diagram of division of input data;
  • FIG. 4 is an explanatory diagram of CV (Cross Validation);
  • 4 is a flowchart showing processing by a determination unit 120;
  • FIG. 4 is an explanatory diagram of data coupling by a data coupling unit 121; 4 is a flowchart showing processing by a determination result processing unit 130; FIG. 10 is an explanatory diagram of processing for changing items (columns) of a row determined as not being a production environment; FIG. 4 is a diagram showing an example of a user interface;
  • Embodiment> [1-1. Configuration of information processing device 100] [1-2. Processing in information processing device 100] [1-2-1. Overall processing] [1-2-2. Processing by prediction unit 110] [1-2-3. Processing by Determination Unit 120] [1-2-4. Processing by discrimination result processing unit 130] ⁇ 2.
  • User interface> ⁇ 3. Specific usage example> ⁇ 4. Variation>
  • the information processing apparatus 100 includes a prediction section 110 , a determination section 120 and a determination result processing section 130 .
  • the information processing device 100 generates a plurality of prediction models and selects a model to be used in the prediction service from among the plurality of prediction models.
  • a prediction service is a service that automatically performs advanced prediction analysis and provides prediction results to the user, if the user has input data, simply by performing a simple input operation with a few clicks.
  • Predictive analysis is one of data analysis techniques that predicts future results from past performance using statistical algorithms and machine learning. Prediction services are useful, for example, in applications such as streamlining existing businesses and creating new businesses. Note that the prediction service may be provided as software or an application, or may be provided as a service on an Internet browser or a cloud service.
  • the information processing device 100 and the prediction service will be described as predicting whether or not a plurality of policyholders (hereinafter referred to as policyholders) will cancel their contracts.
  • the processing by the information processing device 100 includes processing during learning and processing in the production environment.
  • the time of learning is before the production environment, and is the stage of generating a prediction model and a discriminant model based on data during learning, which is input data during learning.
  • the production environment is the stage after the learning, in which prediction is performed by inputting the production environment data, which is the input data of the production environment, into the prediction model generated during the learning.
  • Input data includes learning data during learning and production environment data in the production environment.
  • the training data and the production environment data are CSV (Comma-Separated Values) files composed of rows and columns.
  • the input data which is a CSV file, consists of a plurality of rows and columns in which each row distinguished by a row ID is a contractor, and each column corresponds to an item that is various information about the contractor. is.
  • each item (column) of the input data shown in FIG. 2 is just an example, and other information related to the contractor such as contractor ID, age, contract period, gender, customer rank, etc. may be included in the input data as each item (column).
  • the learning time data is a CSV file in which past data with correct answers (whether or not the contract was canceled) is accumulated, as shown in FIG. It is a CSV file with no correct answer as shown in FIG. 2B.
  • the prediction unit 110 generates a prediction model based on the learning data. Further, the prediction unit 110 inputs data during learning to the prediction model to obtain prediction results during learning, and further inputs production environment data to the prediction model to obtain prediction results for the production environment.
  • the past data in which the correct answer as to whether the policyholder canceled the contract is accumulated is used as learning data, and the prediction unit 110 predicts future policyholders based on production environment data without correct answers. to predict whether or not to terminate the contract.
  • the discriminating unit 120 generates a discriminant model for discriminating whether the environment is the production environment from the prediction result obtained by the prediction unit 110 during learning and the prediction result of the production environment, and uses the discrimination model to determine whether the environment is the production environment. determine whether or not It is assumed that multiple prediction models include robust prediction models that are not affected by the difference between training data and production environment data, or are less affected, and non-robust models that are greatly affected. Therefore, by generating a discriminant model that determines whether or not it is in the production environment from each prediction result of the generated prediction model, it is possible to detect the difference between the training data and the production environment data from among multiple prediction models. Identify predictive models.
  • a robust prediction model is a prediction model whose prediction results are not affected by differences between training data and production environment data. It is a prediction model that can obtain prediction results without In the present technology, a discriminant model for discriminating whether or not it is a production environment is generated directly from each prediction result of a plurality of prediction models.
  • the determination result processing unit 130 selects one of a plurality of prediction models generated in advance as a prediction model to be used in the prediction service. Further, the determination result processing unit 130 performs corresponding processing depending on the determination result.
  • the prediction unit 110 is composed of a data division unit 111, a prediction model generation unit 112, and a prediction result output unit 113.
  • FIG. 3 the prediction unit 110 is composed of a data division unit 111, a prediction model generation unit 112, and a prediction result output unit 113.
  • the data division unit 111 divides the input data into learning data and evaluation data, outputs the learning data to the prediction model generation unit 112, and outputs the evaluation data to the prediction result output unit 113.
  • Learning data is data for generating a prediction model
  • evaluation data is data for evaluating the generated prediction model.
  • the predictive model generation unit 112 refers to each row of the learning data and performs binary classification learning using the correct answer as to whether or not the contractor has canceled the contract as teacher data, thereby determining whether the contractor has canceled the contract. Generate a predictive model that predicts whether
  • the prediction result output unit 113 inputs evaluation data (data not used to generate the prediction model out of the input data) to the prediction model generated by the prediction model generation unit 112, thereby generating evaluation data. prediction is made for each row of the evaluation data, and the probability that the contractor cancels the contract as a prediction result (hereinafter sometimes referred to as cancellation prediction probability) is associated with the row of the evaluation data.
  • prediction unit 110 generates multiple (n) prediction models based on multiple pieces of data during learning during learning prior to the production environment.
  • the prediction unit 110 makes a prediction based on the input production environment data, and associates the cancellation prediction probability as the prediction result. Note that the prediction unit 110 does not need to generate a prediction model in the production environment.
  • the discriminating section 120 is composed of a data combining section 121, a data dividing section 122, a discriminant model generating section 123, and a discriminative result output section .
  • the data combining unit 121 includes learning-time data in which a plurality of prediction results are associated with each row by the prediction unit 110, production environment data in which a plurality of prediction results are associated with each row by the prediction unit 110, A production environment flag, which is identification information indicating that it is a production environment, is combined. It can be said that the production environment flag is correct data indicating whether or not the environment is the production environment.
  • the combined data may be referred to as combined data.
  • the data dividing unit 122 divides the combined data by row into learning data and evaluation data, outputs the learning data to the discrimination model generation unit 123, and outputs the evaluation data to the discrimination result output unit 124. output to The learning data is data for generating a discriminant model, and the evaluation data is data for evaluating the discriminant model.
  • the discriminant model generation unit 123 discriminates the production environment flag by learning binary classification based on the learning data using the production environment flag as teacher data. Generate.
  • the discriminant result output unit 124 inputs evaluation data (data not used to generate the discriminant model out of the production environment data) to the discriminant model generated by the discriminant model generation unit 123, thereby generating evaluation data. For each row of data, the probability of whether or not it is in the production environment (production environment probability), which is the determination result, is calculated, and the judgment result (production environment probability) is associated with the row of the evaluation data.
  • the determination result is calculated in the form of a production environment probability, which is a probability value between 0 and 1. If the production environment probability is greater than or equal to a predetermined threshold, it can be determined that the environment is production environment.
  • the information processing device 100 is configured as described above.
  • the information processing apparatus 100 operates in electronic devices such as personal computers, smart phones, tablet terminals, server devices, and cloud servers. These electronic devices may have functions as the information processing device 100 in advance, or the information processing device 100 and the method of the present technology may be realized by executing a program in those electronic devices having computer functions. may The program may be pre-installed in those electronic devices, or may be downloaded or distributed in a storage medium and installed by the user or the like. Further, the information processing device 100 may be configured as a single device.
  • the information processing apparatus 100 may operate in the same device as various devices (personal computer, smartphone, tablet terminal, server device, cloud server, etc.) that executes the prediction service, or may operate in a different device. .
  • the information processing device 100 and the device executing the prediction service are connected via a network (whether wired or wireless), and the information processing device 100 identifies the generated prediction model and the prediction model used in the prediction service. It is necessary to output information such as information to be used to the device.
  • step S101 the prediction unit 110 generates a prediction model based on data during learning, and inputs the data during learning to the generated prediction model to obtain prediction results during learning.
  • a plurality of prediction models are generated by performing the processing of this step S101 by the prediction unit 110 a plurality of times based on a plurality of learning data.
  • step S102 the prediction unit 110 obtains prediction results of the production environment by inputting the production environment data into the multiple prediction models generated in step S101.
  • step S103 the determination unit 120 generates a discriminant model based on the prediction result during learning and the prediction result of the production environment, and uses the generated discrimination model to determine whether or not it is the production environment.
  • step S ⁇ b>104 the determination result processing unit 130 performs predetermined processing based on the determination result of the determination unit 120 .
  • the overall processing of the information processing apparatus 100 is performed as described above.
  • the data dividing unit 111 divides the learning data into learning data and evaluation data.
  • the learning-time data is a CSV file having rows and columns with correct answers. Divide into data and evaluation data.
  • the data division unit 111 outputs learning data to the prediction model generation unit 112 and outputs evaluation data to the prediction result output unit 113 .
  • step S202 the prediction model generation unit 112 refers to each line of the learning data and performs binary classification learning using the correct answer as to whether or not the contractor has canceled the contract as teacher data. Generate a predictive model to predict whether to terminate a contract.
  • step S203 the prediction result output unit 113 inputs evaluation data (data not used for generating the prediction model out of data during learning) to the generated prediction model, and outputs the evaluation data. Prediction is made with the prediction model for the row that is . As a result, as shown in FIG. 7, the cancellation prediction probability as the prediction result is associated with the row that is the evaluation data.
  • the prediction results for all rows of the learning data can be associated.
  • CV Cross Validation
  • each row is associated with a group ID for grouping each row of the learning data.
  • group IDs are defined as values from 1 to 3.
  • the number of groups is not limited to a specific number.
  • the row of group ID 1 (if there are multiple rows of group ID 1, the plurality of rows) is used as evaluation data, and group ID 2 and group ID 3 are used as evaluation data. Rows are training data.
  • a predictive model is generated based on the rows of group ID2 and group ID3, which are learning data, and the row of group ID1, which is evaluation data, is input to the generated predictive model. can be associated with the prediction result (cancellation prediction probability).
  • the row of group ID2 (if there are multiple rows of group ID2, the plurality of rows) is used as evaluation data, and the rows of group ID1 and group ID3 are used for learning. data.
  • a prediction model is generated based on the rows of group ID1 and group ID3, which are learning data, and the row of group ID2, which is evaluation data, is input to the generated prediction model. can be associated with the prediction result (cancellation prediction probability).
  • the row of group ID3 (if there are multiple rows of group ID3, the plurality of rows) is used as evaluation data, and the rows of group ID1 and group ID2 are used for learning. data.
  • a prediction model is generated based on the rows of group ID1 and group ID2, which are learning data, and the row of group ID3, which is evaluation data, is input to the generated prediction model. can be associated with the prediction result (cancellation prediction probability).
  • the process is repeated so that all groups become evaluation data. Since there are three groups here, the process is repeated three times while changing the evaluation data and the learning data. Then, all the rows of the data at the time of learning become evaluation data, and as shown in FIG. 8B, it is possible to associate the cancellation prediction probability as the prediction result with all the rows. In the case where CV is not performed, it is possible to associate the cancellation prediction probability as the prediction result only with the row used as the evaluation data among the rows constituting the data at the time of learning.
  • the prediction unit 110 generates a plurality of prediction models by performing learning multiple times using the same data at the time of learning by changing the parameters of the prediction model, and using the plurality of prediction models, for each row in the data at the time of learning can associate prediction results from multiple prediction models.
  • FIG. 8C three prediction models, a prediction model A, a prediction model B, and a prediction model C, are generated, and the prediction results of each prediction model are associated with each row of the learning data.
  • the prediction unit 110 associates multiple prediction results from multiple prediction models with each row of the production environment data by inputting the production environment data into the prediction model generated during learning.
  • step S102 a plurality of prediction models (prediction models A, B, and C) are used to associate each row of the learning data with the prediction result of each prediction model. do. Further, it is assumed that each line of production environment data is associated with a prediction result by each prediction model using a plurality of prediction models (prediction models A, B, and C). Although the number of prediction models is three here, the number of prediction models is not limited to three and may be any number of two or more.
  • step S301 the data combining unit 121 combines a plurality of prediction results during learning associated with each row of the data during learning, a plurality of prediction results of the production environment associated with each row of the production environment data, and the production environment data. Generate combined data by combining the production environment flag indicating that it is an environment.
  • the prediction result during learning and the prediction result of the production environment are combined in the row direction, and the production environment flag indicating whether it is the production environment or not is associated with each row to generate combined data. do.
  • the production environment flag indicates 1 for the production environment and 0 for learning that is not in the production environment. is associated with the production environment flag 0.
  • step S302 the data dividing unit 122 divides the combined data into learning data and evaluation data by dividing the combined data by row.
  • the data division unit 122 outputs the learning data to the discrimination model generation unit 123 and outputs the evaluation data to the discrimination result output unit 124 .
  • step S303 the discriminant model generation unit 123 identifies the production environment flag 1 by learning binary classification based on the learning data using the production environment flag as teacher data. Generate a discriminant model for determining whether or not.
  • step S204 the discrimination result output unit 124 discriminates whether or not the line of the evaluation data is the production environment using the discrimination model.
  • the discriminant model determines whether or not a row of evaluation data is in the production environment based on the combination of the prediction results of each prediction model. do. Specifically, when there are prediction results of all prediction models A to C, when the prediction result of prediction model A is excluded, when the prediction result of prediction model B is excluded, when the prediction result of prediction model C is excluded In the production environment, when the prediction results of prediction model A and prediction result B are excluded, when the prediction results of prediction model A and prediction result C are excluded, when the prediction results of prediction model B and prediction result C are excluded It is determined whether or not there is
  • prediction model A can be said to be effective for determination.
  • CV By performing CV and repeating the process so that all groups become evaluation data, it is possible to associate production environment probabilities as discrimination results for all rows included in the combined data.
  • the CV method is similar to the method described with reference to FIG.
  • the processing by the determination unit 120 is performed as described above.
  • a determination result is output to the determination result processing unit 130 .
  • step S401 it is not effective to determine whether the prediction results obtained by each prediction model are in the production environment (even if the prediction results of all the prediction models are used, it is difficult to determine whether the environment is in the production environment). cannot be determined), the process proceeds to step S402 (Yes in step S401).
  • the determination result processing unit 130 selects one of the plurality of prediction models as the prediction model to be used in the prediction service. If it is not possible to determine whether or not it is in the production environment based on the prediction results of all prediction models, that is, it is not effective to determine whether or not the prediction results of all prediction models are in the production environment Case means that there is no difference between the training data and the production environment data, or that even if there is a difference, it does not affect the prediction results. The reason why it is not possible to distinguish whether it is the production environment is that the prediction results are the same in the learning time and the production environment and cannot be distinguished. In this case, it doesn't matter which one of the multiple prediction models the prediction service uses.
  • step S401 if all or part of the prediction results obtained by each prediction model are effective in determining whether or not it is the production environment, the process proceeds to step S403 (No in step S401). .
  • step S403 if the prediction results obtained by some of the prediction models are effective in determining whether or not the environment is the production environment, the process proceeds to step S404 (Yes in step S403).
  • the discrimination result processing unit 130 selects a prediction model that is not effective for discrimination as a prediction model to be used in the prediction service.
  • a prediction model that is not effective for discrimination even if there is a difference between the training data and the production environment data, the prediction result is not affected by the difference, or even if it is affected, the effect is slight.
  • the prediction service preferably uses a prediction model that is not valid for that determination.
  • Prediction models should not be affected by differences between training data and production environment data. Because models should not be used, but predictive models that are immune to discrepancies. Therefore, by using a prediction model that is not effective for discrimination in a prediction service, it is possible to realize a prediction service that outputs a prediction result that is robust against differences in data.
  • the information processing device 100 In order for the prediction service to use the prediction model selected by the discrimination result processing unit 130, the information processing device 100 needs to transmit the selected prediction model itself to the device that executes the prediction service. If the device executing the prediction service already holds a plurality of prediction models, the information processing device 100 outputs information indicating the selected prediction model to the device executing the prediction service. good.
  • a device running a prediction service employs a prediction model to make a prediction based on that information.
  • step S403 if the prediction results of all prediction models are effective in determining whether or not the environment is the production environment, the process proceeds to step S405 (No in step S403).
  • step S405 the determination result processing unit 130 performs corresponding processing. If the prediction results of all prediction models are effective in determining whether or not they are in the production environment, there is a difference between the training data and the production environment data, and the prediction results of all prediction models are affected by that difference. Therefore, it can be said that the prediction results have changed. This is because, as described above, a prediction model affected by the difference between the training data and the production environment data should not be used, and a prediction model not affected by the difference should be used. Therefore, in this case, a corresponding process is required.
  • the handling process includes regeneration of a new prediction model, which is the first handling process, and re-learning of the existing prediction model, which is the second handling process. Note that the corresponding processing may be performed by the prediction unit 110 .
  • Rows that have a high probability of being in the production environment are rows that are unique to the production environment, that is, rows that have features not included in the data at the time of learning. I can say. Therefore, by confirming the rows that the discriminant model has determined to be in the production environment with a high probability, it is possible to know specifically what kind of rows are specific to the production environment and different from those at the time of learning.
  • the items (columns) in the data at the time of learning that were determined not to be in the production environment by the discriminant model are changed and input to the discriminant model again, it is confirmed whether or not it is determined to be in the production environment. If the data at the time of learning that is determined to be not the production environment is determined to be the production environment by changing the item (column), the changed item (column) is the item that affects the change in the discrimination result ( column).
  • the item (column) that affects the change in the discrimination result is normalized for each year as the second processing. Relearn an existing predictive model so that it does not rely on that particular item.
  • the processing by the determination result processing unit 130 is performed as described above.
  • a person using the information processing apparatus 100 such as the operator of the prediction service, may select which of the first correspondence process and the second correspondence process is to be performed.
  • This user interface is displayed on the display of the information processing apparatus 100 or an electronic device (personal computer, smart phone, tablet terminal) on which the prediction service operates.
  • FIG. 13A is a UI for presenting the details of the prediction model to the user.
  • FIG. 13B is a UI for presenting multiple prediction models to the user.
  • This UI displays the names given to the models to identify the multiple prediction models, the degree of divergence between the prediction results of the production environment and the prediction results during learning by each prediction model, the status of each prediction model, and the like. As the status of the prediction model, whether or not the prediction service is currently in operation, whether or not to switch to the prediction model selected by the information processing apparatus 100, and the like are displayed.
  • FIG. 13C is a UI for changing the items (columns) that make up the rows of the input data to arbitrary values for the corresponding processing (prediction model regeneration and re-learning) described above.
  • this technology can also be used when a prediction service predicts movie content that customers are likely to be interested in, and recommends movies to users based on the prediction results.
  • the prediction unit 110 and the discrimination unit 120 described in the embodiment perform the processing, for example, when it is not possible to discriminate the prediction result between the learning time and the production environment, the prediction result as assumed at the time of learning is obtained even in the production environment. There is a high possibility that it will continue to appear, and it would be good to continue to use the most accurate prediction model and continue monitoring.
  • This technology can also be used when a prediction service predicts the probability that a salesperson to be hired will leave the company, and the user uses the prediction result as a reference for hiring.
  • multiple candidate prediction models are created using the information on whether or not the sales staff hired in the past left the job as data at the time of learning.
  • the processing by the prediction unit 110 and the discrimination unit 120 described in the embodiment is performed, for example, when it is found that the difference between the prediction results during learning and the production environment can be discriminated by using the prediction results of several prediction models. , from among the prediction models that output prediction results indistinguishable between the time of learning and the production environment, select the prediction model with the highest accuracy in predicting turnover, and then use that prediction model to make predictions in the production environment. do it.
  • this technology can also be used when a prediction service predicts the probability that a customer will additionally enroll in life insurance, and the user uses the prediction results for life insurance sales.
  • a prediction service predicts the probability that a customer will additionally enroll in life insurance, and the user uses the prediction results for life insurance sales.
  • customers who have a high probability of purchasing additional life insurance are approached by sales calls and emails, so it is important to predict the probability of additional life insurance purchases in the life insurance business. be.
  • multiple candidate prediction models are created using the information of customers who have purchased life insurance in the past as learning data.
  • the processing by the prediction unit 110 and the determination unit 120 described in the embodiment is performed, and for example, when it is found that the difference between the prediction results in the learning and the production environment can be determined using any prediction model, which prediction Problems arise even when models are used, so it is necessary to investigate specific changes on a case-by-case basis.
  • the prediction model when converting the learning time data to the production environment data at the time of learning, if it is found that the production environment data tends to decrease the amount paid in the previous year as a whole, the prediction model will be retrained. If necessary, the forecast model can be recreated with insurance payments normalized by year.
  • this technology is not limited to the specific examples mentioned above, and this technology can be used for any kind of prediction based on accumulated past data.
  • the input data is not limited to CSV files, and may be in other formats such as TSV (Tab-Separated Values) files, Excel format files, or sparse format files that express non-zero values as keys and values.
  • TSV Transmission-Separated Values
  • Excel Excel format files
  • sparse format files that express non-zero values as keys and values.
  • the present technology can also take the following configurations.
  • a prediction unit that obtains a plurality of prediction results for each prediction model based on input data in a production environment using a plurality of prediction models generated based on input data during learning;
  • a discriminating unit that discriminates whether or not it is a production environment from the plurality of prediction results using a discriminant model;
  • Information processing device (2) The information processing according to (1), further comprising a determination result processing unit that selects one of the plurality of prediction models based on whether or not the plurality of prediction results are effective for determining whether the prediction model is a production environment. Device.
  • the prediction result of the prediction model during learning and the prediction result of the prediction model in the production environment are combined with identification information indicating that the prediction result is in the production environment, and the identification information is used as teacher data to learn binary classification.
  • a program that causes a computer to execute an information processing method for determining whether or not the environment is a production environment from the plurality of prediction results using a discriminant model.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

学習時における入力データに基づいて生成された複数の予測モデルを用いて本番環境における入力データに基づいて予測モデルごとの複数の予測結果を得る予測部と、判別モデルを用いて、複数の予測結果から本番環境であるか否かを判別する判別部とを備える情報処理装置である。

Description

情報処理装置、情報処理方法およびプログラム
 本技術は、情報処理装置、情報処理方法およびプログラムに関する。
 近年、小売業、製造業、人材採用や育成等の様々な分野において、機械学習を活用して予測(推論)を行うシステムが導入され始めている。こうした情報処理システムにおいては、実際の運用を通じて継続的に予測の精度を維持することが求められる。
 予測(推論)の精度を維持する手法として、推論を行う複数の推論部を用意し、推論精度の低下が検出された場合に推論部を切り替える技術が提案されている(特許文献1)
特開2021-117706号公報
 しかし、特許文献1の技術は予測(推論)のための入力データに正解が存在することが前提となっており、正解がない入力データに対しては予測を行うことができないという問題がある。また、予測モデルを用いて予測を行う場合、予測モデルを生成する学習時と予測を行う本番環境があるが、入力データに正解がない本番環境においては予測モデルが正しい予測結果を出力していることを保証するのが難しいという問題がある。
 本技術はこのような問題点に鑑みなされたものであり、正解がない入力データに基づいても正しい予測結果を出力する予測モデルを生成する情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
 上述した課題を解決するために、第1の技術は、学習時における入力データに基づいて生成された複数の予測モデルを用いて、学習時よりも後である本番環境における入力データに基づいて予測モデルごとの複数の予測結果を得る予測部と、判別モデルを用いて、複数の予測結果から本番環境であるか否かを判別する判別部とを備える情報処理装置である。
 また、第2の技術は、学習時における入力データに基づいて生成された複数の予測モデルを用いて、学習時よりも後である本番環境における入力データに基づいて予測モデルごとの複数の予測結果を取得し、判別モデルを用いて、複数の予測結果から本番環境であるか否かを判別する情報処理方法である。
 さらに、第3の技術は、学習時における入力データに基づいて生成された複数の予測モデルを用いて、学習時よりも後である本番環境における入力データに基づいて予測モデルごとの複数の予測結果を取得し、判別モデルを用いて、複数の予測結果から本番環境であるか否かを判別する情報処理方法をコンピュータに実行させるプログラムである。
情報処理装置100の構成を示すブロック図である。 学習時データと本番環境データの説明図である。 予測部110の構成を示すブロック図である。 判別部120の構成を示すブロック図である。 情報処理装置100の全体処理を示すフローチャートである。 予測部110による処理を示すフローチャートである。 入力データの分割の説明図である。 CV(Cross Validation)の説明図である。 判別部120による処理を示すフローチャートである。 データ結合部121によるデータの結合の説明図である。 判別結果処理部130による処理を示すフローチャートである。 本番環境ではないと判別された行の項目(列)を変化させる処理の説明図である。 ユーザインターフェースの例を示す図である。
 以下、本技術の実施の形態について図面を参照しながら説明する。なお、説明は以下の順序で行う。
<1.実施の形態>
[1-1.情報処理装置100の構成]
[1-2.情報処理装置100における処理]
[1-2-1.全体処理]
[1-2-2.予測部110による処理]
[1-2-3.判別部120による処理]
[1-2-4.判別結果処理部130による処理]
<2.ユーザインターフェース>
<3.具体的使用例>
<4.変形例>
<1.実施の形態>
[1-1.情報処理装置100の構成]
 図1を参照して本技術における情報処理装置100の構成について説明する。情報処理装置100は予測部110、判別部120、判別結果処理部130により構成されている。
 情報処理装置100は、複数の予測モデルを生成し、その複数の予測モデルの中から予測サービスで使用するモデルを選択する。
 予測サービスとは、入力データがあれば、ユーザが数クリックの簡単な入力操作を行うだけで高度な予測分析を自動的に実行して予測結果をユーザに提供するサービスである。予測分析とは、統計アルゴリズムや機械学習を用いて過去の実績から将来の結果を予測するデータ分析手法の1つある。予測サービスは例えば既存ビジネスの効率化や新規ビジネスの創出などの用途において有用である。なお、予測サービスはソフトウェアやアプリケーションとして提供されてもよいし、インターネットブラウザ上のサービスやクラウドサービスとして提供されてもよい。
 本実施の形態では、情報処理装置100と予測サービスは、複数の保険契約者(以下、契約者と称する)が契約を解約するか否かを予測するものとして説明を行う。
 情報処理装置100による処理には学習時における処理と、本番環境における処理がある。学習時とは本番環境より前であり、学習時の入力データである学習時データに基づいて予測モデルと判別モデルを生成する段階である。本番環境とは学習時の後であり、本番環境の入力データである本番環境データを学習時に生成された予測モデルに入力することにより予測を行う段階である。
 入力データには学習時における学習時データと、本番環境における本番環境データがある。本実施の形態では、学習時データと本番環境データは行と列により構成されるCSV(Comma-Separated values)ファイルであるとする。
 CSVファイルである入力データは図2に示すように、行IDで区別される各行をそれぞれ契約者とし、各列に契約者に関する各種情報である項目が対応した、複数の行と列からなるデータである。なお、図2に示す入力データの各項目(列)はあくまで一例であり、その他にも、契約者ID、年齢、契約時期、性別、顧客ランクなど、契約者に関連する情報であればどのようなものを各項目(列)として入力データに含めてもよい。学習時データは図2Aに示すような、正解(契約を解約したか否か)付きの過去のデータが蓄積されたCSVファイルであり、本番環境データは予測サービスを使用するクライアントなどから提供され、図2Bに示すように正解のないCSVファイルである。
 予測部110は、学習時データに基づいて予測モデルを生成する。また、予測部110は学習時データを予測モデルに入力して学習時の予測結果を取得し、さらに、本番環境データを予測モデルに入力して本番環境の予測結果を得る。本実施の形態では、契約者が契約を解約したか否かという正解が蓄積された過去のデータを学習時データとし、予測部110は、正解のない本番環境データに基づいて、将来保険契約者が契約を解約するか否かを予測する。
 判別部120は、予測部110が取得した学習時の予測結果と本番環境の予測結果から本番環境であるか否かを判別する判別モデルを生成し、その判別モデルを用いて本番環境であるか否かを判別する。複数の予測モデルには、学習時データと本番環境データの差違の影響を受けない、または受けても影響が小さい頑健な予測モデルと、影響を大きく受ける頑健ではないモデルがあると想定される。そこで、生成した予測モデルのそれぞれの予測結果から本番環境であるかどうかを判別する判別モデルを生成することで、複数の予測モデルの中から学習時データと本番環境データの差違に対して頑健な予測モデルを特定する。頑健な予測モデルとは学習時データと本番環境データの差違の影響を受けて予測結果が変化してしまうことがない予測モデル、すわなち、学習時データと本番環境データの差違の影響を受けずに予測結果を得ることができる予測モデルである。本技術では、複数の予測モデルの各予測結果から直接、本番環境であるか否かを判別する判別モデルを生成する。
 判別結果処理部130は、判別部120による判別結果に基づいて、予め生成されている複数の予測モデルのうちのいずれかを予測サービスで使用する予測モデルとして選択する。また、判別結果処理部130は判別結果によっては対応処理を行う。
 次に予測部110の構成について説明する。図3に示すように予測部110は、データ分割部111、予測モデル生成部112、予測結果出力部113により構成されている。
 データ分割部111は、入力データを学習用データと評価用データに分割して、学習用データを予測モデル生成部112に出力し、評価用データを予測結果出力部113に出力する。学習用データとは予測モデルを生成するためのデータであり、評価用データとは生成された予測モデルを評価するためのデータである。
 予測モデル生成部112は、学習用データの各行を参照して契約者が契約を解約したか否かの正解を教師データとして二値分類の学習を行うことにより契約者が契約を解約するか否かを予測する予測モデルを生成する。
 予測結果出力部113は、予測モデル生成部112が生成した予測モデルに対して評価用データ(入力データのうち、予測モデルの生成には使用していないデータ)を入力することにより、評価用データの各行に対して予測を行い、評価用データの行に予測結果としての契約者が契約を解約する確率(以下、解約予測確率と称する場合がある)を対応付ける。
 予測部110は本番環境の前の学習時において複数の学習時データに基づいて複数(n個)の予測モデルを生成するものとする。
 また、予測部110は本番環境においては入力された本番環境データに基づいて予測を行い、予測結果としての解約予測確率を対応付ける。なお、本番環境において予測部110は予測モデルを生成する必要はない。
 次に判別部120の構成について説明する。図4に示すように判別部120はデータ結合部121、データ分割部122、判別モデル生成部123、判別結果出力部124により構成されている。
 データ結合部121は、予測部110により各行に対して複数の予測結果が対応付けられた学習時データと、予測部110により各行に対して複数の予測結果が対応付けられた本番環境データと、本番環境であることを示す識別情報である本番環境フラグを結合する。本番環境フラグは本番環境であるか否か示す正解データであるといえる。以下、その結合されたデータを結合データと称する場合がある。
 データ分割部122は、結合データを行単位で分割することにより学習用データと評価用データに分割して、学習用データを判別モデル生成部123に出力し、評価用データを判別結果出力部124に出力する。学習用データとは判別モデルを生成するためのデータであり、評価用データとは判別モデルを評価するためのデータである。
 判別モデル生成部123は、学習用データに基づいて、本番環境フラグを教師データとして二値分類を学習することで本番環境フラグを見分ける、すなわち、本番環境であるか否かを判別する判別モデルを生成する。
 判別結果出力部124は、判別モデル生成部123が生成した判別モデルに対して評価用データ(本番環境データのうち、判別モデルの生成には使用していないデータ)を入力することにより、評価用データの各行に対して判別結果である、本番環境であるか否かの確率(本番環境確率)を算出して、評価用データの行に判別結果(本番環境確率)を対応付ける。判別結果は0~1の間の確率値である本番環境確率という形で算出される。本番環境確率が所定の閾値以上である場合、本番環境であると判別することができる。
 情報処理装置100は以上のようにして構成されている。情報処理装置100は、パーソナルコンピュータ、スマートフォン、タブレット端末、サーバ装置、クラウドサーバなどの電子機器において動作する。それらの電子機器が予め情報処理装置100としての機能を備えていてもよいし、コンピュータとしての機能を備えるそれらの電子機器においてプログラムを実行することにより情報処理装置100および本技術の方法が実現されてもよい。そのプログラムは予めそれらの電子機器にインストールされていてもよいし、ダウンロード、記憶媒体などで配布されて、ユーザなどがインストールするようにしてもよい。また、情報処理装置100は単体の装置として構成されてもよい。
 また、情報処理装置100は予測サービスを実行する各種機器(パーソナルコンピュータ、スマートフォン、タブレット端末、サーバ装置、クラウドサーバなど)と同一の機器で動作してもよいし、異なる機器において動作してもよい。異なる機器で動作する場合、情報処理装置100と予測サービスを実行する機器はネットワーク(有線無線を問わない)で接続され、情報処理装置100は生成した予測モデルや予測サービスで使用する予測モデルを特定する情報などをその機器に出力する必要がある。
[1-2.情報処理装置100における処理]
[1-2-1.全体処理]
 次に図5を参照して情報処理装置100における処理について説明する。まず情報処理装置100による全体処理について説明する。
 まずステップS101で、予測部110が学習時データに基づいて予測モデルを生成するともに、生成した予測モデルに学習時データを入力することで学習時の予測結果を得る。
 なお、次のステップS102を行う前に、複数の学習時データに基づいて、このステップS101の予測部110による処理を複数回行って複数の予測モデルを生成しておく。
 次にステップS102で、ステップS101で生成した複数の予測モデルに本番環境データを入力することにより予測部110が本番環境の予測結果を得る。
 次にステップS103で、判別部120が学習時の予測結果と本番環境の予測結果に基づいて判別モデルを生成するとともに、生成した判別モデルを用いて、本番環境であるか否かを判別する。
 そしてステップS104で、判別結果処理部130が判別部120の判別結果に基づいて所定の処理を行う。
 以上のようにして情報処理装置100の全体処理が行われる。
[1-2-2.予測部110による処理]
 次に図6のフローチャートを参照して、上述のステップS102の予測部110による処理について説明する。
 まずステップS201で、データ分割部111は学習時データを学習用データと評価用データに分割する。上述したように学習時データは正解付きの行と列を持つCSVファイルであり、データ分割部111は、図7に示すようにそのCSVファイルを行単位で分割することにより学習時データを学習用データと評価用データに分割する。データ分割部111は学習用データを予測モデル生成部112に出力し、評価用データを予測結果出力部113に出力する。
 次にステップS202で、予測モデル生成部112は、学習用データの各行を参照して契約者が契約を解約したか否かの正解を教師データとして二値分類の学習を行うことにより契約者が契約を解約するか否かを予測する予測モデルを生成する。
 次にステップS203で、予測結果出力部113は、生成された予測モデルに対して評価用データ(学習時データのうち予測モデルの生成には使用していないデータ)を入力して、評価用データである行に対して予測モデルで予測を行う。これにより、図7に示すように評価用データである行に対して予測結果としての解約予測確率を対応付ける。
 なお、学習時データを学習用データと評価用データに分割して学習時データの各行に予測結果を対応付ける際にCV(Cross Validation)を行うことにより、学習データの全ての行に対して予測結果を対応付けることができる。一方、CVを行わない場合には評価用データとした行のみに予測結果を対応付けることができる。
 ここでCVについて説明する。まず、図8Aに示すように、学習時データの各行をグループ分けするためのグループIDを各行に対応付ける。ここでは一例としてグループを3つとし、グループIDを1~3の値で定義する。ただし、グループは特定の個数に限定されるものではない。
 そして同一の学習時データに対する予測部110の1回目の処理においては、グループID1の行(グループID1の行が複数ある場合にはそれら複数の行)を評価用データとし、グループID2およびグループID3の行は学習用データとする。これにより、まず学習用データであるグループID2およびグループID3の行に基づいて予測モデルを生成し、生成された予測モデルに評価用データであるグループID1の行を入力することにより、グループID1の行に予測結果(解約予測確率)を対応付けることができる。
 次に、予測部110の2回目の処理においては、グループID2の行(グループID2の行が複数ある場合にはそれら複数の行)を評価用データとし、グループID1およびグループID3の行は学習用データとする。これにより、まず学習用データであるグループID1およびグループID3の行に基づいて予測モデルを生成し、生成された予測モデルに評価用データであるグループID2の行を入力することにより、グループID2の行に予測結果(解約予測確率)を対応付けることができる。
 次に、予測部110の3回目の処理においては、グループID3の行(グループID3の行が複数ある場合にはそれら複数の行)を評価用データとし、グループID1およびグループID2の行は学習用データとする。これにより、まず学習用データであるグループID1およびグループID2の行に基づいて予測モデルを生成し、生成された予測モデルに評価用データであるグループID3の行を入力することにより、グループID3の行に予測結果(解約予測確率)を対応付けることができる。
 このようにして全てのグループが評価用データとなるように処理を繰り返す。ここではグループは3つであるため、評価用データと学習用データを変更しながら処理を3回繰り返すことになる。そうすると学習時データの全ての行が評価用データとなり、図8Bに示すように全ての行に対して予測結果としての解約予測確率を対応付けることができる。なお、CVを行わない場合には学習時データを構成する各行のうち、評価用データとした行にのみ予測結果としての解約予測確率を対応付けることができる。
 予測部110により、同一の学習時データを用いた複数回学習を予測モデルのパラメータを変更して行うことにより複数の予測モデルを生成し、その複数の予測モデルにより、学習時データにおける各行に対して複数の予測モデルの予測結果を対応付ける事ができる。本実施の形態では図8Cに示すように予測モデルA、予測モデルB、予測モデルCという3つの予測モデルが生成され、それぞれの予測モデルによる予測結果が学習時データの各行に対応付けられているとする。
 予測部110は、本番環境においては、本番環境データを学習時に生成した予測モデルに入力することにより、本番環境データの各行に複数の予測モデルによる複数の予測結果を対応付ける。
[1-2-3.判別部120による処理]
 次に図9を参照して、上述のステップS103の判別部120による処理について説明する。なお、判別部120による処理の前に、ステップS102で複数の予測モデル(予測モデルA、B、C)を用いて学習時データの各行に各予測モデルによる予測結果が対応付けられているものとする。さらに、複数の予測モデル(予測モデルA、B、C)を用いて本番環境データの各行に各予測モデルによる予測結果が対応付けられているものとする。なお、ここでは複数の予測モデルを3つであるとして説明を行っているが、予測モデルの数は3つに限られず2つ以上であればいくつであってもよい。
 まずステップS301で、データ結合部121は、学習時データの各行に対応付けられた学習時の複数の予測結果と、本番環境データの各行に対応付けられた本番環境の複数の予測結果と、本番環境であることを示す本番環境フラグを結合して結合データを生成する。
 図10に示すように、学習時の予測結果と本番環境の予測結果をそれぞれ行方向に結合し、本番環境か否かを0と1で示す本番環境フラグを各行に対応付けて結合データを生成する。本番環境フラグは本番環境を1で示し、本番環境ではない学習時を0で示すものとするため、本番環境の予測結果の行には本番環境フラグ1を対応付け、学習時の予測結果の行には本番環境フラグ0を対応付ける。
 次にステップS302で、データ分割部122は、結合データを行単位で分割することにより学習用データと評価用データに分割する。データ分割部122は学習用データを判別モデル生成部123に出力し、評価用データを判別結果出力部124に出力する。
 次にステップS303で、判別モデル生成部123は、学習用データに基づいて、本番環境フラグを教師データとして二値分類を学習することで本番環境フラグ1を見分ける、すなわち、データの行が本番環境であるか否かを判別する判別モデルを生成する。
 次にステップS204で、判別結果出力部124は判別モデルを用いて評価用データである行が本番環境であるか否かを判別する。
 判別モデルは、評価用データである行が本番環境であるか否かを判別する際に、各予測モデルの予測結果の組み合わせに基づいて評価用データの行が本番環境であるか否かを判別する。具体的には、全ての予測モデルA~Cの予測結果がある場合、予測モデルAの予測結果を除いた場合、予測モデルBの予測結果を除いた場合、予測モデルCの予測結果を除いた場合、予測モデルAおよび予測結果Bの予測結果を除いた場合、予測モデルAおよび予測結果Cの予測結果を除いた場合、予測モデルBおよび予測結果Cの予測結果を除いた場合で本番環境であるか否かの判別を行う。
 これにより、どの予測モデルの予測結果が本番環境を判別するのに有効であるかを特定することができる。例えば、予測モデルAを除いた場合に評価用データの行が本番環境であるか判別できない場合、予測モデルAは判別に有効であるといえる。どの予測モデルの予測結果が本番環境を判別するのに有効かどうかを特定することで各予測モデルの予測結果が本番環境で影響を受けているかどうかを把握することができる。
 CVを行って、全てのグループが評価用データとなるように処理を繰り返すことにより、結合データに含まれる全ての行について判別結果としての本番環境確率を対応付けることができる。CVの方法は図8を参照して説明した方法を同様である。
 以上のようにして判別部120による処理が行われる。判別結果は判別結果処理部130に出力される。
[1-2-4.判別結果処理部130による処理]
 次に図11を参照して上述のステップS104の判別結果処理部130による処理について説明する。
 まずステップS401で、各予測モデルによって得られた予測結果が本番環境であるか否かを判別するのに有効ではない(全ての予測モデルの予測結果を用いても本番環境であるか否かを判別することができない)場合、処理はステップS402に進む(ステップS401のYes)。
 そしてステップS402で、判別結果処理部130は、複数の予測モデルのいずれかを予測サービスで使用する予測モデルとして選択する。全ての予測モデルの予測結果に基づいても本番環境であるか否かを判別できなかった場合、すなわち、全ての予測モデルの予測結果が本番環境であるか否かを判別するのに有効ではない場合とは、学習時データと本番環境データに差違がない、または差異があっても予測結果に影響がないといえる。なぜなら本番環境であるか判別できないということは学習時と本番環境で予測結果が同じであり区別できないからである。この場合、複数の予測モデルのいずれを予測サービスで使用しても問題はない。また、複数の予測モデルのうちのいずれかを既に予測サービスで使用している場合にはその予測モデルの使用を続けても問題はない。予測モデルは、学習時データと本番環境データの差違の影響を受けて予測結果が変化するのは好ましくなく、学習時データと本番環境データの差違の影響を受けた予測モデルは使用すべきではなく、差違の影響を受けない予測モデルを使用すべきだからである。
 一方、ステップS401で、各予測モデルによって得られた予測結果の全てまたは一部が本番環境であるか否かを判別するのに有効である場合、処理はステップS403に進む(ステップS401のNo)。
 次にステップS403で、一部の予測モデルによって得られた予測結果が本番環境であるか否かを判別するのに有効である場合、処理はステップS404に進む(ステップS403のYes)。
 そしてステップS404で、判別結果処理部130は、判別に有効ではない予測モデルを予測サービスで使用する予測モデルとして選択する。判別に有効ではない予測モデルでは、学習時データと本番環境データに差異があっても予測結果はその差異の影響を受けていない、または影響を受けていてもわずかな影響であるといえる。この場合、その判別に有効ではない予測モデルを予測サービスで使用するのが好ましい。予測モデルは、学習時データと本番環境データの差違の影響を受けるのは好ましくなく、学習時データと本番環境データの差違の影響を受けた判別に有効な(判別の精度向上に寄与する)予測モデルは使用すべきではなく、差違の影響を受けない予測モデルを使用すべきだからである。よって、判別に有効ではない予測モデルを予測サービスで使用することにより、データの差違に頑健な予測結果を出力する予測サービスを実現することができる。
 予測サービスが判別結果処理部130により選択された予測モデルを使用するために、情報処理装置100は予測サービスを実行する装置に対して、選択された予測モデル自体を送信する必要がある。なお、予測サービスを実行する装置がすでに複数の予測モデルを保持している場合には、情報処理装置100は予測サービスを実行する装置に対して、選択された予測モデルを示す情報を出力すればよい。予測サービスを実行する装置はその情報に基づいて使用する予測モデルを採用して予測を行う。
 一方、ステップS403で、全ての予測モデルの予測結果が本番環境であるか否かの判別に有効である場合、処理はステップS405に進む(ステップS403のNo)。
 次にステップS405で、判別結果処理部130は対応処理を行う。全ての予測モデルの予測結果が本番環境であるか否かの判別に有効である場合、学習時データと本番環境データに差違があり、全ての予測モデルの予測結果がその差違の影響を受けることにより、予測結果が変化しているといえる。上述したように、学習時データと本番環境データの差違の影響を受けた予測モデルは使用すべきではなく、差違の影響を受けない予測モデルを使用すべきだからである。よって、この場合は対応処理が必要となる。対応処理としては第1の対応処理である新たな予測モデルの再生成と、第2の対応処理である既存の予測モデルの再学習がある。なお、対応処理は予測部110が行ってもよい。
 第1の対応処理である新たな予測モデルの再生成と、第2の対応処理である既存の予測モデルの再学習のいずれを行う場合でも、入力データにおいて予測結果に影響を与えた項目(列)を特定し、その項目(列)を入力データから除外する必要がある。
 本番環境である確率が高い(例えば、確率が所定の閾値以上)行は、本番環境に特有の行である、すなわち、学習時データには含まれてない特徴を有している行であるといえる。よって、判別モデルが高い確率で本番環境であると判別した行を確認することで、具体的にどのような行が学習時とは異なる本番環境特有の行なのかを知ることができる。
 また、判別モデルにより本番環境ではないと判別された学習時データにおける項目(列)を変化させて再び判別モデルに入力した場合、本番環境であると判別されるか否かを確認する。本番環境ではないと判別された学習時データが項目(列)を変化させることにより本番環境であると判別された場合、その変化させた項目(列)は判別結果の変化に影響を与える項目(列)であると特定することができる。
 例えば、図12において円で囲って示すように、本番環境ではないと判別された行の項目(列)(例えば支払額)を変化させて、再び判別モデルに入力した結果、本番環境であると判別された場合、「支払額」が判別結果に影響を与える項目(列)であると特定することができる。よって、項目(列)を総当り的に変化させて判別モデルに入力することにより、どの項目(列)をどの程度変化させると判定結果が変わるのかということを把握することができる。なお、本番環境ではないと判別された学習時データの項目(列)を変化させるのは総当り的に行ってもよいし、特定の項目(列)に限定して行ってもよいし、ユーザが任意の項目(列)を任意の値に変更できるようにしてもよい。
 そして、判別結果の変化に影響を与える特定の項目(列)を特定できた場合、第1の対応処理として、その判別結果の変化に影響を与える項目(列)を入力データから除いてその特定の項目(列)に影響されない新たな予測モデルを再生成する。
 また、判別結果の変化に影響を与える特定の項目(列)を特定できた場合、第2の対応処理として、その判別結果の変化に影響を与える項目(列)を年度ごとに正規化することによりその特定の項目に依存されないようにして、既存の予測モデルを再学習する。
 以上のようにして判別結果処理部130による処理が行われる。第1の対応処理と第2の対応処理のどちらを行うかは予測サービスの運営者など情報処理装置100を利用するものが選択できるようにしてもよい。
 以上の情報処理装置100の処理によれば、複数の予測モデルの中から予測結果の変化が少ないような予測モデルを選択して使用することで、学習時データと本番環境データの差違に対して頑健な予測結果を継続的に得ることができる。また、正解がない入力データに基づいても正しい予測結果を出力する予測モデルを生成することができる。
 複数の予測モデルの予測結果から、本番環境かどうかを判別する判別モデルを作成することで、学習時データと本番環境データの差違に対して頑健な予測結果を出力する予測モデルを特定することができる。従来手法である統計量ベースの手法に比べて分布を仮定しないため幅広い分布のずれに対応でき、評価用データによる検証を行うことで誤検出の防止も期待できる。これにより、入力データの変化に影響を受けていない予測結果を本番環境で得ることができる。
 また、学習時データと本番環境データの差違に対して、予測結果も学習時と本番環境でずれているかどうかを知ることができる。また、どの入力データのどの行において本番環境で予測結果がずれているかを把握することができる。また、学習時データが本番環境ではどのように変化しているかを事例ベースで定量的に知ることができる。さらに、予測モデルを再学習する際に、入力データにどのような変更を加えて再学習を行うべきかを把握することができる。
 また、入力データの行ごとに本番環境である確率を算出することで、予測結果が変化しているデータを事例ベースで把握することができる。加えて、本番環境か否かを判別できなくなるような最小のデータの差違を探すことで、予測結果に影響を与えるデータはどのように変化しているかを具体的な値として把握できる。これにより、学習時データと本番環境データにどのような差違があるかがわかり、予測結果が変化してしまっているデータについても把握することができる。またこれらは定量的な値で提示されるため予測モデルを再学習するときの指針にもなると考えられる。
<2.ユーザインターフェース>
 次に本技術の利用におけるユーザインターフェースについて説明する。このユーザインターフェースは情報処理装置100または予測サービスが動作する電子機器(パーソナルコンピュータ、スマートフォン、タブレット端末)におけるディスプレイに表示されるものである。
 図13Aは予測モデルの詳細をユーザに提示するためのUIである。
 図13Bは、複数の予測モデルをユーザに提示するためのUIである。このUIでは複数の予測モデルを識別するためにモデルに付された名称と、各予測モデルによる本番環境の予測結果と学習時の予測結果の乖離度、各予測モデルのステータスなどが表示される。予測モデルのステータスとしては、現在予測サービスで稼働中であるか否か、情報処理装置100により選択された予測モデルに切り替えるか否か、などが表示されている。
 図13Cは、上述した対応処理(予測モデルの再生成と再学習)のために入力データの行を構成する項目(列)を任意の値に変更するためのUIである。
<3.具体的使用例>
 上述の実施の形態では保険契約者が契約を解約するか否かを予測する例で説明を行ったが、本技術はその例に限られるものではない。以下、複数の具体例について説明する。
 例えば本技術は、予測サービスが、顧客が興味のありそうな映画のコンテンツを予測して、ユーザが予測結果に基づいて映画を推薦する場合にも使用できる。
 この場合、過去の顧客の視聴履歴を学習時データとして、候補となる複数の予測モデルを作成する(精度は予測モデルによって1~2%ほどしかずれないのが一般的である)。
 複数の予測モデルの中から最も精度の高い予測モデルを本番環境で使用し、予測サービスにおける予測モデルとして活用する。本番環境で稼働した際のデータが蓄積されてきた段階で、そのデータの検証を行う。
 実施の形態で説明した予測部110と判別部120による処理を行い、例えば、学習時と本番環境の予測結果を判別できないという結果が出た場合、学習時に想定した通りの予測結果が本番環境でも出続けている可能性が高く、今後もその最も精度の高い予測モデルを使用し続けてモニタリングを継続的に行うとよい。
 また本技術は、予測サービスが、採用する営業職員が離職する確率を予測してユーザが予測結果を採用の参考にする場合にも使用できる。
 この場合、過去に採用した営業職員が離職したか否かの情報を学習時データとして、候補となる複数の予測モデルを作成する。
 複数の予測モデルの中から最も精度の高い予測モデルを本番環境で使用し、予測サービスにおける予測モデルとして活用する。本番環境で稼働した際のデータが蓄積されてきた段階で、そのデータの検証を行う。
 実施の形態で説明した予測部110と判別部120による処理を行い、例えば、学習時と本番環境の予測結果の違いはいくつかの予測モデルの予測結果を使うと判別できるということが分かった場合、学習時と本番環境の違いが判別できない予測結果を出力する予測モデルの中から一番離職予測の精度が高くなる予測モデルを選択し、以後はその予測モデルを使用して本番環境で予測を行うとよい。
 さらに本技術は、予測サービスが、顧客が生命保険に追加で加入する確率を予測して、ユーザが予測結果を生命保険の営業に用いる場合にも使用できる。実際の生命保険ビジネスにおいては追加で購入する確率が高い顧客に対して営業の電話やメールによるアプローチを行っているため、生命保険に追加で加入する確率を予測するのは生命保険ビジネスにおいて重要である。
 この場合、過去に生命保険に加入した顧客の情報を学習時データとして、候補となる複数の予測モデルを作成する。
 複数の予測モデルの中から最も精度の高い予測モデルを本番環境で使用し、予測サービスにおける予測モデルとして活用する。本番環境で稼働した際のデータが蓄積されてきた段階で、そのデータの検証を行う。
 実施の形態で説明した予測部110と判別部120による処理を行い、例えば、学習時と本番環境の予測結果の違いはどの予測モデルを使用しても判別できるということがわかった場合、どの予測モデルを使用しても問題が起きるため、具体的にどのような変化が起きているかを事例ベースで調べる必要がある。
 予測結果が変化している確率が高い個別の顧客について把握し、特に本番環境である確率が高い顧客については優先度を下げて、一時的に電話を行わないという運用を行うことができる。
 また、学習時の学習時データを本番環境の本番環境データに変換した所、本番環境データだと前年支払額が全体的に減っている傾向があることが分かった場合、予測モデルは再学習する必要があるため保険の支払額を年度ごとに正規化して予測モデルを再作成することができる。
<4.変形例>
 以上、本技術の実施の形態について具体的に説明したが、本技術は上述の実施の形態に限定されるものではなく、本技術の技術的思想に基づく各種の変形が可能である。
 本技術の使用用途は上述した具体例に限られず、蓄積された過去のデータから予測するものであればどのような予測にも本技術を使用することができる。
 入力データはCSVファイルに限られず、他の形式、例えば、TSV(Tab-Separated Values)ファイル、エクセル形式のファイル、非零の値をキーとバリューで表現した疎形式のファイルなどでもよい。
 本技術は以下のような構成も取ることができる。
(1)
 学習時における入力データに基づいて生成された複数の予測モデルを用いて、本番環境における入力データに基づいて前記予測モデルごとの複数の予測結果を得る予測部と、
 判別モデルを用いて、前記複数の予測結果から本番環境であるか否かを判別する判別部と、
を備える情報処理装置。
(2)
 前記複数の予測結果が本番環境であるかを判別するのに有効であるか否かに基づいて前記複数の予測モデルのいずれかを選択する判別結果処理部を備える(1)に記載の情報処理装置。
(3)
 前記複数の予測結果の全てが本番環境であるか否かを判別するのに有効ではない場合、前記判別結果処理部は、前記複数の予測モデルのいずれかを選択する(2)に記載の情報処理装置。
(4)
 前記複数の予測結果の一部が本番環境であるかを予測するのに有効である場合、前記判別結果処理部は、有効ではない予測結果を出力した前記予測モデルを選択する(2)または(3)に記載の情報処理装置。
(5)
 前記複数の予測結果の全てが本番環境であるかを予測するのに有効である場合、前記判別結果処理部は、対応処理を行う(2)から(4)のいずれかに記載の情報処理装置。
(6)
 前記対応処理は、新たな予測モデルの生成である(5)に記載の情報処理装置。
(7)
 前記対応処理は、生成済みの前記予測モデルの再学習である(5)に記載の情報処理装置。
(8)
 前記入力データから前記予測結果に影響を与えるデータを除外して前記対応処理を行う(5)から(7)のいずれかに記載の情報処理装置。
(9)
 選択された前記予測モデルは予測サービスにおいて使用される(2)から(8)のいずれかに記載の情報処理装置。
(10)
 前記予測モデルは、学習時の入力データに含まれる正解を教師データとして二値分類を学習することにより作成される(1)から(9)のいずれかに記載の情報処理装置。
(11)
 前記判別モデルは、学習時の前記予測モデルによる予測結果と本番環境の前記予測モデルによる予測結果に基づいて生成される(1)から(10)のいずれかに記載の情報処理装置。
(12)
 学習時の前記予測モデルによる予測結果と本番環境時の前記予測モデルによる予測結果に本番環境時の予測結果であることを示す識別情報を結合し、前記識別情報を教師データとして二値分類を学習することにより前記判別モデルが生成される(11)に記載の情報処理装置。
(13)
 前記入力データは複数の行と列により構成されるデータである(1)から(12)のいずれかに記載の情報処理装置。
(14)
 学習時における入力データに基づいて生成された複数の予測モデルを用いて、本番環境における入力データに基づいて前記予測モデルごとの複数の予測結果を取得し、
 判別モデルを用いて、前記複数の予測結果から本番環境であるか否かを判別する
情報処理方法。
(15)
 学習時における入力データに基づいて生成された複数の予測モデルを用いて、本番環境における入力データに基づいて前記予測モデルごとの複数の予測結果を取得し、
 判別モデルを用いて、前記複数の予測結果から本番環境であるか否かを判別する
情報処理方法をコンピュータに実行させるプログラム。
100・・・情報処理装置
110・・・予測部
120・・・判別部
130・・・判別結果処理部

Claims (15)

  1.  学習時における入力データに基づいて生成された複数の予測モデルを用いて、本番環境における入力データに基づいて前記予測モデルごとの複数の予測結果を得る予測部と、
     判別モデルを用いて、前記複数の予測結果から本番環境であるか否かを判別する判別部と、
    を備える情報処理装置。
  2.  前記複数の予測結果が本番環境であるかを判別するのに有効であるか否かに基づいて前記複数の予測モデルのいずれかを選択する判別結果処理部を備える
    請求項1に記載の情報処理装置。
  3.  前記複数の予測結果の全てが本番環境であるか否かを判別するのに有効ではない場合、前記判別結果処理部は、前記複数の予測モデルのいずれかを選択する
    請求項2に記載の情報処理装置。
  4.  前記複数の予測結果の一部が本番環境であるかを予測するのに有効である場合、前記判別結果処理部は、有効ではない予測結果を出力した前記予測モデルを選択する
    請求項2に記載の情報処理装置。
  5.  前記複数の予測結果の全てが本番環境であるかを予測するのに有効である場合、前記判別結果処理部は、対応処理を行う
    請求項2に記載の情報処理装置。
  6.  前記対応処理は、新たな予測モデルの生成である
    請求項5に記載の情報処理装置。
  7.  前記対応処理は、生成済みの前記予測モデルの再学習である
    請求項5に記載の情報処理装置。
  8.  前記入力データから前記予測結果に影響を与えるデータを除外して前記対応処理を行う
    請求項5に記載の情報処理装置。
  9.  選択された前記予測モデルは予測サービスにおいて使用される
    請求項2に記載の情報処理装置。
  10.  前記予測モデルは、学習時の入力データに含まれる正解を教師データとして二値分類を学習することにより作成される
    請求項1に記載の情報処理装置。
  11.  前記判別モデルは、学習時の前記予測モデルによる予測結果と本番環境の前記予測モデルによる予測結果に基づいて生成される
    請求項1に記載の情報処理装置。
  12.  学習時の前記予測モデルによる予測結果と本番環境時の前記予測モデルによる予測結果に本番環境時の予測結果であることを示す識別情報を結合し、前記識別情報を教師データとして二値分類を学習することにより前記判別モデルが生成される
     請求項11に記載の情報処理装置。
  13.  前記入力データは複数の行と列により構成されるデータである
    請求項1に記載の情報処理装置。
  14.  学習時における入力データに基づいて生成された複数の予測モデルを用いて、本番環境における入力データに基づいて前記予測モデルごとの複数の予測結果を取得し、
     判別モデルを用いて、前記複数の予測結果から本番環境であるか否かを判別する
    情報処理方法。
  15.  学習時における入力データに基づいて生成された複数の予測モデルを用いて、本番環境における入力データに基づいて前記予測モデルごとの複数の予測結果を取得し、
     判別モデルを用いて、前記複数の予測結果から本番環境であるか否かを判別する
    情報処理方法をコンピュータに実行させるプログラム。
PCT/JP2022/047415 2022-02-07 2022-12-22 情報処理装置、情報処理方法およびプログラム WO2023149120A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-017124 2022-02-07
JP2022017124 2022-02-07

Publications (1)

Publication Number Publication Date
WO2023149120A1 true WO2023149120A1 (ja) 2023-08-10

Family

ID=87552240

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/047415 WO2023149120A1 (ja) 2022-02-07 2022-12-22 情報処理装置、情報処理方法およびプログラム

Country Status (1)

Country Link
WO (1) WO2023149120A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020149693A (ja) * 2019-03-14 2020-09-17 アクタピオ,インコーポレイテッド 生成装置、生成方法および生成プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020149693A (ja) * 2019-03-14 2020-09-17 アクタピオ,インコーポレイテッド 生成装置、生成方法および生成プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NAGANO YUTA, TAKAYA UDA: "Data Compression and Deep Learning for Automatic Malware Variant Detection.", CSS2017 COMPUTER SECURITY SYMPOSIUM 2017, PROCEEDINGS JOINTLY HELD ANTI-MALWARE RESEARCH HUMAN RESOURCE DEVELOPMENT WORKSHOP 2017, PRIVACY WORKSHOP 2017 USABLE SECURITY WORKSHOP 2017, 1 October 2017 (2017-10-01) - 25 October 2017 (2017-10-25), XP093083211 *

Similar Documents

Publication Publication Date Title
Kumar et al. A big data MapReduce framework for fault diagnosis in cloud-based manufacturing
McCarthy et al. Applying predictive analytics
CN111401777B (zh) 企业风险的评估方法、装置、终端设备及存储介质
CN110111139B (zh) 行为预估模型生成方法、装置、电子设备及可读介质
US10324705B2 (en) System and method for run-time update of predictive analytics system
CN110995459B (zh) 异常对象识别方法、装置、介质及电子设备
Long et al. A new approach for construction of geodemographic segmentation model and prediction analysis
US11727427B2 (en) Systems and methods for assessing, correlating, and utilizing online browsing and sales data
CN112348321A (zh) 风险用户的识别方法、装置及电子设备
Bandaru et al. Development, analysis and applications of a quantitative methodology for assessing customer satisfaction using evolutionary optimization
Dandolo et al. AcME—Accelerated model-agnostic explanations: Fast whitening of the machine-learning black box
CN112241805A (zh) 使用历史检验数据进行缺陷预测
US11144938B2 (en) Method and system for predictive modeling of consumer profiles
Tasgetiren et al. On the distributed software architecture of a data analysis workflow: A case study
CN113424207B (zh) 高效地训练可理解模型的系统和方法
CN113610625A (zh) 逾期风险警示方法、装置及电子设备
Lee et al. An entropy decision model for selection of enterprise resource planning system
CN107644042B (zh) 软件程序点击率预估排序方法及服务器
WO2023149120A1 (ja) 情報処理装置、情報処理方法およびプログラム
Boratto et al. Influence of rating prediction on group recommendation's accuracy
US20230186214A1 (en) Systems and methods for generating predictive risk outcomes
CN115719244A (zh) 用户行为预测方法及装置
CN113837843A (zh) 产品推荐方法、装置、介质及电子设备
CN112906723A (zh) 一种特征选择的方法和装置
Gerunov Binary classification problems in economics and 136 different ways to solve them

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

Country of ref document: EP

Kind code of ref document: A1