Learning device, learning method, attribute data generation device, attribute data generation method, and program

The attribute data generation device addresses the attribute variation issue in health data by clustering and optimizing encoder-decoder models, enabling accurate prediction of health status and disease risk.

JP2026063602APending Publication Date: 2026-04-13NEC CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
NEC CORP
Filing Date
2024-10-01
Publication Date
2026-04-13

AI Technical Summary

Technical Problem

Existing health data from regular checkups lacks variation in attributes, leading to biases and making it difficult to accurately predict future health status and estimate disease risk.

Method used

An attribute data generation device that uses a learning device comprising a variational encoder, prototype encoder, and decoder to convert and cluster attribute data into a latent space, optimizing these components based on centroid relationships and reconstruction losses to generate missing attribute data.

Benefits of technology

Enables the generation of missing attribute data, allowing for more accurate prediction of health status and disease risk estimation using existing health data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026063602000001_ABST
    Figure 2026063602000001_ABST
Patent Text Reader

Abstract

This makes it possible to generate missing attribute data using existing attribute data. [Solution] The learning device trains an attribute data generation device using an AI or machine learning model. The acquisition means acquires first and second attribute data. The first encoder converts the second attribute data into a stochastic latent variable. The second encoder projects the stochastic latent variable into a latent space and clusters it according to the category of the first attribute data, outputting centroids that indicate the centers of multiple clusters. The decoder reconstructs the second attribute data based on the projection points in the latent space. The optimization means optimizes the first encoder, the second encoder, and the decoder based on the relationship between the projection points in the latent space and the centroids of the clusters, and the relationships between multiple clusters. The results of the analysis of health status and disease risk using the generated attribute data are used to support decision-making regarding the behavior of the subject.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This disclosure relates to the generation of attribute data. [Background technology]

[0002] Techniques for estimating disease risk using machine learning models are known. For example, Patent Document 1 describes a method for classifying health data into high-risk and low-risk groups and evaluating disease risk. [Prior art documents] [Patent Documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2022-182943 [Overview of the Initiative] [Problems that the invention aims to solve]

[0004] In recent years, it has become possible to acquire large-scale, annual health data through regular health checkups and other means. However, the health data obtained through regular health checkups and similar means has limited variation in the attributes of the subjects, resulting in biases in the attributes of the data that can be acquired. In order to accurately predict future health status and estimate disease risk, it is necessary to generate health data that corresponds to the missing attributes.

[0005] One objective of this disclosure is to provide an attribute data generation device capable of generating missing attribute data using existing attribute data. [Means for solving the problem]

[0006] From one perspective of this disclosure, the learning device is An acquisition means for acquiring first attribute data and second attribute data other than the aforementioned first attribute data, A first encoder that converts the second attribute data into a stochastic latent variable, A second encoder projects the probabilistic latent variable onto a latent space according to the category of the first attribute data, clusters the resulting projection points into multiple clusters, and outputs centroids indicating the centers of the multiple clusters. A decoder that reconstructs the second attribute data based on the projection point in the latent space, An optimization means for optimizing the first encoder, the second encoder, and the decoder based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the plurality of clusters, It is equipped with.

[0007] In other respects of this disclosure, the learning methods performed by computers are: Obtain the first attribute data and the second attribute data other than the first attribute data. Using the first encoder, the second attribute data is converted into a stochastic latent variable. Using a second encoder, the probabilistic latent variable is projected onto the latent space according to the category of the first attribute data, the resulting projection points are clustered into multiple clusters, and centroids indicating the centers of the multiple clusters are output. Using the decoder, the second attribute data is reconstructed based on the projection point in the latent space. Based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the multiple clusters, the first encoder, the second encoder, and the decoder are optimized.

[0008] In yet another aspect of this disclosure, the program is Obtain the first attribute data and the second attribute data other than the first attribute data. Using the first encoder, the second attribute data is converted into a stochastic latent variable. Using a second encoder, the probabilistic latent variable is projected onto the latent space according to the category of the first attribute data, the resulting projection points are clustered into multiple clusters, and centroids indicating the centers of the multiple clusters are output. Using a decoder, based on the projection points in the latent space, reconstruct the second attribute data. Based on the relationship between the projection points in the latent space and the centroids of the clusters, and the mutual relationship between the plurality of clusters, cause the computer to execute a process of optimizing the first encoder, the second encoder, and the decoder.

[0009] In still another aspect of the present disclosure, an attribute data generation device includes: an acquisition unit that acquires a category of a first attribute; a determination unit that determines projection points belonging to a cluster corresponding to the category of the first attribute in a latent space obtained by clustering projection points obtained by projecting attribute data into a plurality of clusters; a decoder that generates second attribute data based on the projection points in the latent space; and is provided with.

[0010] In still another aspect of the present disclosure, an attribute data generation method executed by a computer includes: acquiring a category of a first attribute; determining projection points belonging to a cluster corresponding to the category of the first attribute in a latent space obtained by clustering projection points obtained by projecting attribute data into a plurality of clusters; generating second attribute data based on the projection points in the latent space.

[0011] In still another aspect of the present disclosure, a program causes a computer to execute a process of: acquiring a category of a first attribute; determining projection points belonging to a cluster corresponding to the category of the first attribute in a latent space obtained by clustering projection points obtained by projecting attribute data into a plurality of clusters; generating second attribute data based on the projection points in the latent space.

Advantages of the Invention

[0012] According to this disclosure, it is possible to generate missing attribute data using existing attribute data. [Brief explanation of the drawing]

[0013] [Figure 1] This shows the overall configuration of the attribute data generation device related to this disclosure. [Figure 2] This is a block diagram showing the hardware configuration of the attribute data generation device. [Figure 3] This is a block diagram showing the functional configuration of a learning device. [Figure 4] The latent space is schematically represented. [Figure 5] This is a flowchart of the learning process. [Figure 6] This is a block diagram showing the functional configuration of the attribute data generation device. [Figure 7] The latent space is schematically represented. [Figure 8] This is a flowchart of the attribute data generation process. [Figure 9] This block diagram shows the functional configuration of other attribute data generation devices. [Figure 10] This block diagram shows the functional configuration of other attribute data generation devices. [Figure 11] The latent space is schematically represented. [Figure 12] This is a flowchart of the other attribute data generation process. [Figure 13] The functional configuration of other learning devices is shown in the block diagram. [Figure 14] This is a flowchart of another learning process. [Figure 15] This block diagram shows the functional configuration of other attribute data generation devices. [Figure 16] This is a flowchart for processing other attribute data. [Modes for carrying out the invention]

[0014] Preferred embodiments of this disclosure will be described below with reference to the drawings. <First Embodiment> [Overall structure] Figure 1 shows the overall configuration of the attribute data generation device related to this disclosure. The attribute data generation device 100 generates new attribute data based on existing attribute data related to the health of the subject. The attribute data generation device 100 can be used to supplement missing attribute data using existing attribute data.

[0015] Specifically, the attribute data generation device 100 receives the subject's first attribute data and second attribute data as input. The second attribute data includes one or more attribute data other than the first attribute data. The first attribute data is attribute data relating to the conditions of the new attribute data to be generated. The second attribute data is attribute data having the same attributes as the generated attribute data. Hereinafter, the new attribute data generated by the attribute data generation device 100 will also be referred to as "target attribute data".

[0016] Generally, regular health checkups aim to prevent lifestyle-related diseases, and there tends to be less data available for younger people. For example, suppose that there is little blood pressure data for people in their 20s in the health data collected through regular health checkups. In this case, the attribute data generation device 100 can be used to generate blood pressure data for subjects in their 20s using blood pressure data for all age groups collected through regular health checkups. In this case, the attribute data generation device 100 uses "age" as the first attribute data corresponding to the conditions of the target attribute data to be generated, and "blood pressure" as the second attribute data, to generate target attribute data for "blood pressure". In this way, the attribute data generation device 100 can generate target attribute data that corresponds to the missing conditions by inputting the first attribute data and the second attribute data.

[0017] The attribute data generation device 100 generates and outputs the attribute data of a subject based on the first attribute data and the second attribute data, using an attribute data generation model. The attribute data generation model is an AI (Artificial Intelligence) or machine learning model that has been trained in the learning phase described later. The attribute data generation device 100 of this disclosure can generate attribute data under arbitrary conditions by utilizing the probability distribution features of each attribute data.

[0018] The attribute data generation device 100 can be suitably applied to the medical or healthcare fields. For example, the attribute data generation device 100 can be used to supplement missing health data when estimating the risk of lifestyle-related diseases based on health data obtained in regular health checkups. Furthermore, the attribute data generation device 100 can be used to predict future health data based on the subject's current health data.

[0019] [Hardware configuration] Figure 2 is a block diagram showing the hardware configuration of the attribute data generation device 100. As shown in the figure, the attribute data generation device 100 comprises a processor 11, an interface (IF) 12, a ROM (Read Only Memory) 13, a RAM (Random Access Memory) 14, a database (DB) 15, and a storage medium 16. Each component is connected to the others, for example, via a bus 18.

[0020] The processor 11 is a computer such as a CPU (Central Processing Unit) and controls the entire attribute data generation device 100 by executing a pre-prepared program. Specifically, the processor 11 can be a CPU, GPU (Graphics Processing Unit), DSP (Digital Signal Processor), MPU (Micro Processing Unit), FPU (Floating Point Number Processing Unit), PPU (Physics Processing Unit), TPU (Tensor Processing Unit), quantum processor, microcontroller, or a combination thereof.

[0021] Furthermore, the processor 11 loads the program stored in the ROM 13 or storage medium 16 into the RAM 14 and executes each process coded in the program. The processor 11 functions as part or all of the attribute data generation device 100. Specifically, the processor 11 performs the learning process and attribute data generation process described later.

[0022] IF12 transmits and receives data to and from external devices. Specifically, during the learning phase, the attribute data generation device 100 receives existing attribute data obtained from regular health checkups, etc., as learning data through IF12. During the generation phase, i.e., when generating attribute data, the attribute data generation device 100 receives the source attribute data through IF12, generates new attribute data (i.e., target attribute data), and outputs it to the external device.

[0023] ROM 13 stores various programs executed by processor 11. RAM 14 is used as working memory while processor 11 is executing various processes.

[0024] DB15 stores various algorithms, data, machine learning models, etc., that the attribute data generation device 100 uses when it performs the learning process and attribute data generation process described later.

[0025] The storage medium 16 is a non-volatile, non-temporary storage medium such as a disk-shaped recording medium or semiconductor memory. The storage medium 16 may be configured to be detachable from the attribute data generation device 100. The storage medium 16 records various programs executed by the processor 11.

[0026] In addition to the above, the attribute data generation device 100 may also be equipped with a display device such as a liquid crystal display, and an input device such as a keyboard or mouse. These display devices and input devices are used, for example, by the operator of the attribute data generation device 100.

[0027] [Learning Phase] Next, we will explain the training phase of the attribute data generation model. (Learning device) As described above, the attribute data generation device 100 estimates disease risk using a trained attribute data generation model. Figure 3 is a block diagram showing the functional configuration of the attribute data generation model learning device 20. The learning device 20 trains the attribute data generation model through prototype learning. As shown in the figure, the learning device 20 includes a variational encoder 21, a prototype encoder 22, a decoder 23, loss calculation units 24, 25, and 26, a loss integration unit 27, and an optimization unit 28.

[0028] The attribute data generation model is basically composed of a variational encoder 21 and a combination of a prototype encoder 22 and a decoder 23. Specifically, the variational encoder 21, the prototype encoder 22, and the decoder 23 are composed of neural networks. In the learning phase, the learning device 20 generates a trained attribute data generation model by optimizing this neural network using training data.

[0029] The training data will consist of attribute data related to the health of multiple individuals. Specifically, the training data will include at least one of the following: age, height, weight, gender, BMI (Body Mass Index), blood pressure, blood glucose level, smoking status and amount, and alcohol consumption status and amount.

[0030] In Figure 3, first, the first attribute data and the second attribute data are input to the learning device 20. The first attribute data is data that specifies the attributes of the prototype as conditions in prototype learning. In the following explanation, the first attribute data will be "age" as an example. The second attribute data is attribute data other than the first attribute data, i.e., one or more attribute data other than age. Note that the second attribute data includes the target attribute data generated by the attribute data generation device 100. That is, when generating data for the attribute "blood pressure" using the attribute data generation device 100, the second attribute data will include the "blood pressure" data.

[0031] First, the second attribute data x is input to the variational encoder 21. The variational encoder 21 projects the input attribute data x into a stochastic latent space. The stochastic latent space is a low-dimensional latent space to which high-dimensional input data is mapped, and the latent variables in that latent space follow a Gaussian distribution. That is, the variational encoder 21 converts the attribute data x into latent variables z in the stochastic latent space and outputs them to the prototype encoder 22 and the loss calculation unit 26. The latent variables in the stochastic latent space are also called "stochastic latent variables".

[0032] The prototype encoder 22 receives the first attribute data as input, along with the latent variable z from the variational encoder 21. The prototype encoder 22 performs prototype learning using the attributes specified by the first attribute data. Specifically, the prototype encoder 22 projects the input latent variable z into the latent space. Figure 4 schematically shows the latent space LS used by the prototype encoder 22. Hereafter, to distinguish it from the probabilistic latent space used by the variational encoder 21, the latent space LS used by the prototype encoder 22 will be conveniently referred to as the "prototype latent space." The "latent space" is an abstract space for representing the information contained in the original data in fewer dimensions, and in the latent space, the essential features and patterns of the data are represented in fewer dimensions. "Projecting into the latent space" means converting the original data into points on the latent space, and this is also called "mapping to the latent space." Hereafter, points on the latent space obtained by projecting certain data into the latent space will also be called "projection points."

[0033] The prototype encoder 22 projects the second attribute data of multiple individuals included in the training data into the latent space LS. This maps numerous projection points onto the latent space LS. In Figure 4, the position of a projection point in the latent space LS is represented by "p," and the corresponding feature (also called a "latent vector," "feature vector," or simply "vector") is represented by "q." In the example in Figure 4, attribute data d1 is projected onto projection point p1, and the corresponding feature is q1. Similarly, attribute data di is projected onto projection point pi, and the corresponding feature is qi.

[0034] The prototype encoder 22 projects multiple second attribute data into the latent space LS according to the first attribute data (i.e., age), and clusters the resulting projection points. Specifically, the prototype encoder 22 clusters the projection points according to the age category, which is the first attribute data, and generates clusters for each age category. The age categories can be set arbitrarily; for example, they could be categories for every 1 year of age, or every 5 years of age. In the example in Figure 4, the age categories are set to every 1 year of age, and the variational encoder 21 generates clusters for each age, such as "60 years old," "61 years old," etc. These clusters are also called "prototypes," and the centroid of each cluster (prototype) is called the "centroid." In this way, the prototype encoder 22 generates clusters according to the age category based on the age input as the first attribute data.

[0035] The prototype encoder 22 clusters multiple projection points and then outputs the centroid feature (hereinafter referred to as the "centroid vector") Vc of the centroid of each cluster. The centroid vector Vc is expressed by the following formula. Vc = [μ1, ..., μi, ..., μC] (1) Note that "μ" represents the centroid vector of each cluster, and "C" represents the number of clusters.

[0036] Furthermore, the prototype encoder 22 outputs the feature quantities (hereinafter referred to as "projection point vectors") Vq for each projection point to the decoder 23 and the loss calculation unit 24. The projection point vectors Vq are expressed as follows, where "N" is the number of projection points. Vq=[q1,...,qi,...,qN] (2)

[0037] The decoder 23 generates attribute data x' based on the input projection point vector Vq. In other words, the decoder 23 generates attribute data x' by reconstructing the input second attribute data x based on the projection point vector Vq, and outputs it to the loss calculation unit 25.

[0038] The loss calculation unit 24 uses the input centroid vector Vc and projection point vector Vq to calculate the first loss L using the following equation (3): prototypical The result is calculated and output to the loss integration unit 27.

[0039]

number

[0040] In equation (3), the function d(q,μ) represents the distance between the projection point vector q and the centroid vector μ. Therefore, the denominator in the first term of equation (3) represents the sum of the distances between a given projection point and the centroids of each cluster. The numerator in the first term represents the distance between that projection point and the centroid of the cluster to which that projection point belongs. Therefore, the first term becomes smaller the closer the projection point belonging to a cluster is to the centroid of that cluster. On the other hand, the second term of equation (3) represents the sum of the reciprocals of the distances between individual centroids. Therefore, the second term becomes smaller the farther apart the individual centroids are. For this reason, the first loss L prototypical The first loss L is small as the projection points belonging to a cluster are closer to the centroid of that cluster, and also as the centroids are farther from each other. prototypical By using this method, the learning device 20 learns in the latent space such that the projection points within a cluster become closer to the centroid of that cluster, and the centroids of each cluster become farther apart from each other.

[0041] The loss calculation unit 25 calculates the reconstruction loss between the attribute data x' reconstructed by the decoder 23 and the attribute data x input to the variational encoder 21 as the second loss L reconstruction The calculation is performed and output to the loss integration unit 27. Note that the reconstruction loss L reconstruction For this purpose, squared error or cross-entropy can be used.

[0042] The loss calculation unit 26 calculates the KL (Kullback-Leibler) divergence between the latent variable z output by the variational encoder 21 and the Gaussian distribution as a third loss L.KLD It is calculated as and output to the loss integration unit 27. The KL divergence indicates the similarity between two probability distributions. The third loss L KLD is used to make the latent variable z output by the variational encoder 21 approach a Gaussian distribution.

[0043] The loss integration unit 27 calculates a weighted sum of the first loss L prototypical and the second loss L reconstruction and the third loss L KLD and outputs it as the total loss L total to the optimization unit 28. <确定]]

[0044]

Equation

[0045] The optimization unit 28 optimizes the variational encoder 21, the prototype encoder 22, and the decoder 23 based on the total loss L total . Specifically, the optimization unit 28 optimizes the parameters of the neural network that constitutes the variational encoder 21, the prototype encoder 22, and the decoder 23 so that the total loss L total becomes smaller. Here, as described above, since the total loss L total is a weighted sum of the first to third losses, the optimization unit 28 makes (A) the projection points within a cluster closer to the centroid of that cluster and the centroids of each cluster farther apart in the latent space, (B) the reconstructed attribute data x' closer to the original attribute data x, and (C) the latent variable output by the variational encoder 21 approach a Gaussian distribution for optimization.

[0046] In this way, the learning device 20 generates an attribute data generation model that reconstructs the second attribute data on the condition of the input first attribute data.

[0047] (Learning process) Next, the learning process performed by the learning device 20 described above will be explained. Figure 5 is a flowchart of the learning process. This process is realized when the processor 11 shown in Figure 2 executes a pre-prepared program and operates as the components shown in Figure 3.

[0048] First, the learning device 20 acquires the first and second attribute data (step S11). Next, the variational encoder 21 converts the second attribute data into a latent variable z in the stochastic latent space (step S12). Next, the prototype encoder 22 projects the latent variable z onto the prototype latent space LS and clusters the resulting projection points (step S13). Next, the prototype encoder 22 outputs the centroid vector for each cluster and the projection point vector for each projection point (step S14). Next, the decoder 23 reconstructs the second attribute data based on the projection point vector to generate attribute data x' (step S15).

[0049] Next, the loss calculation unit 24 calculates the first loss L based on the centroid vector and the projection point vector. prototypical The second loss L is calculated (step S16). The loss calculation unit 25 also calculates the second loss L based on the original attribute data x and the reconstructed attribute data x'. reconstruction The calculation is performed (step S17). The loss calculation unit 26 also calculates the third loss L using the latent variable z and a Gaussian distribution. KLD Calculate (step S18). Note that steps S16 to S18 can be performed in any order, and may be performed simultaneously.

[0050] Next, the loss integration unit 27 integrates the first to third losses to arrive at the total loss L total The optimization unit 28 then calculates the total loss L. total Based on this, the variational encoder 21, prototype encoder 22, and decoder 23 are optimized (step S20).

[0051] Next, the learning device 20 determines whether predetermined learning termination conditions have been met (step S21). Examples of learning termination conditions include using a predetermined number of attribute data prepared as learning data, the total loss falling below a predetermined value, and the total loss converging. If the learning termination conditions are not met (step S21: No), the process returns to step S11. On the other hand, if the learning termination conditions are met (step S21: Yes), the learning process ends.

[0052] [Generation Phase] Next, the generation phase by the attribute data generation device will be described. In the generation phase, the attribute data generation device 100 uses the attribute data of a given subject to generate attribute data related to that subject's health.

[0053] (First embodiment) Figure 6 is a block diagram showing the functional configuration of an attribute data generation device according to the first embodiment. The attribute data generation device 100a comprises a vector calculator 31 and a decoder 23 optimized in the learning phase.

[0054] The attribute data generation device 100a receives a first attribute and an arbitrary vector as input. The first attribute corresponds to the conditions for generating attribute data. In the following explanation, the first attribute data will be referred to as "age".

[0055] At the end of the learning phase, the centroid vector Vc in the latent space LS used by the prototype encoder 22 is stored in a memory unit such as DB15. Specifically, for the latent space LS shown in Figure 4, clusters are generated for the age category of 60 to 63 years old, and the centroid vector Vc corresponding to each age category is stored in DB15.

[0056] The vector calculator 31 obtains the centroid vector Vc corresponding to the input first attribute (age) from DB15. Then, the vector calculator 31 generates a projection point vector in the prototype latent space using the centroid vector Vc and an arbitrary input vector v1. Note that the arbitrary vector v1 is a vector with the same number of dimensions as the centroid vector Vc.

[0057] Figure 7(A) is a conceptual diagram of the prototype latent space in the first embodiment. Suppose the age category "60 years old" is input as the first attribute. The vector calculator 31 refers to DB15 to obtain the centroid vector Vc1 of cluster CL1 corresponding to 60 years old, and uses the centroid vector Vc1 and an arbitrary vector v1 to generate a projection point vector q1a corresponding to the projection point p1. Then, the vector calculator 31 outputs the projection point vector q1a to the decoder 23. Based on the projection point vector q1a, the decoder 23 generates attribute data x1 corresponding to an arbitrary vector v1.

[0058] For example, if learning is performed using a second attribute data including "blood pressure" during the learning phase, the attribute data generator 100a can generate attribute data x1 for "blood pressure at age 60" corresponding to any vector v1. Also, if the age category "62 years old" is input as the first attribute, the attribute data generator 100a can generate attribute data x1 for "blood pressure at age 62" corresponding to any vector v1. On the other hand, if the age category "60 years old" is input as the first attribute, and a vector v1' different from vector v1 is input as an arbitrary vector, the attribute data generator 100a can generate attribute data x1' for "blood pressure at age 60" corresponding to a vector v1' different from vector v1.

[0059] Figure 8 is a flowchart of the attribute data generation process according to the first embodiment. This process is realized when the processor 11 shown in Figure 2 executes a pre-prepared program and operates as the attribute data generation device 100a shown in Figure 6.

[0060] First, the attribute data generation device 100a obtains a first attribute and an arbitrary vector (step S31). Next, the vector calculator 31 obtains a centroid vector corresponding to the first attribute from DB 15 (step S32), and generates a projection point vector in the latent space LS from the centroid vector and the arbitrary vector (step S33). Next, the decoder 23 generates attribute data corresponding to the first attribute based on the projection point vector (step S34). Then, the attribute data generation process is completed.

[0061] Next, an attribute data generation device according to a modified example of the first embodiment will be described. The attribute data generation device 100a of the first embodiment described above generates attribute data based on one attribute (age). Alternatively, attribute data may be generated based on multiple attributes.

[0062] Figure 9 is a block diagram showing the configuration of an attribute data generation device 100b that uses two attributes as conditions. As shown in the figure, the attribute data generation device 100b comprises two vector calculators 31a and 31b, an integration unit 32, and a decoder 23. In this case, during the learning phase, in addition to the latent space being prototype-learned for age categories (60 years old, 61 years old, ...) as shown in Figure 7(A), the latent space is also prototype-learned for weight categories (50 kg, 60 kg, ...) as shown in Figure 7(B). The centroid vector Vc of the prototype in each latent space is then stored in DB15.

[0063] The vector calculator 31a receives the age category as attribute data, and also an arbitrary vector v1 as input. Let's assume that "60 years old" is input as the age category. As shown in Figure 7(A), the vector calculator 31a uses the centroid vector Vc1 of the 60-year-old cluster and the arbitrary vector v1 to generate the projection point vector q1a at projection point p1 and outputs it to the integration unit 32.

[0064] The vector calculator 31b receives the weight category as attribute data, and also an arbitrary vector v2. Let's assume that "60kg" is input as the weight category. As shown in Figure 7(B), the vector calculator 31b uses the centroid vector Vc2 of the 60kg cluster and the arbitrary vector v2 to generate the projection point vector q2a at projection point p2 and outputs it to the integration unit 32.

[0065] The integration unit 32 integrates the projection point vectors q1a and q2a to generate vector qx and outputs it to the decoder 23. The integration unit 32 may, for example, integrate vectors q1 and q2 using an attention mechanism, or it may use the average value of vectors q1 and q2 as vector qx, or it may generate vector qx by concatenating vectors q1 and q2.

[0066] The decoder 23 generates attribute data x2 corresponding to the two input attributes, namely "age 60 years old, weight 60 kg," based on the input vector qx. If, for example, the learning phase was performed using a second attribute data including "blood pressure," the attribute data generator 100b can generate blood pressure data corresponding to "age 60 years old, weight 60 kg."

[0067] (Second example) Figure 10 is a block diagram showing the functional configuration of an attribute data generation device according to the second embodiment. The attribute data generation device 100c comprises a variational encoder 21, a prototype encoder 22, and a decoder 23. The variational encoder 21, the prototype encoder 22, and the decoder 23 are all optimized during the learning phase.

[0068] The attribute data generator 100c receives a first attribute and a second attribute data x as input. The first attribute corresponds to the conditions for generating the attribute data. In the following explanation, the first attribute will be "age". In this example, the first attribute will be the current age Ag1 and the predicted age (future age) Ag2. Note that for age Ag2, the future age itself may be entered, or the number of years from the current age (N years later) may be entered. In the following example, the current age Ag1 will be "60 years old" and the future age Ag2 will be "61 years old". The second attribute data x is the data for the attribute to be predicted, and in this example, it will include "blood pressure".

[0069] The variational encoder 21 converts the input attribute data x into a latent variable z in a stochastic latent space and outputs it to the prototype encoder 22. The prototype encoder 22 receives the first attributes Ag1 (60 years old) and Ag2 (61 years old) as input. Based on the first attributes Ag1 and Ag2 and the latent variable z input from the variational encoder 21, the prototype encoder 22 generates a projection point vector corresponding to the desired age of 61 in the prototype latent space LS learned during the learning phase.

[0070] Figure 11 schematically shows the latent space LS of the prototype encoder 22. First, the prototype encoder 22 determines the projection point p3 of the latent variable z in the cluster of 60-year-olds in the latent space LS, based on the attribute Ag1 (60 years old) and the latent variable z. Next, the prototype encoder 22 determines the projection point p4 corresponding to the future age Ag2, i.e., 61 years old, based on the projection point p3 corresponding to the current age Ag1.

[0071] Specifically, the prototype encoder 22 moves the projection point p3 in cluster CL1, which corresponds to the current age Ag1 (60 years old), to cluster CL2, which corresponds to the future age Ag2 (61 years old), and sets it as projection point p4 corresponding to the future age Ag2. At this time, the variational encoder 21 generates projection point p4 such that the positional relationship between projection point p3 and centroid C1 in cluster CL1 (60 years old) matches the positional relationship between projection point p4 and centroid C2 in cluster CL2 (61 years old) after the move. In other words, the prototype encoder 22 generates projection point p4 such that the vector V3 from projection point p3 to centroid C1 in cluster CL1 (60 years old) matches the vector V4 from projection point p4 to centroid C2 in cluster CL2 (61 years old). As a result, projection point p4 becomes a projection point that represents the features of the subject when only the age changes to 61 years old, while other attributes remain unchanged. The prototype encoder 22 then outputs the projection point vector q4c of the determined projection point p4 to the decoder 23.

[0072] Based on the input projection vector q4c, the decoder 23 generates a second attribute data x4 corresponding to the age Ag2 to be predicted, i.e., "blood pressure at age 61".

[0073] Thus, according to the attribute data generation device 100c of the second embodiment, for the first attribute "age," the current attribute category "60 years old" and the attribute category to be predicted, "61 years old," are specified, and the current attribute data x including the attribute to be predicted, "blood pressure," can be input to generate attribute data for "blood pressure" at "61 years old." In this case, the attribute data generation device 100c can output a message to the subject, for example, "It is predicted that your blood pressure will be x4 in one year (at age 61)."

[0074] Figure 12 is a flowchart of the attribute data generation process according to the second embodiment. This process is realized when the processor 11 shown in Figure 2 executes a pre-prepared program and operates as the attribute data generation device 100c shown in Figure 10.

[0075] First, the attribute data generation device 100c acquires the first attributes Ag1 and Ag2 and the second attribute data x (step S41). Next, the variational encoder 21 converts the second attribute data x into a latent variable z in the probabilistic latent space (step S42). Next, the prototype encoder 22 projects the latent variable z onto the prototype latent space LS (step S43), moves the projection point from cluster CL1 corresponding to the current attribute Ag1 to cluster CL2 corresponding to the attribute Ag2 to be predicted, and obtains a projection point vector corresponding to the attribute Ag2 to be predicted (step S44). Next, the decoder 23 generates attribute data corresponding to the second attribute based on the obtained projection point vector (step S45). Then, the attribute data generation process is completed.

[0076] In the example above, the current attribute data x is used as the second attribute data (blood pressure). Instead, by using attribute data under a hypothetical state as the second attribute data, it is possible to predict how future attribute data will change under that hypothetical state.

[0077] For example, in the attribute data generation device 100c shown in Figure 10, the current age Ag1 and the age to be predicted Ag2 are input as the first attribute (age). Furthermore, BMI is used as the second attribute, but not the current BMI, but rather attribute data x that includes the BMI assumed to be lower than the current BMI, i.e., a BMI lower than the actual BMI.

[0078] In this case as well, the attribute data generator 100c operates in the same manner as described earlier. However, since a second set of attribute data x is input assuming a decrease in BMI, the attribute data generator 100c outputs the attribute data x4 for one year later in that case. In this way, the attribute data generator 100c can predict the health data one year later assuming a decrease in BMI.

[0079] [Differentiation] In the first embodiment described above, age is used as the first attribute, but the application of this disclosure is not limited to this. The first and second attributes can be set arbitrarily. For example, if weight or BMI is used as the first attribute, it is possible to predict other health data when weight or BMI increases.

[0080] Furthermore, while the first embodiment described above applies the attribute data generation device to the generation of attribute data relating to human health, the application of this disclosure is not limited to this. For example, this disclosure can also be applied to the generation of attribute data detected and collected in the inspection and diagnosis of machines and devices.

[0081] <Second Embodiment> Figure 13 is a block diagram showing the functional configuration of the learning device according to the second embodiment. The learning device 70 comprises an acquisition means 71, a first encoder 72, a second encoder 73, a decoder 74, and an optimization means 75.

[0082] Figure 14 is a flowchart of the processing performed by the learning device 70. The acquisition means 71 acquires first attribute data and second attribute data other than the first attribute data (step S71). The first encoder 72 converts the second attribute data into a stochastic latent variable (step S72). The second encoder 73 projects the stochastic latent variable into a latent space according to the category of the first attribute data, clusters the obtained projection points into a plurality of clusters, and outputs centroids indicating the centers of the plurality of clusters (step S73). The decoder 74 reconstructs the second attribute data based on the projection points in the latent space (step S74). The optimization means 75 optimizes the first encoder, the second encoder, and the decoder based on the relationship between the projection points in the latent space and the centroids of the clusters, and the relationships between the plurality of clusters (step S75).

[0083] According to the learning device 70 of the second embodiment, it is possible to learn an attribute data generation model that can generate missing attribute data using existing attribute data.

[0084] <Third Embodiment> Figure 15 is a block diagram showing the functional configuration of the attribute data generation device according to the third embodiment. The attribute data generation device 80 comprises an acquisition means 81, a determination means 82, and a decoder 83.

[0085] Figure 16 is a flowchart of the processing performed by the attribute data generation device 80. The acquisition means 81 acquires the category of the first attribute (step S81). The determination means 82 determines the projection points belonging to the cluster corresponding to the category of the first attribute in the latent space obtained by clustering the projection points onto which the attribute data has been projected into a plurality of clusters (step S82). The decoder 83 generates second attribute data based on the projection points in the latent space (step S83).

[0086] According to the attribute data generation device 80 of the third embodiment, it is possible to generate missing attribute data using existing attribute data.

[0087] Some or all of the above embodiments may also be described as follows, but are not limited to the following:

[0088] (Note 1) An acquisition means for acquiring first attribute data and second attribute data other than the aforementioned first attribute data, A first encoder that converts the second attribute data into a stochastic latent variable, A second encoder projects the probabilistic latent variable onto a latent space according to the category of the first attribute data, clusters the resulting projection points into multiple clusters, and outputs centroids indicating the centers of the multiple clusters. A decoder that reconstructs the second attribute data based on the projection point in the latent space, An optimization means for optimizing the first encoder, the second encoder, and the decoder based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the plurality of clusters, A learning device equipped with the following features.

[0089] (Note 2) The learning device described in Appendix 1, wherein the first attribute data and the second attribute data are attribute data related to health.

[0090] (Note 3) A learning method performed by a computer, Obtain the first attribute data and the second attribute data other than the first attribute data. Using the first encoder, the second attribute data is converted into a stochastic latent variable. Using a second encoder, the probabilistic latent variable is projected onto the latent space according to the category of the first attribute data, the resulting projection points are clustered into multiple clusters, and centroids indicating the centers of the multiple clusters are output. Using the decoder, the second attribute data is reconstructed based on the projection point in the latent space. A learning method for optimizing the first encoder, the second encoder, and the decoder based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the multiple clusters.

[0091] (Note 4) Obtain the first attribute data and the second attribute data other than the first attribute data. Using the first encoder, the second attribute data is converted into a stochastic latent variable. Using a second encoder, the probabilistic latent variable is projected onto the latent space according to the category of the first attribute data, the resulting projection points are clustered into multiple clusters, and centroids indicating the centers of the multiple clusters are output. Using the decoder, the second attribute data is reconstructed based on the projection point in the latent space. A program that causes a computer to perform a process to optimize the first encoder, the second encoder, and the decoder based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the multiple clusters.

[0092] (Note 5) A means for obtaining the category of the first attribute, A determination means for determining the projection points belonging to the cluster corresponding to the category of the first attribute in a latent space obtained by clustering projection points obtained by projecting attribute data into multiple clusters, A decoder that generates second attribute data based on the projection point in the latent space, An attribute data generation device equipped with the following features.

[0093] (Note 6) The attribute data generation device according to Appendix 5, wherein the determination means acquires an arbitrary vector and determines the projection point based on the relationship between the arbitrary vector in the latent space and the centroid of the cluster corresponding to the category of the first attribute.

[0094] (Note 7) The acquisition means further acquires second attribute data having attributes other than the first attribute, The aforementioned determination means is A first encoder that converts the second attribute data into a stochastic latent variable, A second encoder projects the probabilistic latent variable onto the latent space according to the category of the first attribute, and determines the projection point of the second attribute data in the latent space; An attribute data generation device as described in Appendix 5, comprising the above.

[0095] (Note 8) The aforementioned first attribute category includes the subject's current age and future age, The attribute data generation device described in Appendix 7, wherein the determination means moves the projection point corresponding to the current age in the latent space to a position corresponding to the future age, thereby determining the projection point corresponding to the future age.

[0096] (Note 9) A method for generating attribute data performed by a computer, Get the category of the first attribute, In the latent space obtained by clustering the projection points obtained by projecting attribute data into multiple clusters, the projection points belonging to the cluster corresponding to the category of the first attribute are determined. An attribute data generation method for generating second attribute data based on the projection point in the latent space.

[0097] (Note 10) Get the category of the first attribute, In the latent space obtained by clustering the projection points obtained by projecting attribute data into multiple clusters, the projection points belonging to the cluster corresponding to the category of the first attribute are determined. A program that causes a computer to perform a process of generating second attribute data based on the projection point in the latent space.

[0098] Although the present disclosure has been described above with reference to embodiments and examples, the present disclosure is not limited to the above embodiments and examples. Various modifications to the structure and details of the present disclosure can be understood by those skilled in the art within the scope of the present disclosure. [Explanation of symbols]

[0099] 11 processors 20 Learning device 21 Variational Encoder 22 Prototype Encoders 23 Decoder 24, 25, 26 Loss calculation section 27 Loss integration section 28 Optimization Unit 100, 100a, 100b, 100c Attribute Data Generator

Claims

1. An acquisition means for acquiring first attribute data and second attribute data other than the first attribute data, A first encoder that converts the second attribute data into a stochastic latent variable, A second encoder projects the probabilistic latent variable onto a latent space according to the category of the first attribute data, clusters the resulting projection points into multiple clusters, and outputs centroids indicating the centers of the multiple clusters. A decoder that reconstructs the second attribute data based on the projection point in the latent space, An optimization means for optimizing the first encoder, the second encoder, and the decoder based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the multiple clusters, A learning device equipped with the following features.

2. The learning device according to claim 1, wherein the first attribute data and the second attribute data are attribute data relating to health.

3. A learning method performed by a computer, Obtain the first attribute data and the second attribute data other than the first attribute data. Using the first encoder, the second attribute data is converted into a stochastic latent variable. Using a second encoder, the probabilistic latent variable is projected onto the latent space according to the category of the first attribute data, the resulting projection points are clustered into multiple clusters, and centroids indicating the centers of the multiple clusters are output. Using the decoder, the second attribute data is reconstructed based on the projection point in the latent space. A learning method for optimizing the first encoder, the second encoder, and the decoder based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the multiple clusters.

4. Obtain the first attribute data and the second attribute data other than the first attribute data. Using the first encoder, the second attribute data is converted into a stochastic latent variable. Using a second encoder, the probabilistic latent variable is projected onto the latent space according to the category of the first attribute data, the resulting projection points are clustered into multiple clusters, and centroids indicating the centers of the multiple clusters are output. Using the decoder, the second attribute data is reconstructed based on the projection point in the latent space. A program that causes a computer to perform a process to optimize the first encoder, the second encoder, and the decoder based on the relationship between the projection point in the latent space and the centroid of the cluster, and the relationships between the multiple clusters.

5. A means for obtaining the category of the first attribute, A determination means for determining the projection points belonging to the cluster corresponding to the category of the first attribute in a latent space obtained by clustering projection points obtained by projecting attribute data into multiple clusters, A decoder that generates second attribute data based on the projection point in the latent space, An attribute data generation device equipped with the following features.

6. The attribute data generation apparatus according to claim 5, wherein the determination means acquires an arbitrary vector and determines the projection point based on the relationship between the arbitrary vector in the latent space and the centroid of the cluster corresponding to the category of the first attribute.

7. The acquisition means further acquires second attribute data having attributes other than the first attribute, The aforementioned determination means is A first encoder that converts the second attribute data into a stochastic latent variable, A second encoder projects the probabilistic latent variable onto the latent space according to the category of the first attribute, and determines the projection point of the second attribute data in the latent space. The attribute data generation device according to claim 5, comprising:

8. The aforementioned first attribute category includes the subject's current age and future age, The attribute data generation device according to claim 7, wherein the determination means moves the projection point corresponding to the current age in the latent space to a position corresponding to the future age, thereby determining the projection point corresponding to the future age.

9. A method for generating attribute data performed by a computer, Get the category of the first attribute, In the latent space obtained by clustering the projection points obtained by projecting attribute data into multiple clusters, the projection points belonging to the cluster corresponding to the category of the first attribute are determined. An attribute data generation method for generating second attribute data based on the projection point in the latent space.

10. Get the category of the first attribute, In the latent space obtained by clustering the projection points obtained by projecting attribute data into multiple clusters, the projection points belonging to the cluster corresponding to the category of the first attribute are determined. A program that causes a computer to perform a process of generating second attribute data based on the projection point in the latent space.

Citation Information

Patent Citations

  • Disease risk evaluation method, disease risk evaluation system, and health information processing device

    JP2022182943A