WO2023032665A1 - ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラム - Google Patents

ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラム Download PDF

Info

Publication number
WO2023032665A1
WO2023032665A1 PCT/JP2022/031009 JP2022031009W WO2023032665A1 WO 2023032665 A1 WO2023032665 A1 WO 2023032665A1 JP 2022031009 W JP2022031009 W JP 2022031009W WO 2023032665 A1 WO2023032665 A1 WO 2023032665A1
Authority
WO
WIPO (PCT)
Prior art keywords
inference
model
data
training data
label
Prior art date
Application number
PCT/JP2022/031009
Other languages
English (en)
French (fr)
Inventor
武彦 大川
敦史 橋本
祥孝 牛久
洋一 佐藤
拓真 八木
Original Assignee
オムロン株式会社
国立大学法人 東京大学
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社, 国立大学法人 東京大学 filed Critical オムロン株式会社
Publication of WO2023032665A1 publication Critical patent/WO2023032665A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present invention relates to a label generation method, a model generation method, a label generation device, a label generation program, a model generation device, and a model generation program.
  • Patent Literature 1 an articulated robot moves a light source while photographing the appearance of an inspection object irradiated with inspection light from the light source, and analyzing the obtained image to analyze the appearance of the inspection object.
  • Appearance inspection apparatuses for performing inspection have been proposed.
  • Patent Document 2 when it is determined whether an inspection object appearing in an image is normal or abnormal based on a trained first neural network, and when it is determined that the inspection object is abnormal, proposed an inspection device that classifies the type of abnormality based on a second neural network that has already been trained.
  • the conventional method it is possible to inspect the appearance of the product from the image obtained by shooting.
  • a machine learning model such as a neural network, as in Patent Document 2
  • the trained machine learning model can be output. Appearance inspection of products can be carried out based on Therefore, it is possible to simplify the information processing of the appearance inspection and reduce the trouble of creating an inspection program.
  • the inventors of the present invention have found that the conventional inspection method as described above has the following problems.
  • the training data is associated with a correct answer label indicating the correct answer (true value) of the task of detecting a defect appearing in the training data, thereby generating a learning data set.
  • the generated multiple datasets are used as training data in machine learning. That is, the generated multiple data sets are used in machine learning to adjust parameter values for detecting defects. Basically, the greater the number of data sets collected, the more accurate the appearance inspection can be.
  • Non-Patent Document 1 a method of semi-supervised learning, which is cited in Non-Patent Document 1 and the like, can be adopted.
  • correct labels are given to part of the obtained training data to generate a small amount of data set (here, the domain from which the training data is obtained is referred to as the "source domain"). ).
  • source domain the domain from which the training data is obtained.
  • the generated trained machine learning model is used to obtain inference results for the remaining unlabeled training data.
  • a pseudo data set is generated by associating the obtained inference result label as a pseudo label (pseudo correct label) with the training data.
  • the generated pseudo data set is further used to further perform machine learning of the machine learning model. This makes it possible to automate the work of generating correct labels to be given to training data for at least part of the datasets, and increase the number of datasets used for machine learning. Therefore, it is possible to improve the inference accuracy of the generated trained machine learning model and reduce the cost of collecting the data set.
  • the source domain which provides the training data for the training dataset
  • the target domain which provides the target data for performing the inference task with the trained machine learning model
  • the source domain which provides the training data for the training dataset
  • the target domain which provides the target data for performing the inference task with the trained machine learning model
  • the source This is an example when the domain and the target domain are different.
  • the generated trained machine learning model will be affected by the difference in domains. Inference accuracy for target data can be low. Therefore, in order to improve the inference accuracy of the trained machine learning model, we acquire a training dataset in the target domain and use the acquired dataset to perform machine learning (e.g., additional learning, re-learning, generating a new trained model, etc.).
  • the method of generating pseudo-correct labels using a trained machine learning model generated with some data sets such as Non-Patent Document 1, semi-supervised learning and domain adaptation
  • the cost of collecting datasets can be reduced.
  • the method has the following problems. That is, in both the semi-supervised learning and domain adaptation scenarios, the inference accuracy of the trained machine learning model generated by some data sets is not high, and as a result, the pseudo There is a possibility that the reliability of the correct label is lowered (that is, the number of training data to which the correct label including the error is assigned increases). If a pseudo-label with low reliability is assigned, the inference accuracy of the finally generated trained machine learning model may rather deteriorate.
  • the training data may be composed of, for example, image data, sound data, numerical data, text data, sensing data obtained by other sensors, and the like.
  • Inference tasks may consist, for example, of extracting feature-containing regions in the data, identifying classes of features contained in the data, and the like. For example, extracting regions containing features in image data (segmentation), identifying classes of features contained in image data, extracting regions containing features in sound data, and identifying classes of features contained in sound data.
  • a trained machine learning model that has acquired the ability to perform inference tasks on arbitrary data, such as extracting feature-containing regions in other sensing data, identifying classes of features in sensing data, etc. Similar problems can arise in any scene that is generated.
  • the present invention has been made in view of such circumstances, and an object of the present invention is to provide a technology capable of generating a data set for machine learning including a highly reliable correct label at low cost, or To provide a technique for improving the performance of a generated trained model by using the data set obtained by for machine learning.
  • the present invention adopts the following configuration in order to solve the above-mentioned problems.
  • a computer in the label generation method according to one aspect of the present invention, generates a plurality of labels each configured by a combination of first training data in a source domain and first correct labels indicating the correct answer of an inference task for the first training data. obtaining a trained first inference model generated by machine learning using a first data set; second training data generated by adding disturbance to the first training data; and the second training data.
  • different data sets are prepared by adding disturbances to the first training data.
  • Different datasets can be generated easily and at low cost because the addition of extraneous can be automated.
  • By preparing a trained first inference model and a second inference model derived from different data sets it is possible to obtain inference results obtained by performing inference tasks from different viewpoints on training data (third training data). . Then, by generating a correct answer label (i.e., deriving the correct answer) based on the matching of the inference results obtained from different viewpoints, the features common to the different viewpoints (i.e., the data truly relevant to the inference task) ), the possibility of obtaining an appropriate correct answer can be increased.
  • a correct answer label i.e., deriving the correct answer
  • the third training data may be obtained from the source domain, or may be obtained from a target domain different from the source domain.
  • the third training data may be obtained in a target domain different from the source domain.
  • a first inference model and a second inference model trained to perform an inference task from different perspectives it is possible to obtain appropriate correct answers from common features without being affected by domain differences. can enhance sexuality. Therefore, when giving correct labels to training data (third training data) obtained in a target domain different from the source domain, a data set for machine learning containing highly reliable correct labels can be obtained at low cost. can be generated.
  • adding a disturbance to the first training data may be configured by transforming the first training data using a trained transformation model.
  • the trained conversion model acquires the ability to convert the style of the first training data to the style of the third training data by machine learning using the first training data and the third training data. may be generated.
  • the arrangement provides a second trained inference model generated by using second training data having a style that matches the style of the third training data for machine learning.
  • a second trained inference model acquires the ability to solve inference tasks on the style of the third training data.
  • the first inference model and the second inference model may be further trained by adversarial learning with a discriminative model.
  • the adversarial learning uses the first training data and the third training data, and the inference result of the first inference model is for any of the first training data and the third training data.
  • adversarial learning may be performed to provide first and second inference models trained to capture common features in the source domain, the disturbed state, and the target domain.
  • each inference model can be made insensitive to gaps between the source domain, disturbances, and target domains when solving an inference task. Therefore, according to this configuration, a trained inference model with high inference accuracy is prepared, and as a result, a data set for machine learning including correct labels with higher reliability can be generated.
  • the computer may further execute a step of outputting the generated third correct label.
  • the operator can confirm the automatically generated pseudo correct label (third correct label) based on the output.
  • correct labels that indicate incorrect correct answers can be corrected or deleted.
  • the inference task may be extracting regions containing features, and generating the third correct label based on the matching may be performed as the first inference result. Identifying an overlapping portion of the extracted region and the region extracted as the second inference result, and indicating the overlapping portion as a correct answer of the inference task when the size of the identified overlapping portion exceeds a threshold. generating said third correct label by: According to this configuration, when generating a trained machine learning model that has acquired the ability to extract regions containing features, a data set for machine learning including highly reliable correct labels can be generated at low cost. can be done.
  • the inference task may be identifying classes of features contained in the data, and generating the third correct label based on the matching may include the first When the class identified as the inference result and the class identified as the second inference result match, the third correct label is generated to indicate the matched class.
  • a data set for machine learning containing highly reliable correct labels can be obtained at low cost. can be generated. Note that extracting regions containing the features and identifying classes of features may be performed simultaneously.
  • each of the training data may consist of image data
  • the inference task includes extracting feature-containing regions in the image data and identifying classes of features included in the image data. and/or identifying.
  • each of the training data may consist of image data
  • the inference task may consist of extracting regions containing features in the image data.
  • the first inference model and the second inference model may be further trained by adversarial learning with discriminative models.
  • the adversarial learning uses the first training data and the third training data, and the inference result of the first inference model is for any of the first training data and the third training data.
  • the discriminant model to discriminate pixel-by-pixel whether the discriminative model is using the second training data and the third training data, wherein the inference result of the second inference model is for any of the second training data and the third training data training the discriminative model to identify pixel-by-pixel whether the second inference model uses the second training data and the third training data to reduce the discrimination performance of the discriminative model training the
  • a discriminative model is configured to capture and discriminate overall features, in adversarial learning, the discriminative model may acquire the ability to discriminate based on differences in label distribution. Once the discriminative model acquires such ability, each inference model is trained by adversarial learning to reduce the discriminative performance of the discriminative model, thus extracting features that eliminate the difference in label distribution. ability may be acquired. As a result, the inference accuracy of each inference model may decrease.
  • the discrimination model by configuring the discrimination model so as to discriminate for each pixel, the discrimination of the discrimination model can be made independent of the difference in label distribution. It is possible to prevent the deterioration of the inference accuracy of As a result, a first inference model and a second inference model with high inference accuracy can be prepared, and by using them, a highly reliable correct label can be generated.
  • each of the training data may be composed of sound data
  • the inference task includes extracting a feature-containing region in the sound data and classifying a feature class included in the sound data. and/or identifying.
  • each training data may be composed of sensing data
  • the inference task includes extracting a region including features in the sensing data and identifying a class of features included in the sensing data. and/or identifying.
  • An aspect of the present invention may be a model generation method configured to generate a trained machine learning model using the correct label generated by the label generation method according to any one of the above aspects.
  • Yet another aspect of the invention can be an inference method configured to perform an inference task using the generated trained machine learning model.
  • a computer associates the third correct label generated by the label generation method according to any one of the above aspects with the third training data.
  • An information processing method comprising: According to this configuration, it is possible to improve the performance of a generated trained model by using a data set including a highly reliable correct label for machine learning.
  • one aspect of the present invention may be an information processing apparatus realizing all or part of each of the above configurations, or an information processing system.
  • a program, or a storage medium that stores such a program and is readable by a computer, other device, machine, or the like.
  • a computer-readable storage medium is a medium that stores information such as a program by electrical, magnetic, optical, mechanical, or chemical action.
  • the label generation device includes a plurality of first data each composed of a combination of first training data in the source domain and first correct labels indicating the correct answer of the inference task for the first training data.
  • a first model acquisition unit configured to acquire a trained first inference model generated by machine learning using sets; and second training data generated by adding a disturbance to the first training data. and obtaining a trained second inference model generated by machine learning using a plurality of second data sets each configured by a combination of second correct labels indicating the correct answer of the inference task for the second training data
  • a second model acquisition unit configured to acquire third training data; and the third training data acquired using the trained first inference model.
  • a generator configured to generate a third correct label.
  • a label generation program is configured by a computer, each of which is composed of a combination of first training data in a source domain and a first correct label indicating the correct answer of an inference task for the first training data.
  • the model generation device includes a plurality of a data acquisition unit configured to acquire a third data set of and a learning processing unit configured to perform machine learning of a third inference model using the plurality of acquired third data sets wherein, for each of the third data sets, the inference result of performing the inference task by the third inference model on the third training data is the correct answer indicated by the third correct label.
  • a learning processor configured by training the third inference model to fit.
  • a model generation program causes a computer to generate the third correct label generated by the label generation method according to any one of the above aspects with the third training data. and performing machine learning of a third inference model using the obtained plurality of third data sets, wherein the machine learning includes each of the training the third inference model such that an inference result of performing the inference task on the third training data by the third inference model on the third data set matches the correct answer indicated by the third correct answer label;
  • a data set for machine learning containing highly reliable correct labels can be generated at low cost.
  • the resulting dataset for machine learning it is possible to improve the performance of the generated trained model.
  • FIG. 1 schematically shows an example of a scene to which the present invention is applied.
  • FIG. 2 schematically shows an example of the hardware configuration of the label generation device according to the embodiment.
  • FIG. 3 schematically shows an example of the hardware configuration of the model generation device according to the embodiment.
  • FIG. 4 schematically shows an example of the hardware configuration of the inference device according to the embodiment.
  • FIG. 5 schematically shows an example of the software configuration of the label generation device according to the embodiment.
  • FIG. 6 schematically shows an example of a method of adding disturbance according to the embodiment.
  • FIG. 7A schematically shows an example of the configuration of a first inference model and the process of machine learning according to the embodiment.
  • FIG. 7B schematically shows an example of the configuration of the second inference model and the process of machine learning according to the embodiment.
  • FIG. 7A schematically shows an example of the configuration of a first inference model and the process of machine learning according to the embodiment.
  • FIG. 7B schematically shows an example of the configuration of the second inference model and
  • FIG. 7C schematically shows an example of the process of adversarial learning between the first inference model and the discrimination model according to the embodiment.
  • FIG. 7D schematically shows an example of the process of adversarial learning between the second inference model and the discrimination model according to the embodiment.
  • FIG. 8 schematically shows an example of the software configuration of the model generation device according to the embodiment.
  • FIG. 9 schematically shows an example of the software configuration of the inference device according to the embodiment.
  • 10 is a flowchart illustrating an example of a processing procedure of the label generation device according to the embodiment;
  • FIG. 11 is a flowchart illustrating an example of a processing procedure of the model generation device according to the embodiment;
  • FIG. 12 is a flowchart illustrating an example of a processing procedure of the inference device according to the embodiment;
  • FIG. 13 schematically shows an example of another scene to which the present invention is applied.
  • FIG. 14 schematically shows an example of another scene to which the present invention is applied.
  • FIG. 15 schematically shows an example of another scene to which the present invention is applied.
  • FIG. 16 shows the calculation results of the average IoU in the second experiment.
  • this embodiment An embodiment (hereinafter also referred to as "this embodiment") according to one aspect of the present invention will be described below with reference to the drawings.
  • this embodiment described below is merely an example of the present invention in every respect.
  • various modifications and variations can be made without departing from the scope of the invention. That is, in carrying out the present invention, a specific configuration according to the embodiment may be adopted as appropriate.
  • the data appearing in this embodiment are explained in terms of natural language, more specifically, they are specified in computer-recognizable pseudo-language, commands, parameters, machine language, and the like.
  • FIG. 1 schematically shows an example of a scene to which the present invention is applied.
  • an inference system 100 includes a label generation device 1, a model generation device 2, and an inference device 3.
  • FIG. 1 shows an example of a scene to which the present invention is applied.
  • an inference system 100 includes a label generation device 1, a model generation device 2, and an inference device 3.
  • FIG. 1 shows an example of a scene to which the present invention is applied.
  • an inference system 100 includes a label generation device 1, a model generation device 2, and an inference device 3.
  • FIG. 1 schematically shows an example of a scene to which the present invention is applied.
  • an inference system 100 includes a label generation device 1, a model generation device 2, and an inference device 3.
  • FIG. 1 schematically shows an example of a scene to which the present invention is applied.
  • the label generation device 1 is a computer configured to generate a correct label for training data to which no correct label has been assigned, using a trained inference model. Specifically, the label generation device 1 generates a plurality of first training data 511 in the source domain and a plurality of first correct labels 513 each configured by a combination of first correct labels 513 indicating correct answers (true values) of the inference task for the first training data 511 . A trained first inference model 61 generated by machine learning using the 1 data set 51 is acquired.
  • the label generation device 1 generates second training data 521 generated by adding a disturbance to the first training data 511, and a second correct label 523 indicating the correct answer (true value) of the inference task for the second training data 521.
  • a trained second inference model 62 generated by machine learning using a plurality of second data sets 52 each configured by a combination.
  • the label generation device 1 acquires one or more third training data 531 .
  • a source domain is a domain from which the first training data 511 is collected.
  • the first training data 511 may optionally be obtained from the source domain.
  • a method of collecting the first training data 511 in the source domain may not be particularly limited, and may be appropriately selected according to the embodiment.
  • the first training data 511 is, for example, image data, sound data, numerical data, text data, graph data (for example, data showing chemical structures, graphs showing relationships between things and people, etc.), and other various sensors. It may be measurement data (sensing data) or the like.
  • the first training data 511 may be generated by observing the real environment with sensors such as cameras, microphones, encoders, environmental sensors, vital sensors, medical testing equipment, vehicle sensors, home security sensors, and the like.
  • Environmental sensors may be, for example, barometers, thermometers, hygrometers, sound pressure meters, sound sensors, ultraviolet sensors, illuminometers, rain gauges, gas sensors, and the like.
  • Vital sensors include, for example, sphygmomanometers, pulse meters, heart rate meters, electrocardiographs, electromyographs, thermometers, skin electrometers, microwave sensors, electroencephalographs, magnetoencephalographs, activity meters, blood glucose meters, eyes It may be an electric potential sensor, an eye movement measuring instrument, or the like.
  • the medical examination device may be, for example, a CT (Computed Tomography) device, an MRI (Magnetic Resonance Imaging) device, or the like.
  • the in-vehicle sensor may be, for example, an image sensor, a lidar (light detection and ranging) sensor, a millimeter wave radar, an ultrasonic sensor, an acceleration sensor, or the like.
  • Home security sensors include, for example, image sensors, infrared sensors, activity (sound) sensors, gas (CO2 , etc.) sensors, current sensors, smart meters (sensors that measure power usage for home appliances, lighting, etc.). you can In one example, the image data may consist of photographic data, such as satellite photographs. In another example, the first training data 511 may be generated by information processing such as image generation processing, sound generation processing, and simulation in a virtual environment.
  • a domain may be defined by conditions for acquiring data, such as sensor attributes, observation targets, observation environments, virtual environment conditions, and generation conditions.
  • the attributes of the sensor may include, for example, attributes related to observation capabilities such as measurement range, resolution of the measurement range (such as resolution), and sampling frequency.
  • an observable may be defined to distinguish an object's personality (eg, a unique person).
  • the observation target may be defined so as not to distinguish the individuality of objects (handle objects of the same type in the same way).
  • the observation environment may be defined by attributes of the environment to be observed, such as time zone, time of year (year), weather, location, installation angle of the sensor, and the like.
  • the time zone may be defined by a method of expression such as morning, noon, and night, or may be defined by precise time intervals such as from 1:00 to 3:00.
  • Weather may be defined by weather conditions such as, for example, clear, cloudy, rainy, and snowy.
  • the generation conditions include, for example, language, cultural area, generation, gender, purpose, writing style, posting platform (for example, media such as social network services, newspapers, distribution services, etc.). May contain conditions. Different domains may consist of at least some of these conditions being different (eg, different to the extent that they affect the reasoning task).
  • the third training data 531 is composed of the same kind of data as the first training data 511.
  • the third training data 531 may have been obtained in the same source domain as the first training data 511 when utilizing the present embodiment in the semi-supervised learning context described above.
  • the third training data 531 may have been obtained in a target domain different from the source domain.
  • a target domain is a target domain for generating trained models and performing inference tasks using the generated trained models.
  • the target domain may differ from the source domain in at least some of the above conditions.
  • the label generation device 1 uses the trained first inference model 61 to obtain the first inference result of performing the inference task on the obtained third training data 531 . Also, the label generation device 1 uses the trained second inference model 62 to acquire a second inference result of performing an inference task on the acquired third training data 531 . Then, the label generation device 1 generates a third correct label 533 for the third training data 531 based on matching between the first inference result and the second inference result. That is, the label generation device 1 derives the correct answer of the inference task for the third training data 531 based on the consensus between the trained first inference model 61 and the trained second inference model 62, and derives generate a pseudo-correct label (third correct label 533) configured to indicate the correct answer given.
  • the content of the inference task is not particularly limited as long as it can derive overlapping (matching) portions of the first inference result and the second inference result, and is appropriately determined according to the embodiment.
  • the inference task may consist of extracting features-containing regions in the data and/or identifying classes of features included in the data.
  • inference tasks include, for example, extracting feature-containing regions in image data (segmentation), identifying classes of features in image data, extracting feature-containing regions in sound data, It may be identifying a class of features included in sound data, extracting a region including features in other sensing data, identifying a class of features included in sensing data, or the like.
  • an inference task may be, for example, identifying attributes that appear in text (eg, toxicity, emotion, etc.), completing missing text, and the like.
  • the model generation device 2 is a computer configured to generate a trained model using the third correct label 533 generated by the label generation device 1 .
  • the model generation device 2 acquires a plurality of third data sets 53 generated by associating the third correct labels 533 generated by the label generation method with the corresponding third training data 531 .
  • the model generation device 2 performs machine learning of the third inference model 63 using the acquired plurality of third data sets 53 .
  • the inference result of performing the inference task by the third inference model 63 on the third training data 531 is indicated by the corresponding third correct label 533. It is constructed by training the third inference model 63 to fit the correct answer.
  • a trained third inference model 63 can be generated.
  • the generated trained third inference model 63 may be provided to the inference device 3 at any timing.
  • the inference device 3 is a computer configured to perform an inference task using the trained third inference model 63 generated by the model generation device 2 . Specifically, the inference device 3 acquires target data 321 on which the inference task is to be performed.
  • the target data 321 is data of the same kind as each training data (511, 521, 531). Target data 321 may be obtained in any domain. When utilizing this embodiment in the context of domain adaptation described above, target data 321 may be obtained in the target domain.
  • the inference device 3 uses the trained third inference model 63 to perform inference tasks on the acquired target data 321 . As a result, the inference device 3 acquires the inference result of performing the inference task on the target data 321 .
  • the inference device 3 outputs information about the inference result.
  • the label generation device 1 can increase the chances of getting a correct answer.
  • a highly reliable third correct label 533 can be generated.
  • the third data set 53 for machine learning including the highly reliable third correct label 533 can be generated at low cost.
  • the trained third inference model generated by using the third data set 53 including the highly reliable third correct label 533 for machine learning. 63 inference performance can be improved.
  • the inference device 3 by using the trained third inference model 63 generated in this manner, it is expected that an inference task with high accuracy for the target data 321 can be performed. can.
  • the label generation device 1, the model generation device 2, and the inference device 3 may be connected to each other via a network.
  • the type of network may be appropriately selected from, for example, the Internet, wireless communication network, mobile communication network, telephone network, dedicated network, and the like.
  • the method of exchanging data among the label generation device 1, the model generation device 2, and the inference device 3 need not be limited to such an example, and may be appropriately selected according to the embodiment.
  • data may be exchanged between the label generation device 1, the model generation device 2, and the inference device 3 using a storage medium.
  • the label generation device 1, the model generation device 2, and the inference device 3 are separate computers.
  • the configuration of the system according to this embodiment need not be limited to such an example, and may be determined as appropriate according to the embodiment.
  • at least one pair of the label generation device 1, the model generation device 2 and the inference device 3 may be an integrated computer.
  • the label generation device 1, the model generation device 2, and the inference device 3 may be configured by an integrated computer.
  • the label generation device 1 and the model generation device 2 may be configured by an integrated computer.
  • the model generation device 2 and the inference device 3 may be configured by an integrated computer.
  • at least one of the label generation device 1, the model generation device 2, and the inference device 3 may be composed of multiple computers.
  • FIG. 2 schematically illustrates an example of the hardware configuration of the label generation device 1 according to this embodiment.
  • the label generating device 1 includes a control unit 11, a storage unit 12, a communication interface 13, an external interface 14, an input device 15, an output device 16, and a drive 17 which are electrically connected. It is a computer that has been
  • the communication interface and the external interface are described as "communication I/F" and "external I/F.” The same notation is used also in FIG. 3 and FIG. 4 to be described later.
  • the control unit 11 includes a CPU (Central Processing Unit), which is a hardware processor, RAM (Random Access Memory), ROM (Read Only Memory), etc., and is configured to execute information processing based on programs and various data. be.
  • the control unit 11 (CPU) is an example of processor resources.
  • the storage unit 12 is an example of a memory resource, and is configured by, for example, a hard disk drive, a solid state drive, or the like. In this embodiment, the storage unit 12 stores various information such as the label generation program 81, the first learning result data 71, the second learning result data 72, the third training data 531, and the like.
  • the label generation program 81 is a program for causing the label generation device 1 to execute information processing (see FIG. 10 described later) for generating the third correct label 533 for the third training data 531 .
  • the label generation program 81 includes a series of instructions for the information processing.
  • the first learning result data 71 indicates information about the trained first inference model 61 .
  • the second learning result data 72 indicates information about the trained second inference model 62 .
  • the communication interface 13 is, for example, a wired LAN (Local Area Network) module, a wireless LAN module, etc., and is an interface for performing wired or wireless communication via a network.
  • the label generation device 1 may perform data communication with another computer (for example, the model generation device 2) via the communication interface 13.
  • FIG. 13 is, for example, a wired LAN (Local Area Network) module, a wireless LAN module, etc., and is an interface for performing wired or wireless communication via a network.
  • the label generation device 1 may perform data communication with another computer (for example, the model generation device 2) via the communication interface 13.
  • the external interface 14 is, for example, a USB (Universal Serial Bus) port, a dedicated port, etc., and is an interface for connecting with an external device.
  • the type and number of external interfaces 14 may be arbitrarily selected.
  • the label generation device 1 may be connected via a communication interface 13 or an external interface 14 to sensors for obtaining training data.
  • the input device 15 is, for example, a device for performing input such as a mouse and keyboard.
  • the output device 16 is, for example, a device for outputting such as a display and a speaker. An operator can operate the label generation device 1 by using the input device 15 and the output device 16 .
  • the input device 15 and the output device 16 may be configured integrally by, for example, a touch panel display or the like.
  • the drive 17 is, for example, a CD drive, a DVD drive, etc., and is a drive device for reading various information such as programs stored in the storage medium 91 . At least one of the label generation program 81 , first learning result data 71 , second learning result data 72 and third training data 531 may be stored in this storage medium 91 .
  • the storage medium 91 stores information such as programs stored thereon by electrical, magnetic, optical, mechanical or chemical action so that computers, other devices, machines, etc. can read various information such as programs. It is a medium that accumulates by The label generation device 1 may acquire at least one of the label generation program 81 , the first learning result data 71 , the second learning result data 72 and the third training data 531 from the storage medium 91 .
  • the type of storage medium 91 is not limited to the disc type, and may be other than the disc type.
  • a storage medium other than the disk type for example, a semiconductor memory such as a flash memory can be cited.
  • the type of drive 17 may be appropriately selected according to the type of storage medium 91 .
  • control unit 11 may include multiple hardware processors.
  • the hardware processor may consist of a microprocessor, a field-programmable gate array (FPGA), a digital signal processor (DSP), or the like.
  • the storage unit 12 may be configured by RAM and ROM included in the control unit 11 .
  • At least one of the communication interface 13, the external interface 14, the input device 15, the output device 16 and the drive 17 may be omitted.
  • the label generation device 1 may be composed of a plurality of computers. In this case, the hardware configuration of each computer may or may not match. Further, the label generation device 1 may be an information processing device designed exclusively for the service provided, a general-purpose server device, a general-purpose PC (Personal Computer), or the like.
  • FIG. 3 schematically illustrates an example of the hardware configuration of the model generating device 2 according to this embodiment.
  • the model generation device 2 includes a control unit 21, a storage unit 22, a communication interface 23, an external interface 24, an input device 25, an output device 26, and a drive 27 which are electrically connected. It is a computer that has been
  • the control unit 21 to drive 27 and storage medium 92 of the model generation device 2 may be configured similarly to the control unit 11 to drive 17 and storage medium 91 of the label generation device 1, respectively.
  • the control unit 21 includes a hardware processor such as a CPU, a RAM, and a ROM, and is configured to execute various types of information processing based on programs and data.
  • the storage unit 22 is composed of, for example, a hard disk drive, a solid state drive, or the like. In this embodiment, the storage unit 22 stores various information such as the model generation program 82, the plurality of third data sets 53, the third learning result data 73, and the like.
  • the model generation program 82 is a program for causing the model generation device 2 to execute information processing (FIG. 11 to be described later) related to machine learning for generating the trained third inference model 63 .
  • Model generation program 82 includes a series of instructions for the information processing.
  • the plurality of third data sets 53 are used to generate a trained third inference model 63 (ie machine learning of the third inference model 63).
  • the third learning result data 73 indicates information about the generated trained third inference model 63 .
  • the third learning result data 73 is generated as a result of executing the model generation program 82 .
  • At least one of the model generation program 82 and the plurality of third data sets 53 may be stored in the storage medium 92. Also, the model generation device 2 may acquire at least one of the model generation program 82 and the plurality of third data sets 53 from the storage medium 92 . The third learning result data 73 may be stored in the storage medium 92 .
  • the model generation device 2 may be connected to a device (sensor, other computer, external storage device, etc.) for acquiring the third data set 53 via at least one of the communication interface 23 and the external interface 24.
  • the model generation device 2 may receive operations and inputs from the operator by using the input device 25 and the output device 26 .
  • the controller 21 may include multiple hardware processors.
  • a hardware processor may comprise a microprocessor, FPGA, DSP, or the like.
  • the storage unit 22 may be configured by RAM and ROM included in the control unit 21 .
  • At least one of the communication interface 23, the external interface 24, the input device 25, the output device 26, and the drive 27 may be omitted.
  • the model generation device 2 may be composed of a plurality of computers. In this case, the hardware configuration of each computer may or may not match.
  • the model generation device 2 may be an information processing device designed exclusively for the service provided, or may be a general-purpose server device, a general-purpose PC, or the like.
  • FIG. 4 schematically illustrates an example of the hardware configuration of the inference device 3 according to this embodiment.
  • the inference device 3 according to this embodiment is electrically connected to a control unit 31, a storage unit 32, a communication interface 33, an external interface 34, an input device 35, an output device 36, and a drive 37. computer.
  • the control unit 31 to drive 37 and storage medium 93 of the inference device 3 may be configured similarly to the control unit 11 to drive 17 and storage medium 91 of the label generation device 1, respectively.
  • the control unit 31 includes a hardware processor such as a CPU, a RAM, and a ROM, and is configured to execute various types of information processing based on programs and data.
  • the storage unit 32 is composed of, for example, a hard disk drive, a solid state drive, or the like. In this embodiment, the storage unit 32 stores various information such as the inference program 83 and the third learning result data 73 .
  • the inference program 83 is a program for causing the inference device 3 to execute information processing (FIG. 12 to be described later) that uses the trained third inference model 63 to perform an inference task.
  • Inference program 83 includes a series of instructions for the information processing.
  • At least one of the inference program 83 and the third learning result data 73 may be stored in the storage medium 93 .
  • the inference device 3 may acquire at least one of the inference program 83 and the third learning result data 73 from the storage medium 93 .
  • the inference device 3 may be connected to a device (sensor, other computer, external storage device, etc.) for acquiring the target data 321 via at least one of the communication interface 33 and the external interface 34 .
  • the inference device 3 may use the input device 35 and the output device 36 to receive operations and inputs from the operator.
  • At least one pair of the label generation device 1, the model generation device 2, and the inference device 3 may have the same operator. Alternatively, the operators of each device 1-3 may not be the same.
  • the controller 31 may include multiple hardware processors.
  • a hardware processor may comprise a microprocessor, FPGA, DSP, or the like.
  • the storage unit 32 may be configured by RAM and ROM included in the control unit 31 .
  • At least one of the communication interface 33, the external interface 34, the input device 35, the output device 36, and the drive 37 may be omitted.
  • the inference device 3 may be composed of a plurality of computers. In this case, the hardware configuration of each computer may or may not match.
  • the inference device 3 includes general-purpose server devices, general-purpose PCs, tablet PCs, mobile terminals (for example, smartphones), industrial PCs, PLCs (programmable logic controller), etc.
  • FIG. 5 schematically illustrates an example of the software configuration of the label generation device 1 according to this embodiment.
  • the control unit 11 of the label generation device 1 develops the label generation program 81 stored in the storage unit 12 in RAM. Then, the control unit 11 causes the CPU to execute the instructions included in the label generation program 81 developed in the RAM.
  • the label generation device 1 according to the present embodiment includes a first model acquisition unit 111, a second model acquisition unit 112, a data acquisition unit 113, a first inference unit 114, a second inference unit 115, generation unit 116, and output unit 117 as software modules. That is, in the present embodiment, each software module of the label generating device 1 is realized by the control section 11 (CPU).
  • the first model acquisition unit 111 is configured to acquire the trained first inference model 61 generated by machine learning.
  • the second model acquisition unit 112 is configured to acquire a trained second inference model 62 generated by machine learning.
  • a trained first inference model 61 is generated by machine learning using a plurality of first data sets 51.
  • Each first data set 51 is composed of a combination of first training data 511 and first correct labels 513 .
  • the first training data 511 of each first data set 51 are collected in the source domain.
  • First correct label 513 is configured to indicate the correct answer (true value) of the reasoning task for corresponding first training data 511 .
  • the trained second inference model 62 is generated by machine learning using a plurality of second data sets 52.
  • Each second data set 52 is composed of a combination of second training data 521 and second correct labels 523 .
  • the second training data 521 of each second data set 52 is generated by adding disturbance to the first training data 511 included in one of the multiple first data sets 51 .
  • Second correct label 523 is configured to indicate the correct answer (true value) of the reasoning task for corresponding second training data 521 .
  • the data acquisition unit 113 is configured to acquire the third training data 531.
  • the number of pieces of third training data 531 to be acquired may be determined as appropriate according to the embodiment.
  • the first inference unit 114 is configured to obtain a first inference result by performing an inference task on the obtained third training data 531 using the trained first inference model 61 . be.
  • the second inference unit 115 is configured to obtain a second inference result by performing an inference task on the obtained third training data 531 using the trained second inference model 62 . be.
  • the generator 116 is configured to generate a third correct label 533 for the third training data 531 based on the match between the first inference result and the second inference result.
  • the output unit 117 is configured to output the generated third correct label 533 .
  • FIG. 6 schematically illustrates an example of a method of adding disturbance according to this embodiment.
  • a trained transformation model 65 generated by machine learning is used for adding disturbances. That is, adding a disturbance to the first training data 511 may consist of transforming the first training data 511 using the trained transformation model 65 .
  • the conversion model 65 may be composed of any machine learning model such as a neural network, for example.
  • the configuration and structure of the conversion model 65 are not particularly limited as long as it is capable of executing arithmetic processing for converting styles, and may be appropriately determined according to the embodiment.
  • transformation model 65 may include any type of layers, such as, for example, convolutional layers, pooling layers, dropout layers, deconvolution layers, upsampling layers, fully connected layers, and the like. good.
  • the number of layers in the conversion model 65, the number of nodes (neurons) in each layer, and the connection relationship between the nodes may be determined as appropriate according to the embodiment.
  • Transformation model 65 may have at least one of a recursive structure and a residual structure.
  • the machine learning model comprises parameters for performing the task-solving operations, which are adjusted by machine learning.
  • the weight of the connection between each node, the threshold value of each node, etc. are examples of parameters.
  • Trained conversion model 65 acquires the ability to convert the style of first training data 511 to the style of third training data 531 through machine learning using first training data 511 and third training data 531. may be generated. That is, the values of the parameters of transformation model 65 may be adjusted by machine learning using first training data 511 and third training data 531 to acquire such capabilities.
  • the machine learning method may be appropriately determined according to the configuration of the machine learning model to be adopted.
  • a style is an attribute that defines a style or presentation, such as appearance, texture, and the like.
  • Methods for generating such a trained transfer model 65 include, for example, Reference 1 "Gatys, Leon A., Alexander S. Ecker, and Dr Bethge, "Image style transfer using convolutional neural networks", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016”, reference 2 "Xun Huang, Serge Belongie, "Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization", [online], [July 2021 7th search], Internet ⁇ URL: https://arxiv.org/abs/1703.06868>, reference 3 "Yijun Li, Ming-Yu Liu, Xueting Li, Ming-Hsuan Yang, Jan Kautz, "A Closed- form Solution to Photorealistic Image Stylization", [online], [Searched July 7, 2021], Internet ⁇ URL: https://arxiv.org/abs/1802.06474>”, reference 4 "Jaejun Yoo, Youngjung Uh, Sanghyuk Chun, Byeongkyu Kang
  • the transformation model 65 may be composed of an encoder and a decoder.
  • the encoder may be configured to accept content image data and style image data as inputs.
  • Transform model 65 may be trained to retain features related to the content of the content image data.
  • transformation model 65 may be trained to match style features between content image data and style image data.
  • first training data 511 may be used for content image data
  • third training data 531 may be used for style image data.
  • the first training data 511 and the third training data 531 are each converted into feature quantities by trained encoders.
  • the trained decoder restores the training data from the obtained feature amount of the first training data 511 .
  • the second training data 521 having content matching the content of the first training data 511 and having a style matching the style of the third training data 531 .
  • the inference task is to extract a region containing a feature
  • information (correct label) indicating the region containing the feature may be reflected in the machine learning of the transformation model 65 .
  • the third training data 531 used for machine learning of the transformation model 65 may be appropriately given a correct label.
  • the second training data 521 is generated by transforming the style of the first training data 511 contained in at least one of the plurality of first data sets 51 using the generated trained transformation model 65. good. That is, the first training data 511 is input to the trained conversion model 65, and the arithmetic processing of the trained conversion model 65 is executed. The second training data 521 may be obtained as an execution result of arithmetic processing of this trained transformation model 65 .
  • a trained second inference model 62 is provided that is generated by using second training data 521 having a style that matches the style of third training data 531 for machine learning.
  • Trained second inference model 62 has acquired the ability to perform inference tasks on the style of third training data 531 . Therefore, when obtaining the third training data 531 in the target domain different from the source domain, use the trained second inference model 62 together with the trained first inference model 61 to generate the third correct label 533. can increase the probability of getting a good correct answer for the reasoning task on the third training data 531 . Therefore, by adopting this disturbance addition method when obtaining the second training data 521, it is possible to generate the third data set 53 for machine learning including the third correct labels 533 with higher reliability.
  • the trained conversion model 65 may have acquired the ability to convert styles without changing the bounds of instances.
  • the data to be transformed is image data and the inference task is to extract regions containing features in the image data
  • the trained transformation model 65 will determine the positions of the edges of the regions. It may be configured to change the texture of the surface without changing it.
  • the trained transformation model 65 modifies the content of the audio. It may be configured to change the appearance, such as the pitch of the voice, without having to.
  • the reasoning task identifies features contained in the text data (e.g., performs character recognition), the sentence tone, etc., can be changed without changing the meaning of the sentence. It may be configured to change appearance.
  • the first correct label 513 can be used as it is as the second correct label 523 for the converted second training data 521 .
  • learning result data 75 indicating the trained conversion model 65 may be generated.
  • the configuration of the learning result data 75 is not particularly limited as long as information for executing calculations of the trained transformation model 65 can be held, and may be appropriately determined according to the embodiment.
  • the learning result data 75 may be configured to include information indicating the configuration of the conversion model 65 (eg, neural network structure, etc.) and parameter values adjusted by machine learning.
  • the learning result data 75 may be saved in any storage area.
  • the learning result data 75 may be referred to as needed to set the trained conversion model 65 to a usable state on the computer.
  • the processing related to machine learning of the transformation model 65 and the processing of generating the second training data 521 may be executed on the same computer. In another example, the processing related to machine learning of transformation model 65 and the processing of generating second training data 521 may be performed on different computers.
  • the trained conversion model 65 (learning result data 75) is transferred to the first computer at any timing. It may be provided from a computer to a second computer.
  • Each of the first computer and the second computer may be at least one of the label generation device 1, the model generation device 2, and the inference device 3, or may be other computers other than these.
  • adding a disturbance may consist of converting to a style independent of the third training data 531, such as, for example, a random style. Transformation models may be generated accordingly to acquire the ability to perform such style transformations.
  • the method of adding disturbance need not be limited to such a method using a transformation model.
  • adding disturbances includes, for example, adding noise, changing jitter (for image data, adjust on color space), grayscaling, contrast normalization, gamma correction, (color) histogram Any randomization or enlargement method, such as flattening, performing geometric transformations, etc., may be employed.
  • adding noise to the first training data 511 consists of adding a perturbation (adversarial noise) to the first training data 511 that maximizes the loss function of the inference task according to gradient descent. good.
  • the adversarial noise makes it difficult for the first inference model 61 to solve the inference task, and the second inference model 62 trained using the second training data 521 containing this makes the first inference model The ability to solve reasoning tasks from a different perspective than 61 can be acquired.
  • the trained first inference model 61 and the trained second inference model 62 can be used to generate the third correct label 533 with high reliability.
  • the number of second data sets 52 to be generated when performing machine learning of the second inference model 62 may not be particularly limited, and may be determined as appropriate according to the embodiment.
  • the number of cases in the second data set 52 may or may not match the number of cases in the first data set 51 .
  • a plurality of second training data 521 may be generated from one first training data 511 by adding different disturbances to one first training data 511 .
  • the processing related to machine learning of the conversion model 65 and the processing of generating the second training data 521 may be executed in the label generation device 1 (second model acquisition unit 112). In this case, each process may be executed as part of the process of obtaining the trained second inference model 62 . In another example, at least one of the processing related to machine learning of the conversion model 65 and the processing of generating the second training data 521 may be executed by a computer other than the label generation device 1 .
  • the second correct label 523 of each second data set 52 may be generated as appropriate. In one example, at least part of the process of generating the second correct label 523 may be manual. In another example, second correct labels 523 may be automatically generated from corresponding first correct labels 513 . For example, if the transformation model 65 was trained to transform styles without changing the boundaries of said instances, then the inference task would be to extract the regions containing features in the image data, and the addition of the disturbances would be the colors. There are cases where the added disturbances do not change the correct answer of the reasoning task, such as when transforming and/or adding noise. In such a case, the first correct label 513 associated with the first training data 511 to which the disturbance is added may be adopted as the second correct label 523 as it is.
  • the inference task is to extract feature-containing regions in the image data
  • the addition of the disturbance consists of performing a geometric transformation, for example, a second training after the disturbance.
  • the correct answer of the reasoning task for the data 521 may be derivable from the corresponding first correct answer label 513 based on the applied disturbance.
  • the second correct label 523 may be generated by applying a disturbance-induced modification to the corresponding first correct label 513 .
  • Example of inference model and machine learning method 7A and 7B schematically illustrate an example of the configuration of each inference model (61, 62) and the process of machine learning according to this embodiment.
  • Each inference model (61, 62) is composed of a machine learning model with parameters adjusted by machine learning.
  • Each inference model (61, 62) may be configured by any machine learning model such as a neural network, for example.
  • the configuration and structure of each inference model (61, 62) may not be particularly limited as long as they can execute arithmetic processing for performing inference tasks, and may be appropriately determined according to the embodiment.
  • the configuration of the first inference model 61 and the configuration of the second inference model 62 may be the same or different. In the examples of FIGS. 7A and 7B, each inference model (61, 62) employs a neural network.
  • each inference model (61, 62) may be appropriately determined according to the embodiment.
  • Each inference model (61, 62) may have a recursive structure and/or a residual structure.
  • a plurality of first data sets 51 are used for machine learning of the first inference model 61.
  • Each first data set 51 is composed of a combination of first training data 511 and first correct labels 513 .
  • a plurality of first data sets 51 may be collected accordingly.
  • the first training data 511 may optionally be obtained from the source domain.
  • the corresponding first correct label 513 may be obtained by operator input, or may be obtained by computer information processing using an arbitrary model.
  • Each first data set 51 may be generated automatically by computer operation, or may be generated manually, at least partially including manipulation by an operator.
  • the result of the inference task performed by the first inference model 61 on the first training data 511 is the correct answer indicated by the first correct answer label 513 corresponding to the result.
  • the machine learning method may be appropriately determined according to the configuration of the machine learning model to be adopted.
  • the training process may use, for example, stochastic gradient descent, mini-batch gradient descent, or the like.
  • the first training data 511 of each first data set 51 is input to the first inference model 61, and forward propagation arithmetic processing of the first inference model 61 is executed.
  • An inference result for the first training data 511 is acquired from the first inference model 61 as a result of this forward propagation calculation.
  • An error between the obtained inference result and the correct answer indicated by the corresponding first correct answer label 513 is calculated, and the gradient of the calculated error is further calculated.
  • the error of the parameter value of the first inference model 61 is calculated by backpropagating the gradient of the calculated error using the error backpropagation method. Then, the parameter value is updated based on the calculated error.
  • the parameter values of the first inference model 61 are adjusted so that the sum of the errors between the inference result and the correct answer is reduced.
  • This parameter value adjustment may be repeated until a predetermined condition is satisfied, such as, for example, performing a specified number of times or the sum of calculated errors being equal to or less than a threshold.
  • machine learning conditions such as a loss function and a learning rate may be appropriately set according to the embodiment. This machine learning process can generate a trained first inference model 61 that has acquired the ability to perform an inference task depending on the plurality of first data sets 51 used.
  • each second data set 52 is composed of a combination of second training data 521 and second correct labels 523 .
  • second training data 521 is generated by adding disturbance to first training data 511 .
  • the second correct label 523 may be generated as appropriate.
  • the result of performing the inference task by the second inference model 62 on the second training data 521 is the correct answer indicated by the second correct answer label 523 corresponding to the result.
  • the machine learning method of the second inference model 62 may be the same as that of the first inference model 61 above, except that the data used for machine learning is different.
  • error backpropagation reduces the error between the inference result for the second training data 521 of each second data set 52 and the correct answer indicated by the corresponding second correct answer label 523.
  • the parameter values of the second inference model 62 may be adjusted so that
  • each inference model (61, 62) need not be limited to only the training for acquiring the ability to perform the above inference task.
  • Machine learning of each inference model (61, 62) may further include additional training, for any purpose, eg, to improve accuracy in performing inference tasks.
  • machine learning of each inference model (61, 62) may further include adversarial learning illustrated in FIGS. 7C and 7D below.
  • Figures 7C and 7D schematically illustrate an example of the process of adversarial learning between the inference models (61, 62) and the discrimination models (67, 68) according to this embodiment.
  • the first discriminative model 67 is configured to discriminate from the inference result which training data (511, 531) the inference result of the first inference model 61 corresponds to.
  • the second identification model 68 is configured to identify, from the inference result, which training data (521, 531) the inference result of the second inference model 62 is for.
  • each discrimination model (67, 68) is composed of a machine learning model with parameters adjusted by machine learning.
  • each discriminative model (67, 68) may be constructed by any machine learning model, such as a neural network, for example.
  • the configuration and structure of each identification model (67, 68) may not be particularly limited as long as the arithmetic processing for identification can be executed, and may be appropriately determined according to the embodiment.
  • each discriminative model (67, 68) employs a neural network.
  • the structure of the neural network (for example, the type of layer, the number of layers, the number of nodes in each layer, the connection relationship of the nodes, the presence or absence of a recursive structure, the presence or absence of a residual structure, etc.) is appropriately determined according to the embodiment. good.
  • the adversarial learning of the first inference model 61 uses the first training data 511 and the third training data 531, and the inference result of the first inference model 61 is any of the first training data 511 and the third training data 531.
  • training the first discriminant model 67 to discriminate against the training data, and using the first training data 511 and the third training data 531 to reduce discriminative performance of the first discriminant model 67 is constructed by training the first inference model 61 as follows.
  • the adversarial learning of the second inference model 62 uses the second training data 521 and the third training data 531, and the inference result of the second inference model 62 is the second training data 521 and the third training data 531.
  • each training process Training the second discriminative model 68 to identify which training data it is for, and using the second training data 521 and the third training data 531, the discriminative performance of the second discriminative model 68 Constructed by training the second inference model 62 to degrade. That is, in each training process, each inference model (61, 62) and each discriminant model (67, 68) are adjusted (optimized). Each training process may be similar to a training process for acquiring the ability to perform the reasoning task described above.
  • the first training data 511 and the third training data 531 are input to the first inference model 61, respectively, and the first inference model 61 Perform propagation arithmetic operations.
  • an inference result for each of the first training data 511 and the third training data 531 is obtained.
  • the inference result is input to the first discriminant model 67 for each data, and forward propagation arithmetic processing of the first discriminant model 67 is executed.
  • the identification result of the first identification model 67 for each inference result is obtained.
  • the error between the acquired identification result and the correct answer (true value) is calculated.
  • a gradient inversion layer 671 is provided between the first inference model 61 and the first identification model 67.
  • the gradient inversion layer 671 is configured to pass values as they are during forward propagation operations and to invert values during backward propagation operations. Therefore, by adjusting the values of the parameters of the first discriminant model 67 and the first inference model 61 so that the calculated error is reduced by the error backpropagation method, the training of the first discriminative model 67 and the first The training process for the inference model 61 can be accomplished concurrently. That is, the first discriminative model 67 can be trained to acquire the ability to perform the above-described discrimination task by adjusting the parameter values of the first discriminative model 67 so that the calculated error is small.
  • the first inference model 67 is adjusted so as to reduce the identification performance of the first inference model 67. 61 can be trained.
  • the second training data 521 and the third training data 531 are input to the second inference model 62, respectively, and forward propagation arithmetic processing of the second inference model 62 is executed. .
  • an inference result for each of the second training data 521 and the third training data 531 is obtained.
  • the inference result is input to the second discriminant model 68 for each data, and forward propagation arithmetic processing of the second discriminative model 68 is executed.
  • the identification result of the second identification model 68 for each inference result is obtained.
  • the error between the acquired identification result and the correct answer (true value) is calculated.
  • a gradient inversion layer 681 is provided between the second inference model 62 and the second identification model 68 .
  • the gradient inversion layer 681 is constructed in the same manner as the gradient inversion layer 671 described above. Therefore, by adjusting the parameter values of the second discriminative model 68 and the second inference model 62 so that the calculated error is reduced by the error backpropagation method, the training of the second discriminative model 68 and the second The training process for the inference model 62 can be accomplished concurrently.
  • the configurations of the first identification model 67 and the second identification model 68 may be the same or different.
  • the first discriminative model 67 and the second discriminative model 68 may be provided separately.
  • the first discriminative model 67 and the second discriminative model 68 may be the same. That is, a common identification model may be prepared for the first inference model 61 and the second inference model 62 . In this case, at least part of the adversarial learning process of the first inference model 61 and the adversarial learning process of the second inference model 62 may be executed simultaneously.
  • each inference model (61, 62) may be further trained by the adversarial learning with the discrimination model (67, 68).
  • this adversarial learning is performed to train to capture features common to the source domain, the state with the disturbance added, and the target domain.
  • Each inference model (61, 62) may be prepared. That is, this adversarial learning results in making each trained inference model (61, 62) less susceptible to gaps between the source, disturbance, and target domains when performing inference tasks. can. Therefore, by adopting this adversarial learning, it is possible to generate the third data set 53 for machine learning including the third correct labels 533 with higher reliability.
  • each discriminative model (67, 68) is configured to capture the overall feature of the inference result and discriminate origin, then in adversarial learning, each discriminative model (67, 68) will have a label distribution may acquire the ability to discriminate based on differences in
  • each inference model (61, 62) is forced to reduce the discriminative performance of each discriminative model (67, 68) through adversarial learning. , it may acquire the ability to extract features that eliminate differences in label distributions. As a result, the inference accuracy of each inference model (61, 62) may deteriorate.
  • each discriminating model (67, 68) may be configured to discriminate provenance by predetermined units.
  • the predetermined unit When each training data (511, 521, 531) is composed of image data, the predetermined unit may be, for example, a pixel. When each training data (511, 521, 531) is composed of sound data or sensing data, the predetermined unit may be, for example, frequency components.
  • each training data (511, 521, 531) may consist of image data, and the inference task may consist of extracting regions containing features in the image data.
  • the first discriminant model 67 uses the first training data 511 and the third training data 531
  • the inference result of the first inference model 61 is the first training data 511 and the third training data. It may be trained to identify for each pixel to which training data of data 531 it belongs.
  • the second discriminative model 68 uses the second training data 521 and the third training data 531 to determine whether the inference result of the second inference model 62 is for any of the second training data 521 and the third training data 531. It may be trained to identify pixel by pixel if . Other than these, it may be the same as the adversarial learning described above.
  • each discrimination model (67, 68) By configuring each discrimination model (67, 68) to discriminate for each predetermined unit in this way, discrimination by each discrimination model (67, 68) can be made irrelevant to the proximity of the label distribution. As a result, deterioration of the inference accuracy of the inference models (61, 62) in adversarial learning can be prevented. As a result, it is possible to prepare a trained first inference model 61 and a trained second inference model 62 with high inference accuracy. A third data set 53 for training can be generated.
  • the adversarial learning of at least one of the first inference model 61 and the second inference model 62 may be omitted.
  • the gradient inversion layers (671, 681) may be omitted.
  • the training process for each inference model (61, 62) and the training process for each discriminative model (67, 68) may be alternately executed.
  • the parameter values of each inference model (61, 62) are fixed, and the parameter values of each discrimination model (67, 68) are changed so as to reduce the error. can be adjusted.
  • each inference model (61, 62) the values of the parameters of each discrimination model (67, 68) are fixed, and the error is reduced so as to reduce the discrimination performance of each discrimination model (67, 68).
  • calculated and the values of the parameters of each inference model (61, 62) may be adjusted based on the calculated error.
  • the error between the identification result of each identification model (67, 68) and the wrong answer opposite to the correct answer (true value) may be calculated, and the gradient of the calculated error may be further calculated.
  • the gradient of the error is backpropagated to each inference model (61, 62) via each discrimination model (67, 68), and each inference model ( 61, 62) may be adjusted.
  • first learning result data 71 representing the trained first inference model 61 may be generated as a result of the machine learning.
  • Second learning result data 72 indicative of the trained second inference model 62 may be generated.
  • the configuration of each learning result data (71, 72) may not be particularly limited as long as information for executing operations of each trained inference model (61, 62) can be held. It may be determined as appropriate.
  • each learning result data (71, 72) includes information indicating the configuration of each inference model (61, 62) (for example, neural network structure, etc.) and parameter values adjusted by machine learning. may be configured.
  • Each learning result data (71, 72) may be saved in any storage area.
  • Each learning result data (71, 72) may be referred to as appropriate to set each trained inference model (61, 62) to a usable state on the computer.
  • the process of generating the 2-inference model 62 may be performed on the same computer. In another example, at least some of these processes may be performed on different computers. These processes may be executed in at least one of the label generation device 1, the model generation device 2, and the inference device 3. Alternatively, at least one of these processes may be executed in a computer other than the label generation device 1, the model generation device 2, and the inference device 3.
  • the process of generating the first inference model 61 trained by machine learning and the process of generating the second inference model 62 trained by machine learning may be executed on the same computer or may be executed on different computers. you can
  • the trained first inference model 61 may be generated by the label generation device 1 .
  • obtaining the trained first inference model 61 by the first model obtaining unit 111 may include performing machine learning of the first inference model 61 .
  • the trained first inference model 61 may be generated by a computer other than the label generation device 1 .
  • the trained first inference model 61 (first learning result data 71) may be provided to the label generation device 1 at any timing.
  • the label generation device 1 may acquire the trained first inference model 61 via, for example, a network, a storage medium 91, an external storage device (eg, NAS (Network Attached Storage)), or the like.
  • the trained first inference model 61 may be pre-installed in the label generation device 1 .
  • the trained second inference model 62 may be generated by the label generation device 1.
  • obtaining the trained second inference model 62 by the second model obtaining unit 112 may include performing machine learning of the second inference model 62 .
  • the trained second inference model 62 may be generated by a computer other than the label generation device 1 .
  • the trained second inference model 62 (second learning result data 72) may be provided to the label generation device 1 at any timing.
  • the label generation device 1 may acquire the trained second inference model 62 via, for example, a network, a storage medium 91, an external storage device (eg, NAS (Network Attached Storage)), or the like.
  • the trained second inference model 62 may be pre-installed in the label generation device 1 .
  • some of the plurality of datasets used for machine learning of the inference models (61, 62) may include datasets that do not satisfy the conditions of the datasets (51, 52). That is, the plurality of data sets used for machine learning of the first inference model 61 include the first data set 51, and the plurality of data sets used for machine learning of the second inference model 62 include the first data set. Two data sets 52 may be included, and data sets that do not meet the conditions of each data set (51, 52) may be further used for machine learning of each inference model (61, 62).
  • FIG. 8 schematically illustrates an example of the software configuration of the model generation device 2 according to this embodiment.
  • the control unit 21 of the model generation device 2 develops the model generation program 82 stored in the storage unit 22 in RAM. Then, the control unit 21 causes the CPU to execute instructions included in the model generation program 82 developed in the RAM.
  • the model generation device 2 operates as a computer having a data acquisition unit 211, a learning processing unit 212, and a storage processing unit 213 as software modules. That is, in the present embodiment, each software module of the model generation device 2 is implemented by the control unit 21 (CPU) as in the label generation device 1 described above.
  • the data acquisition unit 211 is configured to acquire a plurality of third data sets 53 respectively generated by associating the third correct labels 533 generated by the label generation device 1 with the corresponding third training data 531.
  • the learning processing unit 212 is configured to perform machine learning of the third inference model 63 using the acquired plurality of third data sets 53 .
  • the storage processing unit 213 generates information about the trained third inference model 63 generated by machine learning as third learning result data 73, and stores the generated third learning result data 73 in a predetermined storage area. configured as
  • the third inference model 63 is composed of a machine learning model with parameters adjusted by machine learning.
  • the third inference model 63 may be configured by any machine learning model such as a neural network, for example.
  • the configuration and structure of the third inference model 63 are not particularly limited as long as they are capable of executing arithmetic processing for performing the inference task in the same manner as the inference models (61, 62). may be determined as appropriate.
  • the configuration of the third inference model 63 may match at least one of the configurations of the first inference model 61 and the second inference model 62, or the configuration of the first inference model 61 and the second inference model 62. may be different from In the example of FIG.
  • the third inference model 63 employs a neural network.
  • the structure of the neural network (for example, the type of layer, the number of layers, the number of nodes in each layer, the connection relationship of the nodes, the presence or absence of a recursive structure, the presence or absence of a residual structure, etc.) is appropriately determined according to the embodiment. good.
  • the inference result of performing the inference task by the third inference model 63 on the third training data 531 is indicated by the corresponding third correct label 533. It is constructed by training the third inference model 63 to match the correct answer. That is, in machine learning, the parameter value of the third inference model 63 is set so that the error between the inference result for the third training data 531 of each third data set 53 and the correct answer indicated by the third correct answer label 533 is small. is adjusted (optimized).
  • the training process for the third inference model 63 may be the same as the training process for the first inference model 61 and the like, except that the data used for machine learning is different.
  • the learning processing unit 212 uses error backpropagation to determine the correct answer indicated by the third correct label 533 corresponding to the inference result for the third training data 531 of each third data set 53. It may be configured to adjust the values of the parameters of the third inference model 63 so that the error between is reduced. This machine learning process can produce a trained third inference model 63 that has acquired the ability to perform the inference task.
  • the storage processing unit 213 is configured to generate the third learning result data 73 indicating the trained third inference model 63 as a result of the machine learning.
  • the configuration of the third learning result data 73 is not particularly limited as long as it is possible to hold information for executing calculations of the trained third inference model 63, and is appropriately determined according to the embodiment. good.
  • the third learning result data 73 may be configured to include information indicating the configuration of the third inference model 63 (eg, neural network structure, etc.) and parameter values adjusted by machine learning.
  • FIG. 9 schematically illustrates an example of the software configuration of the inference device 3 according to this embodiment.
  • the control unit 31 of the inference device 3 develops the inference program 83 stored in the storage unit 32 in the RAM. Then, the control unit 31 causes the CPU to execute instructions included in the inference program 83 developed in the RAM.
  • the inference device 3 operates as a computer having an acquisition unit 311, an inference unit 312, and an output unit 313 as software modules. That is, in the present embodiment, each software module of the inference device 3 is realized by the control unit 31 (CPU), like the label generation device 1 and the like.
  • the acquisition unit 311 is configured to acquire the target data 321 .
  • the inference unit 312 is provided with a trained third inference model 63 by holding the third learning result data 73 .
  • the inference unit 312 is configured to obtain an inference result by performing an inference task on the obtained target data 321 using the trained third inference model 63 .
  • the output unit 313 is configured to output information about the inference result.
  • each software module of the label generation device 1, the model generation device 2, and the inference device 3 will be described in detail in operation examples described later.
  • an example in which each software module of the label generation device 1, the model generation device 2, and the inference device 3 is realized by a general-purpose CPU is described.
  • some or all of the software modules may be implemented by one or more dedicated processors (eg, graphics processing units).
  • Each module described above may be implemented as a hardware module.
  • omission, replacement, and addition of software modules may be performed as appropriate according to the embodiment.
  • FIG. 10 is a flowchart showing an example of a processing procedure regarding label generation by the label generation device 1 according to this embodiment.
  • the processing procedure of the label generation device 1 described below is an example of the label generation method.
  • the processing procedure of the label generation device 1 described below is merely an example, and each step may be changed as much as possible. Further, in the following processing procedures, steps may be omitted, replaced, or added as appropriate according to the embodiment.
  • step S101 In step S ⁇ b>101 , the control unit 11 operates as the first model acquisition unit 111 and acquires the trained first inference model 61 generated by machine learning using the plurality of first data sets 51 .
  • control unit 11 may generate the trained first inference model 61 by executing the above machine learning as the acquisition process in step S101.
  • the control unit 11 may acquire the trained first inference model 61 generated by another computer via a network, the storage medium 91, an external storage device, or the like.
  • the control The unit 11 may acquire the trained first inference model 61 from the storage unit 12 or the storage medium 91 .
  • the first inference model 61 may be further trained by adversarial learning with the first discrimination model 67. After obtaining the trained first inference model 61, the control unit 11 proceeds to the next step S102.
  • Step S102 In step S ⁇ b>102 , the control unit 11 operates as the second model acquisition unit 112 and acquires the trained second inference model 62 generated by machine learning using the plurality of second data sets 52 .
  • control unit 11 may generate the trained second inference model 62 by executing the above-described machine learning as the acquisition process in step S102.
  • the control unit 11 may generate a plurality of second data sets 52 by the method described above.
  • the trained transformation model 65 may be used to add the disturbance to the first training data 511 .
  • the control unit 11 generates a trained conversion model 65 by executing the machine learning, and uses the generated trained conversion model 65 to obtain second training data 521 of each second data set 52. may be generated.
  • at least a portion of the plurality of second data sets 52 used for machine learning may be generated by another computer, and the control unit 11 acquires at least a portion of the plurality of second data sets 52 from another computer. You can
  • control unit 11 may acquire the trained second inference model 62 generated by another computer via, for example, a network, storage medium 91, external storage device, or the like.
  • control unit 11 loads the trained second inference model 62 from the storage unit 12 or the storage medium 91. may be obtained.
  • the second inference model 62 may be further trained by adversarial learning with the second discrimination model 68. After acquiring the trained second inference model 62, the control unit 11 proceeds to the next step S103.
  • Step S103 In step S ⁇ b>103 , the control unit 11 operates as the data acquisition unit 113 and acquires the third training data 531 .
  • the number of pieces of third training data 531 to be acquired may be determined as appropriate according to the embodiment.
  • the domain for acquiring the third training data 531 may be selected according to the embodiment.
  • third training data 531 may be obtained in the same source domain as first training data 511 .
  • third training data 531 may be obtained in a target domain different from the source domain.
  • the method of collecting the third training data 531 may be appropriately selected according to the embodiment.
  • the third training data 531 may be generated by observing the real environment with sensors.
  • the third training data 531 may be generated by information processing such as simulation, like the first training data 511 .
  • the control unit 11 may generate the third training data 531 by the collection method described above.
  • the control unit 11 may acquire the third training data 531 generated by another computer, for example, via a network, the storage medium 91, an external storage device, or the like.
  • the control section 11 may acquire the third training data 531 from the storage section 12 or the storage medium 91 .
  • the control unit 11 advances the process to the next step S104.
  • Step S104 the control unit 11 operates as the first inference unit 114 and uses the trained first inference model 61 to perform an inference task on the acquired third training data 531 . That is, the control unit 11 inputs the acquired third training data 531 to the trained first inference model 61 and executes the arithmetic processing of the trained first inference model 61 . As a result of this arithmetic processing, the control unit 11 acquires the first inference result for the third training data 531 from the trained first inference model 61 . After acquiring the first inference result, the control unit 11 advances the process to the next step S105.
  • Step S105 the control unit 11 operates as the second inference unit 115 and uses the trained second inference model 62 to perform an inference task on the acquired third training data 531 . That is, the control unit 11 inputs the acquired third training data 531 to the trained second inference model 62 and executes the arithmetic processing of the trained second inference model 62 . As a result of this arithmetic processing, the control unit 11 acquires the second inference result for the third training data 531 from the trained second inference model 62 . After acquiring the second inference result, the control unit 11 advances the process to the next step S106.
  • steps S101 to S105 need not be limited to the above example.
  • the processing of step S104 is executed after the processing of steps S101 and S103.
  • the processing of step S105 is executed after the processing of steps S102 and S103. Except for these points, the order of each process may be changed as appropriate.
  • Each process may be processed in parallel.
  • the control unit 11 may first execute the process of step S103. After executing the process of step S101, the control unit 11 may continue to execute the process of step S104.
  • the process of step S102 may be performed before step S101. After executing the process of step S102, the control unit 11 may continue to execute the process of step S105.
  • Step S106 the control unit 11 operates as the generation unit 116 and generates the third correct label 533 for the third training data 531 based on the match between the first inference result and the second inference result.
  • the method of deriving the correct answer for the third training data 531 from the agreement of the first inference result and the second inference result is to obtain consensus between the trained first inference model 61 and the trained second inference model 62.
  • the inference task may be extracting regions containing features.
  • the feature-containing region may be, for example, a region in which a particular object, such as an identification target, is present.
  • the region containing features may be, for example, a region in which a particular sound (eg, speaker utterance, machine malfunction sound) is emitted.
  • the region containing the feature may be, for example, a region where any feature appears (for example, if the sensing data is vital data, there is an abnormality in the vitals, or there is a sign of it, etc.).
  • Each inference result may be configured to indicate the result of extracting regions containing features in the third training data 531 (eg, the result of segmentation in the case of image data).
  • the processing for generating the third correct label 533 may be configured by the following processing. That is, the control unit 11 may specify overlapping portions of the region extracted as the first inference result and the region extracted as the second inference result. Subsequently, the control unit 11 may compare the size of the identified overlapping portion with a threshold value to determine whether the size of the overlapping portion exceeds the threshold value. A threshold may be given as appropriate. Then, when the size of the overlapping portion exceeds the threshold, the control section 11 may generate a third correct label 533 configured to indicate the overlapping portion as the correct answer of the inference task.
  • the control section 11 may omit the generation of the third correct label 533 based on the match between the first inference result and the second inference result. Accordingly, the correct answer for the inference task in the third training data 531 can be appropriately derived from the matching of the first inference result and the second inference result, and the highly reliable third correct answer label 533 can be generated. Note that when the size of the overlapping portion is equal to the threshold value, the branch destination of the process may be any.
  • the inference task may be identifying classes (categories) of features contained in the data.
  • identifying the class of features may be, for example, identifying the type of object appearing in the image data. If the object is a product, identifying the type of the object may include, for example, identifying the presence or absence of a defect, the type of defect, and the like regarding visual inspection.
  • identifying classes of features can, for example, identify speaker utterances, identify speakers, identify machine states from machine sounds (e.g., faults or their precursors). presence or absence), etc.
  • identifying the feature class may be, for example, identifying the state of the object appearing in the sensing data (for example, the health state of the target person if the sensing data is vital data).
  • Each inference result may be configured to indicate the result of identifying a class of features included in third training data 531 .
  • the processing for generating the third correct label 533 may be configured by the following processing. That is, the control unit 11 may determine whether the class identified as the first inference result and the class identified as the second inference result match. Then, when the class indicated by the first inference result and the class indicated by the second inference result match, the third correct label 533 configured to indicate the matched class may be generated. On the other hand, if the class indicated by the first inference result and the class indicated by the second inference result do not match, the control unit 11 omits the generation of the third correct label 533 based on the matching of the first inference result and the second inference result.
  • the correct answer for the inference task in the third training data 531 can be appropriately derived from the matching of the first inference result and the second inference result, and the highly reliable third correct answer label 533 can be generated.
  • the control unit 11 determines the number of matching classes. The branch destination of the processing may be determined accordingly. In one example, if the number of matching classes exceeds or is equal to or greater than the threshold, the control unit 11 may generate a third correct label 533 configured to indicate partially matching classes.
  • extracting regions containing features and identifying classes of features included in the data may be performed simultaneously. That is, an inference task may consist of extracting regions containing features and identifying classes of features contained in the data.
  • the control unit 11 may generate the third correct label 533 configured to indicate the overlapping part and the matched class. After generating the third correct label 533, the control unit 11 proceeds to the next step S107.
  • step S107 In step S ⁇ b>107 , the control unit 11 operates as the output unit 117 and outputs the generated third correct label 533 .
  • the output destination and output format of the third correct label 533 are not particularly limited as long as the generated third correct label 533 can be confirmed by the operator, and may be appropriately selected according to the embodiment.
  • the control unit 11 may output the third correct label 533 via the output device 16 or an output device of another computer.
  • the third correct label 533 may be displayed on a display or output by pronunciation through a speaker.
  • the third training data 531 may be output together with the third correct label 533 . This may prompt the operator to confirm the generated third correct label 533 .
  • the control unit 11 may accept correction or deletion of the generated third correct label 533 via the input device 15 or an input device of another computer. Modifications or deletions to the generated third correct label 533 may be accepted by other computers.
  • the control section 11 may output information indicating that the generation of the third correct label 533 has been omitted.
  • the control unit 11 or other computer may accept input of the third correct label 533 for the third training data 531 from the operator.
  • the control unit 11 or another computer may generate the third data set 53 by associating the finally obtained third correct label 533 with the third training data 531 at any timing.
  • control unit 11 terminates the processing procedure of the label generation device 1 according to this operation example.
  • the control unit 11 may execute a series of information processing from steps S101 to S107 according to an operator's instruction.
  • control unit 11 may execute the series of information processing from steps S101 to S107 by receiving an instruction to generate the third correct label 533 from another computer.
  • the control unit 11 may generate the third correct label 533 for each of the plurality of third training data 531 by repeatedly executing the information processing of steps S103 to S107.
  • FIG. 11 is a flowchart showing an example of a processing procedure regarding machine learning by the model generating device 2 according to this embodiment.
  • the processing procedure of the model generation device 2 described below is an example of the model generation method.
  • the processing procedure of the model generation device 2 described below is merely an example, and each step may be changed as much as possible. Further, in the following processing procedures, steps may be omitted, replaced, or added as appropriate according to the embodiment.
  • Step S201 In step S ⁇ b>201 , the control unit 21 operates as the data acquisition unit 211 and associates the third correct label 533 generated by the label generation device 1 with the corresponding third training data 531 to generate a plurality of third training data 531 . 3 Acquire data set 53 .
  • the control unit 21 acquires the third training data 531 as the process of step S201, provides the acquired third training data 531 to the label generation device 1, and generates the third correct label 533.
  • the device 1 may be instructed.
  • the control unit 21 receives the generated third correct label 533 from the label generation device 1 and associates the received third correct label 533 with the corresponding third training data 531 to generate the third data set 53. good too.
  • the multiple third data sets 53 may be generated by at least one of the label generation device 1 and another computer.
  • the control unit 21 acquires a plurality of third data sets 53 generated by at least one of the label generation device 1 and other computers, for example, via a network, a storage medium 92, an external storage device, or the like. may
  • the control unit 21 retrieves the plurality of third data sets 53 from the storage unit 22 or the storage medium 92. may be obtained.
  • the number of third data sets to be acquired is not particularly limited, and may be determined as appropriate so that machine learning can be performed.
  • the control unit 21 advances the process to the next step S202.
  • some of the plurality of datasets used for machine learning of the third inference model 63 may include datasets other than the third dataset 53 described above.
  • some of the plurality of third data sets 53 may include data sets to which correct labels have been given by a method other than the label generation method (for example, manually).
  • at least part of the plurality of data sets used for machine learning of the third inference model 63 includes the third data set 53 including the third correct label 533 generated by a method other than the label generation method described above. should be included.
  • Step S202 In step S ⁇ b>202 , the control unit 21 operates as the learning processing unit 212 and performs machine learning of the third inference model 63 using the acquired plurality of third data sets 53 . As described above, by machine learning, the control unit 21 performs the third Adjust the parameter values of the inference model 63 . As a result of this machine learning, a trained third inference model 63 can be generated that has acquired the ability to perform the inference task. When the machine learning process is completed, the control unit 21 advances the process to the next step S203.
  • Step S203 In step S ⁇ b>203 , the control unit 21 operates as the storage processing unit 213 and generates information regarding the trained third inference model 63 generated by machine learning as the third learning result data 73 . Then, the control unit 21 saves the generated third learning result data 73 in a predetermined storage area.
  • the predetermined storage area may be, for example, the RAM in the control unit 21, the storage unit 22, an external storage device, a storage medium, or a combination thereof.
  • the storage medium may be a CD, DVD, or the like, for example, and the control section 21 may store the third learning result data 73 in the storage medium via the drive 27 .
  • the external storage device may be, for example, a data server such as NAS.
  • the control unit 21 may use the communication interface 23 to store the third learning result data 73 in the data server via the network.
  • the external storage device may be, for example, an external storage device connected to the model generation device 2 via the external interface 24 .
  • control unit 21 terminates the processing procedure of the model generation device 2 according to this operation example.
  • the generated third learning result data 73 may be provided to the inference device 3 at any timing.
  • the control unit 21 may transfer the third learning result data 73 to the inference device 3 as the process of step S203 or separately from the process of step S203.
  • the inference device 3 may acquire the third learning result data 73 by receiving this transfer.
  • the inference device 3 may acquire the third learning result data 73 by accessing the model generation device 2 or the data server via the network using the communication interface 33 .
  • the inference device 3 may acquire the third learning result data 73 via the storage medium 93 .
  • the third learning result data 73 may be pre-installed in the inference device 3 .
  • control unit 21 may update or newly generate the third learning result data 73 by repeating the processing of steps S201 to S203 on a regular or irregular basis. During this repetition, at least part of the third data set 53 used for machine learning may be changed, corrected, added, deleted, etc., as appropriate. Then, the control unit 21 provides the inference device 3 with the updated or newly generated third learning result data 73 by any method, thereby updating the third learning result data 73 held by the inference device 3. good too.
  • FIG. 12 is a flow chart showing an example of a processing procedure for performing an inference task by the inference device 3 according to this embodiment.
  • the processing procedure of the inference device 3 described below is an example of the inference method.
  • the processing procedure of the inference device 3 described below is merely an example, and each step may be changed as much as possible. Further, in the following processing procedures, steps may be omitted, replaced, or added as appropriate according to the embodiment.
  • Step S301 In step S ⁇ b>301 , the control unit 31 operates as the acquisition unit 311 and acquires the target data 321 .
  • the target data 321 is the same type of data as each of the training data (511, 521, 531) and is the target for performing the inference task.
  • Target data 321 may be obtained in any domain. In one example, target data 321 may be obtained at the source domain. In another example, target data 321 may be obtained at the target domain. The target data 321 may be obtained in the same or similar domain as the domain in which the third training data 531 is obtained.
  • the method of acquiring the target data 321 may be appropriately selected according to the embodiment, as with the third training data 531.
  • the target data 321 may be generated by observing the real environment with a sensor.
  • the target data 321 may be generated by information processing such as simulation.
  • the control unit 31 may generate the target data 321 by the above generation method.
  • the control unit 31 may acquire the target data 321 generated by another computer, for example, via a network, the storage medium 92, an external storage device, or the like.
  • the control section 31 may acquire the target data 321 from the storage section 32 or the storage medium 93 .
  • the control unit 31 advances the process to the next step S302.
  • Step S302 the control unit 31 operates as the inference unit 312 and refers to the third learning result data 73 to set the trained third inference model 63 .
  • the control unit 31 uses the trained third inference model 63 to perform an inference task on the acquired target data 321 . That is, the control unit 31 inputs the acquired target data 321 to the trained third inference model 63 and executes the arithmetic processing of the trained third inference model 63 . As a result of executing this arithmetic processing, the control unit 31 acquires the inference result of the inference task for the target data 321 . After acquiring the inference result, the control unit 31 advances the process to the next step S303.
  • Step S303 At step S303, the control unit 31 operates as the output unit 313 and outputs information about the inference result.
  • the output destination of the inference result and the content of the information to be output may be appropriately determined according to the embodiment.
  • the control unit 31 may directly output the inference result obtained in step S302 to the output device 36 or an output device of another computer.
  • the control unit 31 may execute some information processing based on the obtained inference result. Then, the control unit 31 may output the result of executing the information processing as information about the inference result.
  • the output of the result of executing this information processing may include controlling the operation of the controlled device according to the inference result.
  • the output destination may be, for example, the output device 36, an output device of another computer, a device to be controlled, or the like.
  • control unit 31 terminates the processing procedure of the inference device 3 according to this operation example.
  • control unit 31 may continuously and repeatedly execute a series of information processing from step S301 to step S303.
  • the timing of repetition may be appropriately determined according to the embodiment.
  • the reasoning device 3 may be configured to continuously and repeatedly perform the above reasoning task.
  • first data set 51 different data sets (first data set 51, second data set 52) are prepared for machine learning. Since the addition of disturbances can be automated, the second data set 52 can be easily and inexpensively generated from the first data set 51 .
  • a trained first inference model 61 and a trained second inference model 62 derived from different data sets are prepared by the processing in steps S101 and S102. In the processes of steps S104 and S105, by using these, it is possible to obtain the inference results of performing the inference task on the third training data 531 from different viewpoints.
  • step S106 by generating the third correct label 533 based on the matching of the inference results obtained from different viewpoints, the characteristics common to the different viewpoints (that is, the characteristics of the data truly related to the inference task). characteristics), it is possible to increase the possibility of obtaining an appropriate correct answer. As a result, a highly reliable third correct label 533 can be generated. Additionally, at least part of the process of generating the third correct label 533 can be automated. Therefore, according to the label generation device 1 according to the present embodiment, the third data set 53 for machine learning including the highly reliable third correct label 533 can be generated at low cost.
  • the first inference model 61 and the second inference model 62 trained to perform the inference task from different perspectives can also affect domain differences, even when the third training data 531 is acquired in the target domain. It is possible to increase the possibility of obtaining an appropriate correct answer from common features. Therefore, not only when the third training data 531 is obtained in the source domain but also when the third training data 531 is obtained in a target domain different from the source domain, the third correct label 533 with high reliability can be obtained. It is possible to generate a third data set 53 for machine learning at low cost.
  • the trained The inference performance of the third inference model 63 can be improved. Furthermore, in the inference device 3 according to the present embodiment, in the process of step S302, by using the trained third inference model 63 generated in such a manner, it is possible to perform an inference task with high accuracy on the target data 321. can be expected.
  • the feature representation acquired by the second inference model 62 (that is, the feature captured when solving the inference task) can be controlled by the disturbance applied to the first training data 511. .
  • the direction of increasing the robustness of the second trained inference model 62 and as a result, the agreement ( A highly reliable third correct label 533 can be generated by matching the inference results).
  • the inference system 100 may be applied to any situation in which an inference task is performed on arbitrary data.
  • the data targeted for the inference task may be, for example, image data, sound data, numerical data, text data, sensing data obtained by various sensors, and the like.
  • the data to be the target of the inference task may be composed of multiple types of data, such as moving image data including sound.
  • the data targeted for the inference task may be appropriately selected according to the inference task.
  • Inference tasks include, for example, extracting feature-containing regions in image data, identifying classes of features contained in image data, extracting feature-containing regions in sound data, identifying features contained in sound data. It may be identifying a class, extracting a region containing features in other sensing data, identifying a class of features included in the sensing data, or the like. Modified examples with limited application scenes are shown below.
  • FIG. 13 schematically illustrates an example of an application scene of the inference system 100 according to the first modification. This modification is an example in which the above-described embodiment is applied to a scene in which an inference task is performed on image data.
  • the training data (511, 521, 531) and the target data 321 are composed of image data of the target object RA that can be captured under each condition.
  • the image data may be configured to represent images such as still images, moving images, 3D images, and the like, for example.
  • the image data may be obtained by the camera SA, may be generated by appropriately processing raw data obtained by the camera SA, or may be generated by arbitrary image processing without depending on the camera SA.
  • Camera SA may be, for example, a general RGB camera, a depth camera, an infrared camera, or the like.
  • the label generation device 1, the model generation device 2, and the inference device 3 may each be connected to the camera SA via communication interfaces (13, 23, 33) or external interfaces (14, 24, 34).
  • the inference task may consist of at least one of extracting regions containing features in the image data and identifying classes of features included in the image data.
  • the area including features may be, for example, the range in which the target object RA is captured, the range in which any characteristic part (for example, defect, body part, etc.) within the target object RA is captured, or the like.
  • the feature class may be, for example, the type of the target object RA, the type of the feature portion within the target object RA (may include the presence or absence of the feature portion), and the like.
  • the object RA may be a person or any object.
  • the target object RA may be a person.
  • the area including the feature may be, for example, the range in which the entire person is captured, the range in which the body parts of the person (for example, face, arms, legs, joints, etc.) are captured, or the like.
  • Identifying classes of features may be, for example, identifying attributes of a person, identifying types of body parts, identifying states of a person, and the like.
  • the camera SA may be a surveillance camera installed in a predetermined place (for example, on the street, inside a station, an airport, a hall, etc.).
  • identifying a person's attributes may be, for example, determining whether a particular person is present.
  • Identifying a person's condition may be, for example, determining whether the person has a sign of danger.
  • the image data may be medical image data.
  • the region containing features may be, for example, a lesion region, a suspected lesion region.
  • Identifying the class of features may be, for example, identifying the presence or absence of a lesion, identifying the type of lesion, and the like.
  • the target object RA may be a product produced on a manufacturing line.
  • a camera SA may be installed to monitor the condition of the product.
  • the area including the feature may be, for example, the range in which the product is captured, the range in which a specific portion (for example, a code-attached portion) in the product is captured, the range in which defects in the product are captured, or the like. Identifying the class of features includes, for example, identifying the type of product, identifying the presence or absence of defects, and the type of defect included in the product (a type indicating "no defect" may be included). can be identified.
  • the product may be, for example, a product that is transported on a manufacturing line for electronic equipment, electronic parts, automobile parts, medicines, food, and the like.
  • the electronic components may be, for example, substrates, chip capacitors, liquid crystals, windings of relays, and the like.
  • Automotive parts may be, for example, connecting rods, shafts, engine blocks, power window switches, panels and the like.
  • the drug may be, for example, packaged tablets, unpackaged tablets, and the like.
  • a product may be a final product produced after the manufacturing process is completed, an intermediate product produced during the manufacturing process, or an initial product prepared before the manufacturing process.
  • Defects may be, for example, scratches, stains, cracks, dents, burrs, color unevenness, foreign matter contamination, and the like.
  • the inference system 100 according to this modification may be configured in the same manner as the above embodiment.
  • the label generation device 1 can generate the third correct label 533 for the third training data 531 composed of image data by the same processing procedure as in the above embodiment.
  • the third training data 531 may be obtained in the source domain or obtained in the target domain.
  • the target domain may differ from the source domain by changing conditions such as shooting conditions (eg, brightness, etc.), shooting target, camera settings, camera installation angle, background, etc. from the source domain.
  • Each inference model (61, 62) may have been further trained by adversarial learning with each discriminative model (67, 68). In adversarial learning, each discriminative model (67, 68) may be trained to discriminate for each pixel to which training data the inference result of each inference model (61, 62) corresponds.
  • the model generation device 2 can generate a trained third inference model 63 that has acquired the ability to perform an inference task on image data by the same processing procedure as in the above embodiment.
  • the inference device 3 can use the trained third inference model 63 to perform an inference task on the target data 321 composed of image data by the same processing procedure as in the above embodiment.
  • the inference device 3 may be read as, for example, an inspection device, an identification device, a monitoring device, or the like, depending on the content of the inference task.
  • the inference device 3 may execute output processing according to the inference task in step S303.
  • the control unit 31 of the inference device 3 may output the inference result as it is.
  • the control unit 31 may execute arbitrary information processing according to the inference result.
  • the control unit 31 may output a warning to notify the fact when it is judged that there is a sign of danger.
  • the control unit 31 may display the area along with the type of lesion on the medical image data. good.
  • the production line may include a conveyor device that conveys the product.
  • the reasoning device 3 may be connected to a conveyor device or a controller controlling the conveyor device.
  • the control unit 31 may control the conveyor device so that defective products and non-defective products are conveyed on separate lines based on the result of determining whether or not the products are defective.
  • the label generation device 1 can generate the highly reliable third correct label 533 at low cost for the third training data 531 composed of image data.
  • the model generation device 2 by using the third data set 53 including the highly reliable third correct label 533 for machine learning, the trained model has acquired the ability to perform inference tasks on image data with high accuracy.
  • a third inference model 63 can be generated. Furthermore, by using the trained third inference model 63 thus generated in the inference device 3, it can be expected to perform highly accurate inference tasks for the target data 321 composed of image data. .
  • FIG. 14 schematically illustrates an example of an application scene of the inference system 100 according to the second modification.
  • This modified example is an example in which the above-described embodiment is applied to a situation in which an inference task is performed on sound data.
  • each of the training data (511, 521, 531) and the target data 321 are composed of sound data that can be related to the target RB acquired under each condition.
  • the sound data may be obtained by observing the target RB with the microphone SB, may be generated by appropriately processing raw data obtained by the microphone SB, or may be generated by arbitrary sound generation processing. It may be generated without relying on the microphone SB.
  • the type of microphone SB may be appropriately selected according to the embodiment.
  • the label generator 1, model generator 2, and reasoning device 3 may each be connected to the microphone SB via communication interfaces (13, 23, 33) or external interfaces (14, 24, 34).
  • the inference task may consist of at least one of extracting regions containing features in the sound data and identifying classes of features included in the sound data.
  • a feature containing region may be, for example, a range containing a particular sound.
  • Identifying classes of features may be, for example, identifying types of sounds.
  • the target RB may be the speaker's voice.
  • the range including a specific sound may be, for example, a range including a specific utterance. Identifying the type of sound may be, for example, identifying the speaker, analyzing the utterance content, or the like.
  • the target RB may be environmental sound.
  • the reasoning task may concern the state or situation of the environment. Extracting a range containing a particular sound may be, for example, extracting sounds associated with an accident occurring in the environment. Further, identifying the type of sound means, for example, determining whether or not a specific accident has occurred in the environment, determining whether or not there is a sign of the occurrence of an accident, determining the weather, and the like. can be
  • the target RB may be the operating sound of a machine.
  • the inference system 100 according to this modification may be configured in the same manner as the above embodiment.
  • the label generation device 1 can generate the third correct label 533 for the third training data 531 composed of sound data by the same processing procedure as in the above embodiment.
  • the third training data 531 may be obtained in the source domain or obtained in the target domain.
  • the target domain may differ from the source domain by changing conditions such as sound acquisition conditions, observation targets, microphone settings, microphone installation angles, and background sounds from the source domain.
  • Each inference model (61, 62) may have been further trained by adversarial learning with each discriminative model (67, 68). In adversarial learning, each discriminative model (67, 68) may be trained to discriminate for each frequency component which training data the inference result of each inference model (61, 62) corresponds to.
  • the model generation device 2 can generate a trained third inference model 63 that has acquired the ability to perform an inference task on sound data by the same processing procedure as in the above embodiment.
  • the inference device 3 can use the trained third inference model 63 to perform an inference task on the target data 321 composed of sound data by the same processing procedure as in the above embodiment.
  • the inference device 3 may be read as, for example, a detection device, an identification device, a monitoring device, or the like, depending on the content of the inference task.
  • the inference device 3 may execute output processing according to the inference task in step S303.
  • the control unit 31 of the inference device 3 may output the inference result as it is.
  • the control unit 31 may execute arbitrary information processing according to the inference result.
  • the control unit 31 may determine the content of the response according to the content of the utterance of the speaker, and output the determined content of the response.
  • the control unit 31 may execute a language search (for example, a term search, a popular song search, etc.) based on the utterance content of the speaker and output the search result.
  • the control unit 31 determines that the target machine is out of order or has a sign of failure based on the inference result. For example, a process for coping with the failure or its sign may be executed, such as stopping the operation of the machine or outputting a notification to notify the fact.
  • the label generation device 1 can generate the highly reliable third correct label 533 for the third training data 531 composed of sound data at low cost.
  • the model generation device 2 by using the third data set 53 including the highly reliable third correct label 533 for machine learning, the trained model has acquired the ability to perform inference tasks on sound data with high accuracy.
  • a third inference model 63 can be generated. Furthermore, by using the trained third inference model 63 thus generated in the inference device 3, it can be expected to perform highly accurate inference tasks for the target data 321 composed of sound data. .
  • FIG. 15 schematically illustrates an example of an application scene of the inference system 100 according to the third modification.
  • This modification is an example in which the above-described embodiment is applied to a scene in which an inference task is performed on sensing data.
  • each of the training data (511, 521, 531) and the target data 321 are composed of sensing data that can be related to the target RC acquired under each condition.
  • the sensing data may be obtained by observing the object RC with the sensor SC, or may be generated by appropriately processing raw data obtained by the sensor SC (for example, extracting feature amounts). Alternatively, it may be generated by simulating the operation of the sensor SC.
  • the sensing data may be composed of a single type of data, or may be composed of multiple types of data.
  • the sensors SC may be, for example, cameras, microphones, encoders, environmental sensors, vital sensors, medical examination equipment, vehicle sensors, home security sensors, and the like.
  • the label generator 1, model generator 2, and reasoning device 3 may each be connected to the sensor SC via communication interfaces (13, 23, 33) or external interfaces (14, 24, 34).
  • the inference task may consist of at least one of extracting a feature-containing region in the sensing data and identifying a class of features included in the sensing data. Extracting a region containing features may be, for example, extracting a portion of the object RC that is associated with a particular state or situation. Identifying a class of features may, for example, identify a particular state or situation of the object RC.
  • the sensor SC may be selected appropriately depending on the inference task.
  • the object RC may be a target person, and the reasoning task may relate to the target person's state.
  • the sensor SC may be configured by at least one of a microphone, a vital sensor, and a medical examination device, for example.
  • Extracting a region containing features may be, for example, extracting a component related to a specific state of a target person.
  • Identifying a class of characteristics means, for example, determining whether a specific disease is developing, determining whether there is a sign of developing a specific disease, determining the type of disease that is developing , identifying the type of health condition, and the like.
  • the target person may be a driver of a vehicle, and identifying the state of the target person is, for example, identifying sleepiness, fatigue, leisure, etc. good.
  • the object RC may be an industrial machine, and the reasoning task may relate to the state of the industrial machine.
  • the sensor SC may be composed of, for example, at least one of a microphone, an encoder, and an environmental sensor. Extracting a region containing features may be, for example, extracting components relating to a particular state of the industrial machine. Identifying the class of features is useful for identifying the state of the industrial machine, such as determining whether there is an abnormality in the industrial machine, determining whether there is a sign that an abnormality will occur in the industrial machine, and the like. It may be to identify Sensing data may be composed of, for example, the encoder value, temperature, operating sound, etc. of the motor.
  • the object RC may be an object existing outside the vehicle, and the reasoning task may relate to the state or situation of the object.
  • the sensor SC may be composed of at least one of a camera and an in-vehicle sensor, for example. Extracting a region containing features may be, for example, extracting a portion of an object existing outside the vehicle, extracting a component of a specific state or situation of the object, or the like. Identifying classes of features may be, for example, identifying attributes of objects present outside the vehicle, identifying congestion situations, identifying accident risks, and the like. Objects existing outside the vehicle may be, for example, roads, traffic lights, obstacles (persons, objects), and the like. Identifying the attribute of an object existing outside the vehicle may include determining whether or not an event such as a person or vehicle running out, a sudden start, a sudden stop, or a lane change has occurred or is a sign of such an event.
  • the target object RC may be an object that exists in a specific location, such as outdoors or a predetermined indoor location (for example, inside a vinyl house), and the inference task relates to the situation of the specific location.
  • the sensor SC may be configured by at least one of a camera, a microphone, and an environment sensor, for example. Extracting regions containing features may be, for example, extracting components related to a particular situation. Identifying a class of features may be, for example, identifying a particular situation.
  • the object RC may be a plant, and identifying the specific situation may be identifying the cultivation situation of the plant.
  • the object RC may be, for example, an object present in a house, and the reasoning task may relate to the situation inside the house.
  • the sensors SC may for example consist of cameras, microphones, environmental sensors and/or home security sensors. Extracting regions containing features may be, for example, extracting components relating to a particular situation within a house. Identifying a class of features may be, for example, identifying a particular situation within a house.
  • the inference system 100 according to this modification may be configured in the same manner as the above embodiment.
  • the label generation device 1 can generate the third correct label 533 for the third training data 531 composed of sensing data by the same processing procedure as in the above embodiment.
  • the third training data 531 may be obtained in the source domain or obtained in the target domain.
  • the target domain may differ from the source domain by changing conditions such as sensing conditions, observation target, sensor settings, sensor installation angle, background, etc. from the source domain.
  • Each inference model (61, 62) may have been further trained by adversarial learning with each discriminative model (67, 68). In adversarial learning, each discriminative model (67, 68) may be trained to discriminate for each frequency component which training data the inference result of each inference model (61, 62) corresponds to.
  • the model generation device 2 can generate a trained third inference model 63 that has acquired the ability to perform an inference task on sensing data by the same processing procedure as in the above embodiment.
  • the inference device 3 can use the trained third inference model 63 to perform an inference task on the target data 321 composed of sensing data by the same processing procedure as in the above embodiment.
  • the inference device 3 may be read as, for example, a diagnosis device, a detection device, an identification device, a monitoring device, or the like, depending on the content of the inference task.
  • the inference device 3 may execute output processing according to the inference task in step S303.
  • the control unit 31 of the inference device 3 may output the inference result as it is.
  • the control unit 31 may execute arbitrary information processing according to the inference result.
  • the control unit 31 may output a warning to notify the fact when it is determined that the target person's health condition is abnormal. good.
  • the control unit 31 notifies a message prompting a driver to take a break when it is determined that the driver's degree of drowsiness or fatigue is high.
  • control unit 31 determines an operation command for the vehicle according to the identified situation outside the vehicle, and outputs the determined operation command (for example, , to temporarily stop the vehicle when a person running out is detected) may be output.
  • the label generation device 1 can generate the highly reliable third correct label 533 for the third training data 531 composed of sensing data at low cost.
  • the model generation device 2 by using the third data set 53 including the highly reliable third correct label 533 for machine learning, the trained model has acquired the ability to perform the inference task on the sensing data with high accuracy.
  • a third inference model 63 can be generated. Furthermore, by using the trained third inference model 63 generated in this way in the inference device 3, it is possible to expect the execution of highly accurate inference tasks for the target data 321 composed of sensing data. .
  • the third inference model 63 may be newly prepared separately from the first inference model 61 and the second inference model 62 .
  • the trained third inference model 63 may be generated by performing additional learning or re-learning on the trained second inference model 62 . That is, the third inference model 63 before machine learning may be configured from the trained second inference model 62 .
  • the machine learning of the first inference model 61, the machine learning of the second inference model 62, the generation of the third correct label 533, and the machine learning of the third inference model 63 may be performed as a series of processes. When the label generation device 1 and the model generation device 2 are configured by an integrated computer, these processes may be executed continuously.
  • the label generation device 1 may generate a pseudo-correct label for the training data to which the correct label is assigned.
  • the label generation device 1 or another computer compares the generated pseudo correct label with the correct label assigned to the training data, and based on the comparison result, the assigned correct label is You can check if it is correct or not.
  • the label generation device 1 or another computer notifies that the assigned correct label is suspect. may output a warning of
  • each model (61 to 63, 65, 67, 68) may be appropriately determined according to the embodiment.
  • Each model (61-63, 65, 67, 68) may be configured to receive input of information other than the above.
  • Each model (61-63, 65, 67, 68) may be configured to output information other than the above.
  • the label generation device 1 generates the third correct label 533 using three or more trained inference models including the trained first inference model 61 and the trained second inference model 62. may be generated. In this case, the label generation device 1 may generate the third correct label 533 by agreeing at least part of three or more trained inference models. Also, by changing the disturbance to be applied, a plurality of different learning data groups (each learning data group is composed of a plurality of second data sets 52) may be generated, and each learning data group is applied to machine learning. Using it, a plurality of different trained second inference models 62 may be generated.
  • step S107 may be omitted.
  • the output unit 117 may be omitted from the software configuration of the label generation device 1 .
  • the target data for the inference task is first-person viewpoint image data in which a hand is captured, and the inference task is set to extract a region in which the hand is captured.
  • arXiv preprint arXiv:2006.13256, 2020
  • reference 10 R. Goyal, S. E. Kahou, V. Michalski, J. Materzyn?ska , S. Westphal, H. Kim, V. Haenel, I. Fruend, P. Yianilos, M. Mueller-Freitag, F. Hoppe, C. Thurau, I. Bax, and R. Memisevic, 'The "something something” video database for learning and evaluating visual common sense', In Proceedings of the IEEE International Conference on Computer Vision (ICCV), pages 5842?5850, 2017". According to Reference 11 "A. Fathi, A. Farhadi, and J.
  • a sixth data group was prepared.
  • Reference 14 "I. M. Bullock, T. Feix, and A. M. Dollar, "The yale human grasping dataset: Grasp, and object, and task data in household and machine shop environments", The International Journal of Robotics Research (IJRR), 34( 3): 251?255, 2015” prepared the seventh data group (YHG).
  • the image data (training data) included in each data group is associated with a mask image indicating the region where the hand appears as a correct label.
  • the image data size of each data group was changed to 256 ⁇ 256 pixels.
  • the first data set was chosen to be the source domain data.
  • a second set of data was selected for the source domain data.
  • data groups 3 through 7 were selected for the target domain, respectively.
  • a trained first inference model and a trained second inference model were prepared for each of the reality-based setting and the virtual-based setting, as in the above embodiment.
  • a trained transformation model was generated using the source domain data set and the target domain data set. Ten image data were randomly sampled from the data group of each target domain, and each of the ten sampled image data was used for machine learning of the transformation model.
  • the trained translation model was used to generate a second dataset with styles adapted to the target domain, and the generated second dataset was used for machine learning of a second inference model.
  • Adversarial learning was performed using a common discriminant model for the first inference model and the second inference model.
  • the identification model was configured to identify the origin for each pixel.
  • Each inference model includes RefineNet (Ref. 15 "G. Lin, A. Milan, C. Shen, and I. D. Reid, “Refinenet: Multipath refinement networks for high-resolution semantic segmentation", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 5168?5177, 2017”).
  • a three-layer convolutional neural network with a kernel size of 1 was used as the discrimination model.
  • a single target setting that applies to each target domain data groups 3 to 7) individually, and a multi-target setting that applies to all target domains at once Each produced a trained tertiary inference model.
  • the first comparative example (Source only), an inference model composed of RefineNet was prepared, and the data group of the source domain was used to train the inference model. As a result, a trained inference model according to the first comparative example was obtained.
  • the trained inference model in the reality-based setting and the virtual-based setting, respectively, was generated without adapting to the target domain, and the trained transformation model in the example was used to adapt the target domain.
  • reference 16 In the second comparative example (BDL), reference 16 “Y. Li, L. Yuan, and N. Vasconcelos, "Bidirectional learning for domain adaptation of semantic segmentation", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition ( CVPR), pages 6929?6938, 2019” to generate a trained inference model.
  • reference 16 proposes a framework that alternately trains an image transformation model and a segmentation model (inference model) for domain adaptation.
  • RefineNet was adopted instead of the network proposed in Reference 16 for the configuration of the inference model according to the second comparative example.
  • UMA Third comparative example
  • Reference 17 M. Cai, E. Lu, and Y.
  • a trained inference model for each of the second comparative example and the third comparative example was obtained by setting a single target.
  • the use of the trained conversion model in the example was omitted. Except for this point, the first reference example (Ours w/o FSty) was constructed in the same manner as the example. That is, in the first reference example, two trained inference models were generated using the data group of the source domain. Then, the two generated pre-trained inference models were used to obtain pseudo-correct labels for the image data of the target domain. Subsequent processing of the first reference example is the same as that of the embodiment. In the second reference example (Ours w/o CPL), the pseudo correct label generation in the example was omitted.
  • the third inference model (in other words, the trained second inference model generated by region extraction training and adversarial learning) before performing the additional learning in the embodiment is the final obtained as an inference model.
  • the final trained inference model was generated in the multi-target setting.
  • the third reference example (Target only), an inference model composed of RefineNet was prepared, and the data group of the target domain was used to train the inference model. As a result, a trained inference model according to the third reference example was obtained. In the third reference example, a trained inference model was generated for each of the single-target setting and the multi-target setting.
  • Adam optimizer was used as the optimization algorithm in each of the examples, comparative examples, and reference examples.
  • the learning rate of the first inference model was set to 5 ⁇ 10 ⁇ 6 and the learning rate of the second inference model was set to 10 ⁇ 5 .
  • For training in the multi-target setting we uniformly sampled the target image data from each target domain data set.
  • the threshold for the ratio of overlapping portions when generating pseudo-correct labels was set to 0.8.
  • FIG. 16 shows the calculation results of the average IoU for each of the example, comparative example, and reference example in the second experiment.
  • indicates the degree of synthesis. The fact that ⁇ is 1 indicates that the style-converted image data was used for training, as in the first experiment. When ⁇ is 0, it indicates that the image data before style conversion was used as is for training. The smaller ⁇ , the lower the degree of domain adaptation. That is, the smaller ⁇ , the greater the difference between the synthesized source domain image data and the target domain.
  • the performance of the first comparative example gradually decreased as the degree of synthesis decreased.
  • the performance of the third comparative example dropped significantly when the performance of the first comparative example fell below about 40%. It was speculated that poor initial performance of the source network produced unreliable pseudo-labels, which reduced the accuracy of the trained inference model. In contrast, in the example, it was possible to suppress performance deterioration even when the domains were significantly different. From this result, according to the present invention, even when there is a large difference between the source domain and the target domain, it is possible to generate a pseudo-correct label with relatively high reliability, and the pseudo-correct It was found that the inference accuracy of the inference model can be improved by using the correct answer label for machine learning.
  • control unit 32... storage unit, 33... communication interface, 34 ... external interface, 35... input device, 36... output device, 37... drive, 83 ... inference program, 93 ... storage medium, 311... Acquisition unit, 312... Inference unit, 313... Output unit, 321 ... target data, 51 ... the first data set, 511... First training data, 513... First correct label, 52 ... second data set, 521... Second training data, 523... Second correct label, 53 ... the first data set, 531... First training data, 533... First correct label, 61 ... first inference model, 62 ... second inference model, 63 ... third inference model, 65... Conversion model, 67/68... Discrimination model, 71... First learning result data, 72... Second learning result data, 73 Third learning result data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)

Abstract

本発明の一側面に係るラベル生成方法は、ソースドメインで得られた第1データセットで訓練された第1推論モデル及び第1訓練データに外乱を加えることで生成された第2訓練データを含む第2データセットで訓練された第2推論モデルを用意し、用意された訓練済みの第1推論モデル及び第2推論モデルの意見の一致に基づいて、第3訓練データに対する第3正解ラベルを生成する。

Description

ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラム
 本発明は、ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラムに関する。
 従来、製造ライン等の製品を製造する場面では、製造される製品を撮影装置により撮影し、得られた画像データに基づいて製品の良否を検査する技術が利用されている。例えば、特許文献1では、多関節ロボットにより光源を移動させながら、当該光源からの検査光が照射された検査対象物の外観を撮影し、得られた画像を分析することで検査対象物の外観検査を行う外観検査装置が提案されている。また、例えば、特許文献2では、学習済みの第1のニューラルネットワークに基づいて画像に写る検査対象物が正常であるか異常であるかを判定し、検査対象物が異常であると判定した場合に、学習済みの第2のニューラルネットワークに基づいて当該異常の種類を分類する検査装置が提案されている。
特開2019-045330号公報 特開2012-026982号公報
Dong-hyun Lee, "Pseudo-Label: The Simple and Efficient Semi-Supervised Learning Method for Deep Neural Networks", [online],[令和3年7月7日検索],インターネット<URL: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.664.3543>
 従来の方法によれば、撮影により得られた画像から製品の外観検査を実施することができる。また、特許文献2のような、ニューラルネットワーク等の機械学習モデルを利用する方法によれば、得られた画像に対する画像処理を人手により詳細に規定しなくても、訓練済みの機械学習モデルの出力に基づいて製品の外観検査を実施することができる。そのため、外観検査の情報処理を簡略化し、検査プログラムを作成する手間を低減することができる。しかしながら、本件発明者らは、上記のような従来の検査方法には、次のような問題点があることを見出した。
 撮影画像に基づいて外観検査を実施する場合、事前に、欠陥を含む製品の写る画像データを訓練データとして収集する。訓練データには、当該訓練データに写る欠陥を検出するタスクの正解(真値)を示す正解ラベルが関連付けられ、これにより、学習用のデータセットが生成される。欠陥を検出するケースでは、生成された複数のデータセットが機械学習における学習データとして使用される。すなわち、生成された複数のデータセットは、機械学習において、欠陥を検出するためのパラメータの値を調整するのに利用される。基本的には、収集されるデータセットの件数が多いほど、外観検査の精度の向上を図ることができる。
 しかしながら、欠陥の種別、製品の外観、及び背景の種別が多くなればなるほど、それぞれの組み合わせが増加し、データセットを収集するのにかかる手間が増大する。特に、収集された訓練データに付与する正解ラベルを生成する作業には手間がかかる。そこで、この問題点を解決する方法として、例えば、非特許文献1等で挙げられる半教師あり学習の方法を採用することができる。非特許文献1で提案される方法では、得られた訓練データの一部に正解ラベルを付与し、少量のデータセットを生成する(ここでは、訓練データを獲得するドメインを「ソースドメイン」と称する)。この生成された少量のデータセットを使用して、機械学習を実施することで、暫定的な訓練済みの機械学習モデルを生成する。生成された訓練済みの機械学習モデルを使用して、正解ラベルの付与されていない残りの訓練データに対する推論結果を得る。得られた推論結果を示すラベルを疑似ラベル(疑似的な正解ラベル)として訓練データに関連付けることで、疑似的なデータセットを生成する。生成された疑似的なデータセットを更に使用して、機械学習モデルの機械学習を更に実施する。これにより、データセットの少なくとも一部について、訓練データに付与する正解ラベルを生成する作業を自動化し、機械学習に使用するデータセットの件数を増やすことができる。そのため、生成される訓練済みの機械学習モデルの推論精度の向上を図ると共に、データセットを収集するのにかかるコストを低減することができる。
 上記問題点は、ドメイン適応の場面でも生じ得る。すなわち、学習用のデータセットの訓練データを得るソースドメインと訓練済みの機械学習モデルにより推論タスクを遂行する対象データを得る目標ドメインとが異なる場合がある。例えば、訓練データ及び対象データの間で製品を運搬するコンベアの模様が異なる(背景が異なる)場合、製品の撮影に使用するカメラの性能が異なる場合、カメラの設置角度が異なる場合等が、ソースドメインと目標ドメインとが相違する場合の一例である。この場合に、ソースドメインで得られたデータセットのみを機械学習に使用して、訓練済みの機械学習モデルを生成すると、ドメインの相違による影響を受けて、生成された訓練済みの機械学習モデルによる対象データに対する推論精度は低くなり得る。そこで、訓練済みの機械学習モデルの推論精度の向上を図るため、目標ドメインにおいて学習用のデータセットを取得し、取得されたデータセットを使用して、機械学習(例えば、追加学習、再学習、新たな訓練済みモデルの生成等)を実施することが考えられる。
 しかしながら、目標ドメインにおいてデータセットを収集するのには手間がかかる。特に、目標ドメインにおいて得られた訓練データに付与する正解ラベルを生成する作業には手間がかかる。そこで、この問題点を解決する方法として、上記方法と同様に、ソースドメインで得られたデータセットを使用した機械学習により生成された訓練済みの機械学習モデルを使用して、目標ドメインにおいて得られた訓練データに付与する疑似ラベルを生成することができる。これにより、目標ドメインのデータセットの少なくとも一部について、訓練データに付与する正解ラベルを生成する作業を自動化し、機械学習に使用する目標ドメインのデータセットの件数を増やすことができる。そのため、目標ドメインで得られる対象データに対する訓練済みの機械学習による推論精度の向上を図ると共に、目標ドメインのデータセットを収集するのにかかるコストを低減することができる。
 以上のとおり、非特許文献1等の一部のデータセットで生成された訓練済みの機械学習モデルを使用して疑似的な正解ラベルを生成する方法によれば、半教師あり学習及びドメイン適応の場面で、データセットを収集するコストの低減を図ることができる。また、訓練済みの機械学習モデルの推論精度の向上を図ることができる。しかしながら、本件発明者らは、当該方法には、次のような問題点があることを見出した。すなわち、上記半教師あり学習及びドメイン適応の場面共に、一部のデータセットにより生成される訓練済みの機械学習モデルの推論精度が高くなく、その結果、訓練済みの機械学習モデルにより生成される疑似的な正解ラベルの信頼性が低くなってしまう(すなわち、誤りを含む正解ラベルを付与された訓練データの件数が多くなる)可能性がある。信頼性の低い疑似ラベルが付与された場合には、最終的に生成される訓練済みの機械学習モデルの推論精度がかえって悪化してしまう可能性がある。
 なお、この問題点は、外観検査に使用可能な訓練済みの機械学習モデルを生成する場面に特有のものではない。加えて、この問題点は、画像データを訓練データとして取り扱う場面に特有のものでもない。訓練データは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られたセンシングデータ等で構成されてよい。推論タスクは、例えば、データにおいて特徴を含む領域を抽出すること、データに含まれる特徴のクラスを識別すること等で構成されてよい。例えば、画像データにおいて特徴を含む領域を抽出する(セグメンテーション)、画像データに含まれる特徴のクラスを識別する、音データにおいて特徴を含む領域を抽出する、音データに含まれる特徴のクラスを識別する、その他のセンシングデータにおいて特徴を含む領域を抽出する、センシングデータに含まれる特徴のクラスを識別する等の、任意のデータに対して推論タスクを遂行する能力を獲得した訓練済みの機械学習モデルを生成するあらゆる場面で同様の問題点が生じ得る。
 本発明は、一側面では、このような事情を鑑みてなされたものであり、その目的は、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成可能な技術、又はそれにより得られたデータセットを機械学習に使用することで、生成される訓練済みモデルの性能の向上を図る技術を提供することである。
 本発明は、上述した課題を解決するために、以下の構成を採用する。
 すなわち、本発明の一側面に係るラベル生成方法は、コンピュータが、ソースドメインにおける第1訓練データ及び当該第1訓練データに対する推論タスクの正解を示す第1正解ラベルの組み合わせによりそれぞれ構成される複数の第1データセットを用いた機械学習により生成された訓練済みの第1推論モデルを取得するステップと、前記第1訓練データに外乱を加えることで生成された第2訓練データ及び当該第2訓練データに対する前記推論タスクの正解を示す第2正解ラベルの組み合わせによりそれぞれ構成される複数の第2データセットを用いた機械学習により生成された訓練済みの第2推論モデルを取得するステップと、第3訓練データを取得するステップと、前記訓練済みの第1推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第1推論結果を取得するステップと、前記訓練済みの第2推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第2推論結果を取得するステップと、前記第1推論結果及び前記第2推論結果の間の合致に基づいて、前記第3訓練データに対する第3正解ラベルを生成するステップと、を実行する、情報処理方法である。
 当該構成では、第1訓練データに外乱を追加することで、異なるデータセットが用意される。外来の追加は自動化可能であるため、異なるデータセットは容易にかつ低コストで生成可能である。異なるデータセット由来の訓練済みの第1推論モデル及び第2推論モデルをそれぞれ用意することで、訓練データ(第3訓練データ)に対して異なる視点で推論タスクを遂行した推論結果を得ることができる。そして、異なる視点で得られた推論結果の合致に基づき正解ラベルを生成する(すなわち、正解を導出する)ようにすることで、異なる視点に共通の特徴(すなわち、推論タスクに真に関連するデータの特徴)から適切な正解を得る可能性を高めることができる。その結果、信頼性の高い正解ラベル(第3正解ラベル)を生成することができる。また、正解ラベルを生成する少なくとも一部の処理は自動化可能である。したがって、当該構成によれば、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。なお、第3訓練データは、ソースドメインから得られてもよいし、或いはソースドメインと異なる目標ドメインから得られてもよい。
 上記一側面に係るラベル生成方法において、前記第3訓練データは、前記ソースドメインとは異なる目標ドメインにおいて獲得されたものであってよい。当該構成では、異なる視点で推論タスクを遂行するように訓練された第1推論モデル及び第2推論モデルを使用することで、ドメインの違いに影響されず、共通の特徴から適切な正解を得る可能性を高めることができる。そのため、ソースドメインとは異なる目標ドメインで得られた訓練データ(第3訓練データ)に対して正解ラベルを付与する場面で、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。
 上記一側面に係るラベル生成方法において、前記第1訓練データに外乱を加えることは、訓練済みの変換モデルを使用して前記第1訓練データを変換することにより構成されてよい。前記訓練済みの変換モデルは、前記第1訓練データ及び前記第3訓練データを使用した機械学習により、前記第1訓練データのスタイルを前記第3訓練データのスタイルに変換する能力を獲得するように生成されたものであってよい。当該構成では、第3訓練データのスタイルに適合するスタイルを有する第2訓練データを機械学習に使用することで生成された訓練済みの第2推論モデルが用意される。訓練済みの第2推論モデルは、第3訓練データのスタイル上で推論タスクを解く能力を獲得している。この訓練済みの第2推論モデルを訓練済みの第1推論モデルと共に正解ラベルの生成に使用することで、目標ドメインで得られる訓練データ(第3訓練データ)に対して推論タスクの適切な正解を得る可能性を高めることができる。したがって、当該構成によれば、より信頼性の高い正解ラベルを含む機械学習用のデータセットを生成することができる。
 上記一側面に係るラベル生成方法において、前記第1推論モデル及び前記第2推論モデルは、識別モデルとの間での敵対的学習により更に訓練されたものであってよい。前記敵対的学習は、前記第1訓練データ及び前記第3訓練データを使用して、前記第1推論モデルの推論結果が前記第1訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを識別するように前記識別モデルを訓練すること、前記第1訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第1推論モデルを訓練すること、前記第2訓練データ及び前記第3訓練データを使用して、前記第2推論モデルの推論結果が前記第2訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを識別するように前記識別モデルを訓練すること、及び前記第2訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第2推論モデルを訓練すること、により構成されてよい。当該構成では、敵対的学習が行われることで、ソースドメイン、外乱を加えた状態、及び目標ドメインに共通の特徴を捉えるように訓練された第1推論モデル及び第2推論モデルが用意され得る。この敵対的学習の結果、推論タスクを解く際に、ソースドメイン、外乱、及び目標ドメイン間のギャップの影響を各推論モデルが受け難いようにすることができる。したがって、当該構成によれば、推論精度の高い訓練済み推論モデルが用意され、その結果、より信頼性の高い正解ラベルを含む機械学習用のデータセットを生成することができる。
 上記一側面に係るラベル生成方法において、前記コンピュータは、生成された前記第3正解ラベルを出力するステップを更に実行してもよい。当該構成によれば、オペレータは、出力に基づいて、自動的に生成された疑似的な正解ラベル(第3正解ラベル)を確認することができる。その結果、誤った正解を示す正解ラベルを修正したり、削除したりすることができる。
 上記一側面に係るラベル生成方法において、前記推論タスクは、特徴を含む領域を抽出することであってよく、前記合致に基づいて前記第3正解ラベルを生成することは、前記第1推論結果として抽出された領域及び前記第2推論結果として抽出された領域の重複部分を特定し、かつ特定された前記重複部分の大きさが閾値を超える場合に、前記推論タスクの正解として前記重複部分を示すように前記第3正解ラベルを生成すること、により構成されてよい。当該構成によれば、特徴を含む領域を抽出する能力を獲得した訓練済みの機械学習モデルを生成する場面で、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。
 上記一側面に係るラベル生成方法において、前記推論タスクは、データに含まれる特徴のクラスを識別することであってよく、前記合致に基づいて前記第3正解ラベルを生成することは、前記第1推論結果として識別されたクラス及び前記第2推論結果として識別されたクラスが一致した場合に、当該一致したクラスを示すように前記第3正解ラベルを生成することにより構成されてよい。当該構成によれば、データに含まれる特徴のクラスを識別する能力を獲得した訓練済みの機械学習モデルを生成する場面で、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。なお、上記特徴を含む領域を抽出すること及び特徴のクラスを識別することは同時に実行されてよい。
 上記一側面に係るラベル生成方法において、前記各訓練データは、画像データにより構成されてよく、前記推論タスクは、画像データにおいて特徴を含む領域を抽出すること及び画像データに含まれる特徴のクラスを識別することの少なくともいずれかにより構成されてよい。当該構成によれば、画像データに対して推論タスクを遂行する能力を獲得した訓練済みの機械学習モデルを生成する場面で、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。
 上記一側面に係るラベル生成方法において、前記各訓練データは、画像データにより構成されてよく、前記推論タスクは、画像データにおいて特徴を含む領域を抽出することにより構成されてよい。前記第1推論モデル及び前記第2推論モデルは、識別モデルとの間での敵対的学習により更に訓練されたものであってよい。前記敵対的学習は、前記第1訓練データ及び前記第3訓練データを使用して、前記第1推論モデルの推論結果が前記第1訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを画素毎に識別するように前記識別モデルを訓練すること、前記第1訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第1推論モデルを訓練すること、前記第2訓練データ及び前記第3訓練データを使用して、前記第2推論モデルの推論結果が前記第2訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを画素毎に識別するように前記識別モデルを訓練すること、及び前記第2訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第2推論モデルを訓練すること、により構成されてよい。
 全体的な特徴を捉えて識別するように識別モデルを構成すると、敵対的学習において、識別モデルは、ラベル分布の違いに基づいて識別する能力を獲得してしまう可能性がある。識別モデルがそのような能力を獲得してしまうと、各推論モデルは、敵対的学習により識別モデルの識別性能を低下させるように訓練されるため、ラベル分布の差を無くすような特徴を抽出する能力を獲得する可能性がある。その結果、各推論モデルの推論精度が低下してしまう恐れがある。これに対して、当該構成によれば、画素毎に識別するように識別モデルを構成することで、識別モデルの識別をラベル分布の違いと無関係にすることができ、これにより、上記各推論モデルの推論精度の低下を防ぐことができる。その結果、推論精度の高い第1推論モデル及び第2推論モデルを用意することができ、それらを利用することで、信頼性の高い正解ラベルを生成することができる。
 上記一側面に係るラベル生成方法において、前記各訓練データは、音データにより構成されてよく、前記推論タスクは、音データにおいて特徴を含む領域を抽出すること及び音データに含まれる特徴のクラスを識別することの少なくともいずれかにより構成されてよい。当該構成によれば、音データに対して推論タスクを遂行する能力を獲得した訓練済みの機械学習モデルを生成する場面で、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。
 上記一側面に係るラベル生成方法において、前記各訓練データは、センシングデータにより構成されてよく、前記推論タスクは、センシングデータにおいて特徴を含む領域を抽出すること及びセンシングデータに含まれる特徴のクラスを識別することの少なくともいずれかにより構成されてよい。当該構成によれば、センシングデータに対して推論タスクを遂行する能力を獲得した訓練済みの機械学習モデルを生成する場面で、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。
 本発明の形態は、上記一連の処理をコンピュータにより実行するように構成されるラベル生成方法に限られなくてよい。本発明の一側面は、上記いずれかの形態に係るラベル生成方法により生成された正解ラベルを使用して、訓練済みの機械学習モデルを生成するように構成されるモデル生成方法であってもよい。更に、本発明の他の一側面は、生成された訓練済みの機械学習モデルを使用して、推論タスクを遂行するように構成される推論方法であってよい。
 例えば、本発明の一側面に係るモデル生成方法は、コンピュータが、上記いずれかの形態に係るラベル生成方法により生成された前記第3正解ラベルを前記第3訓練データに関連付けることでそれぞれ生成された複数の第3データセットを取得するステップと、取得された複数の第3データセットを使用して、第3推論モデルの機械学習を実施するステップであって、当該機械学習は、前記各第3データセットについて、前記第3訓練データに対して前記第3推論モデルにより前記推論タスクを遂行した推論結果が前記第3正解ラベルにより示される正解に適合するように前記第3推論モデルを訓練することにより構成される、ステップと、を実行する、情報処理方法である。当該構成によれば、信頼性の高い正解ラベルを含むデータセットを機械学習に使用することで、生成される訓練済みモデルの性能の向上を図ることができる。
 また、上記各形態に係る各情報処理方法の別の形態として、本発明の一側面は、以上の各構成の全部又はその一部を実現する情報処理装置であってもよいし、情報処理システムであってもよいし、プログラムであってもよいし、又はこのようなプログラムを記憶した、コンピュータその他装置、機械等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。
 例えば、本発明の一側面に係るラベル生成装置は、ソースドメインにおける第1訓練データ及び当該第1訓練データに対する推論タスクの正解を示す第1正解ラベルの組み合わせによりそれぞれ構成される複数の第1データセットを用いた機械学習により生成された訓練済みの第1推論モデルを取得するように構成された第1モデル取得部と、前記第1訓練データに外乱を加えることで生成された第2訓練データ及び当該第2訓練データに対する前記推論タスクの正解を示す第2正解ラベルの組み合わせによりそれぞれ構成される複数の第2データセットを用いた機械学習により生成された訓練済みの第2推論モデルを取得するように構成された第2モデル取得部と、第3訓練データを取得するように構成されたデータ取得部と、前記訓練済みの第1推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第1推論結果を取得するように構成された第1推論部と、前記訓練済みの第2推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第2推論結果を取得するように構成された第2推論部と、前記第1推論結果及び前記第2推論結果の間の合致に基づいて、前記第3訓練データに対する第3正解ラベルを生成するように構成された生成部と、を備える。
 また、例えば、本発明の一側面に係るラベル生成プログラムは、コンピュータに、ソースドメインにおける第1訓練データ及び当該第1訓練データに対する推論タスクの正解を示す第1正解ラベルの組み合わせによりそれぞれ構成される複数の第1データセットを用いた機械学習により生成された訓練済みの第1推論モデルを取得するステップと、前記第1訓練データに外乱を加えることで生成された第2訓練データ及び当該第2訓練データに対する前記推論タスクの正解を示す第2正解ラベルの組み合わせによりそれぞれ構成される複数の第2データセットを用いた機械学習により生成された訓練済みの第2推論モデルを取得するステップと、第3訓練データを取得するステップと、前記訓練済みの第1推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第1推論結果を取得するステップと、前記訓練済みの第2推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第2推論結果を取得するステップと、前記第1推論結果及び前記第2推論結果の間の合致に基づいて、前記第3訓練データに対する第3正解ラベルを生成するステップと、を実行させるための、プログラムである。
 また、例えば、本発明の一側面に係るモデル生成装置は、上記いずれかの形態に係るラベル生成方法により生成された前記第3正解ラベルを前記第3訓練データに関連付けることでそれぞれ生成された複数の第3データセットを取得するように構成されたデータ取得部と、取得された複数の第3データセットを使用して、第3推論モデルの機械学習を実施するように構成された学習処理部であって、当該機械学習は、前記各第3データセットについて、前記第3訓練データに対して前記第3推論モデルにより前記推論タスクを遂行した推論結果が前記第3正解ラベルにより示される正解に適合するように前記第3推論モデルを訓練することにより構成される、学習処理部と、を備える。
 また、例えば、本発明の一側面に係るモデル生成プログラムは、コンピュータに、上記いずれかの形態に係るラベル生成方法により生成された前記第3正解ラベルを前記第3訓練データに関連付けることでそれぞれ生成された複数の第3データセットを取得するステップと、取得された複数の第3データセットを使用して、第3推論モデルの機械学習を実施するステップであって、当該機械学習は、前記各第3データセットについて、前記第3訓練データに対して前記第3推論モデルにより前記推論タスクを遂行した推論結果が前記第3正解ラベルにより示される正解に適合するように前記第3推論モデルを訓練することにより構成される、ステップと、を実行させるための、プログラムである。
 本発明によれば、信頼性の高い正解ラベルを含む機械学習用のデータセットを低コストで生成することができる。また、それにより得られたデータセットを機械学習に使用することで、生成される訓練済みモデルの性能の向上を図ることができる。
図1は、本発明が適用される場面の一例を模式的に示す。 図2は、実施の形態に係るラベル生成装置のハードウェア構成の一例を模式的に示す。 図3は、実施の形態に係るモデル生成装置のハードウェア構成の一例を模式的に示す。 図4は、実施の形態に係る推論装置のハードウェア構成の一例を模式的に示す。 図5は、実施の形態に係るラベル生成装置のソフトウェア構成の一例を模式的に示す。 図6は、実施の形態に係る外乱を追加する方法の一例を模式的に示す。 図7Aは、実施の形態に係る第1推論モデルの構成及び機械学習の過程の一例を模式的に示す。 図7Bは、実施の形態に係る第2推論モデルの構成及び機械学習の過程の一例を模式的に示す。 図7Cは、実施の形態に係る第1推論モデル及び識別モデル間の敵対的学習の過程の一例を模式的に示す。 図7Dは、実施の形態に係る第2推論モデル及び識別モデル間の敵対的学習の過程の一例を模式的に示す。 図8は、実施の形態に係るモデル生成装置のソフトウェア構成の一例を模式的に示す。 図9は、実施の形態に係る推論装置のソフトウェア構成の一例を模式的に示す。 図10は、実施の形態に係るラベル生成装置の処理手順の一例を示すフローチャートである。 図11は、実施の形態に係るモデル生成装置の処理手順の一例を示すフローチャートである。 図12は、実施の形態に係る推論装置の処理手順の一例を示すフローチャートである。 図13は、本発明が適用される他の場面の一例を模式的に示す。 図14は、本発明が適用される他の場面の一例を模式的に示す。 図15は、本発明が適用される他の場面の一例を模式的に示す。 図16は、第2実験における平均IoUの算出結果を示す。
 以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良及び変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
 §1 適用例
 図1は、本発明を適用した場面の一例を模式的に示す。図1に示されるとおり、本実施形態に係る推論システム100は、ラベル生成装置1、モデル生成装置2、及び推論装置3を備えている。
 (ラベル生成装置)
 本実施形態に係るラベル生成装置1は、訓練済みの推論モデルを使用して、正解ラベルの付与されていない訓練データに対して正解ラベルを生成するように構成されたコンピュータである。具体的に、ラベル生成装置1は、ソースドメインにおける第1訓練データ511及び第1訓練データ511に対する推論タスクの正解(真値)を示す第1正解ラベル513の組み合わせによりそれぞれ構成される複数の第1データセット51を用いた機械学習により生成された訓練済みの第1推論モデル61を取得する。また、ラベル生成装置1は、第1訓練データ511に外乱を加えることで生成された第2訓練データ521及び第2訓練データ521に対する推論タスクの正解(真値)を示す第2正解ラベル523の組み合わせによりそれぞれ構成される複数の第2データセット52を用いた機械学習により生成された訓練済みの第2推論モデル62を取得する。更に、ラベル生成装置1は、1又は複数件の第3訓練データ531を取得する。
 ソースドメインは、第1訓練データ511を収集する対象となるドメインである。第1訓練データ511は、ソースドメインから適宜獲得されてよい。ソースドメインにおいて第1訓練データ511を収集する方法は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。第1訓練データ511は、例えば、画像データ、音データ、数値データ、テキストデータ、グラフデータ(例えば、化学構造を示すデータ、物/人の関係性を示すグラフ等)、その他各種センサにより得られる測定データ(センシングデータ)等であってよい。一例では、第1訓練データ511は、例えば、カメラ、マイクロフォン、エンコーダ、環境センサ、バイタルセンサ、医療検査装置、車載センサ、ホームセキュリティセンサ等のセンサにより実環境を観測することで生成されてよい。環境センサは、例えば、気圧計、温度計、湿度計、音圧計、音センサ、紫外線センサ、照度計、雨量計、ガスセンサ等であってよい。バイタルセンサは、例えば、血圧計、脈拍計、心拍計、心電計、筋電計、体温計、皮膚電気反応計、マイクロ波センサ、脳波計、脳磁計、活動量計、血糖値測定器、眼電位センサ、眼球運動計測器等であってよい。医療検査装置は、例えば、CT(Computed Tomography)装置、MRI(Magnetic Resonance Imaging)装置等であってよい。車載センサは、例えば、画像センサ、Lidar(light detection and ranging)センサ、ミリ波レーダ、超音波センサ、加速度センサ等であってよい。ホームセキュリティセンサは、例えば、画像センサ、赤外線センサ、活性度(音声)センサ、ガス(CO2等)センサ、電流センサ、スマートメータ(家電、照明等の電力使用量を計測するセンサ)等であってよい。一例では、画像データは、例えば、衛星写真等の写真データにより構成されてよい。他の一例では、第1訓練データ511は、例えば、画像生成処理、音生成処理、仮想環境におけるシミュレーション等の情報処理により生成されてもよい。
 ドメインは、例えば、センサの属性、観測対象、観測環境、仮想環境の条件、生成条件等のデータを取得する条件により規定されてよい。センサの属性は、例えば、計測範囲、計測範囲の分解能(解像度等)、サンプリング周波数等の観測能力に関する属性を含んでよい。一例では、観測対象は、物の個性(例えば、固有の人物)を区別するように定義されてもよい。他の一例では、観測対象は、物の個性を区別しない(同種の物を同一に扱う)ように定義されてもよい。観測環境は、例えば、時間帯、時期(年度)、天候、場所、センサの設置角度等の観測する環境の属性により規定されてよい。時間帯は、例えば、朝、昼、夜等の表現方法により規定されてもよいし、或いは、例えば、1時から3時まで等のように正確な時間間隔で規定されてもよい。天候は、例えば、晴れ、曇り、雨、雪等の天気の状態により規定されてよい。第1訓練データ511がテキストデータを含む場合、生成条件は、例えば、言語、文化圏、世代、性別、目的、文体、投稿プラットフォーム(例えば、ソーシャルネットワークサービス、新聞、配信サービス等の媒体)等の条件を含んでよい。ドメインが相違することは、これらの条件のうちの少なくともいずれかが相違する(例えば、推論タスクに影響を及ぼす程度に相違する)ことにより構成されてよい。
 第3訓練データ531は、第1訓練データ511と同種のデータにより構成される。一例では、上記半教師あり学習の場面で本実施形態を利用する場合に、第3訓練データ531は、第1訓練データ511と同一のソースドメインにおいて獲得されたものであってよい。他の一例では、上記ドメイン適応の場面で本実施形態を利用する場合に、第3訓練データ531は、ソースドメインとは異なる目標ドメインにおいて獲得されたものであってよい。目標ドメインは、訓練済みモデルを生成し、生成された訓練済みモデルを使用して推論タスクを遂行する目標となるドメインである。目標ドメインは、上記条件のうちの少なくともいずれかがソースドメインと異なるものであってよい。
 ラベル生成装置1は、訓練済みの第1推論モデル61を使用して、取得された第3訓練データ531に対して推論タスクを遂行した第1推論結果を取得する。また、ラベル生成装置1は、訓練済みの第2推論モデル62を使用して、取得された第3訓練データ531に対して推論タスクを遂行した第2推論結果を取得する。そして、ラベル生成装置1は、第1推論結果及び第2推論結果の間の合致に基づいて、第3訓練データ531に対する第3正解ラベル533を生成する。すなわち、ラベル生成装置1は、訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62の間の意見の一致に基づいて、第3訓練データ531に対する推論タスクの正解を導出し、導出された正解を示すように構成される疑似的な正解ラベル(第3正解ラベル533)を生成する。
 なお、推論タスクは、第1推論結果及び第2推論結果の重複(合致)部分を導出可能な形態であれば、その内容は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。一例では、推論タスクは、データにおいて特徴を含む領域を抽出すること及びデータに含まれる特徴のクラスを識別することの少なくともいずれかにより構成されてよい。具体例として、推論タスクは、例えば、画像データにおいて特徴を含む領域を抽出すること(セグメンテーション)、画像データに含まれる特徴のクラスを識別すること、音データにおいて特徴を含む領域を抽出すること、音データに含まれる特徴のクラスを識別すること、その他のセンシングデータにおいて特徴を含む領域を抽出すること、センシングデータに含まれる特徴のクラスを識別すること等であってよい。その他の具体例として、推論タスクは、例えば、テキストに表れる属性(例えば、有害度、感情等)を識別すること、未入力のテキストを補完すること等であってよい。
 (モデル生成装置)
 本実施形態に係るモデル生成装置2は、ラベル生成装置1により生成された第3正解ラベル533を利用して、訓練済みモデルを生成するように構成されたコンピュータである。具体的に、モデル生成装置2は、上記ラベル生成方法により生成された第3正解ラベル533を対応する第3訓練データ531に関連付けることでそれぞれ生成された複数の第3データセット53を取得する。モデル生成装置2は、取得された複数の第3データセット53を使用して、第3推論モデル63の機械学習を実施する。第3推論モデル63の機械学習は、各第3データセット53について、第3訓練データ531に対して第3推論モデル63により推論タスクを遂行した推論結果が対応する第3正解ラベル533により示される正解に適合するように第3推論モデル63を訓練することにより構成される。この機械学習を実行した結果として、訓練済みの第3推論モデル63を生成することができる。生成された訓練済みの第3推論モデル63は、任意のタイミングで推論装置3に提供されてよい。
 (推論装置)
 本実施形態に係る推論装置3は、モデル生成装置2により生成された訓練済みの第3推論モデル63を使用して、推論タスクを遂行するように構成されたコンピュータである。具体的に、推論装置3は、推論タスクを遂行する対象となる対象データ321を取得する。対象データ321は、各訓練データ(511、521、531)と同種のデータである。対象データ321は、任意のドメインにおいて獲得されてよい。上記ドメイン適応の場面で本実施形態を利用する場合、対象データ321は、目標ドメインにおいて獲得されてよい。推論装置3は、訓練済みの第3推論モデル63を使用して、取得された対象データ321に対して推論タスクを遂行する。これにより、推論装置3は、対象データ321に対して推論タスクを遂行した推論結果を取得する。推論装置3は、推論結果に関する情報を出力する。
 (特徴)
 以上のとおり、本実施形態では、第1訓練データ511に外乱を追加することで、異なるデータセット(第1データセット51、第2データセット52)が機械学習のために用意される。外乱の追加は自動化可能であるため、第2データセット52は、第1データセット51から容易にかつ低コストで生成可能である。また、異なるデータセット由来の訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62をそれぞれ用意することで、第3訓練データ531に対して異なる視点で推論タスクを遂行した推論結果を得ることができる。そして、異なる視点で得られた推論結果の合致に基づき第3正解ラベル533を生成するようにすることで、異なる視点に共通の特徴(すなわち、推論タスクに真に関連するデータの特徴)から適切な正解を得る可能性を高めることができる。その結果、信頼性の高い第3正解ラベル533を生成することができる。加えて、第3正解ラベル533を生成する少なくとも一部の処理を自動化することができる。したがって、本実施形態に係るラベル生成装置1によれば、信頼性の高い第3正解ラベル533を含む機械学習用の第3データセット53を低コストで生成することができる。また、本実施形態に係るモデル生成装置2によれば、信頼性の高い第3正解ラベル533を含む第3データセット53を機械学習に使用することで、生成される訓練済みの第3推論モデル63の推論性能の向上を図ることができる。更に、本実施形態に係る推論装置3によれば、そのように生成された訓練済みの第3推論モデル63を使用することで、対象データ321に対する精度の高い推論タスクの遂行を期待することができる。
 なお、一例では、図1に示されるとおり、ラベル生成装置1、モデル生成装置2及び推論装置3は、ネットワークを介して互いに接続されてよい。ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。ただし、ラベル生成装置1、モデル生成装置2及び推論装置3の間でデータをやりとりする方法は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。他の一例では、ラベル生成装置1、モデル生成装置2及び推論装置3の間では、記憶媒体を利用して、データがやりとりされてよい。
 また、図1の例では、ラベル生成装置1、モデル生成装置2及び推論装置3は、それぞれ別個のコンピュータである。しかしながら、本実施形態に係るシステムの構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。他の一例では、ラベル生成装置1、モデル生成装置2及び推論装置3のうちの少なくともいずれかのペアは一体のコンピュータであってよい。具体例として、ラベル生成装置1、モデル生成装置2及び推論装置3は、一体のコンピュータで構成されてよい。ラベル生成装置1及びモデル生成装置2は、一体のコンピュータで構成されてよい。或いは、モデル生成装置2及び推論装置3は、一体のコンピュータで構成されてよい。更に他の一例では、ラベル生成装置1、モデル生成装置2及び推論装置3のうちの少なくともいずれかは、複数台のコンピュータにより構成されてよい。
 §2 構成例
 [ハードウェア構成]
 <ラベル生成装置>
 図2は、本実施形態に係るラベル生成装置1のハードウェア構成の一例を模式的に例示する。図2に示されるとおり、本実施形態に係るラベル生成装置1は、制御部11、記憶部12、通信インタフェース13、外部インタフェース14、入力装置15、出力装置16、及びドライブ17が電気的に接続されたコンピュータである。なお、図2では、通信インタフェース及び外部インタフェースを「通信I/F」及び「外部I/F」と記載している。後述する図3及び図4でも同様の表記を用いる。
 制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、プログラム及び各種データに基づいて情報処理を実行するように構成される。制御部11(CPU)は、プロセッサ・リソースの一例である。記憶部12は、メモリ・リソースの一例であり、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部12は、ラベル生成プログラム81、第1学習結果データ71、第2学習結果データ72、第3訓練データ531等の各種情報を記憶する。
 ラベル生成プログラム81は、第3訓練データ531に対する第3正解ラベル533を生成する情報処理(後述の図10)をラベル生成装置1に実行させるためのプログラムである。ラベル生成プログラム81は、当該情報処理の一連の命令を含む。第1学習結果データ71は、訓練済みの第1推論モデル61に関する情報を示す。第2学習結果データ72は、訓練済みの第2推論モデル62に関する情報を示す。
 通信インタフェース13は、例えば、有線LAN(Local Area Network)モジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。ラベル生成装置1は、通信インタフェース13を介して、他のコンピュータ(例えば、モデル生成装置2)との間でデータ通信を行ってよい。
 外部インタフェース14は、例えば、USB(Universal Serial Bus)ポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース14の種類及び数は任意に選択されてよい。ラベル生成装置1は、通信インタフェース13又は外部インタフェース14を介して、訓練データを得るためのセンサに接続されてよい。
 入力装置15は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置16は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置15及び出力装置16を利用することで、ラベル生成装置1を操作することができる。入力装置15及び出力装置16は、例えば、タッチパネルディスプレイ等により一体的に構成されてもよい。
 ドライブ17は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体91に記憶されたプログラム等の各種情報を読み込むためのドライブ装置である。上記ラベル生成プログラム81、第1学習結果データ71、第2学習結果データ72及び第3訓練データ531の少なくともいずれかは、この記憶媒体91に記憶されていてもよい。
 記憶媒体91は、コンピュータその他装置、機械等が、記憶されたプログラム等の各種情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。ラベル生成装置1は、この記憶媒体91から、上記ラベル生成プログラム81、第1学習結果データ71、第2学習結果データ72及び第3訓練データ531の少なくともいずれかを取得してもよい。
 ここで、図2では、記憶媒体91の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体91の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。ドライブ17の種類は、記憶媒体91の種類に応じて適宜選択されてよい。
 なお、ラベル生成装置1の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部11は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA(field-programmable gate array)、DSP(digital signal processor)等で構成されてよい。記憶部12は、制御部11に含まれるRAM及びROMにより構成されてもよい。通信インタフェース13、外部インタフェース14、入力装置15、出力装置16及びドライブ17の少なくともいずれかは省略されてもよい。ラベル生成装置1は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、ラベル生成装置1は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC(Personal Computer)等であってもよい。
 <モデル生成装置>
 図3は、本実施形態に係るモデル生成装置2のハードウェア構成の一例を模式的に例示する。図3に示されるとおり、本実施形態に係るモデル生成装置2は、制御部21、記憶部22、通信インタフェース23、外部インタフェース24、入力装置25、出力装置26、及びドライブ27が電気的に接続されたコンピュータである。
 モデル生成装置2の制御部21~ドライブ27及び記憶媒体92はそれぞれ、上記ラベル生成装置1の制御部11~ドライブ17及び記憶媒体91それぞれと同様に構成されてよい。制御部21は、ハードウェアプロセッサであるCPU、RAM、ROM等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部22は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部22は、モデル生成プログラム82、複数の第3データセット53、第3学習結果データ73等の各種情報を記憶する。
 モデル生成プログラム82は、訓練済みの第3推論モデル63を生成する機械学習に関する情報処理(後述の図11)をモデル生成装置2に実行させるためのプログラムである。モデル生成プログラム82は、当該情報処理の一連の命令を含む。複数の第3データセット53は、訓練済みの第3推論モデル63の生成(すなわち、第3推論モデル63の機械学習)に使用される。第3学習結果データ73は、生成された訓練済みの第3推論モデル63に関する情報を示す。本実施形態では、第3学習結果データ73は、モデル生成プログラム82を実行した結果として生成される。
 モデル生成プログラム82及び複数の第3データセット53の少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、モデル生成装置2は、モデル生成プログラム82及び複数の第3データセット53の少なくともいずれかを記憶媒体92から取得してもよい。第3学習結果データ73は、記憶媒体92に格納されてもよい。
 モデル生成装置2は、通信インタフェース23及び外部インタフェース24の少なくともいずれかを介して、第3データセット53を取得するためのデバイス(センサ、他のコンピュータ、外部記憶装置等)に接続されてよい。モデル生成装置2は、入力装置25及び出力装置26の利用により、オペレータからの操作及び入力を受け付けてよい。
 なお、モデル生成装置2の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部21は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA、DSP等で構成されてよい。記憶部22は、制御部21に含まれるRAM及びROMにより構成されてもよい。通信インタフェース23、外部インタフェース24、入力装置25、出力装置26、及びドライブ27の少なくともいずれかは省略されてもよい。モデル生成装置2は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、モデル生成装置2は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
 <推論装置>
 図4は、本実施形態に係る推論装置3のハードウェア構成の一例を模式的に例示する。図4に示されるとおり、本実施形態に係る推論装置3は、制御部31、記憶部32、通信インタフェース33、外部インタフェース34、入力装置35、出力装置36、及びドライブ37が電気的に接続されたコンピュータである。
 推論装置3の制御部31~ドライブ37及び記憶媒体93はそれぞれ、上記ラベル生成装置1の制御部11~ドライブ17及び記憶媒体91それぞれと同様に構成されてよい。制御部31は、ハードウェアプロセッサであるCPU、RAM、ROM等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部32は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部32は、推論プログラム83、第3学習結果データ73等の各種情報を記憶する。
 推論プログラム83は、訓練済みの第3推論モデル63を使用して推論タスクを遂行する情報処理(後述の図12)を推論装置3に実行させるためのプログラムである。推論プログラム83は、当該情報処理の一連の命令を含む。推論プログラム83及び第3学習結果データ73の少なくともいずれかは、記憶媒体93に記憶されていてもよい。また、推論装置3は、推論プログラム83及び第3学習結果データ73の少なくともいずれかを記憶媒体93から取得してもよい。
 推論装置3は、通信インタフェース33及び外部インタフェース34の少なくともいずれかを介して、対象データ321を取得するためのデバイス(センサ、他のコンピュータ、外部記憶装置等)に接続されてよい。推論装置3は、入力装置35及び出力装置36の利用により、オペレータからの操作及び入力を受け付けてよい。なお、ラベル生成装置1、モデル生成装置2、及び推論装置3の少なくともいずれかのペアのオペレータは一致していてもよい。或いは、各装置1~3のオペレータは、一致していなくてもよい。
 なお、推論装置3の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部31は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA、DSP等で構成されてよい。記憶部32は、制御部31に含まれるRAM及びROMにより構成されてもよい。通信インタフェース33、外部インタフェース34、入力装置35、出力装置36、及びドライブ37の少なくともいずれかは省略されてもよい。推論装置3は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、推論装置3は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、タブレットPC、携帯端末(例えば、スマートフォン)、産業用PC、PLC(programmable logic controller)等であってもよい。
 [ソフトウェア構成]
 <ラベル生成装置>
 図5は、本実施形態に係るラベル生成装置1のソフトウェア構成の一例を模式的に例示する。ラベル生成装置1の制御部11は、記憶部12に記憶されたラベル生成プログラム81をRAMに展開する。そして、制御部11は、RAMに展開されたラベル生成プログラム81に含まれる命令をCPUにより実行する。これにより、図5に示されるとおり、本実施形態に係るラベル生成装置1は、第1モデル取得部111、第2モデル取得部112、データ取得部113、第1推論部114、第2推論部115、生成部116、及び出力部117をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、ラベル生成装置1の各ソフトウェアモジュールは、制御部11(CPU)により実現される。
 第1モデル取得部111は、機械学習により生成された訓練済みの第1推論モデル61を取得するように構成される。第2モデル取得部112は、機械学習により生成された訓練済みの第2推論モデル62を取得するように構成される。
 訓練済みの第1推論モデル61は、複数の第1データセット51を用いた機械学習により生成される。各第1データセット51は、第1訓練データ511及び第1正解ラベル513の組み合わせにより構成される。各第1データセット51の第1訓練データ511は、ソースドメインにおいて収集される。第1正解ラベル513は、対応する第1訓練データ511に対する推論タスクの正解(真値)を示すように構成される。
 一方、訓練済みの第2推論モデル62は、複数の第2データセット52を用いた機械学習により生成される。各第2データセット52は、第2訓練データ521及び第2正解ラベル523の組み合わせにより構成される。各第2データセット52の第2訓練データ521は、複数の第1データセット51のうちのいずれかに含まれる第1訓練データ511に外乱を加えることで生成される。第2正解ラベル523は、対応する第2訓練データ521に対する推論タスクの正解(真値)を示すように構成される。
 データ取得部113は、第3訓練データ531を取得するように構成される。取得する第3訓練データ531の件数は、実施の形態に応じて適宜決定されてよい。第1推論部114は、訓練済みの第1推論モデル61を使用して、取得された第3訓練データ531に対して推論タスクを遂行することにより、第1推論結果を取得するように構成される。第2推論部115は、訓練済みの第2推論モデル62を使用して、取得された第3訓練データ531に対して推論タスクを遂行することにより、第2推論結果を取得するように構成される。生成部116は、第1推論結果及び第2推論結果の間の合致に基づいて、第3訓練データ531に対する第3正解ラベル533を生成するように構成される。出力部117は、生成された第3正解ラベル533を出力するように構成される。
 (外乱を追加する方法の一例)
 図6は、本実施形態に係る外乱を追加する方法の一例を模式的に例示する。図6の方法では、機械学習により生成された訓練済みの変換モデル65が外乱の追加に使用される。すなわち、第1訓練データ511に外乱を加えることは、訓練済みの変換モデル65を使用して第1訓練データ511を変換することにより構成されてよい。
 変換モデル65は、例えば、ニューラルネットワーク等の任意の機械学習モデルにより構成されてよい。スタイルを変換する演算処理を実行可能であれば、変換モデル65の構成及び構造は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。ニューラルネットワークを変換モデル65の構成に採用する場合、変換モデル65は、例えば、畳み込み層、プーリング層、ドロップアウト層、逆畳み込み層、アップサンプリング層、全結合層等の任意種類の層を含んでもよい。また、変換モデル65における層の数、各層のノード(ニューロン)の数及びノードの接続関係は実施の形態に応じて適宜決定されてよい。変換モデル65は、再帰構造及び残差構造の少なくともいずれかを有してもよい。機械学習モデルは、タスクを解く演算を実行するためのパラメータであって、機械学習により調整されるパラメータを備える。ニューラルネットワークを採用する場合、各ノード間の結合の重み、各ノードの閾値等が、パラメータの一例である。
 訓練済みの変換モデル65は、第1訓練データ511及び第3訓練データ531を使用した機械学習により、第1訓練データ511のスタイルを第3訓練データ531のスタイルに変換する能力を獲得するように生成されたものであってよい。すなわち、そのような能力を獲得するように、変換モデル65のパラメータの値は、第1訓練データ511及び第3訓練データ531を使用した機械学習により調整されてよい。機械学習の方法は、採用する機械学習モデルの構成に応じて適宜決定されてよい。スタイルは、例えば、アピアランス、テクスチャ等の様式又は表現を規定する属性である。
 このような訓練済みの変換モデル65を生成する方法には、例えば、参考文献1「Gatys, Leon A., Alexander S. Ecker, and Matthias Bethge, "Image style transfer using convolutional neural networks", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016」、参考文献2「Xun Huang, Serge Belongie, "Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization", [online],[令和3年7月7日検索],インターネット<URL:https://arxiv.org/abs/1703.06868>」、参考文献3「Yijun Li、Ming-Yu Liu、Xueting Li、Ming-Hsuan Yang、Jan Kautz, "A Closed-form Solution to Photorealistic Image Stylization", [online],[令和3年7月7日検索],インターネット<URL:https://arxiv.org/abs/1802.06474>」、参考文献4「Jaejun Yoo, Youngjung Uh, Sanghyuk Chun, Byeongkyu Kang, Jung-Woo Ha, "Photorealistic Style Transfer via Wavelet Transforms", [online],[令和3年7月7日検索],インターネット<URL:https://arxiv.org/abs/1903.09760>」等で提案される方法が採用されてよい。これにより、訓練済みの変換モデル65を生成することができる。具体的な構成の一例として、変換モデル65は、エンコーダ及びデコーダにより構成されてよい。エンコーダは、コンテンツ画像データ及びスタイル画像データを入力として受け付けるように構成されてよい。変換モデル65は、コンテンツ画像データのコンテンツに関する特徴量を保持するように訓練されてよい。加えて、変換モデル65は、コンテンツ画像データ及びスタイル画像データ間で、スタイルに関する特徴量を一致するように訓練されてよい。この訓練において、第1訓練データ511がコンテンツ画像データに使用され、第3訓練データ531がスタイル画像データに使用されてよい。この訓練済みの変換モデル65によれば、第1訓練データ511及び第3訓練データ531をそれぞれ訓練済みのエンコーダにより特徴量に変換する。訓練済みのデコーダにより、得られた第1訓練データ511の特徴量から訓練データを復元する。これにより、第1訓練データ511のコンテンツに適合するコンテンツを有し、第3訓練データ531のスタイルに適合するスタイルを有する第2訓練データ521を生成することができる。なお、推論タスクが特徴を含む領域を抽出することである場合、当該特徴を含む領域を示す情報(正解ラベル)を変換モデル65の機械学習に反映してよい。この場合、変換モデル65の機械学習に使用される第3訓練データ531には適宜正解ラベルが与えられてよい。
 第2訓練データ521は、生成された訓練済みの変換モデル65を使用して、複数の第1データセット51の少なくともいずれかに含まれる第1訓練データ511のスタイルを変換することにより生成されてよい。すなわち、訓練済みの変換モデル65に第1訓練データ511を入力し、訓練済みの変換モデル65の演算処理を実行する。第2訓練データ521は、この訓練済みの変換モデル65の演算処理の実行結果として得られてよい。
 この外乱の追加方法によれば、第3訓練データ531のスタイルに適合するスタイルを有する第2訓練データ521を機械学習に使用することで生成された訓練済みの第2推論モデル62が用意される。訓練済みの第2推論モデル62は、第3訓練データ531のスタイル上で推論タスクを遂行する能力を獲得している。そのため、ソースドメインと異なる目標ドメインにおいて第3訓練データ531を獲得する場合に、この訓練済みの第2推論モデル62を訓練済みの第1推論モデル61と共に第3正解ラベル533の生成に使用することで、第3訓練データ531に対して推論タスクの適切な正解を得る可能性を高めることができる。したがって、第2訓練データ521を得る際にこの外乱の追加方法を採用することで、より信頼性の高い第3正解ラベル533を含む機械学習用の第3データセット53を生成することができる。
 なお、訓練済みの変換モデル65は、インスタンスの境界を変更することなくスタイルを変換する能力を獲得していてもよい。このような変換の一例として、変換するデータが画像データであり、推論タスクが画像データにおいて特徴を含む領域を抽出することである場合、訓練済みの変換モデル65は、当該領域のエッジの位置を変更することなく、表面のテクスチャを変更するように構成されてよい。他の一例として、変換するデータが音声データであり、推論タスクが音声データに含まれる特徴を識別する(例えば、音声認識を行う)場合、訓練済みの変換モデル65は、音声の内容を変更することなく、音声の高さ等のアピアランスを変更するように構成されてよい。更に他の一例として、変換するデータがテキストデータであり、推論タスクがテキストデータに含まれる特徴を識別する(例えば、文字認識を行う)場合、文章の意味を変更することなく、文調等のアピアランスを変更するように構成されてよい。これらの場合、変換後の第2訓練データ521に対して第1正解ラベル513をそのまま第2正解ラベル523として用いることができる。
 上記機械学習の結果として、訓練済みの変換モデル65を示す学習結果データ75が生成されてよい。訓練済みの変換モデル65の演算を実行するための情報を保持可能であれば、学習結果データ75の構成は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。一例として、学習結果データ75は、変換モデル65の構成(例えば、ニューラルネットワークの構造等)及び機械学習により調整されたパラメータの値を示す情報を含むように構成されてよい。学習結果データ75は、任意の記憶領域に保存されてよい。学習結果データ75は、訓練済みの変換モデル65をコンピュータ上で使用可能な状態に設定するために適宜参照されてよい。
 一例では、変換モデル65の機械学習に関する処理及び第2訓練データ521を生成する処理は同一のコンピュータにおいて実行されてよい。他の一例では、変換モデル65の機械学習に関する処理及び第2訓練データ521を生成する処理は異なるコンピュータにおいて実行されてよい。変換モデル65の機械学習に関する処理を実行する第1コンピュータと第2訓練データ521を生成する第2コンピュータとが異なる場合、任意のタイミングで訓練済みの変換モデル65(学習結果データ75)が第1コンピュータから第2コンピュータに提供されてよい。第1コンピュータ及び第2コンピュータはそれぞれ、ラベル生成装置1、モデル生成装置2、及び推論装置3の少なくともいずれかであってもよいし、或いはこれら以外の他のコンピュータであってもよい。
 ただし、変換モデル65に獲得させる能力は、上記の例に限定されなくてよい。他の一例では、外乱を加えることは、例えば、ランダムなスタイル等の第3訓練データ531に依らないスタイルに変換することにより構成されてよい。変換モデルは、そのようなスタイルの変換を行う能力を獲得するように適宜生成されてよい。また、外乱を加える方法は、このような変換モデルによる方法に限られなくてよい。他の一例として、外乱を加えることは、例えば、ノイズを加える、ジッターを変更する(画像データの場合、色空間上で調整する)、グレースケール化、コントラスト正規化、ガンマ補正、(カラー)ヒストグラムの平坦化、幾何変換を行う等の任意のランダム化又は拡大方法が採用されてよい。これらの方法でも、訓練データ(第1訓練データ511、第2訓練データ521)のスタイルの多様性を高めることができ、訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62による推論結果のロバスト性を高めることができる。その結果、生成される第3正解ラベル533の信頼性の向上を図ることができる。
 なお、第1訓練データ511にノイズを加えることは、勾配降下法に従い、推論タスクの損失関数を最大化するような摂動(敵対的ノイズ)を第1訓練データ511に追加することにより構成されてよい。敵対的ノイズは、第1推論モデル61が推論タスクを解くのを困難にさせるものであり、これを含む第2訓練データ521を使用して訓練された第2推論モデル62は、第1推論モデル61とは異なる視点で推論タスクを解く能力を獲得することができる。その結果、訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62を使用して、信頼性の高い第3正解ラベル533を生成することができる。
 第2推論モデル62の機械学習を実施するにあたり、生成する第2データセット52の件数は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。第2データセット52の件数は、第1データセット51の件数と一致していてもよいし、或いは一致していなくてもよい。1件の第1訓練データ511に異なる外乱を追加することで、1件の第1訓練データ511から複数の第2訓練データ521を生成してもよい。第2訓練データ521の生成に使用されない第1訓練データ511が存在してもよい。
 一例では、上記変換モデル65の機械学習に関する処理及び第2訓練データ521(第2データセット52)を生成する処理は、ラベル生成装置1(第2モデル取得部112)において実行されてよい。この場合、各処理は、訓練済みの第2推論モデル62を取得する処理の一部として実行されてよい。他の一例では、変換モデル65の機械学習に関する処理及び第2訓練データ521を生成する処理の少なくともいずれかは、ラベル生成装置1以外の他のコンピュータにおいて実行されてよい。
 また、各第2データセット52の第2正解ラベル523は適宜生成されてよい。一例では、第2正解ラベル523を生成する処理の少なくとも一部は人手によるものであってよい。他の一例では、第2正解ラベル523は、対応する第1正解ラベル513から自動的に生成されてよい。例えば、上記インスタンスの境界を変更することなくスタイルを変換するように変換モデル65が訓練された場合、推論タスクが画像データにおいて特徴を含む領域を抽出することであり、外乱を加えることが色の変換及びノイズの追加の少なくともいずれかである場合等、加える外乱が推論タスクの正解を変更しない場合がある。このような場合、外乱を加えた第1訓練データ511に関連付けられた第1正解ラベル513をそのまま第2正解ラベル523として採用してよい。その他、例えば、推論タスクが画像データにおいて特徴を含む領域を抽出することであり、外乱を加えることが幾何変換を行うことにより構成される場合等のように、外乱を加えた後の第2訓練データ521に対する推論タスクの正解が、加える外乱に基づいて、対応する第1正解ラベル513から導出可能である場合がある。このような場合、第2正解ラベル523は、対応する第1正解ラベル513に外乱による変更を適用することで生成されてよい。
 (推論モデル及び機械学習方法の一例)
 図7A及び図7Bは、本実施形態に係る各推論モデル(61、62)の構成及び機械学習の過程の一例を模式的に例示する。
 各推論モデル(61、62)は、機械学習により調整されるパラメータを備える機械学習モデルにより構成される。各推論モデル(61、62)は、例えば、ニューラルネットワーク等の任意の機械学習モデルにより構成されてよい。推論タスクを遂行する演算処理を実行可能であれば、各推論モデル(61、62)の構成及び構造は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。第1推論モデル61の構成及び第2推論モデル62の構成は、互いに一致していてもよいし、或いは異なっていてもよい。図7A及び図7Bの例では、各推論モデル(61、62)には、ニューラルネットワークが採用されている。上記変換モデル65と同様に、各推論モデル(61、62)に含まれる層の種類、層の数、各層のノードの数及びノードの接続関係は、実施の形態に応じて適宜決定されてよい。各推論モデル(61、62)は、再帰構造及び残差構造の少なくともいずれかを有してもよい。
 図7Aに示すとおり、第1推論モデル61の機械学習には、複数の第1データセット51が使用される。各第1データセット51は、第1訓練データ511及び第1正解ラベル513の組み合わせにより構成される。複数の第1データセット51は適宜収集されてよい。上記のとおり、第1訓練データ511は、ソースドメインから適宜獲得されてよい。対応する第1正解ラベル513は、オペレータの入力により得られてもよいし、或いは任意のモデルを用いたコンピュータの情報処理により得られてもよい。各第1データセット51は、コンピュータの動作により自動的に生成されてもよいし、或いは少なくとも部分的にオペレータによる操作を含むことで手動的に生成されてもよい。
 第1推論モデル61の機械学習は、各第1データセット51について、第1訓練データ511に対して第1推論モデル61により推論タスクを遂行した結果が対応する第1正解ラベル513により示される正解に適合するものとなるように第1推論モデル61を訓練することにより構成される。すなわち、機械学習では、各第1データセット51の第1訓練データ511に対する推論結果と第1正解ラベル513により示される正解との間の誤差が小さくなるように第1推論モデル61のパラメータの値が調整(最適化)される。機械学習の方法は、採用する機械学習モデルの構成に応じて適宜決定されてよい。訓練処理には、例えば、確率的勾配降下法、ミニバッチ勾配降下法等が用いられてよい。
 ニューラルネットワークを採用する場合の訓練処理の一例として、各第1データセット51の第1訓練データ511を第1推論モデル61に入力し、第1推論モデル61の順伝播の演算処理を実行する。この順伝播の演算結果として、第1訓練データ511に対する推論結果を第1推論モデル61から取得する。取得された推論結果と対応する第1正解ラベル513により示される正解との間の誤差を算出し、算出された誤差の勾配を更に算出する。続いて、誤差逆伝播法により、算出された誤差の勾配を逆伝播することで、第1推論モデル61のパラメータの値の誤差を算出する。そして、算出された誤差に基づいて、パラメータの値を更新する。この一連の更新処理により、推論結果と正解との間の誤差の和が小さくなるように、第1推論モデル61のパラメータの値を調整する。このパラメータの値の調整は、例えば、規定回数実行する、算出される誤差の和が閾値以下になる等の所定の条件を満たすまで繰り返されてよい。また、例えば、損失関数、学習率等の機械学習の条件は、実施の形態に応じて適宜設定されてよい。この機械学習の処理により、使用した複数の第1データセット51に応じて推論タスクを遂行する能力を獲得した訓練済みの第1推論モデル61を生成することができる。
 一方、図7Bに示されるとおり、第2推論モデル62の機械学習には、複数の第2データセット52が使用される。各第2データセット52は、第2訓練データ521及び第2正解ラベル523の組み合わせにより構成される。上記のとおり、第2訓練データ521は、第1訓練データ511に外乱を加えることで生成される。第2正解ラベル523は適宜生成されてよい。
 第2推論モデル62の機械学習は、各第2データセット52について、第2訓練データ521に対して第2推論モデル62により推論タスクを遂行した結果が対応する第2正解ラベル523により示される正解に適合するものとなるように第2推論モデル62を訓練することにより構成される。すなわち、機械学習では、各第2データセット52の第2訓練データ521に対する推論結果と第2正解ラベル523により示される正解との間の誤差が小さくなるように第2推論モデル62のパラメータの値が調整(最適化)される。
 機械学習に使用するデータが異なる点を除き、第2推論モデル62の機械学習の方法は、上記第1推論モデル61と同様であってよい。ニューラルネットワークを採用する場合の一例として、誤差逆伝播法により、各第2データセット52の第2訓練データ521に対する推論結果と対応する第2正解ラベル523により示される正解との間の誤差が小さくなるように第2推論モデル62のパラメータの値は調整されてよい。
 なお、各推論モデル(61、62)の機械学習に含まれる訓練は、上記推論タスクを遂行する能力を獲得するための訓練のみに限られなくてよい。例えば、推論タスクの遂行精度の向上を図るため等の任意の目的で、各推論モデル(61、62)の機械学習は、追加的な訓練を更に含んでよい。一例では、各推論モデル(61、62)の機械学習は、以下の図7C及び図7Dに例示される敵対的学習を更に含んでもよい。
 図7C及び図7Dは、本実施形態に係る各推論モデル(61、62)及び識別モデル(67、68)の間の敵対的学習の過程の一例を模式的に例示する。第1識別モデル67は、第1推論モデル61の推論結果がいずれの訓練データ(511、531)に対するものであるかを当該推論結果から識別するように構成される。第2識別モデル68は、第2推論モデル62の推論結果がいずれの訓練データ(521、531)に対するものであるかを当該推論結果から識別するように構成される。
 各推論モデル(61、62)等と同様に、各識別モデル(67、68)は、機械学習により調整されるパラメータを備える機械学習モデルにより構成される。各推論モデル(61、62)等と同様に、各識別モデル(67、68)は、例えば、ニューラルネットワーク等の任意の機械学習モデルにより構成されてよい。上記識別の演算処理を実行可能であれば、各識別モデル(67、68)の構成及び構造は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。図7C及び図7Dの例では、各識別モデル(67、68)には、ニューラルネットワークが採用されている。ニューラルネットワークの構造(例えば、層の種類、層の数、各層のノードの数、ノードの接続関係、再帰構造の有無、残差構造の有無等)は、実施の形態に応じて適宜決定されてよい。
 第1推論モデル61の敵対的学習は、第1訓練データ511及び第3訓練データ531を使用して、第1推論モデル61の推論結果が第1訓練データ511及び第3訓練データ531のいずれの訓練データに対するものであるかを識別するように第1識別モデル67を訓練すること、及び第1訓練データ511及び第3訓練データ531を使用して、第1識別モデル67の識別性能を低下させるように第1推論モデル61を訓練することにより構成される。また、第2推論モデル62の敵対的学習は、第2訓練データ521及び第3訓練データ531を使用して、第2推論モデル62の推論結果が第2訓練データ521及び第3訓練データ531のいずれの訓練データに対するものであるかを識別するように第2識別モデル68を訓練すること、及び第2訓練データ521及び第3訓練データ531を使用して、第2識別モデル68の識別性能を低下させるように第2推論モデル62を訓練することにより構成される。すなわち、上記推論タスクを遂行する能力を獲得するための機械学習の処理と同様に、各訓練処理では、各条件を達成するように、各推論モデル(61、62)及び各識別モデル(67、68)のパラメータの値が調整(最適化)される。各訓練処理は、上記推論タスクを遂行する能力を獲得するための訓練処理と同様であってよい。
 ニューラルネットワークを採用する場合の一例として、第1推論モデル61の敵対的学習では、第1訓練データ511及び第3訓練データ531をそれぞれ第1推論モデル61に入力し、第1推論モデル61の順伝播の演算処理を実行する。この演算処理の結果として、第1訓練データ511及び第3訓練データ531それぞれに対する推論結果を取得する。続いて、データ毎に推論結果を第1識別モデル67に入力し、第1識別モデル67の順伝播の演算処理を実行する。この演算処理の結果として、各推論結果に対する第1識別モデル67の識別結果を取得する。そして、取得された識別結果と正解(真値)との間の誤差を算出する。
 ここで、図7Cの例では、第1推論モデル61及び第1識別モデル67の間には、勾配反転層671が設けられている。勾配反転層671は、順伝播の演算の際は値をそのまま通過させ、逆伝播時には値を反転するように構成される。そのため、誤差逆伝播法により、算出される誤差が小さくなるように、第1識別モデル67及び第1推論モデル61のパラメータの値を調整することにより、上記第1識別モデル67の訓練及び第1推論モデル61の訓練処理を同時に達成することができる。すなわち、算出される誤差が小さくなるように第1識別モデル67のパラメータの値を調整することで、上記識別タスクを遂行する能力を獲得するように第1識別モデル67を訓練することができる。また、勾配反転層671により反転された誤差の勾配を利用して、第1推論モデル61のパラメータの値を調整することで、第1識別モデル67の識別性能を低下させるように第1推論モデル61を訓練することができる。
 同様に、第2推論モデル62の敵対的学習では、第2訓練データ521及び第3訓練データ531をそれぞれ第2推論モデル62に入力し、第2推論モデル62の順伝播の演算処理を実行する。この演算処理の結果として、第2訓練データ521及び第3訓練データ531それぞれに対する推論結果を取得する。続いて、データ毎に推論結果を第2識別モデル68に入力し、第2識別モデル68の順伝播の演算処理を実行する。この演算処理の結果として、各推論結果に対する第2識別モデル68の識別結果を取得する。そして、取得された識別結果と正解(真値)との間の誤差を算出する。
 上記図7Cの例と同様に、図7Dの例では、第2推論モデル62及び第2識別モデル68の間には、勾配反転層681が設けられている。勾配反転層681は、上記勾配反転層671と同様に構成される。そのため、誤差逆伝播法により、算出される誤差が小さくなるように、第2識別モデル68及び第2推論モデル62のパラメータの値を調整することにより、上記第2識別モデル68の訓練及び第2推論モデル62の訓練処理を同時に達成することができる。
 なお、第1識別モデル67及び第2識別モデル68の構成は、互いに一致していてもよいし、或いは異なっていてもよい。一例では、第1識別モデル67及び第2識別モデル68は別々に設けられてよい。他の一例では、第1識別モデル67及び第2識別モデル68は同一であってよい。すなわち、第1推論モデル61及び第2推論モデル62に対して共通の識別モデルが用意されてよい。この場合、第1推論モデル61の敵対的学習及び第2推論モデル62の敵対的学習の処理の少なくとも一部は同時に実行されてよい。
 本実施形態では、各推論モデル(61、62)は、識別モデル(67、68)との間での上記敵対的学習により更に訓練されたものであってよい。ソースドメインと異なる目標ドメインにおいて第3訓練データ531を獲得する場合に、この敵対的学習が行われることで、ソースドメイン、外乱を加えた状態、及び目標ドメインに共通の特徴を捉えるように訓練された各推論モデル(61、62)が用意され得る。つまり、この敵対的学習の結果、推論タスクを遂行する際に、ソースドメイン、外乱、及び目標ドメイン間のギャップの影響を訓練済みの各推論モデル(61、62)が受け難いようにすることができる。したがって、この敵対的学習を採用することで、より信頼性の高い第3正解ラベル533を含む機械学習用の第3データセット53を生成することができる。
 一方で、各識別モデル(67、68)が推論結果の全体的な特徴を捉えて由来を識別するように構成されると、敵対的学習において、各識別モデル(67、68)は、ラベル分布の違いに基づいて識別する能力を獲得する可能性がある。各識別モデル(67、68)がそのような能力を獲得してしまうと、各推論モデル(61、62)は、敵対的学習により、各識別モデル(67、68)の識別性能を低下させるように訓練されるため、ラベル分布の差を無くすような特徴を抽出する能力を獲得する可能性がある。その結果、各推論モデル(61、62)の推論精度が悪化してしまう恐れがある。これに対処するため、各識別モデル(67、68)は、所定の単位毎に由来を識別するように構成されてよい。各訓練データ(511、521、531)が画像データにより構成される場合、所定の単位は、例えば、画素であってよい。各訓練データ(511、521、531)が音データ又はセンシングデータにより構成される場合、所定の単位は、例えば、周波数成分であってよい。
 一例として、各訓練データ(511、521、531)が画像データにより構成されてよく、推論タスクは、画像データにおいて特徴を含む領域を抽出することにより構成されてよい。この場合、上記敵対的学習において、第1識別モデル67は、第1訓練データ511及び第3訓練データ531を使用して、第1推論モデル61の推論結果が第1訓練データ511及び第3訓練データ531のいずれの訓練データに対するものであるかを画素毎に識別するように訓練されてよい。第2識別モデル68は、第2訓練データ521及び第3訓練データ531を使用して、第2推論モデル62の推論結果が第2訓練データ521及び第3訓練データ531のいずれの訓練データに対するものであるかを画素毎に識別するように訓練されてよい。これら以外に関しては、上記敵対的学習と同様であってよい。
 このように所定の単位毎に識別するように各識別モデル(67、68)を構成することで、各識別モデル(67、68)による識別をラベル分布の近いとは無関係にすることができる。これにより、敵対的学習における上記各推論モデル(61、62)の推論精度の悪化を防ぐことができる。その結果、推論精度の高い訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62を用意することができ、これらを利用することで、信頼性の高い第3正解ラベル533を含む機械学習用の第3データセット53を生成することができる。
 なお、第1推論モデル61及び第2推論モデル62の少なくともいずれかの敵対的学習は省略されてよい。また、上記敵対的学習において、勾配反転層(671、681)は省略されてよい。この場合、各推論モデル(61、62)の訓練処理及び各識別モデル(67、68)の訓練処理は交互に実行されてよい。各識別モデル(67、68)の訓練処理では、各推論モデル(61、62)のパラメータの値を固定して、上記誤差を小さくするように各識別モデル(67、68)のパラメータの値を調整してよい。一方、各推論モデル(61、62)の訓練処理では、各識別モデル(67、68)のパラメータの値を固定して、各識別モデル(67、68)の識別性能を低下させるように誤差を算出し、算出された誤差に基づいて各推論モデル(61、62)のパラメータの値を調整してよい。一例として、各識別モデル(67、68)の識別結果と正解(真値)とは反対の誤った回答との間の誤差を算出し、算出された誤差の勾配を更に算出してよい。そして、誤差逆伝播法により、各識別モデル(67、68)介して各推論モデル(61、62)に誤差の勾配を逆伝播させて、算出される誤差が小さくなるように、各推論モデル(61、62)のパラメータの値を調整してよい。
 図7A~図7Dに示されるとおり、上記機械学習の結果として、訓練済みの第1推論モデル61を示す第1学習結果データ71が生成されてよい。訓練済みの第2推論モデル62を示す第2学習結果データ72が生成されてよい。訓練済みの各推論モデル(61、62)の演算を実行するための情報を保持可能であれば、各学習結果データ(71、72)の構成は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。一例として、各学習結果データ(71、72)は、各推論モデル(61、62)の構成(例えば、ニューラルネットワークの構造等)及び機械学習により調整されたパラメータの値を示す情報を含むように構成されてよい。各学習結果データ(71、72)は、任意の記憶領域に保存されてよい。各学習結果データ(71、72)は、訓練済みの各推論モデル(61、62)をコンピュータ上で使用可能な状態に設定するために適宜参照されてよい。
 一例では、複数の第1データセット51を収集する処理、機械学習により訓練済みの第1推論モデル61を生成する処理、複数の第2データセット52を収集する処理、機械学習により訓練済みの第2推論モデル62を生成する処理は、同一のコンピュータにおいて実行されてよい。他の一例では、これらの処理のうちの少なくともいずれかは、異なるコンピュータにおいて実行されてよい。これらの処理は、ラベル生成装置1、モデル生成装置2、及び推論装置3の少なくともいずれかにおいて実行されてよい。或いは、これらの処理のうちの少なくともいずれかは、ラベル生成装置1、モデル生成装置2、及び推論装置3以外の他のコンピュータにおいて実行されてよい。機械学習により訓練済みの第1推論モデル61を生成する処理及び機械学習により訓練済みの第2推論モデル62を生成する処理は、同一のコンピュータにおいて実行されてもよいし、或いは異なるコンピュータにおいて実行されてよい。
 一例では、訓練済みの第1推論モデル61はラベル生成装置1により生成されてよい。この場合、第1モデル取得部111により訓練済みの第1推論モデル61を取得することは、第1推論モデル61の機械学習を実施することを含んでよい。他の一例では、訓練済みの第1推論モデル61はラベル生成装置1以外の他のコンピュータにより生成されてよい。この場合、訓練済みの第1推論モデル61(第1学習結果データ71)は、任意のタイミングでラベル生成装置1に提供されてよい。ラベル生成装置1は、例えば、ネットワーク、記憶媒体91、外部記憶装置(例えば、NAS(Network Attached Storage))等を介して訓練済みの第1推論モデル61を取得してよい。或いは、訓練済みの第1推論モデル61は、ラベル生成装置1に予め組み込まれてもよい。
 同様に、訓練済みの第2推論モデル62はラベル生成装置1により生成されてよい。この場合、第2モデル取得部112により訓練済みの第2推論モデル62を取得することは、第2推論モデル62の機械学習を実施することを含んでよい。他の一例では、訓練済みの第2推論モデル62はラベル生成装置1以外の他のコンピュータにより生成されてよい。この場合、訓練済みの第2推論モデル62(第2学習結果データ72)は、任意のタイミングでラベル生成装置1に提供されてよい。ラベル生成装置1は、例えば、ネットワーク、記憶媒体91、外部記憶装置(例えば、NAS(Network Attached Storage))等を介して訓練済みの第2推論モデル62を取得してよい。或いは、訓練済みの第2推論モデル62は、ラベル生成装置1に予め組み込まれてもよい。
 なお、各推論モデル(61、62)の機械学習に使用される複数のデータセットの一部に、上記各データセット(51、52)の条件を満たさないデータセットが含まれていてもよい。すなわち、第1推論モデル61の機械学習に使用される複数のデータセットに上記第1データセット51が含まれており、第2推論モデル62の機械学習に使用される複数のデータセットに上記第2データセット52が含まれていればよく、各データセット(51、52)の条件に該当しないデータセットが各推論モデル(61、62)の機械学習に更に使用されてもよい。
 <モデル生成装置>
 図8は、本実施形態に係るモデル生成装置2のソフトウェア構成の一例を模式的に例示する。モデル生成装置2の制御部21は、記憶部22に記憶されたモデル生成プログラム82をRAMに展開する。そして、制御部21は、RAMに展開されたモデル生成プログラム82に含まれる命令をCPUにより実行する。これにより、図8に示されるとおり、本実施形態に係るモデル生成装置2は、データ取得部211、学習処理部212、及び保存処理部213をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、モデル生成装置2の各ソフトウェアモジュールは、上記ラベル生成装置1と同様に、制御部21(CPU)により実現される。
 データ取得部211は、ラベル生成装置1により生成された第3正解ラベル533を対応する第3訓練データ531に関連付けることでそれぞれ生成された複数の第3データセット53を取得するように構成される。学習処理部212は、取得された複数の第3データセット53を使用して、第3推論モデル63の機械学習を実施するように構成される。保存処理部213は、機械学習により生成された訓練済みの第3推論モデル63に関する情報を第3学習結果データ73として生成し、生成された第3学習結果データ73を所定の記憶領域に保存するように構成される。
 (推論モデル及び機械学習方法の一例)
 第3推論モデル63は、機械学習により調整されるパラメータを備える機械学習モデルにより構成される。第3推論モデル63は、例えば、ニューラルネットワーク等の任意の機械学習モデルにより構成されてよい。各推論モデル(61、62)等と同様に、推論タスクを遂行する演算処理を実行可能であれば、第3推論モデル63の構成及び構造は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。第3推論モデル63の構成は、上記第1推論モデル61及び第2推論モデル62の構成の少なくともいずれかと一致していてもよいし、或いは上記第1推論モデル61及び第2推論モデル62の構成と異なっていてもよい。図8の例では、第3推論モデル63には、ニューラルネットワークが採用されている。ニューラルネットワークの構造(例えば、層の種類、層の数、各層のノードの数、ノードの接続関係、再帰構造の有無、残差構造の有無等)は、実施の形態に応じて適宜決定されてよい。
 第3推論モデル63の機械学習は、各第3データセット53について、第3訓練データ531に対して第3推論モデル63により推論タスクを遂行した推論結果が対応する第3正解ラベル533により示される正解に適合するものとなるように第3推論モデル63を訓練することにより構成される。すなわち、機械学習では、各第3データセット53の第3訓練データ531に対する推論結果と第3正解ラベル533により示される正解との間の誤差が小さくなるように第3推論モデル63のパラメータの値が調整(最適化)される。機械学習に使用するデータが異なる点を除き、第3推論モデル63の訓練処理は、上記第1推論モデル61等の訓練処理と同様であってよい。ニューラルネットワークを採用する場合の一例として、学習処理部212は、誤差逆伝播法により、各第3データセット53の第3訓練データ531に対する推論結果と対応する第3正解ラベル533により示される正解との間の誤差が小さくなるように第3推論モデル63のパラメータの値を調整するように構成されてよい。この機械学習の処理により、推論タスクを遂行する能力を獲得した訓練済みの第3推論モデル63を生成することができる。
 保存処理部213は、上記機械学習の結果として、訓練済みの第3推論モデル63を示す第3学習結果データ73を生成するように構成される。訓練済みの第3推論モデル63の演算を実行するための情報を保持可能であれば、第3学習結果データ73の構成は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。一例として、第3学習結果データ73は、第3推論モデル63の構成(例えば、ニューラルネットワークの構造等)及び機械学習により調整されたパラメータの値を示す情報を含むように構成されてよい。
 <推論装置>
 図9は、本実施形態に係る推論装置3のソフトウェア構成の一例を模式的に例示する。推論装置3の制御部31は、記憶部32に記憶された推論プログラム83をRAMに展開する。そして、制御部31は、RAMに展開された推論プログラム83に含まれる命令をCPUにより実行する。これにより、図9に示されるとおり、本実施形態に係る推論装置3は、取得部311、推論部312、及び出力部313をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、推論装置3の各ソフトウェアモジュールは、上記ラベル生成装置1等と同様に、制御部31(CPU)により実現される。
 取得部311は、対象データ321を取得するように構成される。推論部312は、第3学習結果データ73を保持していることで、訓練済みの第3推論モデル63を備える。推論部312は、訓練済みの第3推論モデル63を使用して、取得された対象データ321に対して推論タスクを遂行することで、推論結果を取得するように構成される。出力部313は、推論結果に関する情報を出力するように構成される。
 <その他>
 ラベル生成装置1、モデル生成装置2及び推論装置3の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、ラベル生成装置1、モデル生成装置2及び推論装置3の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、上記ソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサ(例えば、グラフィックスプロセッシングユニット)により実現されてもよい。上記各モジュールは、ハードウェアモジュールとして実現されてもよい。また、ラベル生成装置1、モデル生成装置2及び推論装置3それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
 §3 動作例
 [ラベル生成装置]
 図10は、本実施形態に係るラベル生成装置1によるラベル生成に関する処理手順の一例を示すフローチャートである。以下で説明するラベル生成装置1の処理手順は、ラベル生成方法の一例である。ただし、以下で説明するラベル生成装置1の処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。また、以下の処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が行われてよい。
 (ステップS101)
 ステップS101では、制御部11は、第1モデル取得部111として動作し、上記複数の第1データセット51を用いた機械学習により生成された訓練済みの第1推論モデル61を取得する。
 一例では、制御部11は、ステップS101の取得処理として、上記機械学習を実行することにより、訓練済みの第1推論モデル61を生成してもよい。他の一例では、制御部11は、例えば、ネットワーク、記憶媒体91、外部記憶装置等を介して他のコンピュータにより生成された訓練済みの第1推論モデル61を取得してもよい。更に他の一例では、例えば、機械学習を事前に実行する、他のコンピュータから事前に取得する等により、第1学習結果データ71が予め記憶部12又は記憶媒体91に格納されている場合、制御部11は、訓練済みの第1推論モデル61を記憶部12又は記憶媒体91から取得してもよい。
 第1推論モデル61は、上記第1識別モデル67との間での敵対的学習により更に訓練されたものであってよい。訓練済みの第1推論モデル61を取得すると、制御部11は、次のステップS102に処理を進める。
 (ステップS102)
 ステップS102では、制御部11は、第2モデル取得部112として動作し、上記複数の第2データセット52を用いた機械学習により生成された訓練済みの第2推論モデル62を取得する。
 一例では、制御部11は、ステップS102の取得処理として、上記機械学習を実行することにより、訓練済みの第2推論モデル62を生成してもよい。この場合、制御部11は、上記の方法により、複数の第2データセット52を生成してもよい。第1訓練データ511に対する外乱の追加には、上記訓練済みの変換モデル65が用いられてよい。制御部11は、上記機械学習を実行することにより、訓練済みの変換モデル65を生成し、生成された訓練済みの変換モデル65を使用して、各第2データセット52の第2訓練データ521を生成してもよい。或いは、機械学習に使用する複数の第2データセット52の少なくとも一部は他のコンピュータにより生成されてよく、制御部11は、複数の第2データセット52の少なくとも一部を他のコンピュータから取得してよい。
 他の一例では、制御部11は、例えば、ネットワーク、記憶媒体91、外部記憶装置等を介して他のコンピュータにより生成された訓練済みの第2推論モデル62を取得してもよい。更に他の一例では、第2学習結果データ72が予め記憶部12又は記憶媒体91に格納されている場合、制御部11は、訓練済みの第2推論モデル62を記憶部12又は記憶媒体91から取得してもよい。
 第2推論モデル62は、上記第2識別モデル68との間での敵対的学習により更に訓練されたものであってよい。訓練済みの第2推論モデル62を取得すると、制御部11は、次のステップS103に処理を進める。
 (ステップS103)
 ステップS103では、制御部11は、データ取得部113として動作し、第3訓練データ531を取得する。取得する第3訓練データ531の件数は、実施の形態に応じて適宜決定されてよい。
 第3訓練データ531を獲得するドメインは、実施の形態に応じて選択されてよい。一例では、第3訓練データ531は、第1訓練データ511と同一のソースドメインにおいて獲得されてよい。他の一例では、第3訓練データ531は、ソースドメインとは異なる目標ドメインにおいて獲得されてよい。
 また、第3訓練データ531を収集する方法は、実施の形態に応じて適宜選択されてよい。一例では、第3訓練データ531は、センサにより実環境を観測することで生成されてよい。他の一例では、第3訓練データ531は、第1訓練データ511と同様に、シミュレーション等の情報処理により生成されてよい。
 制御部11は、ステップS103の処理として、上記収集方法により、第3訓練データ531を生成してよい。制御部11は、例えば、ネットワーク、記憶媒体91、外部記憶装置等を介して、他のコンピュータにより生成された第3訓練データ531を取得してもよい。或いは、第3訓練データ531が事前に収集されている場合、制御部11は、記憶部12又は記憶媒体91から第3訓練データ531を取得してもよい。第3訓練データ531を取得すると、制御部11は、次のステップS104に処理を進める。
 (ステップS104)
 ステップS104では、制御部11は、第1推論部114として動作し、訓練済みの第1推論モデル61を使用して、取得された第3訓練データ531に対して推論タスクを遂行する。すなわち、制御部11は、取得された第3訓練データ531を訓練済みの第1推論モデル61に入力し、訓練済みの第1推論モデル61の演算処理を実行する。この演算処理の結果として、制御部11は、第3訓練データ531に対する第1推論結果を訓練済みの第1推論モデル61から取得する。第1推論結果を取得すると、制御部11は、次のステップS105に処理を進める。
 (ステップS105)
 ステップS105では、制御部11は、第2推論部115として動作し、訓練済みの第2推論モデル62を使用して、取得された第3訓練データ531に対して推論タスクを遂行する。すなわち、制御部11は、取得された第3訓練データ531を訓練済みの第2推論モデル62に入力し、訓練済みの第2推論モデル62の演算処理を実行する。この演算処理の結果として、制御部11は、第3訓練データ531に対する第2推論結果を訓練済みの第2推論モデル62から取得する。第2推論結果を取得すると、制御部11は、次のステップS106に処理を進める。
 なお、ステップS101~ステップS105の処理順序は、上記の例に限定されなくてよい。ステップS104の処理は、ステップS101及びステップS103の処理の後に実行される。ステップS105の処理は、ステップS102及びステップS103の処理の後に実行される。これらの点を除き、各処理の順序は適宜入れ替えられてよい。各処理は並列に処理されてもよい。他の一例では、制御部11は、ステップS103の処理を最初に実行してよい。ステップS101の処理を実行した後に、制御部11は、ステップS104の処理を続けて実行してよい。ステップS102の処理は、ステップS101よりも前に実行されてよい。ステップS102の処理を実行した後に、制御部11は、ステップS105の処理を続けて実行してよい。
 (ステップS106)
 ステップS106では、制御部11は、生成部116として動作し、第1推論結果及び第2推論結果の間の合致に基づいて、第3訓練データ531に対する第3正解ラベル533を生成する。第1推論結果及び第2推論結果の合致から第3訓練データ531に対する正解を導出する方法は、訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62の意見の一致を取るものであればよく、各推論結果の形式及び推論タスクの内容に応じて適宜決定されてよい。
 一例では、推論タスクは、特徴を含む領域を抽出することであってよい。画像データの場合、特徴を含む領域は、例えば、識別対象等の特定の対象物が存在する領域であってよい。音データの場合、特徴を含む領域は、例えば、特定の音(例えば、話者の発話、機械の故障音)が発せられている領域であってよい。センシングデータの場合、特徴を含む領域は、例えば、任意の特徴が表れている(一例として、センシングデータがバイタルデータである場合、バイタルに異常がある又はその予兆がある等)領域であってよい。各推論結果は、第3訓練データ531において特徴を含む領域を抽出した結果(例えば、画像データの場合、セグメンテーションの結果)を示すように構成されてよい。
 この場合、第3正解ラベル533を生成する処理は、次の処理により構成されてよい。すなわち、制御部11は、第1推論結果として抽出された領域及び第2推論結果として抽出された領域の重複部分を特定してよい。続いて、制御部11は、特定された重複部分の大きさと閾値とを比較し、重複部分の大きさが閾値を超えるか否かを判定してもよい。閾値は適宜与えられてよい。そして、重複部分の大きさが閾値を超える場合、制御部11は、推論タスクの正解として重複部分を示すように構成される第3正解ラベル533を生成してよい。一方、重複部分の大きさが閾値未満である場合、制御部11は、第1推論結果及び第2推論結果の合致に基づく第3正解ラベル533の生成を省略してよい。これにより、第1推論結果及び第2推論結果の合致から第3訓練データ531における推論タスクの正解を適切に導出し、信頼性の高い第3正解ラベル533を生成することができる。なお、重複部分の大きさと閾値とが等しい場合には、処理の分岐先は、いずれであってもよい。
 他の一例では、推論タスクは、データに含まれる特徴のクラス(カテゴリ)を識別することであってよい。画像データの場合、特徴のクラスを識別することは、例えば、画像データに写る対象物の種別を識別することであってよい。対象物が製品である場合、対象物の種別を識別することは、例えば、欠陥の有無、欠陥の種別等の外観検査に関する識別を含んでよい。音データの場合、特徴のクラスを識別することは、例えば、話者の発話を識別すること、話者を識別すること、機械の音から機械の状態を識別すること(例えば、故障又はその予兆の有無)等であってよい。センシングデータの場合、特徴のクラスを識別することは、例えば、センシングデータに表れる対象物の状態(例えば、センシングデータがバイタルデータである場合、対象人物の健康状態)を識別することであってよい。各推論結果は、第3訓練データ531に含まれる特徴のクラスを識別した結果を示すように構成されてよい。
 この場合、第3正解ラベル533を生成する処理は、次の処理により構成されてよい。すなわち、制御部11は、第1推論結果として識別されたクラス及び第2推論結果として識別されたクラスが一致しているか否かを判定してよい。そして、第1推論結果の示すクラス及び第2推論結果の示すクラスが一致した場合に、当該一致したクラスを示すように構成される第3正解ラベル533を生成してもよい。一方、第1推論結果の示すクラス及び第2推論結果の示すクラスが一致しない場合、制御部11は、第1推論結果及び第2推論結果の合致に基づく第3正解ラベル533の生成を省略してよい。これにより、第1推論結果及び第2推論結果の合致から第3訓練データ531における推論タスクの正解を適切に導出し、信頼性の高い第3正解ラベル533を生成することができる。なお、例えば、複数のクラスに識別され、その一部が合致する等のように、第1推論結果及び第2推論結果が部分的に一致する場合、制御部11は、一致するクラスの数に応じて処理の分岐先を決定してよい。一例では、一致するクラスの数が閾値を超える又は閾値以上である場合に、制御部11は、部分的に一致するクラスを示すように構成される第3正解ラベル533を生成してよい。
 なお、特徴を含む領域を抽出すること及びデータに含まれる特徴のクラスを識別することは同時に遂行されてよい。すなわち、推論タスクは、特徴を含む領域を抽出すること及びデータに含まれる特徴のクラスを識別することにより構成されてよい。この場合、制御部11は、上記重複部分を示し、かつ一致したクラスを示すように構成される第3正解ラベル533を生成してよい。第3正解ラベル533を生成すると、制御部11は、次のステップS107に処理を進める。
 (ステップS107)
 ステップS107では、制御部11は、出力部117として動作し、生成された第3正解ラベル533を出力する。
 第3正解ラベル533の出力先及び出力形式は、生成された第3正解ラベル533をオペレータが確認可能であれば、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。一例として、制御部11は、出力装置16又は他のコンピュータの出力装置を介して第3正解ラベル533を出力してよい。第3正解ラベル533は、例えば、ディスプレイに表示、スピーカによる発音等で出力されてよい。
 また、第3正解ラベル533と共に第3訓練データ531も出力されてよい。これにより、生成された第3正解ラベル533の確認をオペレータに促してもよい。そして、第3正解ラベル533を出力した後、制御部11は、入力装置15又は他のコンピュータの入力装置を介して、生成された第3正解ラベル533に対する修正又は削除を受け付けてもよい。生成された第3正解ラベル533に対する修正又は削除は、他のコンピュータで受け付けられてもよい。上記ステップS106において、第3正解ラベル533の生成を省略した場合、制御部11は、第3正解ラベル533の生成が省略されたことを示す情報を出力してよい。これに応じて、制御部11又は他のコンピュータは、第3訓練データ531に対する第3正解ラベル533の入力をオペレータに対して受け付けてよい。制御部11又は他のコンピュータは、任意のタイミングで、最終的に得られた第3正解ラベル533を第3訓練データ531に関連付けることで、第3データセット53を生成してよい。
 第3正解ラベル533の出力が完了すると、制御部11は、本動作例に係るラベル生成装置1の処理手順を終了する。なお、制御部11は、オペレータの指示に応じて、上記ステップS101~ステップS107の一連の情報処理を実行してよい。或いは、制御部11は、他のコンピュータから第3正解ラベル533の生成を指示されることで、上記ステップS101~ステップS107の一連の情報処理を実行してよい。制御部11は、上記ステップS103~ステップS107の情報処理を繰り返し実行することで、複数件の第3訓練データ531それぞれに対する第3正解ラベル533を生成してよい。
 [モデル生成装置]
 図11は、本実施形態に係るモデル生成装置2による機械学習に関する処理手順の一例を示すフローチャートである。以下で説明するモデル生成装置2の処理手順は、モデル生成方法の一例である。ただし、以下で説明するモデル生成装置2の処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。また、以下の処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が行われてよい。
 (ステップS201)
 ステップS201では、制御部21は、データ取得部211として動作し、上記ラベル生成装置1により生成された第3正解ラベル533を対応する第3訓練データ531に関連付けることでそれぞれ生成された複数の第3データセット53を取得する。
 一例では、制御部21は、ステップS201の処理として、第3訓練データ531を取得し、取得された第3訓練データ531をラベル生成装置1に与えて、第3正解ラベル533の生成をラベル生成装置1に指示してもよい。制御部21は、生成された第3正解ラベル533をラベル生成装置1から受け取り、受け取った第3正解ラベル533を対応する第3訓練データ531に関連付けることで、第3データセット53を生成してもよい。他の一例では、複数の第3データセット53は、ラベル生成装置1及び他のコンピュータの少なくともいずれかにより生成されてよい。この場合、制御部21は、例えば、ネットワーク、記憶媒体92、外部記憶装置等を介して、ラベル生成装置1及び他のコンピュータの少なくともいずれかにより生成された複数の第3データセット53を取得してもよい。更に他の一例では、複数の第3データセット53が予め記憶部22又は記憶媒体92に格納されている場合、制御部21は、記憶部22又は記憶媒体92から複数の第3データセット53を取得してもよい。
 取得する第3データセットの件数は、特に限定されなくてよく、機械学習を実施可能なように適宜決定されてよい。複数の第3データセット53を取得すると、制御部21は、次のステップS202に処理を進める。
 なお、第3推論モデル63の機械学習に使用する複数のデータセットの一部には、上記第3データセット53以外のデータセットが含まれていてもよい。また、複数の第3データセット53の一部には、上記ラベル生成方法以外の方法(例えば、人手)で正解ラベルが与えられたデータセットが含まれていてもよい。本実施形態では、第3推論モデル63の機械学習に使用する複数のデータセットの少なくとも一部に、上記ラベル生成方法以外の方法で生成された第3正解ラベル533を含む第3データセット53が含まれていればよい。
 (ステップS202)
 ステップS202では、制御部21は、学習処理部212として動作し、取得された複数の第3データセット53を使用して、第3推論モデル63の機械学習を実施する。上記のとおり、制御部21は、機械学習により、各第3データセット53の第3訓練データ531に対する推論結果と第3正解ラベル533により示される正解との間の誤差が小さくなるように第3推論モデル63のパラメータの値を調整する。この機械学習の結果、推論タスクを遂行する能力を獲得した訓練済みの第3推論モデル63を生成することができる。機械学習の処理が完了すると、制御部21は、次のステップS203に処理を進める。
 (ステップS203)
 ステップS203では、制御部21は、保存処理部213として動作し、機械学習により生成された訓練済みの第3推論モデル63に関する情報を第3学習結果データ73として生成する。そして、制御部21は、生成された第3学習結果データ73を所定の記憶領域に保存する。
 所定の記憶領域は、例えば、制御部21内のRAM、記憶部22、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。記憶メディアは、例えば、CD、DVD等であってよく、制御部21は、ドライブ27を介して記憶メディアに第3学習結果データ73を格納してもよい。外部記憶装置は、例えば、NAS等のデータサーバであってよい。この場合、制御部21は、通信インタフェース23を利用して、ネットワークを介してデータサーバに第3学習結果データ73を格納してもよい。また、外部記憶装置は、例えば、外部インタフェース24を介してモデル生成装置2に接続された外付けの記憶装置であってもよい。
 第3学習結果データ73の保存が完了すると、制御部21は、本動作例に係るモデル生成装置2の処理手順を終了する。
 なお、生成された第3学習結果データ73は、任意のタイミングで推論装置3に提供されてよい。例えば、制御部21は、上記ステップS203の処理として又はステップS203の処理とは別に、第3学習結果データ73を推論装置3に転送してもよい。推論装置3は、この転送を受信することで、第3学習結果データ73を取得してもよい。また、例えば、推論装置3は、通信インタフェース33を利用して、モデル生成装置2又はデータサーバにネットワークを介してアクセスすることで、第3学習結果データ73を取得してもよい。また、例えば、推論装置3は、記憶媒体93を介して、第3学習結果データ73を取得してもよい。また、例えば、第3学習結果データ73は、推論装置3に予め組み込まれてもよい。
 更に、制御部21は、上記ステップS201~ステップS203の処理を定期又は不定期に繰り返すことで、第3学習結果データ73を更新又は新たに生成してもよい。この繰り返しの際に、機械学習に使用する第3データセット53の少なくとも一部の変更、修正、追加、削除等が適宜実行されてよい。そして、制御部21は、更新した又は新たに生成した第3学習結果データ73を任意の方法で推論装置3に提供することで、推論装置3の保持する第3学習結果データ73を更新してもよい。
 [推論装置]
 図12は、本実施形態に係る推論装置3による推論タスクの遂行に関する処理手順の一例を示すフローチャートである。以下で説明する推論装置3の処理手順は、推論方法の一例である。ただし、以下で説明する推論装置3の処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。また、以下の処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が行われてよい。
 (ステップS301)
 ステップS301では、制御部31は、取得部311として動作し、対象データ321を取得する。
 対象データ321は、各訓練データ(511、521、531)と同種のデータであり、推論タスクを遂行する対象となる。対象データ321は、任意のドメインにおいて獲得されてよい。一例では、対象データ321は、ソースドメインにおいて獲得されてよい。
他の一例では、対象データ321は、目標ドメインにおいて獲得されてよい。対象データ321は、第3訓練データ531を獲得するドメインと同一又は類似するドメインにおいて獲得されてよい。
 対象データ321を取得する方法は、第3訓練データ531と同様に、実施の形態に応じて適宜選択されてよい。一例では、対象データ321は、センサにより実環境を観測することで生成されてよい。他の一例では、対象データ321は、シミュレーション等の情報処理により生成されてよい。
 制御部31は、ステップS301の処理として、上記生成方法により、対象データ321を生成してよい。制御部31は、例えば、ネットワーク、記憶媒体92、外部記憶装置等を介して、他のコンピュータにより生成された対象データ321を取得してもよい。或いは、対象データ321が事前に取得されている場合、制御部31は、記憶部32又は記憶媒体93から対象データ321を取得してもよい。対象データ321を取得すると、制御部31は、次のステップS302に処理を進める。
 (ステップS302)
 ステップS302では、制御部31は、推論部312として動作し、第3学習結果データ73を参照して、訓練済みの第3推論モデル63の設定を行う。そして、制御部31は、訓練済みの第3推論モデル63を使用して、取得された対象データ321に対して推論タスクを遂行する。すなわち、制御部31は、取得された対象データ321を訓練済みの第3推論モデル63に入力し、訓練済みの第3推論モデル63の演算処理を実行する。この演算処理を実行した結果として、制御部31は、対象データ321に対する推論タスクの推論結果を取得する。推論結果を取得すると、制御部31は、次のステップS303に処理を進める。
 (ステップS303)
 ステップS303では、制御部31は、出力部313として動作し、推論結果に関する情報を出力する。
 推論結果の出力先及び出力する情報の内容はそれぞれ、実施の形態に応じて適宜決定されてよい。例えば、制御部31は、ステップS302により得られた推論結果を出力装置36又は他のコンピュータの出力装置にそのまま出力してもよい。また、制御部31は、得られた推論結果に基づいて、何らかの情報処理を実行してもよい。そして、制御部31は、その情報処理を実行した結果を、推論結果に関する情報として出力してもよい。この情報処理を実行した結果の出力には、推論結果に応じて制御対象装置の動作を制御すること等が含まれてよい。出力先は、例えば、出力装置36、他のコンピュータの出力装置、制御対象装置等であってよい。
 推論結果に関する情報の出力が完了すると、制御部31は、本動作例に係る推論装置3の処理手順を終了する。なお、制御部31は、ステップS301~ステップS303の一連の情報処理を継続的に繰り返し実行してもよい。繰り返すタイミングは、実施の形態に応じて適宜決定されてよい。これにより、推論装置3は、上記推論タスクを継続的に繰り返し遂行するように構成されてよい。
 [特徴]
 以上のとおり、本実施形態では、第1訓練データ511に外乱を追加することで、異なるデータセット(第1データセット51、第2データセット52)が機械学習のために用意される。外乱の追加は自動化可能であるため、第2データセット52は、第1データセット51から容易にかつ低コストで生成可能である。また、ステップS101及びステップS102の処理により、異なるデータセット由来の訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62が用意される。ステップS104及びステップS105の処理では、これらを使用することで、第3訓練データ531に対して異なる視点で推論タスクを遂行した推論結果を得ることができる。そして、ステップS106では、異なる視点で得られた推論結果の合致に基づき第3正解ラベル533を生成するようにすることで、異なる視点に共通の特徴(すなわち、推論タスクに真に関連するデータの特徴)から適切な正解を得る可能性を高めることができる。その結果、信頼性の高い第3正解ラベル533を生成することができる。加えて、第3正解ラベル533を生成する少なくとも一部の処理を自動化することができる。したがって、本実施形態に係るラベル生成装置1によれば、信頼性の高い第3正解ラベル533を含む機械学習用の第3データセット53を低コストで生成することができる。
 第3訓練データ531が目標ドメインにおいて獲得される場合も、異なる視点で推論タスクを遂行するように訓練された第1推論モデル61及び第2推論モデル62を使用することで、ドメインの違いに影響されず、共通の特徴から適切な正解を得る可能性を高めることができる。そのため、第3訓練データ531がソースドメインにおいて獲得される場合はもちろんのこと、第3訓練データ531がソースドメインとは異なる目標ドメインにおいて獲得される場合でも、信頼性の高い第3正解ラベル533を含む機械学習用の第3データセット53を低コストで生成することができる。
 本実施形態に係るモデル生成装置2では、ステップS201~ステップS202の処理により、信頼性の高い第3正解ラベル533を含む第3データセット53を機械学習に使用することで、生成される訓練済みの第3推論モデル63の推論性能の向上を図ることができる。更に、本実施形態に係る推論装置3では、ステップS302の処理において、そのように生成された訓練済みの第3推論モデル63を使用することで、対象データ321に対する精度の高い推論タスクの遂行を期待することができる。
 なお、例えば、参考文献5「Kuniaki Saito, Yoshitaka Ushiku and Tatsuya Harada, "Asymmetric Tri-training for Unsupervised Domain Adaptation", In ICML, 2017」、参考文献6「Juning Zhang, Chen Liang, C.-C Jay Kuo, "A Fully Convolutional Tri-branch Network (FCTN) for Domain Adaptation", In ICASSP, 2018」、等のように、推論の決定境界を乖離する正則化項を導入することにより、同一のデータセットを使用して、異なる方向性で特徴を捉えるように2つのネットワーク(2つの出力層)を機械学習する方法も存在する。ただし、この方法では、特徴を捉える方向性が異なるだけで、各ネットワークがどのような表現の特徴を捉えるように訓練されるかが不明である。加えて、正規化項の重み(ハイパーパラメータ)を決定するのが困難である。正規化が弱すぎる場合には、2つのネットワークは同じような特徴を捉えるように訓練されてしまう。正規化が強すぎる場合には、推論タスクを解く能力を習得するための損失関数をうまく最適化することができず、異なる特徴を捉えるように訓練されているが、推論精度の悪い2つの訓練済みのネットワークが生成されてしまう。これに対して、本実施形態によれば、第1訓練データ511に加える外乱により、第2推論モデル62に獲得させる特徴表現(すなわち、推論タスクを解く際に捉える特徴)をコントロールすることができる。これにより、訓練済みの第2推論モデル62のロバスト性を高める方向性をコントロールすることができ、その結果、訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62の意見の一致(推論結果の合致)をとることで、信頼性の高い第3正解ラベル533を生成することができる。
 §4 変形例
 以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良又は変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
 <4.1>
 上記実施形態に係る推論システム100は、任意のデータに対する推論タスクを遂行するあらゆる場面に適用されてよい。推論タスクの対象となるデータは、上記のとおり、例えば、画像データ、音データ、数値データ、テキストデータ、その他各種センサにより得られるセンシングデータ等であってよい。また、推論タスクの対象となるデータは、例えば、音を含む動画像データのように複数種類のデータにより構成されていてもよい。推論タスクの対象となるデータは、推論タスクに応じて適宜選択されてよい。推論タスクは、例えば、画像データにおいて特徴を含む領域を抽出すること、画像データに含まれる特徴のクラスを識別すること、音データにおいて特徴を含む領域を抽出すること、音データに含まれる特徴のクラスを識別すること、その他のセンシングデータにおいて特徴を含む領域を抽出すること、センシングデータに含まれる特徴のクラスを識別すること等であってよい。以下、適用場面を限定した変形例を示す。
 (A)画像データに対する推論の場面
 図13は、第1変形例に係る推論システム100の適用場面の一例を模式的に例示する。本変形例は、画像データに対する推論タスクを遂行する場面に上記実施形態を適用した例である。
 本変形例では、上記各訓練データ(511、521、531)及び対象データ321は、それぞれの条件で獲得される対象物RAの写り得る画像データにより構成される。画像データは、例えば、静止画像、動画像、3D画像等の画像を示すように構成されてよい。画像データは、カメラSAにより得られてもよいし、カメラSAにより得られた生のデータを適宜加工することで生成されてもよいし、或いは任意の画像処理によりカメラSAに依らずに生成されてもよい。カメラSAは、例えば、一般的なRGBカメラ、深度カメラ、赤外線カメラ等であってよい。ラベル生成装置1、モデル生成装置2、及び推論装置3はそれぞれ、通信インタフェース(13、23、33)又は外部インタフェース(14、24、34)を介してカメラSAに接続されてよい。
 本変形例において、推論タスクは、画像データにおいて特徴を含む領域を抽出すること及び画像データに含まれる特徴のクラスを識別することの少なくともいずれかにより構成されてよい。特徴を含む領域は、例えば、対象物RAの写る範囲、対象物RA内の任意の特徴部分(例えば、欠陥、身体部位等)の写る範囲等であってよい。特徴のクラスは、例えば、対象物RAの種別、対象物RA内の特徴部分の種別(特徴部分の有無を含んでよい)等であってよい。対象物RAは、人物であってよいし、或いは任意の物であってもよい。
 一例として、対象物RAは、人物であってよい。この場合、特徴を含む領域は、例えば、人物全体の写る範囲、人物の身体部位(例えば、顔、腕、脚、関節等)の写る範囲等であってよい。特徴のクラスを識別することは、例えば、人物の属性を識別すること、身体部位の種別を識別すること、人物の状態を識別すること等であってよい。具体的な適用場面として、カメラSAは、所定の場所(例えば、街頭、駅構内、空港、ホール等)に設置される監視カメラであってよい。この場面において、人物の属性を識別することは、例えば、特定の人物が存在するか否かを判定するであってよい。人物の状態を識別することは、例えば、人物に危険の予兆があるか否かを判定することであってよい。更に他の具体的な適用場面として、画像データは、医用画像データであってよい。この場面において、特徴を含む領域は、例えば、病変領域、病変の疑いのある領域であってよい。特徴のクラスを識別することは、例えば、病変の有無を識別すること、病変の種別を識別すること等であってよい。
 他の一例として、対象物RAは、製造ラインで生産される製品であってよい。カメラSAは、当該製品の状態を監視するように設置されてよい。この場合、特徴を含む領域は、例えば、製品の写る範囲、製品内の特定箇所(例えば、コードの付された箇所)の写る範囲、製品内の欠陥の写る範囲等であってよい。特徴のクラスを識別することは、例えば、製品の種別を識別すること、欠陥の有無を識別すること、製品に含まれる欠陥の種別(「欠陥がない」ことを示す種別が含まれてよい)を識別すること等であってよい。
 なお、製品は、例えば、電子機器、電子部品、自動車部品、薬品、食品等の製造ラインで搬送される製品であってよい。電子部品は、例えば、基盤、チップコンデンサ、液晶、リレーの巻線等であってよい。自動車部品は、例えば、コンロッド、シャフト、エンジンブロック、パワーウィンドウスイッチ、パネル等であってよい。薬品は、例えば、包装済みの錠剤、未包装の錠剤等であってよい。製品は、製造過程完了後に生成される最終品であってもよいし、製造過程の途中で生成される中間品であってもよいし、製造過程を経過する前に用意される初期品であってもよい。欠陥は、例えば、傷、汚れ、クラック、打痕、バリ、色ムラ、異物混入等であってよい。
 これらの点を除き、本変形例に係る推論システム100は、上記実施形態と同様に構成されてよい。
 本変形例において、ラベル生成装置1は、上記実施形態と同様の処理手順により、画像データにより構成される第3訓練データ531に対して第3正解ラベル533を生成することができる。上記実施形態と同様に、第3訓練データ531は、ソースドメインにおいて獲得されてもよいし、或いは目標ドメインにおいて獲得されてよい。例えば、撮影条件(例えば、明るさ等)、撮影対象、カメラの設定、カメラの設置角度、背景等の条件がソースドメインから変更されることで、目標ドメインは、ソースドメインと異なっていてよい。各推論モデル(61、62)は、各識別モデル(67、68)との間での敵対的学習により更に訓練されたものであってよい。敵対的学習において、各識別モデル(67、68)は、各推論モデル(61、62)の推論結果がいずれの訓練データに対するものであるかを画素毎に識別するように訓練されてよい。
 モデル生成装置2は、上記実施形態と同様の処理手順により、画像データに対する推論タスクを遂行する能力を獲得した訓練済みの第3推論モデル63を生成することができる。推論装置3は、上記実施形態と同様の処理手順により、訓練済みの第3推論モデル63を使用して、画像データにより構成される対象データ321に対して推論タスクを遂行することができる。推論装置3は、推論タスクの内容に応じて、例えば、検査装置、識別装置、監視装置等と読み替えられてよい。
 なお、推論装置3は、上記ステップS303において、推論タスクに応じた出力処理を実行してよい。一例では、推論装置3の制御部31は、推論結果をそのまま出力してよい。他の一例では、制御部31は、推論結果に応じて任意の情報処理を実行してよい。具体例として、上記危険の予兆を判定するケースでは、制御部31は、危険の予兆があると判定される場合に、そのことを知らせるための警告を出力してよい。他の具体例として、上記医用画像のケースでは、制御部31は、病変領域又は病変の疑いのある領域が抽出された場合に、病変の種別と共にその領域を医用画像データ上で表示してもよい。更に他の具体例として、上記製品の外観検査のケースにおいて、製造ラインは、製品を搬送するコンベア装置を備えてよい。推論装置3は、コンベア装置又はコンベア装置を制御するコントローラに接続されてよい。制御部31は、製品に欠陥があるか否かを判定した結果に基づいて、欠陥のある製品と欠陥のない製品とを別々のラインで搬送させるようにコンベア装置を制御してよい。
 (特徴)
 第1変形例によれば、ラベル生成装置1において、画像データにより構成される第3訓練データ531に対して信頼性の高い第3正解ラベル533を低コストで生成することができる。モデル生成装置2において、信頼性の高い第3正解ラベル533を含む第3データセット53を機械学習に使用することで、画像データに対する推論タスクを高精度に遂行可能な能力を獲得した訓練済みの第3推論モデル63を生成することができる。更に、推論装置3において、そのように生成された訓練済みの第3推論モデル63を使用することで、画像データにより構成される対象データ321に対する精度の高い推論タスクの遂行を期待することができる。
 (B)音データに対する推論の場面
 図14は、第2変形例に係る推論システム100の適用場面の一例を模式的に例示する。本変形例は、音データに対する推論タスクを遂行する場面に上記実施形態を適用した例である。
 本変形例では、上記各訓練データ(511、521、531)及び対象データ321は、それぞれの条件で獲得される対象RBに関連し得る音データにより構成される。音データは、マイクロフォンSBにより対象RBを観測することで得られてもよいし、マイクロフォンSBにより得られた生のデータを適宜加工することで生成されてもよいし、或いは任意の音生成処理によりマイクロフォンSBに依らずに生成されてもよい。マイクロフォンSBの種類は、実施の形態に応じて適宜選択されてよい。ラベル生成装置1、モデル生成装置2、及び推論装置3はそれぞれ、通信インタフェース(13、23、33)又は外部インタフェース(14、24、34)を介してマイクロフォンSBに接続されてよい。
 本変形例において、推論タスクは、音データにおいて特徴を含む領域を抽出すること及び音データに含まれる特徴のクラスを識別することの少なくともいずれかにより構成されてよい。特徴を含む領域は、例えば、特定の音を含む範囲等であってよい。特徴のクラスを識別することは、例えば、音の種別を識別すること等であってよい。
 一例として、対象RBは、話者の音声であってよい。この場合、特定の音を含む範囲は、例えば、特定の発話を含む範囲等であってよい。音の種別を識別することは、例えば、話者を識別すること、発話内容を分析すること等であってよい。
 他の一例として、対象RBは、環境音であってよい。この場合、推論タスクは、環境の状態又は状況に関するものであってよい。特定の音を含む範囲を抽出することは、例えば、環境において発生するアクシデントに関連する音を抽出すること等であってよい。また、音の種別を識別することは、例えば、環境において特定のアクシデントが生じているか否かを判定すること、アクシデントの発生する予兆があるか否かを判定すること、天候を判別すること等であってよい。
 更に他の一例として、対象RBは、機械の動作音であってよい。この場合、推論タスクは、機械の状態に関するものであってよい。特定の音を含む範囲を抽出することは、例えば、機械の正常な動作音を抽出すること、機械の異常音又は故障音を抽出すること等であってよい。また、音の種別を識別することは、例えば、機械が正常に動作しているか否かを判定すること、機械に故障又は異常発生の予兆があるか否かを判定すること等であってよい。
 これらの点を除き、本変形例に係る推論システム100は、上記実施形態と同様に構成されてよい。
 本変形例において、ラベル生成装置1は、上記実施形態と同様の処理手順により、音データにより構成される第3訓練データ531に対して第3正解ラベル533を生成することができる。上記実施形態と同様に、第3訓練データ531は、ソースドメインにおいて獲得されてもよいし、或いは目標ドメインにおいて獲得されてよい。例えば、音の取得条件、観測対象、マイクロフォンの設定、マイクロフォンの設置角度、背景音等の条件がソースドメインから変更されることで、目標ドメインは、ソースドメインと異なっていてよい。各推論モデル(61、62)は、各識別モデル(67、68)との間での敵対的学習により更に訓練されたものであってよい。敵対的学習において、各識別モデル(67、68)は、各推論モデル(61、62)の推論結果がいずれの訓練データに対するものであるかを周波数成分毎に識別するように訓練されてよい。
 モデル生成装置2は、上記実施形態と同様の処理手順により、音データに対する推論タスクを遂行する能力を獲得した訓練済みの第3推論モデル63を生成することができる。推論装置3は、上記実施形態と同様の処理手順により、訓練済みの第3推論モデル63を使用して、音データにより構成される対象データ321に対して推論タスクを遂行することができる。推論装置3は、推論タスクの内容に応じて、例えば、検知装置、識別装置、監視装置等と読み替えられてよい。
 なお、推論装置3は、上記ステップS303において、推論タスクに応じた出力処理を実行してよい。一例では、推論装置3の制御部31は、推論結果をそのまま出力してよい。他の一例では、制御部31は、推論結果に応じて任意の情報処理を実行してよい。具体例として、話者の音声を認識するケースでは、制御部31は、話者の発話内容に応じて応答内容を決定し、決定された応答内容を出力してもよい。或いは、制御部31は、話者の発話内容に基づいて、言語検索(例えば、用語検索、歌謡曲の検索等)を実行し、検索結果を出力してもよい。他の具体例として、上記機械音から機械の状態を推論するケースでは、制御部31は、推論結果に基づいて、対象の機械が故障している又は故障の予兆があると判定される場合に、例えば、機械の動作を停止する、そのことを知らせる通知を出力する等の故障又はその予兆に対処するための処理を実行してもよい。
 (特徴)
 第2変形例によれば、ラベル生成装置1において、音データにより構成される第3訓練データ531に対して信頼性の高い第3正解ラベル533を低コストで生成することができる。モデル生成装置2において、信頼性の高い第3正解ラベル533を含む第3データセット53を機械学習に使用することで、音データに対する推論タスクを高精度に遂行可能な能力を獲得した訓練済みの第3推論モデル63を生成することができる。更に、推論装置3において、そのように生成された訓練済みの第3推論モデル63を使用することで、音データにより構成される対象データ321に対する精度の高い推論タスクの遂行を期待することができる。
 (C)センシングデータに対する推論の場面
 図15は、第3変形例に係る推論システム100の適用場面の一例を模式的に例示する。本変形例は、センシングデータに対する推論タスクを遂行する場面に上記実施形態を適用した例である。
 本変形例では、上記各訓練データ(511、521、531)及び対象データ321は、それぞれの条件で獲得される対象物RCに関連し得るセンシングデータにより構成される。センシングデータは、対象物RCをセンサSCにより観測することで得られてもよいし、センサSCにより得られた生のデータを適宜加工する(例えば、特徴量を抽出する)ことで生成されてもよいし、或いはセンサSCの動作を模擬することで生成されてもよい。センシングデータは、単一種類のデータにより構成されてもよいし、或いは複数種類のデータにより構成されてもよい。センサSCは、例えば、カメラ、マイクロフォン、エンコーダ、環境センサ、バイタルセンサ、医療検査装置、車載センサ、ホームセキュリティセンサ等であってよい。ラベル生成装置1、モデル生成装置2、及び推論装置3はそれぞれ、通信インタフェース(13、23、33)又は外部インタフェース(14、24、34)を介してセンサSCに接続されてよい。
 本変形例において、推論タスクは、センシングデータにおいて特徴を含む領域を抽出すること及びセンシングデータに含まれる特徴のクラスを識別することの少なくともいずれかにより構成されてよい。特徴を含む領域を抽出することは、例えば、対象物RCの特定の状態又は状況に関連する部分を抽出すること等であってよい。特徴のクラスを識別することは、例えば、対象物RCの特定の状態又は状況を識別することであってよい。センサSCは、推論タスクに応じて適宜選択されてよい。
 一例として、対象物RCは、対象人物であってよく、推論タスクは、対象人物の状態に関するものであってよい。この場合、センサSCは、例えば、マイクロフォン、バイタルセンサ、及び医療検査装置の少なくともいずれかにより構成されてよい。特徴を含む領域を抽出することは、例えば、対象人物の特定の状態に関する成分を抽出すること等であってよい。特徴のクラスを識別することは、例えば、特定の疾患が発症しているか否かを判定すること、特定の疾患が発症する予兆があるか否かを判定すること、発症している疾患の種別を識別すること、健康状態の種別を識別すること等であってよい。具体的な適用場面の一例として、対象人物は、車両の運転者であってよく、対象人物の状態を識別することは、例えば、眠気度、疲労度、余裕度等を識別することであってよい。
 他の一例として、対象物RCは、産業用機械であってよく、推論タスクは、産業用機械の状態に関するものであってよい。この場合、センサSCは、例えば、マイクロフォン、エンコーダ、及び環境センサの少なくともいずれかにより構成されてよい。特徴を含む領域を抽出することは、例えば、産業用機械の特定の状態に関する成分を抽出すること等であってよい。特徴のクラスを識別することは、例えば、産業用機械に異常があるか否かを判定すること、産業用機械に異常が生じる予兆があるか否かを判定すること等の産業用機械の状態を識別することであってよい。センシングデータは、例えば、モータのエンコーダ値、温度、動作音等により構成されてよい。
 他の一例として、対象物RCは、車両の外部に存在する物体であってよく、推論タスクは、当該物体の状態又は状況に関するものであってよい。この場合、センサSCは、例えば、カメラ、及び車載センサの少なくともいずれかにより構成されてよい。特徴を含む領域を抽出することは、例えば、車両の外部に存在する物体に関する部分を抽出すること、当該物体の特定の状態又は状況に関する成分を抽出すること等であってよい。特徴のクラスを識別することは、例えば、車両外部に存在する物体の属性を識別すること、混雑状況を識別すること、事故のリスクを識別すること等であってよい。車両外部に存在する物体は、例えば、道路、信号機、障害物(人、物)等であってよい。車両外部に存在する物体の属性を識別することは、例えば、人又は車両の飛び出し、急発進、急停車、車線変更等のイベントの発生又はその予兆の有無を判定することを含んでよい。
 他の一例として、対象物RCは、例えば、屋外、所定の屋内(例えば、ビニルハウス内等)の特定の場所に存在する物体であってよく、推論タスクは、当該特定の場所の状況に関するものであってよい。この場合、センサSCは、例えば、カメラ、マイクロフォン、及び環境センサの少なくともいずれかにより構成されてよい。特徴を含む領域を抽出することは、例えば、特定の状況に関する成分を抽出すること等であってよい。特徴のクラスを識別することは、例えば、特定の状況を識別すること等であってよい。具体的な適用場面の一例として、対象物RCは植物であってよく、特定の状況を識別することは、植物の栽培状況を識別することであってよい。
 他の一例として、対象物RCは、例えば、住宅内に存在する物体であってよく、推論タスクは、住宅内の状況に関するものであってよい。この場合、センサSCは、例えば、カメラ、マイクロフォン、環境センサ、及びホームセキュリティセンサの少なくともいずれかにより構成されてよい。特徴を含む領域を抽出することは、例えば、住宅内の特定の状況に関する成分を抽出すること等であってよい。特徴のクラスを識別することは、例えば、住宅内の特定の状況を識別すること等であってよい。
 これらの点を除き、本変形例に係る推論システム100は、上記実施形態と同様に構成されてよい。
 本変形例において、ラベル生成装置1は、上記実施形態と同様の処理手順により、センシングデータにより構成される第3訓練データ531に対して第3正解ラベル533を生成することができる。上記実施形態と同様に、第3訓練データ531は、ソースドメインにおいて獲得されてもよいし、或いは目標ドメインにおいて獲得されてよい。例えば、センシング条件、観測対象、センサの設定、センサの設置角度、背景等の条件がソースドメインから変更されることで、目標ドメインは、ソースドメインと異なっていてよい。各推論モデル(61、62)は、各識別モデル(67、68)との間での敵対的学習により更に訓練されたものであってよい。敵対的学習において、各識別モデル(67、68)は、各推論モデル(61、62)の推論結果がいずれの訓練データに対するものであるかを周波数成分毎に識別するように訓練されてよい。
 モデル生成装置2は、上記実施形態と同様の処理手順により、センシングデータに対する推論タスクを遂行する能力を獲得した訓練済みの第3推論モデル63を生成することができる。推論装置3は、上記実施形態と同様の処理手順により、訓練済みの第3推論モデル63を使用して、センシングデータにより構成される対象データ321に対して推論タスクを遂行することができる。推論装置3は、推論タスクの内容に応じて、例えば、診断装置、検知装置、識別装置、監視装置等と読み替えられてよい。
 なお、推論装置3は、上記ステップS303において、推論タスクに応じた出力処理を実行してよい。一例では、推論装置3の制御部31は、推論結果をそのまま出力してよい。他の一例では、制御部31は、推論結果に応じて任意の情報処理を実行してよい。具体例として、上記対象人物の状態に関する推論タスクを遂行するケースでは、制御部31は、対象人物の健康状態に異常があると判定される場合にそのことを知らせるための警告を出力してもよい。他の具体例として、上記運転者の状態に関する推論タスクを遂行するケースでは、制御部31は、運転者の眠気度又は疲労度が高いと判定される場合に、運転の休憩を促すメッセージを通知する、自動運転から手動運転の切り替えを禁止する等の情報処理を実行してもよい。他の具体例として、上記車両外部の状況に関する推論タスクを遂行するケースでは、制御部31は、識別される車両外部の状況に応じて車両に対する動作指令を決定し、決定された動作指令(例えば、人の飛び出しを検知した場合に、車両の一時停止を実行する)を出力してもよい。
 (特徴)
 第3変形例によれば、ラベル生成装置1において、センシングデータにより構成される第3訓練データ531に対して信頼性の高い第3正解ラベル533を低コストで生成することができる。モデル生成装置2において、信頼性の高い第3正解ラベル533を含む第3データセット53を機械学習に使用することで、センシングデータに対する推論タスクを高精度に遂行可能な能力を獲得した訓練済みの第3推論モデル63を生成することができる。更に、推論装置3において、そのように生成された訓練済みの第3推論モデル63を使用することで、センシングデータにより構成される対象データ321に対する精度の高い推論タスクの遂行を期待することができる。
 <4.2>
 上記実施形態において、第3推論モデル63は、第1推論モデル61及び第2推論モデル62とは別に新たに用意されてよい。或いは、訓練済みの第3推論モデル63は、訓練済みの第2推論モデル62に対して追加学習又は再学習を実行することで生成されてよい。すなわち、機械学習前の第3推論モデル63は、訓練済みの第2推論モデル62により構成されてよい。一例では、第1推論モデル61の機械学習、第2推論モデル62の機械学習、第3正解ラベル533の生成、及び第3推論モデル63の機械学習は、一連の処理として実行されてよい。ラベル生成装置1及びモデル生成装置2が一体のコンピュータで構成される場合、これらの処理は連続的に実行されてよい。
 <4.3>
 上記実施形態において、ラベル生成装置1は、正解ラベルの付与された訓練データに対して疑似的な正解ラベルを生成してもよい。この場合、ラベル生成装置1又は他のコンピュータは、生成された疑似的な正解ラベルと訓練データに付与されている正解ラベルとを比較し、比較の結果に基づいて、付与されている正解ラベルが正しいか否かを確認してよい。生成された疑似的な正解ラベルと付与されている正解ラベルとが一致しない場合(閾値以上乖離する場合)、ラベル生成装置1又は他のコンピュータは、付与されている正解ラベルが疑わしいことを知らせるための警告を出力してもよい。
 <4.4>
 上記実施形態において、各モデル(61~63、65、67、68)の入力形式及び出力形式は、実施の形態に応じて適宜決定されてよい。各モデル(61~63、65、67、68)は、上記以外の情報の入力を受け付けるように構成されてよい。各モデル(61~63、65、67、68)は、上記以外の情報を出力するように構成されてもよい。
 <4.5>
 上記実施形態において、ラベル生成装置1は、訓練済みの第1推論モデル61及び訓練済みの第2推論モデル62を含む3つ以上の訓練済みの推論モデルを使用して、第3正解ラベル533を生成してもよい。この場合、ラベル生成装置1は、3つ以上の訓練済みの推論モデルの少なくとも一部の意見の一致をとることで、第3正解ラベル533を生成してよい。また、加える外乱を変更することで、それぞれ異なる複数の学習データ群(各学習データ群は、複数の第2データセット52により構成される)が生成されてよく、各学習データ群を機械学習に使用することで、それぞれ異なる複数の訓練済みの第2推論モデル62が生成されてよい。
 また、上記実施形態に係るラベル生成装置1の処理手順において、ステップS107の処理は省略されてよい。この場合、ラベル生成装置1のソフトウェア構成から出力部117が省略されてよい。
 §5 実施例
 本発明の有効性を検証するため、以下の実施例及び比較例を生成した。ただし、本発明は、以下の実施例に限定されるものではない。以下の実施例及び比較例では、推論タスクの対象となるデータは、手の写る一人称視点の画像データであり、手の写る領域を抽出することを推論タスクに設定した。
 (1)第1実験
 まず、以下の参考文献で公開されている様々なタイプのスタイルを有する一人称視点の画像データを使用して、複数のデータ群を用意した。参考文献7「Y. Li, M. Liu, and J. M. Rehg, "In the eye of beholder: Joint learning of gaze and actions in first person video", In Proceedings of the European Conference on Computer Vision (ECCV), pages 619?635, 2018」により、第1データ群(EGTEA)を用意した。参考文献8「Y. Hasson, G. Varol, D. Tzionas, I. Kalevatykh, M. J. Black, I. Laptev, and C. Schmid, "Learning joint reconstruction of hands and manipulated objects", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 11807?11816, 2019」に基づき、ソフトウェア(ObMan)を利用して、一人称視点の画像データにシミュレーションで得られた手の画像を合成的にレンダリングすることで、仮想ベースの第2データ群(ObMan-Ego)を用意した。第2データ群の生成に使用した一人称視点の画像データは、参考文献9「D. Damen, H. Doughty, G. M. Farinella, A. Furnari, J. Ma, E. Kazakos, D. Moltisanti, J. Munro, T. Perrett, W. Price, and M. Wray, "Rescaling egocentric vision. arXiv preprint", arXiv:2006.13256, 2020」及び参考文献10「R. Goyal, S. E. Kahou, V. Michalski, J. Materzyn ?ska, S. Westphal, H. Kim, V. Haenel, I. Fruend, P. Yianilos, M. Mueller-Freitag, F. Hoppe, C. Thurau, I. Bax, and R. Memi- sevic, 'The "something something" video database for learn- ing and evaluating visual common sense', In Proceedings of the IEEE International Conference on Computer Vision (ICCV), pages 5842?5850, 2017」からで得た。参考文献11「A. Fathi, A. Farhadi, and J. Rehg, "Understanding egocentric activities", In Proceedings of the IEEE International Conference on Computer Vision (ICCV), pages 407?414, 2011」により、第3データ群(GTEA)を用意した。参考文献12「C. Liand and K. Kitani, "Pixel-level hand detection in egocentric videos", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 3570?3577, 2013」における互いに疎な環境で記録された2つの部分データ群を別個に分けて、第4データ群(EDSH-2)及び第5データ群(EDSH-K)を用意した。参考文献13「M. Cai, K. Kitani, and Y. Sato, "An ego-vision system for hand grasp analysis", IEEE Transactions on Human-Machine Systems, 47(4):524?535, 2017」により、第6データ群(UTG)を用意した。参考文献14「I. M. Bullock, T. Feix, and A. M. Dollar, "The yale human grasping dataset: Grasp, and object, and task data in household and machine shop environments", The International Journal of Robotics Research (IJRR), 34(3):251?255, 2015」により、第7データ群(YHG)を用意した。各データ群に含まれる画像データ(訓練データ)には、手の写る領域を示すマスク画像を正解ラベルとして関連付けた。各データ群の画像データのサイズは、256×256ピクセルに変更した。現実ベース(現実のソースドメインから複数の現実の目標ドメインへ適応する)の設定では、第1データ群をソースドメインのデータに選択した。仮想ベース(仮想のソースドメインから複数の現実の目標ドメインに適応する)の設定では、第2データ群をソースドメインのデータに選択した。各設定では、第3データ群から第7データ群をそれぞれ目標ドメインのデータに選択した。
 実施例(Ours)では、現実ベースの設定及び仮想ベースの設定それぞれで、上記実施形態のとおり、訓練済みの第1推論モデル及び訓練済みの第2推論モデルを用意した。ソースドメインのデータ群及び目標ドメインのデータ群を使用して、訓練済みの変換モデルを生成した。各目標ドメインのデータ群から10枚の画像データをランダムにサンプリングし、サンプリングされた10枚の画像データをそれぞれ変換モデルの機械学習に使用した。訓練済みの変換モデルを使用して、スタイルを目標ドメインに適応させた第2データセットを生成し、生成された第2データセットを第2推論モデルの機械学習に使用した。第1推論モデル及び第2推論モデルに対して共通の識別モデルを使用して敵対的学習を行った。識別モデルは、画素毎に由来を識別するように構成した。得られた訓練済みの第1推論モデル及び訓練済みの第2推論モデルを使用して、各目標ドメインの画像データにおける手の写る領域を抽出し、抽出された領域の重複部分を示すマスク画像を疑似的な正解ラベルとして生成した。そして、生成された疑似的な正解ラベルを使用して、訓練済みの第2推論モデルに対して追加学習を行うことで、訓練済みの第3推論モデル(最終的な訓練済みの推論モデル)を生成した。各推論モデルには、RefineNet(参考文献15「G. Lin, A. Milan, C. Shen, and I. D. Reid, "Refinenet: Multipath refinement networks for high-resolution semantic segmentation", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 5168?5177, 2017」)を採用した。識別モデルには、カーネルサイズが1の3層の畳み込みニューラルネットワークを採用した。実施例では、各目標ドメイン(第3データ群から第7データ群)に個々に適応するシングルターゲット(single target)の設定、及び全ての目標ドメインに一度に適応するマルチターゲット(multi target)の設定それぞれで、訓練済みの第3推論モデルを生成した。
 第1比較例(Source only)では、RefineNetで構成される推論モデルを用意し、ソースドメインのデータ群を使用して、推論モデルの訓練を行った。これにより、第1比較例に係る訓練済みの推論モデルを得た。第1比較例では、現実ベースの設定及び仮想ベースの設定それぞれで、目標ドメインには適応せずに、訓練済みの推論モデルを生成したバージョン、及び実施例における訓練済みの変換モデルにより目標ドメインのスタイルに適応した後のソースドメインのデータ群(上記実施形態の第2データセットに対応)を使用して、訓練済みの推論モデルを生成したバージョンの2つのバージョンを用意した。
 第2比較例(BDL)では、参考文献16「Y. Li, L. Yuan, and N. Vasconcelos, "Bidirectional learning for domain adaptation of semantic segmentation", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 6929?6938, 2019」で提案される機械学習方法により、訓練済みの推論モデルを生成した。なお、参考文献16は、ドメイン適応のために、画像変換モデル及びセグメンテーションモデル(推論モデル)を交互に訓練するフレームワークを提案している。公正に比較するため、第2比較例に係る推論モデルの構成には、参考文献16で提案されるネットワークに代えて、RefineNetを採用した。第3比較例(UMA)では、参考文献17「M. Cai, E. Lu, and Y. Sato, "Generalizing hand segmentation in egocentric videos with uncertainty-guided model adaptation", In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 14380?14389, 2020」で提案される機械学習方法により、訓練済みの推論モデルを生成した。なお、参考文献17では、ベイズCNNによりドメイン適応する方法が提案されている。また、推論モデルに手の形状の制約を与える弁別器を第3比較例に追加することで、第4比較例(UMA+HS)に係る訓練済みの推論モデルを得た。現実ベースの設定では、シングルターゲットの設定により、第2比較例から第4比較例それぞれの訓練済みの推論モデルを得た。一方、仮想ベースの設定では、シングルターゲットの設定により、第2比較例及び第3比較例それぞれの訓練済みの推論モデルを得た。加えて、スタイル適応を更に採用した第3比較例に係る訓練済みの推論モデルを更に用意した。
 第1参考例(Ours w/o FSty)では、実施例における訓練済みの変換モデルの使用を省略した。この点を除き、第1参考例(Ours w/o FSty)は、実施例と同様に構成した。すなわち、第1参考例では、ソースドメインのデータ群を使用して、2つの訓練済みの推論モデルを生成した。そして、生成した2つの訓練済みの推論モデルを使用して、目標ドメインの画像データに対する疑似的な正解ラベルを得た。第1参考例の以降の処理は、実施例と同様である。第2参考例(Ours w/o CPL)では、実施例における疑似的な正解ラベルの生成を省略した。すなわち、第2参考例では、実施例における上記追加学習を行う前の第3推論モデル(換言すると、領域抽出の訓練及び敵対的学習により生成された訓練済みの第2推論モデル)を最終的な推論モデルとして得た。第1参考例及び第2参考例では、マルチターゲットの設定で最終的な訓練済みの推論モデルを生成した。
 第3参考例(Target only)では、RefineNetで構成される推論モデルを用意し、目標ドメインのデータ群を使用して、推論モデルの訓練を行った。これにより、第3参考例に係る訓練済みの推論モデルを得た。第3参考例では、シングルターゲットの設定及びマルチターゲットの設定それぞれで、訓練済みの推論モデルを生成した。
 実施例、比較例及び参考例それぞれにおいて、最適化アルゴリズムには、Adam optimizerを使用した。第1推論モデルの学習率は、5×10-6に設定し、第2推論モデルの学習率は、10-5に設定した。マルチターゲットの設定における訓練では、各目標ドメインのデータ群からターゲット画像データを均一にサンプリングした。抽出誤差の損失に対して敵対的学習の損失のハイパーパラメータを0.8に設定した。また、疑似的な正解ラベルを生成する際の重複部分の比率に対する閾値を0.8に設定した。
 実施例、比較例及び参考例それぞれで得られた最終的な訓練済みの推論モデルを使用して、各目標ドメインの画像データにおける手の写る領域を抽出した。そして、抽出結果と真値とを比較して、平均IoU(Intersection over Union)を算出した。以下の表1は、現実ベースの設定における実施例、比較例及び参考例それぞれの平均IoUの算出結果を示す。また、表2は、仮想ベースの設定における実施例、比較例及び参考例それぞれの平均IoUの算出結果を示す。
Figure JPOXMLDOC01-appb-T000001
Figure JPOXMLDOC01-appb-T000002
 表1に示されるとおり、現実ベースの設定において、各比較例、第1参考例及び第2参考例と比べて、実施例によれば、良好な抽出結果を得ることができた。特に、第6データ群(UTG)及び第7データ群(YHG)において、実施例により良好な抽出結果を得ることができた。また、表2に示されるとおり、仮想ベースの設定においても、各比較例、第1参考例及び第2参考例と比べて、実施例によれば、良好な抽出結果を得ることができた。これらの結果から、本発明によれば、信頼性の高い疑似的な正解ラベルを生成することができること、及び生成された疑似的な正解ラベルを機械学習に使用することで、推論モデルの推論精度の向上を図ることができることが分かった。なお、表2に示されるとおり、仮想ベースの設定では、スタイル適応を行わないケースでパフォーマンスが低かった。これは、ドメインシフトが大きいことが原因であると推測された。対照的に、スタイル適応を行ったケースでは、パフォーマンスを大幅に改善することができた。この結果から、仮想ベースの設定のようなケースでは、訓練済みの変換モデルにより外乱の追加が有効であることが分かった。
 (2)第2実験
 上記第1実験では、仮想ベースの設定において、ドメインシフトが大きいことに起因して、第2比較例及び第3比較例の手法は失敗したと推測された。そこで、疑似ラベル法におけるドメイン適応の程度に対する感度を検証するため、変換前の第2データ群の画像データと各目標ドメインのスタイルに変換後の第2データ群の画像データとを合成した。そして、合成により得られた画像データを使用して、上記実施例、第1比較例、及び第3比較例に係る訓練済みの推論モデルのパフォーマンスを上記第1実験と同様の手法(平均IoU)で検証した。
 図16は、第2実験における実施例、比較例及び参考例それぞれの平均IoUの算出結果を示す。γは、合成の程度を示す。γが1であることは、上記第1実験と同様に、スタイル変換後の画像データを訓練に使用したことを示す。γが0であることは、スタイル変換前の画像データをそのまま訓練に使用したことを示す。γが小さいほど、ドメイン適応の程度は低い。すなわち、γが小さいほど、合成により得られたソースドメインの画像データと目標ドメインとの間の相違が大きくなる。
 図16に示されるとおり、第1比較例のパフォーマンスは、合成の程度が低くなるにしたがって、徐々に低下した。一方、第3比較例のパフォーマンスは、第1比較例のパフォーマンスが約40%を下回った段階で大幅に低下した。これは、ソースネットワークの初期パフォーマンスが低い場合に、信頼性の低い疑似ラベルが生成され、これにより、訓練済みの推論モデルの精度が低下したと推測された。対照的に、実施例では、ドメインが大きく相違する場合でも、パフォーマンスの低下を抑制することができた。この結果から、本発明によれば、ソースドメインと目標ドメインとの間で大きく相違する場合でも、比較的に信頼性の高い疑似的な正解ラベルを生成することができること、及び生成された疑似的な正解ラベルを機械学習に使用することで、推論モデルの推論精度の向上を図ることができることが分かった。
 1…ラベル生成装置、
 11…制御部、12…記憶部、13…通信インタフェース、
 14…外部インタフェース、
 15…入力装置、16…出力装置、17…ドライブ、
 81…ラベル生成プログラム、91…記憶媒体、
 111…第1モデル取得部、112…第2モデル取得部、
 113…データ取得部、
 114…第1推論部、115…第2推論部、
 116…生成部、117…出力部、
 2…モデル生成装置、
 21…制御部、22…記憶部、23…通信インタフェース、
 24…外部インタフェース、
 25…入力装置、26…出力装置、27…ドライブ、
 82…モデル生成プログラム、92…記憶媒体、
 211…データ取得部、212…学習処理部、
 213…保存処理部、
 3…推論装置、
 31…制御部、32…記憶部、33…通信インタフェース、
 34…外部インタフェース、
 35…入力装置、36…出力装置、37…ドライブ、
 83…推論プログラム、93…記憶媒体、
 311…取得部、312…推論部、313…出力部、
 321…対象データ、
 51…第1データセット、
 511…第1訓練データ、513…第1正解ラベル、
 52…第2データセット、
 521…第2訓練データ、523…第2正解ラベル、
 53…第1データセット、
 531…第1訓練データ、533…第1正解ラベル、
 61…第1推論モデル、62…第2推論モデル、
 63…第3推論モデル、
 65…変換モデル、67・68…識別モデル、
 71…第1学習結果データ、72…第2学習結果データ、
 73…第3学習結果データ

Claims (16)

  1.  コンピュータが、
     ソースドメインにおける第1訓練データ及び当該第1訓練データに対する推論タスクの正解を示す第1正解ラベルの組み合わせによりそれぞれ構成される複数の第1データセットを用いた機械学習により生成された訓練済みの第1推論モデルを取得するステップと、
     前記第1訓練データに外乱を加えることで生成された第2訓練データ及び当該第2訓練データに対する前記推論タスクの正解を示す第2正解ラベルの組み合わせによりそれぞれ構成される複数の第2データセットを用いた機械学習により生成された訓練済みの第2推論モデルを取得するステップと、
     第3訓練データを取得するステップと、
     前記訓練済みの第1推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第1推論結果を取得するステップと、
     前記訓練済みの第2推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第2推論結果を取得するステップと、
     前記第1推論結果及び前記第2推論結果の間の合致に基づいて、前記第3訓練データに対する第3正解ラベルを生成するステップと、
    を実行する、
    ラベル生成方法。
  2.  前記第3訓練データは、前記ソースドメインとは異なる目標ドメインにおいて獲得されたものである、
    請求項1に記載のラベル生成方法。
  3.  前記第1訓練データに外乱を加えることは、訓練済みの変換モデルを使用して前記第1訓練データを変換することにより構成され、
     前記訓練済みの変換モデルは、前記第1訓練データ及び前記第3訓練データを使用した機械学習により、前記第1訓練データのスタイルを前記第3訓練データのスタイルに変換する能力を獲得するように生成されたものである、
    請求項2に記載のラベル生成方法。
  4.  前記第1推論モデル及び前記第2推論モデルは、識別モデルとの間での敵対的学習により更に訓練されたものであり、
     前記敵対的学習は、
      前記第1訓練データ及び前記第3訓練データを使用して、前記第1推論モデルの推論結果が前記第1訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを識別するように前記識別モデルを訓練すること、
      前記第1訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第1推論モデルを訓練すること、
      前記第2訓練データ及び前記第3訓練データを使用して、前記第2推論モデルの推論結果が前記第2訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを識別するように前記識別モデルを訓練すること、及び
      前記第2訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第2推論モデルを訓練すること、
    により構成される、
    請求項2又は3に記載のラベル生成方法。
  5.  前記コンピュータが、生成された前記第3正解ラベルを出力するステップを更に実行する、
    請求項1から4のいずれか1項に記載のラベル生成方法。
  6.  前記推論タスクは、特徴を含む領域を抽出することであり、
     前記合致に基づいて前記第3正解ラベルを生成することは、
      前記第1推論結果として抽出された領域及び前記第2推論結果として抽出された領域の重複部分を特定し、かつ
      特定された前記重複部分の大きさが閾値を超える場合に、前記推論タスクの正解として前記重複部分を示すように前記第3正解ラベルを生成すること、
    により構成される、
    請求項1から5のいずれか1項に記載のラベル生成方法。
  7.  前記推論タスクは、データに含まれる特徴のクラスを識別することであり、
     前記合致に基づいて前記第3正解ラベルを生成することは、前記第1推論結果として識別されたクラス及び前記第2推論結果として識別されたクラスが一致した場合に、当該一致したクラスを示すように前記第3正解ラベルを生成することにより構成される、
    請求項1から6のいずれか1項に記載のラベル生成方法。
  8.  前記各訓練データは、画像データにより構成され、
     前記推論タスクは、画像データにおいて特徴を含む領域を抽出すること及び画像データに含まれる特徴のクラスを識別することの少なくともいずれかにより構成される、
    請求項1から5のいずれか1項に記載のラベル生成方法。
  9.  前記各訓練データは、画像データにより構成され、
     前記推論タスクは、画像データにおいて特徴を含む領域を抽出することにより構成され、
     前記第1推論モデル及び前記第2推論モデルは、識別モデルとの間での敵対的学習により更に訓練されたものであり、
     前記敵対的学習は、
      前記第1訓練データ及び前記第3訓練データを使用して、前記第1推論モデルの推論結果が前記第1訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを画素毎に識別するように前記識別モデルを訓練すること、
      前記第1訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第1推論モデルを訓練すること、
      前記第2訓練データ及び前記第3訓練データを使用して、前記第2推論モデルの推論結果が前記第2訓練データ及び前記第3訓練データのいずれの訓練データに対するものであるかを画素毎に識別するように前記識別モデルを訓練すること、及び
      前記第2訓練データ及び前記第3訓練データを使用して、前記識別モデルの識別性能を低下させるように前記第2推論モデルを訓練すること、
    により構成される、
    請求項2又は3に記載のラベル生成方法。
  10.  前記各訓練データは、音データにより構成され、
     前記推論タスクは、音データにおいて特徴を含む領域を抽出すること及び音データに含まれる特徴のクラスを識別することの少なくともいずれかにより構成される、
    請求項1から5のいずれか1項に記載のラベル生成方法。
  11.  前記各訓練データは、センシングデータにより構成され、
     前記推論タスクは、センシングデータにおいて特徴を含む領域を抽出すること及びセンシングデータに含まれる特徴のクラスを識別することの少なくともいずれかにより構成される、
    請求項1から5のいずれか1項に記載のラベル生成方法。
  12.  コンピュータが、
     請求項1から11のいずれか1項の記載のラベル生成方法により生成された前記第3正解ラベルを前記第3訓練データに関連付けることでそれぞれ生成された複数の第3データセットを取得するステップと、
     取得された複数の第3データセットを使用して、第3推論モデルの機械学習を実施するステップであって、当該機械学習は、前記各第3データセットについて、前記第3訓練データに対して前記第3推論モデルにより前記推論タスクを遂行した推論結果が前記第3正解ラベルにより示される正解に適合するように前記第3推論モデルを訓練することにより構成される、ステップと、
    を実行する、
    モデル生成方法。
  13.  ソースドメインにおける第1訓練データ及び当該第1訓練データに対する推論タスクの正解を示す第1正解ラベルの組み合わせによりそれぞれ構成される複数の第1データセットを用いた機械学習により生成された訓練済みの第1推論モデルを取得するように構成された第1モデル取得部と、
     前記第1訓練データに外乱を加えることで生成された第2訓練データ及び当該第2訓練データに対する前記推論タスクの正解を示す第2正解ラベルの組み合わせによりそれぞれ構成される複数の第2データセットを用いた機械学習により生成された訓練済みの第2推論モデルを取得するように構成された第2モデル取得部と、
     第3訓練データを取得するように構成されたデータ取得部と、
     前記訓練済みの第1推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第1推論結果を取得するように構成された第1推論部と、
     前記訓練済みの第2推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第2推論結果を取得するように構成された第2推論部と、
     前記第1推論結果及び前記第2推論結果の間の合致に基づいて、前記第3訓練データに対する第3正解ラベルを生成するように構成された生成部と、
    を備える、
    ラベル生成装置。
  14.  コンピュータに、
     ソースドメインにおける第1訓練データ及び当該第1訓練データに対する推論タスクの正解を示す第1正解ラベルの組み合わせによりそれぞれ構成される複数の第1データセットを用いた機械学習により生成された訓練済みの第1推論モデルを取得するステップと、
     前記第1訓練データに外乱を加えることで生成された第2訓練データ及び当該第2訓練データに対する前記推論タスクの正解を示す第2正解ラベルの組み合わせによりそれぞれ構成される複数の第2データセットを用いた機械学習により生成された訓練済みの第2推論モデルを取得するステップと、
     第3訓練データを取得するステップと、
     前記訓練済みの第1推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第1推論結果を取得するステップと、
     前記訓練済みの第2推論モデルを使用して、取得された前記第3訓練データに対して前記推論タスクを遂行した第2推論結果を取得するステップと、
     前記第1推論結果及び前記第2推論結果の間の合致に基づいて、前記第3訓練データに対する第3正解ラベルを生成するステップと、
    を実行させるための、
    ラベル生成プログラム。
  15.  請求項1から11のいずれか1項の記載のラベル生成方法により生成された前記第3正解ラベルを前記第3訓練データに関連付けることでそれぞれ生成された複数の第3データセットを取得するように構成されたデータ取得部と、
     取得された複数の第3データセットを使用して、第3推論モデルの機械学習を実施するように構成された学習処理部であって、当該機械学習は、前記各第3データセットについて、前記第3訓練データに対して前記第3推論モデルにより前記推論タスクを遂行した推論結果が前記第3正解ラベルにより示される正解に適合するように前記第3推論モデルを訓練することにより構成される、学習処理部と、
    を備える、
    モデル生成装置。
  16.  コンピュータに、
     請求項1から11のいずれか1項の記載のラベル生成方法により生成された前記第3正解ラベルを前記第3訓練データに関連付けることでそれぞれ生成された複数の第3データセットを取得するステップと、
     取得された複数の第3データセットを使用して、第3推論モデルの機械学習を実施するステップであって、当該機械学習は、前記各第3データセットについて、前記第3訓練データに対して前記第3推論モデルにより前記推論タスクを遂行した推論結果が前記第3正解ラベルにより示される正解に適合するように前記第3推論モデルを訓練することにより構成される、ステップと、
    を実行させるための、
    モデル生成プログラム。
PCT/JP2022/031009 2021-09-06 2022-08-17 ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラム WO2023032665A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021144956A JP2023038060A (ja) 2021-09-06 2021-09-06 ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラム
JP2021-144956 2021-09-06

Publications (1)

Publication Number Publication Date
WO2023032665A1 true WO2023032665A1 (ja) 2023-03-09

Family

ID=85411099

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/031009 WO2023032665A1 (ja) 2021-09-06 2022-08-17 ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラム

Country Status (2)

Country Link
JP (1) JP2023038060A (ja)
WO (1) WO2023032665A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116527399A (zh) * 2023-06-25 2023-08-01 北京金睛云华科技有限公司 基于不可靠伪标签半监督学习的恶意流量分类方法和设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020170738A (ja) * 2019-04-01 2020-10-15 ファナック株式会社 機械学習装置、故障予測装置、制御装置、及びプリント板
US20210056718A1 (en) * 2019-08-20 2021-02-25 GM Global Technology Operations LLC Domain adaptation for analysis of images

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020170738A (ja) * 2019-04-01 2020-10-15 ファナック株式会社 機械学習装置、故障予測装置、制御装置、及びプリント板
US20210056718A1 (en) * 2019-08-20 2021-02-25 GM Global Technology Operations LLC Domain adaptation for analysis of images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
OHKAWA TAKEHIKO, YAGI TAKUMA, HASHIMOTO ATSUSHI, USHIKU YOSHITAKA, SATO YOICHI: "Foreground-Aware Stylization and Consensus Pseudo-Labeling for Domain Adaptation of First-Person Hand Segmentation", ARXIV.ORG, vol. 9, 11 July 2021 (2021-07-11), pages 94644 - 94655, XP093041276, DOI: 10.1109/ACCESS.2021.3094052 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116527399A (zh) * 2023-06-25 2023-08-01 北京金睛云华科技有限公司 基于不可靠伪标签半监督学习的恶意流量分类方法和设备
CN116527399B (zh) * 2023-06-25 2023-09-26 北京金睛云华科技有限公司 基于不可靠伪标签半监督学习的恶意流量分类方法和设备

Also Published As

Publication number Publication date
JP2023038060A (ja) 2023-03-16

Similar Documents

Publication Publication Date Title
Yu et al. A survey on deepfake video detection
Saberironaghi et al. Defect detection methods for industrial products using deep learning techniques: A review
CN110956126B (zh) 一种联合超分辨率重建的小目标检测方法
US20200402221A1 (en) Inspection system, image discrimination system, discrimination system, discriminator generation system, and learning data generation device
JP7380019B2 (ja) データ生成システム、学習装置、データ生成装置、データ生成方法及びデータ生成プログラム
WO2021147055A1 (en) Systems and methods for video anomaly detection using multi-scale image frame prediction network
CN111914676A (zh) 人体摔倒检测方法、装置、电子设备和存储介质
Htun et al. Image processing technique and hidden Markov model for an elderly care monitoring system
CN115761908A (zh) 基于多模态数据学习的移动端儿童视觉注意异常筛查方法
Jeon et al. CutPaste-Based Anomaly Detection Model using Multi Scale Feature Extraction in Time Series Streaming Data.
WO2023032665A1 (ja) ラベル生成方法、モデル生成方法、ラベル生成装置、ラベル生成プログラム、モデル生成装置、及びモデル生成プログラム
Abdusalomov et al. Detection and removal of moving object shadows using geometry and color information for indoor video streams
CN112270246A (zh) 视频行为识别方法及装置、存储介质、电子设备
Xu et al. Tackling small data challenges in visual fire detection: a deep convolutional generative adversarial network approach
Bi et al. Moving object detection based on fusion of depth information and RGB features
Yi et al. Steel Strip Defect Sample Generation Method Based on Fusible Feature GAN Model under Few Samples
Shit et al. An encoder‐decoder based CNN architecture using end to end dehaze and detection network for proper image visualization and detection
Yang et al. Student Classroom Behavior Detection Based on YOLOv7+ BRA and Multi-model Fusion
Adewopo et al. Baby physical safety monitoring in smart home using action recognition system
WO2022196433A1 (ja) モデル生成装置、分類装置、データ生成装置、モデル生成方法、及びモデル生成プログラム
CN115116117A (zh) 一种基于多模态融合网络的学习投入度数据的获取方法
Tsai et al. Automatic optical inspection system for wire color sequence detection
Jin et al. A Hybrid Fault Diagnosis Method for Autonomous Driving Sensing Systems Based on Information Complexity
Wei et al. The relationship between intelligent image simulation and recognition technology and the health literacy and quality of life of the elderly
Grutschus et al. Cutup and Detect: Human Fall Detection on Cutup Untrimmed Videos Using a Large Foundational Video Understanding Model

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22864250

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22864250

Country of ref document: EP

Kind code of ref document: A1