Agent model construction program, agent model construction method, and information processing device

The method improves agent simulation reproducibility by selecting and penalizing deviations from human psychology sensitivity functions, addressing the limitations of conventional methods in handling unknown conditions and measures.

JP7626042B2Active Publication Date: 2025-02-04FUJITSU LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021195394
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-12-01
Publication Date
2025-02-04
Estimated Expiration
2041-12-01

AI Technical Summary

Technical Problem

Conventional agent simulation methods struggle to reproduce human behavior accurately under unknown conditions and measures due to the lack of effective evaluation of human psychological laws, leading to inadequate reproducibility.

Method used

A method involving a computer system that selects samples with the same values other than stimulus variables, calculates output results, and adjusts neural network parameters based on penalties to ensure compliance with sensitivity functions representing human psychology, thereby improving reproducibility under unknown conditions.

Benefits of technology

Enhances the reproducibility of agent models by ensuring they adhere to human psychological laws, even in unforeseen situations, through the use of sensitivity functions and penalty calculations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007626042000005
    Figure 0007626042000005
  • Figure 0007626042000006
    Figure 0007626042000006
  • Figure 0007626042000007
    Figure 0007626042000007
Patent Text Reader

Abstract

To enhance reproducibility under an unknown condition and an unknown policy.SOLUTION: An information processing device selects, from a dataset, samples having an identical value other than stimulus variables concerning input to an agent. The information processing device calculates an output result of the dataset by inputting the dataset to a neural network. The information processing device calculates a penalty from the output result based on whether or not the value corresponding to a pair of samples identified by processing to be selected conforms to a sensitivity function. The information processing device adjusts a parameter of the neural network until a training error based on the output result and the penalty satisfy a prescribed condition.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an agent model construction program and the like. [Background technology]

[0002] Agent simulation is a type of simulation that reproduces social phenomena by modeling people's behavior. Agent simulation is used to predict what will happen under unknown circumstances and to evaluate the effects of implementing unknown policies. For example, there is a people flow simulation that aims to reproduce congestion that occurs in cities and facilities.

[0003] To construct an agent simulation, an agent model that reproduces the behavior of each individual is constructed. FIG. 22 is a diagram for explaining the agent model. In the following explanation, the agent model is simply referred to as a "model." For example, in the model, when a "stimulus" is input to agent 1b from external environment 1a, agent 1b recognizes the stimulus, makes a decision, and outputs an "action." Constructing a model means describing the rules for the cognition and decision-making parts of agent 1b.

[0004] When constructing an agent simulation, a model is constructed from data. In this case, the function f in formula (1) is estimated from data that pairs stimuli and actions.

[0005] Behavior = f(stimulus)...(1)

[0006] When there is sufficient domain knowledge about the target human behavior, a model can be constructed using a deductive method, in which a multinomial discrete choice model is assumed and parameters are set to suit the target.

[0007] Deductive model building methods allow you to build models that behave appropriately even in unknown situations and under unknown policies. However, when building models using deductive methods, it is difficult to create models without sufficient domain knowledge about human behavior in the target area.

[0008] On the other hand, when domain knowledge is insufficient, a method is used to construct a model inductively from data. For example, a neural network is used to create a model that reproduces human behavior from various social and behavioral data. In the following explanation, neural network is abbreviated as "NN."

[0009] Inductive model building methods allow you to build models even if you do not have sufficient domain knowledge about human behavior in the target area. However, inductive model building methods do not necessarily allow you to build models that behave appropriately under unknown situations or unknown policies that are not included in the data used to train the NN.

[0010] By the way, there is a conventional technique for constructing a NN that is consistent with domain knowledge by designing a loss function. For example, a NN that is consistent with domain knowledge can be constructed by defining the loss function as in Equation (2).

[0011] Loss function (L) = training error (E) + λ penalty term (W) (2)

[0012] In equation (2), the loss function (L) is the objective function for machine learning. The NN is trained to minimize the loss function. The training error (E) is the deviation from the correct label. The penalty term indicates the degree to which the NN output deviates from theory. λ is a coefficient.

[0013] If the penalty term can be designed well, then equation (2) makes it possible to build a NN that is consistent with domain knowledge.

[0014] Here, we explain the conventional technology (existing research) for designing penalty terms. Consider the problem of predicting the water temperature (Y) at each depth (d) and each time (t) in a lake using physical variables such as the amount of sunlight as feature quantities. The conventional technology focuses on the physical law that "the deeper the depth, the higher the water density." Water density p can be calculated from the known physical law f and water temperature y, as shown in equation (3).

[0015] p = f(y) (3)

[0016] In the conventional technology, the penalty is calculated based on whether the structure of the predicted value vector (Y (the hat of Y is omitted)) of the NN complies with the above physical laws. The predicted value vector is the vector shown in formula (4). The density that can be calculated from the predicted value vector is shown in formula (5).

[0017]

number

number

[0018] For example, based on the laws of physics, the density at a shallow point (d1) is lower than the density at a deep point (d2). d1t1 <p d2t1 " should be satisfied (the hat on p is omitted).

[0019] In the conventional technology, as described above, it is checked whether the predicted value structure violates the physical laws, and the degree of violation is set as a penalty. Here, in the conventional technology, at each time, (p d1t1 , p d2t1 ), (p d2t1 , p d3t1 ), , (p dn-1t1 , p dnt1 ) is evaluated to see if it follows the above magnitude relationship. Here, the case of time t1 is shown as an example. [Prior art documents] [Patent documents]

[0020] [Patent Document 1] US Patent Application Publication No. 2018 / 0157977 [Patent Document 2] International Publication No. 2021 / 005739 [Patent Document 3] JP 2001-134706 A Summary of the Invention [Problem to be solved by the invention]

[0021] However, it is difficult to evaluate whether the prediction vector structure shown in the above-mentioned prior art complies with human psychology, because the laws of human psychology are knowledge about input-output relationships, such as taking a certain action (output) if a certain condition (input) is met.

[0022] In other words, conventional technology is unable to calculate penalties related to the laws of human psychology, and is unable to construct a NN that is consistent with domain knowledge, making it impossible to improve reproducibility under unknown conditions and unknown measures.

[0023] In one aspect, the present invention has an object to provide an agent model construction program, an agent model construction method, and an information processing device that can improve reproducibility under unknown conditions and unknown measures. [Means for solving the problem]

[0024] In the first proposal, the computer executes the following process. The computer selects samples from the dataset that have identical values ​​other than the stimulus variables related to the input to the agent. The computer inputs the dataset into a neural network to calculate an output result of the dataset. The computer calculates a penalty based on whether or not a value corresponding to a pair of samples identified by the selection process, among the output results, conforms to a sensitivity function. The computer adjusts the parameters of the neural network until the learning error based on the output results and the penalty satisfy predetermined conditions. Effect of the Invention

[0025] It is possible to improve reproducibility under unknown conditions and unknown measures. [Brief description of the drawings]

[0026] [Figure 1] FIG. 1 is a diagram showing the theoretically obtained relationship between stimuli and responses. [Diagram 2] FIG. 2 is a diagram (1) for explaining the process of the information processing device according to the first embodiment. [Diagram 3] FIG. 3 is a diagram for explaining the prior art. [Figure 4] FIG. 4 is a diagram (2) for explaining the process of the information processing device according to the first embodiment. [Diagram 5] FIG. 5 is a functional block diagram of the information processing device according to the first embodiment. [Figure 6] FIG. 6 is a diagram illustrating an example of a data structure of the learning dataset according to the first embodiment. [Figure 7] FIG. 7 is a diagram illustrating an example of a data structure of the evaluation table according to the first embodiment. [Figure 8] FIG. 8 is a flowchart of a processing procedure of the information processing device according to the first embodiment. [Figure 9] FIG. 9 is a diagram (1) for explaining the process of the information processing device according to the second embodiment. [Figure 10]FIG. 10 is a diagram (2) for explaining the process of the information processing device according to the second embodiment. [Figure 11] FIG. 11 is a functional block diagram of an information processing device according to the second embodiment. As shown in FIG. [Figure 12] FIG. 12 is a diagram illustrating an example of a data structure of the learning dataset according to the second embodiment. As illustrated in FIG. [Figure 13] FIG. 13 is a diagram illustrating an example of a data structure of the treatment group table according to the second embodiment. [Figure 14] FIG. 14 is a diagram illustrating an example of a data structure of the evaluation table according to the second embodiment. [Figure 15] FIG. 15 is a flowchart of a processing procedure of the information processing device according to the second embodiment. [Figure 16] FIG. 16 is a diagram showing the relationship between stimuli and responses of sensitivity functions designed based on common sense. [Figure 17] FIG. 17 is a diagram showing the relationship between stimuli and responses of sensitivity functions designed based on experiments. [Figure 18] FIG. 18 is a diagram showing the relationship between stimuli and responses of a sensitivity function designed based on theory. [Figure 19] FIG. 19 is a diagram (1) for explaining the process of generating treatment group samples. [Figure 20] FIG. 20 is a diagram (2) for explaining the process of generating treatment group samples. [Figure 21] FIG. 21 is a diagram illustrating an example of a hardware configuration of a computer that realizes the same functions as the information processing apparatus of the embodiment. [Figure 22] FIG. 22 is a diagram for explaining the agent model. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0027] Hereinafter, an agent model construction program, an agent model construction method, and an information processing device disclosed in the present application will be described in detail with reference to the accompanying drawings. Note that the present invention is not limited to the embodiments. EXAMPLES

[0028] The information processing device according to the first embodiment creates a model (agent model) that ensures reproducibility of reactions in unknown situations and under unknown measures by constructing an inductive model that is consistent with partial domain knowledge.

[0029] For example, even if the amount of domain knowledge is not large, partial domain knowledge may be obtained, and when partial domain knowledge is obtained, a relationship between a specific stimulus and a response may become theoretically or empirically clear. The information processing device of the first embodiment calculates a penalty based on the relationship between the stimulus and the response.

[0030] FIG. 1 is a diagram showing the theoretically obtained relationship between stimuli and responses. The horizontal axis of graph G1 shown in FIG. 1 corresponds to stimuli. The vertical axis of graph G1 corresponds to responses. For example, if the relationship between incentives (e.g., the discount amount of the price of product A) and selection behavior (e.g., the probability of purchasing product A) is known through partial domain knowledge, the relationship between stimuli and responses shown in graph G1 can be obtained. The stimuli correspond to the discounted price of product A, and the responses correspond to the probability of product A being selected. Graph G1 shows monotonically increasing price elasticity.

[0031] In this Example 1, the terms stimulus variable (x), response variable (y), and sensitivity function (f) are defined. The stimulus variable (x) is a variable related to the input to a human (agent), such as an incentive. The response variable (y) is a variable related to the output from a human, such as a selection behavior. The sensitivity function (f) is a function that represents the relationship between the stimulus variable and the response variable, such as the monotonically increasing price elasticity shown in graph G1 of FIG. 1.

[0032] FIG. 2 is a diagram (1) for explaining the processing of the information processing device according to the first embodiment. The information processing device evaluates the relationship of outputs between a plurality of conditions and calculates a penalty. The information processing device calculates a penalty by calculating the input X 1By inputting this to NN50, the output Y 1 The information processing device calculates the second condition input X 2 By inputting this to NN50, the output Y 2 Calculate the third condition input X 3 By inputting this to NN50, the output Y 3 Each output contains multiple components (y1, y2, y3, ...). For example, y1 is the purchase probability of product A.

[0033] For example, the information processing device may output Y 1 Component y1 and output Y 2 The output Y 2 Component y1 and output Y 3 The output relationship is evaluated by comparing the component y1 of the output with the component y2 of the input. By carrying out such processing, it is possible to evaluate whether or not the output matches the laws of human psychology as shown in graph G1 in Figure 1. For example, in graph G1, if the response (output) when the stimulus (input) is small is smaller than the response (output) when the stimulus (input) is large, it can be said to match the laws of human psychology.

[0034] In contrast, the conventional technology analyzes the structure of the output under a certain condition and calculates the penalty. FIG. 3 is a diagram for explaining the conventional technology. In the conventional technology, an input X under a certain condition is input to a NN to calculate an output Y. The output Y includes multiple components (y1, y2, y3, ...). For example, in the conventional technology, the component y1 of the output Y is compared with the component y2, and the component y2 is compared with the component y3 to evaluate the output structure. With such processing, it is not possible to evaluate whether or not it matches the laws of human psychology as shown in graph G1 in FIG. 1.

[0035] Next, the processing of the information processing device according to the first embodiment will be described in more detail. FIG. 4 is a diagram (2) for explaining the processing of the information processing device according to the first embodiment. The information processing device performs a comparison between conditions based on the idea of ​​a control experiment. Here, the information processing device evaluates whether or not the law of human psychology is satisfied based on the sensitivity function shown in graph G1 of FIG. 1. Graph G1 shows the law that the larger the stimulus variable, the larger the response variable.

[0036] The information processing device extracts m mini-batches M1 to Mm from the learning dataset, and selects samples in each mini-batch that have the same values ​​for components other than the stimulus variable. Here, the component corresponding to the stimulus variable (incentive) is “x1”. The components other than the stimulus variable are “x2, x3, . . . , x n "

[0037] In the mini-batch M1, the sample with ID "1" and the sample with ID "3" have the same values ​​of components other than the stimulus variables. Therefore, the information processing device selects the sample with ID "1" and the sample with ID "3". In the following description, the sample with ID "n" is denoted as "sample sn". The information processing device inputs the mini-batch M1 to the NN50 and outputs Y M1 Calculate.

[0038] In the mini-batch Mm, the sample s9992 and the sample s9993 are samples with the same values ​​of components other than the stimulus variables. Therefore, the information processing device selects the sample s9992 and the sample s9993. The information processing device inputs the mini-batch Mm to the NN50 and outputs Y Mm Calculate.

[0039] Next, the information processing device compares the values ​​of the response variables corresponding to the selected pair of samples to evaluate whether they follow the sensitivity function. For example, the information processing device evaluates the magnitude relationship between the response variables. Here, the component corresponding to the response variable is set to the output component "y1".

[0040] The information processing device outputs Y M1Among them, the value of y1 corresponding to sample s1, "0.2", is compared with the value of y1 corresponding to sample s3, "0.1". Since the magnitude relationship of the stimulus variables is "the value of the stimulus variable (x1) of sample s1 < the value of the stimulus variable (x1) of sample s3", if it follows the sensitivity function, it should be "the value of the response variable (y1) corresponding to sample s1 < the value of the response variable (y1) corresponding to sample s3". However, since y1 corresponding to sample s1 is "0.2" and y1 corresponding to sample s3 is "0.1", the information processing device evaluates that the set of samples s1, s3 does not follow the sensitivity function.

[0041] The information processing device outputs Y Mm Among them, the value of y1 corresponding to sample s9992, "0.1", is compared with the value of y1 corresponding to sample s9993, "0.2". Since the magnitude relationship of the stimulus variables is "the value of the stimulus variable (x1) of sample s9992 < the value of the stimulus variable (x1) of sample s9993", if they follow the sensitivity function, then the value of the response variable (y1) corresponding to sample s9992 < the value of the response variable (y1) corresponding to sample s9993. Here, since y1 corresponding to sample s9992 is "0.1" and y1 corresponding to sample s9993 is "0.2", the information processing device evaluates that the set of samples s9992, s9993 follows the sensitivity function.

[0042] The information processing device executes the above process for each mini-batch, and calculates the proportion of samples whose response variable values ​​do not follow the sensitivity function as a penalty.

[0043] As described above, the information processing device according to the first embodiment selects samples having the same values ​​of components other than the stimulus variables from the mini-batches M1 to Mm, and compares the values ​​of the response variables corresponding to the pair of selected samples. The information processing device calculates the ratio of samples whose response variable values ​​do not follow the sensitivity function as a penalty. This makes it possible to calculate a penalty related to the laws of human psychology.

[0044] The information processing device sets a loss function based on the penalty calculated by the above process and performs machine learning using NN50 to create a model (agent model) that ensures the reproducibility of reactions under unknown situations and unknown measures.

[0045] Next, a configuration example of the information processing device according to the present embodiment 1 will be described. Fig. 5 is a functional block diagram showing the configuration of the information processing device according to the present embodiment 1. As shown in Fig. 5, the information processing device 100 has a communication unit 110, an input unit 120, a display unit 130, a storage unit 140, and a control unit 150.

[0046] The communication unit 110 is connected to an external device or the like by wire or wirelessly, and transmits and receives information to and from the external device or the like. For example, the communication unit 110 is realized by a NIC (Network Interface Card) or the like. The information processing device 100 may acquire sensitivity function information 141, a learning dataset 142, and the like from the external device or the like via the communication unit 110.

[0047] The input unit 120 is an input device that inputs various types of information to the information processing device 100. The input unit 120 corresponds to a keyboard, a mouse, a touch panel, or the like.

[0048] The display unit 130 is a display device that displays information output from the control unit 150. The display unit 130 corresponds to a liquid crystal display, an organic EL (Electro Luminescence) display, a touch panel, or the like.

[0049] The storage unit 140 has the NN 50, sensitivity function information 141, a learning data set 142, and an evaluation table 143. The storage unit 140 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk or an optical disk.

[0050] NN50 is data related to a neural network. For example, NN50 includes an input layer, a hidden layer, and an output layer. Parameters are set in the hidden layer, etc., and these parameters are adjusted by machine learning based on the backpropagation method, etc.

[0051] The sensitivity function information 141 is information indicating the relationship between a stimulus variable (x) and a response variable (y) obtained from partial domain knowledge, and corresponds to a sensitivity function (f). For example, the sensitivity function information 141 corresponds to the information of the graph G1 shown in FIG.

[0052] The learning dataset 142 is information used for machine learning of the NN 50. FIG. 6 is a diagram showing an example of a data structure of the learning dataset according to the first embodiment. As shown in FIG. 6, the learning dataset 142 associates a mini-batch number, input data, and a correct answer label. The mini-batch number is a number that identifies each mini-batch. For example, the input data samples corresponding to the mini-batch number "M1" are samples with IDs "1" to "3". A mini-batch with mini-batch number Mn is denoted as "mini-batch Mn".

[0053] The input data includes ID and samples (x1~x n The ID is information for identifying the sample. n ) is data input to the NN 50. In this Example 1, of the multiple components included in the sample, x1 is the component corresponding to the stimulus variable. A sample with ID "n" is denoted as "sample sn".

[0054] The correct label contains multiple output values ​​(y1, y2, y3, ...). The learning error is calculated from the difference between the output data when the input data is input to NN50 and the correct label.

[0055] Returning to the description of Fig. 5, the evaluation table 143 is a table for holding input data of the learning data set 142 and data output from the NN 50 when the input data is input to the NN 50. Fig. 7 is a diagram illustrating an example of a data structure of the evaluation table according to the first embodiment.

[0056] 7, the mini-batch number, the input data, and the output data are associated with each other in the evaluation table 143. The explanation regarding the mini-batch number and the input data is the same as the explanation regarding the mini-batch number and the input data described in FIG.

[0057] The output data includes a plurality of output values ​​(y1, y2, y3, . . . ). In the present embodiment 1, of the plurality of output values, y1 is set as a component corresponding to a response variable.

[0058] Returning to the description of Fig. 5, the control unit 150 includes a selection unit 151 and a learning execution unit 152. The control unit 150 is realized by, for example, a central processing unit (CPU) or a micro processing unit (MPU). The control unit 150 may also be implemented by, for example, an integrated circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).

[0059] The selection unit 151 extracts m mini-batches M1 to Mm from the learning dataset 142, and selects samples having the same values ​​of components other than the stimulus variable (x1) in each mini-batch. Explaining with reference to Fig. 6, the selection unit 151 selects samples s1 and s3 for mini-batch number M1. The selection unit 151 selects samples s1 and s3 for mini-batch number Mm.

[0060] The selection unit 151 repeatedly executes the above process for samples with other mini-batch numbers. The selection unit 151 outputs to the learning execution unit 152 “selection result information” in which a set of IDs of the selected samples is set for each mini-batch.

[0061] The learning execution unit 152 is a processing unit that adjusts parameters of the NN 50 by executing machine learning of the NN 50. For example, the learning execution unit 152 repeatedly executes, as machine learning, a process of calculating a learning error, a process of calculating a penalty, and a process of adjusting parameters for each mini-batch. The process of calculating a learning error, the process of calculating a penalty, and the process of adjusting parameters will be described below.

[0062] The process of calculating the learning error will be described. The learning execution unit 152 acquires a sample of input data corresponding to one mini-batch of the learning dataset 142, and inputs it to the NN 50. The learning execution unit 152 calculates the learning error by calculating the error between the output data obtained by the NN 50 and the correct label corresponding to the selected mini-batch. For example, the learning execution unit 152 calculates the learning error by summing up the error between the value of each output data and the value of each correct label. The learning execution unit 152 repeatedly executes the above process for each mini-batch.

[0063] The learning execution unit 152 registers the relationship between the input data and the output data of each mini-batch in the evaluation table 143.

[0064] The process of calculating the penalty will be described. The learning execution unit 152 identifies the IDs of a pair of samples in a mini-batch based on the selection result information, and compares the values ​​of the response variables corresponding to the pair of samples based on the evaluation table 143. The learning execution unit 152 evaluates whether the value of the response variable complies with the sensitivity function defined in the sensitivity function information 141. The learning execution unit 152 calculates the ratio of sample sets that do not comply with the sensitivity function out of the total number of sample sets in the selection result information, as the penalty.

[0065] For example, the learning execution unit 152 may calculate the penalty based on equation (6). In equation (6), Samples is a set of all sets of samples of the selection result information. |Samples| is the number of elements in the set. In equation (6), Ω is defined by equation (7). In equation (7), f represents a sensitivity function, x represents an input to the NN, and y represents an output from the NN. Ω i、j is the output y corresponding to sample si i and the output y corresponding to sample sj j But, x i x i If it does not follow the sensitivity function f in Ω, it outputs "1". i、j is the output y corresponding to sample si i and the output y corresponding to sample sj j But, x i x i If it follows the sensitivity function f in

[0066]

number

[0067]

number

[0068] The process in which the learning execution unit 152 evaluates whether or not the values ​​of the response variables of a pair of samples conform to the sensitivity function is similar to the process described with reference to FIG.

[0069] The process of adjusting the parameters will now be described. The learning execution unit 152 adjusts the parameters of the NN 50 so that the value of the loss function obtained by adding up the learning error calculated by the process of calculating the learning error and the penalty calculated by the process of calculating the penalty becomes smaller.

[0070] The learning execution unit 152 trains the NN 50 by repeatedly executing the above process until the value of the loss function becomes less than a predetermined value. The learning execution unit 152 outputs information on the NN 50 after the machine learning is completed. The learning execution unit 152 may transmit the NN 50 to an external device via the communication unit 110.

[0071] Next, an example of a processing procedure of the information processing device according to the first embodiment will be described. Fig. 8 is a flowchart showing the processing procedure of the information processing device according to the first embodiment. As shown in Fig. 8, the selection unit 151 of the information processing device 100 acquires a mini-batch from the learning dataset 142 (step S101). The selection unit 151 selects samples having the same values ​​other than the stimulus variables from the acquired mini-batch (step S102).

[0072] The learning execution unit 152 of the information processing device 100 inputs the mini-batch to the NN 50, calculates output data, and registers it in the evaluation table 143 (step S103). The learning execution unit 152 calculates a learning error (step S104).

[0073] The learning execution unit 152 refers to the evaluation table 143 and calculates a penalty by a control experiment (step S105). The learning execution unit 152 adjusts the parameters of the NN 50 so that the value of a loss function that is the sum of the learning error and the penalty becomes small (step S106).

[0074] The learning execution unit 152 determines whether the value of the loss function is less than a predetermined value (step S107). If the value of the loss function is less than the predetermined value (step S107, No), the learning execution unit 152 proceeds to step S101.

[0075] On the other hand, if the value of the loss function is not less than the predetermined value (Yes at step S107), the learning execution unit 152 outputs the NN 50 (step S108).

[0076] Next, the effect of the information processing device 100 according to the first embodiment will be described. For each mini-batch, the information processing device 100 selects samples having the same values ​​of components other than the stimulus variables, and compares the values ​​of the response variables corresponding to the pair of selected samples. The information processing device 100 calculates the proportion of samples whose response variable values ​​do not follow the sensitivity function as a penalty. This makes it possible to calculate a penalty related to the laws of human psychology.

[0077] The information processing device 100 sets a loss function based on the penalty calculated by the above process and performs machine learning using NN50, thereby creating a model (agent model) that ensures the reproducibility of reactions under unknown situations and unknown measures. EXAMPLES

[0078] Before describing the second embodiment, an improvement of the information processing device 100 of the first embodiment will be described. The information processing device 100 selects samples with the same values ​​of components other than the stimulus variables in each mini-batch, and calculates a penalty by comparing the values ​​of the response variables corresponding to the pair of selected samples. However, if the number of components (number of items) input to the NN is large or the size of the learning dataset is small, the probability of finding samples with the same inputs other than the stimulus variables decreases, and there are cases where the penalty cannot be calculated.

[0079] In view of the above improvements, the information processing device according to the second embodiment artificially generates samples that satisfy the comparability conditions from the learning dataset and performs comparison. In the following description, the artificially generated samples that satisfy the comparability conditions are referred to as "treatment group samples." In addition, when the original samples used to generate the treatment group samples are to be specifically distinguished, they are referred to as "control group samples."

[0080] FIG. 9 is a diagram (1) for explaining the processing of the information processing device according to the second embodiment. As shown in FIG. 9, the information processing device generates a mini-batch M1' based on a mini-batch M1. The samples of the mini-batch M1' are treatment group samples. As in the first embodiment, the component corresponding to the incentive variable (incentive) is defined as "x1". The components other than the incentive variable are defined as "x2, x3, . . . , x n The information processing device generates a mini-batch M1' by changing the stimulus variables of the mini-batch M1 and leaving the values ​​of the other components unchanged. The changed values ​​may be obtained by adding a predetermined value to the original values, or may be set randomly.

[0081] The information processing device generates a sample with ID "1" of mini-batch M1' by changing the value "1" of stimulus variable x1 of sample s1 (sample with ID "1", same below) of mini-batch M1 to "3". In the following explanation, a sample with ID "n" of the treatment group sample is generated as "sample s'n".

[0082] The information processing device generates sample s'2 by changing the value of stimulus variable x1 of sample s2 from "1" to "3." The information processing device generates sample s'3 by changing the value of stimulus variable x1 of sample s3 from "2" to "5."

[0083] FIG. 10 is a diagram (2) for explaining the processing of the information processing device according to the present embodiment 2. The information processing device compares the value of the response variable when the control group sample is input to the NN50 with the value of the response variable when the treatment group sample is input to the NN50, evaluates whether or not it follows the sensitivity function, and calculates a penalty. In FIG. 10, of the components of the output data output from the NN50, the component y1 is set as the value of the response variable. The sensitivity function is set to the same as the sensitivity function shown in the embodiment 1. In other words, the sensitivity function is a function in which the larger the value of the stimulus variable, the larger the value of the response variable.

[0084] The information processing device compares the response variable "0.2" when sample s1 (stimulus variable "1") is input to NN50 with the response variable "0.21" when sample s'1 (stimulus variable "3") is input to NN50. As a result, the response variable with the larger stimulus variable is larger, and the information processing device evaluates that it follows the sensitivity function.

[0085] The information processing device compares the response variable "0.01" when sample s2 (stimulus variable "1") is input to NN50 with the response variable "0.02" when sample s'2 (stimulus variable "3") is input to NN50. The response variable with the larger stimulus variable is larger, and the information processing device evaluates that it follows the sensitivity function.

[0086] The information processing device compares the response variable "0.1" when sample s3 (stimulus variable "2") is input to NN50 with the response variable "0.05" when sample s'3 (stimulus variable "5") is input to NN50. The response variable with the larger stimulus variable is smaller, and the information processing device evaluates that it does not follow the sensitivity function.

[0087] The information processing device performs the above process on each mini-batch M1, M1', and calculates the penalty as "1 / 3" because the response variable of one sample pair among the three samples in the mini-batch M1, M1' does not follow the sensitivity function. The information processing device performs the above process on each mini-batch.

[0088] As described above, the information processing device according to the second embodiment generates a treatment group sample by changing the value of the stimulus variable of the control group sample, and compares the response variable when the control group sample is input to the NN50 with the response variable when the treatment group sample is input to the NN50. The information processing device calculates the proportion of samples whose response variable values ​​do not follow the sensitivity function as a penalty. This makes it possible to calculate a penalty related to the human psychology law regardless of the size of the learning dataset or the number of input components.

[0089] The information processing device sets a loss function based on the penalty calculated by the above process and performs machine learning using NN50 to create a model (agent model) that ensures the reproducibility of reactions under unknown situations and unknown measures.

[0090] Next, a configuration example of an information processing device according to the present embodiment 2 will be described. Fig. 11 is a functional block diagram showing the configuration of the information processing device according to the present embodiment 2. As shown in Fig. 11, the information processing device 200 has a communication unit 210, an input unit 220, a display unit 230, a storage unit 240, and a control unit 250.

[0091] The explanations regarding the communication unit 210, the input unit 220, and the display unit 230 are the same as those regarding the communication unit 210, the input unit 220, and the display unit 230 explained in the first embodiment.

[0092] The storage unit 240 has the NN 50, sensitivity function information 241, a learning dataset 242, a treatment group table 243, and an evaluation table 244. The storage unit 240 is realized by, for example, a semiconductor memory element such as a RAM or a flash memory, or a storage device such as a hard disk or an optical disk.

[0093] The explanation regarding the NN50 is the same as that regarding the NN50 explained in the first embodiment.

[0094] The explanation regarding the sensitivity function information 241 is similar to that regarding the sensitivity function 141 explained in the first embodiment.

[0095] The learning dataset 242 is information used for machine learning of the NN 50. FIG. 12 is a diagram showing an example of a data structure of the learning dataset according to the second embodiment. As shown in FIG. 12, the learning dataset 242 associates mini-batch numbers, input data, and correct labels. The explanations regarding the mini-batch numbers, input data, and correct labels are the same as those in the first embodiment. The input data of the learning dataset 242 corresponds to the above-mentioned control group sample.

[0096] The treatment group table 243 is a table that holds treatment group samples. Fig. 13 is a diagram showing an example of a data structure of the treatment group table according to the second embodiment. As shown in Fig. 13, the treatment group table 243 associates mini-batch numbers with input data. The input data of the treatment group table 243 corresponds to the above-mentioned treatment group samples.

[0097] The evaluation table 244 holds data (response variables) output from the NN 50 when a control group sample is input to the NN 50, and data (response variables) output from the NN 50 when a treatment group sample is input to the NN 50, in association with each other. Fig. 14 is a diagram showing an example of a data structure of the evaluation table according to the second embodiment. As shown in Fig. 14, the evaluation table 244 has a table 244a and a table 244b.

[0098] Table 244a associates mini-batch numbers, input data (control group samples), and output data. The explanation regarding mini-batch numbers and control group samples is the same as the explanation regarding mini-batch numbers and control group samples described above. The output data is data that is output when a control group sample is input to NN50. The output data includes multiple output values ​​(y1, y2, y3, ...). In this Example 2, of the multiple output values, y1 is the component that corresponds to the response variable.

[0099] Table 244b associates mini-batch numbers, input data (treatment group samples), and output data. The explanation regarding mini-batch numbers and treatment group samples is the same as the explanation regarding mini-batch numbers and treatment group samples described above. The output data is data that is output when a treatment group sample is input to NN50. The output data includes multiple output values ​​(y1, y2, y3, ...). In this Example 2, of the multiple output values, y1 is the component that corresponds to the response variable.

[0100] Returning to the description of Fig. 11, the control unit 250 includes a generating unit 251 and a learning execution unit 252. The control unit 250 is realized by, for example, a CPU or an MPU. The control unit 250 may also be implemented by, for example, an integrated circuit such as an ASIC or an FPGA.

[0101] The generation unit 251 acquires a control group sample in mini-batch units from the learning dataset 242, and generates a treatment group sample by changing the values ​​of the stimulus variables of the control group sample. The generation unit 251 registers the generated treatment group sample in the treatment group table 243. The process of generating the treatment group sample from the control group sample by the generation unit 251 corresponds to the process described in FIG. 9.

[0102] The generation unit 251 repeatedly executes the above process for each mini-batch stored in the learning dataset 242.

[0103] The learning execution unit 252 is a processing unit that adjusts parameters of the NN 50 by executing machine learning of the NN 50. For example, the learning execution unit 252 repeatedly executes, as machine learning, a process of calculating a learning error, a process of calculating a penalty, and a process of adjusting parameters for each mini-batch. The process of calculating a learning error, the process of calculating a penalty, and the process of adjusting parameters will be described below.

[0104] The process of calculating the learning error will be described. The learning execution unit 252 acquires a control group sample corresponding to one mini-batch of the learning dataset 242 and inputs it to the NN 50. The learning execution unit 252 calculates the learning error by calculating the error between the output data obtained by the NN 50 and the correct label corresponding to the selected mini-batch. For example, the learning execution unit 252 calculates the learning error by summing up the error between the value of each output data and the value of each correct label. The learning execution unit 152 repeatedly executes the above process for each mini-batch.

[0105] The learning execution unit 152 registers the relationship between the input data (control group samples) and the output data of each mini-batch in the evaluation table 244 (table 244a).

[0106] The process of calculating the penalty will be described. The learning execution unit 252 acquires a treatment group sample corresponding to one mini-batch from the treatment group table 243, and inputs it to the NN 50. The learning execution unit 252 registers the relationship between the input data (treatment group sample) of each mini-batch and the output data obtained by the NN 50 in the evaluation table 244 (table 244b).

[0107] The learning execution unit 252 compares the values ​​of the response variables when the control group samples are input to the NN 50 with the values ​​of the response variables when the treatment group samples are input to the NN 50 based on the evaluation table 244, evaluates whether or not the sensitivity function is followed, and calculates a penalty. The learning execution unit 252 identifies the relationship between the stimulus variable and the response variable according to the sensitivity function based on the sensitivity function information 241. The process of calculating the penalty by the learning execution unit 252 corresponds to the process described in FIG. 10. The learning execution unit 252 calculates the proportion of samples in the mini-batch that do not follow the sensitivity function as the penalty.

[0108] The process of adjusting the parameters will now be described. The learning execution unit 252 adjusts the parameters of the NN 50 so that the value of the loss function obtained by adding up the learning error calculated by the process of calculating the learning error and the penalty calculated by the process of calculating the penalty becomes smaller.

[0109] The learning execution unit 252 trains the NN 50 by repeatedly executing the above process until the value of the loss function becomes less than a predetermined value. The learning execution unit 252 outputs information on the NN 50 after the machine learning is completed. The learning execution unit 252 may transmit the NN 50 to an external device via the communication unit 210.

[0110] Next, an example of a processing procedure of the information processing device according to the second embodiment will be described. Fig. 15 is a flowchart showing the processing procedure of the information processing device according to the second embodiment. As shown in Fig. 15, the generation unit 251 of the information processing device 200 acquires a mini-batch from the learning dataset 242 (step S201). The generation unit 251 generates a treatment group sample by changing the stimulus variable of the control group sample of the acquired mini-batch, and registers it in the treatment group table 243 (step S202).

[0111] The learning execution unit 252 of the information processing device 200 inputs the control group samples of the mini-batch to the NN 50, calculates output data, and registers it in the evaluation table 244 (step S203). The learning execution unit 252 calculates the learning error (step S204).

[0112] The learning execution unit 252 inputs the treatment group sample into the NN50, calculates output data, and registers it in the evaluation table 244 (step S205). The learning execution unit 252 refers to the evaluation table 244 and calculates the penalty by the control experiment (step S206). The learning execution unit 252 adjusts the parameters of the NN50 so that the value of the loss function, which is the sum of the learning error and the penalty, becomes small (step S207).

[0113] The learning execution unit 252 determines whether the value of the loss function is less than a predetermined value (step S208). If the value of the loss function is less than the predetermined value (step S208, No), the learning execution unit 152 proceeds to step S201.

[0114] On the other hand, if the value of the loss function is not less than the predetermined value (Yes at step S208), the learning execution unit 152 outputs the NN 50 (step S209).

[0115] Next, the effect of the information processing device 200 according to the second embodiment will be described. The information processing device 200 generates a treatment group sample by changing the value of the stimulus variable of the control group sample, and compares the response variable when the control group sample is input to the NN50 with the response variable when the treatment group sample is input to the NN50. The information processing device 200 calculates the proportion of samples whose response variable values ​​do not follow the sensitivity function as a penalty. This makes it possible to calculate a penalty related to the human psychology law regardless of the size of the learning dataset or the number of input components.

[0116] The information processing device 200 may have the function of the selection unit 151 of the information processing device 100 described in the present embodiment 1. For example, in the information processing device 200, when the selection unit 151 cannot find a sample having the same inputs other than the stimulus variables in the control group sample, the generation 251 may generate a treatment group sample. EXAMPLES

[0117] In the third embodiment, an example of use of the information processing device (200) will be described. The problem situation is a problem domain in which public transportation fare settings that alleviate congestion are sought using simulation. For example, when heavy congestion occurs on an access route to a certain facility, a city manager wants to use simulation to seek fare settings (train and bus fares, highway tolls, parking fees, etc.) that disperse the means of transportation and transportation routes used.

[0118] There is research (conventional technology) that uses GPS (Global Positioning System) data to build simulations that reproduce urban dynamics and use them in the design of urban infrastructure. However, there is no data on how people will behave when transportation fares differ from reality. For this reason, conventional technology cannot reproduce how people will behave when fares are changed.

[0119] In order to apply the present invention to the above problem, the following procedures (1) to (4) are necessary. (1) Domain knowledge about the laws of human psychology is expressed as a sensitivity function. (2) Generation of treatment group samples is performed based on the shape of the sensitivity function. (3) Conduct a hypothetical control experiment and calculate the penalty. (4) Train the NN using a loss function with a penalty.

[0120] Specific processing contents of steps (1) to (4) will be described. In this embodiment 3, a case where there are two transportation modes, trains and buses, is considered.

[0121] We will explain procedure (1). There are three possible methods for designing a sensitivity function: A) common sense design, B) experiment-based design, and C) theory-based design.

[0122] A) Let us explain design based on common sense. The designers use common sense to design the change in the probability that the train will be chosen (sensitivity function) when the bus fare is fixed and the train fare is reduced. Common sense tells us that the lower the train fare is, the more the probability that the train will be chosen should monotonically increase. Therefore, a monotonically increasing sensitivity function is designed.

[0123] Fig. 16 is a diagram showing the relationship between stimuli and responses of a sensitivity function designed based on common sense. The horizontal axis of graph G10a in Fig. 16 corresponds to stimuli (amount of discount on train fare), and the vertical axis corresponds to responses (probability of choosing a train). Line L10a is a line showing the relationship between stimuli and responses of the sensitivity function.

[0124] The sensitivity function for buses is designed in the same way as for trains.

[0125] B) Explain the design based on experiments. The designer creates information on trains and buses, such as the fare, expected travel time and congestion, and asks people how they would choose their mode of transportation in that situation. By creating scenarios in which only the train fare is changed in various ways and asking multiple people to make decisions under each scenario, the change in the probability of selection in response to the discount amount for the train fare (sensitivity function) is experimentally and statistically designed.

[0126] Fig. 17 is a diagram showing the relationship between stimuli and responses of a sensitivity function designed based on an experiment. The horizontal axis of graph G10b in Fig. 17 corresponds to stimuli (discount amount of train fare), and the vertical axis corresponds to responses (probability of choosing a train). Line L10b is a line showing the relationship between stimuli and responses of the sensitivity function.

[0127] The sensitivity function for buses is designed in the same way as for trains.

[0128] C) Theory-based design will now be described. Designers design sensitivity functions according to theory. FIG. 18 is a diagram showing the relationship between stimuli and responses in a sensitivity function designed based on theory. The horizontal axis of graph G10c in FIG. 18 corresponds to stimuli (amount of discount on train fare), and the vertical axis corresponds to responses (probability of choosing a train). Line L10c is a line showing the relationship between stimuli and responses in the sensitivity function.

[0129] The procedure (2) will now be described. The generating unit 251 of the information processing device 200 selects one of the sensitivity functions designed in the procedure (1), and generates a treatment group sample based on the shape of the selected sensitivity function.

[0130] When the selected sensitivity function is continuous, the information processing device 200 generates a treatment group sample by sampling both ends and several intermediate points from within the region (domain) taken by the stimulus variable (x). The intermediate points may be random.

[0131] Fig. 19 is a diagram (1) for explaining the process of generating a treatment group sample. In the example shown in Fig. 19, a case where a treatment group sample is generated using the sensitivity function shown in the graph G10a of Fig. 16 is explained. For example, the generation unit 251 of the information processing device 200 generates treatment group samples 60B, 60C, and 60D based on the control group sample 60A and the sensitivity function (graph G10a).

[0132] The control sample 60A is a test with multiple components x1, x2, x3, ... x n ", and the component corresponding to the incentive variable (incentive) is "x1". The component "x1" of the control group sample 60A is a value corresponding to point Pa on the line L10a. The incentive variable corresponding to Pa corresponds to the actual discount area (50 yen).

[0133] The generating unit 251 generates the treatment group sample 60B by changing the value of the component "x1" of the control group sample 60A to the value "0 yen" corresponding to the point Pb on the line L10a.

[0134] The generating unit 251 generates the treatment group sample 60C by changing the value of the component "x1" of the control group sample 60A to the value "400 yen" corresponding to the point Pc on the line L10a.

[0135] The generating unit 251 generates the treatment group sample 60D by changing the value of the component "x1" of the control group sample 60A to the value "500 yen" corresponding to the point Pd on the line L10a.

[0136] When the selected sensitivity function is discontinuous, the information processing device 200 adds samples around the discontinuous points to the samples selected when the sensitivity function is continuous.

[0137] FIG. 20 is a diagram (2) for explaining the process of generating a treatment group sample. In the example shown in FIG. 20, a case where a treatment group sample is generated using the sensitivity function shown in graph G10b of FIG. 17 is explained. In FIG. 20, the control group sample and each treatment group sample are omitted. The control group sample corresponds to the control group sample 60A shown in FIG. 20.

[0138] The generating unit 251 generates a treatment group sample by changing the value of the component "x1" of the control group sample to a value corresponding to the point Pb on the line L10b. The generating unit 251 generates a treatment group sample by changing the value of the component "x1" of the control group sample to a value corresponding to the point Pc on the line L10b.

[0139] The generation unit 251 generates a treatment group sample by changing the value of the component "x1" of the control group sample to a value corresponding to point Pd on line L10b. The generation unit 251 generates a treatment group sample by changing the value of the component "x1" of the control group sample to a value corresponding to point Pe on line L10b. The generation unit 251 generates a treatment group sample by changing the value of the component "x1" of the control group sample to a value corresponding to point Pf on line L10b.

[0140] The procedure (3) will be described. The learning execution unit 252 of the information processing device 200 performs a virtual control experiment based on the statistical group sample described in the procedure (2) and a plurality of treatment group samples, and calculates a penalty. For example, the case where the learning execution unit 252 calculates a penalty using the control group sample 60A and the treatment group samples 60B to 60D described in FIG. 19 will be described.

[0141] The learning execution unit 252 calculates a penalty based on the control group sample 60A and the treatment group sample 60B. The process of calculating the penalty based on the control group sample 60A and the treatment group sample 60B is the same as the process described in FIG. 10 etc. of the second embodiment. The same applies below.

[0142] The learning execution unit 252 calculates a penalty based on the control group sample 60A and the treatment group sample 60C. The learning execution unit 252 calculates a penalty based on the control group sample 60A and the treatment group sample 60D.

[0143] The procedure (4) will be described. The learning execution unit 252 sets the average value of the penalties calculated for each pair as the penalty term of the loss function, trains the NN50, and adjusts the parameters so that the value of the loss function becomes small. Here, the case where the average value of the penalties is used has been described, but other basic statistics such as the median may be used.

[0144] By carrying out steps (1) to (4) as described above, it is possible to evaluate the effects of unknown policies not available in the data, such as changing the fares of public transportation. In addition, it is possible to use simulations to determine the fares to set for transportation services that will alleviate congestion.

[0145] Next, an example of a hardware configuration of a computer that realizes the same functions as the information processing devices 100 and 200 shown in the above embodiments will be described. Fig. 21 is a diagram showing an example of a hardware configuration of a computer that realizes the same functions as the information processing devices of the embodiment.

[0146] 21, computer 300 has CPU 301 for executing various arithmetic processes, input device 302 for receiving data input from a user, and display 303. Computer 300 also has communication device 304 for transmitting and receiving data to and from external devices etc. via a wired or wireless network, and interface device 305. Computer 300 also has RAM 306 for temporarily storing various information, and hard disk device 307. Each of devices 301 to 307 is connected to bus 308.

[0147] The hard disk device 307 includes a selection program 307a, a generation program 307b, and a learning execution program 307c. The CPU 201 reads out each of the programs 307a to 307c and loads them in the RAM 306.

[0148] The selection program 307a functions as the selection process 306a. The generation program 307b functions as the generation process 306b. The learning execution program 307c functions as the learning execution process 306c.

[0149] The processing of the selection process 306a corresponds to the processing of the selection unit 151. The processing of the generation process 306b corresponds to the processing of the generation unit 251. The processing of the learning execution process 306c corresponds to the processing of the learning execution units 152 and 252.

[0150] It is not necessary that each of the programs 307a to 307c is stored in the hard disk device 207 from the beginning. For example, each of the programs may be stored in a "portable physical medium" such as a flexible disk (FD), CD-ROM, DVD, magneto-optical disk, or IC card that is inserted into the computer 300. Then, the computer 300 may read and execute each of the programs 307a to 307c.

[0151] The following supplementary notes are further disclosed regarding the embodiments including the above examples.

[0152] (Appendix 1) Select samples from the dataset that have identical values ​​except for the stimulus variables related to the input to the agent, inputting the data set into a neural network to calculate an output result of the data set; calculating a penalty based on whether or not a value corresponding to the pair of samples identified by the selecting process among the output results complies with a sensitivity function; The parameters of the neural network are adjusted until the learning error based on the output result and the penalty satisfy a predetermined condition. An agent model construction program that causes a computer to execute a process.

[0153] (Appendix 2) The agent model construction program according to appendix 1, further comprising a computer executing a process of generating a treatment group dataset by changing a stimulus variable of the dataset, inputting the treatment group dataset into the neural network to calculate an output result of the treatment group dataset, comparing the output result of the dataset with the output result of the treatment group dataset for each pair of samples to evaluate whether or not they follow a sensitivity function, and calculating a penalty based on the evaluation result.

[0154] (Supplementary Note 3) The agent model construction program according to Supplementary Note 1 or 2, characterized in that the adjusting process adjusts parameters of the neural network so that a value of an objective function obtained by adding the learning error and the penalty becomes small.

[0155] (Supplementary Note 4) The agent model construction program according to Supplementary Note 1, 2 or 3, characterized in that the process of calculating the penalty judges whether or not each value corresponding to a pair of samples conforms to a sensitivity function, and calculates, as the penalty, a ratio of samples that do not conform to the sensitivity function to all samples.

[0156] (Appendix 5) Select samples from the dataset that have identical values ​​except for the stimulus variables related to the input to the agent, inputting the data set into a neural network to calculate an output result of the data set; calculating a penalty based on whether or not a value corresponding to the pair of samples identified by the selecting process among the output results complies with a sensitivity function; The parameters of the neural network are adjusted until the learning error based on the output result and the penalty satisfy a predetermined condition. An agent model construction method, characterized in that processing is executed by a computer.

[0157] (Appendix 6) The agent model construction method according to appendix 5, characterized in that the computer further executes the process of generating a treatment group dataset by changing a stimulus variable of the dataset, inputting the treatment group dataset into the neural network to calculate an output result of the treatment group dataset, comparing the output result of the dataset with the output result of the treatment group dataset for each pair of samples to evaluate whether or not they follow a sensitivity function, and calculating a penalty based on the evaluation result.

[0158] (Supplementary Note 7) The agent model construction method according to Supplementary Note 5 or 6, characterized in that the adjustment process adjusts parameters of the neural network so that a value of an objective function obtained by adding the learning error and the penalty becomes small.

[0159] (Supplementary Note 8) The agent model construction method according to Supplementary Note 5, 6 or 7, characterized in that the process of calculating the penalty judges whether or not each value corresponding to a pair of samples follows a sensitivity function, and calculates the ratio of samples that do not follow the sensitivity function to all samples as the penalty.

[0160] (Appendix 9) A selection unit that selects samples from the dataset that have identical values ​​other than the stimulus variables related to the input to the agent; a learning execution unit that calculates an output result of the data set by inputting the data set into a neural network, calculates a penalty based on whether or not a value corresponding to a pair of samples specified by the selecting process among the output results complies with a sensitivity function, and adjusts parameters of the neural network until a learning error based on the output result and the penalty satisfy a predetermined condition; 13. An information processing device comprising:

[0161] (Appendix 10) The information processing device according to appendix 9, further comprising a generation unit that generates a treatment group dataset in which a stimulus variable of the dataset is changed, wherein the learning execution unit further executes a process of calculating an output result of the treatment group dataset by inputting the treatment group dataset into the neural network, comparing the output result of the dataset with the output result of the treatment group dataset for each pair of samples to evaluate whether or not they follow a sensitivity function, and calculating a penalty based on the evaluation result.

[0162] (Supplementary Note 11) The information processing device according to Supplementary Note 9 or 10, characterized in that the learning execution unit adjusts parameters of the neural network so that the value of an objective function obtained by adding the learning error and the penalty becomes smaller.

[0163] (Supplementary Note 12) The information processing device according to Supplementary Note 9, 10 or 11, characterized in that the learning execution unit determines whether or not each value corresponding to a pair of samples conforms to a sensitivity function, and calculates the proportion of samples that do not conform to the sensitivity function to all samples as the penalty. [Explanation of symbols]

[0164] 50 NN 100,200 Information processing equipment 110,210 Communications Department 120,220 Input section 130,230 Display section 140,240 storage section 141,241 Sensitivity Function Information 142,242 training data set 143,244 Rating Table 243 Treatment Group Table 150,250 Control section 151 Selection section 152,252 Learning Execution Department 251 Generation part

Claims

1. Select samples from the dataset that have identical values ​​except for the stimulus variables related to the input to the agent, inputting the data set into a neural network to calculate an output result of the data set; calculating a penalty based on whether or not a value corresponding to the pair of samples identified by the selecting process among the output results complies with a sensitivity function; The parameters of the neural network are adjusted until the learning error based on the output result and the penalty satisfy a predetermined condition. An agent model construction program that causes a computer to execute a process.

2. 2. The agent model construction program according to claim 1, further comprising a process of generating a treatment group dataset by changing a stimulus variable of the dataset, inputting the treatment group dataset into the neural network to calculate an output result of the treatment group dataset, comparing the output result of the dataset with the output result of the treatment group dataset for each pair of samples to evaluate whether or not they follow a sensitivity function, and calculating a penalty based on the evaluation result.

3. 3. The agent model construction program according to claim 1, wherein the adjustment process adjusts parameters of the neural network so that a value of an objective function obtained by adding the learning error and the penalty becomes small.

4. 4. The agent model construction program according to claim 1, 2 or 3, characterized in that the process of calculating the penalty determines whether or not each value corresponding to a pair of samples conforms to a sensitivity function, and calculates, as the penalty, a ratio of samples that do not conform to the sensitivity function to all samples.

5. Select samples from the dataset that have identical values ​​except for the stimulus variables related to the input to the agent, inputting the data set into a neural network to calculate an output result of the data set; calculating a penalty based on whether or not a value corresponding to the pair of samples identified by the selecting process among the output results complies with a sensitivity function; The parameters of the neural network are adjusted until the learning error based on the output result and the penalty satisfy a predetermined condition. An agent model construction method, characterized in that processing is executed by a computer.

6. a selection unit for selecting samples from the dataset that have identical values ​​other than the stimulus variables related to the input to the agent; a learning execution unit that calculates an output result of the data set by inputting the data set into a neural network, calculates a penalty based on whether or not a value corresponding to a pair of samples specified by the selecting process among the output results complies with a sensitivity function, and adjusts parameters of the neural network until a learning error based on the output result and the penalty satisfy a predetermined condition; 13. An information processing device comprising:

Citation Information

Patent Citations

  • User action predicting method and action mode selector

    JP2001134706A

  • Training inductive logic programming enhanced deep belief network models for discrete optimization

    US20180157977A1

  • Behavior learning system, behavior learning method, and program

    WO2021005739A1