Data generation device and data generation method

The data generation device generates pseudo data based on field-collected data to enhance training data accuracy for classification models, addressing the limitations of existing methods by reducing costs and improving model performance.

WO2025253737A1PCT designated stage Publication Date: 2025-12-11HITACHI HIGH TECH CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/009475
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-03
Filing Date
2025-03-12
Publication Date
2025-12-11

AI Technical Summary

Technical Problem

Existing methods for collecting training data for machine learning models, such as those described in Patent Documents 1 and 2, are costly, limited in versatility, and do not effectively improve data accuracy by considering data distribution or label information, particularly in fields like manufacturing and healthcare where data collection is challenging.

Method used

A data generation device and method that generates pseudo data by connecting vectors of features with different labels in a vector space, correcting the data to satisfy constraints, and evaluating its accuracy to enhance the training data for classification models.

Benefits of technology

This approach allows for the generation of training data that improves the accuracy of classification models by reducing costs and ensuring the data reflects real-world conditions, without the need for extensive field data collection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025009475_11122025_PF_FP_ABST
    Figure JP2025009475_11122025_PF_FP_ABST
Patent Text Reader

Abstract

A data generation device (100) comprises a pseudo-data generation unit (113) that selects two pieces of data with different labels from a dataset representing a collection of data in which each piece of data is a feature vector given a label indicating a class to which said feature vector belongs, and generates a point on a line segment connecting the two pieces of data in a vector space as pseudo-data. The data generation device (100) may further comprise a pseudo-data correction unit (114) that modifies a feature of the pseudo-data such that a deviation, which is the degree to which said feature deviates from a constraint condition on a feature of data, is not more than a prescribed value.
Need to check novelty before this filing date? Find Prior Art

Description

Data generation device and data generation method

[0001] The present invention relates to a data generation device and a data generation method for generating training data for a machine learning model.

[0002] The spread of IoT and the democratization of AI are making it easier to analyze and utilize various types of data. To obtain highly accurate predictive models by applying AI / machine learning technologies to data obtained from the real world, such as quality prediction analysis in manufacturing and disease differentiation in the medical field, it is necessary to acquire a large amount of data (training data) for building the predictive model and improve the accuracy and robustness of the predictive model. However, in reality, it is often difficult to obtain data on the manufacturing process or patient behavior that is the target of prediction.

[0003] For example, in the manufacturing industry, collecting data from manufacturing equipment requires new capital investment or modifications. In order to verify the cost-effectiveness of the investment, data must be collected manually from the current equipment and its effectiveness verified. However, manual data collection is expensive and the collection period is short, resulting in problems such as a small amount of collected data. Furthermore, in the medical field, it is difficult to collect large amounts of data on patient behavior, considering the burden it places on patients.

[0004] Patent Documents 1 and 2 describe inventions related to data collection in machine learning. In the invention described in Patent Document 1, a classification model (machine learning model, prediction model) called a support vector machine is constructed from a small amount of data. Next, the number of data of each label is counted for data near the classification boundary, and the necessary data is acquired from the field by the user and added to the classification model, thereby improving prediction accuracy. In the invention described in Patent Document 2, to address ambiguity in the prediction results of the classification model, different data is reacquired from the same source as the acquired data, and this data is used to reclassify using the classification model.

[0005] JP 2009-251810 A JP 2017-151933 A

[0006] However, the method of Patent Document 1 requires collecting data from the field to increase the amount of data, which incurs costs for estimating the effects of capital investment and human investment. Furthermore, this method is limited to support vector machines. Therefore, it relies on the predictive accuracy of the support vector machine itself as a machine learning model, resulting in low versatility.

[0007] The method of Patent Document 2 merely augments data by re-collecting data from the field. Furthermore, the method does not take into consideration the data distribution or label information of the target data, and does not acquire data that improves the accuracy of the classification model. Regarding the acquisition of training data for machine learning models, it is desirable to increase existing training data using some method, rather than collecting actual data from the field.

[0008] The present invention has been made in view of the above background, and an object of the present invention is to provide a data generation device and a data generation method that increase learning data based on data collected in the field.

[0009] In order to solve the above-mentioned problems, the data generation device of the present invention includes a pseudo data generation unit that takes vectors of features to which labels indicating the classes to which they belong as data, selects two pieces of data with different labels from a data group that indicates a collection of the data, and generates points on a line segment connecting the two pieces of data in a vector space, which is the space of the vectors, as pseudo data for the data group.

[0010] According to the present invention, it is possible to provide a data generation device and a data generation method for increasing training data based on data collected in the field. Problems, configurations, and effects other than those described above will become clear from the description of the following embodiments.

[0011] FIG. 1 is a functional block diagram of a data generation device according to the present embodiment. FIG. 2 is a data configuration diagram of data stored in a learning data repository according to the present embodiment. FIG. 3 is a data configuration diagram of pseudo data stored in a pseudo data repository according to the present embodiment. FIG. 4 is a data configuration diagram of a parameter database according to the present embodiment. FIG. 5 is a data configuration diagram of a data constraint condition database according to the present embodiment. FIG. 6 is a graph of the deviation degree of a right elbow angle according to the present embodiment. FIG. 7 is a graph of the deviation degree of a right elbow angle according to the present embodiment. FIG. 8 is a flowchart of a data generation process according to the present embodiment. FIG. 9 is a flowchart of a boundary area identification process according to the present embodiment. FIG. 10 is a flowchart of a pseudo data generation process according to the present embodiment. FIG. 11 is a flowchart of a pseudo data correction process according to the present embodiment. FIG. 12 is a flowchart of a pseudo data evaluation process according to the present embodiment. FIG. 13 is a screen configuration diagram of a pseudo data evaluation screen according to the present embodiment. FIG. 14 is a screen configuration diagram of a pseudo data display screen according to the present embodiment. FIG. 15 is a hardware configuration diagram showing an example of a computer that realizes the functions of the data generation device according to the above-mentioned embodiment.

[0012] <<Outline of Data Generating Device>> A data generating device in a mode (embodiment) for carrying out the present invention will be described below. The data generating device generates training data for a classification model. The classification model is a machine learning model that classifies data indicating the shape, state, and movement of equipment, environments, people, etc. into classes such as normal and abnormal. The classification model can also be said to be an estimation model / prediction model that estimates / predicts the class of data. Note that the data is considered to be a vector of numerical values ​​indicating feature amounts. In the following description, the data is assumed to be time-series data of coordinates indicating the positions of a person's joints, and the labels are "healthy" or "abnormal."

[0013] The data generating device generates pseudo data, which serves as training data, based on data (actual data) acquired on-site. More specifically, the data generating device generates pseudo data that divides the data between the "normal" and "abnormal" classes. The data generating device then corrects the data (feature values) so that the pseudo data satisfies certain constraints. The data generating device then evaluates the accuracy of the classification model generated using the training data to which the corrected data has been added. The data generating device also displays the data (actual data) and pseudo data in the data space, along with iso-precision lines, which are contours of accuracy. Details of the iso-precision lines and the certain constraints will be described later.

[0014] Such a data generation device can generate pseudo data to be used as training data based on data (actual data) acquired in the field, thereby reducing the cost of preparing training data. By setting constraints based on the actual data, pseudo data that reflects the real world can be generated, making it possible to prepare training data that contributes to improving the accuracy of the classification model.

[0015] <Configuration of Data Generating Device> Fig. 1 is a functional block diagram of a data generating device 100 according to this embodiment. The data generating device 100 is a computer, and includes a control unit 110, a storage unit 120, and an input / output unit 180. User interface devices such as a display, keyboard, and mouse are connected to the input / output unit 180. The input / output unit 180 may include a communication device, enabling data transmission and reception with other devices. Furthermore, a media drive may be connected to the input / output unit 180, enabling data exchange using a recording medium.

[0016] <Data Generating Device: Storage Unit> The storage unit 120 is configured to include storage devices such as a read-only memory (ROM), a random access memory (RAM), and a solid-state drive (SSD). The storage unit 120 stores a training data repository 130, an evaluation data repository 139, a pseudo data repository 140, a model database 150, a parameter database 160, a data constraint condition database 170, and a program 128. The program 128 includes a description of the processing of the functional units constituting the control unit 110, which will be described later. Note that the various storage contents of the storage unit 120 may be stored in an external storage device, such as a cloud server, and read as needed.

[0017] <Storage Unit: Learning Data Repository / Evaluation Data Repository> Figure 2 is a data configuration diagram of data 131 stored in the learning data repository 130 according to this embodiment. The data 131 is actual data acquired in the field and serves as learning data (training data) for the classification model. The data 131 shown in Figure 2 is time-series data of coordinates indicating the positions of human joints, such as the head and neck, with identification information "TD0032" and a label (classification label) of "healthy." The evaluation data repository 139 has the same data configuration as the data 131 and stores data used to evaluate the accuracy of the classification model.

[0018] <Storage Unit: Pseudo Data Repository> Fig. 3 is a data structure diagram of pseudo data 141 stored in the pseudo data repository 140 according to this embodiment. The pseudo data 141 is data generated by a pseudo data generation unit 113 (described later) and has the same data structure as the data 131. Note that when the pseudo data 141 is generated, no label has been assigned, and as shown in Fig. 3, it is marked "N / A" (Not Applicable).

[0019] <Storage Unit: Model Database> Returning to FIG. 1 , the description of the storage unit 120 will be continued. The model database 150 stores classification models generated by the model generation unit 111, which will be described later. The classification models are machine learning models, and the explanatory variables are time-series data of coordinates indicating the positions of human joints (see FIG. 2 ), and the time-series data is classified into "healthy" and "abnormal." The model database 150 may store learning data and accuracy (classification accuracy) used when generating the classification models, in association with the classification models.

[0020] 4 is a data configuration diagram of the parameter database 160 according to this embodiment. The parameter database 160 stores parameters related to pseudo data generation in addition to the configuration of the classification model. The parameters are set as appropriate by the user of the data generating device 100.

[0021] <Storage Unit: Data Constraint Database> FIG. 5 is a data configuration diagram of the data constraint database 170 according to this embodiment. The data constraint database 170 stores constraints for pseudo data. The constraints include identification information, a name, target data, a lower limit, and an upper limit. The constraints (predetermined constraints) in this embodiment indicate the range of joint angles (from the lower limit to the upper limit). The constraint shown in FIG. 5 is a condition that the angle formed by the line connecting the right wrist and right elbow and the line connecting the right elbow and right shoulder must be between 35 degrees and 185 degrees. In addition to constraints related to joint angles, the data constraint database 170 may also include constraints related to the movement speed of the joint position in the time-series data.

[0022] <<Data Generating Device: Control Unit>> Returning to Fig. 1 , the control unit 110 will be described. The control unit 110 is configured to include a CPU (Central Processing Unit) and is equipped with a model generating unit 111, a boundary identifying unit 112, a pseudo data generating unit 113, a pseudo data correcting unit 114, an accuracy calculating unit 115, and a pseudo data evaluating unit 116. The control unit 110 may be configured to include a GPU (Graphics Processing Unit), an FPGA (Field Programmable Gate Array), an ASIC (Application Specific Integrated Circuit), etc.

[0023] <<Control Unit: Model Generation Unit>> The model generation unit 111 uses learning data to train and generate a classification model, which is a machine learning model. The input (explanatory variables) of the classification model is time-series data of coordinates indicating the positions of a person's joints. The output (target variable) of the classification model is a label, "healthy" or "abnormal." The output may include a reliability indicating the degree of certainty of the classification result ("healthy" / "abnormal"). If the reliability is less than a threshold (see the parameter database 160 in FIG. 4 ), the input data is not classified as either "healthy" or "abnormal" (classification failure). In other words, the higher the threshold, the higher the reliability of the classification result using the classification model, but the greater the possibility of classification failure.

[0024] The training data is data stored in the training data repository 130. A classification model generated using the training data is also referred to as a first classification model. The training data may be data stored in the training data repository 130 and labeled pseudo data stored in the pseudo data repository 140. A classification model generated using the training data is also referred to as a second classification model.

[0025] <Control Unit: Boundary Identification Unit> The boundary identification unit 112 identifies data to be used when generating pseudo data. The region of vector space enclosed by this data is the region in which the pseudo data exists. More specifically, the boundary identification unit 112 acquires a predetermined number of pairs of data consisting of data from the "normal" class and data from the "abnormal" class, with the shortest distance between the data in vector space. Next, the boundary identification unit 112 identifies the data constituting this predetermined number of pairs as data to be used when generating pseudo data (also referred to as data that defines / identifies a boundary). Note that this predetermined number is the "number of data items at the time of boundary creation" (see "M" in Figure 9, described below) in the parameter database 160 (see Figure 4), and is set as appropriate by the user of the data generation device 100.

[0026] <<Controller: Pseudo Data Generator>> The pseudo data generator 113 generates a predetermined number of pseudo data on a line segment connecting the data of the “normal” class and the data of the “abnormal” class, which defines the boundary identified by the boundary identifier 112. Note that this predetermined number is the “number of pseudo data” (see “L” in FIG. 10 , which will be described later) in the parameter database 160 (see FIG. 4 ), and is set as appropriate by the user of the data generator 100.

[0027] As described above, the data generating device 100 includes a pseudo data generating unit 113 that takes a vector of features to which a label indicating the class to which the data belongs (a "normal" class and an "abnormal" class) as data, selects two pieces of data with different labels from a data group (the data in the training data repository 130) that indicates a collection of the data, and generates a point on a line segment connecting the two pieces of data in a vector space, which is a space of vectors, as pseudo data for the data group.

[0028] <<Control Unit: Pseudo Data Correction Unit>> The pseudo data correction unit 114 corrects the pseudo data generated by the pseudo data generation unit 113 so that it satisfies the constraint conditions in the data constraint condition database 170 (see FIG. 5 ). More specifically, the pseudo data correction unit 114 corrects the pseudo data so that the deviation of the pseudo data from the constraint conditions is reduced.

[0029] 6 is a graph 301 of the deviation of the right elbow angle according to this embodiment. The horizontal axis of graph 301 is the right elbow angle, and the vertical axis is the deviation. As shown in FIG. 5, the range of the right elbow angle is 35 degrees to 185 degrees, and graph 301 shows that if the right elbow angle is within the range of 35 degrees to 185 degrees, the deviation is 0, and if it is outside this range, the deviation is 1.

[0030] 7 is a graph 302 of the deviation degree of the right elbow angle according to this embodiment. In graph 301, the deviation degree changes stepwise between the upper and lower limit values ​​of the right elbow angle, but it may also change smoothly as shown in graph 302.

[0031] The deviation is the sum of the deviations of all the constraint conditions. The deviation may be the sum of the deviations weighted according to the constraint conditions. The pseudo data correction unit 114 corrects the deviation to reduce it. If the deviation does not become equal to or less than a predetermined value even after correcting the feature values ​​of the pseudo data, the pseudo data correction unit 114 may abandon the correction and delete the pseudo data so that it is not used as training data.

[0032] The predetermined value of the deviation is set as appropriate by the user of the data generating device 100. If this predetermined value is set small, outlying pseudo data that do not actually exist will be excluded, but the possibility of correction failure increases, and the number of pseudo data items to be deleted increases. If an attempt is made to secure a certain number of pseudo data items, a large number of pseudo data items will be generated and corrected, which increases the processing time required for data generation. The detailed processing of the pseudo data correction unit 114 will be described later with reference to FIG. 11.

[0033] As described above, the data generating device 100 includes the pseudo data correcting unit 114 that changes the feature quantities of the pseudo data so that the degree of deviation, which is the degree to which the feature quantities of the data deviate from the constraint conditions, is equal to or less than a predetermined value.

[0034] 1, the explanation of the control unit 110 will be continued. The accuracy calculation unit 115 evaluates the accuracy of the classification model generated by the model generation unit 111 using data in the evaluation data repository 139.

[0035] As described above, the data generating device 100 includes an accuracy calculation unit 115 that evaluates the accuracy of the first classification model, which is a machine learning model generated using a data group (data in the training data repository 130) as training data, and the accuracy of the second classification model, which is a machine learning model generated using the data group and labeled pseudo data as training data, i.e., the additional accuracy of the pseudo data.

[0036] <<Control Unit: Pseudo Data Evaluation Unit>> The pseudo data evaluation unit 116 obtains the accuracy of a classification model generated using the pseudo data and the training data stored in the training data repository 130, and evaluates the pseudo data. Hereinafter, the accuracy of the classification model when pseudo data is added to the training data will be referred to as the accuracy after addition of pseudo data, or simply the accuracy after addition. The pseudo data evaluation unit 116 calculates the accuracy after addition of each of the multiple pseudo data, and outputs a pseudo data evaluation screen 310 (see FIG. 13 , described later) displaying an equal precision line / equal precision plane in the low-dimensional vector space to a display connected to the input / output unit 180. The equal precision line / equal precision plane indicates the position in the vector space of the pseudo data where the added precision is equal. When the low-dimensional vector space is two-dimensional, as in the pseudo data evaluation screen 310, the equal precision line / equal precision plane will be used. Details of the equal precision line / equal precision plane will be described later.

[0037] As described above, the pseudo data generator 113 generates multiple pseudo data. The data generator 100 includes a pseudo data evaluator 116 that calculates, based on the additional precision of the multiple pseudo data, an equal-precision plane, which is a hyperplane indicating the position of pseudo data with equal additional precision in a low-dimensional vector space obtained by reducing the dimension of the vector space. The low-dimensional vector space is two-dimensional, and the pseudo data evaluator 116 calculates the equal-precision plane as an equal-precision line.

[0038] <<Data Generation Process>> Fig. 8 is a flowchart of the data generation process according to this embodiment. In step S11, the model generation unit 111 generates a classification model using data in the training data repository 130 and stores the generated classification model in the model database 150. In step S12, a boundary region identification process is executed. Details of the boundary region identification process will be described later using Fig. 9.

[0039] In step S13, a pseudo data generation process is executed. Details of the pseudo data generation process will be described later with reference to FIG. 10. In step S14, a pseudo data correction process is executed. Details of the pseudo data correction process will be described later with reference to FIG. 11. In step S15, a pseudo data evaluation process is executed. Details of the pseudo data evaluation process will be described later with reference to FIG. 12.

[0040] <Boundary Region Identification Process> Fig. 9 is a flowchart of the boundary region identification process according to this embodiment. Details of step S12 in Fig. 8 will be described with reference to Fig. 9. In step S21, the boundary identification unit 112 acquires all pairs of data of the "normal" class and the "abnormal" class.

[0041] In step S22, the boundary identification unit 112 acquires a predetermined number (denoted as "M" in FIG. 9 ) of pairs from the pairs acquired in step S21, starting with pairs having the shortest distance between the two data included in the pair. The distance is the distance in the vector space of the time-series data. In step S23, the boundary identification unit 112 determines the data included in the predetermined number of pairs acquired in step S22 as data that define the boundary between the "healthy" class and the "abnormal" class, and further determines the area surrounded by this data as the boundary area between the "healthy" class and the "abnormal" class.

[0042] <<Pseudo Data Generation Process>> Fig. 10 is a flowchart of the pseudo data generation process according to this embodiment. Details of step S13 in Fig. 8 will be explained with reference to Fig. 10. In step S31, the pseudo data generation unit 113 starts a process of repeating steps S32 to S33 a predetermined number of times (denoted as "L" in Fig. 10).

[0043] In step S32, the pseudo data generation unit 113 acquires data defining the boundary between the "healthy" class and the "abnormal" class (see step S23 in FIG. 9 ). The pseudo data generation unit 113 may randomly select data for each class from the data defining the boundary. In step S33, the pseudo data generation unit 113 generates pseudo data on the line segment connecting the two data acquired in step S32 and stores the pseudo data in the pseudo data repository 140 (see FIG. 3 ). At the time of generation, the pseudo data has no label.

[0044] <<Pseudo Data Correction Process>> Fig. 11 is a flowchart of the pseudo data correction process according to this embodiment. Details of step S14 in Fig. 8 will be explained with reference to Fig. 11. In step S41, the pseudo data correction unit 114 starts the process of repeating steps S42 to S45 for each piece of pseudo data in the pseudo data repository 140.

[0045] In step S42, the pseudo data correction unit 114 corrects the pseudo data so that the degree of deviation is minimized. In step S43, if the degree of deviation after correction in step S42 is equal to or less than a predetermined value (step S43 → YES), the pseudo data correction unit 114 considers the correction to be successful and proceeds to step S44. If the degree of deviation after correction exceeds the predetermined value (step S43 → NO), the pseudo data correction unit 114 considers the correction to be unsuccessful and proceeds to step S45.

[0046] In step S44, the pseudo data correction unit 114 replaces the corrected pseudo data with the uncorrected pseudo data and stores it in the pseudo data repository 140. In step S45, the pseudo data correction unit 114 deletes the uncorrected pseudo data in the pseudo data repository 140.

[0047] <<Pseudo Data Evaluation Process>> Figure 12 is a flowchart of the pseudo data evaluation process according to this embodiment. Details of step S15 in Figure 8 will be explained with reference to Figure 11. In step S51, the pseudo data evaluation unit 116 starts a process of repeating steps S52 to S57 for each piece of pseudo data in the pseudo data repository 140. Hereinafter, the pseudo data that is the target of this repeated process will be referred to as the target pseudo data.

[0048] In step S52, the pseudo data evaluation unit 116 classifies the pseudo data to be processed using the classification model (first classification model) and obtains a label of "healthy" or "abnormal." In step S53, if the classification in step S52 is successful (step S53 → YES), the pseudo data evaluation unit 116 proceeds to step S55, and if it is unsuccessful (step S53 → NO), the pseudo data evaluation unit 116 proceeds to step S54. A classification failure occurs when the classification threshold is high and the data cannot be classified as either "healthy" or "abnormal."

[0049] In step S54, the pseudo data evaluation unit 116 deletes the pseudo data to be processed from the pseudo data repository 140. The pseudo data evaluation unit 116 returns the process to step S52 and processes the next pseudo data. In step S55, the pseudo data evaluation unit 116 stores the label acquired in step S52 in the label column of the pseudo data to be processed in the pseudo data repository 140 (see FIG. 3).

[0050] In step S56, the model generation unit 111 generates a classification model using the data in the training data repository 130 and the pseudo data to be processed that has been labeled in step S55 as training data. In step S57, the accuracy calculation unit 115 evaluates the accuracy of the classification model generated in step S56. In step S58, the pseudo data evaluation unit 116 outputs a pseudo data evaluation screen (see FIG. 13 , which will be described later).

[0051] <<Pseudo Data Evaluation Screen>> Figure 13 is a screen configuration diagram of the pseudo data evaluation screen 310 according to this embodiment. Area 311 of the pseudo data evaluation screen 310 displays data and pseudo data in a low-dimensional vector space, which is a vector space in which the data and pseudo data are stored, reduced in dimension for visualization. In Figure 13, data in the "normal" class, represented by white circles, data in the "abnormal" class, represented by black circles, and pseudo data, represented by triangles, are displayed in a data space (a numerical vector space of feature quantities) reduced to two dimensions. The white and black circles connected by a solid line represent data that define a boundary (see step S23 in Figure 9). The area surrounded by the solid and dashed lines is the boundary area.

[0052] Hatched triangles among the pseudo data indicate data that the user has selected as additional learning data. Triangles with thick borders indicate pseudo data that the user has specified, for example, with a mouse. Area 312 displays whether the pseudo data has been selected as additional learning data, its label, deviation, and additional accuracy. The number in parentheses next to the label indicates the reliability when the pseudo data label is obtained using the classification model. The pseudo data displayed in area 311 is pseudo data that has been successfully classified by the classification model (first classification model) (see step S53 → YES), and its reliability is equal to or greater than a threshold (see the threshold in the parameter database 160 shown in Figure 4).

[0053] Although the pseudo data specified in Figure 13 is not selected, the pseudo data can be selected as additional training data by clicking the black triangle to the right of the "Not Selected" indication. Also, all pseudo data can be selected by pressing the "Select All" button. For example, the user can select highly reliable pseudo data by setting a high reliability threshold (see the threshold of the parameter database 160 in Figure 4) when classifying using the classification model.

[0054] When the "Display Data" button in area 313 is pressed, the specified pseudo data is displayed. The pseudo data is time-series data showing the positions of the joints, and a video showing the movement of the joints is displayed (see FIG. 14, which will be described later). For example, the user can set a low threshold value and select pseudo data with low reliability after checking the class using the video.

[0055] The label of the pseudo data specified in Figure 13 is "normal," but by clicking the black triangle to the right of "normal," the label can be changed to "abnormal." The user can view the video displayed by pressing the "Display Data" button and correct the label.

[0056] The solid line displayed in area 311 and labeled with, for example, "Accuracy 0.80" is the equal precision line. Based on the additional precision of the pseudo data, the pseudo data evaluation unit 116 calculates, for example, by linear interpolation, the additional precision of points between two pseudo data or between pseudo data and data ("healthy" / "abnormal" data), and calculates and displays an equal precision line by connecting points with equal additional precision. Note that the additional precision of the data is the precision of the classification model (first classification model) when the data in the training data repository 130 is used as training data before the pseudo data is added.

[0057] As described above, the label assigned to the pseudo data is the label of a class when the pseudo data is classified using the first classification model. The label assigned to the pseudo data is the label of a class whose reliability when the pseudo data is classified using the first classification model is equal to or greater than a predetermined value.

[0058] <<Pseudo Data Display Screen>> Figure 14 is a screen configuration diagram of the pseudo data display screen 320 according to this embodiment. When the play button at the bottom right of the pseudo data display screen 320 is pressed, a video showing the movement of the joints is displayed. Note that in Figure 14, pseudo data was specified on the pseudo data evaluation screen 310 (see Figure 13), so a video of the pseudo data is displayed; however, if "normal" / "abnormal" data is specified, a video of the data will be displayed.

[0059] <Features of the Data Generating Device> The data generating device 100 identifies data that defines a boundary from data of two classes and generates pseudo data that are candidates for addition to training data. The data generating device 100 corrects the pseudo data so that the constraints are satisfied (so that the deviation is equal to or less than a predetermined value), and calculates the additional accuracy.

[0060] The data generating device 100 generates pseudo data between data defining a boundary between two classes of data. In other words, the pseudo data is generated in an area of ​​the data space where no existing training data exists and where it is unclear which class the data belongs to. By including such pseudo data in the training data, it is possible to expect an improvement in the accuracy of the classification model.

[0061] Using the data generation device 100, users can generate pseudo data to add to training data without collecting data in the field. The pseudo data has a deviation value below a predetermined value, and outlying data that does not actually exist is excluded. Users can select pseudo data to add to training data and select labels for the pseudo data by referring to the position of the pseudo data in the data space, the displayed data (video displayed on the pseudo data display screen 320 shown in FIG. 14 ), and the reliability when classified using the classification model (first classification model). Adding such pseudo data to training data is expected to improve the accuracy of the classification model.

[0062] <<Modification: Number of Classes>> The classification model in the above-described embodiment has two classes: "healthy" and "abnormal." When classifying into three or more classes, pseudo data may be generated between all pairs of classes by performing a data generation process (see FIG. 8 ). Alternatively, pseudo data may be generated by performing a data generation process between two classes specified by the user.

[0063] <<Modification: Pseudo Data Generation>> The pseudo data generation unit 113 generates pseudo data on a line segment connecting data defining the boundary between two classes (see step S33 in FIG. 10). The pseudo data generation unit 113 may use points on a predetermined number of line segments (see the M pairs in step S22 in FIG. 9) from the shortest of the line segments connecting the data of the two classes as pseudo data. This results in generating pseudo data between data of two classes that are close to each other, and thus generating pseudo data that is difficult to classify. Adding such pseudo data to the training data can be expected to improve the accuracy of the classification model.

[0064] As described above, the pseudo data generation unit 113 determines, as data defining the boundary between the two classes (see steps S22 and S23), the data that are end points of a predetermined number of line segments, starting from the shortest line segment among the line segments connecting data with different labels (see step S21 in FIG. 9), and determines, as pseudo data, points on the line segments that define the boundary and connect two data with different labels (see steps S32 and S33 in FIG. 10).Furthermore, the pseudo data generation unit 113 determines, as pseudo data, points on the predetermined number of line segments, starting from the shortest line segment among the line segments connecting data with different labels among the two classes.

[0065] <<Modification: Equal Precision Lines>> The equal precision lines displayed on the pseudo data evaluation screen 310 (see FIG. 13) are drawn within the boundary area. The data generation device 100 may generate pseudo data outside the boundary area and calculate additional precision for the pseudo data, thereby extending and displaying the equal precision lines outside the boundary area. Furthermore, while the low-dimensional vector space in FIG. 13 is two-dimensional, it may also be three-dimensional. In this case, the equal precision lines become equal precision planes.

[0066] <Other Modifications> Although several embodiments of the present invention have been described above, these embodiments are merely illustrative and do not limit the technical scope of the present invention. The present invention can take on various other embodiments, and various modifications such as omissions and substitutions can be made without departing from the spirit of the present invention. These embodiments and modifications thereof are included in the scope and spirit of the invention described in this specification, etc., and are included in the invention described in the claims and their equivalents.

[0067] <Hardware Configuration> The data generation device 100 according to the above-described embodiment is realized by a computer 900 having a configuration as shown in Fig. 15, for example. Fig. 15 is a hardware configuration diagram showing an example of a computer 900 that realizes the functions of the data generation device 100 according to the above-described embodiment. The computer 900 includes a CPU 901, a ROM 902, a RAM 903, an SSD 904, an input / output interface 905 (referred to as an input / output I / F (Interface) in Fig. 15), a communication interface 906 (referred to as a communication I / F in Fig. 15), and a media interface 907 (referred to as a media I / F in Fig. 15). The computer 900 may include a hard disk drive (HDD) instead of the SSD 904, or may include an HDD in addition to the SSD 904.

[0068] The CPU 901 operates based on a program stored in the ROM 902 or the SSD 904, and performs control by the control unit 110 in Fig. 1. The ROM 902 stores a boot program executed by the CPU 901 when the computer 900 is started up, programs related to the hardware of the computer 900, and the like.

[0069] The CPU 901 controls an input device 910 such as a mouse or keyboard, and an output device 911 such as a display or printer, via an input / output interface 905. The CPU 901 acquires data from the input device 910 via the input / output interface 905, and outputs generated data to the output device 911.

[0070] The SSD 904 stores programs executed by the CPU 901 and data used by the programs. The communication interface 906 receives data from other devices (not shown) via a communication network and outputs the data to the CPU 901, and also transmits data generated by the CPU 901 to other devices via the communication network.

[0071] The media interface 907 reads a program or data stored in the recording medium 912 and outputs it to the CPU 901 via the RAM 903. The CPU 901 loads the program from the recording medium 912 onto the RAM 903 via the media interface 907 and executes the loaded program. The recording medium 912 is an optical recording medium such as a DVD (Digital Versatile Disk), a magneto-optical recording medium such as an MO (Magneto Optical Disk), a magnetic recording medium, a conductive memory tape medium, a semiconductor memory, or the like.

[0072] For example, when the computer 900 functions as the data generating device 100 according to the above-described embodiment, the CPU 901 of the computer 900 executes the program 128 (see FIG. 1 ) loaded onto the RAM 903, thereby realizing the functions of the data generating device 100. The CPU 901 reads and executes the program from the recording medium 912. Alternatively, the CPU 901 may read the program from another device via a communication network, or may install and execute the program 128 from the recording medium 912 onto the SSD 904.

[0073] REFERENCE SIGNS LIST 100 Data generation device 111 Model generation unit 112 Boundary identification unit 113 Pseudo data generation unit 114 Pseudo data correction unit 115 Accuracy calculation unit 116 Pseudo data evaluation unit 130 Learning data repository 139 Evaluation data repository 140 Pseudo data repository 150 Model database 160 Parameter database 170 Data constraint condition database 310 Pseudo data evaluation screen

Claims

1. A data generation device comprising a pseudo data generation unit that selects two pieces of data with different labels from a data group representing a collection of data, using vectors of features to which labels indicating the class to which they belong, and generates pseudo data of the data group by using points on the line segment connecting the two pieces of data in a vector space, which is the space of the vectors.

2. The data generating device according to claim 1, further comprising a pseudo data correcting unit that modifies the feature quantities of the pseudo data so that the degree of deviation, which is the degree to which the feature quantities of the data deviate from the constraint conditions, is equal to or less than a predetermined value.

3. The data generation device according to claim 1, further comprising an accuracy calculation unit that evaluates the additional accuracy of the pseudo data, which is the accuracy of a first classification model, which is a machine learning model generated using the data group as training data, and the accuracy of a second classification model, which is a machine learning model generated using the data group and the pseudo data to which the label has been assigned as training data, wherein the pseudo data generation unit generates a plurality of pseudo data, and further comprises a pseudo data evaluation unit that calculates, based on the additional accuracy of the plurality of pseudo data, an equal accuracy plane, which is a hyperplane indicating the position of pseudo data in a low-dimensional vector space obtained by reducing the dimension of the vector space, where the additional accuracy is equal.

4. The data generating device according to claim 3, wherein the label assigned to the pseudo data is the label of the class when the pseudo data is classified using the first classification model.

5. The data generating device according to claim 4, wherein the label assigned to the pseudo data is a label of the class whose reliability when the pseudo data is classified using the first classification model is equal to or greater than a predetermined value.

6. The data generating device according to claim 3, wherein the low-dimensional vector space is two-dimensional, and the pseudo data evaluation unit calculates the equal-precision plane as an equal-precision line.

7. The data generation device according to claim 1, wherein the pseudo data generation unit defines the boundary between the two classes as data that is the end point of a predetermined number of line segments, starting from the shortest line segment among the line segments connecting the data with different labels, and defines the boundary as the pseudo data as a point on the line segment connecting the two data with different labels.

8. The data generating device according to claim 1, wherein the pseudo data generating unit is configured to set as the pseudo data a point on a predetermined number of line segments, counting from the shortest, among the line segments connecting data with different labels in the two classes with different labels.

9. A data generation method in which a data generation device executes the steps of: using vectors of features to which labels indicating the classes to which they belong as data, selecting two pieces of data with different labels from a data group representing a collection of said data; and generating, in a vector space that is the space of said vectors, a point on the line segment connecting the two pieces of data as pseudo data for said data group.

Citation Information

Patent Citations

  • Indicator diagram fault diagnosis method based on generative adversarial neural network

    CN114444620A

  • Non-verbal information generation device, non-verbal information generation model learning device, non-verbal information generation method, non-verbal information generation model learning method and program

    JP2022128460A

  • Machine learning program, machine learning method, and machine learning device

    WO2023053216A1

  • Method, system, and computer program product for synthetic oversampling for boosting supervised anomaly detection

    WO2024033771A1