Information processing device, information processing method, and program
The survival analysis device uses a latent expression calculation unit and monotonically increasing neural network to overcome data scarcity and assumption-based challenges, enabling precise hazard and survival function calculations for one-time events.
Patent Information
- Application Number
- JP2024520123
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-05-10
- Publication Date
- 2025-10-15
- Estimated Expiration
- 2042-05-10
Smart Images

Figure 0007754297000011 
Figure 0007754297000012 
Figure 0007754297000013
Abstract
Description
[Technical Field]
[0001] The embodiments relate to an information processing device, an information processing method, and a program. [Background technology]
[0002] Predicting the occurrence of events such as equipment failures, human behavior, crimes, earthquakes, and infectious diseases is becoming increasingly important in a variety of applications.
[0003] Among such events, there are some that occur only once (including cases where they are not expected because the data changes significantly after the first occurrence). Examples of such events include death, accidents, marriage, and recurrence of illness. Survival analysis is often used to predict such events.
[0004] Prediction using survival analysis is usually performed using the following procedure. 1. Train (or manually design) a model using data where an event has occurred and data where an event has not occurred. 2. Using the model, a hazard function that indicates the likelihood of an event occurring and / or a survival function that indicates the probability that an event will occur over a certain period of time is calculated for the data that you actually want to predict.
[0005] However, such a procedure presents several challenges.
[0006] The first problem is that there is not always enough data on the occurrence of the event you want to predict.
[0007] The second issue is that the model is based on strong assumptions, such as the COX proportional hazards model. The COX proportional hazards model determines the relative likelihood of an event occurring, but not the absolute time. Furthermore, when discretizing time, it is difficult to estimate time more accurately than the discretized granularity.
[0008] The third issue is that if assumptions such as the COX proportional hazards model are not made, the likelihood contains an integral, making optimization difficult or requiring approximation.
[0009] To address this issue, Non-Patent Documents 1 and 2 have been proposed. [Prior art documents] [Non-patent literature]
[0010] [Non-Patent Document 1] Yeping Lina Qiu, et al., “A meta-learning approach for genomic survival analysis”, NATURE COMMUNICATIONS | (2020) 11:6350 | https: / / doi.org / 10.1038 / s41467-020-20167-3 | www.nature.com / naturecommunications [Non-patent document 2] Shi Hu, et al., “Transformer-Based Deep Survival Analysis”, AAAI Spring Symposium 2021 (SP-ACA) Summary of the Invention [Problem to be solved by the invention]
[0011] Non-Patent Document 1 discloses a method based on the COX proportional hazards model. The method of Non-Patent Document 1 solves the first problem by performing meta-learning using MAML (Model-Agnostic Meta-Learning), and avoids the third problem by using the COX proportional hazards model. However, the method of Non-Patent Document 1 cannot solve the second problem because it uses the COX proportional hazards model.
[0012] Furthermore, Non-Patent Document 2 discloses a method for discretizing time. The method of Non-Patent Document 2 avoids the third problem by discretization. However, the method of Non-Patent Document 2 leaves the first problem unresolved, and the second problem cannot be solved because of the discretization.
[0013] As described above, while the conventional techniques can solve or avoid the first or third problem, they cannot solve the second problem.
[0014] The present invention has been made in light of the above circumstances, and an object of the present invention is to provide a means that enables calculation of at least one of a hazard function and a survival function without any assumptions. [Means for solving the problem]
[0015] An information processing device according to one aspect includes a latent expression calculation unit, a monotonically increasing neural network, and a function estimation unit. The latent expression calculation unit calculates a latent expression representing a feature quantity from processing target data including a feature quantity related to a prediction target event. The monotonically increasing neural network estimates a latent expression according to a monotonically increasing function defined by the latent expression calculated by the latent expression calculation unit and time. Different from the cumulative hazard function The monotonically increasing neural network is modeled to output a scalar value. The function estimation unit estimates at least one of a hazard function and a survival function based on the scalar value output from the monotonically increasing neural network. [Effects of the Invention]
[0016] According to an embodiment, it is possible to provide a means that allows calculation of at least one of a hazard function and a survival function without any assumptions. [Brief explanation of the drawings]
[0017] [Figure 1] FIG. 1 is a block diagram showing an example of the hardware configuration of a survival analysis device as an information processing device according to the first embodiment. [Figure 2] FIG. 2 is a block diagram showing an example of the configuration of a learning function of a survival analysis device serving as an information processing device according to the first embodiment. [Figure 3] FIG. 3 is a block diagram showing an example of the configuration of the prediction function of the survival analysis device serving as the information processing device according to the first embodiment. [Figure 4A] FIG. 4A is a flowchart showing an example of a learning operation in the survival analysis device serving as the information processing device according to the first embodiment. [Figure 4B] FIG. 4B is a flowchart showing an example of a learning operation in the survival analysis device serving as the information processing device according to the first embodiment. [Figure 5] FIG. 5 is a flowchart showing an example of a prediction operation in the survival analysis device serving as the information processing device according to the first embodiment. [Figure 6] FIG. 6 is a block diagram showing an example of the configuration of a learning function of a survival analysis device serving as an information processing device according to the second embodiment. [Figure 7] FIG. 7 is a block diagram showing an example of the configuration of the prediction function of a survival analysis device serving as an information processing device according to the second embodiment. [Figure 8A] FIG. 8A is a flowchart showing an example of a learning operation in the survival analysis device serving as the information processing device according to the second embodiment. [Figure 8B] FIG. 8B is a flowchart showing an example of a learning operation in the survival analysis device serving as the information processing device according to the second embodiment. [Figure 9] FIG. 9 is a flowchart showing an example of a prediction operation in the survival analysis device serving as an information processing device according to the second embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0018] Hereinafter, several embodiments will be described with reference to the drawings. In the following description, components having the same functions and configurations will be given the same reference numerals.
[0019] 1. First embodiment An information processing device according to the first embodiment will be described below. A survival analysis device will be described below as an example of the information processing device according to the first embodiment.
[0020] The survival analysis device has a learning function and a prediction function. The learning function is a function that performs meta-learning of model parameters using data in which an event has occurred and data in which an event has not occurred. The prediction function is a function that calculates a hazard function, cumulative hazard function, and survival function for the data to be actually predicted, based on the model parameters learned by the learning function.
[0021] 1.1 Configuration The configuration of a survival analysis device as an information processing device according to the first embodiment will be described.
[0022] 1.1.1 Hardware Configuration 1 is a block diagram showing an example of the hardware configuration of a survival analysis device 1 as an information processing device according to the first embodiment. As shown in FIG. 1, the survival analysis device 1 includes a control circuit 10, a memory 11, a communication module 12, a user interface 13, and a drive 14.
[0023] The control circuit 10 is a circuit that controls all of the components of the survival analysis device 1. The control circuit 10 includes a central processing unit (CPU), random access memory (RAM), and read-only memory (ROM). The CPU can execute multiple information processes simultaneously by using a multi-core and multi-threaded CPU. The control circuit 10 may also include multiple CPUs. The control circuit 10 may also include integrated circuits such as an application specific integrated circuit (ASIC), a digital signal processor (DSP), a field-programmable gate array (FPGA), and a graphics processing unit (GPU) instead of or in addition to a CPU.
[0024] The memory 11 is a storage device of the survival analysis device 1. The memory 11 includes, for example, a hard disk drive (HDD), a solid state drive (SSD), and a memory card. The memory 11 stores information used for the learning operation and prediction operation of the survival analysis device 1. The memory 11 also stores a learning program for causing the control circuit 10 to execute the learning operation and a prediction program for causing the control circuit 10 to execute the prediction operation.
[0025] The communication module 12 is a circuit used for transmitting and receiving data to and from the outside of the survival analysis device 1 via a network (not shown).
[0026] The user interface 13 is a circuit for communicating information between a user and the control circuit 10. The user interface 13 includes input devices and output devices. The input devices include, for example, a touch panel and operation buttons. The output devices include, for example, an LCD (Liquid Crystal Display) or EL (Electroluminescence) display, and a printer. The user interface 13 outputs, for example, the execution results of various programs received from the control circuit 10 to the user.
[0027] The drive 14 is a device for reading a program stored in a storage medium 15. The drive 14 includes, for example, a CD (Compact Disk) drive, a DVD (Digital Versatile Disk) drive, and the like.
[0028] The storage medium 15 is a medium that stores information such as programs by electrical, magnetic, optical, mechanical, or chemical action. The storage medium 15 may store a learning program and a prediction program.
[0029] 1.1.2 Learning function configuration FIG. 2 is a block diagram showing an example of the configuration of the learning function of the survival analysis device 1 as the information processing device according to the first embodiment.
[0030] The CPU of the control circuit 10 loads the learning program stored in the memory 11 or the storage medium 15 into the RAM. The CPU of the control circuit 10 then interprets and executes the learning program loaded into the RAM, thereby controlling the memory 11, the communication module 12, the user interface 13, the drive 14, and the storage medium 15. As a result, as shown in FIG. 2 , the survival analysis device 1 functions as a computer including a data division unit 21, an initialization unit 22, latent expression calculation units 23 and 24, function estimation units 25 and 26, update units 27 and 28, and determination units 29 and 30. The memory 11 of the survival analysis device 1 also functions as a learning dataset storage unit 20 and a learned parameter storage unit 31 for storing information used in the learning operation.
[0031] The learning dataset storage unit 20 stores a dataset (hereinafter referred to as a learning dataset) D according to an event to be predicted. k The events to be predicted are, for example, machine breakdowns, traffic accidents, life events such as marriage, etc. The learning dataset D k is information including d survival time data X for each of k tasks as follows:
[0032]
number
[0033] Here, k is the task ID and d is the data ID. k is the data set of task k, and K is the task set.
[0034] Furthermore, the survival time data X includes a feature amount x, an indicator variable δ, and a time e. The indicator variable δ takes a value of 1 or 0. δ = 1 indicates an event occurrence, and δ = 0 indicates truncation. In the case of truncation, the survival time data X contains only the feature x up to the time before the event occurrence.
[0035] The meaning of time e is determined by the value of the indicator variable δ. That is, when δ=1, time e indicates the time when an event occurs, and when δ=0, time e indicates the termination time.
[0036] The feature x can be any information that can be used for the event to be predicted. For example, the feature x can be handled by the same differentiable model for all tasks. Examples of differentiable models include CNN (Convolutional Neural Network), RNN (Recurrent Neural Network), and Perceiver. Perceiver is disclosed, for example, in Andrew Jaegle, et al., “Perceiver: General Perception with Iterative Attention”, arXiv:2103.03206v2 [cs.CV] 23 Jun 2021.
[0037] In this embodiment, the events to be predicted are, for example, life events, traffic accidents, equipment failures, etc., which occur at most once to humans (including cases where such events are not anticipated because data changes significantly after the first occurrence).
[0038] The feature x may be static or time-series. For example, in the case of life events, the static feature x is attribute information indicating the person's attributes, such as gender and age, and the time-series feature x is information such as financial income and expenditure, location history, and SNS posting history. Learning dataset D for life events k Task k in the above is an event such as marriage, childbirth, moving, continuing education, getting a job, etc. Examples of feature x and events for task k are written as task k: (feature, event), for example, task 1: (financial income and expenditure, marriage), task 2: (location history + SNS posting history, childbirth), task 3: (expense history, moving), etc. The data ID d is assigned to each person.
[0039] For example, if the event to be predicted is a traffic accident, the static feature x is attribute information indicating the driver's attributes, and the time-series feature x is information such as the history of sensing data from various sensors, video footage from a drive recorder, etc. k Task k in this case is a traffic accident by country or region, by vehicle type (private car, truck, taxi, bus, etc.), etc. The data ID d is assigned to each driving.
[0040] The events to be predicted, the feature value x for each event, and the training dataset D k The above is just one example. For example, if the event to be predicted is a device failure, the feature x in that case could be information such as the model, log data, temperature, humidity, etc. Needless to say, the above example is not limiting.
[0041] The data division unit 21 randomly selects a task k and divides it into training datasets D stored in the training dataset storage unit 20. k The dataset for task k from
[0042]
number
[0043] Hereinafter, this is referred to as the training dataset. The data division unit 21 randomly divides the extracted training dataset to obtain a support set SS and a query set QS. The data division unit 21 transmits the support set SS to the latent expression calculation unit 23 and transmits the query set QS to the latent expression calculation unit 24.
[0044] The initialization unit 22 initializes a parameter set θ based on a predetermined arbitrary rule R. The parameter set θ includes a plurality of parameters p1 and a plurality of parameters p2. The initialization unit 22 transmits the initialized plurality of parameters p1 to the latent expression calculation unit 23. The initialization unit 22 transmits the initialized plurality of parameters p2 to the function estimation unit 25. Furthermore, the initialization unit 22 transmits the initialized parameter set θ (the plurality of parameters p1 and p2) to the update unit 28. The plurality of parameters p1 and p2 will be described later.
[0045] Based on the support set SS, the latent expression calculation unit 23 calculates a latent expression z for the feature x of each piece of data X in the support set SS. The latent expression z is data that represents the characteristics of the feature x in the dataset. The latent expression calculation unit 23 transmits the calculated latent expression z to the function estimation unit 25.
[0046] Specifically, the latent expression calculation unit 23 includes a feature extraction unit 231 and a model 232. The feature extraction unit 231 extracts a feature x from the support set SS. The feature extraction unit 231 transmits the feature x to the model 232. The model 232 is any differentiable model that can handle the feature x. That is, the model 232 is a mathematical model that receives the feature x as input and outputs a latent expression z. The model 232 may be, for example, a CNN, an RNN, a Perceiver, or the like. A parameter θ (plurality of parameters p1) is applied to the model 232 as a weight and bias term. The model 232 to which the plurality of parameters p1 are applied receives the feature x as input and outputs a latent expression z. The model 232 transmits the output latent expression z to the function estimation unit 25.
[0047] The function estimation unit 25 calculates a hazard function h(t,z) based on the latent expression z and the predicted time t. The hazard function h(t,z) is a function of time that represents the likelihood of an event to be predicted occurring for the data to be predicted. The function estimation unit 25 transmits the calculated hazard function h(t,z) to the update unit 27.
[0048] Specifically, the function estimation unit 25 includes a monotonically increasing neural network 251 , a cumulative hazard function calculation unit 252 , and an automatic differentiation unit 253 .
[0049] The monotonically increasing neural network 251 is a mathematical model that calculates a monotonically increasing function defined by the latent representation z and time t as an output. Examples of the monotonically increasing neural network 251 include those disclosed in Antoine Wehenkel, et al., “Unconstrained Monotonic Neural Networks,” arXiv:1908.05164v3 [cs.LG], March 31, 2021, and those with an activation function whose derivative is positive (e.g., tanh) and non-negative weight constraints. Multiple weights and bias terms based on parameter θ (multiple parameters p2) are applied to the monotonically increasing neural network 251. The monotonically increasing neural network 251 to which multiple parameters p2 are applied calculates the output f(t,z) as a scalar value according to the monotonically increasing function defined by the latent representation z and time t. The monotonically increasing neural network 251 transmits the output f(t,z) to the cumulative hazard function calculation unit 252.
[0050] The cumulative hazard function calculation unit 252 calculates the cumulative hazard function H(t,z) based on the output f(t,z) in accordance with the following equation.
[0051]
number
[0052] Here, s is a scale parameter used to compensate for the lack of expressive power of a monotonically increasing neural network. The scale parameter s can be determined by estimating it simultaneously with the neural network parameters, or by determining it as a constant from training data, etc. In the latter determination method, for example, it is determined from the upper limit of t taken into account in H(t) = -logS(t). Note that S(t) is a survival function, and represents the probability that the survival time will be t or more. The cumulative hazard function calculation unit 252 transmits the calculated cumulative hazard function H(t,z) to the automatic differentiation unit 253 and the update unit 27.
[0053] The automatic differentiation unit 253 calculates the hazard function h(t,z) by automatically differentiating the cumulative hazard function H(t,z). The automatic differentiation unit 253 transmits the calculated hazard function h(t,z) to the update unit 27. The hazard function h(t,z) is expressed as the derivative of the cumulative hazard function H(t,z) as follows:
[0054]
number
[0055] The update unit 27 calculates an updated parameter set θ (plurality of parameters p1 and p2) based on the cumulative hazard function H(t, z) and the hazard function h(t, z). The updated parameter set is referred to as an updated parameter set θ'(p1', p2'). The update unit 27 transmits the updated parameter set θ' (plurality of parameters p1' and p2') to the determination unit 29.
[0056] Specifically, the update unit 27 includes an evaluation function estimation unit 271 and an optimization unit 272 . The evaluation function estimation unit 271 calculates the evaluation function L(SS) based on the cumulative hazard function H(t,z) and the hazard function h(t,z). The evaluation function L(SS) is, for example, the following negative log-likelihood:
[0057]
number
[0058] The evaluation function estimation unit 271 transmits the calculated evaluation function L(SS) to the optimization unit 272.
[0059] The optimization unit 272 optimizes the parameter set θ, i.e., the multiple parameters p1 and p2, based on the evaluation function L(SS). For example, the backpropagation algorithm is used for the optimization. The optimization unit 272 transmits this optimized parameter set θ (the multiple parameters p1 and p2) to the determination unit 29 as an updated parameter set θ' (the multiple parameters p1' and p2').
[0060] The determination unit 29 determines whether or not a first condition is satisfied based on the updated parameter set θ' (the plurality of parameters p1' and p2'). The first condition may be, for example, that the number of times the updated parameter set θ' has been transmitted to the determination unit 29 (i.e., the number of parameter update loops) is equal to or greater than a threshold. The first condition may be, for example, that the amount of change in the value of the updated parameter set θ' before and after update is equal to or less than a threshold.
[0061] If the first condition is not satisfied, the determination unit 29 applies the updated parameter set θ' (plurality of parameters p1' and p2') to the model 232 and the monotonically increasing neural network 251, and causes the latent expression calculation unit 23, the function estimation unit 25, and the update unit 27 to perform parameter update operations based on this updated parameter set θ'. In other words, if the condition is not satisfied, the determination unit 29 causes the latent expression calculation unit 23, the function estimation unit 25, and the update unit 27 to repeatedly execute a parameter update loop.
[0062] Furthermore, if the first condition is satisfied, the determination unit 29 ends the parameter update loop and transmits the last updated updated parameter set θ′ (plurality of parameters p1′ and p2′) to the latent expression calculation unit 24 and the function estimation unit 26. In other words, the determination unit 29 initializes the parameters applied to the latent expression calculation unit 24 and the function estimation unit 26 to this updated parameter set θ′ (plurality of parameters p1′ and p2′).
[0063] The latent expression calculation unit 24 calculates a latent expression z for the feature quantity x of each data X in the query set QS based on the query set QS. The latent expression calculation unit 24 transmits the calculated latent expression z to the function estimation unit 26.
[0064] Specifically, the latent expression calculation unit 24 has a configuration corresponding to the latent expression calculation unit 23. That is, the latent expression calculation unit 24 includes a feature extraction unit 241 and a model 242. The feature extraction unit 241 extracts a feature x from the query set QS. The feature extraction unit 241 transmits the feature x to the model 242. The model 242 is any differentiable model that can handle the feature x. Updated multiple parameters p1' are applied to the model 242 as weights and bias terms. The model 242 to which the multiple parameters p1' have been applied receives the feature x as input and outputs the latent expression z. The model 242 transmits the output latent expression z to the function estimation unit 26.
[0065] The function estimation unit 26 calculates the hazard function h(t, z) based on the latent expression z and the predicted time t, similar to the function estimation unit 25. The function estimation unit 26 transmits the calculated hazard function h(t, z) to the update unit 27.
[0066] Specifically, like the function estimation unit 25, the function estimation unit 26 includes a monotonically increasing neural network 261, a cumulative hazard function calculation unit 262, and an automatic differentiation unit 263.
[0067] The monotonically increasing neural network 261 is a mathematical model similar to the monotonically increasing neural network 251. A plurality of weights and bias terms based on the plurality of updated parameters p2' are applied to the monotonically increasing neural network 261. The monotonically increasing neural network 261 to which the plurality of parameters p2' are applied calculates an output f(t,z) as a scalar value according to a monotonically increasing function defined by the latent representation z and time t. The monotonically increasing neural network 261 transmits the output f(t,z) to the cumulative hazard function calculation unit 262.
[0068] The cumulative hazard function calculation unit 262 is similar to the cumulative hazard function calculation unit 252, and calculates the cumulative hazard function H(t,z) based on the output f(t,z). The cumulative hazard function calculation unit 262 transmits the calculated cumulative hazard function H(t,z) to the automatic differentiation unit 263 and the update unit 28.
[0069] The automatic differentiation unit 263 is similar to the automatic differentiation unit 253, and calculates the hazard function h(t,z) by automatically differentiating the cumulative hazard function H(t,z). The automatic differentiation unit 263 transmits the calculated hazard function h(t,z) to the update unit 28.
[0070] The update unit 28 updates the parameter set θ (multiple parameters p1 and p2) from the initialization unit 22 based on the cumulative hazard function H(t,z) and the hazard function h(t,z), and transmits it to the determination unit 30.
[0071] Specifically, like the updating unit 27, the updating unit 28 includes an evaluation function estimating unit 281 and an optimizing unit 282. The evaluation function estimation unit 281 calculates the evaluation function L(QS) based on the cumulative hazard function H(t,z) and the hazard function h(t,z). The evaluation function L(QS) is, for example, the following negative log-likelihood:
[0072]
number
[0073] The evaluation function estimation unit 281 transmits the calculated evaluation function L(QS) to the optimization unit 282.
[0074] The optimization unit 282 optimizes the parameter set θ, i.e., the multiple parameters p1 and p2, based on the evaluation function L(QS). For example, backpropagation is used for the optimization. More specifically, the optimization unit 282 calculates the second derivative of the parameter set θ (multiple parameters p1 and p2) of the evaluation function L2(QS) using the parameter set θ (multiple parameters p1 and p2), and optimizes θ (multiple parameters p1 and p2). The optimization unit 282 transmits this optimized parameter set θ (multiple parameters p1 and p2) to the determination unit 30 as an updated parameter set θ (multiple parameters p1 and p2).
[0075] The determination unit 30 determines whether the second condition is satisfied based on the update parameter set θ (multiple parameters p1 and p2). The second condition may be, for example, that the number of times the update parameter set θ is transmitted to the determination unit 30 (i.e., the number of parameter update loops) is equal to or greater than a threshold. The second condition may be, for example, that the amount of change in the value of the update parameter set θ before and after the update is equal to or less than a threshold. Below, the second condition will be described using an example in which the number of times the update parameter set θ is transmitted to the determination unit 30 is two or more.
[0076] If the second condition is not satisfied, that is, if this is the first time that the updated parameter set θ has been transmitted to the determination unit 30, the determination unit 30 transmits the updated parameter set θ (plurality of parameters p1 and p2) to the optimization unit 282 and applies it to the model 232 and the monotonically increasing neural network 251. As a result, the determination unit 30 causes the latent expression calculation units 23 and 24, the function estimation units 25 and 26, the update units 27 and 28, and the determination unit 29 to perform parameter update operations based on this updated parameter set θ. In other words, if the second condition is not satisfied, the determination unit 30 causes the latent expression calculation units 23 and 24, the function estimation units 25 and 26, the update units 27 and 28, and the determination unit 29 to execute the parameter update loop again.
[0077] Furthermore, if the second condition is satisfied, that is, if the number of times the updated parameter set θ has been transmitted to the determination unit 30 is the second time, the determination unit 30 determines whether the updated parameter set θ (the plurality of parameters p1 and p2) is a learned parameter set θ. * (multiple parameters p1 * and p2 * ) and stored in the learned parameter storage unit 31 of the memory 11.
[0078] With the above-described configuration, the survival analysis device 1 can analyze the training dataset D stored in the training dataset storage unit 20. k Based on this, the learned parameter set θ * (multiple parameters p1 * and p2 * ) has the function of storing it.
[0079] 1.1.3 Prediction Function Configuration FIG. 3 is a block diagram showing an example of the configuration of the prediction function of the survival analysis device 1 as the information processing device according to the first embodiment.
[0080] The CPU of the control circuit 10 loads the prediction program stored in the memory 11 or the storage medium 15 into the RAM. The CPU of the control circuit 10 then interprets and executes the prediction program loaded into the RAM, thereby controlling the memory 11, the communication module 12, the user interface 13, the drive 14, and the storage medium 15. As a result, as shown in FIG. 3, the survival analysis apparatus 1 further functions as a computer including latent expression calculation units 32 and 33, function estimating units 34 and 35, an updating unit 36, a determining unit 37, a converting unit 38, and an output unit 39. The memory 11 of the survival analysis apparatus 1 further functions as a prediction dataset storage unit 40 and a prediction target data storage unit 41 for storing information used in the prediction operation. In FIG. 3, a plurality of parameters p1 are input from the trained parameter storage unit 31 to the model 322 and the monotonically increasing neural network 341, respectively. * and p2 * is shown when it is applied.
[0081] The prediction dataset storage unit 40 stores a dataset corresponding to the task to be predicted (hereinafter referred to as a prediction dataset).
[0082]
number
[0083] Here, k * is the training dataset D k In other words, the prediction dataset D stored in the prediction dataset storage unit 40 is the ID of a task that is not included in the task set K in k * indicates the training dataset D k This is a different dataset.
[0084] The prediction target data storage unit 41 stores data to be predicted (hereinafter referred to as prediction target data).
[0085]
number
[0086] Here, d k * denotes prediction dataset D k * in task k * Data set DS k * is the ID of the data not included in the prediction target data X stored in the prediction target data storage unit 41. * is the prediction dataset D k * and training dataset D k This data is not included in the
[0087] The latent expression calculation unit 32 calculates the prediction dataset D k *Based on the prediction dataset D k The latent expression calculation unit 32 calculates the latent expression z for the feature quantity x of each piece of data X in *. The latent expression calculation unit 32 transmits the calculated latent expression z to the function estimation unit .
[0088] Specifically, the latent expression calculation unit 32 has a configuration corresponding to that of the latent expression calculation unit 23. That is, the latent expression calculation unit 32 includes a feature extraction unit 321 and a model 322. The feature extraction unit 321 extracts a prediction dataset D k * to feature x * The feature extraction unit 321 extracts the feature x * is sent to the model 322. The model 322 then sends the feature x * The model 322 is an arbitrary differentiable model that can handle the trained parameter set θ * Multiple parameters p1 * are applied as weights and bias terms. Several parameters p1 * The model 322 to which this is applied is the feature x * is used as input, and the latent representation z * The model 322 outputs the output latent representation z * is transmitted to the function estimation unit 34.
[0089] The function estimation unit 34, like the function estimation unit 25, estimates the latent expression z *and the predicted time t, the hazard function h * (t, z). The function estimation unit 34 calculates the calculated hazard function h * (t, z) is sent to the update unit 36.
[0090] Specifically, like the function estimation unit 25, the function estimation unit 34 includes a monotonically increasing neural network 341, a cumulative hazard function calculation unit 342, and an automatic differentiation unit 343.
[0091] The monotonically increasing neural network 341 is a mathematical model similar to the monotonically increasing neural network 251. The monotonically increasing neural network 341 is configured with the learned parameters θ * Multiple parameters p2 * A number of weights and bias terms are applied based on a number of parameters p2 * The monotonically increasing neural network 341 to which * and time t, and outputs f as a scalar value according to a monotonically increasing function. * (t, z). The monotonically increasing neural network 341 calculates the output f * (t, z) is sent to the cumulative hazard function calculation unit 342.
[0092] The cumulative hazard function calculation unit 342 is similar to the cumulative hazard function calculation unit 252 and outputs f * Based on (t,z), the cumulative hazard function H * (t, z). The cumulative hazard function calculation unit 342 calculates the cumulative hazard function H * (t, z) is sent to the automatic differentiation unit 343 and the update unit 36.
[0093] The automatic differentiation unit 343 is similar to the automatic differentiation unit 253 and calculates the cumulative hazard function H * By automatically differentiating (t,z), the hazard function h * (t, z). The automatic differentiation unit 343 calculates the calculated hazard function h * (t, z) is sent to the update unit 36.
[0094] The update unit 36 is similar to the update unit 27 and updates the cumulative hazard function H * (t,z) and the hazard function h * Based on (t,z), update parameter set θ * '(multiple parameters p1 * ' and p2 * The update unit 36 calculates the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') to the determination unit 37.
[0095] Specifically, like the updating unit 27, the updating unit 36 includes an evaluation function estimating unit 361 and an optimizing unit 362. The evaluation function estimation unit 361 calculates the cumulative hazard function H * (t,z) and the hazard function h * Based on (t,z), the evaluation function L * (D) is calculated. Evaluation function L * (D) is the negative log-likelihood, e.g.,
[0096]
number
[0097] The evaluation function estimation unit 361 estimates the calculated evaluation function L * (D) is sent to the optimization unit 362.
[0098] The optimization unit 362 calculates the evaluation function L * Based on (D), the parameter set θ * That is, multiple parameters p1 * and p2 * For the optimization, the backpropagation algorithm, for example, is used, as in the optimization unit 272. The optimization unit 362 optimizes the optimized parameter set θ * (multiple parameters p1 * and p2 * ) as the updated parameter set θ *'(multiple parameters p1 * ' and p2 * ') and transmits it to the determination unit 37.
[0099] The determination unit 37, like the determination unit 29, determines the updated parameter set θ * '(multiple parameters p1 * ' and p2 * If the first condition is not satisfied, the determining unit 37 determines whether the first condition is satisfied based on the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') is applied to the model 322 and the monotonically increasing neural network 341, and the updated parameter set θ * In other words, if the first condition is not satisfied, the determination unit 37 causes the latent expression calculation unit 32, the function estimation unit 34, and the update unit 36 to repeatedly execute a parameter update loop. If the first condition is satisfied, the determination unit 37 ends the parameter update loop and finally updates the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') is transmitted to the latent expression calculation unit 33 and the function estimation unit 35. In other words, the determination unit 37 determines the parameters to be applied to the latent expression calculation unit 33 and the function estimation unit 35 based on this updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') to initialize it.
[0100] The latent expression calculation unit 33 calculates the prediction target data X input by the user via the user interface 13 and stored in the prediction target data storage unit 41. k The latent expression calculation unit 33 calculates the latent expression z based on *. The latent expression calculation unit 33 transmits the calculated latent expression z to the function estimation unit .
[0101] Specifically, the latent expression calculation unit 33 has a configuration corresponding to that of the latent expression calculation unit 23. That is, the latent expression calculation unit 33 includes a feature extraction unit 331 and a model 332. The feature extraction unit 331 extracts the prediction target data X k * to feature x * The feature extraction unit 331 extracts the feature x * is sent to the model 332. The model 332 then receives the feature x * The model 332 is an arbitrary differentiable model that can handle multiple updated parameters p1 * ' is applied as a weight and bias term. Several parameters p1 * The model 332 to which ' is applied uses the feature x * is used as input, and the latent representation z * The model 332 outputs the output latent representation z * is transmitted to the function estimation unit 35.
[0102] The function estimation unit 35, like the function estimation unit 25, estimates the latent expression z * and the predicted time t, the hazard function h * (t, z). The function estimation unit 35 calculates the calculated hazard function h * (t, z) is sent to the output unit 39.
[0103] Specifically, like the function estimation unit 25, the function estimation unit 35 includes a monotonically increasing neural network 351, a cumulative hazard function calculation unit 352, and an automatic differentiation unit 353.
[0104] The monotonically increasing neural network 351 is a mathematical model similar to the monotonically increasing neural network 251. The monotonically increasing neural network 351 includes a plurality of updated parameters p2 * ' are applied. * The monotonically increasing neural network 351 to which ' is applied generates the latent representation z * and time t, and outputs f as a scalar value according to a monotonically increasing function. *(t, z). The monotonically increasing neural network 351 calculates the output f * (t, z) is sent to the cumulative hazard function calculation unit 352.
[0105] The cumulative hazard function calculation unit 352 is similar to the cumulative hazard function calculation unit 252, and outputs f * Based on (t,z), the cumulative hazard function H * (t, z). The cumulative hazard function calculation unit 352 calculates the calculated cumulative hazard function H * (t, z) is sent to the automatic differentiation unit 353, the conversion unit 38 and the output unit 39.
[0106] The automatic differentiation unit 353 is similar to the automatic differentiation unit 253 and calculates the cumulative hazard function H * By automatically differentiating (t,z), the hazard function h * (t, z). The automatic differentiation unit 353 calculates the calculated hazard function h * (t, z) is sent to the output unit 39.
[0107] The conversion unit 38 converts the cumulative hazard function H * (t,z) is the survival function S * (t, z). The conversion unit 38 converts the converted survival function S * (t, z) is sent to the output unit 39.
[0108] The output unit 39 outputs the hazard function h * (t,z) is the hazard function h * (t|x), and the survival function S transmitted from the conversion unit 38 * (t,z) is the survival function S * (t|x) to the user. Furthermore, the output unit 39 outputs the cumulative hazard function H * (t,z) is the cumulative hazard function H * (t|x) and output it to the user.
[0109] With the above-described configuration, the survival analysis device 1 can analyze the prediction dataset D stored in the prediction dataset storage unit 40. k *, the prediction target data X stored in the prediction target data storage unit 41 k *Hazard function h * (t|x) and the survival function S * (t|x) (and the cumulative hazard function H * It has the function to calculate (t|x)).
[0110] 1.2. Operation Next, the operation of the survival analysis device 1 as the information processing device according to the first embodiment will be described.
[0111] 1.2.1 Learning behavior 4A and 4B are a series of flowcharts showing an example of the learning operation in the survival analysis device 1 as the information processing device according to the first embodiment. In the example of FIGS. 4A and 4B, a learning dataset D is stored in advance in the learning dataset storage unit 20 in the memory 11. k is assumed to be stored.
[0112] 4A, in response to a user's instruction to start a learning operation (start), the initialization unit 22 initializes a parameter set θ (plurality of parameters p1 and p2) based on an arbitrary rule R (step S10). For example, the initialization unit 22 initializes the plural parameters p1 and p2 based on an arbitrary rule R. The plural parameters p1 and p2 initialized by the processing of step S10 are applied to the model 232 and the monotonically increasing neural network 251, respectively. Furthermore, this initialized parameter set θ (plurality of parameters p1 and p2) is transmitted to the optimization unit 282.
[0113] The data division unit 21 divides the training data set D stored in the training data set storage unit 20. k A training dataset for task k is randomly extracted from the training dataset. Subsequently, the data dividing unit 21 further extracts a support set SS and a query set QS from the extracted training dataset (step S11).
[0114] The feature extraction unit 231 extracts feature values x of each data X in the support set SS extracted in the process of step S11 (step S12).
[0115] The model 232 to which the multiple parameters p1 initialized in the processing of step S10 above are applied calculates the latent expression z using the feature values x of each data X of the support set SS extracted in the processing of step S12 as input (step S13).
[0116] The monotonically increasing neural network 251 to which the multiple parameters p2 initialized in the processing of step S10 above are applied calculates outputs f(e,z) and f(0,z) according to the monotonically increasing function defined by the latent expression z calculated in the processing of step S13 and time t (step S14).
[0117] The cumulative hazard function calculation unit 252 calculates the cumulative hazard function H(e,z) based on the outputs f(e,z) and f(0,z) calculated in the process of step S14 (step S15).
[0118] The automatic differentiation unit 253 calculates a hazard function h(e,z) based on the cumulative hazard function H(e,z) calculated in the process of step S15 (step S16).
[0119] The update unit 27 calculates an update parameter set θ′ (plurality of parameters p1′ and p2′) based on the cumulative hazard function H(e,z) calculated in the processing of step S15 above and the hazard function h(e,z) calculated in step S16 (step S17). Specifically, the evaluation function estimation unit 271 calculates an evaluation function L(SS) based on the cumulative hazard function H(e,z) and the hazard function h(e,z). The optimization unit 272 uses the backpropagation algorithm to calculate a plurality of parameters p1′ and p2′ optimized based on the evaluation function L(SS), i.e., an update parameter set θ′ (plurality of parameters p1′ and p2′).
[0120] The determination unit 29 determines whether or not the first condition is satisfied based on the updated parameter set θ′ (the plurality of parameters p1′ and p2′) (step S18).
[0121] If the first condition is not satisfied (step S18; NO), the determination unit 29 updates the parameters to be applied to the model 232 and the monotonically increasing neural network 251 from the parameter set θ to the updated parameter set θ' (parameters p1' and p2') calculated in the process of step S17 (step S19). Specifically, the determination unit 29 applies the optimized parameters p1' and p2' to the model 232 and the monotonically increasing neural network 251.
[0122] Then, the processes of steps S13 to S19 are executed based on the updated parameter set θ' (the plurality of parameters p1' and p2') updated in the process of step S19. As a result, the update process of the updated parameter set θ' (the plurality of parameters p1' and p2') is repeated until it is determined in the process of step S18 that the first condition is satisfied.
[0123] If the first condition is satisfied (step S19; YES), as shown in FIG. 4B, the judgment unit 29 initializes the parameters to be applied to the model 242 and the monotonically increasing neural network 261 to the updated parameter set θ′ (multiple parameters p1′ and p2′) last updated in the processing of the above step S18 (step S20).
[0124] The feature extraction unit 241 extracts the feature x of each piece of data X in the query set QS extracted in the process of step S11 (step S21).
[0125] The model 242 to which the multiple parameters p1′ initialized in the processing of step S20 above are applied calculates a latent expression z using the feature values x of each data X of the query set QS extracted in the processing of step S21 as input (step S22).
[0126] The monotonically increasing neural network 261 to which the multiple parameters p2' initialized in the processing of step S20 above are applied calculates outputs f(e, z) and f(0, z) according to the monotonically increasing function defined by the latent expression z calculated in the processing of step S22 and time t (step S23).
[0127] The cumulative hazard function calculation unit 262 calculates the cumulative hazard function H(e,z) based on the outputs f(e,z) and f(0,z) calculated in the process of step S23 (step S24).
[0128] The automatic differentiation unit 263 calculates a hazard function h(e,z) based on the cumulative hazard function H(e,z) calculated in the process of step S24 (step S25).
[0129] The update unit 28 calculates an update parameter set θ (multiple parameters p1 and p2) based on the parameter set θ (multiple parameters p1 and p2) initialized in the process of step S10 above, the cumulative hazard function H(e, z) calculated in the process of step S24 above, and the hazard function h(e, z) calculated in step S25 (step S26). Specifically, the evaluation function estimation unit 281 calculates an evaluation function L(QS) based on the cumulative hazard function H(e, z) and the hazard function h(e, z). The optimization unit 282 calculates an optimized update parameter set θ (multiple parameters p1 and p2) based on the evaluation function L(QS) using the backpropagation algorithm.
[0130] The determination unit 30 determines whether or not a second condition is satisfied based on the updated parameter set θ (parameters p1 and p2) (step S27). Here, the second condition is, for example, whether the updated parameter set θ has been transmitted to the determination unit 30 two or more times.
[0131] If this is the first time that the updated parameter set θ has been transmitted to the determination unit 30, the determination unit 30 determines that the second condition is not satisfied. If the second condition is not satisfied (step S27; NO), the determination unit 30 updates the parameters to be applied to the model 232 and the monotonically increasing neural network 251 from the parameter set θ' (plurality of parameters p1' and p2') to the updated parameter set θ (plurality of parameters p1 and p2) calculated in the processing of step S26 (step S28). Specifically, the determination unit 30 applies the optimized plurality of parameters p1 and p2 to the model 232 and the monotonically increasing neural network 251.
[0132] Thereafter, the processes of steps S11 to S26 are executed based on the updated parameter set θ (parameters p1 and p2) updated in step S28, thereby calculating the updated parameter set θ (parameters p1 and p2) again.
[0133] In this way, if the updated parameter set θ (plurality of parameters p1 and p2) is calculated again and transmitted to the determination unit 30, the number of times the updated parameter set θ has been transmitted to the determination unit 30 will be two, and the determination unit 30 will determine in the processing of the above step S27 that the second condition is satisfied. If the second condition is satisfied in this way (step S27; YES), the determination unit 30 will transfer the updated parameter set θ (plurality of parameters p1 and p2) calculated in the above step S26 to the learned parameter set θ * (multiple parameters p1 * and p2 * ) and stores it in the learned parameter storage unit 31 (step S29).
[0134] When the process of step S29 is completed, the learning operation in survival analysis device 1 is completed (end).
[0135] 1.2.2 Predictive Behavior 5 is a flowchart showing an example of a prediction operation in the survival analysis device 1 as an information processing device according to the first embodiment. In the example of FIG. 5, a prediction dataset D is stored in the prediction dataset storage unit 40 in the memory 11 by a learning operation that has been executed in advance. k 5, the prediction target data storage unit 41 in the memory 11 stores the prediction target data X k * is assumed to be stored.
[0136] As shown in FIG. 5, in response to a command from the user to start the prediction operation (start), the parameters to be applied to the model 322 and the monotonically increasing neural network 341 are stored in the learned parameter storage unit 31 as a learned parameter set θ * (multiple parameters p1 * and p2 * ) (step S30).
[0137] The feature extraction unit 321 extracts the prediction data set D stored in the prediction data set storage unit 40. k *From the prediction dataset D k *Feature value x of each data X * is extracted (step S31).
[0138] The model 322 to which the multiple parameters p1 initialized in the process of step S30 are applied is the feature quantity x extracted in the process of step S31. * is used as input, and the latent representation z * is calculated (step S32).
[0139] The monotonically increasing neural network 341 to which the multiple parameters p2 initialized in the process of step S30 are applied generates the latent representation z calculated in the process of step S32. *, and the output f * (e,z) and f * (0, z) is calculated (step S33).
[0140] The cumulative hazard function calculation unit 342 calculates the output f * (e,z) and f * Based on (0,z), the cumulative hazard function H * (e, z) is calculated (step S34).
[0141] The automatic differentiation unit 343 calculates the cumulative hazard function H calculated in the process of step S34. * Based on (e,z), the hazard function h * (e, z) is calculated (step S35).
[0142] The update unit 36 updates the cumulative hazard function H calculated in the process of step S34. * (e, z) and the hazard function h calculated in step S35 * Based on (e,z), update parameter set θ * (multiple parameters p1 * and p2 * ) (step S36). Specifically, the evaluation function estimation unit 361 calculates the cumulative hazard function H * (e,z) and hazard function h * Based on (e,z), the evaluation function L * The optimization unit 362 calculates the parameter p1 (D) optimized based on the evaluation function L(D) using the backpropagation algorithm. *’ and p2 *’ , i.e., the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') is calculated.
[0143] The determination unit 37 determines the updated parameter set θ * '(multiple parameters p1 * ' and p2 *Based on the result of the above, it is determined whether the first condition is satisfied (step S37).
[0144] If the first condition is not satisfied (step S37; NO), the determination unit 37 determines the parameters to be applied to the model 322 and the monotonically increasing neural network 341 from the parameter set θ * The updated parameter set θ calculated in the process of step S36 above * '(multiple parameters p1 * ' and p2 * Specifically, the determination unit 37 updates the optimized parameters p1 * ' and p2 * ' is applied to the model 322 and the monotonically increasing neural network 341.
[0145] The updated parameter set θ * '(multiple parameters p1 * ' and p2 * Based on the parameter set θ′, the processes of steps S33 to S38 are executed. As a result, the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') update process is repeated.
[0146] If the first condition is satisfied (step S37; YES), the determination unit 37 determines the parameters to be applied to the model 332 and the monotonically increasing neural network 351 based on the updated parameter set θ *’ (multiple parameters p1 *’ and p2 *’ ) (step S39).
[0147] The feature extraction unit 331 extracts the prediction target data X stored in the prediction target data storage unit 41. k * to feature x * is extracted (step S40).
[0148] The plurality of parameters p1 initialized in the process of step S39 *’ The model 332 to which the above is applied is the feature x extracted in the process of step S40. * is used as input, and the latent representation z * is calculated (step S41).
[0149] A plurality of parameters p2 initialized in the process of step S39 *’ The monotonically increasing neural network 351 to which the latent representation z * , and the output f * (e,z) and f * (0, z) is calculated (step S42).
[0150] The cumulative hazard function calculation unit 352 calculates the output f * (e,z) and f * Based on (0,z), the cumulative hazard function H * (e, z) is calculated (step S43).
[0151] The automatic differentiation unit 353 calculates the cumulative hazard function H calculated in the process of step S42. * Based on (e,z), the hazard function h * (e, z) is calculated (step S44).
[0152] The conversion unit 38 converts the cumulative hazard function H calculated in the process of step S43 into * Based on (e,z), the survival function S * (e, z) is calculated (step S45).
[0153] The output unit 39 outputs the hazard function h calculated in the process of step S44. * (t,z) is the hazard function h * (t|x), and the cumulative hazard function H calculated in the process of step S43 above * (t,z) is the cumulative hazard function H *(t|x), and the survival function S calculated in the process of step S45 * (t,z) is the survival function S * (t|x) and output it to the user (step S46).
[0154] When the process of step S46 ends, the prediction operation in the survival analysis device 1 ends (ends).
[0155] 1.3 Effects of the First Embodiment According to the first embodiment, the monotonically increasing neural network 351 is configured to output a scalar value according to a monotonically increasing function defined by the time and the latent expression calculated by the latent expression calculation unit 33, which calculates a latent expression representing a feature from processing target data including a feature related to a prediction target event. The cumulative hazard function calculation unit 352 and automatic differentiation unit 353 of the function estimation unit 35 estimate a hazard function based on the scalar value output from the monotonically increasing neural network 351. In this way, modeling using the monotonically increasing neural network 351 makes it possible to avoid integral calculations based on approximation. This makes it possible to calculate a hazard function for the prediction target data without any assumptions.
[0156] Furthermore, according to the first embodiment, the latent expression calculation unit 33 and the multiple parameters p1 of the monotonically increasing neural network 351 * and p2 * (parameter set θ * The system further includes a learning function configuration (learning dataset storage unit 20 to determination unit 29) that learns the hazard function of the event to be predicted by meta-learning using MAML. Therefore, even if there is not enough prediction data in which an event to be predicted has occurred, it is possible to calculate the hazard function for the prediction target data.
[0157] Moreover, according to the first embodiment, the system includes a latent expression calculation unit 32, a function estimation unit 34, and an update unit 36, which function as a parameter update unit that updates parameters learned by a learning function configuration based on a plurality of prediction data including feature quantities related to the event to be predicted, which are stored in a prediction dataset storage unit 40. Therefore, by updating the parameters learned by meta-learning using MAML to parameters corresponding to the data to be predicted, it becomes possible to calculate a more accurate hazard function.
[0158] The cumulative hazard function calculation unit 352 of the function estimation unit 35 calculates the cumulative hazard function based on the scalar value output from the monotonically increasing neural network 351, and the automatic differentiation unit 353 of the function estimation unit 35 calculates the hazard function by automatically differentiating the cumulative hazard function calculated by the cumulative hazard function calculation unit 352. In this way, the hazard function can be calculated based on a monotonically increasing function.
[0159] Moreover, according to the first embodiment, the function estimation unit 35 further includes a conversion unit 38 that converts the cumulative hazard function calculated by the cumulative hazard function calculation unit 352 into a survival function. Therefore, it is possible to calculate the survival function as well. In this way, according to the first embodiment, it is possible to calculate at least one of the hazard function and the survival function for the data to be predicted without any assumptions.
[0160] 2. Second embodiment Next, an information processing device according to a second embodiment will be described.
[0161] In the information processing device according to the second embodiment, the survival function S(t) is defined as S(t)=1-σ(f(t,z)). Therefore, the cumulative hazard function H(t) is defined as H(t)=-logS(t)=-log{1-σ(f(t,z))}, where σ is a monotonically increasing, twice differentiable function whose range is defined in [0,1], such as a sigmoid function. The hazard function h(t) is calculated by automatically differentiating the survival function S(t). Therefore, the hazard function and survival function can be calculated without calculating the cumulative hazard function as in the first embodiment.
[0162] As with the first embodiment, a survival analysis device will be described below as an example of an information processing device according to the second embodiment. The following mainly describes configurations and operations that differ from those of the first embodiment. Explanations of configurations and operations equivalent to those of the first embodiment will be omitted where appropriate.
[0163] 2.1 Configuration The configuration of a survival analysis device 1 as an information processing device according to the second embodiment will be described.
[0164] 2.1.1 Learning function configuration Fig. 6 is a block diagram showing an example of the configuration of the learning function of the survival analysis device 1 as an information processing device according to the second embodiment. Fig. 6 corresponds to Fig. 2 in the first embodiment.
[0165] 6, the survival analysis apparatus 1 functions as a computer including a data division unit 51, an initialization unit 52, latent expression calculation units 53 and 54, function estimation units 55 and 56, update units 57 and 58, and determination units 59 and 60. Furthermore, the memory 11 of the survival analysis apparatus 1 functions as a learning dataset storage unit 50 and a learned parameter storage unit 61 for storing information used in the learning operation.
[0166] The configurations of the training dataset storage unit 50 and the data division unit 51 are equivalent to the configurations of the training dataset storage unit 20 and the data division unit 21 in FIG. 2 of the first embodiment. That is, the data division unit 51 extracts a support set SS and a query set QS from the training dataset storage unit 50.
[0167] The configuration of the initialization unit 52 is equivalent to the configuration of the initialization unit 22 in FIG. 2 of the first embodiment. That is, the initialization unit 52 initializes a parameter set θ (plurality of parameters p1 and p2) based on a predetermined arbitrary rule R. The initialization unit 52 transmits the initialized plurality of parameters p1 to the latent expression calculation unit 53, and transmits the initialized plurality of parameters p2 to the function estimation unit 55. Furthermore, the initialization unit 52 transmits the initialized parameter set θ (plurality of parameters p1 and p2) to the update unit 58.
[0168] The configuration of the latent expression calculation unit 53 is equivalent to the configuration of the latent expression calculation unit 23 in FIG. 2 of the first embodiment, and includes a feature extraction unit 531 and a model 532. That is, the latent expression calculation unit 53 calculates a latent expression z for the feature x of each data X in the support set SS based on the support set SS. The latent expression calculation unit 53 transmits the calculated latent expression z to the function estimation unit 55.
[0169] The function estimation unit 55 calculates a survival function S(t, z) and a hazard function h(t, z) based on the latent expression z and time t. The function estimation unit 55 transmits the calculated survival function S(t, z) and hazard function h(t, z) to the update unit 57. Specifically, the function estimation unit 55 includes a monotonically increasing neural network 551, a survival function calculation unit 552, and an automatic differentiation unit 553. The configurations of the monotonically increasing neural network 551 and the automatic differentiation unit 553 are equivalent to the configurations of the monotonically increasing neural network 251 and the automatic differentiation unit 253 in FIG. 2 of the first embodiment.
[0170] The monotonically increasing neural network 551, to which multiple parameters p2 are applied, calculates an output f(t, z) according to a monotonically increasing function defined by the latent expression z and time t. The monotonically increasing neural network 551 transmits the calculated output f(t, z) to the survival function calculation unit 552.
[0171] The survival function calculation unit 552 calculates a survival function S(t, z) based on the output f(t, z) from the monotonically increasing neural network 551. The survival function calculation unit 552 transmits the calculated survival function S(t, z) to the automatic differentiation unit 553. In addition, the survival function calculation unit 552 transmits the calculated survival function S(t, z) to the update unit 57.
[0172] The automatic differentiation unit 553 calculates the hazard function h(t,z) by automatically differentiating the survival function S(t,z). The automatic differentiation unit 553 transmits the calculated hazard function h(t,z) to the update unit 57.
[0173] The update unit 57 calculates an updated parameter set θ′ (a plurality of parameters p1′ and p2′) based on the survival function S(t, z) and the hazard function h(t, z). The update unit 57 transmits the updated parameter set θ′ (a plurality of parameters p1′ and p2′) to the determination unit 59.
[0174] Specifically, the update unit 57 includes an evaluation function estimation unit 571 and an optimization unit 572 . The configuration of the evaluation function estimation unit 571 is equivalent to the configuration of the evaluation function estimation unit 271 in FIG. 2 of the first embodiment, except that it uses a survival function S(t,z) instead of the cumulative hazard function H(t,z). The evaluation function estimation unit 571 calculates an evaluation function L(SS) based on the survival function S(t,z) and the hazard function h(t,z). The evaluation function estimation unit 571 transmits the calculated evaluation function L(SS) to the optimization unit 572.
[0175] The optimization unit 572 optimizes the parameter set θ, i.e., the multiple parameters p1 and p2, based on the evaluation function L(SS). For example, the backpropagation algorithm is used for the optimization. The optimization unit 572 transmits this optimized parameter set θ (the multiple parameters p1 and p2) to the determination unit 59 as an updated parameter set θ' (the multiple parameters p1' and p2').
[0176] The determination unit 59 is equivalent to the determination unit 29 in FIG. 2 of the first embodiment. That is, the determination unit 59 determines whether or not a first condition is satisfied based on the updated parameter set θ′ (plurality of parameters p1′ and p2′). If the first condition is not satisfied, the determination unit 59 causes the latent expression calculation unit 53, the function estimation unit 55, and the update unit 57 to repeatedly execute a parameter update loop. If the first condition is satisfied, the determination unit 59 ends the parameter update loop and transmits the last updated updated parameter set θ′ (plurality of parameters p1′ and p2′) to the latent expression calculation unit 54 and the function estimation unit 56. In other words, the determination unit 59 initializes the parameters applied to the latent expression calculation unit 54 and the function estimation unit 56 to this updated parameter set θ′ (plurality of parameters p1′ and p2′).
[0177] The configuration of the latent expression calculation unit 54 is equivalent to the configuration of the latent expression calculation unit 24 in FIG. 2 of the first embodiment, and includes a feature extraction unit 541 and a model 542. That is, the latent expression calculation unit 54 calculates a latent expression z for the feature x of each data X in the query set QS based on the query set QS. The latent expression calculation unit 54 transmits the calculated latent expression z to the function estimation unit 56.
[0178] The function estimation unit 56 calculates the survival function S(t, z) and the hazard function h(t, z) based on the latent expression z and the predicted time t, similar to the function estimation unit 55. The function estimation unit 56 transmits the calculated survival function S(t, z) and the hazard function h(t, z) to the update unit 58.
[0179] Specifically, like the function estimation unit 55, the function estimation unit 56 includes a monotonically increasing neural network 561, a survival function calculation unit 562, and an automatic differentiation unit 563. The configurations of the monotonically increasing neural network 551 and the automatic differentiation unit 553 are equivalent to the configurations of the monotonically increasing neural network 261 and the automatic differentiation unit 263 in FIG. 2 of the first embodiment.
[0180] The monotonically increasing neural network 561 to which the multiple parameters p2' are applied calculates an output f(t, z) according to a monotonically increasing function defined by the latent expression z and time t. The monotonically increasing neural network 561 transmits the output f(t, z) to the survival function calculation unit 562.
[0181] The survival function calculation unit 562 is similar to the survival function calculation unit 552, and calculates a survival function S(t, z) based on the output f(t, z) from the monotonically increasing neural network 561. The survival function calculation unit 562 transmits the calculated survival function S(t, z) to the automatic differentiation unit 563 and the update unit 58.
[0182] The automatic differentiation unit 563 is similar to the automatic differentiation unit 553, and calculates the hazard function h(t,z) by automatically differentiating the survival function S(t,z). The automatic differentiation unit 563 transmits the calculated hazard function h(t,z) to the update unit 58.
[0183] The update unit 58 updates the parameter set θ (parameters p1 and p2) from the initialization unit 52 based on the survival function S(t,z) and the hazard function h(t,z), and transmits the updated parameter set θ to the determination unit 30.
[0184] Specifically, the update unit 58 includes an evaluation function estimation unit 581 and an optimization unit 582 . The evaluation function estimation unit 581 has the same configuration as the evaluation function estimation unit 281 in FIG. 2 of the first embodiment, except that it uses a survival function S(t,z) instead of the cumulative hazard function H(t,z). The evaluation function estimation unit 581 calculates an evaluation function L(QS) based on the survival function S(t,z) and the hazard function h(t,z). The evaluation function estimation unit 581 transmits the calculated evaluation function L(QS) to the optimization unit 582.
[0185] The optimization unit 582 optimizes the parameter set θ, i.e., the multiple parameters p1 and p2, based on the evaluation function L(QS). For example, backpropagation is used for the optimization. More specifically, the optimization unit 582 calculates the second derivative of the evaluation function L2(QS) with respect to the parameter set θ (the multiple parameters p1 and p2) using the parameter set θ (the multiple parameters p1 and p2), and optimizes the parameter set θ (the multiple parameters p1 and p2). The optimization unit 582 transmits this optimized parameter set θ (the multiple parameters p1 and p2) to the determination unit 60 as an updated parameter set θ (the multiple parameters p1 and p2).
[0186] The determination unit 60 is equivalent to the determination unit 30 in the first embodiment shown in Fig. 2. That is, the determination unit 60 determines whether or not the second condition is satisfied based on the updated parameter set θ (the plurality of parameters p1 and p2).
[0187] If the second condition is not satisfied, the determination unit 60 transmits the updated parameter set θ (plurality of parameters p1 and p2) to the optimization unit 582 and applies it to the model 532 and the monotonically increasing neural network 551. As a result, the determination unit 60 causes the latent expression calculation units 53 and 54, the function estimation units 55 and 56, the update units 57 and 58, and the determination unit 59 to perform parameter update operations based on this updated parameter set θ. In other words, if the second condition is not satisfied, the determination unit 60 causes the latent expression calculation units 53 and 54, the function estimation units 55 and 56, the update units 57 and 58, and the determination unit 59 to execute the parameter update loop again.
[0188] Furthermore, if the second condition is satisfied, the determination unit 60 transfers the updated parameter set θ (the plurality of parameters p1 and p2) to the learned parameter set θ * (multiple parameters p1 * and p2 * ) and stored in the learned parameter storage unit 61.
[0189] With the above-described configuration, the survival analysis device 1 can analyze the training dataset D stored in the training dataset storage unit 50. k Based on this, the learned parameter set θ * (multiple parameters p1 * and p2 * ) has the function of storing it.
[0190] 2.1.2 Prediction function configuration Fig. 7 is a block diagram showing an example of the configuration of the prediction function of the survival analysis device 1 as an information processing device according to the second embodiment. Fig. 7 corresponds to Fig. 3 in the first embodiment.
[0191] 7, the survival analysis apparatus 1 further functions as a computer including latent expression calculation units 62 and 63, function estimation units 64 and 65, an update unit 66, a determination unit 67, and an output unit 68. The memory 11 of the survival analysis apparatus 1 further functions as a prediction dataset storage unit 69 and a prediction target data storage unit 70 for storing information used in the prediction operation. In FIG. 7, a plurality of parameters p1 are stored in the trained parameter storage unit 61 and input to the model 622 and the monotonically increasing neural network 641, respectively. * and p2 * is shown when it is applied.
[0192] The configurations of the prediction data set storage unit 69 and the prediction target data storage unit 70 are equivalent to the configurations of the prediction data set storage unit 40 and the prediction target data storage unit 41 in FIG. 3 of the first embodiment.
[0193] The configuration of the latent expression calculation unit 62 is equivalent to the configuration of the latent expression calculation unit 32 in FIG. 3 of the first embodiment, and includes a feature extraction unit 621 and a model 622. That is, the latent expression calculation unit 62 uses the prediction dataset D k *Based on the prediction dataset D k The latent expression calculation unit 62 calculates a latent expression z for the feature quantity x of each piece of data X in *. The latent expression calculation unit 62 transmits the calculated latent expression z to the monotonically increasing neural network 641 in the function estimation unit 64.
[0194] The function estimation unit 64, like the function estimation unit 55, estimates the latent expression z * and the predicted time t, the survival function S * (t,z) and the hazard function h * (t, z). The function estimation unit 64 calculates the survival function S * (t,z) and the hazard function h * (t, z) is sent to the update unit 66.
[0195] Specifically, like the function estimation unit 55, the function estimation unit 64 includes a monotonically increasing neural network 641, a survival function calculation unit 642, and an automatic differentiation unit 643. The configurations of the monotonically increasing neural network 641 and the automatic differentiation unit 643 are equivalent to the configurations of the monotonically increasing neural network 341 and the automatic differentiation unit 343 in FIG. 3 of the first embodiment.
[0196] Multiple parameters p2 * The monotonically increasing neural network 641 to which * and the output f * (z, t). The monotonically increasing neural network 641 calculates the calculated output f * (z, t) is sent to the survival function calculation unit 642.
[0197] The survival function calculation unit 642 is similar to the survival function calculation unit 552, and calculates the output f * Based on (t,z), the survival function S* (t, z). The survival function calculation unit 642 calculates the survival function S * (t, z) to the automatic differentiation unit 643. The survival function calculation unit 642 also sends the calculated survival function S * (t, z) is sent to the update unit 66.
[0198] The automatic differentiation unit 643 is similar to the automatic differentiation unit 553 and calculates the survival function S * By automatically differentiating (t,z), the hazard function h * (t, z). The automatic differentiation unit 643 calculates the calculated hazard function h * (t, z) is sent to the update unit 66.
[0199] The update unit 66 calculates the survival function S * (t,z) and the hazard function h * Based on (t,z), update parameter set θ * '(multiple parameters p1 * ' and p2 * The update unit 66 calculates the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') to the determination unit 67.
[0200] Specifically, the update unit 66 is similar to the update unit 57 and includes an evaluation function estimation unit 661 and an optimization unit 662 . The evaluation function estimation unit 661 is similar to the evaluation function estimation unit 571, and estimates the survival function S * (t,z) and the hazard function h * Based on (t,z), the evaluation function L * The evaluation function estimation unit 661 calculates the calculated evaluation function L * (D) is sent to the optimization unit 662.
[0201] The optimization unit 662 is similar to the optimization unit 572 and uses the evaluation function L * Based on (D), the parameter set θ * That is, multiple parameters p1 *and p2 * The optimization is performed using, for example, the backpropagation algorithm. The optimization unit 662 optimizes the parameter set θ * (multiple parameters p1 * and p2 * ) as the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') and transmits it to the determination unit 67.
[0202] The determination unit 67, like the determination unit 59, determines the updated parameter set θ * '(multiple parameters p1 * ' and p2 * If the first condition is not satisfied, the determining unit 67 determines whether the first condition is satisfied based on the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') is applied to the model 622 and the monotonically increasing neural network 641. That is, if the first condition is not satisfied, the determination unit 67 causes the latent expression calculation unit 62, the function estimation unit 64, and the update unit 66 to repeatedly execute a parameter update loop. Then, if the first condition is satisfied, the determination unit 67 ends the parameter update loop and finally selects an updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') is transmitted to the latent expression calculation unit 63 and the function estimation unit 65. In other words, the determination unit 67 determines the parameters to be applied to the latent expression calculation unit 63 and the function estimation unit 65 based on this updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') to initialize it.
[0203] The configuration of the latent expression calculation unit 63 is equivalent to the configuration of the latent expression calculation unit 33 in FIG. 3 of the first embodiment, and includes a feature quantity extraction unit 631 and a model 632. That is, the latent expression calculation unit 63 calculates the prediction target data X input by the user via the user interface 13 and stored in the prediction target data storage unit 70, for example. k The latent expression calculation unit 63 calculates the latent expression z based on the calculated latent expression z * is transmitted to the function estimation unit 65.
[0204] The function estimation unit 65 is similar to the function estimation unit 56 and estimates the latent expression z * and the predicted time t, the survival function S * (t,z) and the hazard function h * (t, z). The function estimation unit 65 calculates the survival function S * (t,z) and the hazard function h * (t,z) is sent to the output unit 68.
[0205] Specifically, like the function estimation unit 56, the function estimation unit 65 includes a monotonically increasing neural network 651, a survival function calculation unit 652, and an automatic differentiation unit 653. The configurations of the monotonically increasing neural network 651 and the automatic differentiation unit 653 are equivalent to the configurations of the monotonically increasing neural network 351 and the automatic differentiation unit 353 in FIG. 3 of the first embodiment.
[0206] Multiple parameters p2 * The monotonically increasing neural network 651 to which ' is applied generates the latent representation z * and the output f * (t, z). The monotonically increasing neural network 651 calculates the output f * (t, z) is sent to the survival function calculation unit 652.
[0207] The survival function calculation unit 652 is similar to the survival function calculation unit 562, and calculates the output f * Based on (t,z), the survival function S *(t, z). The survival function calculation unit 652 calculates the calculated survival function S * (t, z) is sent to the automatic differentiation unit 653 and the output unit 68.
[0208] The automatic differentiation unit 653 is similar to the automatic differentiation unit 563 and calculates the survival function S * By automatically differentiating (t,z), the hazard function h * (t, z). The automatic differentiation unit 653 calculates the calculated hazard function h * (t,z) is sent to the output unit 68.
[0209] The output unit 68 outputs the hazard function h * (t,z) is the hazard function h * (t|x), and the survival function S transmitted from the survival function calculation unit 652 * (t,z) is the survival function S * (t|x), which are output to the user respectively.
[0210] With the above-described configuration, the survival analysis device 1 can analyze the prediction dataset D stored in the prediction dataset storage unit 69. k *, the prediction target data X stored in the prediction target data storage unit 70 k *Hazard function h * (t|x) and the survival function S * It has the function to calculate (t|x).
[0211] 2.2 Operation Next, the operation of the survival analysis device 1 as an information processing device according to the second embodiment will be described.
[0212] 2.2.1 Learning behavior 8A and 8B are a series of flowcharts showing an example of the learning operation in the survival analysis device 1 as an information processing device according to the second embodiment. FIGS. 8A and 8B correspond to FIGS. 4A and 4B in the first embodiment. In the example of FIGS. 8A and 8B, a learning dataset D is stored in advance in the learning dataset storage unit 50 in the memory 11. kis assumed to be stored.
[0213] As shown in Fig. 8A, in response to a start instruction from the user for the learning operation (start), the processes of steps S50 to S53 are executed. The processes of steps S50 to S53 are equivalent to the processes of steps S10 to S13 in Fig. 4A of the first embodiment. That is, the initialization unit 52 initializes a parameter set θ (plurality of parameters p1 and p2) based on an arbitrary rule R (step S50). The data division unit 51 divides the learning dataset D stored in the learning dataset storage unit 50 into k A training dataset for task k is randomly extracted from the list, and a support set SS and a query set QS are further extracted from the extracted training dataset (step S51). A feature extraction unit 531 extracts feature values x of each data X in the support set SS from the support set SS extracted in the processing of step S51 (step S52). A model 532 to which multiple parameters p1 initialized in the processing of step S50 above are applied calculates a latent expression z using as input the feature values x of each data X in the support set SS extracted in the processing of step S52 (step S53).
[0214] The monotonically increasing neural network 551 to which the multiple parameters p2 initialized in the processing of step S50 above are applied calculates the output f(t, z) according to the latent expression z calculated in the processing of step S53 and a monotonically increasing function defined by the time t (step S54).
[0215] The survival function calculation unit 552 calculates the survival function S(t,z) based on the output f(t,z) calculated in the process of step S54 (step S55).
[0216] The automatic differentiation unit 553 calculates the hazard function h(e, z) based on the survival function S(t, z) calculated in the process of step S55 (step S56).
[0217] The update unit 57 calculates an update parameter set θ′ (multiple parameters p1′ and p2′) based on the survival function S(t, z) calculated in the processing of step S55 and the hazard function h(t, z) calculated in step S56 (step S57). Specifically, the evaluation function estimation unit 571 calculates an evaluation function L(SS) based on the survival function S(t, z) and the hazard function h(t, z). The optimization unit 572 calculates multiple parameters p1′ and p2′ optimized based on the evaluation function L(SS), i.e., the update parameter set θ′ (multiple parameters p1′ and p2′), using the backpropagation algorithm.
[0218] Thereafter, the processes of steps S58 to S62 are executed. The processes of steps S58 to S62 are equivalent to the processes of steps S18 to S22 in FIGS. 4A and 4B of the first embodiment. That is, the determination unit 59 determines whether or not the first condition is satisfied based on the updated parameter set θ′ (parameters p1′ and p2′) (step S58). If the first condition is not satisfied (step S58; NO), the determination unit 59 updates the parameters to be applied to the model 532 and the monotonically increasing neural network 551 from the parameter set θ to the updated parameter set θ′ (parameters p1′ and p2′) calculated in the process of step S57 (step S59). Specifically, the determination unit 59 applies the optimized parameters p1′ and p2′ to the model 532 and the monotonically increasing neural network 551. Then, the processes of steps S53 to S59 are executed based on the updated parameter set θ' (the plurality of parameters p1' and p2') updated in the process of step S59. As a result, the update process of the updated parameter set θ' (the plurality of parameters p1' and p2') is repeated until it is determined in the first process of step S58 that the condition is satisfied.
[0219] If the first condition is satisfied (step S58; YES), as shown in FIG. 8B, the determination unit 59 initializes the parameters to be applied to the model 542 and the monotonically increasing neural network 561 to the updated parameter set θ′ (plurality of parameters p1′ and p2′) last updated in the process of step S57 above (step S60). The feature extraction unit 541 extracts feature values x of each data X of the query set QS from the query set QS extracted in the process of step S51 above (step S61). The model 542 to which the plurality of parameters p1′ initialized in the process of step S60 above is applied calculates a latent expression z using the feature values x of each data X of the query set QS extracted in the process of step S41 as input (step S62).
[0220] The monotonically increasing neural network 561 to which the multiple parameters p2' initialized in the processing of step S60 above are applied calculates the output f(t, z) according to the monotonically increasing function defined by the latent expression z calculated in the processing of step S62 and the time t (step S23).
[0221] The survival function calculation unit 562 calculates the survival function S(t, z) based on the output f(t, z) calculated in the process of step S63 (step S64).
[0222] The automatic differentiation unit 563 calculates the hazard function h(t,z) based on the survival function S(t,z) calculated in the process of step S64 (step S65).
[0223] The update unit 58 calculates an update parameter set θ (multiple parameters p1 and p2) based on the parameter set θ (multiple parameters p1 and p2) initialized in the process of step S50 above, the survival function S(t, z) calculated in the process of step S64 above, and the hazard function h(t, z) calculated in step S65 (step S66). Specifically, the evaluation function estimation unit 581 calculates an evaluation function L(QS) based on the survival function S(t, z) and the hazard function h(t, z). The optimization unit 582 calculates an optimized update parameter set θ (multiple parameters p1 and p2) based on the evaluation function L(QS) using the backpropagation algorithm.
[0224] Thereafter, the processes of steps S67 to S69 are executed. The processes of steps S67 to S69 are equivalent to the processes of steps S18 to S22 in FIGS. 4A and 4B of the first embodiment. That is, the determination unit 60 determines whether the second condition is satisfied based on the updated parameter set θ (parameters p1 and p2) (step S67). If the second condition is not satisfied (step S67; NO), the determination unit 60 updates the parameters to be applied to the model 232 and the monotonically increasing neural network 251 from the parameter set θ′ (parameters p1′ and p2′) to the updated parameter set θ (parameters p1 and p2) calculated in the process of step S26 (step S68). Specifically, the determination unit 60 applies the optimized parameters p1 and p2 to the model 232 and the monotonically increasing neural network 551. Thereafter, the processes of steps S51 to S66 are executed based on the updated parameter set θ (parameters p1 and p2) updated in step S68, thereby calculating the updated parameter set θ (parameters p1 and p2) again.
[0225] If the updated parameter set θ (the plurality of parameters p1 and p2) is calculated again in this way, it is determined in the process of step S67 that the second condition is satisfied. Therefore, in this case (step S67; YES), the determination unit 30 sets the updated parameter set θ (the plurality of parameters p1 and p2) calculated in step S66 as the learned parameter set θ * (multiple parameters p1 * and p2 * ) and stores it in the learned parameter storage unit 61 (step S69).
[0226] When the process of step S69 is completed, the learning operation in the survival analysis device 1 is completed (end).
[0227] 2.2.2 Predictive Behavior 9 is a flowchart showing an example of a prediction operation in the survival analysis device 1 as an information processing device according to the second embodiment. FIG. 9 corresponds to FIG. 5 in the first embodiment. In the example of FIG. 9, a prediction dataset D is stored in the prediction dataset storage unit 69 in the memory 11 by a learning operation that has been executed in advance. k 9, the prediction target data X is stored in the prediction target data storage unit 70 in the memory 11. k * is assumed to be stored.
[0228] 9, in response to a command from the user to start the prediction operation (start), the processes of steps S70 to S72 are executed. The processes of steps S70 to S72 are equivalent to the processes of steps S30 to S32 in FIG. 5 of the first embodiment. That is, the parameters to be applied to the model 622 and the monotonically increasing neural network 641 are stored in the learned parameter set θ * (multiple parameters p1 * and p2 * ) stored in the prediction dataset storage unit 69 (step S70). k*From the prediction dataset D k *Feature value x of each data X * The model 622 to which the multiple parameters p1 initialized in the process of step S70 are applied extracts the feature quantity x extracted in the process of step S71. * is used as input, and the latent representation z * is calculated (step S72).
[0229] The monotonically increasing neural network 641 to which the multiple parameters p2 initialized in the process of step S70 are applied generates the latent expression z * , and the output f * (t, z) is calculated (step S73).
[0230] The survival function calculation unit 642 calculates the output f * Based on (t,z), the survival function S * (t, z) is calculated (step S74).
[0231] The automatic differentiation unit 643 calculates the survival function S calculated in the process of step S74. * Based on (t,z), the hazard function h * (t, z) is calculated (step S75).
[0232] The update unit 66 updates the survival function S calculated in the process of step S74. * (t, z) and the hazard function h calculated in step S75 * Based on (t,z), update parameter set θ * (multiple parameters p1 * and p2 * ) (step S76). Specifically, the evaluation function estimation unit 661 calculates the survival function S * (t,z) and the hazard function h * Based on (t,z), the evaluation function L *The optimization unit 662 calculates the parameter p1 (D) optimized based on the evaluation function L(D) using the backpropagation algorithm. * and p2 *’ , i.e., the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') is calculated.
[0233] Thereafter, the processes of steps S77 to S81 are executed. The processes of steps S77 to S81 are equivalent to the processes of steps S37 to S41 in FIG. 5 of the first embodiment. That is, the determination unit 37 determines whether the updated parameter set θ * '(multiple parameters p1 * ' and p2 * If the first condition is not satisfied (step S77; NO), the determining unit 67 determines whether the parameters to be applied to the model 622 and the monotonically increasing neural network 641 are the same as those in the parameter set θ * The updated parameter set θ calculated in the process of step S76 above * '(multiple parameters p1 * ' and p2 * Specifically, the determining unit 67 updates the optimized parameters p1 * ' and p2 * ' is applied to the model 622 and the monotonically increasing neural network 641. Then, the updated parameter set θ * '(multiple parameters p1 * ' and p2 * Based on the parameter set θ′, the processes of steps S73 to S78 are executed. As a result, the updated parameter set θ * '(multiple parameters p1 * ' and p2 * ') update process is repeated.
[0234] If the first condition is satisfied (step S77; YES), the determination unit 67 determines the parameters to be applied to the model 632 and the monotonically increasing neural network 651 based on the updated parameter set θ *’ (multiple parameters p1 *’ and p2 *’ ) stored in the prediction target data storage unit 70 (step S79). k * to feature x * (Step S80) The multiple parameters p1 initialized in the process of step S79 are extracted. *’ The model 632 to which the above is applied is the feature x extracted in the process of step S78. * is used as input, and the latent representation z * is calculated (step S81).
[0235] A plurality of parameters p2 initialized in the process of step S79 *’ The monotonically increasing neural network 651 to which the latent representation z * , and the output f * (t, z) is calculated (step S82).
[0236] The survival function calculation unit 652 calculates the output f * Based on (t,z), the survival function S * (t, z) is calculated (step S83).
[0237] The automatic differentiation unit 653 calculates the survival function S calculated in the process of step S83. * Based on (t,z), the hazard function h * (t, z) is calculated (step S84).
[0238] The output unit 68 outputs the hazard function h calculated in the process of step S84. * (t,z) is the hazard function h * (t|x), and the survival function S calculated in the process of step S83 above* (t,z) is the survival function S * (t|x) and output it to the user (step S85).
[0239] When the process of step S85 ends, the prediction operation in the survival analysis device 1 ends (ends).
[0240] 2.3 Effects of the Second Embodiment According to the second embodiment, the monotonically increasing neural network 651 is configured to output a monotonically increasing function defined by the latent expression calculated by the latent expression calculation unit 63, which calculates a latent expression representing a feature from processing target data including a feature related to a prediction target event, and time. The survival function calculation unit 652 and automatic differentiation unit 653 of the function estimation unit 65 estimate the survival function and the hazard function based on the monotonically increasing function output from the monotonically increasing neural network 651. In this way, modeling using the monotonically increasing neural network 651 makes it possible to avoid integral calculations by approximation. Therefore, it becomes possible to calculate the hazard function and the survival function for the prediction target data without any assumptions.
[0241] Furthermore, according to the second embodiment, the latent expression calculation unit 63 and the multiple parameters p1 of the monotonically increasing neural network 651 * and p2 * (parameter set θ * The system further includes a learning function configuration (learning dataset storage unit 50 to determination unit 60) that learns the above-mentioned data by meta-learning using MAML. Therefore, even if there is not enough prediction data in which an event to be predicted has occurred, it is possible to calculate the hazard function and survival function for the prediction target data.
[0242] Moreover, according to the second embodiment, there are provided a latent expression calculation unit 62, a function estimation unit 64, and an update unit 66, which function as a parameter update unit that updates parameters learned by a learning function configuration based on a plurality of prediction data including feature quantities related to the event to be predicted, which are stored in a prediction dataset storage unit 69. Therefore, by updating the parameters learned by meta-learning using MAML to parameters according to the data to be predicted, it becomes possible to calculate a more accurate hazard function and survival function.
[0243] The survival function calculation unit 652 of the function estimation unit 65 calculates the survival function based on the scalar value output from the monotonically increasing neural network 651, and the automatic differentiation unit 653 of the function estimation unit 65 calculates the hazard function by automatically differentiating the survival function calculated by the survival function calculation unit 652. In this way, the hazard function and the survival function can be calculated based on the scalar value output from the monotonically increasing neural network 651. Furthermore, since the survival function S(t) satisfies 0≦S(t)≦1, unlike the cumulative hazard function, no scale adjustment is required. Therefore, it is expected that the learning configuration will be easier than in the first embodiment.
[0244] 3. Variations Various modifications can be applied to the first and second embodiments described above. For example, when the feature x is time series data (x0, ....xτ, ...,xe), the likelihood can be calculated for each time, and therefore the negative logarithmic likelihood, which is the evaluation function in the first and second embodiments, can be changed accordingly. For example, the evaluation function L(SS) in the first embodiment can be changed as follows:
[0245]
number
[0246] Here, zτ is z when (x0, . . . , xτ) is input to the model 232 or the like. The same applies to the other evaluation functions. When the feature x includes both time-series data (x0, . . . , xτ, . . . , xe) and static data xs, the data xs is used to calculate the data zτ.
[0247] Furthermore, in the survival analysis device 1 as the information processing device according to the first and second embodiments, an example has been described in which a parameter set is learned by meta-learning using MAML, but it goes without saying that the meta-learning method is not limited to MAML. Many different advanced versions of MAML have been proposed, and meta-learning may be performed using such advanced versions of MAML. Furthermore, a parameter set may be learned by a meta-learning method other than MAML.
[0248] Furthermore, the survival analysis device 1 as the information processing device according to the first and second embodiments may receive a learning program or a prediction program from a program server on the cloud via the communication module 12, store the program in the memory 11, and perform operations in accordance with the program. Furthermore, instead of providing the learning dataset storage units 20, 50 and the prediction dataset storage units 40, 69 in the memory 11, data sets on the cloud may be used.
[0249] In the second embodiment, when the cumulative hazard function is also output to the user, it can be calculated by converting it from the survival function.
[0250] In the first and second embodiments, the learning operation and the prediction operation are executed by a program stored in the survival analysis device 1 as the information processing device according to the embodiment, but this is not limiting. For example, the learning operation and the prediction operation may be executed by computational resources on the cloud.
[0251] The techniques described in the embodiments can also be distributed as a program (software means) that can be executed by a computer, stored on a recording medium such as a magnetic disk (e.g., a floppy disk, a hard disk, etc.), an optical disk (e.g., a CD-ROM, a DVD, an MO, etc.), or a semiconductor memory (e.g., a ROM, a RAM, a flash memory, etc.), or transmitted via a communication medium. The program stored on the medium also includes a configuration program that configures the software means (including not only execution programs but also tables and data structures) that the computer executes. The computer that implements this device reads the program stored on the recording medium and, in some cases, configures the software means using the configuration program, and executes the above-mentioned processing by controlling the operation of the software means. The term "recording medium" as used herein is not limited to a storage medium for distribution, but also includes a storage medium such as a magnetic disk or semiconductor memory installed inside the computer or in a device connected via a network.
[0252] In short, this invention is not limited to the above-described embodiments, and various modifications can be made in the implementation stage without departing from the spirit of the invention. Furthermore, the embodiments may be implemented in appropriate combinations where possible, in which case the combined effects can be obtained. Furthermore, the above-described embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining the disclosed multiple constituent elements. For example, if the problem can be solved and the effects can be obtained even if some constituent elements are deleted from all the constituent elements shown in the embodiments, the configuration from which these constituent elements are deleted can be extracted as an invention. [Explanation of symbols]
[0253] 1…Survival analyzer 10...Control circuit 11...Memory 12...Communication module 13...User Interface 14...Drive 15...Storage medium 20,50...Learning dataset storage section 21,51...Data division section 22,52…Initialization section 23,24,32,33,53,54,62,63…latent expression calculation unit 25,26,34,35,55,56,64,65...Function estimation section 27,28,36,57,58,66…Update section 29,30,37,59,60,67...judgment section 31, 61... Learned parameter memory section 38...Conversion unit 39,68...Output section 40,69...Prediction dataset storage section 41, 70...Prediction target data storage unit 231,241,321,331,531,541,621,631...Feature extraction section 232,242,322,332,532,542,622,632…models 251,261,341,351,551,561,641,651…monotonically increasing neural network 252, 262, 342, 352...Cumulative hazard function calculation section 253,263,343,353,553,563,643,653…Automatic differentiation part 271,281,361,571,581,661...Evaluation function estimation section 272,282,362,572,582,662...Optimization section 552,562,642,652...Survival function calculation section
Claims
1. a latent expression calculation unit that calculates a latent expression representing a feature amount from processing target data including the feature amount related to the prediction target event; a monotonically increasing neural network modeled to output a scalar value different from a cumulative hazard function according to a monotonically increasing function defined by the latent expression calculated by the latent expression calculation unit and time; a function estimation unit that estimates at least one of a hazard function and a survival function based on the scalar value output from the monotonically increasing neural network; An information processing device comprising:
2. The prediction target event prediction system further includes a learning unit that learns parameters of the latent representation calculation unit and the monotonically increasing neural network by meta-learning from a plurality of learning target data that does not include the feature quantity related to the prediction target event. The information processing device according to claim 1 .
3. a parameter update unit that updates the parameters learned by the learning unit based on a plurality of prediction data other than the processing target data, the prediction data including the feature amount related to the event to be predicted; The information processing device according to claim 2 .
4. The function estimation unit a function calculation unit that calculates the cumulative hazard function based on the scalar value different from the cumulative hazard function output from the monotonically increasing neural network; an automatic differentiation unit that calculates the hazard function by automatically differentiating the cumulative hazard function calculated by the function calculation unit; Including, The information processing device according to claim 1 .
5. a conversion unit that converts the cumulative hazard function calculated by the function calculation unit into the survival function, The information processing device according to claim 4 .
6. The function estimation unit a function calculation unit that calculates the survival function based on the scalar value output from the monotonically increasing neural network that is different from the cumulative hazard function; an automatic differentiation unit that calculates the hazard function by automatically differentiating the survival function calculated by the function calculation unit; Including, The information processing device according to claim 1 .
7. Calculating a latent expression representing a feature amount related to a prediction target event from processing target data including the feature amount; inputting the calculated latent representation into a monotonically increasing neural network modeled to output a scalar value different from a cumulative hazard function according to a monotonically increasing function defined by the latent representation and time, and outputting the scalar value; estimating at least one of a hazard function and a survival function based on the scalar value output from the monotonically increasing neural network; A computer-implemented information processing method comprising:
8. A program for causing a computer to function as each unit included in the information processing device according to claim 1.