WO2020148992A1 - モデル生成装置、モデル生成方法、モデル生成プログラム、モデル生成システム、検査システム、及び監視システム - Google Patents
モデル生成装置、モデル生成方法、モデル生成プログラム、モデル生成システム、検査システム、及び監視システム Download PDFInfo
- Publication number
- WO2020148992A1 WO2020148992A1 PCT/JP2019/044991 JP2019044991W WO2020148992A1 WO 2020148992 A1 WO2020148992 A1 WO 2020148992A1 JP 2019044991 W JP2019044991 W JP 2019044991W WO 2020148992 A1 WO2020148992 A1 WO 2020148992A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- learning
- model
- identification
- control unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01G—HORTICULTURE; CULTIVATION OF VEGETABLES, FLOWERS, RICE, FRUIT, VINES, HOPS OR SEAWEED; FORESTRY; WATERING
- A01G7/00—Botany in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Definitions
- the present invention relates to a model generation device, a model generation method, a model generation program, a model generation system, an inspection system, and a monitoring system.
- Patent Document 1 it is determined whether the inspection target shown in the image is normal or abnormal based on the learned first neural network, and when it is determined that the inspection target is abnormal, An inspection apparatus has been proposed that classifies the type of abnormality based on the learned second neural network.
- machine learning using learning data including image data of a product allows the learning model to acquire the ability to estimate the state of the product shown in the image data. Therefore, by using the learned learning model as an estimator (discriminator), it is possible to determine the quality of the inspection target product shown in the target image data.
- the product to be inspected in the target image data is based on the comparison between the image data group in which normal or abnormal products are captured as learning data and the target image data.
- the quality of can be determined. For example, as a result of comparing the image data group of a normal product and the target image data, the target image data is along the distribution of the image data group (that is, the target image data is similar to the image data group). Therefore, it can be determined that the product shown in the target image data is normal. On the other hand, when the target image data is far from the distribution of the image data group, it can be determined that the product shown in the target image data is abnormal.
- the learning data collected for learning of inference such as determination of quality is also referred to as “inference learning data”.
- the learning data collected for learning inference may be referred to as “estimator learning data”.
- the present inventor has found that these conventional inspection methods using image data have the following problems. That is, in order to perform a visual inspection of a product with high accuracy using image data, it is desirable to collect a variety of image data in a sufficient amount as learning data for inference used for learning visual inspection. .. For example, when the amount of learning data for inference used for the above machine learning is small, the accuracy of the appearance inspection by the learned estimator becomes insufficient. Therefore, it is desirable to collect a sufficient amount of inference learning data in order to enhance the appearance inspection capability of the estimator. However, it is costly to collect a sufficient amount of inference learning data.
- Non-Patent Document 1 proposes a method of constructing a generative model from image data prepared as learning data by machine learning.
- This generative model is trained by machine learning to generate image data that follows the distribution of learning data. That is, if the image data of the product is used as the learning data, the generation model is trained to generate the image data of the product. Therefore, by using this generative model, it is possible to generate image data in which the product appears. Therefore, the amount of inference learning data available for learning the visual inspection can be appropriately increased, and thus the cost of collecting a sufficient amount of inference learning data for increasing the accuracy of the visual inspection. Can be reduced.
- the inventor of the present invention has found that there are the following problems even when such a generative model is used.
- a large amount of learning data that is valuable for improving inspection capabilities for example, image data when a product abnormality occurs
- the image data obtained as the learning data may be biased due to the place, environment, condition, and the like. Therefore, it is difficult to collect various image data at each site. Therefore, even if a generative model is constructed at each site, it is difficult to generate various image data with the obtained generative model.
- the inventor of the present invention can generate various image data by collecting image data obtained at many sites and performing machine learning using the collected image data.
- various image data with different shooting conditions can be obtained as learning data.
- learning data for example, image data when an abnormality occurs in a product showing a valuable event that occurred in each factory.
- each site is operated independently based on individual circumstances.
- Each site basically collects learning data independently of other sites. Therefore, the learning data obtained at each site is non-uniform in terms of, for example, shooting conditions. Also, inspections for the same purpose are not always performed at each site. Therefore, the image data obtained at each site may not be used for common machine learning.
- the communication cost of the server becomes enormous.
- the computational cost of constructing a generative model by machine learning using a large amount of nonuniform and concentrated learning data increases. Therefore, there is a possibility that problems such as a shortage of memory used for calculation processing, a long calculation processing time, and the calculation processing not being completed within a predetermined time may occur.
- the learning data obtained at each site may include highly confidential learning data. In this case, if the learning data obtained at each site are collected in a server on a common network, the confidentiality of the learning data will be impaired.
- the conventional method has a problem that it is difficult to construct a generation model capable of generating various image data. Due to this, it is difficult to realize a highly accurate appearance inspection of a product using image data by the conventional method.
- This problem is not peculiar to the situation of constructing a generative model trained to generate image data that can be used for learning to estimate the state (good or bad) of a product. Similar problems arise in every situation where one builds a generative model that has been trained to generate given data, especially data that can be used to train given inferences.
- the scene where the data that can be used for learning of a given inference is generated by the generation model is, for example, a scene in which the state of the plant is estimated from the data regarding the cultivation situation of the plant, from the data obtained by observing the driver.
- the predetermined learning data in these scenes is, for example, image data, sound data, numerical data, text data, and other measurement data obtained by a sensor. Even in these scenes, it is difficult to collect various learning data for training the generative model at each site. In addition, there are various technical obstacles in gathering the learning data obtained at each site to perform the machine learning of the generative model. Therefore, the conventional method has a problem that it is difficult to construct a generative model capable of generating various data. Due to this, it is difficult for the conventional method to realize highly accurate inference using predetermined data.
- the present invention in one aspect, has been made in view of such circumstances, and an object thereof is to provide a technique for constructing a generative model capable of generating various data.
- the present invention adopts the following configurations in order to solve the above problems.
- the model generation device uses a generation model to generate data and a machine learning using local learning data to determine whether the given data is the local learning data.
- a transmitting unit that transmits the generated data to each of a plurality of learned identification models that have acquired the ability to identify each of the identification models, and that causes each of the identification models to perform identification for the data;
- a receiving unit that receives the result of the identification by the identification model and machine learning using the received result of the identification to reduce the identification performance of at least one of the identification models.
- a learning processing unit for training the generative model to generate data.
- the model generation device transmits data generated by the generation model (hereinafter, also referred to as “generation data”) to each identification model, and causes each identification model to perform identification for the data.
- generation data data generated by the generation model
- Each identification model is constructed by machine learning so as to identify whether or not the given data is included in the local learning data. Then, the model generation device according to the configuration collects the identification result of each identification model with respect to the transmitted generation data, and uses the collected identification result to perform the machine learning of the generation model.
- the local learning data itself is not collected, but the identification result of each identification model is collected.
- the communication cost of the model generation device can be suppressed.
- the local learning data itself does not have to be used for machine learning of the generation model, the calculation cost required for the model generation device can be suppressed.
- it is not necessary to collect the local learning data itself in the model generation device it is possible to prevent the contents of the local learning data from being directly revealed. That is, the confidentiality of the local learning data can be secured to some extent. Therefore, according to the said structure, various problems which can arise in the said method of gathering learning data can be solved.
- the model generation device generates data that deteriorates the identification performance of at least one identification model among the plurality of identification models by machine learning using the collected identification results.
- the generation model can acquire the ability to generate data included in the distribution of the logical sum of the local learning data used for the machine learning of each discriminant model. Therefore, according to the said structure, the environment which builds
- the data generated by the constructed generative model may be used for learning predetermined inference.
- the generation model and the plurality of identification models are learning models capable of acquiring each ability by machine learning, and the types thereof are not particularly limited and may be appropriately selected according to the embodiment.
- a neural network or the like may be used for each of the generation model and the plurality of identification models.
- the generative model may be referred to as a generator and the discriminant model may be referred to as a discriminator.
- the conditional generation model capable of generating the data according to the additional condition.
- the generative model may be such a conditional generative model.
- the additional condition may be related to the type of data generated by the generation model, and may be given by, for example, the attribute of the generated data, the attribute of the feature appearing in the generated data, or the like.
- the attributes of the generated data may be, for example, the resolution of the image data, the number of pixels, the presence/absence of a defect, and the like.
- the attribute of the feature that appears in the generated data may be, for example, the attribute of the target object to be inferred, the type of the target object, or the like.
- the local learning data is learning data used for machine learning of the identification model, but the use of the local learning data is not limited to machine learning of the identification model.
- Local learning data may be collected for various purposes of use.
- the image data of the product may be collected as the local learning data in order to use the learning for the visual inspection (that is, the learning data for inference).
- the type of data included in the local learning data does not have to be particularly limited and may be appropriately selected according to the embodiment.
- the local learning data may be composed of, for example, image data, sound data, numerical data, text data, other measurement data obtained by a sensor, or the like.
- the generative model is configured to generate data of the same type as the local learning data.
- the trained generative model may be used to mass-produce data of the same type as the local training data.
- each of the identification models may be held by each learning device, and the transmission unit transmits the generated data to each of the learning devices to identify the data. May be executed by each of the identification models, and the receiving unit may receive the result of the identification by each of the identification models from each of the learning devices. According to the configuration, it is possible to construct a generative model that can generate various data without collecting local learning data used for machine learning of each identification model of each learning device.
- the identification result by each of the identification models may be integrated by a secret calculation, and the learning processing unit may perform the machine learning using the integrated identification result to generate the generated model. May be trained. According to this configuration, the confidentiality of the local learning data used for machine learning of each identification model held in each learning device can be further enhanced.
- the model generation device may further include a grouping unit that assigns each learning device to at least one of a plurality of groups, and holds a generation model for each group.
- the receiving unit may receive, for each of the groups, a result of identification by the identification model from each of the learning devices, and the learning processing unit may receive, for each group, the result of the identification received.
- the generative model may be trained to generate data that causes misclassification by at least any one of the plurality of identification models by machine learning using. According to this configuration, each learning device can be divided into groups, and a generative model that can generate various data can be constructed for each group.
- the grouping unit distributes a list indicating the plurality of groups to each of the learning devices, and for each of the learning devices, the group of the plurality of groups shown in the list.
- One or more groups may be selected from among them, and each learning device may be assigned to the selected one or more groups.
- each learning device can be grouped by a simple method.
- the grouping unit acquires attribute data regarding the local learning data from each of the learning devices, clusters the attribute data acquired from each of the learning devices, and obtains a result of the clustering. Based on this, each of the plurality of learning devices may be assigned to at least one of the plurality of groups. According to the configuration, each learning device can be divided into groups according to the attribute of the local learning data.
- the attribute data may include any information about the local learning data, for example, information indicating the type of data included in the local learning data, information indicating characteristics of the data, information indicating the purpose of using the data, and the like. But it's okay.
- the features that appear in the data may include any element that can be inferred from the data.
- the local learning data includes image data showing a product
- the feature that appears in the data may be, for example, the presence/absence of a defect included in the product, the type of the defect included in the product, or the like.
- the purpose of using the data may be appropriately determined depending on the embodiment.
- the data included in the local learning data may be used, for example, for learning predetermined inference such as appearance inspection and monitoring of cultivation conditions.
- one aspect of the present invention may be an information processing method that realizes each of the above configurations, a program, or such a program. It may be a computer-readable storage medium in which is stored.
- a computer-readable storage medium is a medium that stores information such as programs by electrical, magnetic, optical, mechanical, or chemical action.
- the model generation system according to one aspect of the present invention may be configured by the model generation device according to any one of the above modes and a plurality of learning devices.
- the model generation system includes a plurality of learning devices and a model generation device.
- Each of the learning devices collects the local learning data, and by machine learning using the local learning data, a learned discrimination model that has acquired the ability to discriminate whether or not the given data is the local learning data.
- the model generation device performs a step of generating data using a generation model, and transmits the generated data to each of the learning devices, thereby performing identification of the data in the identification model of each of the learning devices.
- At least one of the plurality of identification models by performing, a step of receiving a result of identification by the identification model of each of the learning devices from each of the learning devices, and a machine learning using the received result of the identification. Training the generative model to generate data that degrades the discrimination performance of any one of the discrimination models.
- the model generation system includes a plurality of learning devices and a model generation device.
- Each of the learning devices collects the local learning data, and by machine learning using the local learning data, a learned discrimination model that has acquired the ability to discriminate whether or not the given data is the local learning data.
- the model generation device performs a step of generating data using a generation model, and transmits the generated data to each of the learning devices, thereby performing identification of the data in the identification model of each of the learning devices.
- At least one of the plurality of identification models by performing, a step of receiving a result of identification by the identification model of each of the learning devices from each of the learning devices, and a machine learning using the received result of the identification. Training the generative model to generate data that degrades the discriminative performance of any one of the discriminant models.
- each learning device acquires a target data, and a data group collected as inference learning data for inferring features, including a data group including data generated by a learned generation model. It is configured to perform a step of acquiring, a step of inferring a feature appearing in the target data based on a comparison between the data group and the target data, and a step of outputting information about a result of inferring the feature.
- the model generation system includes a plurality of learning devices and a model generation device.
- Each of the learning devices has a step of collecting local learning data, and a learned identification model that has acquired the ability to identify whether or not the given data is the local learning data by machine learning using the local learning data. And a step of constructing and configured to perform.
- the model generation device performs a step of generating data using a generation model, and transmits the generated data to each of the learning devices, thereby performing identification of the data in the identification model of each of the learning devices.
- At least one of the plurality of identification models by a step of performing, a step of receiving the identification result of the identification model of each of the learning apparatuses from each of the learning apparatuses, and a machine learning using the received identification result.
- each learning device collects inference local learning data that is the inference local learning data used to acquire the ability to infer features by machine learning and that includes data generated by a learned generative model.
- a computer generates a data using a generation model, and machine learning using local learning data causes given data to be locally learned. Transmitting the generated data to each of a plurality of learned discriminant models that have respectively acquired the ability to discriminate whether or not it is data, and causing each discriminant model to perform discrimination on the data, and the transmitted data Receiving the result of the identification by each of the identification models, and machine learning using the received result of the identification to reduce the identification performance of at least one identification model of the plurality of identification models. Training the generative model to generate such data.
- the model generation program is configured such that a computer generates a data using a generation model, and machine learning using local learning data causes given data to be locally learned. Transmitting the generated data to each of a plurality of learned discrimination models that have acquired the ability to discriminate whether or not the data, and causing each discrimination model to perform discrimination on the data; and the transmitted data. Receiving the result of identification by each of the identification models with respect to, and machine learning using the received result of identification to reduce the identification performance of at least one identification model of the plurality of identification models. And a step of training the generative model to generate such data.
- Each of the above forms can be applied to any situation in which a generative model that is trained to generate predetermined data, particularly data that can be used for learning a predetermined inference is constructed.
- Each of the above modes is, for example, a scene in which the state of the plant is estimated from data on the cultivation condition of the plant, a scene in which the state of the driver is estimated from data obtained by observing the driver, and power generation from data on the weather It may be applied to the scene of predicting the power generation amount of the device, the scene of estimating the health condition of the subject from the vital data of the subject, and the like.
- the predetermined data may be, for example, image data, sound data, numerical data, text data, other measurement data obtained by a sensor, or the like.
- an image generation system includes a plurality of learning devices and a model generation device.
- Each of the learning devices identifies whether the given data is the image data included in the local learning data by performing a step of collecting local learning data including image data and a machine learning using the local learning data. Constructing a trained discriminant model that has acquired the ability; and.
- the model generation device uses the generation model to generate image data, and transmits the generated image data to each of the learning devices, so that the identification model of each of the learning devices corresponds to the image data.
- a step of executing identification a step of receiving the identification result by the identification model of each of the learning devices from each of the learning devices, and a machine learning using the received identification result of the plurality of identification models. Training the generative model to generate image data that degrades the discrimination performance of at least one of the discrimination models.
- a sensing data generation system includes a plurality of learning devices and a model generation device.
- Each learning device collects local learning data including sensing data obtained by a sensor, and performs machine learning using the local learning data to determine whether the given data is the sensing data included in the local learning data. Constructing a trained discriminant model that has acquired the ability to discriminate.
- the model generation device uses the generation model to generate sensing data, and transmits the generated sensing data to the learning devices, so that the identification model of each learning device is used for the sensing data.
- a step of executing identification a step of receiving the identification result by the identification model of each of the learning devices from each of the learning devices, and a machine learning using the received identification result of the plurality of identification models. Training the generative model to generate sensing data that degrades the discrimination performance of at least one of the discrimination models.
- the inspection system includes a plurality of inspection devices and a model generation device.
- Each of the inspection devices collects local learning data including product image data showing a product, and determines whether the given data is the product image data included in the local learning data by machine learning using the local learning data. Constructing a trained discriminant model that has acquired the ability to discriminate whether or not.
- the model generation device uses the generation model to generate image data, and transmits the generated image data to each of the learning devices, so that the identification model of each of the learning devices corresponds to the image data.
- a step of executing identification a step of receiving the identification result by the identification model of each of the learning devices from each of the learning devices, and a machine learning using the received identification result of the plurality of identification models. Training the generative model to generate image data that degrades the discrimination performance of at least one of the discrimination models.
- the monitoring system includes a plurality of monitoring devices that respectively monitor the cultivation status of plants and a model generation device.
- Each of the monitoring devices a step of collecting local learning data including situation data regarding the cultivation situation of the plant, machine learning using local learning data, the given data is the situation data included in the local learning data Constructing a trained discriminant model that has acquired the ability to discriminate whether or not.
- the model generation device uses the generation model to generate pseudo situation data, and transmits the generated pseudo situation data to each of the learning devices, so that the identification model of each of the learning devices includes the pseudo situation.
- a step of executing identification for the situation data a step of receiving an identification result by the identification model of each of the learning devices from each of the learning devices; a machine learning using the received result of the identification, Training the generative model to generate pseudo-situation data that degrades the identification performance of at least one of the identification models.
- a generative model that can generate various data can be constructed.
- FIG. 1 schematically illustrates an example of a scene to which the present invention is applied.
- FIG. 2A is a diagram for explaining the problem of the learned generation model constructed by the model generation method according to the comparative example.
- FIG. 2B is a diagram for explaining the characteristics of the learned generation model constructed by the model generation device according to the embodiment.
- FIG. 3 schematically illustrates an example of the hardware configuration of the model generation device according to the embodiment.
- FIG. 4 schematically illustrates an example of the hardware configuration of the learning device according to the embodiment.
- FIG. 5 schematically illustrates an example of the software configuration of the model generation device according to the embodiment.
- FIG. 6 schematically illustrates an example of the configuration of allocation information according to the embodiment.
- FIG. 1 schematically illustrates an example of a scene to which the present invention is applied.
- FIG. 2A is a diagram for explaining the problem of the learned generation model constructed by the model generation method according to the comparative example.
- FIG. 2B is a diagram for explaining the characteristics of the learned generation model constructed
- FIG. 7A schematically illustrates an example of a software configuration related to machine learning of the learning device according to the embodiment.
- FIG. 7B schematically illustrates an example of a software configuration related to the inference processing of the learning device according to the embodiment.
- FIG. 8 illustrates an example of a processing procedure of machine learning of an identification model by the learning device according to the embodiment.
- FIG. 9 illustrates an example of a processing procedure of machine learning of a generation model by the model generation device according to the embodiment.
- FIG. 10 illustrates an example of a processing procedure relating to predetermined inference by the learning device according to the embodiment.
- FIG. 11 schematically illustrates the grouping process according to the embodiment.
- FIG. 12 illustrates an example of a processing procedure regarding grouping of learning devices by the model generation device according to the exemplary embodiment.
- FIG. 13 illustrates an example of a processing procedure regarding grouping of learning devices by the model generation device according to the exemplary embodiment.
- FIG. 14 shows local learning data given for generating the identification model and the generation model.
- FIG. 15A shows a result of generating data by the learned generation model generated by the method of the comparative example.
- FIG. 15B shows a result of generating data by the learned generation model generated by the method of the embodiment.
- FIG. 16 schematically illustrates an example of another scene to which the present invention is applied.
- FIG. 17 schematically illustrates an example of the hardware configuration of the inspection device according to another embodiment.
- FIG. 18A schematically illustrates an example of a software configuration regarding machine learning of an inspection device according to another embodiment.
- FIG. 18B schematically illustrates an example of a software configuration related to the inspection processing of the inspection device according to another embodiment.
- FIG. 19 schematically illustrates an example of another scene to which the present invention is applied.
- FIG. 20 schematically illustrates an example of the hardware configuration of a monitoring device according to another embodiment.
- FIG. 21A schematically illustrates an example of a software configuration regarding machine learning of a monitoring device according to another embodiment.
- FIG. 21B schematically illustrates an example of a software configuration related to the monitoring processing of the monitoring device according to another embodiment.
- FIG. 22 schematically illustrates an example of another scene to which the present invention is applied.
- FIG. 23 schematically illustrates an example of the hardware configuration of a monitoring device according to another embodiment.
- FIG. 24A schematically illustrates an example of a software configuration regarding machine learning of a monitoring device according to another embodiment.
- FIG. 24B schematically illustrates an example of a software configuration related to the monitoring processing of the monitoring device according to another embodiment.
- FIG. 25 schematically illustrates an example of another scene to which the present invention is applied.
- FIG. 26 schematically illustrates an example of a hardware configuration of a prediction device according to another mode.
- FIG. 27A schematically illustrates an example of a software configuration regarding machine learning of a prediction device according to another embodiment.
- FIG. 27B schematically illustrates an example of a software configuration related to the prediction process of the prediction device according to another mode.
- FIG. 28 schematically illustrates an example of another scene to which the present invention is applied.
- FIG. 29 schematically illustrates an example of the hardware configuration of a diagnostic device according to another embodiment.
- FIG. 30A schematically illustrates an example of a software configuration regarding machine learning of a diagnostic device according to another embodiment.
- FIG. 30B schematically illustrates an example of a software configuration related to a diagnostic process of a diagnostic device according to another embodiment.
- FIG. 31 schematically illustrates an example of the hardware configuration of the learning device according to the modification.
- FIG. 32A schematically illustrates an example of a software configuration regarding further machine learning of the learning device according to the modification.
- FIG. 32B illustrates an example of a processing procedure of further machine learning performed by the learning device according to the modification.
- FIG. 33 schematically illustrates an example of a software configuration regarding inference processing of the learning device according to the modification.
- FIG. 34 schematically illustrates an example of the configuration of the learning device according to the modification.
- FIG. 35A schematically illustrates an example of a scene in which the secret calculation is performed in the modified example.
- FIG. 35B schematically illustrates an example of a scene in which the secret calculation is performed in the modified example.
- this embodiment an embodiment according to one aspect of the present invention (hereinafter, also referred to as “this embodiment”) will be described with reference to the drawings.
- the present embodiment described below is merely an example of the present invention in all respects. It goes without saying that various improvements and modifications can be made without departing from the scope of the present invention. That is, in implementing the present invention, a specific configuration according to the embodiment may be appropriately adopted. It should be noted that although the data that appears in this embodiment is described in natural language, more specifically, it is specified by a computer-recognizable pseudo language, command, parameter, machine language, or the like.
- FIG. 1 schematically illustrates an example of a scene to which the present invention is applied.
- the model generation system 100 includes a model generation device 1 and a plurality of learning devices 2.
- the model generation device 1 and each learning device 2 may be connected to each other via a network.
- the type of network may be appropriately selected from the Internet, a wireless communication network, a mobile communication network, a telephone network, a dedicated network, and the like.
- Each learning device 2 according to the present embodiment is a computer configured to execute machine learning of the identification model 40 using the local learning data 3. Specifically, each learning device 2 according to this embodiment collects the local learning data 3. Then, each learning device 2 constructs a learned identification model 40 that has acquired the ability to identify whether or not the given data is included in the local learning data 3 by machine learning using the local learning data 3. To do.
- the local learning data 3 is learning data used for machine learning of the identification model 40, but use of the local learning data 3 is not limited to machine learning of the identification model 40.
- the local learning data 3 may be collected for various purposes.
- the image data of the product may be collected as the local learning data 3 for use in learning the visual inspection.
- Each learning device 2 may handle the data collected for another purpose as the local learning data 3.
- a sensor S is connected to each learning device 2.
- each learning device 2 is configured to be able to execute the process of inferring the feature appearing in the sensing data obtained by the sensor S. Therefore, the local learning data 3 may be collected for the purpose of inferring some characteristic included in the sensing data obtained by the sensor S. That is, the local learning data 3 may be composed of a group of data obtained by the sensor S or a sensor of the same kind as the sensor S.
- the type of the sensor S is not particularly limited as long as it can acquire some data, and may be appropriately selected according to the embodiment.
- the sensor S may be, for example, a camera, a microphone, a photometer, a thermometer, a hygrometer, a vital sensor, or the like.
- the camera is, for example, a general digital camera configured to acquire an RGB image, a depth camera configured to acquire a depth image, an infrared camera configured to image an infrared amount, or the like. Good.
- a camera that captures the appearance of the product may be used as the sensor S.
- the sensing data may be image data of the product, and inferring some characteristic may be estimating the state of the product in the image data.
- Each learning device 2 may be placed in an individual site and used by different users, for example. Each learning device 2 may collect learning data for inference for the purpose of inference according to individual circumstances. In this case, each learning device 2 may use the collected learning data for inference as the local learning data 3.
- the arrangement and users of each learning device 2 may not be particularly limited, and may be appropriately selected according to the embodiment. For example, at least a part of the learning devices 2 may be arranged at the same site and used by the same user.
- the model generation device 1 is a computer configured to build a generation model 41 capable of generating the same type of data as the local learning data 3. Specifically, the model generation device 1 according to this embodiment uses the generation model 41 to generate the data 50. Next, the model generation device 1 causes the identification model 40 of each learning device 2 to perform identification on the data 50 by transmitting the generated data 50 to each learning device 2. Each learning device 2 discriminates whether or not the data 50 is included in the local learning data 3 by the discrimination model 40.
- the model generation device 1 receives, from each learning device 2, a result 51 of the identification by the identification model 40 of each learning device 2. Then, the model generation device 1 is configured to generate data that deteriorates the identification performance of at least one identification model among the plurality of identification models 40 by machine learning using the received identification result 51. To train the generative model 41.
- the type of data included in the local learning data 3 may not be particularly limited, and may be appropriately selected according to the embodiment.
- the local learning data 3 may be composed of, for example, image data, sound data, numerical data, text data, and other measurement data obtained by a sensor. All the local learning data 3 finally determine the distribution of data generated by the generation model 41.
- the generation model 41 is configured to generate data of the same type as the local learning data 3.
- the learned generative model 41 may be used to mass-produce data of the same type as the local learning data 3. Mass production of the same kind of data, for example, increases the number of learning data for inference used to make the estimator acquire the ability to perform a predetermined inference, and therefore, the data to be compared with the target data to be subjected to the predetermined inference. This may be done to increase the number of cases.
- each learning device 2a to 2c there are three learning devices 2a to 2c.
- a further reference sign such as a, b, c is attached, and if not, those reference signs such as “learning device 2” are given. Is omitted.
- Each of the learning devices 2a to 2c collects the local learning data 3a to 3c and uses the obtained local learning data 3a to 3c to execute the machine learning of each of the identification models 40a to 40c.
- each of the learning devices 2a to 2c constructs learned identification models 40a to 40c that have acquired the ability to identify whether or not the given data is included in the local learning data 3a to 3c of itself.
- each of the learning devices 2a to 2c further acquires the data (data 53 described below) generated by the generation model 41 from the model generation device 1. Then, each of the learning devices 2a to 2c executes machine learning of each of the identification models 40a to 40c using the local learning data 3a to 3c of its own and the data generated by the generation model 41. As a result, each of the learning devices 2a to 2c causes each of the identification models 40a to 40c to acquire the ability to identify whether the given data is derived from its own local learning data 3a to 3c or the generation model 41.
- the model generation device 1 generates the data 50 by the generation model 41 and transmits the generated data 50 to each of the learning devices 2a to 2c.
- Each of the learning devices 2a to 2c identifies whether or not the data 50 is included in its own local learning data 3a to 3c based on its own identification models 40a to 40c. Then, each of the learning devices 2a to 2c returns the identification results 51a to 51c by the identification models 40a to 40c of itself to the model generation device 1.
- the model generation device 1 receives the results 51a to 51c of identification by the identification models 40a to 40c of the learning devices 2a to 2c. Then, the model generation device 1 generates data that deteriorates the identification performance of at least one of the plurality of identification models 40a to 40c by machine learning using the received identification results 51a to 51c. Train the generative model 41 as follows. In other words, the model generation device 1 generates the data such that at least one of the plurality of identification models 40a to 40c is included in the local learning data 3a to 3c of itself. Train 41.
- the number of learning devices 2 is not limited to the example of FIG. 1 and may be appropriately determined according to the embodiment. The number of learning devices 2 may be two, or may be four or more.
- the local learning data 3 itself is not collected, but the identification result 51 of each identification model 40 is collected. Thereby, the communication cost of the model generation device 1 can be suppressed. Further, since the local learning data 3 itself does not have to be used for machine learning of the generation model 41, the calculation cost of the model generation device 1 can be suppressed. Furthermore, since it is not necessary to collect the local learning data 3 itself in the model generating device 1, it is possible to prevent the contents of the local learning data 3 from being directly revealed. Therefore, the confidentiality of the local learning data 3 can be secured to some extent.
- the generative model 41 reduces the identification performance of at least one of the identification models 40 by machine learning using the collected identification result 51.
- the generation model 41 is trained to generate the data that causes the identification of at least one identification model 40 to be erroneous.
- the generation model 41 capable of generating data according to any distribution of the local learning data 3 used for machine learning of each identification model 40.
- FIGS. 2A and 2B As a learning method opposite to the present embodiment, a method of training the generative model so as to generate data that deteriorates the discrimination performance of all the discrimination models 40 is assumed.
- FIG. 2A schematically shows the distribution of data that can be generated by the learned generation model constructed by this opposite method.
- FIG. 2B schematically shows the distribution of data that can be generated by the learned generation model 41 constructed according to this embodiment.
- the distribution of the local learning data 3 collected by each learning device 2 is not always the same.
- the local learning data 3 is basically collected independently of the local learning data 3 of the other learning device 2. .. Therefore, the local learning data 3 collected by each learning device 2 are non-uniform, and their distributions may differ greatly.
- the distribution of the local learning data 3a-3c collected by each learning device 2a-2c may be different.
- the common part that is, the logical product
- the generation model is constructed so as to generate data that is not included in any distribution. Therefore, when the generative model is trained to generate data that deteriorates the discrimination performance of all the discrimination models 40, the data that can be generated by the trained generative model to be constructed is very limited. Will end up.
- the generation model 41 when the generation model 41 is trained to generate the data that deteriorates the identification performance of at least one of the plurality of identification models 40, the generation model 41 The ability to generate data according to the distribution of the logical sum of the local learning data 3 used for machine learning of the identification model 40 can be acquired.
- the learned generation model 41 can generate data that can be included in each distribution. For example, as shown by the hatching in FIG. 2B, even if the distributions of the local learning data 3a to 3c are different, as a result of the machine learning, the generation model 41 is included in the distribution of the logical sum of the local learning data 3a to 3c. You can acquire the ability to generate such data. Therefore, according to the present embodiment, the generative model 41 capable of generating various data can be constructed.
- Each of the plurality of identification models 40 and the generation model 41 is a learning model capable of acquiring each ability by machine learning, and its type is not particularly limited and may be appropriately selected according to the embodiment.
- each of the plurality of identification models 40 and the generation model 41 is composed of a neural network.
- Each discriminant model 40 may be referred to as a discriminator and the generative model 41 may be referred to as a generator.
- each learning device 2 executes a process of inferring a feature that appears in the data (target data 223 described later) obtained by the sensor S.
- each learning device 2 acquires a data group collected as inference learning data for inferring features.
- each learning device 2 may acquire the data generated by using the learned generation model 41.
- the generation of data by the learned generation model 41 may be executed by each learning device 2 or may be executed by another computer.
- each learning device 2 may acquire a data group including the data generated by the learned generation model 41.
- each learning device 2 acquires target data.
- each learning device 2 infers the features appearing in the target data based on the comparison between the target data and the data group.
- Each learning device 2 outputs information about the result of inferring the feature.
- the learned generation model 41 As described above, according to the learned generation model 41, various data can be generated.
- the learned generation model 41 is difficult to collect by each learning device 2 alone, but is configured to be able to generate data that can be obtained by other learning devices 2. Therefore, each learning device 2 can not only increase the number of pieces of data included in the data group used for inference, but also can make the data variation rich by the data generated by the generation model 41. Thereby, each learning device 2 can improve the accuracy of inference based on the comparison with the data group.
- FIG. 3 schematically illustrates an example of the hardware configuration of the model generation device 1 according to this embodiment.
- the model generation device 1 is a computer to which a control unit 11, a storage unit 12, a communication interface 13, an input device 14, an output device 15, and a drive 16 are electrically connected. is there.
- the communication interface is described as “communication I/F”.
- the control unit 11 includes a CPU (Central Processing Unit) that is a hardware processor, a RAM (Random Access Memory), a ROM (Read Only Memory), and the like, and is configured to execute information processing based on a program and various data.
- the storage unit 12 is an example of a memory, and includes, for example, a hard disk drive, a solid state drive, or the like. In the present embodiment, the storage unit 12 stores various information such as the model generation program 81, the learning result data 121, the group list 123, and the allocation information 124.
- the model generation program 81 is a program for causing the model generation device 1 to execute information processing (FIG. 9) described later regarding machine learning of the generation model 41.
- the model generation program 81 includes a series of instructions for this information processing.
- the learning result data 121 shows information about the generative model 41 constructed by machine learning.
- the learning result data 121 is obtained as a result of executing the model generation program 81.
- the group list 123 shows a list of a plurality of groups that are candidates for assigning each learning device 2.
- the allocation information 124 indicates the correspondence between each learning device 2 and each group. Details will be described later.
- the communication interface 13 is, for example, a wired LAN (Local Area Network) module, a wireless LAN module, or the like, and is an interface for performing wired or wireless communication via a network.
- the model generation device 1 can perform data communication via the network with another information processing device (for example, the learning device 2) by using the communication interface 13.
- the input device 14 is a device for inputting, for example, a mouse or a keyboard.
- the output device 15 is, for example, a device for outputting a display, a speaker, or the like. The operator can operate the model generation device 1 by using the input device 14 and the output device 15.
- the drive 16 is, for example, a CD drive, a DVD drive, or the like, and is a drive device for reading a program stored in the storage medium 91.
- the type of drive 16 may be appropriately selected according to the type of storage medium 91.
- At least one of the model generation program 81, the group list 123, and the allocation information 124 may be stored in this storage medium 91.
- the storage medium 91 stores the information such as the recorded program or the like by an electrical, magnetic, optical, mechanical, or chemical action so that the computer or other device or machine can read the information such as the recorded program or the like. It is a storage medium.
- the model generation device 1 may acquire at least one of the model generation program 81, the group list 123, and the allocation information 124 from this storage medium 91.
- a disk type storage medium such as a CD or a DVD is illustrated.
- the type of the storage medium 91 is not limited to the disc type, and may be other than the disc type.
- a semiconductor memory such as a flash memory can be cited.
- the control unit 11 may include a plurality of hardware processors.
- the hardware processor may be configured by a microprocessor, FPGA (field-programmable gate array), DSP (digital signal processor), or the like.
- the storage unit 12 may include a RAM and a ROM included in the control unit 11. At least one of the communication interface 13, the input device 14, the output device 15, and the drive 16 may be omitted.
- the model generation device 1 may be composed of a plurality of computers. In this case, the hardware configurations of the computers may or may not match. Further, the model generation device 1 may be a general-purpose server device, a PC (Personal Computer), or the like, in addition to an information processing device designed exclusively for the provided service.
- FIG. 4 schematically illustrates an example of the hardware configuration of each learning device 2 according to this embodiment.
- each learning device 2 in each learning device 2 according to the present embodiment, the control unit 21, the storage unit 22, the communication interface 23, the input device 24, the output device 25, the drive 26, and the external interface 27 are electrically connected.
- the communication interface and the external interface are described as “communication I/F” and “external I/F”, respectively.
- the control unit 21 to the drive 26 of each learning device 2 may be configured similarly to the control unit 11 to the drive 16 of the model generation device 1 respectively. That is, the control unit 21 includes a CPU that is a hardware processor, a RAM, a ROM, and the like, 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. The storage unit 22 stores various information such as the learning program 82, the inference program 83, the local learning data 3, and the learning result data 221.
- the learning program 82 is a program for causing the learning device 2 to execute information processing (FIG. 8) described later regarding machine learning of the identification model 40.
- the learning program 82 includes a series of instructions for this information processing.
- the learning result data 221 indicates information about the identification model 40 constructed by machine learning.
- the learning result data 221 is obtained as a result of executing the learning program 82.
- the inference program 83 is a program for causing the learning device 2 to execute information processing (FIG. 10) described later regarding predetermined inference with respect to data obtained by the sensor S.
- the inference program 83 includes a series of instructions for this information processing.
- the local learning data 3 is used for machine learning of the identification model 40. Details will be described later.
- the communication interface 23 is, for example, a wired LAN module, a wireless LAN module, or the like, and is an interface for performing wired or wireless communication via a network.
- Each learning device 2 can perform data communication via the network with another information processing device (for example, the model generation device 1) by using the communication interface 23.
- the input device 24 is a device for inputting, for example, a mouse or a keyboard.
- the output device 25 is, for example, a device for outputting a display, a speaker, or the like. The operator can operate each learning device 2 by using the input device 24 and the output device 25.
- the drive 26 is, for example, a CD drive, a DVD drive, or the like, and is a drive device for reading a program stored in the storage medium 92. At least one of the learning program 82, the inference program 83, and the local learning data 3 may be stored in the storage medium 92. Further, each learning device 2 may acquire at least one of the learning program 82, the inference program 83, and the local learning data 3 from the storage medium 92.
- the external interface 27 is, for example, a USB (Universal Serial Bus) port, a dedicated port, or the like, and is an interface for connecting to an external device.
- the type and number of external interfaces 27 may be appropriately selected according to the type and number of external devices to be connected.
- each learning device 2 is connected to the sensor S via the external interface 27.
- each learning device 2 is configured to be able to acquire from the sensor S the sensing data that is the target for executing the predetermined inference.
- the configuration for acquiring the sensing data is not limited to such an example, and may be appropriately determined according to the embodiment.
- each learning device 2 may be connected to the sensor S via the communication interface 23 instead of the external interface 27.
- each learning device 2 can be appropriately omitted, replaced, or added depending on the embodiment.
- the control unit 21 may include a plurality of hardware processors.
- the hardware processor may be configured by a microprocessor, FPGA, DSP or the like.
- the storage unit 22 may include a RAM and a ROM included in the control unit 21. At least one of the communication interface 23, the input device 24, the output device 25, the drive 26, and the external interface 27 may be omitted.
- Each learning device 2 may be composed of a plurality of computers. In this case, the hardware configurations of the computers may or may not match. In this embodiment, the learning devices 2 have the same hardware configuration. However, the relationship of the hardware configuration of each learning device 2 may not be limited to such an example.
- the hardware configuration may be different between one learning device 2 and another learning device 2.
- each learning device 2 may be a general-purpose server device, a general-purpose PC, or the like, in addition to an information processing device designed exclusively for the provided service.
- FIG. 5 schematically illustrates an example of the software configuration of the model generation device 1 according to this embodiment.
- the control unit 11 of the model generation device 1 expands the model generation program 81 stored in the storage unit 12 into the RAM. Then, the control unit 11 controls the components by interpreting and executing the model generation program 81 expanded in the RAM by the CPU.
- the model generation device 1 includes the generation unit 111, the transmission unit 112, the reception unit 113, the learning processing unit 114, the storage processing unit 115, and the grouping unit 116 as software modules. It operates as a computer. That is, in this embodiment, each software module of the model generation device 1 is realized by the control unit 11 (CPU).
- the generation unit 111 uses the generation model 41 to generate the data 50.
- noise (latent variable) is acquired from a predetermined probability distribution.
- the predetermined probability distribution does not have to be particularly limited and may be appropriately selected according to the embodiment.
- the predetermined probability distribution may be, for example, a Gaussian distribution or the like.
- the generation unit 111 inputs the acquired noise into the generation model 41 and executes the arithmetic processing of the generation model 41. Thereby, the generation unit 111 acquires the data 50 from the generation model 41.
- the transmission unit 112 transmits the generated data 50 to each identification model 40, and causes each identification model 40 to perform identification on the data 50.
- the receiving unit 113 receives the identification result 51 of the transmitted data 50 by each identification model 40.
- each identification model 40 is held in each learning device 2. Therefore, the transmission unit 112 causes each identification model 40 to identify the data 50 by transmitting the generated data 50 to each learning device 2. Further, the receiving unit 113 receives the identification result 51 by each identification model 40 from each learning device 2.
- the learning processing unit 114 is configured to generate data that deteriorates the identification performance of at least one of the identification models 40 by machine learning using the received identification result 51. Train the generative model 41.
- the storage processing unit 115 stores information about the learned generation model 41 constructed by machine learning in a predetermined storage area.
- the grouping unit 116 assigns each learning device 2 to at least one of a plurality of groups.
- the model generation device 1 may hold the generation model 41 for each group.
- the transmission unit 112 may cause each identification model 40 to perform identification on the data 50 by transmitting the data 50 generated by the corresponding generation model 41 to each learning device 2 for each group.
- the receiving unit 113 may receive, from each learning device 2, the result 51 of identification by each identification model 40 for each group. Then, the learning processing unit 114 reduces the identification performance of at least one identification model 40 of the plurality of identification models 40 by machine learning using the received identification result 51 for each group.
- the generative model 41 may be trained to generate data.
- the grouping unit 116 stores the group allocation result for each learning device 2 in the allocation information 124.
- FIG. 6 schematically illustrates an example of the data configuration of the allocation information 124 according to this embodiment.
- the allocation information 124 has a table format structure, and each record (row data) has a “user ID” field and a “group ID” field. Information for identifying each learning device 2 is stored in the “user ID” field, and information for identifying the group to which the target learning device 2 is assigned is stored in the “group ID” field. One record shows one allocation result.
- the data structure of the allocation information 124 is not limited to such an example, and may be appropriately determined according to the embodiment.
- the generation model 41 is composed of a neural network.
- the generation model 41 is configured by a neural network having a three-layer structure, and includes an input layer 411, an intermediate (hidden) layer 412, and an output layer 413 in order from the input side.
- the structure of the generation model 41 is not limited to such an example, and may be appropriately determined according to the embodiment.
- the number of intermediate layers included in the generation model 41 is not limited to one, and may be two or more.
- the number of neurons (nodes) included in each of the layers 411 to 413 may be appropriately selected according to the embodiment.
- Neurons in adjacent layers are appropriately connected to each other, and a weight (connection weight) is set for each connection.
- each neuron is connected to all neurons in the adjacent layer.
- the connection of neurons need not be limited to such an example, and may be set appropriately according to the embodiment.
- a threshold value is set for each neuron, and basically, the output of each neuron is determined depending on whether the sum of products of each input and each weight exceeds the threshold value.
- the weights of the connections between the neurons and the thresholds of the neurons included in the layers 411 to 413 are examples of the calculation parameters of the generation model 41 used for the calculation processing.
- the generation unit 111 inputs noise obtained from a predetermined probability distribution into the input layer 411 and executes the neural network calculation processing. Thereby, the generation unit 111 acquires the data 50 generated from noise as the output from the output layer 413.
- the learning processing unit 114 adjusts the value of the calculation parameter of the generation model 41 based on the error calculated by machine learning so as to reduce the identification performance of any one identification model 40.
- the storage processing unit 115 generates, as the learning result data 121, information indicating the structure and the operation parameters of the learned generation model 41 constructed by machine learning, and stores the generated learning result data 121 in a predetermined storage area.
- FIG. 7A schematically illustrates an example of a software configuration regarding learning processing of each learning device 2 according to the present embodiment.
- each learning device 2 loads the learning program 82 stored in the storage unit 22 into the RAM. Then, the control unit 21 interprets and executes the learning program 82 expanded in the RAM by the CPU to control each component.
- each learning device 2 operates as a computer including the learning data collection unit 211, the learning processing unit 212, and the storage processing unit 213 as software modules. That is, in the present embodiment, each software module of each learning device 2 related to the learning process is realized by the control unit 21 (CPU).
- the learning data collection unit 211 collects local learning data 3 used for machine learning of the identification model 40.
- the learning data collecting unit 211 may handle, as the local learning data 3, data collected for other purposes such as being used for inference processing described later.
- the learning processing unit 212 constructs the learned identification model 40 that has acquired the ability to identify whether the given data is included in the local learning data 3 by machine learning using the collected local learning data 3. To do.
- the storage processing unit 213 stores information about the learned identification model 40 constructed by machine learning in a predetermined storage area.
- the identification model 40 is composed of a neural network.
- the identification model 40 is composed of a neural network having a three-layer structure like the generation model 41, and includes an input layer 401, an intermediate (hidden) layer 402, and an output layer 403 in order from the input side. ing.
- the structure of the identification model 40 is not limited to such an example, and may be appropriately determined according to the embodiment.
- the number of intermediate layers included in the identification model 40 is not limited to one, and may be two or more.
- the number of neurons (nodes) included in each layer 401 to 403 of the identification model 40 may be appropriately selected according to the embodiment.
- each neuron is connected to all neurons in the adjacent layer.
- the connection of neurons need not be limited to such an example, and may be set appropriately according to the embodiment.
- the weights of the connections between the neurons included in the layers 401 to 403 and the thresholds of the neurons are examples of the calculation parameters of the identification model 40 used for the calculation processing.
- the learning processing unit 212 identifies, by machine learning, whether the data input to the identification model 40 is the data generated by the generation model 41 or the data included in the local learning data 3.
- Train the identification model 40 as follows. That is, the identification model 40 is trained to identify whether the given data is derived from the generation model 41 or the local learning data 3.
- the fact that it is derived from the local learning data 3 is expressed as “true”, and the fact that it is derived from the generation model 41 is expressed as “false”.
- the method of expressing each origin may not be limited to such an example, and may be appropriately selected according to the embodiment.
- the learning processing unit 212 first acquires the data 53 generated by the generation model 41 in addition to the collected local learning data 3. Similar to the data 50, the data 53 is generated by inputting the noise extracted from the predetermined probability distribution to the input layer 411 of the generation model 41 and executing the arithmetic processing of the generation model 41. Next, the learning processing unit 212 executes the machine learning of the identification model 40 using the local learning data 3 and the data 53.
- the correct identification data for the data 53 generated by the generation model 41 is “false”.
- the correct answer data for identification with respect to the data included in the local learning data 3 is “true”. Therefore, by associating the correct answer data indicating “false” with the data 53, it is possible to generate a learning data set that is exclusively involved in acquiring the ability to identify that the given data is derived from the generation model 41. Further, by associating the correct answer data indicating “true” with the data included in the local learning data 3, the learning data set exclusively involved in acquiring the ability to identify that the given data is derived from the local learning data 3. Can be generated. Note that “true” may be expressed by “1” and “false” may be expressed by “0”. Machine learning of the identification model 40 by the learning processing unit 212 can be regarded as supervised learning using each learning data set.
- the learning processing unit 212 inputs the data 53 generated by the generation model 41 to the input layer 401 of the identification model 40 and executes the arithmetic processing of the identification model 40. Thereby, the learning processing unit 212 acquires, from the output layer 403, an output value corresponding to the result of identifying whether the input data is derived from the local learning data 3 or the generation model 41. In this scene, since the input data is the data 53 generated by the generation model 41, the correct answer is that the identification model 40 identifies “false”. The learning processing unit 212 calculates the error between the output value obtained from the output layer 403 and the correct answer for the data 53 generated by the generation model 41.
- the learning processing unit 212 inputs the data included in the local learning data 3 into the input layer 401 of the identification model 40, and executes the arithmetic processing of the identification model 40. Thereby, the learning processing unit 212 acquires, from the output layer 403, an output value corresponding to the result of identifying whether the input data is derived from the local learning data 3 or the generation model 41. In this scene, since the input data is the data included in the local learning data 3, the correct answer is that the identification model 40 identifies “true”. The learning processing unit 212 calculates the error between the output value obtained from the output layer 403 and the correct answer for the data included in the local learning data 3.
- the learning processing unit 212 adjusts the value of the calculation parameter of the identification model 40 so that the sum of the calculated errors becomes small.
- the learning processing unit 212 repeats the adjustment of the value of the calculation parameter of the identification model 40 through the series of processes until the sum of the errors between the output value obtained from the output layer 403 and the true/false correct answer becomes equal to or less than the threshold value.
- the learning processing unit 212 trains the identification model 40 so as to acquire the ability to identify whether the given data is the data generated by the generation model 41 or the data included in the local learning data 3. can do.
- the storage processing unit 213 generates information indicating the structure and the calculation parameters of the learned identification model 40 constructed by machine learning as the learning result data 221, and stores the generated learning result data 221 in a predetermined storage area.
- FIG. 7B schematically illustrates an example of a software configuration related to the inference processing of each learning device 2 according to this embodiment.
- each learning device 2 loads the inference program 83 stored in the storage unit 22 into the RAM. Then, the control unit 21 interprets and executes the inference program 83 expanded in the RAM by the CPU to control each component.
- each learning device 2 operates as a computer including the target data acquisition unit 216, the inference unit 217, and the output unit 218 as a software module. That is, in the present embodiment, each software module of each learning device 2 related to the inference process is realized by the control unit 21 (CPU).
- the target data acquisition unit 216 acquires target data 223 to be processed by inference.
- the target data acquisition unit 216 acquires the target data 223 from the sensor S.
- the inference unit 217 acquires a data group 225 collected as inference learning data for inferring features.
- the data group 225 includes a plurality of pieces of data 2251 regarding inferred features.
- the data 2251 included in the data group 225 may be, for example, the data included in the local learning data 3 and the data generated by the generation model 41.
- the inference unit 217 may acquire the data generated by using the learned generation model 41.
- the generation of data by the learned generation model 41 may be executed by each learning device 2 or may be executed by another computer.
- the inference unit 217 holds the learning result data 121 to include the learned generation model 41.
- the inference unit 217 generates data by using the learned generation model 41. Thereby, the inference unit 217 may acquire the data group 225 including the data generated by the learned generation model 41. Then, the inference unit 217 infers the characteristics appearing in the target data 223 based on the comparison between the data group 225 and the target data 223.
- this "inference" means, for example, deriving a discrete value (for example, a class corresponding to a specific feature) by grouping (classification, identification), and continuous value (for example, a specific feature by a regression). The probability of occurrence) may be derived.
- the output unit 218 outputs information about the result of inferring the feature.
- each software module of the model generation device 1 and each learning device 2 will be described in detail in an operation example described later.
- an example in which each software module of the model generation device 1 and each learning device 2 is realized by a general-purpose CPU is described.
- some or all of the above software modules may be implemented by one or more dedicated processors.
- the software configurations of the model generation device 1 and each learning device 2 depending on the embodiment, omission, replacement, and addition of software modules may be appropriately performed.
- the machine learning of the identification model 40 by each learning device 2 and the machine learning of the generation model 41 by the model generation device 1 may be repeatedly executed alternately.
- the number of repetitions is not particularly limited and may be appropriately selected according to the embodiment.
- the identification accuracy of the identification model 40 and the data generation accuracy of the generation model 41 can be improved. That is, the identification model 40 can acquire the ability to properly identify whether the given data is the local learning data 3 or not.
- the generation model 41 can be made to acquire the ability to appropriately generate the data that can be included in the distribution of any of the local learning data 3 from the noise extracted from the predetermined probability distribution.
- an operation example regarding machine learning of each learning device 2 and the model generation device 1 will be described.
- FIG. 8 is a flowchart showing an example of a processing procedure regarding machine learning of the identification model 40 by each learning device 2.
- each processing procedure described below is merely an example, and each step may be changed as much as possible.
- steps can be omitted, replaced, and added as appropriate according to the embodiment.
- Step S101 the control unit 21 operates as the learning data collection unit 211 and collects the local learning data 3.
- the method for generating the local learning data 3 is not particularly limited, and may be appropriately selected according to the embodiment.
- the local learning data 3 can be used to infer features that appear in the data obtained by the sensor S. Therefore, for example, a sensor of the same type as the sensor S is prepared, and observation is performed under various conditions with the prepared sensor, thereby obtaining a plurality of pieces of data with or without a predetermined characteristic.
- the local learning data 3 may be composed of a plurality of pieces of data acquired thereby. It should be noted that the data of each case may be given a label indicating the feature that appears in the data of each case.
- the local learning data 3 may be automatically generated by the operation of the computer or manually by the operation of the operator. Further, the generation of the local learning data 3 may be performed by each learning device 2 or may be performed by a computer other than each learning device 2.
- the control unit 21 collects the local learning data 3 by executing the above process automatically or manually by an operator's operation via the input device 24. You may.
- the control unit 21 may collect the local learning data 3 generated by another computer via, for example, a network or the storage medium 92. A part of the local learning data 3 may be generated by each learning device 2, and another part may be generated by another computer.
- the number of data items forming the local learning data 3 may not be particularly limited and may be appropriately selected according to the embodiment. Further, the control unit 21 may use the data 2251 included in the data group 225 used for inference as the local learning data 3. When the local learning data 3 is collected, the control unit 21 advances the processing to the next step S102.
- Step S102 the control unit 21 operates as the learning processing unit 212 and acquires the data 53 generated by the generation model 41.
- the control unit 11 of the model generation device 1 extracts noise from a predetermined probability distribution, inputs the extracted noise to the input layer 411 of the generation model 41, and executes the arithmetic processing of the generation model 41. To do. That is, the control unit 11 inputs noise into the input layer 411 of the generative model 41, and sequentially determines the firing of each neuron included in each of the layers 411 to 413 from the input side. As a result, the control unit 11 acquires the data 53 generated from noise as the output from the output layer 413. The control unit 21 acquires the data 53 thus generated by the generative model 41. In the present embodiment, the generated data 53 is pseudo sensing data.
- the route for acquiring the data 53 is not particularly limited and may be appropriately selected according to the embodiment.
- the control unit 21 may directly acquire the data 53 from the model generation device 1 by accessing the model generation device 1 via the network.
- the control unit 11 of the model generation device 1 may generate the data 53 by the generation model 41 in response to a request from each learning device 2. Then, the control unit 11 may appropriately transmit the generated data 53 to each learning device 2. Thereby, the control unit 21 may acquire the data 53 from the model generation device 1.
- the control unit 11 of the model generation device 1 may store the data 53 generated by the generation model 41 in an external storage device such as a data server.
- the data server may be, for example, a NAS (Network Attached Storage) or the like.
- the control unit 21 may indirectly acquire the data 53 from the model generation device 1 by accessing the external storage device and acquiring the data 53 from the external storage device.
- the number of data 53 to be acquired does not have to be particularly limited, and may be appropriately selected according to the embodiment.
- the control unit 21 advances the processing to the next step S103.
- the step S102 may be executed before the step S101.
- step S103 the control unit 21 operates as the learning processing unit 212, and is capable of discriminating whether or not the given data is included in the local learning data 3 by machine learning using the collected local learning data 3. Then, the learned discrimination model 40 obtained is acquired.
- the control unit 21 uses the local learning data 3 and the data 53 generated by the generation model 41 to identify whether the given data is derived from the local learning data 3 or the generation model 41. Train the discriminant model 40.
- a stochastic gradient descent method, a mini-batch gradient descent method, or the like may be used for this machine learning process.
- control unit 21 inputs the data 53 generated by the generation model 41 to the input layer 401 of the identification model 40, and sequentially determines the firing of each neuron included in each layer 401 to 403 from the input side. As a result, the control unit 21 acquires from the output layer 403 an output value corresponding to the result of identifying whether the input data is derived from the local learning data 3 or the generation model 41. In this scene, since the input data is the data 53 generated by the generation model 41, the correct answer is that the identification model 40 identifies “false”. The control unit 21 calculates the error between the correct value and the output value obtained from the output layer 403 for the data 53 generated by the generation model 41.
- control unit 21 inputs the data included in the local learning data 3 to the input layer 401 of the identification model 40, and sequentially determines the firing of each neuron included in each layer 401 to 403 from the input side. As a result, the control unit 21 acquires from the output layer 403 an output value corresponding to the result of identifying whether the input data is derived from the local learning data 3 or the generation model 41. In this scene, since the input data is the data included in the local learning data 3, the correct answer is that the identification model 40 identifies “true”. The control unit 21 calculates the error between the output value obtained from the output layer 403 and the correct answer for the data included in the local learning data 3.
- Each error may be calculated by the loss function of Equation 1, for example.
- X i in Expression 1 represents a set of the local learning data 3 of the i-th learning device 2, and x represents a sample included in X i .
- D i indicates the value of the identification by the identification model 40 of the i-th learning device 2.
- z indicates noise, and
- G indicates data generated by the generation model 41.
- E indicates the expected value for the sample.
- the loss function of Equation 1 is an example, and the calculation of each error is not limited to such an example, and may be appropriately selected according to the embodiment.
- the control unit 21 uses the error back propagation method (Backpropagation) to calculate the weight of the connection between each neuron in the identification model 40 and the error of each threshold value of each neuron using the gradient of the error of the calculated output value.
- the control unit 21 updates the weights of the connections between the neurons in the identification model 40 and the respective threshold values of the neurons based on the calculated errors. For example, the control unit 21 extracts a sample from each of the local learning data 3 and the data 53 generated by the generation model 41, and uses the extracted sample to adjust the value of the calculation parameter by the above processing.
- the control unit 21 repeats this adjustment a predetermined number of times. The number of times the adjustment is repeated may not be particularly limited and may be appropriately selected according to the embodiment.
- control unit 21 is trained to appropriately discriminate whether the given data is derived from the local learning data 3 or the generation model 41 for the data 53 generated by the local learning data 3 and the generation model 41.
- a model 40 can be built.
- the control unit 21 advances the processing to the next step S104.
- Step S104 the control unit 21 operates as the storage processing unit 213, and stores information regarding the learned identification model 40 constructed by machine learning in a predetermined storage area.
- the control unit 21 generates, as the learning result data 221, information indicating the structure and the operation parameter of the learned neural network (identification model 40) constructed by the machine learning in step S103. Then, the control unit 21 saves the generated learning result data 221 in a predetermined storage area.
- the predetermined storage area may be, for example, the RAM in the control unit 21, the storage unit 22, the external storage device, the storage medium, or a combination thereof.
- the storage medium may be, for example, a CD, a DVD, or the like, and the control unit 21 may store the learning result data 221 in the storage medium via the drive 26.
- the external storage device may be, for example, a data server such as NAS. In this case, the control unit 21 may store the learning result data 221 in the data server via the network using the communication interface 23.
- the external storage device may be, for example, an external storage device connected to the learning device 2.
- control unit 21 ends the series of processing related to machine learning of the identification model 40.
- control unit 21 may omit step S104 and temporarily store the information regarding the tentatively learned identification model 40 in the RAM.
- the control unit 21 may save the information regarding the tentatively learned identification model 40 as learning result data 221 in a predetermined storage area without omitting step S104. Further, in the repeating process, the control unit 21 may omit the process of step S101.
- FIG. 9 is a flowchart showing an example of a processing procedure regarding machine learning of the generation model 41 by the model generation device 1.
- the processing procedure described below is an example of the “model generation method” of the present invention.
- each processing procedure described below is merely an example, and each step may be changed as much as possible.
- steps can be omitted, replaced, and added as appropriate according to the embodiment.
- Step S201 it operates as the generation unit 111 and generates the data 50 using the generation model 41.
- the generative model 41 may be given by a template or may be given by an operator's designation via the input device 14.
- the generation model 41 may be given by the learning result obtained by the previous machine learning.
- the control unit 11 sets the generation model 41 based on these. Next, the control unit 11 extracts a plurality of noises from a predetermined probability distribution such as Gaussian distribution. The number of noises to be extracted may be appropriately selected according to the embodiment. Then, the control unit 11 inputs the extracted noises into the input layer 411 of the generation model 41, and determines the firing of each neuron included in each of the layers 411 to 413 in order from the input side. As a result, the control unit 11 acquires the data 50 generated corresponding to each noise from the output layer 413. After generating the data 50, the control unit 11 advances the process to the next step S202.
- a predetermined probability distribution such as Gaussian distribution.
- the number of noises to be extracted may be appropriately selected according to the embodiment.
- the control unit 11 inputs the extracted noises into the input layer 411 of the generation model 41, and determines the firing of each neuron included in each of the layers 411 to 413 in order from the input side. As a result, the control unit 11
- step S202 the control unit 11 operates as the transmission unit 112, transmits the generated data 50 to each identification model 40, and causes each identification model 40 to identify the data 50.
- step S203 the control unit 11 operates as the receiving unit 113, and receives the identification result 51 of the transmitted data 50 by each identification model 40.
- control unit 11 uses the communication interface 13 to transmit the data 50 to each learning device 2 via the network. As a result, the control unit 11 causes each identification model 40 to identify the data 50. Further, the control unit 11 acquires the identification result 51 by each identification model 40 from each learning device 2 via the network. When the identification result 51 is obtained from each learning device 2, the control unit 11 advances the process to the next step S204.
- the route for transmitting the data 50 and the route for receiving the identification result 51 may not be particularly limited, and may be appropriately selected according to the embodiment.
- the control unit 11 may directly transmit the data 50 to each learning device 2 via the network.
- the control unit 11 may transmit the generated data 50 to an external storage device such as a data server and cause each learning device 2 to acquire the data 50 stored in the external storage device. Accordingly, the control unit 11 may indirectly transmit the generated data 50 to each learning device 2. The same applies to the route for receiving the identification result 51.
- Step S204 the control unit 11 operates as the learning processing unit 114, and performs the machine learning using the received identification result 51 to perform the identification performance of at least one identification model 40 among the plurality of identification models 40.
- the generative model 41 is trained so as to generate data that lowers. That is, the control unit 11 generates data such that at least one of the plurality of identification models 40 identifies "true" (that is, identifies from the local learning data 3). Train the generative model 41.
- the method of calculating the error so as to reduce the identification performance of at least one of the plurality of identification models 40 may be appropriately selected according to the embodiment. In the present embodiment, as described below, the softmax function is used for calculating this error.
- step S202 the control unit 21 of each learning device 2 uses each identification model 40 to identify the data 50 generated by the generation model 41.
- the output value y i of the i-th discriminant model 40 is expressed by Equation 2 above.
- the control unit 21 executes the calculation of Expression 3 below based on the output value of the identification model 40.
- the control unit 21 calculates exp(ly i ). Then, the control unit 21 obtains the calculation result of the other learning device 2, calculates the total sum of exp(ly m ) in Expression 3, and uses the calculated total sum to calculate the softmax function S(ly i ). To calculate.
- l is a parameter. By increasing the value of l, it is possible to increase the degree to which the identification performance of at least one of the plurality of identification models 40 is degraded. On the other hand, if the value of l is made small, the degree to which the identification performance of at least one of the plurality of identification models 40 is degraded can be lowered, and the learning can be approximated to the degradation of the identification performance of all identification models 40.
- the value of l may be determined as appropriate.
- the value of l may be specified by the operator.
- the value of 1 may be determined according to the variation in the distribution of the local learning data 3 of each learning device 2. Specifically, when the variation in the distribution of the local learning data 3 of each learning device 2 is small, each learning device 2 holds the similar data as the local learning data 3. In this case, the value of l may be set to a small value.
- the value of l may be set to a large value.
- the variation in distribution may be calculated by an index such as variance.
- control unit 21 calculates y i S(ly i ) in the above expression 4. Further, the control unit 21 obtains the calculation result of the other learning device 2 and calculates Y. Y corresponds to the result of integrating the outputs of the identification models 40 with respect to the generated data 50. The control unit 21 calculates F(Y) in Expression 5 based on the calculated Y.
- F(Y) is an example of the loss function (error) of the generative model 41. Note that the loss function for calculating the error is not limited to the example of Expression 5, and may be appropriately selected according to the embodiment.
- control unit 21 calculates V i in Expression 6 based on the calculated F(Y).
- V i corresponds to the gradient obtained by backpropagating the error F(Y) from the output side to the input side of the discriminant model 40.
- control unit 21 of each learning device 2 returns the calculated V i as the identification result 51.
- step S204 the control unit 11 calculates the total sum V (formula 7) of V i acquired from each learning device 2.
- the control unit 11 integrates the identification results 51 by the identification models 40.
- the control unit 11 trains the generation model 41 by machine learning using the integrated identification result 51.
- the control unit 11 uses the calculated gradient V and calculates the weight of the connection between the neurons in the generation model 41 and the error of the threshold value of each neuron by the error back propagation method.
- the control unit 11 updates the weights of the connections between the neurons in the generative model 41 and the respective threshold values of the neurons based on the calculated errors.
- the value of the operation parameter of the generation model 41 is adjusted so as to reduce the identification performance of at least one of the plurality of identification models 40. That is, the control unit 11 can construct the generative model 41 that is trained to generate data that deteriorates the discrimination performance of at least one of the plurality of discrimination models 40. When the machine learning of the generation model 41 is completed, the control unit 11 advances the processing to the next step S205.
- the identification result 51 returned from each learning device 2 is not limited to such an example as long as it can be used for updating the calculation parameter of the generation model 41, and may be appropriately changed according to the embodiment. May be decided.
- the control unit 11 may obtain the output value of each identification model 40 as the identification result 51.
- the control unit 11 may execute the above-described arithmetic processing of each learning device 2.
- the method of calculating the error so as to reduce the identification performance of at least one of the plurality of identification models 40 is not limited to the method using the softmax function. In addition to the softmax function, for example, a max function or the like may be used to calculate this error.
- Step S205 the control unit 11 operates as the storage processing unit 115 and stores information about the learned generative model 41 constructed by machine learning in a predetermined storage area.
- the control unit 11 generates, as the learning result data 121, information indicating the structure and the operation parameter of the learned neural network (generation model 41) constructed by the machine learning in step S204. Then, the control unit 11 saves the generated learning result data 121 in a predetermined storage area.
- the predetermined storage area may be, for example, the RAM in the control unit 11, the storage unit 12, the external storage device, the storage medium, or a combination thereof.
- control unit 11 may omit step S205 and temporarily store the information (learning result) regarding the tentatively learned generation model 41 in the RAM.
- control unit 11 may save the information regarding the tentatively learned generation model 41 as the learning result data 121 in a predetermined storage area without omitting step S205.
- FIG. 10 is a flowchart showing an example of a processing procedure regarding inference processing by each learning device 2.
- each processing procedure described below is merely an example, and each step may be changed as much as possible.
- steps can be omitted, replaced, and added as appropriate according to the embodiment.
- Step S301 the control unit 21 operates as the target data acquisition unit 216 and acquires the target data 223 that is a target for which a predetermined inference is performed.
- each learning device 2 is connected to the sensor S via the external interface 27. Therefore, the control unit 21 acquires the target data 223 from the sensor S via the external interface 27.
- the route for acquiring the target data 223 is not limited to such an example, and may be appropriately determined according to the embodiment.
- another computer different from each learning device 2 may be connected to the sensor S.
- the control unit 21 may acquire the target data 223 by accepting the transmission of the target data 223 from another computer.
- the control unit 21 advances the process to the next step S302.
- Step S302 the control unit 21 operates as the inference unit 217 and acquires the data group 225 collected as the inference learning data for inferring the feature.
- the data group 225 is composed of a plurality of pieces of data 2251 regarding inferred features.
- the data 2251 included in the data group 225 may be, for example, the data included in the local learning data 3 and the data generated by the generation model 41.
- control unit 21 may acquire the data generated by using the learned generation model 41 as the data 2251.
- the generation of data by the learned generation model 41 may be executed by each learning device 2 or may be executed by another computer.
- the control unit 21 holds the learning result data 121, thereby including the learned generation model 41.
- the control unit 21 may acquire the learning result data 121 generated by the above-described learning processing via, for example, a network, the storage medium 92, or the like. In this case, the control unit 21 refers to the learning result data 121 and sets the learned generation model 41.
- the control unit 21 also extracts a plurality of noises from a predetermined probability distribution such as Gaussian distribution.
- the control unit 21 inputs the extracted noise to the input layer 411 of the generation model 41, and determines the firing of each neuron included in each of the layers 411 to 413 in order from the input side. Thereby, the control unit 21 acquires the data generated corresponding to the noise from the output layer 413.
- the control unit 21 can acquire the data group 225 including the data generated by the learned generation model 41.
- the control unit 21 may acquire the data generated using the generation model 41 that has already been trained by another computer via the network, the storage medium 92, or the like.
- the control unit 21 infers the characteristics appearing in the target data 223 based on the comparison between the data group 225 and the target data 223.
- the method of inferring the features appearing in the target data 223 based on the comparison with the data group 225 may be appropriately selected according to the embodiment.
- the data 2251 of each case included in the data group 225 is data showing a predetermined characteristic, and the predetermined characteristic appears in the target data 223 by comparison with the data group 225 as the inference of the characteristic. It is assumed that the scene is estimated.
- the target data 223 is image data of a product, and in the scene of estimating whether or not the product includes a defect as a feature inference, the data 2251 of each case forming the data group 225 includes the defect.
- control unit 21 may calculate the similarity between the data 2251 of each case and the target data 223 in the comparison between the data group 225 and the target data 223.
- the similarity may be calculated by, for example, a norm (distance) or the like.
- the control unit 21 may determine whether or not the target data 223 is included in the distribution of the data 2251 forming the data group 225, based on the calculated similarity. For example, the control unit 21 compares the calculated similarity with a threshold value, and if the calculated similarity is less than or equal to the threshold value, the target data 223 is included in the distribution of the data 2251 forming the data group 225. You may judge. The threshold value may be appropriately determined. At this time, the control unit 21 can estimate that the predetermined characteristic appearing in the data 2251 of each case also appears in the target data 223. In the above example, when the data 2251 of each case is image data of a product including a defect, the control unit 21 can estimate that the product included in the target data 223 includes a defect.
- the control unit 21 may determine that the distribution of the data 2251 forming the data group 225 does not include the target data 223. At this time, the control unit 21 can estimate that the predetermined characteristic appearing in the data 2251 of each case does not appear in the target data 223. In the above example, the control unit 21 can estimate that the product shown in the target data 223 does not include a defect.
- the data group 225 may be composed of the data 2251 collected for each feature.
- a label indicating a feature that appears in the data 2251 of each case may be given to the data 2251 of each case, and the data 2251 of each case may be classified based on this label.
- the control unit 21 may calculate the similarity between the data 2251 of each case and the target data 223 for each feature and estimate whether or not the feature appears in the target data 223. For example, the control unit 21 may infer that the feature that appears in the data 2251 having the highest similarity to the target data 223 also appears in the target data 223.
- the control unit 21 advances the process to step S303.
- step S303 the control unit 21 operates as the output unit 218 and outputs information regarding the result of inferring the feature.
- the output destination and the content of the output information may be appropriately determined according to the embodiment.
- the control unit 21 may output the result of the feature inference performed in step S302 to the output device 25 as it is. Further, for example, the control unit 21 may execute some information processing based on the result of inferring the characteristics. Then, the control unit 21 may output the result of executing the information processing as information regarding the result of inference.
- the output of the result of executing this information processing may include outputting a specific message such as a warning according to the result of the inference, controlling the operation of the controlled device according to the result of the inference, or the like. ..
- the output destination may be, for example, the output device 25, the control target device, or the like.
- FIG. 11 schematically illustrates an example of a scene in which the learning devices 2 are grouped.
- the generation model 41 by the model generation device 1 is constructed for the purpose of generating data along the distribution of the local learning data 3 collected by each learning device 2.
- the generation model 41 capable of generating data along the distribution of the local learning data 3 of each learning device 2 can be appropriately constructed by the above-described machine learning processing.
- the local learning data 3 collected by one learning device 2 and the local learning data 3 collected by another learning device 2 are composed of different types of data.
- An example is a case where one local learning data 3 is composed of image data and the other local learning data 3 is composed of sound data. In this case, it is difficult to construct the generative model 41 capable of generating data along the distribution of the local learning data 3 of each learning device 2.
- the control unit 11 may operate as the grouping unit 116 and assign each learning device 2 to at least one of the plurality of groups.
- Each group may be set appropriately.
- each group may be appropriately set according to the type of data included in the local learning data, the characteristics that appear in the data, the purpose of using the data, and the like.
- FIG. 11 illustrates a scene in which each learning device 2 is assigned to two groups, group A and group B.
- the control unit 11 stores the group allocation result for each learning device 2 in the allocation information 124.
- the model generation device 1 holds the generation model 41 for each group. Then, the control unit 11 executes the processing of steps S201 to 205 within the same group, in other words, for each group. That is, in step S201, the control unit 11 generates the data 50 for each group using the corresponding generation model 41. In step S202, the control unit 11 transmits the data 50 generated by the corresponding generation model 41 to each learning device 2 for each group, thereby causing each identification model 40 to perform identification on the data 50. In step S ⁇ b>203, the control unit 11 receives, for each group, the identification result 51 of each identification model 40 from each learning device 2.
- step S204 the control unit 11 reduces the identification performance of at least any one of the identification models 40 by machine learning using the received identification result 51 for each group.
- the corresponding generative model 41 is trained to generate different data.
- step S205 the control unit 11 stores, for each group, information about the learned generation model 41 constructed by machine learning in a predetermined storage area.
- the grouping method may be appropriately determined according to the embodiment.
- the control unit 11 assigns each learning device 2 to at least one of the plurality of groups by one of the following two methods.
- FIG. 12 is a flowchart showing an example of a processing procedure regarding group assignment to each learning device 2 according to the first grouping method.
- the control unit 11 assigns each learning device 2 to at least one of the plurality of groups by causing each learning device 2 to select a desired group from the list of groups.
- the first grouping method When the first grouping method is adopted as a method of assigning each learning device 2 to a group, assigning each learning device 2 to at least one of a plurality of groups is performed by the following steps S701 to S703. It is composed by processing.
- the processing procedure described below is merely an example, and each processing may be changed as much as possible. Further, in the processing procedure described below, steps can be omitted, replaced, and added as appropriate according to the embodiment.
- step S701 the control unit 11 distributes a group list 123 indicating a plurality of groups to each learning device 2. Thereby, the control unit 11 causes each learning device 2 to select one or more groups from the plurality of groups shown in the group list 123.
- Each group included in the group list 123 may be set according to the attributes of the local learning data 3, the learning device 2, the user of the learning device 2, and the like. For example, in the appearance inspection example, groups may be set according to attributes such as line numbers, factory names, and company names. Moreover, a new group may be set in the group list 123 in response to a request from each learning device 2.
- each learning device 2 can refer to the group list 123 output to the output device 25 and operate the input device 24 to select one or more groups from the group list 123. Further, the operator can operate the input device 24 to add a new group to the group list 123. Each learning device 2 may select two or more groups. In response to this operation, the control unit 21 of each learning device 2 returns a group selection response to the model generation device 1.
- step S702 the control unit 11 obtains the answer of this selection from each learning device 2. Then, in step S703, the control unit 11 allocates each learning device 2 to the selected one or more groups based on the acquired answers. When the allocation of one or more groups is completed, the control unit 11 finishes the series of processes regarding the group allocation by the first grouping method. According to this first grouping method, the control unit 11 can divide each learning device 2 into groups by a simple method.
- FIG. 13 is a flowchart showing an example of a processing procedure regarding group assignment to each learning device 2 according to the second grouping method.
- the control unit 11 assigns each learning device 2 to an appropriate group according to the attribute of the local learning data 3.
- the second grouping method When the second grouping method is adopted as a method of assigning each learning device 2 to a group, assigning each learning device 2 to at least one of a plurality of groups is performed by the following steps S801 to S803. It is composed by processing. However, the processing procedure described below is merely an example, and each processing may be changed as much as possible. Further, in the processing procedure described below, steps can be omitted, replaced, and added as appropriate according to the embodiment.
- step S801 the control unit 11 acquires attribute data regarding the local learning data 3 from each learning device 2.
- the method of acquiring the attribute data may be the same as the method of acquiring the identification result 51 from each learning device 2 in step S203.
- the control unit 11 may directly or indirectly acquire the attribute data from each learning device 2.
- the attribute data may include any information regarding the local learning data 3, for example, information indicating the type of data included in the local learning data 3, information indicating characteristics of the data, information indicating the purpose of using the data, and the like. But it's okay.
- the features that appear in the data may include any element that can be inferred from the data.
- the characteristics appearing in the data may be, for example, the presence/absence of a defect included in the product, the type of the defect included in the product, or the like. Further, the purpose of using the data may be appropriately determined according to the embodiment.
- the data included in the local learning data 3 may be used, for example, for learning a predetermined inference such as an appearance inspection and a cultivation condition monitoring.
- the attribute data may be generated when collecting the local learning data 3 in step S101 in each learning device 2. When the attribute data is acquired, the control unit 11 advances the processing to the next step S802.
- step S802 the control unit 11 clusters the attribute data acquired from each learning device 2.
- the clustering method is not particularly limited and may be appropriately selected according to the embodiment.
- a known method such as k-means clustering may be adopted for the clustering.
- step S803 the control unit 11 assigns each learning device 2 to at least one of the plurality of groups based on the clustering result.
- the control unit 11 assigns the learning devices 2 to which the acquired attribute data is assigned to the same class to the same group.
- each group may be set according to the class of the attribute data.
- the control unit 11 may assign each learning device 2 to two or more groups based on the result of clustering.
- control unit 11 ends the series of processes regarding the group assignment by the second grouping method.
- the control unit 11 can assign each learning device 2 to an appropriate group according to the attribute of the local learning data 3.
- control unit 11 can appropriately group the learning devices 2 into groups.
- grouping method is not limited to these examples, and may be appropriately determined according to the embodiment.
- the control unit 11 may accept an operator's designation of grouping via the input device 14. In this case, the control unit 11 may group the learning devices 2 according to the designation of the operator.
- the model generation device 1 does not collect the local learning data 3 itself in step S203, but each identification model 40.
- the result 51 of the identification is collected.
- the communication cost of the model generation device 1 can be suppressed.
- the calculation cost of the model generation device 1 can be suppressed in step S203.
- it is not necessary to collect the local learning data 3 itself in the model generating device 1 it is possible to prevent the contents of the local learning data 3 from being directly revealed. Therefore, the confidentiality of the local learning data 3 can be secured to some extent.
- the generation model 41 performs the discrimination performance of at least one of the plurality of discrimination models 40 by the machine learning using the collected discrimination result 51.
- the generation model 41 is trained to generate the data that causes the identification of at least one identification model 40 to be erroneous.
- the generation model 41 capable of generating data according to any distribution of the local learning data 3 used for machine learning of each identification model 40. Therefore, the learned generation model 41 can generate data according to the distribution of the logical sum of the local learning data 3 used for the machine learning of each identification model 40. That is, even if the distribution of the local learning data 3 collected by each learning device 2 is different, the learned generation model 41 can generate data that can be included in each distribution. Therefore, according to the present embodiment, the generative model 41 capable of generating various data can be constructed.
- the constructed learned generation model 41 may be used to increase the number of learning data for inference, in this embodiment, the number of data 2251 forming the data group 225 used for inference.
- the generation model 41 constructed according to this embodiment it is possible to generate data that can be included in the distribution of the local learning data 3 collected by each learning device 2. Therefore, it is difficult for each learning device 2 to collect the data independently, but it is possible to obtain the data that the other learning devices 2 can obtain by the generation model 41. Therefore, not only can the number of data 2251 included in the data group 225 be increased, but also the variations of the data 2251 can be abundant, whereby the accuracy of inference in step S302 can be increased.
- ⁇ Condition> ⁇ Number of local learning data: 3 ⁇ Data constituting the local learning data: Two-dimensional numerical data given by (v, w)-First local learning data: Average (-0.67) of (v, w) , 0.5), a value randomly sampled from a normal distribution with a standard deviation of 0.3-the second local learning data: (v, w) mean (0.67, 0.5), with a standard deviation of 0.3 Numerical values randomly sampled from the normal distribution-Third local learning data: Compose the numerically sampled/local learning data randomly sampled from the normal distribution with the mean (0, -1) of (v, w) and the standard deviation of 0.3 Number of data: 30,000 (10000 samples x 3 locals) ⁇ Discrimination model: 4-layer structure neural network, prepared for each local learning data ⁇ Generation model: 4-layer structure neural network ⁇ Machine learning of discrimination model and generation model The number of repetitions of: is 5000 times.
- the generation model includes a 200-dimensional input layer, a 128-dimensional fully connected layer, a 128-dimensional fully connected layer, and a 2-dimensional fully connected layer.
- the discriminant model comprises a two-dimensional input layer, a 128-dimensional fully connected layer, a 128-dimensional fully connected layer, and a 1-dimensional fully connected layer.
- FIG. 14 shows the local learning data S1 to S3.
- Three identification models were prepared corresponding to the three pieces of local learning data S1 to S3.
- the first discriminant model was trained to discriminate whether the given data was derived from the first local learning data S1 or the generative model.
- the second discriminant model was trained to discriminate whether the given data was derived from the second local learning data S2 or the generative model.
- the third discriminant model was trained to discriminate whether the given data was derived from the third local learning data S3 or the generative model.
- the generation model was trained to generate data that deteriorates the identification performance of at least one of the three identification models, as in the processing procedure of the above embodiment.
- the error was calculated by the mean square error, and the generative model was trained to generate data that deteriorates the discrimination performance of all three discrimination models.
- the processing procedure of the comparative example was set to be the same as that of the example. Then, noise extracted from the Gaussian distribution was given to each generation model obtained in each of the example and the comparative example to generate two-dimensional numerical data.
- FIG. 15A shows numerical data generated by the generative model obtained by the learning method of the comparative example.
- FIG. 15B shows numerical data generated by the generative model obtained by the learning method of the embodiment.
- square points indicate the numerical data that make up the local learning data S1 to S3
- black dots indicate the generated numerical data.
- three pieces of local learning data S1 to S3 were prepared so that the numerical data distributions do not overlap.
- the generation model was trained to generate numerical data that does not belong to any of the local learning data S1 to S3.
- the generative model is trained to generate numerical data that can belong to the local learning data S1 to S3 of each case.
- the generative model when the generative model is trained to generate data that reduces the discrimination performance of all discrimination models, the data that can be generated by the learned generative model that is constructed is very limited. It turned out that it would be a bad thing. In particular, in the case where the distributions of local learning data do not overlap, the generative model is constructed so as to generate data that is not included in any distribution. It turns out that it is not possible to generate data that can be included in the distribution. In other words, it was found that the generative model constructed by the learning method of the comparative example cannot generate the intended data and cannot obtain useful data.
- the generation model is It was found that the ability to generate data according to the distribution of the logical sum of can be acquired. Therefore, according to the present embodiment, it has been found that it is possible to construct a generative model that can generate various data that can be included in the distribution of the local learning data of each case. That is, according to the present embodiment, it was verified that useful data can be obtained by the constructed generative model.
- the model generation device 1 according to the above-described embodiment is applied to a scene where features included in sensing data obtained by the sensor S are inferred.
- the application range of the above-described embodiment is not limited to such an example.
- the model generation device 1 according to the above-described embodiment can be applied to any scene that generates predetermined data, particularly data that can be used for learning of predetermined inference.
- five modified examples that limit the application scene will be illustrated.
- FIG. 16 schematically illustrates an example of a scene to which the inspection system 100A according to the first modification is applied.
- the present modification is an example in which the model generation device 1 according to the above-described embodiment is applied to a scene in which data that can be used to estimate the state of a product RA produced on a production line is generated.
- an inspection system 100A according to this modification includes a model generation device 1 and a plurality of inspection devices 2A. Similar to the above-described embodiment, the model generation device 1 and each inspection device 2A may be connected to each other via a network.
- Each inspection device 2A corresponds to each learning device 2 described above. Each inspection device 2A may be configured in the same manner as each learning device 2 except that the data to be handled is different. In this modification, each inspection device 2A is connected to the camera SA. Each inspection device 2A acquires image data of the product RA by photographing the product RA with the camera SA.
- the type of camera SA may not be particularly limited.
- the camera SA is, for example, a general digital camera configured to acquire an RGB image, a depth camera configured to acquire a depth image, an infrared camera configured to image an infrared amount, or the like. You may Each inspection device 2A inspects the state of the product RA based on the obtained image data (that is, the quality of the product RA is determined).
- the image data of the product is used as the data used to estimate the state of the product RA.
- the data that can be used for estimating the state of the product RA is not limited to image data.
- sound data obtained by a microphone, measurement data obtained by an encoder, or the like may be used for state estimation together with or instead of image data.
- FIG. 17 schematically illustrates an example of the hardware configuration of each inspection device 2A according to this modification.
- each inspection device 2A according to the present modified example has a control unit 21, a storage unit 22, a communication interface 23, an input device 24, an output device 25, a drive 26, similar to each learning device 2 described above.
- the external interface 27 is a computer electrically connected.
- Each inspection device 2A is connected to the camera SA via the external interface 27.
- the hardware configuration of each inspection device 2A may not be limited to such an example.
- omission, replacement, and addition of constituent elements can be appropriately performed depending on the embodiment.
- Each inspection device 2A may be a general-purpose server device, a general-purpose PC, a PLC (programmable logic controller), or the like, in addition to an information processing device designed for the provided service.
- PLC programmable logic controller
- the storage unit 22 of each inspection device 2A stores various information such as the learning program 82A, the inspection program 83A, the local learning data 3A, and the learning result data 221A.
- the learning program 82A, the inspection program 83A, the local learning data 3A, and the learning result data 221A correspond to the learning program 82, the inference program 83, the local learning data 3, and the learning result data 221 according to the above embodiment.
- At least one of the learning program 82A, the inspection program 83A, and the local learning data 3A may be stored in the storage medium 92.
- each inspection device 2A may acquire at least one of the learning program 82A, the inspection program 83A, and the local learning data 3A from the storage medium 92.
- FIG. 18A schematically illustrates an example of a software configuration regarding learning processing of each inspection device 2A according to the present modification. Similar to the above embodiment, the software configuration related to the learning process of each inspection device 2A is realized by the control unit 21 executing the learning program 82A. As shown in FIG. 18A, the software configuration related to the learning process of each inspection device 2A is the same as the software configuration related to the learning process of each learning device 2 except that the data to be handled is replaced with the image data from the sensing data. As a result, each inspection device 2A executes a series of processing related to machine learning, similar to each learning device 2 described above.
- step S101 the control unit 21 of each inspection device 2A operates as the learning data collection unit 211A and collects the local learning data 3A used for machine learning of the identification model 40A.
- the identification model 40A is composed of a neural network, like the identification model 40 according to the above embodiment.
- the local learning data 3A is composed of product image data 31 showing a product.
- the product image data 31 corresponds to the data 2251.
- the method for generating the local learning data 3A may be appropriately selected according to the embodiment, as in the above embodiment.
- the local learning data 3A can be used to estimate the state of the product RA shown in the image data obtained by the camera SA. Therefore, the product image data 31 forming the local learning data 3A may be obtained, for example, by photographing the product RA with or without defects such as stains, stains, and scratches under various conditions with a camera. Thereby, the local learning data 3A may be generated.
- step S102 the control unit 21 operates as the learning processing unit 212 and acquires the data generated by the generation model 41.
- the generation model 41 is configured to generate image data in which a product can be captured.
- the control unit 11 of the model generation device 1 extracts noise from a predetermined probability distribution, inputs the extracted noise into the generation model 41, and executes the arithmetic processing of the generation model 41. Thereby, the control unit 11 acquires the image data as the output from the generative model.
- the control unit 21 acquires the image data thus generated by the generation model 41.
- step S103 the control unit 21 operates as the learning processing unit 212 and determines whether the given image data is the product image data 31 included in the local learning data 3A by machine learning using the local learning data 3A.
- a learned discrimination model 40A that has acquired the ability to discriminate is constructed.
- the control unit 21 uses the local learning data 3A and the image data generated by the generation model 41 to identify whether the given image data is derived from the local learning data 3A or the generation model 41. Train the discriminant model 40A.
- step S104 the control unit 21 operates as the storage processing unit 213 and generates, as the learning result data 221A, information indicating the structure and the calculation parameter of the learned identification model 40A constructed by the machine learning in step S103. Then, the control unit 21 saves the generated learning result data 221A in a predetermined storage area.
- FIG. 18B schematically exemplifies an example of the software configuration regarding the inspection processing of each inspection device 2A according to the present modification.
- the software configuration related to the inspection process of each inspection device 2A is realized by the execution of the inspection program 83A by the control unit 21.
- the software configuration related to the inspection process of each inspection device 2A is the same as the software configuration related to the inference process of each learning device 2 except that the data to be handled is replaced with the image data from the sensing data.
- each inspection device 2A executes a series of processes related to the inspection process, similar to each learning device 2 described above.
- step S301 the control unit 21 of each inspection device 2A operates as the target data acquisition unit 216 and acquires from the camera SA the target image data 223A of the product RA that is the target of the appearance inspection.
- step S302 the control unit 21 operates as the inspection unit 217A and acquires the data group 225A collected as inference learning data for determining the state of the product RA.
- the data group 225A is composed of a plurality of product image data 2251A.
- the product image data 2251A of each case may be image data of a product with or without defects.
- the data group 225A may be composed of either an image data group of a product containing a defect or an image data group of a product not containing a defect, or may be composed of both.
- the product image data 2251A of each case included in the data group 225A is, for example, the product image data 31 included in the local learning data 3A and the image generated by the generation model 41 in this modification. It may be data or the like.
- the control unit 21 may acquire the data generated by using the learned generation model 41 as the product image data 2251A.
- the generation of data by the learned generation model 41 may be executed by each inspection device 2A or may be executed by another computer. Accordingly, the control unit 21 may acquire the data group 225A including the data generated by using the learned generation model 41.
- control unit 21 determines the state (good or bad) of the product RA shown in the target image data 223A based on the comparison between the data group 225A and the target image data 223A.
- the control unit 21 estimates the state of the product RA shown in the target image data 223A by comparing the product image data 2251A forming the data group 225A and the target image data 223A in the same manner as the above embodiment, that is, , It is possible to determine whether or not the product RA contains defects.
- the control unit 21 When the number of product image data 2251A included in the data group 225A is insufficient, the control unit 21 appropriately specifies the product image data 2251A as the local learning data 3A, and generates the specified local learning data 3A.
- the model generation device 1 may be requested to build the model 41. Then, the control unit 21 uses the learned generation model 41 constructed in this way to generate new image data in which the product RA can be reflected, and uses the generated new image data as the product image data 2251A. It may be added to group 225A. Thereby, the control unit 21 may increase the number of product image data 2251A included in the data group 225A.
- step S303 the control unit 21 operates as the output unit 218 and outputs information related to the result of estimating the state of the product RA.
- the output destination and the output information may be appropriately determined according to the embodiment, as in the above embodiment.
- the control unit 21 may output the result of determining the state of the product RA to the output device 25 as it is.
- the control unit 21 may output a warning for notifying the defect to the output device 25.
- the product RA without defect and the product RA with defect are based on the result of judging the state of the product RA. You may control a conveyor apparatus so that and may be conveyed by another line.
- model generation device 1 executes the processes of steps S201 to S205 using the respective identification models 40A constructed as described above, as in the above embodiment.
- step S201 the control unit 11 of the model generation device 1 uses the generation model 41 to generate image data.
- step S202 the control unit 11 transmits the generated image data to each identification model 40A, and causes each identification model 40A to identify the generated image data.
- step S203 the control unit 11 receives the result of identification by the identification model 40A for the transmitted image data.
- the control unit 11 causes each identification model 40A to perform identification for the image data by transmitting the image data to each inspection device 2A. Then, the control unit 11 acquires the result of identification by each identification model 40A from each inspection device 2A.
- step S204 the control unit 11 generates image data that deteriorates the identification performance of at least one of the identification models 40A by machine learning using the received identification result.
- step S205 the control unit 11 generates, as the learning result data 121, information indicating the structure and the operation parameter of the learned generation model 41 constructed by the machine learning in step S204. Then, the control unit 11 saves the generated learning result data 121 in a predetermined storage area.
- the generation model 41 that can be used for the inspection and can generate various image data.
- this generation model 41 it is possible to increase the number of product image data 2251A constituting the data group 225A used for inspection.
- the number of product image data 2251A included in the data group 225A be increased, but also the variety of product image data 2251A can be enriched. In other words, assume that a defect that has not been experienced at one site has occurred at another site.
- the generation model 41 can generate the image data of the product RA including the defect. it can. Therefore, by adding this image data to the data group 225A, it is possible to enrich the variations of the product image data 2251A. Therefore, according to this modification, the accuracy of the inspection in step S302 can be improved. For example, you can discover defects that you have not yet experienced in the field.
- FIG. 19 schematically illustrates an example of a scene in which the monitoring system 100B according to the second modification is applied.
- the present modified example is an example in which the model generation device 1 according to the above-described embodiment is applied to a scene in which data that can be used to estimate the cultivation status of the plant GB is generated.
- a monitoring system 100B according to this modification includes a model generation device 1 and a plurality of monitoring devices 2B. Similar to the above embodiment, the model generation device 1 and each monitoring device 2B may be connected to each other via a network.
- Each monitoring device 2B corresponds to each learning device 2 described above. Each monitoring device 2B may be configured similarly to each learning device 2 except that the data to be handled is different. In this modification, each monitoring device 2B is connected to the sensor SB and is configured to be able to monitor the cultivation status of the plant GB. Further, in the present modification, each monitoring device 2B is connected to the cultivation device RB and is configured to be able to control the operation of the cultivation device RB according to the cultivation status of the plant GB.
- the cultivation device RB is configured to control the growth environment of the plant GB and grow the plant GB.
- the cultivating device RB is not particularly limited in type as long as it can control the growth environment of the plant GB, and may be appropriately selected according to the embodiment.
- the growth environment relates to the situation of growing the plant GB, and is, for example, the time for which the plant GB is irradiated with light, the temperature around the plant GB, the amount of water given to the plant GB, and the like.
- the cultivation device RB may be, for example, a curtain device, a lighting device, an air conditioning facility, a sprinkler device, or the like.
- the curtain device is configured to open and close a curtain attached to a window of a building.
- the lighting device is, for example, an LED (light emitting diode) lighting, a fluorescent lamp, or the like.
- the air conditioning equipment is, for example, an air conditioner or the like.
- the sprinkler is, for example, a sprinkler or the like.
- the curtain device and the lighting device are used to control the time for irradiating the plant GB with light.
- the air conditioner is used to control the temperature around the plant GB.
- the sprinkler is used to control the amount of water given to the plant GB.
- Each of the monitoring devices 2B senses the cultivation status of the plant GB with the sensor SB, thereby obtaining sensing data from the sensor SB as status data regarding the cultivation status of the plant GB.
- the cultivation status relates to all the elements for cultivating the plant GB, and may be specified by, for example, the growth environment and the growth state up to the time of cultivation.
- the growth state may be defined by, for example, the growth level of the plant GB.
- the type of the sensor SB is not particularly limited as long as it can sense the cultivation status of the plant GB, and may be appropriately selected according to the embodiment.
- the sensor SB may be, for example, a photometer, a thermometer, a hygrometer, a camera, or the like.
- the camera may be, for example, a general camera, a depth camera, an infrared camera, or the like.
- Each monitoring device 2B estimates the cultivation condition of the plant GB based on the obtained condition data, and controls the operation of the cultivation device RB so as to realize a growth environment suitable for the estimated cultivation condition.
- the configuration of each monitoring device 2B is not limited to such an example.
- Each monitoring device 2B may not be connected to the cultivation device RB and may not be configured to control the operation of the cultivation device RB.
- FIG. 20 schematically illustrates an example of the hardware configuration of each monitoring device 2B according to this modification.
- each monitoring device 2B according to the present modified example has a control unit 21, a storage unit 22, a communication interface 23, an input device 24, an output device 25, a drive 26, similar to each learning device 2 described above.
- the external interface 27 is a computer electrically connected.
- Each monitoring device 2B is connected to the cultivation device RB and the sensor SB via the external interface 27.
- the hardware configuration of each monitoring device 2B may not be limited to such an example.
- the specific hardware configuration of each monitoring device 2B it is possible to appropriately omit, replace, and add the constituent elements according to the embodiment.
- Each of the monitoring devices 2B may be a general-purpose server device, a general-purpose PC, a PLC, or the like, as well as an information processing device designed for the provided service.
- the storage unit 22 of each monitoring device 2B stores various information such as the learning program 82B, the monitoring program 83B, the local learning data 3B, and the learning result data 221B.
- the learning program 82B, the monitoring program 83B, the local learning data 3B, and the learning result data 221B correspond to the learning program 82, the inference program 83, the local learning data 3, and the learning result data 221 according to the above embodiment.
- At least one of the learning program 82B, the monitoring program 83B, and the local learning data 3B may be stored in the storage medium 92.
- each monitoring device 2B may acquire at least one of the learning program 82B, the monitoring program 83B, and the local learning data 3B from the storage medium 92.
- FIG. 21A schematically illustrates an example of a software configuration related to the learning process of each monitoring device 2B according to this modification. Similar to the above embodiment, the software configuration related to the learning process of each monitoring device 2B is realized by the control unit 21 executing the learning program 82B. As shown in FIG. 21A, the software configuration related to the learning process of each monitoring device 2B is the software configuration related to the learning process of each learning device 2 except that the handling data is replaced from the sensing data to the situation data related to the cultivation state of the plant GB. Is the same as. As a result, each monitoring device 2B executes a series of processing related to machine learning, similar to each learning device 2 described above.
- step S101 the control unit 21 of each monitoring device 2B operates as the inference learning data collection unit 211B and collects the local learning data 3B used for machine learning of the identification model 40B.
- the identification model 40B is configured by a neural network, like the identification model 40 according to the above embodiment.
- the local learning data 3B is composed of situation data 32 regarding the cultivation situation of the plant GB.
- the situation data 32 corresponds to the data 2251.
- the method for generating the local learning data 3B may be appropriately selected according to the embodiment, as in the above embodiment.
- the local learning data 3B can be used to estimate the cultivation status of the plant GB. Therefore, the situation data 32 forming the local learning data 3B may be obtained by sensing the cultivation situation of the plant GB under various conditions with a sensor. Thereby, the local learning data 3B may be generated.
- step S102 the control unit 21 operates as the learning processing unit 212 and acquires the data generated by the generation model 41.
- the generation model 41 is configured to generate pseudo situation data (hereinafter, also referred to as “pseudo situation data”) regarding the cultivation situation of the plant GB.
- the control unit 11 of the model generation device 1 extracts noise from a predetermined probability distribution, inputs the extracted noise into the generation model 41, and executes the arithmetic processing of the generation model 41. Thereby, the control unit 11 acquires the pseudo situation data as an output from the generative model.
- the control unit 21 acquires the pseudo situation data generated by the generation model 41 in this way.
- step S103 the control unit 21 operates as the learning processing unit 212 and identifies whether the given data is the situation data 32 included in the local learning data 3B by machine learning using the local learning data 3B.
- a learned discrimination model 40B that has acquired the ability to perform is constructed.
- the control unit 21 uses the local learning data 3B and the pseudo situation data generated by the generation model 41 to identify whether the given data is derived from the local learning data 3B or the generation model 41. Train the discriminant model 40B.
- step S104 the control unit 21 operates as the storage processing unit 213 and generates, as the learning result data 221B, information indicating the structure and the operation parameter of the learned identification model 40B constructed by the machine learning in step S103. Then, the control unit 21 stores the generated learning result data 221B in a predetermined storage area.
- FIG. 21B schematically exemplifies an example of the software configuration regarding the monitoring processing of each monitoring device 2B according to the present modification.
- the software configuration related to the monitoring process of each monitoring device 2B is realized by the execution of the monitoring program 83B by the control unit 21.
- the software configuration related to the monitoring process of each monitoring device 2B is the same as the software configuration related to the inference process of each learning device 2 except that the handling data replaces the sensing data with the situation data.
- each monitoring device 2B executes a series of processes related to the monitoring process, similar to each learning device 2 described above.
- step S301 the control unit 21 of each monitoring device 2B operates as the target data acquisition unit 216, and acquires from the sensor SB the target situation data 223B regarding the cultivation situation of the plant GB whose cultivation situation is to be monitored.
- the control unit 21 operates as the monitoring unit 217B and acquires the data group 225B collected as inference learning data for estimating the cultivation situation.
- the data group 225B is composed of a plurality of situation data 2251B.
- the situation data 2251B of each case may relate to a specific cultivation situation of the plant GB.
- the situation data 2251B of each case included in the data group 225B is, for example, the situation data 32 included in the local learning data 3B, the situation data generated by the generation model 41 in this modification, and the like. May be
- the control unit 21 may acquire the data generated by using the learned generation model 41 as the situation data 2251B.
- the generation of data by the learned generation model 41 may be performed by each monitoring device 2B or may be performed by another computer. Thereby, the control unit 21 may acquire the data group 225B including the data generated by using the learned generation model 41.
- control unit 21 estimates the cultivation status of the plant GB from the target status data 223B based on the comparison between the data group 225B and the target status data 223B.
- the control unit 21 estimates the cultivation status of the plant GB from the target status data 223B by comparing the status data 2251B forming the data group 225B and the target status data 223B in the same manner as in the above embodiment.
- the control unit 21 When the number of situation data 2251B included in the data group 225B is insufficient, the control unit 21 appropriately designates the situation data 2251B as the local learning data 3B, and the generation model 41 for the designated local learning data 3B. May be requested to the model generation device 1. And the control part 21 produces
- the control unit 21 operates as the output unit 218 and outputs information regarding the result of estimating the cultivation status of the plant GB.
- the output destination and the output information may be appropriately determined according to the embodiment, as in the above embodiment.
- the control unit 21 may directly output the result of estimating the cultivation status of the plant GB to the output device 25.
- the control unit 21 may determine the control command given to the cultivation device RB according to the estimated cultivation situation.
- the correspondence relationship between the cultivation status and the control command may be given by reference information such as a table format.
- the reference information may be stored in the storage unit 22, the storage medium 92, an external storage device, or the like, and the control unit 21 refers to the reference information to determine the control command according to the estimated cultivation situation. You may.
- control part 21 may control operation
- the control unit 21 may output information indicating the determined control command to the output device 25 to prompt the manager of the plant GB to control the operation of the cultivation device RB.
- model generation device 1 uses the identification models 40B constructed as described above to execute the processes of steps S201 to S205, as in the above embodiment.
- step S201 the control unit 11 of the model generation device 1 uses the generation model 41 to generate pseudo situation data.
- step S202 the control unit 11 transmits the generated pseudo situation data to each identification model 40B, and causes each identification model 40B to identify the generated pseudo situation data.
- step S203 the control unit 11 receives the identification result of each identification model 40B for the transmitted pseudo situation data.
- the control unit 11 causes each identification model 40B to perform identification for the pseudo situation data by transmitting the pseudo situation data to each monitoring device 2B. Then, the control unit 11 acquires the result of identification by each identification model 40B from each monitoring device 2B.
- step S204 the control unit 11 generates situation data that reduces the identification performance of at least one identification model 40B among the plurality of identification models 40B by machine learning using the received identification result.
- step S205 the control unit 11 generates, as the learning result data 121, information indicating the structure and the operation parameter of the learned generation model 41 constructed by the machine learning in step S204. Then, the control unit 11 saves the generated learning result data 121 in a predetermined storage area.
- this modification in the scene of monitoring the cultivation status of the plant GB, it is possible to construct a generation model 41 that can be used for monitoring and can generate various status data.
- this generation model 41 it is possible to increase the number of the situation data 2251B forming the data group 225B used for monitoring.
- the number of pieces of situation data 2251B included in the data group 225B be increased, but also the variations of the situation data 2251B can be enriched.
- the monitoring device 2B may not be able to properly estimate the cultivation status.
- this modification if the other monitoring device 2B has experience of the cultivation situation and the local learning data 3B obtained thereby is reflected in the machine learning of the generation model 41, this The generation model 41 can generate situation data regarding the cultivation situation. Therefore, by adding this status data to the data group 225B, it is possible to enrich the variations of the status data 2251B. Therefore, according to this modification, the estimation accuracy of the cultivation status in step S302 can be improved. For example, it is possible to estimate a cultivation situation that has not yet been experienced at the site. Thereby, when controlling operation
- FIG. 22 schematically illustrates an example of an application scene of the monitoring system 100C according to the third modification.
- This modified example is an example in which the model generation device 1 according to the above-described embodiment is applied to a scene in which data that can be used to estimate the state of a driver RC who drives a vehicle is generated.
- a monitoring system 100C according to this modification includes a model generation device 1 and a plurality of monitoring devices 2C. Similar to the above embodiment, the model generation device 1 and each monitoring device 2C may be connected to each other via a network.
- Each monitoring device 2C corresponds to each learning device 2 described above. Each monitoring device 2C may be configured in the same manner as each learning device 2 except that the data to be handled is different. Each monitoring device 2C estimates the state of the driver RC based on the data obtained by observing the driver RC.
- the data used for estimation is not particularly limited as long as it relates to the state of the driver RC, and may be appropriately selected according to the embodiment.
- the data used for the estimation may be, for example, vital data of the driver RC, image data of the driver RC that can be captured, or the like.
- each monitoring device 2C is connected to a camera SC that is arranged so that the driver RC can be photographed.
- the camera SC may be, for example, a general camera, a depth camera, an infrared camera, or the like.
- Each monitoring device 2C estimates the state of the driver RC based on the image data obtained from the camera SC.
- the state of the driver RC to be estimated may be appropriately determined according to the embodiment.
- the state of the driver RC to be estimated may be appropriately determined according to the embodiment.
- the drowsiness degree indicating the degree of drowsiness of the driver RC
- the fatigue degree indicating the degree of fatigue of the driver RC
- It may include a margin indicating the degree of margin for the driver RC to drive, or a combination thereof.
- FIG. 23 schematically illustrates an example of the hardware configuration of each monitoring device 2C according to this modification.
- each monitoring device 2C according to the present modified example has a control unit 21, a storage unit 22, a communication interface 23, an input device 24, an output device 25, a drive 26, similar to each learning device 2 described above.
- the external interface 27 is a computer electrically connected.
- Each monitoring device 2C is connected to the camera SC via the external interface 27.
- the hardware configuration of each monitoring device 2C may not be limited to such an example. With respect to the specific hardware configuration of each monitoring device 2C, it is possible to appropriately omit, replace, and add components according to the embodiment.
- Each monitoring device 2C may be a general-purpose computer, a mobile phone including a smart phone, an in-vehicle device, or the like, in addition to an information processing device designed specifically for the provided service.
- the storage unit 22 of each monitoring device 2C stores various information such as the learning program 82C, the monitoring program 83C, the local learning data 3C, and the learning result data 221C.
- the learning program 82C, the monitoring program 83C, the local learning data 3C, and the learning result data 221C correspond to the learning program 82, the inference program 83, the local learning data 3, and the learning result data 221 according to the above embodiment.
- At least one of the learning program 82C, the monitoring program 83C, and the local learning data 3C may be stored in the storage medium 92.
- each monitoring device 2C may acquire at least one of the learning program 82C, the monitoring program 83C, and the local learning data 3C from the storage medium 92.
- FIG. 24A schematically illustrates an example of a software configuration regarding learning processing of each monitoring device 2C according to the present modification. Similar to the above embodiment, the software configuration related to the learning process of each monitoring device 2C is realized by the control unit 21 executing the learning program 82C. As shown in FIG. 24A, the software configuration related to the learning process of each monitoring device 2C is the same as the software configuration related to the learning process of each learning device 2 except that the data to be handled is replaced by the image data that the driver RC can capture from the sensing data. Is the same as. As a result, each monitoring device 2C executes a series of processing related to machine learning, similarly to each learning device 2 described above.
- step S101 the control unit 21 of each monitoring device 2C operates as the learning data collection unit 211C and collects the local learning data 3C used for machine learning of the identification model 40C.
- the identification model 40C is configured by a neural network, like the identification model 40 according to the above embodiment.
- the local learning data 3C is composed of image data 33 showing the driver.
- the image data 33 corresponds to the data 2251.
- the method for generating the local learning data 3C may be appropriately selected according to the embodiment, as in the above embodiment.
- the local learning data 3C can be used to estimate the state of the driver RC. Therefore, the image data 33 forming the local learning data 3C may be obtained by photographing a subject (driver) driving a vehicle in various situations with a camera. Thereby, the local learning data 3C may be generated.
- step S102 the control unit 21 operates as the learning processing unit 212 and acquires the data generated by the generation model 41.
- the generation model 41 is configured to generate image data that can capture the driver.
- the control unit 11 of the model generation device 1 extracts noise from a predetermined probability distribution, inputs the extracted noise into the generation model 41, and executes the arithmetic processing of the generation model 41. Thereby, the control unit 11 acquires the image data as the output from the generative model.
- the control unit 21 acquires the image data thus generated by the generation model 41.
- step S103 the control unit 21 operates as the learning processing unit 212 and identifies whether the given data is the image data 33 included in the local learning data 3C by machine learning using the local learning data 3C.
- the learned discrimination model 40C that has acquired the ability to perform is constructed.
- the control unit 21 uses the local learning data 3C and the image data generated by the generation model 41 to identify whether the given image data is derived from the local learning data 3C or the generation model 41. Train the discriminant model 40C.
- step S104 the control unit 21 operates as the storage processing unit 213, and generates, as the learning result data 221C, information indicating the structure and the calculation parameter of the learned identification model 40C constructed by the machine learning in step S103. Then, the control unit 21 saves the generated learning result data 221C in a predetermined storage area.
- FIG. 24B schematically illustrates an example of a software configuration related to the monitoring process of each monitoring device 2C according to the present modification. Similar to the above embodiment, the software configuration related to the monitoring process of each monitoring device 2C is realized by the execution of the monitoring program 83C by the control unit 21. As shown in FIG. 24B, the software configuration related to the monitoring process of each monitoring device 2C is the same as the software configuration related to the inference process of each learning device 2 except that the data to be handled is replaced with the image data from the sensing data. As a result, each monitoring device 2C executes a series of processes related to the monitoring process, similar to each learning device 2 described above.
- step S301 the control unit 21 of each monitoring device 2C operates as the target data acquisition unit 216 and acquires the target image data 223C that the driver RC can capture from the camera SC.
- the control unit 21 operates as the monitoring unit 217C and acquires the data group 225C collected as inference learning data for estimating the driver's state.
- the data group 225C is composed of a plurality of pieces of image data 2251C.
- the image data 2251C of each case may relate to a specific state of the driver.
- the image data 2251C of each case included in the data group 225C is, for example, the image data 33 included in the local learning data 3C, the image data generated by the generation model 41 in this modification, and the like. May be
- the control unit 21 may acquire the data generated by using the learned generation model 41 as the image data 2251C.
- the generation of data by the learned generation model 41 may be executed by each monitoring device 2C or may be executed by another computer. Accordingly, the control unit 21 may acquire the data group 225C including the data generated by using the learned generation model 41.
- control unit 21 estimates the state of the driver RC that can be captured in the target image data 223C based on the comparison between the data group 225C and the target image data 223C.
- the control unit 21 estimates the state of the driver RC shown in the target image data 223C by comparing the image data 2251C forming the data group 225C and the target image data 223C in the same manner as in the above embodiment.
- the control unit 21 When the number of image data 2251C included in the data group 225C is insufficient, the control unit 21 appropriately designates the image data 2251C as the local learning data 3C, and the generation model 41 for the designated local learning data 3C. May be requested to the model generation device 1. Then, the control unit 21 uses the learned generation model 41 constructed in this way to generate new image data in which the driver can be imaged, and the generated new image data is used as the image data 2251C as a data group. May be added to 225C. Thereby, the control unit 21 may increase the number of image data 2251C included in the data group 225C.
- control unit 21 operates as the output unit 218 and outputs information regarding the result of estimating the state of the driver RC.
- the output destination and the output information may be appropriately determined according to the embodiment, as in the above embodiment.
- the control unit 21 may directly output the result of estimating the state of the driver RC to the output device 25.
- control unit 21 may output a specific message such as a warning to the output device 25 according to the state of the driver RC.
- a specific message such as a warning to the output device 25 according to the state of the driver RC.
- the control unit 21 may determine whether at least one of the drowsiness level and the fatigue level exceeds a threshold value. The threshold may be set appropriately. When at least one of the drowsiness level and the fatigue level exceeds the threshold value, the control unit 21 outputs a warning to the driver RC to stop the driver at the parking lot or the like and take a break. Good.
- control unit 21 may control the automatic driving operation of the vehicle based on the result of estimating the state of the driver RC.
- the vehicle is configured to be capable of switching between an automatic driving mode in which the system controls the traveling of the vehicle and a manual driving mode in which the vehicle RC controls the traveling of the vehicle by steering the driver RC.
- the control unit 21 when the vehicle is traveling in the automatic driving mode and the switching from the automatic driving mode to the manual driving mode is received from the driver RC or the system, the control unit 21 causes the estimated margin of the driver RC. It may be determined whether the degree exceeds a threshold value. Then, when the margin of the driver RC exceeds the threshold value, the control unit 21 may permit switching from the automatic driving mode to the manual driving mode. On the other hand, when the margin of the driver RC is equal to or less than the threshold value, the control unit 21 may maintain the traveling in the automatic driving mode without permitting the switching from the automatic driving mode to the manual driving mode.
- the control unit 21 may determine whether at least one of the drowsiness level and the fatigue level exceeds a threshold value. Then, when at least one of the drowsiness level and the fatigue level exceeds the threshold value, the control unit 21 switches from the manual operation mode to the automatic operation mode and instructs to stop at a safe place such as a parking lot. May be transmitted to the vehicle system. On the other hand, when this is not the case, the control unit 21 may maintain the traveling of the vehicle in the manual operation mode.
- control unit 21 may determine whether the margin is equal to or less than the threshold value. Then, when the allowance is equal to or less than the threshold value, the control unit 21 may transmit a command to decelerate to the system of the vehicle. On the other hand, when this is not the case, the control unit 21 may maintain the traveling of the vehicle by the operation of the driver RC.
- model generation device 1 executes the processes of steps S201 to S205 using the respective identification models 40C constructed as described above, as in the above embodiment.
- step S201 the control unit 11 of the model generation device 1 uses the generation model 41 to generate image data.
- step S202 the control unit 11 transmits the generated image data to each identification model 40C and causes each identification model 40C to identify the generated image data.
- step S203 the control unit 11 receives the result of identification by the identification model 40C for the transmitted image data.
- the control unit 11 causes each identification model 40C to identify the image data by transmitting the image data to each monitoring device 2C. Then, the control unit 11 acquires the result of identification by each identification model 40C from each monitoring device 2C.
- step S204 the control unit 11 generates image data that reduces the identification performance of at least one of the identification models 40C by machine learning using the received identification result. Train the generative model 41 to In step S205, the control unit 11 generates, as the learning result data 121, information indicating the structure and the operation parameter of the learned generation model 41 constructed by the machine learning in step S204. Then, the control unit 11 saves the generated learning result data 121 in a predetermined storage area.
- the generation model 41 that can be used for the monitoring and that can generate various image data can be constructed.
- this generation model 41 it is possible to increase the number of image data 2251C forming the data group 225C used for monitoring.
- the number of image data 2251C included in the data group 225C be increased, but also the variation of the image data 2251C can be enriched. Therefore, according to this modification, it is possible to improve the estimation accuracy of the state of the driver RC in step S303.
- FIG. 25 schematically illustrates an example of an application scene of the prediction system 100D according to the fourth modification.
- the present modified example is an example in which the model generation device 1 according to the above-described embodiment is applied to a scene in which data that can be used to predict the amount of power generation in the power generation facility RD is generated.
- a prediction system 100D according to this modification includes a model generation device 1 and a plurality of prediction devices 2D. Similar to the above embodiment, the model generation device 1 and each prediction device 2D may be connected to each other via a network.
- Each prediction device 2D corresponds to each learning device 2 described above. Each prediction device 2D may be configured in the same manner as each learning device 2 except that the data to be handled is different. Each prediction device 2D predicts the amount of power generation in the power generation facility RD based on the data related to the power generation of the power generation facility RD.
- the type of the power generation facility RD is not particularly limited, and may be, for example, a solar power generation facility.
- the data used for predicting the power generation amount is not particularly limited as long as it can relate to the power generation of the power generation facility RD, and may be appropriately selected according to the embodiment. In this modification, the power generation facility RD is a solar power generation facility, and each prediction device 2D predicts the power generation amount of the power generation facility RD based on the meteorological data.
- FIG. 26 schematically illustrates an example of the hardware configuration of each prediction device 2D according to this modification.
- each prediction device 2D according to the present modification example like each learning device 2, has a control unit 21, a storage unit 22, a communication interface 23, an input device 24, an output device 25, a drive 26, And the external interface 27 is a computer electrically connected.
- the hardware configuration of each prediction device 2D may not be limited to such an example.
- omission, replacement, and addition of constituent elements can be appropriately performed depending on the embodiment.
- Each prediction device 2D may be a general-purpose server device, a general-purpose PC, or the like, in addition to the information processing device designed for the provided service.
- the storage unit 22 of each prediction device 2D stores various information such as the learning program 82D, the prediction program 83D, the local learning data 3D, and the learning result data 221D.
- the learning program 82D, the prediction program 83D, the local learning data 3D, and the learning result data 221D correspond to the learning program 82, the inference program 83, the local learning data 3, and the learning result data 221 according to the above embodiment.
- At least one of the learning program 82D, the prediction program 83D, and the local learning data 3D may be stored in the storage medium 92.
- each prediction device 2D may acquire at least one of the learning program 82D, the prediction program 83D, and the local learning data 3D from the storage medium 92.
- FIG. 27A schematically illustrates an example of the software configuration related to the learning process of each prediction device 2D according to the present modification. Similar to the above embodiment, the software configuration regarding the learning process of each prediction device 2D is realized by the execution of the learning program 82D by the control unit 21. As shown in FIG. 27A, the software configuration related to the learning process of each prediction device 2D is the same as the software configuration related to the learning process of each learning device 2 except that the data to be handled is replaced with the meteorological data from the sensing data. As a result, each prediction device 2D executes a series of processing related to machine learning, similar to each learning device 2 described above.
- step S101 the control unit 21 of each prediction device 2D operates as the learning data collection unit 211D and collects the local learning data 3D used for machine learning of the identification model 40D.
- the identification model 40D is configured by a neural network, like the identification model 40 according to the above embodiment.
- the local learning data 3D is composed of weather data 34.
- the weather data 34 corresponds to the data 2251.
- the meteorological data 34 may include, for example, data indicating weather, temperature, precipitation, humidity, air volume, and the like.
- the method for generating the local learning data 3D may be appropriately selected according to the embodiment, as in the above embodiment.
- the local learning data 3D can be used to predict the amount of power generation. Therefore, the weather data 34 forming the local learning data 3D may be obtained under various weather conditions together with the power generation amount of the power generation equipment RD.
- the power generation amount may be given by, for example, a sensor of the power generation facility RD, an operator's input, or the like. Thereby, the local learning data 3D may be generated.
- step S102 the control unit 21 operates as the learning processing unit 212 and acquires the data generated by the generation model 41.
- the generation model 41 is configured to generate pseudo weather data (hereinafter, also referred to as “pseudo weather data”).
- the control unit 11 of the model generation device 1 extracts noise from a predetermined probability distribution, inputs the extracted noise into the generation model 41, and executes the arithmetic processing of the generation model 41. Thereby, the control unit 11 acquires the pseudo weather data as an output from the generative model.
- the control unit 21 acquires the pseudo-weather data generated by the generation model 41 in this way.
- step S103 the control unit 21 operates as the learning processing unit 212 and determines whether or not the given meteorological data is the meteorological data 34 included in the local learning data 3D by machine learning using the local learning data 3D.
- a learned discriminant model 40D that has acquired the ability to discriminate is constructed.
- the control unit 21 uses the local learning data 3D and the pseudo weather data generated by the generation model 41 to identify whether the given weather data is derived from the local learning data 3D or the generation model 41.
- Train the identification model 40D as follows.
- step S104 the control unit 21 operates as the storage processing unit 213 and generates, as the learning result data 221D, information indicating the structure and the operation parameter of the learned identification model 40D constructed by the machine learning in step S103. Then, the control unit 21 saves the generated learning result data 221D in a predetermined storage area.
- FIG. 27B schematically illustrates an example of a software configuration related to the prediction process of each prediction device 2D according to the present modification. Similar to the above embodiment, the software configuration related to the prediction process of each prediction device 2D is realized by the execution of the prediction program 83D by the control unit 21. As shown in FIG. 27B, the software configuration related to the prediction process of each prediction device 2D is the same as the software configuration related to the inference process of each learning device 2 except that the data to be handled is replaced with the weather data from the sensing data. Thereby, each prediction device 2D executes a series of processes related to the prediction process, similarly to each learning device 2 described above.
- step S301 the control unit 21 of each prediction device 2D operates as the target data acquisition unit 216 and acquires the target weather data 223D regarding the weather conditions in the power generation facility RD that is a target for predicting the power generation amount.
- the acquisition source of the target meteorological data 223D may not be particularly limited, and may be appropriately selected according to the embodiment.
- the control unit 21 may acquire the target weather data 223D from a known weather data server.
- the control unit 21 may acquire the target weather data 223D from the sensor.
- the control unit 21 operates as the prediction unit 217D and acquires the data group 225D collected as the inference learning data for predicting the power generation amount.
- the data group 225D is composed of a plurality of pieces of meteorological data 2251D.
- the weather data 2251D of each case may be acquired according to a specific power generation amount.
- the meteorological data 2251D included in the data group 225D may be, for example, the meteorological data 34 included in the local learning data 3D, the meteorological data generated by the generation model 41 in the present modification, and the like.
- the control unit 21 may acquire the data generated by using the learned generation model 41 as the meteorological data 2251D.
- the generation of data by the learned generation model 41 may be executed by each prediction device 3D or may be executed by another computer. Accordingly, the control unit 21 can acquire the data group 225D including the data generated by using the learned generation model 41.
- control unit 21 predicts the power generation amount from the target weather data 223D based on the comparison between the data group 225D and the target weather data 223D.
- the control unit 21 predicts the power generation amount from the target meteorological data 223D by comparing the meteorological data 2251D forming the data group 225D with the target meteorological data 223D by the same method as the above embodiment.
- the control unit 21 When the number of meteorological data 2251D included in the data group 225D is insufficient, the control unit 21 appropriately designates the meteorological data 2251D as the local learning data 3D, and the generation model 41 for the designated local learning data 3D. May be requested to the model generation device 1. Then, the control unit 21 uses the learned generation model 41 constructed in this way to generate new meteorological data that can be related to a specific power generation amount, and the generated new meteorological data is used as meteorological data 2251D. May be added to group 225D. Thereby, the control unit 21 may increase the number of meteorological data 2251D included in the data group 225D.
- the control unit 21 operates as the output unit 218 and outputs information related to the result of predicting the power generation amount of the power generation equipment RD.
- the output destination and the output information may be appropriately determined according to the embodiment, as in the above embodiment.
- the control unit 21 may directly output the result of predicting the power generation amount of the power generation equipment RD to the output device 25.
- the control unit 21 compares the power generation amount of the power generation facility RD with a threshold value, and when the power generation amount of the power generation facility RD is less than or equal to the threshold value, outputs a message that prompts power generation by another power generation facility. It may be output to the device 25.
- the threshold may be set appropriately.
- model generation device 1 executes the processes of steps S201 to S205 using the respective identification models 40D constructed as described above, as in the above embodiment.
- step S201 the control unit 11 of the model generation device 1 uses the generation model 41 to generate pseudo weather data.
- step S202 the control unit 11 transmits the generated pseudo-weather data to each identification model 40D, and causes each identification model 40D to identify the generated pseudo-weather data.
- step S203 the control unit 11 receives the identification result of each identification model 40D for the transmitted pseudo-weather data.
- the control unit 11 causes each identification model 40D to identify the pseudo weather data by transmitting the pseudo weather data to each prediction device 2D. Then, the control unit 11 acquires the result of identification by each identification model 40D from each prediction device 2D.
- step S204 the control unit 11 generates meteorological data that deteriorates the identification performance of at least one identification model 40D among the plurality of identification models 40D by machine learning using the received identification result.
- step S205 the control unit 11 generates, as the learning result data 121, information indicating the structure and the operation parameter of the learned generation model 41 constructed by the machine learning in step S204. Then, the control unit 11 saves the generated learning result data 121 in a predetermined storage area.
- this modification in the scene of predicting the amount of power generation in the power generation facility RD, it is possible to construct a generation model 41 that can be used for the prediction and can generate various weather data. By using this generation model 41, it is possible to increase the number of meteorological data 2251D forming the data group 225D used for prediction. In this modification, it is difficult for each prediction device 2D to collect by this generation model 41 alone, but it depends on the power generation amount of the power generation facility RD in the specific weather condition obtained by the other prediction device 2D. Meteorological data can be generated. Thereby, not only can the number of meteorological data 2251D included in the data group 225D be increased, but also the variation of the meteorological data 2251D can be abundant. Therefore, according to this modification, it is possible to improve the prediction accuracy of the power generation amount in step S303.
- FIG. 28 schematically illustrates an example of an application scene of the diagnosis system 100E according to the fifth modification.
- the present modified example is an example in which the model generation device 1 according to the above-described embodiment is applied to a scene in which data that can be used to estimate (diagnose) the health condition of the target person RE is generated.
- a diagnostic system 100E according to this modification includes a model generation device 1 and a plurality of diagnostic devices 2E. Similar to the above-described embodiment, the model generation device 1 and each diagnostic device 2E may be connected to each other via a network.
- Each diagnostic device 2E corresponds to each learning device 2 described above. Each diagnostic device 2E may be configured in the same manner as each learning device 2 except that the data to be handled is different. Each diagnostic device 2E diagnoses the health condition of the subject RE based on the data related to the health condition of the subject RE.
- the data used for diagnosis is not particularly limited as long as it can relate to the health condition of the subject RE, and may be appropriately selected according to the embodiment.
- the data used for diagnosis may be, for example, image data, vital data, or the like.
- the vital data relates to vitals, and may be data indicating measurement results of body temperature, blood pressure, pulse, etc., for example. In this modification, each diagnostic device 2E is connected to the vital sensor SE.
- Each diagnostic device 2E diagnoses the health condition of the subject RE based on the vital data obtained from the vital sensor SE.
- the health state to be estimated may be appropriately determined according to the embodiment, and may include, for example, whether or not he/she is healthy, whether or not there is a sign of illness, and the like.
- FIG. 29 schematically illustrates an example of the hardware configuration of each diagnostic device 2E according to the present modification.
- each diagnostic device 2E according to the present modified example has a control unit 21, a storage unit 22, a communication interface 23, an input device 24, an output device 25, a drive 26, similar to each learning device 2 described above.
- the external interface 27 is a computer electrically connected.
- Each diagnostic device 2E is connected to the vital sensor SE via the external interface 27.
- the vital sensor SE is, for example, a thermometer, a blood pressure monitor, a pulse rate monitor, or the like.
- the hardware configuration of each diagnostic device 2E may not be limited to such an example.
- Each diagnostic device 2E may be a general-purpose server device, a general-purpose PC, or the like, in addition to an information processing device designed exclusively for the provided service.
- the storage unit 22 of each diagnostic device 2E stores various information such as a learning program 82E, a diagnostic program 83E, local learning data 3E, and learning result data 221E.
- the learning program 82E, the diagnostic program 83E, the local learning data 3E, and the learning result data 221E correspond to the learning program 82, the inference program 83, the local learning data 3, and the learning result data 221 according to the above embodiment.
- At least one of the learning program 82E, the diagnostic program 83E, and the local learning data 3E may be stored in the storage medium 92.
- each diagnostic device 2E may acquire at least one of the learning program 82E, the diagnostic program 83E, and the local learning data 3E from the storage medium 92.
- FIG. 30A schematically illustrates an example of the software configuration regarding the learning process of each diagnostic device 2E according to the present modification. Similar to the above embodiment, the software configuration related to the learning process of each diagnostic device 2E is realized by the execution of the learning program 82E by the control unit 21. As shown in FIG. 30A, the software configuration related to the learning process of each diagnostic device 2E is the same as the software configuration related to the learning process of each learning device 2 except that the handled data is replaced with the vital data from the sensing data. As a result, each diagnostic device 2E executes a series of processing related to machine learning, similar to each learning device 2 described above.
- step S101 the control unit 21 of each diagnostic device 2E operates as the learning data collection unit 211E and collects the local learning data 3E used for machine learning of the identification model 40E.
- the identification model 40E is configured by a neural network, like the identification model 40 according to the above embodiment.
- the local learning data 3E is composed of vital data 36.
- the method for generating the local learning data 3E may be appropriately selected according to the embodiment, as in the above embodiment.
- the local learning data 3E can be used to estimate the health condition of the subject. Therefore, the vital data 36 forming the local learning data 3E may be obtained by measuring vitals of subjects having various health conditions with a vital sensor. Thereby, the local learning data 3E may be generated.
- step S102 the control unit 21 operates as the learning processing unit 212 and acquires the data generated by the generation model 41.
- the generation model 41 is configured to generate pseudo vital data (hereinafter, also referred to as “pseudo vital data”).
- the control unit 11 of the model generation device 1 extracts noise from a predetermined probability distribution, inputs the extracted noise into the generation model 41, and executes the arithmetic processing of the generation model 41. Thereby, the control unit 11 acquires the pseudo vital data as an output from the generative model.
- the control unit 21 acquires the pseudo vital data generated by the generation model 41 in this way.
- step S103 the control unit 21 operates as the learning processing unit 212 and determines whether or not the given vital data is the vital data 36 included in the local learning data 3E by machine learning using the local learning data 3E.
- a learned discriminant model 40E having the ability to discriminate is constructed.
- the control unit 21 uses the local learning data 3E and the pseudo vital data generated by the generation model 41 to identify whether the given vital data is derived from the local learning data 3E or the generation model 41.
- Train the identification model 40E as follows.
- step S104 the control unit 21 operates as the storage processing unit 213 and generates, as the learning result data 221E, information indicating the structure and the operation parameter of the learned identification model 40E constructed by the machine learning in step S103. Then, the control unit 21 saves the generated learning result data 221E in a predetermined storage area.
- FIG. 30B schematically illustrates an example of a software configuration related to the diagnostic processing of each diagnostic device 2E according to the present modification. Similar to the above embodiment, the software configuration related to the diagnostic processing of each diagnostic device 2E is realized by the execution of the diagnostic program 83E by the control unit 21. As shown in FIG. 30B, the software configuration related to the diagnostic process of each diagnostic device 2E is the same as the software configuration related to the inference process of each learning device 2 except that the data to be handled is replaced with the vital data from the sensing data. As a result, each diagnostic device 2E executes a series of processes related to the diagnostic process, similarly to each learning device 2 described above.
- step S301 the control unit 21 of each diagnostic device 2E operates as the target data acquisition unit 216 and acquires the target vital data 223E indicating the result of measuring the vital signs of the target person RE from the vital sensor SE.
- the control unit 21 operates as the diagnosis unit 217E and acquires the data group 225E collected as the inference learning data for diagnosing the health condition of the subject RE.
- the data group 225E is composed of a plurality of pieces of vital data 2251E.
- the vital data 2251E of each case may be acquired according to a specific health condition.
- the vital data 2251E of each case included in the data group 225E is, for example, the vital data 36 included in the local learning data 3E, the vital data generated by the generation model 41 in this modification, and the like. May be
- the control unit 21 may acquire the data generated using the learned generation model 41 as vital data 2251E.
- the generation of data by the learned generation model 41 may be executed by each diagnostic device 2E or may be executed by another computer. Accordingly, the control unit 21 may acquire the data group 225E including the data generated by using the learned generation model 41.
- control unit 21 diagnoses the health condition of the target person RE based on the comparison between the data group 225E and the target vital data 223E.
- the control unit 21 diagnoses the health condition of the target person RE by comparing the vital data 2251E forming the data group 225E and the target vital data 223E in the same method as the above embodiment.
- the control unit 21 When the number of vital data 2251E included in the data group 225E is insufficient, the control unit 21 appropriately designates the vital data 2251E as the local learning data 3E, and the generation model 41 for the designated local learning data 3E. May be requested to the model generation device 1. And the control part 21 produces
- the control unit 21 operates as the output unit 218 and outputs information regarding the result of diagnosing the health condition of the subject RE.
- the output destination and the output information may be appropriately determined according to the embodiment, as in the above embodiment.
- the control unit 21 may directly output the result of diagnosing the health condition of the subject RE to the output device 25.
- the control unit 21 may output a message urging a medical examination in the hospital to the output device 25.
- model generation device 1 uses the identification models 40E constructed as described above to execute the processes of steps S201 to S205, as in the above embodiment.
- step S201 the control unit 11 of the model generation device 1 uses the generation model 41 to generate pseudo vital data.
- step S202 the control unit 11 transmits the generated pseudo vital data to each identification model 40E, and causes each identification model 40E to identify the generated pseudo vital data.
- step S203 the control unit 11 receives the result of identification by the identification model 40E for the transmitted pseudo vital data.
- the control unit 11 causes each identification model 40E to perform identification with respect to the pseudo vital data by transmitting the pseudo vital data to each diagnostic device 2E. Then, the control unit 11 acquires the result of identification by each identification model 40E from each diagnostic device 2E.
- step S204 the control unit 11 generates meteorological data such that the identification performance of at least one of the plurality of identification models 40E is degraded by machine learning using the received identification result.
- step S205 the control unit 11 generates, as the learning result data 121, information indicating the structure and the operation parameter of the learned generation model 41 constructed by the machine learning in step S204. Then, the control unit 11 saves the generated learning result data 121 in a predetermined storage area.
- the generation model 41 that can be used for the diagnosis and that can generate various vital data.
- this generation model 41 it is possible to increase the number of pieces of vital data 2251E forming the data group 225E used for diagnosis.
- the accuracy of estimating the health condition of the subject RE in step S303 can be improved.
- the data generated by the generation model 41 can be used as the data forming the data group 225 used for inferring the characteristics appearing in the target data 223 obtained from the sensor S.
- each learning device 2 infers the features appearing in the target data 223 based on the comparison between the data group 225 and the target data 223 in step S302.
- the data generated by the generation model 41 and the method of inference processing do not have to be limited to such an example.
- the data generated by the generative model 41 may be used in machine learning for causing the estimator to acquire the ability to make a predetermined inference.
- each learning device 2 may infer the feature appearing in the target data 223 by using the learned estimator constructed by the machine learning.
- FIG. 31 schematically illustrates an example of the hardware configuration of the learning device 2F according to this modification.
- the learning device 2F according to the present modification uses a point that further executes machine learning for causing the estimator to acquire the ability to perform a predetermined inference and a learned estimator constructed by the machine learning.
- the learning device 2 is configured in the same manner as each learning device 2 according to the above-described embodiment except that the inference is performed.
- the learning device 2F according to the present modified example is similar to each learning device 2 according to the above-described embodiment, the control unit 21, the storage unit 22, the communication interface 23, the input device 24, the output device 25, and the drive 26. , And the external interface 27 are electrically connected to the computer.
- the hardware configuration of the learning device 2F may not be limited to such an example. Regarding the specific hardware configuration of the learning device 2F, it is possible to appropriately omit, replace, and add the constituent elements according to the embodiment.
- the learning device 2F may be a general-purpose server device, a general-purpose PC, or the like, as well as an information processing device designed specifically for the provided service.
- the storage unit 22 of the learning device 2F further includes an inference learning program 85 and inference learning result data 228 in addition to the above embodiment.
- the inference learning program 85 is a program for causing the learning device 2F to execute the later-described information processing (FIG. 32B) regarding the machine learning of the estimator (estimator 45 described later).
- the inference learning program 85 includes a series of instructions for this information processing.
- the inference learning program 85 may be stored in the storage medium 92. Further, the learning device 2F may acquire the inference learning program 85 from the storage medium 92.
- the inference learning result data 228 indicates information about the learned estimator.
- the inference learning result data 228 is obtained as a result of executing the inference learning program 85.
- the inference program 83F corresponds to the inference program 83 according to the above embodiment.
- the inference program 83F includes the same instructions as the inference program 83 according to the above embodiment, except that the learned estimator is used to execute the inference process.
- the learning device 2F collects inference local learning data (inference local learning data 227 described later) used to acquire the ability to infer features by machine learning. At this time, the learning device 2F may acquire the data generated by the learned generation model 41. Similar to the above-described embodiment, the generation of data by the learned generation model 41 may be executed by the learning device 2F or another computer. When the learning device 2F executes the generation of data by the learned generation model 41, the learning device 2F holds the learning result data 121, and thus includes the learned generation model 41. Thereby, the learning device 2F may collect the inference local learning data including the data generated by the learned generation model 41.
- the learning device 2F constructs a learned estimator that has acquired the ability to infer the features appearing in the data by machine learning using the collected inference local learning data.
- the learning device 2F acquires the target data 223.
- the learning device 2F estimates the features appearing in the target data using the learned estimator. Then, the learning device 2F outputs information regarding the result of the feature estimation.
- FIG. 32A schematically illustrates an example of a software configuration related to learning processing of inference of the learning device 2F according to the present modification.
- the control unit 21 of the learning device 2F executes the inference learning program 85 similarly to the learning program 82 and the like. Accordingly, the learning device 2F operates as a computer including the learning data collection unit 291, the learning processing unit 292, and the storage processing unit 293 as software modules. That is, in this modification, each software module of the learning device 2F related to the learning process of inference is realized by the control unit 21 (CPU).
- the software configuration for learning processing of inference does not have to be limited to such an example. Some or all of the above software modules may be implemented by one or more dedicated processors. Further, regarding the software configuration related to the learning process of the inference of the learning device 2F, omission, replacement, and addition of software modules may be appropriately performed depending on the embodiment.
- the learning data collection unit 211 and the learning processing unit 212 are referred to as a “first learning data collection unit” and a “first learning processing unit”, respectively.
- the 292s may be referred to as "second learning data collection unit” and "second learning processing unit", respectively.
- the learning device 2F executes the machine learning of the estimator 45 by including these software modules.
- the estimator 45 is a learning model capable of acquiring a predetermined ability by machine learning, like the identification model 40 and the generation model 41, and its type is not particularly limited, and may depend on the embodiment. It may be appropriately selected.
- the estimator 45 according to the present modification is configured by a neural network having a three-layer structure, like the identification model 40 and the generation model 41.
- the estimator 45 includes an input layer 451, an intermediate (hidden) layer 452, and an output layer 453 in order from the input side.
- the structure of the estimator 45 is not limited to such an example, and may be appropriately determined according to the embodiment.
- the number of intermediate layers included in the estimator 45 is not limited to one, and may be two or more.
- the number of neurons (nodes) included in each layer 451 to 453 of the estimator 45 may be appropriately selected according to the embodiment.
- each neuron is connected to all neurons in the adjacent layer.
- the connection of neurons need not be limited to such an example, and may be set appropriately according to the embodiment.
- the weights of the connections between the neurons included in the layers 451 to 453 and the thresholds of the neurons are examples of the calculation parameters of the estimator 45 used for the calculation processing.
- FIG. 32B is a flowchart showing an example of a processing procedure regarding machine learning of the estimator 45 by the learning device 2F according to the present modification.
- each processing procedure described below is merely an example, and each step may be changed as much as possible.
- steps can be omitted, replaced, and added as appropriate according to the embodiment.
- step S191 the control unit 21 operates as the learning data collection unit 291 and collects the inference local learning data 227 used for the machine learning of the estimator 45.
- the control unit 21 since the estimator 45 is configured by a neural network, the control unit 21 causes the inference local learning data 227 including a plurality of learning data sets 2270 each including a combination of training data 2271 and correct answer data 2272. To collect.
- the training data 2271 (input data) is data that is a target for exhibiting a predetermined ability.
- the training data 2271 is data of the same type as the sensing data obtained by the sensor S, and may be data that constitutes the local learning data 3.
- the correct answer data 2272 (teacher data) is data indicating a result (correct answer) of exerting a predetermined ability on the training data 2271. The label may be used for the correct answer data 2272.
- each learning data set 2270 may not be particularly limited, and may be appropriately selected according to the embodiment.
- the training data 2271 can be acquired by preparing a sensor of the same type as the sensor S and observing under various conditions with the prepared sensor. Then, the correct answer data 2272 showing the characteristics appearing in the training data 2271 is associated with the acquired training data 2271. Thereby, each learning data set 2270 can be generated.
- Each learning data set 2270 may be automatically generated by the operation of a computer or may be manually generated by the operation of an operator. Moreover, the learning data set 2270 may be generated by the learning device 2F or by a computer other than the learning device 2F.
- the control unit 21 automatically or manually executes the above-described series of processes by the operator's operation via the input device 24. Collect the inference local learning data 227 constituted by the set 2270.
- the control unit 21 is composed of a plurality of learning data sets 2270 generated by another computer via, for example, a network, a storage medium 92, or the like. Inference local learning data 227 is collected.
- each learning data set 2270 can be generated by appropriately adding the correct answer data 2272 to each item of data forming the local learning data 3.
- the data generated by the generation model 41 may be used for at least a part of the inference local learning data 227.
- the generation of data by the learned generation model 41 may be executed by each learning device 2 or may be executed by another computer.
- the control unit 21 holds the learning result data 121, thereby including the learned generation model 41.
- the control unit 21 may acquire the learning result data 121 generated by the above-described learning processing via, for example, a network, the storage medium 92, or the like. In this case, the control unit 21 refers to the learning result data 121 and sets the learned generation model 41.
- the control unit 21 also extracts a plurality of noises from a predetermined probability distribution such as Gaussian distribution.
- the control unit 21 inputs the extracted noise to the input layer 411 of the generation model 41, and determines the firing of each neuron included in each of the layers 411 to 413 in order from the input side. Thereby, the control unit 21 acquires the data generated corresponding to the noise from the output layer 413.
- the control unit 21 can acquire the inference local learning data 227 including the data generated by the learned generation model 41. it can.
- the control unit 21 may acquire the data generated using the generation model 41 that has already been trained by another computer via the network, the storage medium 92, or the like.
- control unit 21 performs local learning data 3 configured by the training data 2271 included in the inference local learning data 227 and/or local learning data 3 prepared separately from the inference local learning data 227,
- the model generation device 1 may be requested to build the generation model 41.
- the control unit 21 generates the generated data 55 of the same kind as the sensing data obtained by the sensor S by using the learned generated model 41 constructed by this, and the generated generated data 55 is the training data 2271. You may use as. Correct answer data 2272 may be appropriately added to the generated data 55. Thereby, the control unit 21 may increase the number of learning data sets 2270 included in the inference local learning data 227.
- the number of learning data sets 2270 to be collected may not be particularly limited and may be appropriately selected according to the embodiment.
- the control unit 21 advances the processing to the next step S192.
- step S192 the control unit 21 operates as the learning processing unit 292, and uses the collected inference local learning data 227 to execute the machine learning of the estimator 45.
- the control unit 21 trains the estimator 45 so that the output value corresponding to the correct answer data 2272 is output from the output layer 453. To do.
- the control unit 21 constructs the learned estimator 45 that has acquired the ability to infer the feature appearing in the data obtained by the sensor S.
- the control unit 21 prepares an estimator 45 that is a processing target of machine learning.
- the structure of the estimator 45 to be prepared, the initial value of the connection weight between the neurons, and the initial value of the threshold value of each neuron may be given by a template or may be given by an operator's input. Further, when re-learning is performed, the control unit 21 may prepare the estimator 45 based on the learning result data obtained by performing the past machine learning.
- control unit 21 uses the training data 2271 and the correct answer data 2272 included in each learning data set 2270 acquired in step S191 to execute the learning process of the estimator 45.
- the control unit 21 inputs the training data 2271 into the input layer 451 for each learning data set 2270, and sequentially determines the firing of each neuron included in each layer 451 to 453 from the input side. As a result, the control unit 21 acquires the output value corresponding to the result of inferring the feature appearing in the training data 2271 from the output layer 453.
- the control unit 21 calculates the error between the acquired output value and the value of the correct answer data 2272 corresponding thereto.
- the control unit 21 calculates the weight of the coupling between the neurons and the error of the threshold value of each neuron using the error of the calculated output value by the error back propagation method.
- the control unit 21 updates the weights of the connections between the neurons and the threshold values of the neurons based on the calculated errors.
- the control unit 21 When the training data 2271 is input to each learning data set 2270 by repeating the first to fourth steps, the control unit 21 outputs an output value that matches the corresponding correct answer data 2272 from the output layer 453. Thus, the value of the calculation parameter of the estimator 45 is adjusted. For example, the control unit 21 repeats the first to fourth steps for each learning data set 2270 until the sum of the errors between the output value obtained from the output layer 453 and the value of the correct answer data 2272 becomes equal to or less than the threshold value. ..
- the matching of the value of the correct answer data 2272 and the output value of the output layer 453 may include that an error due to such a threshold value occurs between the value of the correct answer data 2272 and the output value of the output layer 453.
- the threshold value may be appropriately set according to the embodiment.
- the control unit 21 can construct a trained estimator 45 that has been trained to output an output value that matches the correct answer data 2272 corresponding to the input of the training data 2271. That is, the control unit 21 can build the learned estimator 45 that has acquired the ability to infer the features appearing in the data obtained by the sensor S.
- the learned estimator 45 may be referred to as a “classifier” or the like.
- Step S193 the control unit 21 operates as the storage processing unit 293, and stores information about the learned estimator 45 constructed by machine learning in a predetermined storage area.
- the control unit 21 generates, as the inference learning result data 228, information indicating the structure and the calculation parameter of the learned estimator 45 constructed by the machine learning in step S192. Then, the control unit 21 saves the generated learning result data 228 in a predetermined storage area.
- the predetermined storage area may be, for example, a RAM in the control unit 21, a storage unit 22, an external storage device, a storage medium, or a combination thereof.
- FIG. 33 schematically illustrates an example of the software configuration related to the inference processing of the learning device 2F according to this modification. Similar to the above embodiment, the software configuration related to the inference processing of the learning device 2F is realized by the execution of the inference program 83F by the control unit 21. As shown in FIG. 32B, the software configuration related to the inference processing of the learning device 2F is the same as the software configuration related to the inference processing of each learning device 2 except that the inference method is different. As a result, the learning device 2F executes a series of processes related to the inference process, similarly to the learning devices 2 described above.
- control unit 21 of the learning device 2F executes the same as in the above embodiment.
- control unit 21 of the learning device 2F operates as the inference unit 217F and uses the learned estimator 45 to infer the feature appearing in the target data 223.
- the inference unit 217F includes the learned estimator 45 by holding the inference learning result data 228.
- control unit 21 refers to the inference learning result data 228 and sets the learned estimator 45.
- the control unit 21 inputs the acquired target data 223 to the learned estimator 45, and executes the arithmetic processing of the learned estimator 45. That is, the control unit 21 inputs the target data 223 to the input layer 451 of the learned estimator 45, and determines the firing of each neuron included in each layer 451 to 453 in order from the input side. Thereby, the control unit 21 acquires the output value corresponding to the result of inferring the feature included in the target data 223 from the output layer 453 of the learned estimator 45.
- the learning device 2F is configured to infer the features appearing in the target data 223 using the learned estimator 45.
- the number of inference local learning data 227 used for machine learning of the estimator 45 can be increased by the data (generated data 55) generated by the learned generation model 41.
- the generation model 41 it is difficult to collect data by the learning device 2F alone, but it is possible to generate data obtained by the other learning device 2F. Therefore, variations of the training data 2271 included in the inference local learning data 227 can be abundant, and thereby the performance of the learned estimator 45 constructed by machine learning can be improved. That is, in step S302, the features appearing in the target data 223 can be accurately inferred.
- the learning device that is a target for generating the generation model 41 by the model generation device 1 is a learning device that executes inference processing by the same method as the learning device 2 according to the above-described embodiment, and a learning device according to the present modification.
- a learning device that executes inference processing by the same method as 2F may be mixed.
- each inference is executed by the learned estimator as in the modification. It may be configured.
- each learning device 2 is configured by a computer that executes both learning processing and inference processing.
- the configuration of each learning device 2 may not be limited to such an example.
- At least one of the plurality of learning devices 2 may be composed of a plurality of computers.
- the learning device 2 may be configured such that the learning process and the inference process are executed by different computers.
- FIG. 34 schematically illustrates an example of the configuration of the learning device 2G according to this modification.
- the learning device 2G includes a first computer 200 configured to execute the learning process and a second computer 201 configured to execute the inference process.
- the hardware configuration of each of the first computer 200 and the second computer 201 may be the same as the hardware configuration of each learning device 2 according to the above embodiment.
- the first computer 200 operates as a computer including the learning data collection unit 211, the learning processing unit 212, and the storage processing unit 213 as software modules.
- the second computer 201 operates as a computer including the target data acquisition unit 216, the inference unit 217, and the output unit 218 as a software module.
- the first computer 200 may be treated as a “learning device”.
- the learning device 2G may further include a third computer (not shown).
- the third computer may operate as a computer including the learning data collection unit 291, the learning processing unit 292, and the storage processing unit 293 as software modules.
- each learning device 2 uses the operation result of the other learning device 2 in the calculation of Expression 3 and Expression 4 to calculate the operation result. Are integrated, that is, the sum is calculated.
- the model generation device 1 uses the calculation result of each learning device 2 in the calculation of Expression 7, and integrates the calculation result. Since the results of these calculations are related to the local learning data 3, if the results of these calculations are disclosed, it becomes possible to estimate the local learning data 3 held by each learning device 2. Therefore, in order to further enhance the confidentiality of the local learning data 3 held by each learning device 2, the identification result 51 by each identification model 40 may be integrated by a secret calculation.
- the secret calculation method is not particularly limited and may be appropriately selected according to the embodiment. In this modification, a method using either secret sharing or homomorphic encryption may be adopted.
- FIG. 35A schematically illustrates an example of a scene in which an integration process is executed using secret sharing.
- the first server 61 and the second server 62 are installed in the network as reliable third parties.
- Each of the first server 61 and the second server 62 is a computer including a hardware processor and a memory, like the model generation device 1 and the like.
- the control unit 21 of each learning device 2 generates a random number when transmitting its own calculation result to another computer.
- the situation in which the calculation result of itself is transmitted to another computer is the situation in which exp(ly i ) in Expression 3 is transmitted to another learning device 2, and the y i S(ly i ) in Expression 4 is different.
- 2 is transmitted to the learning device 2 of FIG. 1, and V i of Formula 6 is transmitted to the model generation device 1 for calculation of Formula 7.
- the other computer is the other learning device 2.
- the other computer is the model generation device 1.
- the method of generating the random number may be appropriately selected according to the embodiment.
- the control unit 21 calculates the difference between the value of the calculation result and the generated random number. Then, the control unit 21 transmits the calculated difference to the first server 61, while transmitting the generated random number to the second server 62.
- the first server 61 calculates the total sum of the differences received from each learning device 2 according to the following formula 8.
- the second server 62 calculates the sum of the random numbers received from each learning device 2 according to the following Expression 9.
- Y i indicates the value of the calculation result by the i-th learning device 2. That is, in the scene of Expression 3, Y i is exp(ly i ), in the scene of Expression 4, Y i is y i S(ly i ), and in the scene of Expression 7, Y i is V i . r i represents a random number generated by the i-th learning device 2.
- Each of the first server 61 and the second server 62 transmits the sum total calculation result to another computer.
- the other computers add the sums received from the first server 61 and the second server 62, respectively.
- the other computer integrates the calculation results of the learning devices 2 regarding the identification result 51 while preventing the calculation results held by the learning devices 2 from being specified by the other computers (that is, the sum total). Can be calculated).
- the secret sharing method is not particularly limited, and may be appropriately selected according to the embodiment.
- As the secret sharing method for example, an international standard (ISO/IEC 19592-2:2017) method or the like may be used. If the model generation device 1 is a reliable server, the model generation device 1 may operate as either the first server 61 or the second server 62.
- FIG. 35B schematically illustrates an example of a scene in which the integration process is executed using the homomorphic encryption.
- the server 65 is installed in the network as a reliable third party.
- the server 65 is a computer including a hardware processor and a memory, like the model generation device 1 and the like.
- the server 65 issues a public key and a private key.
- the public key is generated so as to have homomorphism. That is, when two ciphertexts encrypted by the public key are given, the public key is generated so that the two ciphertexts can be added in the encrypted state.
- the server 65 delivers the public key of the issued public key and secret key to each learning device 2.
- the control unit 21 of each learning device 2 encrypts its own calculation result with the received public key. Then, the control unit 21 transmits the encrypted calculation result to another computer. The other computer calculates the total sum of the values of the calculation results received from each learning device 2 in the encrypted state as in the following Expression 10.
- Another computer sends the encrypted sum total to the server 65.
- the server 65 decrypts the encrypted sum received from another computer with the private key. Then, the server 65 returns the total sum of the decrypted calculation results to another computer. Thereby, while preventing the calculation result held by each learning device 2 from being specified by another computer, the other computer can integrate the calculation result of each learning device 2 regarding the identification result 51.
- the homomorphic encryption method is not particularly limited and may be appropriately selected according to the embodiment.
- the homomorphic encryption method for example, modified-ElGamal encryption, Paillier encryption, etc. may be used. If the model generation device 1 is a reliable server, the model generation device 1 may operate as the server 65.
- the result 51 of the identification by each identification model 40 can be integrated by the secret calculation by either of the above two methods.
- the confidentiality of the local learning data 3 held by each learning device 2 can be further enhanced.
- the identification model 40, the generation model 41, and the estimator 45 are configured by a fully-connected neural network having a three-layer structure.
- the structures and types of the neural networks forming the identification model 40, the generation model 41, and the estimator 45 are not limited to such examples, and may be appropriately selected according to the embodiment.
- each of the identification model 40, the generation model 41, and the estimator 45 may be configured by a convolutional neural network including a convolutional layer, a pooling layer, and a fully connected layer.
- each of the identification model 40, the generation model 41, and the estimator 45 may be configured by a recursive neural network.
- the types of the identification model 40, the generation model 41, and the estimator 45 may be appropriately selected according to the embodiment.
- the generative model 41 may be such a conditional generative model. In this case, by giving information indicating each group as additional information, the generation model 41 and the data corresponding to each of the plurality of groups may be generated.
- the additional condition may be related to the type of data generated by the generation model 41, and may be given by, for example, the attribute of the generated data, the attribute of the feature appearing in the generated data, or the like.
- the attributes of the generated data may be, for example, the resolution of the image data, the number of pixels, the presence/absence of a defect, and the like. Further, the attribute of the feature that appears in the generated data may be, for example, the attribute of the target object to be inferred, the type of the target object, or the like.
- each learning device 2 may collect the local learning data 3 individually for each identification model 40, or at least partially in common with at least some of the identification models 40. The learning data 3 may be collected.
- each identification model 40 is held in each learning device 2.
- the arrangement of each identification model 40 may not be limited to such an example.
- at least a part of the plurality of identification models 40 may be held in the model generation device 1.
- the grouping process may be omitted.
- the group list 123 may be omitted. If the grouping process is omitted, the allocation information 124 may be omitted. Further, the grouping unit 116 may be omitted from the software configuration of the model generation device 1.
- the data may be replaced with individual types of data such as image data, sound data, numerical data, text data, and other measurement data obtained by a sensor.
- the image generating system can be configured by the model generating device 1 and the plurality of learning devices 2.
- the sensing data generation system can be configured by the model generation device 1 and the plurality of learning devices 2.
- Output unit 221... Learning result data, 223... Target data, 225... Data group, 82... learning program, 83... inference program, 92... storage medium, S... sensor, 3... Local learning data, 40...identification model, 401... Input layer, 402... Intermediate (hidden) layer, 403... Output layer, 41... Generation model, 411... Input layer, 412... Intermediate (hidden) layer, 413... Output layer, 50... data, 51... (identification) result
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Probability & Statistics with Applications (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
多様なデータを生成可能な生成モデルを構築するための技術を提供する。本発明の一側面に係るモデル生成装置は、生成モデルを用いて、データを生成する生成部と、ローカル学習データを使用した機械学習により、与えられたデータがローカル学習データか否かを識別する能力をそれぞれ獲得した複数の学習済みの識別モデルそれぞれに生成されたデータを送信し、各識別モデルにデータに対する識別を実行させる送信部と、送信されたデータに対する各識別モデルによる識別の結果を受信する受信部と、受信された識別の結果を使用した機械学習により、複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように生成モデルを訓練する学習処理部と、を備える。
Description
本発明は、モデル生成装置、モデル生成方法、モデル生成プログラム、モデル生成システム、検査システム、及び監視システムに関する。
従来、製造ライン等の製品を製造する場面では、製造される製品を撮影装置により撮影し、得られた画像データに基づいて製品の良否を検査する技術が利用されている。例えば、特許文献1では、学習済みの第1のニューラルネットワークに基づいて画像に写る検査対象物が正常であるか異常であるかを判定し、検査対象物が異常であると判定した場合に、学習済みの第2のニューラルネットワークに基づいて当該異常の種類を分類する検査装置が提案されている。
Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio, "Generative Adversarial Networks", Advances in neural information processing systems, 2672-2680, 2014
上記のように、製品の写る画像データを含む学習データを使用した機械学習により、画像データに写る製品の状態を推定する能力を学習モデルに獲得させることができる。そのため、学習済みの学習モデルを推定器(識別器)として利用することで、対象画像データに写る検査対象の製品の良否を判定することができる。
また、このような学習モデルを利用しなくても、学習データとして収集された正常又は異常な製品の写る画像データ群と対象画像データとの比較に基づいて、対象画像データに写る検査対象の製品の良否を判定することができる。例えば、正常な製品の写る画像データ群と対象画像データとを比較した結果、対象画像データが画像データ群の分布に沿っている(すなわち、対象画像データが画像データ群に類似している)場合には、対象画像データに写る製品は正常であると判定することができる。一方で、対象画像データが画像データ群の分布から離れている場合には、対象画像データに写る製品は異常であると判定することができる。なお、以下では、このような良否の判定等の推論の学習のために収集された学習データを「推論用学習データ」とも称する。推定器の機械学習に使用する場合には、特に、推論の学習のために収集された学習データを「推定器用学習データ」と称してもよい。
本件発明者は、画像データを利用するこれら従来の検査方法には次のような問題点があることを見出した。すなわち、画像データを利用して製品の外観検査を高精度に実施するためには、外観検査の学習に利用する推論用学習データとして十分な量でかつ多様な画像データを収集するのが望まれる。例えば、上記の機械学習に使用する推論用学習データの量が少ない場合には、学習済みの推定器による外観検査の精度は不十分になってしまう。そのため、推定器の外観検査の能力を高めるためには、十分な量の推論用学習データを収集するのが望まれる。しかしながら、十分な量の推論用学習データを収集するのにはコストがかかってしまう。
そこで、本件発明者は、生成モデルを利用して、用意した画像から複数の異なる画像を量産することで、推論用学習データの量を増やすことを検討した。例えば、非特許文献1には、機械学習により、学習データとして用意した画像データから生成モデルを構築する方法が提案されている。この生成モデルは、機械学習により、学習データの分布に沿う画像データを生成するように訓練される。つまり、製品の写る画像データを学習データとして利用すれば、生成モデルは、製品の写り得る画像データを生成するように訓練される。そのため、この生成モデルを利用すれば、製品の写る画像データを生成することができる。したがって、外観検査の学習に利用可能な推論用学習データの量を適切に増やすことができ、これによって、外観検査の精度を高めるために十分な量の推論用学習データを収集するのにかかるコストを低減することができる。
しかしながら、本件発明者は、このような生成モデルを利用しても、次のような問題があることを見出した。すなわち、個々の現場では、学習データを収集するのには限界があるため、検査能力の向上に価値ある学習データ(例えば、製品に異常が発生した時の画像データ)を短期間で数多く収集するのは困難である。加えて、場所、環境、条件等に起因して、学習データとして得られる画像データには偏りが生じ得る。そのため、個々の現場では、多様な画像データを収集するのは困難である。よって、個々の現場で生成モデルを構築しても、得られた生成モデルでは、多様な画像データを生成することは困難である。
そこで、本件発明者は、この問題を解決するために、多数の現場で得られた画像データを集結し、集結した画像データを使用した機械学習を実施することで、多様な画像データを生成可能な生成モデルを構築することを検討した。例えば、同じ製品の外観検査を実施している異なる工場が存在し、各工場では、カメラの配置、照明等の撮影条件が異なっているとする。この場合、各工場で得られた画像データを集結することで、撮影条件の異なる多様な画像データを学習データとして得ることができる。また、各工場で発生した価値ある事象の表れた学習データ(例えば、製品に異常が発生した時の画像データ)を得ることができる。
しかしながら、各現場は、個々の事情に基づいて、独自に運営される。各現場は、基本的には他の現場とは無関係に学習データを収集する。そのため、各現場で得られる学習データは、例えば、撮影条件等の点で不均一である。また、そもそも各現場で同じ目的の検査が実施されているとは限らない。よって、各現場で得られた画像データそのままでは共通の機械学習に使用できない可能性がある。加えて、各現場で得られた大量の学習データをサーバに集結すると、サーバにかかる通信コストが膨大になってしまう。また、集結された不均一かつ大量の学習データを使用した機械学習により生成モデルを構築するのにかかる計算コストが大きくなってしまう。そのため、計算処理に利用するメモリの不足が生じてしまう、計算処理の時間が長くなってしまう、計算処理が所定時間内に完了しない等の不具合が生じてしまう可能性がある。更に、各現場で得られた学習データには秘匿性の高い学習データが含まれている場合がある。この場合に、各現場で得られた学習データを共通のネットワーク上のサーバに集結すると、その学習データの秘匿性が損なわれてしまう。
このように、生成モデルの機械学習を実施するために各現場で得られた学習データを集結するのには様々な技術的な障害が存在する。そのため、この学習データを集結する方法で、生成モデルにより生成される画像データの多様性を高めるのは現実的ではない。したがって、従来の方法では、多様な画像データを生成可能な生成モデルを構築することは困難であるという問題点があることを本件発明者は見出した。これに起因して、従来の方法では、画像データを利用した高精度な製品の外観検査を実現するのは困難である。
なお、この問題点は、製品の状態(良否)を推定する学習に利用可能な画像データを生成するように訓練された生成モデルを構築する場面に特有のものではない。所定のデータ、特に、所定の推論の学習に利用可能なデータを生成するように訓練された生成モデルを構築するあらゆる場面で同様の問題点が生じる。所定の推論の学習に利用可能なデータを生成モデルにより生成する場面とは、例えば、植物の栽培状況に関するデータから当該植物の状態を推定する場面、運転者を観察することで得られたデータから当該運転者の状態を推定する場面、気象に関するデータから発電装置の発電量を予測する場面、対象者のバイタルデータから当該対象者の健康状態を推定する場面等、である。これらの場面における所定の学習データは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等である。これらの場面でも、個々の現場では、生成モデルを訓練するための多様な学習データを収集するのは困難である。また、生成モデルの機械学習を実施するために各現場で得られた学習データを集結するのには様々な技術的な障害が存在する。そのため、従来の方法では、多様なデータを生成可能な生成モデルを構築することは困難であるという問題点がある。これに起因して、従来の方法では、所定のデータを利用した高精度な推論を実現するのは困難である。
本発明は、一側面では、このような実情を鑑みてなされたものであり、その目的は、多様なデータを生成可能な生成モデルを構築するための技術を提供することである。
本発明は、上述した課題を解決するために、以下の構成を採用する。
すなわち、本発明の一側面に係るモデル生成装置は、生成モデルを用いて、データを生成する生成部と、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力をそれぞれ獲得した複数の学習済みの識別モデルそれぞれに生成された前記データを送信し、前記各識別モデルに前記データに対する識別を実行させる送信部と、送信された前記データに対する前記各識別モデルによる識別の結果を受信する受信部と、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練する学習処理部と、を備える。
当該構成に係るモデル生成装置は、生成モデルにより生成されたデータ(以下、「生成データ」とも記載する)を各識別モデルに送信し、当該データに対する識別を各識別モデルに実行させる。各識別モデルは、機械学習によって、与えられたデータがローカル学習データに含まれるデータか否かを識別するように構築されている。そして、当該構成に係るモデル生成装置は、送信された生成データに対する各識別モデルによる識別の結果を収集し、収集された識別の結果を使用して、生成モデルの機械学習を実行する。
よって、当該構成では、生成モデルの機械学習を実施するために、ローカル学習データそのものを収集するのではなく、各識別モデルの識別結果を収集する。これにより、ローカル学習データ及び各識別モデルが異なる装置に配置されたケースでは、モデル生成装置にかかる通信コストを抑えることができる。また、ローカル学習データそのものを生成モデルの機械学習に使用しなくてもよいため、モデル生成装置にかかる計算コストを抑えることができる。更に、ローカル学習データそのものをモデル生成装置に集結せずに済むため、ローカル学習データの内容が直接的に明らかになるのを防ぐことができる。つまり、ローカル学習データの秘匿性をある程度は担保することができる。したがって、当該構成によれば、学習データを集結する上記の方法に生じ得る種々の問題を解決することができる。
加えて、当該構成に係るモデル生成装置は、収集された識別の結果を使用した機械学習により、複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように生成モデルを訓練する。つまり、当該機械学習により、生成モデルは、少なくともいずれか一つの識別モデルの識別を誤らせる(つまり、だます)ようなデータを生成するように訓練される。これにより、各識別モデルの機械学習に使用された不均一なローカル学習データのいずれかの分布に従ったデータを生成可能な生成モデルを構築することができる。そのため、当該機械学習による訓練の結果、生成モデルは、各識別モデルの機械学習に使用されたローカル学習データの論理和の分布に含まれるようなデータを生成する能力を習得することができる。したがって、当該構成によれば、多様なデータを生成可能な生成モデルを構築する環境を実現することができる。構築された生成モデルにより生成されたデータは、所定の推論の学習に利用されてよい。
なお、生成モデル及び複数の識別モデルはそれぞれ、機械学習により各能力を獲得可能な学習モデルであり、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。生成モデル及び複数の識別モデルにはそれぞれ、例えば、ニューラルネットワーク等が用いられてよい。生成モデルは生成器と称されてよく、識別モデルは識別器と称されてもよい。なお、上記機械学習において、追加条件(例えば、ラベル)が与えられたデータをローカル学習データとして利用することで、追加条件に応じたデータを生成可能な条件付き生成モデルを構築することができる。生成モデルは、このような条件付き生成モデルであってもよい。追加条件は、生成モデルにより生成するデータの種別に関するものであればよく、例えば、生成するデータの属性、生成するデータに表れる特徴の属性等により与えられてもよい。生成するデータが画像データである場合、生成するデータの属性は、例えば、画像データの解像度、ピクセル数、欠損の有無等であってよい。また、生成するデータに表れる特徴の属性は、例えば、推論の対象となる対象物の属性、対象物の種別等であってよい。
ローカル学習データは、識別モデルの機械学習に使用される学習データであるが、ローカル学習データの利用は、識別モデルの機械学習に限られる訳ではない。ローカル学習データは、種々の利用目的で収集されてよい。例えば、外観検査の学習に利用する(つまり、推論用学習データとして利用する)ため、製品の写る画像データがローカル学習データとして収集されてよい。ローカル学習データに含まれるデータの種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。ローカル学習データは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等により構成されてよい。全てのローカル学習データは、最終的には生成モデルにより生成させるデータの分布を定める。生成モデルは、ローカル学習データと同種のデータを生成するように構成される。学習済みの生成モデルは、ローカル学習データと同種のデータを量産するために利用されてよい。
上記一側面に係るモデル生成装置において、前記各識別モデルは、各学習装置に保持されてよく、前記送信部は、生成された前記データを前記各学習装置に送信することで、前記データに対する識別を前記各識別モデルに実行させてよく、前記受信部は、前記各識別モデルによる識別の結果を前記各学習装置から受信してもよい。当該構成によれば、各学習装置の各識別モデルの機械学習に使用されたローカル学習データを集結せずに、多様なデータを生成可能な生成モデルを構築することができる。
上記一側面に係るモデル生成装置において、前記各識別モデルによる識別の結果は秘密計算により統合されてよく、前記学習処理部は、統合された前記識別の結果を使用した機械学習により、前記生成モデルを訓練してもよい。当該構成によれば、各学習装置に保持された各識別モデルの機械学習に使用されたローカル学習データの秘匿性を更に高めることができる。
上記一側面に係るモデル生成装置は、前記各学習装置を複数のグループのうちの少なくともいずれかに割り当てるグルーピング部を更に備え、前記グループ毎に生成モデルを保持してもよい。そして、前記受信部は、前記グループ毎に、前記各識別モデルによる識別の結果を前記各学習装置から受信してもよく、前記学習処理部は、前記グループ毎に、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルによる識別を誤らせるデータを生成するように前記生成モデルを訓練してもよい。当該構成によれば、各学習装置をグループ分けし、多様なデータを生成可能な生成モデルをグループ毎に構築することができる。
上記一側面に係るモデル生成装置において、前記グルーピング部は、前記複数のグループを示すリストを前記各学習装置に配信して、前記各学習装置に対して、前記リストに示される前記複数のグループのうちから1つ以上のグループを選択させ、選択された前記1つ以上のグループに前記各学習装置を割り当ててもよい。当該構成によれば、簡易な方法により各学習装置をグループ分けすることができる。
上記一側面に係るモデル生成装置において、前記グルーピング部は、前記ローカル学習データに関する属性データを前記各学習装置から取得し、前記各学習装置から取得した前記属性データをクラスタリングし、前記クラスタリングの結果に基づいて、前記複数の学習装置それぞれを前記複数のグループのうちの少なくともいずれかに割り当ててもよい。当該構成によれば、ローカル学習データの属性に応じて、各学習装置をグループ分けすることができる。
なお、属性データは、ローカル学習データに関するあらゆる情報を含んでもよく、例えば、ローカル学習データに含まれるデータの種別を示す情報、データに表れる特徴を示す情報、データの利用目的を示す情報等を含んでもよい。データに表れる特徴は、当該データから推論可能なあらゆる要素を含んでよい。ローカル学習データが製品の写る画像データを含む場合、データに表れる特徴は、例えば、製品に含まれる欠陥の有無、製品に含まれる欠陥の種別等であってよい。データの利用目的は、実施の形態に応じて適宜決定されてよい。ローカル学習データに含まれるデータは、例えば、外観検査、栽培状況の監視等の所定の推論の学習に利用されてよい。
上記各形態に係るモデル生成装置の別の態様として、本発明の一側面は、以上の各構成を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記憶した、コンピュータ等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。また、本発明の一側面に係るモデル生成システムは、上記いずれかの形態に係るモデル生成装置及び複数の学習装置により構成されてよい。
例えば、本発明の一側面に係るモデル生成システムは、複数の学習装置と、モデル生成装置と、を備える。前記各学習装置は、ローカル学習データを収集するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、を実行するように構成される。前記モデル生成装置は、生成モデルを用いて、データを生成するステップと、生成された前記データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記データに対する識別を実行させるステップと、前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、を実行するように構成される。
また、例えば、本発明の一側面に係るモデル生成システムは、複数の学習装置と、モデル生成装置と、を備える。前記各学習装置は、ローカル学習データを収集するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、を実行するように構成される。前記モデル生成装置は、生成モデルを用いて、データを生成するステップと、生成された前記データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記データに対する識別を実行させるステップと、前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、を実行するように構成される。更に、各学習装置は、対象データを取得するステップと、特徴を推論するための推論用学習データとして収集されたデータ群であって、学習済みの生成モデルにより生成されたデータを含むデータ群を取得するステップと、データ群と対象データとの比較に基づいて、対象データに表れる特徴を推論するステップと、特徴を推論した結果に関する情報を出力するステップと、を実行するように構成される。
また、例えば、本発明の一側面に係るモデル生成システムは、複数の学習装置と、モデル生成装置と、を備える。前記各学習装置は、ローカル学習データを収集するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、を実行するように構成される。前記モデル生成装置は、生成モデルを用いて、データを生成するステップと、生成された前記データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記データに対する識別を実行させるステップと、前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、を実行するように構成される。更に、各学習装置は、機械学習により特徴を推論する能力を獲得するのに使用する推論用ローカル学習データであって、学習済みの生成モデルにより生成されたデータを含む推論用ローカル学習データを収集するステップと、収集された推論用ローカル学習データを使用した機械学習により、データに表れる特徴を推論する能力を獲得した学習済みの推定器を構築するステップと、対象データを取得するステップと、学習済みの推定器を利用して、対象データに表れる特徴を推定するステップと、特徴を推定した結果に関する情報を出力するステップと、を実行するように構成される。
また、例えば、本発明の一側面に係るモデル生成方法は、コンピュータが、生成モデルを用いて、データを生成するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力をそれぞれ獲得した複数の学習済みの識別モデルそれぞれに生成された前記データを送信し、前記各識別モデルに前記データに対する識別を実行させるステップと、送信された前記データに対する前記各識別モデルによる識別の結果を受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、を実行する、情報処理方法である。
また、例えば、本発明の一側面に係るモデル生成プログラムは、コンピュータに、生成モデルを用いて、データを生成するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力をそれぞれ獲得した複数の学習済みの識別モデルそれぞれに生成された前記データを送信し、前記各識別モデルに前記データに対する識別を実行させるステップと、送信された前記データに対する前記各識別モデルによる識別の結果を受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、を実行させるための、プログラムである。
上記各形態は、所定のデータ、特に、所定の推論の学習に利用可能なデータを生成するように訓練された生成モデルを構築するあらゆる場面に適用可能である。上記各形態は、例えば、植物の栽培状況に関するデータから当該植物の状態を推定する場面、運転者を観察することで得られたデータから当該運転者の状態を推定する場面、気象に関するデータから発電装置の発電量を予測する場面、対象者のバイタルデータから当該対象者の健康状態を推定する場面等、に適用されてよい。所定のデータは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等であってよい。
例えば、本発明の一側面に係る画像生成システムは、複数の学習装置と、モデル生成装置と、を備える。前記各学習装置は、画像データを含むローカル学習データを収集するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データに含まれる前記画像データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、を実行するように構成される。前記モデル生成装置は、生成モデルを用いて、画像データを生成するステップと、生成された前記画像データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記画像データに対する識別を実行させるステップと、前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるような画像データを生成するように前記生成モデルを訓練するステップと、を実行するように構成される。
例えば、本発明の一側面に係るセンシングデータの生成システムは、複数の学習装置と、モデル生成装置と、を備える。前記各学習装置は、センサにより得られるセンシングデータを含むローカル学習データを収集するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データに含まれる前記センシングデータか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、を実行するように構成される。前記モデル生成装置は、生成モデルを用いて、センシングデータを生成するステップと、生成された前記センシングデータを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記センシングデータに対する識別を実行させるステップと、前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなセンシングデータを生成するように前記生成モデルを訓練するステップと、を実行するように構成される。
例えば、本発明の一側面に係る検査システムは、複数の検査装置と、モデル生成装置と、を備える。前記各検査装置は、製品の写る製品画像データを含むローカル学習データを収集するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データに含まれる前記製品画像データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、を実行するように構成される。前記モデル生成装置は、生成モデルを用いて、画像データを生成するステップと、生成された前記画像データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記画像データに対する識別を実行させるステップと、前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるような画像データを生成するように前記生成モデルを訓練するステップと、を実行するように構成される。
また、例えば、本発明の一側面に係る監視システムは、植物の栽培状況をそれぞれ監視する複数の監視装置と、モデル生成装置と、を備える。前記各監視装置は、前記植物の栽培状況に関する状況データを含むローカル学習データを収集するステップと、ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データに含まれる前記状況データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、を実行するように構成される。前記モデル生成装置は、生成モデルを用いて、疑似状況データを生成するステップと、生成された前記疑似状況データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記疑似状況データに対する識別を実行させるステップと、前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるような疑似状況データを生成するように前記生成モデルを訓練するステップと、を実行するように構成される。
本発明によれば、多様なデータを生成可能な生成モデルを構築することができる。
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
§1 適用例
まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本発明を適用した場面の一例を模式的に例示する。図1に示されるとおり、本実施形態に係るモデル生成システム100は、モデル生成装置1及び複数の学習装置2を備えている。モデル生成装置1及び各学習装置2は、ネットワークを介して互いに接続されてよい。ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。
まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本発明を適用した場面の一例を模式的に例示する。図1に示されるとおり、本実施形態に係るモデル生成システム100は、モデル生成装置1及び複数の学習装置2を備えている。モデル生成装置1及び各学習装置2は、ネットワークを介して互いに接続されてよい。ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。
本実施形態に係る各学習装置2は、ローカル学習データ3を使用して、識別モデル40の機械学習を実行するように構成されたコンピュータである。具体的には、本実施形態に係る各学習装置2は、ローカル学習データ3を収集する。そして、各学習装置2は、ローカル学習データ3を使用した機械学習により、与えられたデータが当該ローカル学習データ3に含まれるか否かを識別する能力を獲得した学習済みの識別モデル40を構築する。
このように、ローカル学習データ3は、識別モデル40の機械学習に使用される学習データであるが、ローカル学習データ3の利用は、識別モデル40の機械学習に限られる訳ではない。ローカル学習データ3は、種々の利用目的で収集されてよい。例えば、外観検査の学習に利用するため、製品の写る画像データがローカル学習データ3として収集されてよい。各学習装置2は、別の利用目的で収集したデータをローカル学習データ3として取り扱ってもよい。
本実施形態では、各学習装置2には、センサSが接続されている。これにより、各学習装置2は、センサSにより得られたセンシングデータに表れる特徴を推論する処理を実行可能に構成される。そのため、ローカル学習データ3は、センサSにより得られたセンシングデータに含まれる何らかの特徴を推論するのに利用する目的で収集されてよい。つまり、ローカル学習データ3は、センサS又はこれと同種のセンサにより得られるデータの群により構成されてよい。
なお、センサSは、何らかのデータを取得可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。センサSは、例えば、カメラ、マイクロフォン、光度計、温度計、湿度計、バイタルセンサ等であってよい。カメラは、例えば、RGB画像を取得するよう構成された一般的なデジタルカメラ、深度画像を取得するように構成された深度カメラ、赤外線量を画像化するように構成された赤外線カメラ等であってよい。一例として、製品の外観を撮影するカメラがセンサSとして採用されてよい。この場合、センシングデータは製品の写る画像データであってよく、何らかの特徴を推論することは、画像データに写る製品の状態を推定することであってよい。
各学習装置2は、例えば、個別の現場に配置され、異なる利用者により利用されてよい。各学習装置2は、個々の事情に応じた推論の目的で、推論用学習データを収集してもよい。この場合、各学習装置2は、収集された推論用学習データをローカル学習データ3として利用してもよい。ただし、各学習装置2の配置及び利用者は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、少なくとも一部の学習装置2が、同じ現場に配置され、同じ利用者に利用されてもよい。
一方、本実施形態に係るモデル生成装置1は、ローカル学習データ3と同種のデータを生成可能な生成モデル41を構築するように構成されたコンピュータである。具体的に、本実施形態に係るモデル生成装置1は、生成モデル41を用いて、データ50を生成する。次に、モデル生成装置1は、生成されたデータ50を各学習装置2に送信することで、各学習装置2の識別モデル40にデータ50に対する識別を実行させる。各学習装置2は、識別モデル40により、データ50がローカル学習データ3に含まれるか否かを識別する。
本実施形態に係るモデル生成装置1は、各学習装置2の識別モデル40による識別の結果51を各学習装置2から受信する。そして、モデル生成装置1は、受信された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように生成モデル41を訓練する。
なお、ローカル学習データ3に含まれるデータの種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。ローカル学習データ3は、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等により構成されてよい。全てのローカル学習データ3は、最終的には生成モデル41により生成させるデータの分布を定める。生成モデル41は、ローカル学習データ3と同種のデータを生成するように構成される。学習済みの生成モデル41は、ローカル学習データ3と同種のデータを量産するために利用されてよい。同種のデータの量産は、例えば、所定の推論を行う能力を推定器に習得させるのに利用する推論用学習データの件数を増やすため、所定の推論を行う対象となる対象データと比較するデータの件数を増やすために行われてよい。
図1の例では、3つの学習装置2a~2cが存在している。以下、説明の便宜の上、各学習装置を区別する場合に、a、b、c等の更なる符号を付し、そうではない場合には、「学習装置2」等のようにそれらの符号を省略する。各学習装置2a~2cは、ローカル学習データ3a~3cを収集し、得られた各自のローカル学習データ3a~3cを使用して、各識別モデル40a~40cの機械学習を実行する。これにより、各学習装置2a~2cは、与えられたデータが自身のローカル学習データ3a~3cに含まれるか否かを識別する能力を獲得した学習済みの識別モデル40a~40cを構築する。
より詳細には、本実施形態では、各学習装置2a~2cは、更に、生成モデル41により生成されたデータ(後述するデータ53)をモデル生成装置1から取得する。そして、各学習装置2a~2cは、各自のローカル学習データ3a~3c及び生成モデル41により生成されたデータを使用して、各識別モデル40a~40cの機械学習を実行する。これにより、各学習装置2a~2cは、与えられたデータが自身のローカル学習データ3a~3c由来であるか生成モデル41由来であるかを識別する能力を各識別モデル40a~40cに習得させる。
これに対して、モデル生成装置1は、生成モデル41によりデータ50を生成し、生成されたデータ50を各学習装置2a~2cに送信する。各学習装置2a~2cは、自身の識別モデル40a~40cにより、データ50が自身のローカル学習データ3a~3cに含まれるか否かを識別する。そして、各学習装置2a~2cは、自身の識別モデル40a~40cによる識別の結果51a~51cをモデル生成装置1に返信する。
モデル生成装置1は、各学習装置2a~2cの識別モデル40a~40cによる識別の結果51a~51cを受信する。そして、モデル生成装置1は、受信された識別の結果51a~51cを使用した機械学習により、複数の識別モデル40a~40cのうちの少なくともいずれか一つの識別性能を低下させるようなデータを生成するように生成モデル41を訓練する。換言すると、モデル生成装置1は、複数の識別モデル40a~40cのうちの少なくともいずれか一つが自身のローカル学習データ3a~3cに含まれていると識別するようなデータを生成するように生成モデル41を訓練する。なお、学習装置2の数は、図1の例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。学習装置2の数は、2つであってもよいし、4つ以上であってもよい。
以上のとおり、本実施形態では、生成モデル41の機械学習を実施するために、ローカル学習データ3そのものを収集するのではなく、各識別モデル40の識別の結果51を収集する。これにより、モデル生成装置1にかかる通信コストを抑えることができる。また、ローカル学習データ3そのものを生成モデル41の機械学習に使用しなくてもよいため、モデル生成装置1にかかる計算コストを抑えることができる。更に、ローカル学習データ3そのものをモデル生成装置1に集結せずに済むため、ローカル学習データ3の内容が直接的に明らかになるのを防ぐことができる。よって、ローカル学習データ3の秘匿性をある程度は担保することができる。
加えて、本実施形態では、生成モデル41は、収集された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させるようなデータを生成するように訓練される。つまり、当該機械学習により、生成モデル41は、少なくともいずれか一つの識別モデル40の識別を誤らせるようなデータを生成するように訓練される。これにより、各識別モデル40の機械学習に使用されたローカル学習データ3のいずれかの分布に従ったデータを生成可能な生成モデル41を構築することができる。
図2A及び図2Bを更に用いて、この効果について詳細に説明する。本実施形態と対極の学習方法として、全ての識別モデル40の識別性能を低下させるようなデータを生成するように生成モデルを訓練する方法が想定される。図2Aは、この対極の方法により構築される学習済みの生成モデルにより生成可能なデータの分布を模式的に示す。一方、図2Bは、本実施形態により構築される学習済みの生成モデル41により生成可能なデータの分布を模式的に示す。
全ての識別モデル40の識別性能を低下させるためには、全てのローカル学習データ3に共通のデータを生成することになる。つまり、全ての識別モデル40の識別性能を低下させるようなデータを生成するように生成モデルを訓練した場合には、構築された学習済みの生成モデルにより生成可能なデータは、各学習装置2のローカル学習データ3の論理積に含まれるようなデータとなる。各学習装置2により収集されるローカル学習データ3の分布が同じであれば、この方法により構築された学習済みの生成モデルは、各学習装置2のローカル学習データ3の分布に従ったデータを生成可能である。
しかしながら、各学習装置2により収集されるローカル学習データ3の分布が同じであるとは限らない。特に、各学習装置2が個々の事情に基づいて独自に運営される場合には、基本的には、ローカル学習データ3は、他の学習装置2のローカル学習データ3とは無関係に収集される。そのため、各学習装置2により収集されるローカル学習データ3は不均一であり、その分布は大きく相違し得る。例えば、図2Aに示されるように、各学習装置2a~2cにより収集されるローカル学習データ3a~3cの分布は異なり得る。
各学習装置2により収集されるローカル学習データ3の分布が大きく相違すると、その共通の部分(すなわち、論理積)は、図2Aのハッチングで示されるとおり、極めて狭い範囲となってしまう。各学習装置2により収集されるローカル学習データ3の分布に共通の部分が存在しない場合には、生成モデルは、どの分布にも含まれないようなデータを生成するように構築されてしまう。したがって、全ての識別モデル40の識別性能を低下させるようなデータを生成するように生成モデルを訓練した場合、構築される学習済みの生成モデルにより生成可能なデータは非常に限られたものになってしまう。
これに対して、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させる場合には、各識別モデル40の機械学習に使用されたローカル学習データ3の少なくともいずれかの分布に従うデータを生成すればよい。よって、本実施形態のとおり、複数の識別モデル40のうちの少なくともいずれか一つの識別性能を低下させるようなデータを生成するように生成モデル41を訓練した場合には、生成モデル41は、各識別モデル40の機械学習に使用されたローカル学習データ3の論理和の分布に従ったデータを生成する能力を習得することができる。
そのため、各学習装置2により収集されるローカル学習データ3の分布が異なっていても、学習済みの生成モデル41は、各分布に含まれ得るデータを生成することができる。例えば、図2Bのハッチングで示されるように、ローカル学習データ3a~3cの分布が異なっていても、当該機械学習の結果、生成モデル41は、ローカル学習データ3a~3cの論理和の分布に含まれるようなデータを生成する能力を習得することができる。したがって、本実施形態によれば、多様なデータを生成可能な生成モデル41を構築することができる。
複数の識別モデル40及び生成モデル41はそれぞれ、機械学習により各能力を獲得可能な学習モデルであり、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。本実施形態では、後述するとおり、複数の識別モデル40及び生成モデル41はそれぞれ、ニューラルネットワークにより構成される。各識別モデル40は識別器と称されてよく、生成モデル41は生成器と称されてよい。
なお、本実施形態に係る各学習装置2は、センサSにより得られたデータ(後述する対象データ223)に表れる特徴を推論する処理を実行する。本実施形態では、各学習装置2は、特徴を推論するための推論用学習データとして収集されたデータ群を取得する。このとき、各学習装置2は、学習済みの生成モデル41を利用して生成されたデータを取得してもよい。学習済みの生成モデル41によるデータの生成は、各学習装置2により実行されてもよいし、他のコンピュータにより実行されてもよい。これにより、各学習装置2は、学習済みの生成モデル41により生成されたデータを含むデータ群を取得してもよい。また、各学習装置2は、対象データを取得する。そして、各学習装置2は、対象データとデータ群との比較に基づいて、対象データに表れる特徴を推論する。各学習装置2は、特徴を推論した結果に関する情報を出力する。
上記のとおり、学習済みの生成モデル41によれば、多様なデータを生成可能である。特に、学習済みの生成モデル41は、各学習装置2単独では収集するのが困難であるが、他の学習装置2では得られるようなデータを生成可能に構成される。そのため、各学習装置2は、このような生成モデル41により生成されたデータにより、推論に利用するデータ群に含まれるデータの件数を増やすだけでなく、データのバリエーションを豊富にすることができる。これによって、各学習装置2は、データ群との比較に基づく推論の精度を高めることができる。
§2 構成例
[ハードウェア構成]
<モデル生成装置>
次に、図3を用いて、本実施形態に係るモデル生成装置1のハードウェア構成の一例について説明する。図3は、本実施形態に係るモデル生成装置1のハードウェア構成の一例を模式的に例示する。
[ハードウェア構成]
<モデル生成装置>
次に、図3を用いて、本実施形態に係るモデル生成装置1のハードウェア構成の一例について説明する。図3は、本実施形態に係るモデル生成装置1のハードウェア構成の一例を模式的に例示する。
図3に示されるとおり、本実施形態に係るモデル生成装置1は、制御部11、記憶部12、通信インタフェース13、入力装置14、出力装置15、及びドライブ16が電気的に接続されたコンピュータである。なお、図3では、通信インタフェースを「通信I/F」と記載している。
制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、プログラム及び各種データに基づいて情報処理を実行するように構成される。記憶部12は、メモリの一例であり、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部12は、モデル生成プログラム81、学習結果データ121、グループリスト123、割当情報124等の各種情報を記憶する。
モデル生成プログラム81は、生成モデル41の機械学習に関する後述の情報処理(図9)をモデル生成装置1に実行させるためのプログラムである。モデル生成プログラム81は、この情報処理の一連の命令を含む。学習結果データ121は、機械学習により構築された生成モデル41に関する情報を示す。学習結果データ121は、モデル生成プログラム81を実行した結果として得られる。グループリスト123は、各学習装置2を割り当てる候補となる複数のグループの一覧を示す。割当情報124は、各学習装置2と各グループとの対応関係を示す。詳細は後述する。
通信インタフェース13は、例えば、有線LAN(Local Area Network)モジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。モデル生成装置1は、この通信インタフェース13を利用することで、ネットワークを介したデータ通信を他の情報処理装置(例えば、学習装置2)と行うことができる。
入力装置14は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置15は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置14及び出力装置15を利用することで、モデル生成装置1を操作することができる。
ドライブ16は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体91に記憶されたプログラムを読み込むためのドライブ装置である。ドライブ16の種類は、記憶媒体91の種類に応じて適宜選択されてよい。上記モデル生成プログラム81、グループリスト123、及び割当情報124の少なくともいずれかは、この記憶媒体91に記憶されていてもよい。
記憶媒体91は、コンピュータその他装置、機械等が、記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。モデル生成装置1は、この記憶媒体91から、上記モデル生成プログラム81、グループリスト123、及び割当情報124の少なくともいずれかを取得してもよい。
ここで、図3では、記憶媒体91の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体91の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
なお、モデル生成装置1の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部11は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA(field-programmable gate array)、DSP(digital signal processor)等で構成されてよい。記憶部12は、制御部11に含まれるRAM及びROMにより構成されてもよい。通信インタフェース13、入力装置14、出力装置15及びドライブ16の少なくともいずれかは省略されてもよい。モデル生成装置1は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、モデル生成装置1は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、PC(Personal Computer)等であってもよい。
<学習装置>
次に、図4を用いて、本実施形態に係る各学習装置2のハードウェア構成の一例について説明する。図4は、本実施形態に係る各学習装置2のハードウェア構成の一例を模式的に例示する。
次に、図4を用いて、本実施形態に係る各学習装置2のハードウェア構成の一例について説明する。図4は、本実施形態に係る各学習装置2のハードウェア構成の一例を模式的に例示する。
図4に示されるとおり、本実施形態に係る各学習装置2は、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。なお、図4では、通信インタフェース及び外部インタフェースをそれぞれ「通信I/F」及び「外部I/F」と記載している。
各学習装置2の制御部21~ドライブ26はそれぞれ、上記モデル生成装置1の制御部11~ドライブ16それぞれと同様に構成されてよい。すなわち、制御部21は、制御部21は、ハードウェアプロセッサであるCPU、RAM、ROM等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部22は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。記憶部22は、学習プログラム82、推論プログラム83、ローカル学習データ3、学習結果データ221等の各種情報を記憶する。
学習プログラム82は、識別モデル40の機械学習に関する後述の情報処理(図8)を学習装置2に実行させるためのプログラムである。学習プログラム82は、この情報処理の一連の命令を含む。学習結果データ221は、機械学習により構築された識別モデル40に関する情報を示す。学習結果データ221は、学習プログラム82を実行した結果として得られる。また、推論プログラム83は、センサSにより得られるデータに対する所定の推論に関する後述の情報処理(図10)を学習装置2に実行させるためのプログラムである。推論プログラム83は、この情報処理の一連の命令を含む。ローカル学習データ3は、識別モデル40の機械学習に利用される。詳細は後述する。
通信インタフェース23は、例えば、有線LANモジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。各学習装置2は、この通信インタフェース23を利用することで、ネットワークを介したデータ通信を他の情報処理装置(例えば、モデル生成装置1)と行うことができる。
入力装置24は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置25は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置24及び出力装置25を利用することで、各学習装置2を操作することができる。
ドライブ26は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体92に記憶されたプログラムを読み込むためのドライブ装置である。上記学習プログラム82、推論プログラム83、及びローカル学習データ3のうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、各学習装置2は、記憶媒体92から、上記学習プログラム82、推論プログラム83、及びローカル学習データ3のうちの少なくともいずれかを取得してもよい。
外部インタフェース27は、例えば、USB(Universal Serial Bus)ポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース27の種類及び数は、接続される外部装置の種類及び数に応じて適宜選択されてよい。本実施形態では、各学習装置2は、外部インタフェース27を介して、センサSに接続される。これにより、各学習装置2は、所定の推論を実行する対象となるセンシングデータをセンサSから取得可能に構成される。ただし、センシングデータを取得するための構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、センサSが通信インタフェースを備える場合、各学習装置2は、外部インタフェース27ではなく、通信インタフェース23を介して、センサSに接続されてもよい。
なお、各学習装置2の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部21は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA、DSP等で構成されてよい。記憶部22は、制御部21に含まれるRAM及びROMにより構成されてもよい。通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27の少なくともいずれかは省略されてもよい。各学習装置2は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。本実施形態では、各学習装置2のハードウェア構成は共通している。しかしながら、各学習装置2のハードウェア構成の関係は、このような例に限定されなくてもよい。一の学習装置2と他の学習装置2との間で、ハードウェア構成は異なっていてもよい。また、各学習装置2は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
[ソフトウェア構成]
<モデル生成装置>
次に、図5を用いて、本実施形態に係るモデル生成装置1のソフトウェア構成の一例について説明する。図5は、本実施形態に係るモデル生成装置1のソフトウェア構成の一例を模式的に例示する。
<モデル生成装置>
次に、図5を用いて、本実施形態に係るモデル生成装置1のソフトウェア構成の一例について説明する。図5は、本実施形態に係るモデル生成装置1のソフトウェア構成の一例を模式的に例示する。
モデル生成装置1の制御部11は、記憶部12に記憶されたモデル生成プログラム81をRAMに展開する。そして、制御部11は、RAMに展開されたモデル生成プログラム81をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図5に示されるとおり、本実施形態に係るモデル生成装置1は、生成部111、送信部112、受信部113、学習処理部114、保存処理部115、及びグルーピング部116をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、モデル生成装置1の各ソフトウェアモジュールは、制御部11(CPU)により実現される。
生成部111は、生成モデル41を用いて、データ50を生成する。本実施形態では、所定の確率分布からノイズ(潜在変数)を取得する。所定の確率分布は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。所定の確率分布は、例えば、ガウス分布等であってよい。生成部111は、取得したノイズを生成モデル41に入力し、生成モデル41の演算処理を実行する。これにより、生成部111は、生成モデル41からデータ50を取得する。
送信部112は、生成されるデータ50を各識別モデル40に送信し、各識別モデル40にデータ50に対する識別を実行させる。受信部113は、送信されたデータ50に対する各識別モデル40による識別の結果51を受信する。本実施形態では、各識別モデル40は、各学習装置2に保持されている。そのため、送信部112は、生成されるデータ50を各学習装置2に送信することで、データ50に対する識別を各識別モデル40に実行させる。また、受信部113は、各識別モデル40による識別の結果51を各学習装置2から受信する。
学習処理部114は、受信された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させるようなデータを生成するように生成モデル41を訓練する。保存処理部115は、機械学習により構築された学習済みの生成モデル41に関する情報を所定の記憶領域に保存する。
グルーピング部116は、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。これに応じて、モデル生成装置1は、グループ毎に生成モデル41を保持してもよい。送信部112は、グループ毎に、対応する生成モデル41により生成されたデータ50を各学習装置2に送信することで、各識別モデル40にデータ50に対する識別を実行させてよい。受信部113は、グループ毎に、各識別モデル40による識別の結果51を各学習装置2から受信してもよい。そして、学習処理部114は、グループ毎に、受信された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させるようなデータを生成するように生成モデル41を訓練してもよい。本実施形態では、グルーピング部116は、各学習装置2に対するグループの割り当て結果を割当情報124に格納する。
図6は、本実施形態に係る割当情報124のデータ構成の一例を模式的に例示する。本実施形態では、割当情報124は、テーブル形式の構造を有しており、各レコード(行データ)は、「ユーザID」フィールド及び「グループID」フィールドを有している。「ユーザID」フィールドには、各学習装置2を識別するための情報が格納され、「グループID」フィールドには、対象の学習装置2を割り当てたグループを識別するための情報が格納される。1つのレコードは、1つの割り当て結果を示す。ただし、割当情報124のデータ構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
(生成モデル)
次に、生成モデル41の一例について説明する。図5に示されるとおり、本実施形態では、生成モデル41は、ニューラルネットワークにより構成される。具体的には、生成モデル41は、3層構造のニューラルネットワークにより構成され、入力側から順に、入力層411、中間(隠れ)層412、及び出力層413を備えている。ただし、生成モデル41の構造は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、生成モデル41の備える中間層の数は、1つに限定されなくてもよく、2つ以上であってもよい。
次に、生成モデル41の一例について説明する。図5に示されるとおり、本実施形態では、生成モデル41は、ニューラルネットワークにより構成される。具体的には、生成モデル41は、3層構造のニューラルネットワークにより構成され、入力側から順に、入力層411、中間(隠れ)層412、及び出力層413を備えている。ただし、生成モデル41の構造は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、生成モデル41の備える中間層の数は、1つに限定されなくてもよく、2つ以上であってもよい。
各層411~413に含まれるニューロン(ノード)の数は、実施の形態に応じて適宜選択されてよい。隣接する層のニューロン同士は適宜結合され、各結合には重み(結合荷重)が設定されている。図5の例では、各ニューロンは、隣接する層の全てのニューロンと結合されている。しかしながら、ニューロンの結合は、このような例に限定されなくてもよく、実施の形態に応じて適宜設定されてよい。各ニューロンには閾値が設定されており、基本的には、各入力と各重みとの積の和が閾値を超えているか否かによって各ニューロンの出力が決定される。各層411~413に含まれる各ニューロン間の結合の重み及び各ニューロンの閾値は、演算処理に利用される生成モデル41の演算パラメータの一例である。
本実施形態では、生成モデル41がこのように構成されるため、生成部111は、所定の確率分布から得られたノイズを入力層411に入力し、ニューラルネットワークの演算処理を実行する。これにより、生成部111は、出力層413からの出力として、ノイズから生成されたデータ50を取得する。
また、学習処理部114は、機械学習により、いずれか一つの識別モデル40の識別性能を低下させるように算出された誤差に基づいて、生成モデル41の演算パラメータの値を調整する。保存処理部115は、機械学習により構築された学習済みの生成モデル41の構造及び演算パラメータを示す情報を学習結果データ121として生成し、生成した学習結果データ121を所定の記憶領域に保存する。
<学習装置>
(A)学習処理
次に、図7Aを用いて、本実施形態に係る各学習装置2の学習処理に関するソフトウェア構成の一例について説明する。図7Aは、本実施形態に係る各学習装置2の学習処理に関するソフトウェア構成の一例を模式的に例示する。
(A)学習処理
次に、図7Aを用いて、本実施形態に係る各学習装置2の学習処理に関するソフトウェア構成の一例について説明する。図7Aは、本実施形態に係る各学習装置2の学習処理に関するソフトウェア構成の一例を模式的に例示する。
各学習装置2の制御部21は、記憶部22に記憶された学習プログラム82をRAMに展開する。そして、制御部21は、RAMに展開された学習プログラム82をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図7Aに示されるとおり、本実施形態に係る各学習装置2は、学習データ収集部211、学習処理部212、及び保存処理部213をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、学習処理に関する各学習装置2の各ソフトウェアモジュールは、制御部21(CPU)により実現される。
学習データ収集部211は、識別モデル40の機械学習に使用するローカル学習データ3を収集する。学習データ収集部211は、例えば、後述する推論処理に利用する等の他の利用目的で収集されたデータをローカル学習データ3として取り扱ってもよい。学習処理部212は、収集されたローカル学習データ3を使用した機械学習により、与えられたデータがローカル学習データ3に含まれるか否かを識別する能力を獲得した学習済みの識別モデル40を構築する。保存処理部213は、機械学習により構築された学習済みの識別モデル40に関する情報を所定の記憶領域に保存する。
(識別モデル)
次に、識別モデル40の一例について説明する。図7Aに示されるとおり、本実施形態では、識別モデル40は、ニューラルネットワークにより構成される。具体的には、識別モデル40は、上記生成モデル41と同様に、3層構造のニューラルネットワークにより構成され、入力側から順に、入力層401、中間(隠れ)層402、及び出力層403を備えている。ただし、識別モデル40の構造は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、識別モデル40の備える中間層の数は、1つに限定されなくてもよく、2つ以上であってもよい。
次に、識別モデル40の一例について説明する。図7Aに示されるとおり、本実施形態では、識別モデル40は、ニューラルネットワークにより構成される。具体的には、識別モデル40は、上記生成モデル41と同様に、3層構造のニューラルネットワークにより構成され、入力側から順に、入力層401、中間(隠れ)層402、及び出力層403を備えている。ただし、識別モデル40の構造は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、識別モデル40の備える中間層の数は、1つに限定されなくてもよく、2つ以上であってもよい。
上記生成モデル41と同様に、識別モデル40の各層401~403に含まれるニューロン(ノード)の数も、実施の形態に応じて適宜選択されてよい。図7Aの例では、各ニューロンは、隣接する層の全てのニューロンと結合されている。しかしながら、ニューロンの結合は、このような例に限定されなくてもよく、実施の形態に応じて適宜設定されてよい。各層401~403に含まれる各ニューロン間の結合の重み及び各ニューロンの閾値は、演算処理に利用される識別モデル40の演算パラメータの一例である。
本実施形態では、学習処理部212は、機械学習により、識別モデル40に入力されたデータが、生成モデル41により生成されたデータであるかローカル学習データ3に含まれるデータであるかを識別するように識別モデル40を訓練する。つまり、識別モデル40は、与えられたデータが生成モデル41由来かローカル学習データ3由来かを識別するように訓練される。なお、図7Aでは、ローカル学習データ3由来であることを「真」と表現し、生成モデル41由来であることを「偽」と表現している。ただし、各由来を表現する方法は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。
この機械学習の処理の一例として、学習処理部212は、まず、収集されたローカル学習データ3の他に、生成モデル41により生成されたデータ53を取得する。データ53は、データ50と同様に、所定の確率分布から抽出されたノイズを生成モデル41の入力層411に入力し、生成モデル41の演算処理を実行することで生成される。次に、学習処理部212は、ローカル学習データ3及びデータ53を利用して、識別モデル40の機械学習を実行する。
生成モデル41により生成されたデータ53に対する識別の正解データは「偽」である。一方、ローカル学習データ3に含まれるデータに対する識別の正解データは「真」である。そのため、「偽」を示す正解データをデータ53に関連付けることで、与えられたデータが生成モデル41由来であることを識別する能力の習得に専ら関与する学習用データセットを生成することができる。また、ローカル学習データ3に含まれるデータに「真」を示す正解データを関連付けることで、与えられたデータがローカル学習データ3由来であることを識別する能力の習得に専ら関与する学習用データセットを生成することができる。なお、「真」は「1」で表現されてよく、「偽」は「0」で表現されてよい。学習処理部212による識別モデル40の機械学習は、各学習用データセットを使用した教師あり学習とみなすことができる。
すなわち、学習処理部212は、生成モデル41により生成されたデータ53を識別モデル40の入力層401に入力し、識別モデル40の演算処理を実行する。これにより、学習処理部212は、入力されたデータがローカル学習データ3由来か生成モデル41由来かを識別した結果に対応する出力値を出力層403から取得する。この場面では、入力されたデータは生成モデル41により生成されたデータ53であるため、識別モデル40は、「偽」と識別するのが正解である。学習処理部212は、生成モデル41により生成されたデータ53について、出力層403から得られる出力値とこの正解との誤差を算出する。
また、学習処理部212は、ローカル学習データ3に含まれるデータを識別モデル40の入力層401に入力し、識別モデル40の演算処理を実行する。これにより、学習処理部212は、入力されたデータがローカル学習データ3由来か生成モデル41由来かを識別した結果に対応する出力値を出力層403から取得する。この場面では、入力されたデータはローカル学習データ3に含まれるデータであるため、識別モデル40は、「真」と識別するのが正解である。学習処理部212は、ローカル学習データ3に含まれるデータについて、出力層403から得られる出力値とこの正解との誤差を算出する。
そして、学習処理部212は、算出される誤差の和が小さくなるように、識別モデル40の演算パラメータの値を調節する。学習処理部212は、出力層403から得られる出力値と真偽の正解との誤差の和が閾値以下になるまで、上記一連の処理による識別モデル40の演算パラメータの値の調節を繰り返す。これにより、学習処理部212は、与えられたデータが生成モデル41により生成されたデータであるかローカル学習データ3に含まれるデータであるかを識別する能力を獲得するように識別モデル40を訓練することができる。保存処理部213は、機械学習により構築された学習済みの識別モデル40の構造及び演算パラメータを示す情報を学習結果データ221として生成し、生成した学習結果データ221を所定の記憶領域に保存する。
(B)推論処理
次に、図7Bを用いて、本実施形態に係る各学習装置2の推論処理に関するソフトウェア構成の一例について説明する。図7Bは、本実施形態に係る各学習装置2の推論処理に関するソフトウェア構成の一例を模式的に例示する。
次に、図7Bを用いて、本実施形態に係る各学習装置2の推論処理に関するソフトウェア構成の一例について説明する。図7Bは、本実施形態に係る各学習装置2の推論処理に関するソフトウェア構成の一例を模式的に例示する。
各学習装置2の制御部21は、記憶部22に記憶された推論プログラム83をRAMに展開する。そして、制御部21は、RAMに展開された推論プログラム83をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図7Bに示されるとおり、本実施形態に係る各学習装置2は、対象データ取得部216、推論部217、及び出力部218をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、推論処理に関する各学習装置2の各ソフトウェアモジュールは、制御部21(CPU)により実現される。
対象データ取得部216は、推論の処理対象となる対象データ223を取得する。本実施形態では、対象データ取得部216は、対象データ223をセンサSから取得する。推論部217は、特徴を推論するための推論用学習データとして収集されたデータ群225を取得する。データ群225は、推論する特徴に関する複数件のデータ2251により構成される。データ群225に含まれるデータ2251は、例えば、ローカル学習データ3に含まれるデータ、生成モデル41により生成されたデータ等であってよい。推論部217は、学習済みの生成モデル41を利用して生成されたデータを取得してもよい。学習済みの生成モデル41によるデータの生成は、各学習装置2により実行されてもよいし、他のコンピュータにより実行されてもよい。学習済みの生成モデル41によるデータの生成を各学習装置2が実行する場合、推論部217は、学習結果データ121を保持することで、学習済みの生成モデル41を含む。推論部217は、学習済みの生成モデル41を利用してデータを生成する。これにより、推論部217は、学習済みの生成モデル41により生成されたデータを含むデータ群225を取得してもよい。そして、推論部217は、データ群225と対象データ223との比較に基づいて、対象データ223に表れる特徴を推論する。なお、この「推論」することは、例えば、グループ分け(分類、識別)により離散値(例えば、特定の特徴に対応するクラス)を導出すること、及び回帰により連続値(例えば、特定の特徴が現れている確率)を導出することのいずれかであってよい。出力部218は、特徴を推論した結果に関する情報を出力する。
<その他>
モデル生成装置1及び各学習装置2の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、モデル生成装置1及び各学習装置2の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、モデル生成装置1及び各学習装置2それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
モデル生成装置1及び各学習装置2の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、モデル生成装置1及び各学習装置2の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、モデル生成装置1及び各学習装置2それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
§3 動作例
[学習処理]
本実施形態では、各学習装置2による当該識別モデル40の機械学習、及びモデル生成装置1による生成モデル41の機械学習は交互に繰り返し実行されてよい。この繰り返しの回数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。これにより、識別モデル40の識別精度及び生成モデル41のデータ生成の精度を高めることができる。すなわち、識別モデル40に、与えられたデータがローカル学習データ3か否かを適切に識別する能力を習得させることができる。また、生成モデル41に、所定の確率分布から抽出されたノイズから、いずれかのローカル学習データ3の分布に含まれ得るデータを適切に生成する能力を習得させることができる。以下、各学習装置2及びモデル生成装置1の機械学習に関する動作例について説明する。
[学習処理]
本実施形態では、各学習装置2による当該識別モデル40の機械学習、及びモデル生成装置1による生成モデル41の機械学習は交互に繰り返し実行されてよい。この繰り返しの回数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。これにより、識別モデル40の識別精度及び生成モデル41のデータ生成の精度を高めることができる。すなわち、識別モデル40に、与えられたデータがローカル学習データ3か否かを適切に識別する能力を習得させることができる。また、生成モデル41に、所定の確率分布から抽出されたノイズから、いずれかのローカル学習データ3の分布に含まれ得るデータを適切に生成する能力を習得させることができる。以下、各学習装置2及びモデル生成装置1の機械学習に関する動作例について説明する。
(A)各学習装置
まず、図8を用いて、識別モデル40の機械学習に関する各学習装置2の動作例について説明する。図8は、各学習装置2による識別モデル40の機械学習に関する処理手順の一例を示すフローチャートである。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
まず、図8を用いて、識別モデル40の機械学習に関する各学習装置2の動作例について説明する。図8は、各学習装置2による識別モデル40の機械学習に関する処理手順の一例を示すフローチャートである。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS101)
ステップS101では、制御部21は、学習データ収集部211として動作し、ローカル学習データ3を収集する。
ステップS101では、制御部21は、学習データ収集部211として動作し、ローカル学習データ3を収集する。
ローカル学習データ3を生成する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。本実施形態では、ローカル学習データ3は、センサSにより得られるデータに表れる特徴を推論するのに利用され得る。そのため、例えば、センサSと同種のセンサを用意し、用意したセンサにより様々な条件で観察を行うことで、所定の特徴の表れた又は表れていない複数件のデータを取得する。ローカル学習データ3は、これにより取得された複数件のデータにより構成されてよい。なお、各件のデータには、当該各件のデータに表れる特徴を示すラベルが付与されてもよい。
ローカル学習データ3は、コンピュータの動作により自動的に生成されてもよいし、オペレータの操作により手動的に生成されてもよい。また、ローカル学習データ3の生成は、各学習装置2により行われてもよいし、各学習装置2以外の他のコンピュータにより行われてもよい。ローカル学習データ3を各学習装置2が生成する場合、制御部21は、自動的に又は入力装置24を介したオペレータの操作により手動的に上記処理を実行することで、ローカル学習データ3を収集してもよい。一方、ローカル学習データ3を他のコンピュータが生成する場合、制御部21は、例えば、ネットワーク、記憶媒体92等を介して、他のコンピュータにより生成されたローカル学習データ3を収集してもよい。ローカル学習データ3の一部が各学習装置2により生成され、他の部分が他のコンピュータにより生成されてもよい。
ローカル学習データ3を構成するデータの件数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。また、制御部21は、推論に利用するデータ群225に含まれるデータ2251をローカル学習データ3として利用してもよい。ローカル学習データ3を収集すると、制御部21は、次のステップS102に処理を進める。
(ステップS102)
ステップS102では、制御部21は、学習処理部212として動作し、生成モデル41により生成されたデータ53を取得する。
ステップS102では、制御部21は、学習処理部212として動作し、生成モデル41により生成されたデータ53を取得する。
本実施形態では、モデル生成装置1の制御部11は、所定の確率分布からノイズを抽出し、抽出されたノイズを生成モデル41の入力層411に入力して、生成モデル41の演算処理を実行する。すなわち、制御部11は、生成モデル41の入力層411にノイズを入力し、入力側から順に各層411~413に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、出力層413からの出力として、ノイズから生成されたデータ53を取得する。制御部21は、このようにして生成モデル41により生成されたデータ53を取得する。本実施形態では、生成されるデータ53は、疑似的なセンシングデータである。
データ53を取得する経路は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部21は、ネットワークを介してモデル生成装置1にアクセスすることで、当該モデル生成装置1から直接的にデータ53を取得してもよい。この場合、モデル生成装置1の制御部11は、各学習装置2からの要求に応じて、生成モデル41によりデータ53を生成してもよい。そして、制御部11は、生成されたデータ53を適宜各学習装置2に送信してもよい。これにより、制御部21は、モデル生成装置1からデータ53を取得してもよい。また、例えば、モデル生成装置1の制御部11は、生成モデル41により生成されたデータ53をデータサーバ等の外部記憶装置に保存してもよい。データサーバは、例えば、NAS(Network Attached Storage)等であってよい。この場合、制御部21は、外部記憶装置にアクセスして、当該外部記憶装置からデータ53を取得することで、モデル生成装置1から間接的にデータ53を取得してもよい。
取得するデータ53の件数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。生成モデル41により生成されたデータ53を取得すると、制御部21は、次のステップS103に処理を進める。なお、本ステップS102は、ステップS101よりも前に実行されてもよい。
(ステップS103)
ステップS103では、制御部21は、学習処理部212として動作し、収集されたローカル学習データ3を使用した機械学習により、与えられたデータがローカル学習データ3に含まれるか否かを識別する能力を獲得した学習済みの識別モデル40を構築する。本実施形態では、制御部21は、ローカル学習データ3及び生成モデル41により生成されたデータ53を使用して、与えられたデータがローカル学習データ3由来か生成モデル41由来かを識別するように識別モデル40を訓練する。この機械学習の処理には、確率的勾配降下法、ミニバッチ勾配降下法等が用いられてよい。
ステップS103では、制御部21は、学習処理部212として動作し、収集されたローカル学習データ3を使用した機械学習により、与えられたデータがローカル学習データ3に含まれるか否かを識別する能力を獲得した学習済みの識別モデル40を構築する。本実施形態では、制御部21は、ローカル学習データ3及び生成モデル41により生成されたデータ53を使用して、与えられたデータがローカル学習データ3由来か生成モデル41由来かを識別するように識別モデル40を訓練する。この機械学習の処理には、確率的勾配降下法、ミニバッチ勾配降下法等が用いられてよい。
具体的には、制御部21は、生成モデル41により生成されたデータ53を識別モデル40の入力層401に入力し、入力側から順に各層401~403に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、入力されたデータがローカル学習データ3由来か生成モデル41由来かを識別した結果に対応する出力値を出力層403から取得する。この場面では、入力されたデータは生成モデル41により生成されたデータ53であるため、識別モデル40は、「偽」と識別するのが正解である。制御部21は、生成モデル41により生成されたデータ53について、出力層403から得られる出力値とこの正解との誤差を算出する。
また、制御部21は、ローカル学習データ3に含まれるデータを識別モデル40の入力層401に入力し、入力側から順に各層401~403に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、入力されたデータがローカル学習データ3由来か生成モデル41由来かを識別した結果に対応する出力値を出力層403から取得する。この場面では、入力されたデータはローカル学習データ3に含まれるデータであるため、識別モデル40は、「真」と識別するのが正解である。制御部21は、ローカル学習データ3に含まれるデータについて、出力層403から得られる出力値とこの正解との誤差を算出する。
制御部21は、誤差逆伝播法(Back propagation)により、算出した出力値の誤差の勾配を用いて、識別モデル40における各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの誤差を算出する。制御部21は、算出した各誤差に基づいて、識別モデル40における各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの値の更新を行う。例えば、制御部21は、ローカル学習データ3及び生成モデル41により生成されたデータ53それぞれからサンプルを抽出し、抽出されたサンプルを使用して、上記の処理により演算パラメータの値を調節する。制御部21は、この調節を所定回数繰り返す。調節を繰り返す回数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。これにより、制御部21は、ローカル学習データ3及び生成モデル41により生成されたデータ53について、与えられたデータがローカル学習データ3由来か生成モデル41由来かを適切に識別可能に訓練された識別モデル40を構築することができる。この識別モデル40の機械学習が完了すると、制御部21は、次のステップS104に処理を進める。
(ステップS104)
ステップS104では、制御部21は、保存処理部213として動作し、機械学習により構築された学習済みの識別モデル40に関する情報を所定の記憶領域に保存する。本実施形態では、制御部21は、ステップS103の機械学習により構築された学習済みのニューラルネットワーク(識別モデル40)の構造及び演算パラメータを示す情報を学習結果データ221として生成する。そして、制御部21は、生成された学習結果データ221を所定の記憶領域に保存する。
ステップS104では、制御部21は、保存処理部213として動作し、機械学習により構築された学習済みの識別モデル40に関する情報を所定の記憶領域に保存する。本実施形態では、制御部21は、ステップS103の機械学習により構築された学習済みのニューラルネットワーク(識別モデル40)の構造及び演算パラメータを示す情報を学習結果データ221として生成する。そして、制御部21は、生成された学習結果データ221を所定の記憶領域に保存する。
所定の記憶領域は、例えば、制御部21内のRAM、記憶部22、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。記憶メディアは、例えば、CD、DVD等であってよく、制御部21は、ドライブ26を介して記憶メディアに学習結果データ221を格納してもよい。外部記憶装置は、例えば、NAS等のデータサーバであってよい。この場合、制御部21は、通信インタフェース23を利用して、ネットワークを介してデータサーバに学習結果データ221を格納してもよい。また、外部記憶装置は、例えば、学習装置2に接続された外付けの記憶装置であってもよい。
これにより、学習結果データ221の保存が完了すると、制御部21は、識別モデル40の機械学習に関する一連の処理を終了する。
なお、上記のとおり、各学習装置2による当該識別モデル40の機械学習、及びモデル生成装置1による生成モデル41の機械学習の交互の実行は繰り返されてもよい。この繰り返しの過程では、制御部21は、ステップS104を省略して、暫定的な学習済みの識別モデル40に関する情報をRAMに一時保存してもよい。或いは、制御部21は、本ステップS104を省略せずに、暫定的な学習済みの識別モデル40に関する情報を学習結果データ221として所定の記憶領域に保存してもよい。また、繰り返しの過程では、制御部21は、ステップS101の処理を省略してもよい。
(B)モデル生成装置
次に、図9を用いて、生成モデル41の機械学習に関するモデル生成装置1の動作例について説明する。図9は、モデル生成装置1による生成モデル41の機械学習に関する処理手順の一例を示すフローチャートである。以下で説明する処理手順は、本発明の「モデル生成方法」の一例である。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
次に、図9を用いて、生成モデル41の機械学習に関するモデル生成装置1の動作例について説明する。図9は、モデル生成装置1による生成モデル41の機械学習に関する処理手順の一例を示すフローチャートである。以下で説明する処理手順は、本発明の「モデル生成方法」の一例である。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS201)
ステップS201では、生成部111として動作し、生成モデル41を用いて、データ50を生成する。初期段階では、生成モデル41は、テンプレートにより与えられてもよいし、入力装置14を介したオペレータの指定により与えられてもよい。識別モデル40の機械学習及び生成モデル41の機械学習の繰り返しの過程では、生成モデル41は、前回の機械学習により得られた学習結果により与えられてよい。
ステップS201では、生成部111として動作し、生成モデル41を用いて、データ50を生成する。初期段階では、生成モデル41は、テンプレートにより与えられてもよいし、入力装置14を介したオペレータの指定により与えられてもよい。識別モデル40の機械学習及び生成モデル41の機械学習の繰り返しの過程では、生成モデル41は、前回の機械学習により得られた学習結果により与えられてよい。
本実施形態では、制御部11は、これらに基づいて、生成モデル41の設定を行う。次に、制御部11は、ガウス分布等の所定の確率分布から複数のノイズを抽出する。抽出するノイズの件数は、実施の形態に応じて適宜選択されてよい。そして、制御部11は、抽出された各ノイズを生成モデル41の入力層411に入力し、入力側から順に各層411~413に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、各ノイズに対応して生成されたデータ50を出力層413から取得する。データ50を生成すると、制御部11は、次のステップS202に処理を進める。
(ステップS202及びステップS203)
ステップS202では、制御部11は、送信部112として動作し、生成されたデータ50を各識別モデル40に送信して、各識別モデル40にデータ50に対する識別を実行させる。ステップS203では、制御部11は、受信部113として動作し、送信されたデータ50に対する各識別モデル40による識別の結果51を受信する。
ステップS202では、制御部11は、送信部112として動作し、生成されたデータ50を各識別モデル40に送信して、各識別モデル40にデータ50に対する識別を実行させる。ステップS203では、制御部11は、受信部113として動作し、送信されたデータ50に対する各識別モデル40による識別の結果51を受信する。
本実施形態では、制御部11は、通信インタフェース13を利用して、ネットワークを介して各学習装置2にデータ50を送信する。これにより、制御部11は、データ50に対する識別を各識別モデル40に実行させる。また、制御部11は、ネットワークを介して各学習装置2から各識別モデル40による識別の結果51を取得する。識別の結果51を各学習装置2から取得すると、制御部11は、次のステップS204に処理を進める。
なお、データ50を送信する経路及び識別の結果51を受信する経路はそれぞれ、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、ネットワークを介して各学習装置2に直接的にデータ50を送信してもよい。また、例えば、制御部11は、生成されたデータ50をデータサーバ等の外部記憶装置に送信し、外部記憶装置に格納されたデータ50を各学習装置2に取得させてもよい。これにより、制御部11は、生成されたデータ50を各学習装置2に間接的に送信してもよい。識別の結果51を受信する経路についても同様である。
(ステップS204)
ステップS204では、制御部11は、学習処理部114として動作し、受信された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させるようなデータを生成するように生成モデル41を訓練する。つまり、制御部11は、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40が「真」と識別する(すなわち、ローカル学習データ3由来と識別する)ようなデータを生成するように生成モデル41を訓練する。複数の識別モデル40のうちの少なくともいずれか一つの識別性能を低下させるように誤差を算出する方法は、実施の形態に応じて適宜選択されてよい。本実施形態では、以下のとおり、この誤差の計算にソフトマックス関数を利用する。
ステップS204では、制御部11は、学習処理部114として動作し、受信された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させるようなデータを生成するように生成モデル41を訓練する。つまり、制御部11は、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40が「真」と識別する(すなわち、ローカル学習データ3由来と識別する)ようなデータを生成するように生成モデル41を訓練する。複数の識別モデル40のうちの少なくともいずれか一つの識別性能を低下させるように誤差を算出する方法は、実施の形態に応じて適宜選択されてよい。本実施形態では、以下のとおり、この誤差の計算にソフトマックス関数を利用する。
これにより、複数の識別モデル40のうちの少なくともいずれか一つの識別性能を低下させるように生成モデル41の演算パラメータの値が調節される。すなわち、制御部11は、複数の識別モデル40のうちの少なくともいずれか一つの識別性能を低下させるようなデータを生成するように訓練された生成モデル41を構築することができる。生成モデル41の機械学習が完了すると、制御部11は、次のステップS205に処理を進める。
なお、各学習装置2から返信される識別の結果51は、生成モデル41の演算パラメータの更新に利用可能であれば、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、モデル生成装置1が、各識別モデル40の逆伝播の計算を実行可能である場合、制御部11は、識別の結果51として、各識別モデル40の出力値を得てもよい。この場合、制御部11が、各学習装置2の上記各演算処理を実行してもよい。また、複数の識別モデル40のうちの少なくともいずれか一つの識別性能を低下させるように誤差を算出する方法は、ソフトマックス関数を用いた方法に限られなくてもよい。この誤差の計算には、ソフトマックス関数以外に、例えば、マックス関数等が用いられてもよい。
(ステップS205)
ステップS205では、制御部11は、保存処理部115として動作し、機械学習により構築された学習済みの生成モデル41に関する情報を所定の記憶領域に保存する。本実施形態では、制御部11は、ステップS204の機械学習により構築された学習済みのニューラルネットワーク(生成モデル41)の構造及び演算パラメータを示す情報を学習結果データ121として生成する。そして、制御部11は、生成された学習結果データ121を所定の記憶領域に保存する。所定の記憶領域は、例えば、制御部11内のRAM、記憶部12、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。これにより、学習結果データ121の保存が完了すると、制御部11は、生成モデル41の機械学習に関する一連の処理を終了する。
ステップS205では、制御部11は、保存処理部115として動作し、機械学習により構築された学習済みの生成モデル41に関する情報を所定の記憶領域に保存する。本実施形態では、制御部11は、ステップS204の機械学習により構築された学習済みのニューラルネットワーク(生成モデル41)の構造及び演算パラメータを示す情報を学習結果データ121として生成する。そして、制御部11は、生成された学習結果データ121を所定の記憶領域に保存する。所定の記憶領域は、例えば、制御部11内のRAM、記憶部12、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。これにより、学習結果データ121の保存が完了すると、制御部11は、生成モデル41の機械学習に関する一連の処理を終了する。
なお、上記のとおり、各学習装置2による当該識別モデル40の機械学習、及びモデル生成装置1による生成モデル41の機械学習の交互の実行は繰り返されてもよい。この繰り返しの過程では、制御部11は、ステップS205を省略して、暫定的な学習済みの生成モデル41に関する情報(学習結果)をRAMに一時保存してもよい。或いは、制御部11は、ステップS205を省略せずに、暫定的な学習済みの生成モデル41に関する情報を学習結果データ121として所定の記憶領域に保存してもよい。
[推論処理]
次に、図10を用いて、推論処理に関する各学習装置2の動作例について説明する。図10は、各学習装置2による推論処理に関する処理手順の一例を示すフローチャートである。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
次に、図10を用いて、推論処理に関する各学習装置2の動作例について説明する。図10は、各学習装置2による推論処理に関する処理手順の一例を示すフローチャートである。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS301)
ステップS301では、制御部21は、対象データ取得部216として動作し、所定の推論を行う対象となる対象データ223を取得する。本実施形態では、各学習装置2は、外部インタフェース27を介してセンサSに接続されている。そのため、制御部21は、外部インタフェース27を介してセンサSから対象データ223を取得する。
ステップS301では、制御部21は、対象データ取得部216として動作し、所定の推論を行う対象となる対象データ223を取得する。本実施形態では、各学習装置2は、外部インタフェース27を介してセンサSに接続されている。そのため、制御部21は、外部インタフェース27を介してセンサSから対象データ223を取得する。
ただし、対象データ223を取得する経路は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、各学習装置2とは異なる他のコンピュータが、センサSに接続されていてもよい。この場合、制御部21は、他のコンピュータから対象データ223の送信を受け付けることで、対象データ223を取得してもよい。対象データ223を取得すると、制御部21は、次のステップS302に処理を進める。
(ステップS302)
ステップS302では、制御部21は、推論部217として動作し、特徴を推論するための推論用学習データとして収集されたデータ群225を取得する。データ群225は、推論する特徴に関する複数件のデータ2251により構成される。データ群225に含まれるデータ2251は、例えば、ローカル学習データ3に含まれるデータ、生成モデル41により生成されたデータ等であってよい。
ステップS302では、制御部21は、推論部217として動作し、特徴を推論するための推論用学習データとして収集されたデータ群225を取得する。データ群225は、推論する特徴に関する複数件のデータ2251により構成される。データ群225に含まれるデータ2251は、例えば、ローカル学習データ3に含まれるデータ、生成モデル41により生成されたデータ等であってよい。
また、制御部21は、学習済みの生成モデル41を利用して生成されたデータをデータ2251として取得してもよい。学習済みの生成モデル41によるデータの生成は、各学習装置2により実行されてもよいし、他のコンピュータにより実行されてもよい。学習済みの生成モデル41によるデータの生成を各学習装置2が実行する場合、制御部21は、学習結果データ121を保持することで、学習済みの生成モデル41を備える。制御部21は、上記学習処理により生成された学習結果データ121を、例えば、ネットワーク、記憶媒体92等を介して取得してもよい。この場合、制御部21は、学習結果データ121を参照して、学習済みの生成モデル41を設定する。また、制御部21は、ガウス分布等の所定の確率分布から複数のノイズを抽出する。そして、制御部21は、抽出されたノイズを生成モデル41の入力層411に入力し、入力側から順に各層411~413に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、ノイズに対応して生成されたデータを出力層413から取得する。取得されたデータをデータ2251としてデータ群225に追加することで、制御部21は、学習済みの生成モデル41により生成されたデータを含むデータ群225を取得することができる。或いは、制御部21は、ネットワーク、記憶媒体92等を介して、他のコンピュータにより学習済みの生成モデル41を利用して生成されたデータを取得してもよい。
次に、制御部21は、データ群225と対象データ223との比較に基づいて、対象データ223に表れる特徴を推論する。データ群225との比較に基づいて、対象データ223に表れる特徴を推論する方法は、実施の形態に応じて適宜選択されてよい。一例として、データ群225に含まれる各件のデータ2251が、所定の特徴の表れているデータであり、特徴の推論として、データ群225との比較により、対象データ223に当該所定の特徴が現れているか否かを推定する場面を想定する。例えば、対象データ223が製品の写る画像データであり、特徴の推論として、製品に欠陥が含まれるか否かを推定する場面では、データ群225を構成する各件のデータ2251が、欠陥を含む又は含まない製品の写る画像データであることがその所定の特徴の表れているデータの一例である。この場合、制御部21は、データ群225と対象データ223との比較において、各件のデータ2251と対象データ223との類似性を算出してもよい。類似性は、例えば、ノルム(距離)等により算出されてよい。
そして、制御部21は、算出された類似性に基づいて、データ群225を構成するデータ2251の分布に対象データ223が含まれるか否かを判定してもよい。例えば、制御部21は、算出された類似性と閾値とを比較し、算出された類似性が閾値以下である場合に、データ群225を構成するデータ2251の分布に対象データ223が含まれると判定してもよい。閾値は、適宜決定されてよい。このときには、制御部21は、各件のデータ2251に表れている所定の特徴が対象データ223にも表れていると推定することができる。上記の例において、各件のデータ2251が欠陥を含む製品の写る画像データであった場合、制御部21は、対象データ223に写る製品は欠陥を含んでいると推定することができる。一方、算出された類似性が閾値を超えている場合、制御部21は、データ群225を構成するデータ2251の分布に対象データ223は含まれないと判定してもよい。このときには、制御部21は、各件のデータ2251に表れている所定の特徴は対象データ223には表れていないと推定することができる。上記の例では、制御部21は、対象データ223に写る製品は欠陥を含んでいないと推定することができる。
複数の特徴に関して推論する場合には、データ群225は、特徴毎に収集されたデータ2251により構成されてよい。この場合、各件のデータ2251に表れる特徴を示すラベルが各件のデータ2251に付与され、このラベルに基づいて、各件のデータ2251が分類されてもよい。そして、制御部21は、各件のデータ2251と対象データ223との類似性を特徴毎に算出して、対象データ223にその特徴が表れているか否かを推定してもよい。例えば、制御部21は、対象データ223と類似性の最も高いデータ2251に表れる特徴が対象データ223にも表れていると推論してもよい。データ群225との比較により、対象データ223に表れる特徴を推論すると、制御部21は、次のステップS303に処理を進める。
(ステップS303)
ステップS303では、制御部21は、出力部218として動作し、特徴を推論した結果に関する情報を出力する。
ステップS303では、制御部21は、出力部218として動作し、特徴を推論した結果に関する情報を出力する。
出力先及び出力する情報の内容はそれぞれ、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、ステップS302により特徴を推論した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、特徴を推論した結果に基づいて、何らかの情報処理を実行してもよい。そして、制御部21は、その情報処理を実行した結果を推論の結果に関する情報として出力してもよい。この情報処理を実行した結果の出力には、推論の結果に応じて警告等の特定のメッセージを出力すること、推論の結果に応じて制御対象装置の動作を制御すること等が含まれてよい。出力先は、例えば、出力装置25、制御対象装置等であってよい。推論の結果に関する情報の出力が完了すると、制御部21は、所定の推論処理に関する一連の処理を終了する。
[学習装置のグルーピング]
次に、図11を用いて、各学習装置2のグルーピングの一例について説明する。図11は、各学習装置2をグルーピングする場面の一例を模式的に例示する。
次に、図11を用いて、各学習装置2のグルーピングの一例について説明する。図11は、各学習装置2をグルーピングする場面の一例を模式的に例示する。
モデル生成装置1による生成モデル41は、各学習装置2において収集されたローカル学習データ3の分布に沿うデータを生成することを一つの目的として構築される。例えば、一の学習装置2で収集されたローカル学習データ3と他の学習装置2で収集されたローカル学習データ3とが同種のデータで構成されると想定する。この場合には、上記各機械学習の処理により、各学習装置2のローカル学習データ3の分布に沿うデータを生成可能な生成モデル41を適切に構築することができる。一方、例えば、一の学習装置2で収集されたローカル学習データ3と他の学習装置2で収集されたローカル学習データ3とが異なる種類のデータで構成されると想定する。一のローカル学習データ3が画像データで構成され、他のローカル学習データ3が音データで構成されるケースがこれの一例である。この場合には、各学習装置2のローカル学習データ3の分布に沿うデータを生成可能な生成モデル41を構築するのは困難である。
そこで、本実施形態では、制御部11は、グルーピング部116として動作し、各学習装置2を複数のグループのうちの少なくともいずれかに割り当ててもよい。各グループは、適宜設定されてよい。例えば、各グループは、ローカル学習データに含まれるデータの種別、データに表れる特徴、データの利用目的等に応じて適宜設定されてよい。図11では、グループA及びグループBの2つのグループに各学習装置2を割り当てる場面が例示されている。制御部11は、この各学習装置2に対するグループの割り当て結果を割当情報124に格納する。
このグルーピング処理を実行する場合、モデル生成装置1は、グループ毎に生成モデル41を保持する。そして、制御部11は、同一のグループ内で、換言すると、グループ毎に、上記ステップS201~205の処理を実行する。すなわち、ステップS201では、制御部11は、グループ毎に、対応する生成モデル41を利用して、データ50を生成する。ステップS202では、制御部11は、グループ毎に、対応する生成モデル41により生成されたデータ50を各学習装置2に送信することで、各識別モデル40にデータ50に対する識別を実行させる。ステップS203では、制御部11は、グループ毎に、各識別モデル40による識別の結果51を各学習装置2から受信する。ステップS204では、制御部11は、グループ毎に、受信された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させるようなデータを生成するように対応する生成モデル41を訓練する。そして、ステップS205では、制御部11は、グループ毎に、機械学習により構築された学習済みの生成モデル41に関する情報を所定の記憶領域に保存する。
グルーピングの方法は、実施の形態に応じて適宜決定されてよい。本実施形態では、制御部11は、以下の2つの方法のちのいずれかの方法により、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。
(A)第1のグルーピング方法
まず、図12を用いて、第1のグルーピング方法の一例について説明する。図12は、第1のグルーピング方法による各学習装置2に対するグループの割り当てに関する処理手順の一例を示すフローチャートである。第1のグルーピング方法では、制御部11は、グループのリストから所望のグループを各学習装置2に選択させることで、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。
まず、図12を用いて、第1のグルーピング方法の一例について説明する。図12は、第1のグルーピング方法による各学習装置2に対するグループの割り当てに関する処理手順の一例を示すフローチャートである。第1のグルーピング方法では、制御部11は、グループのリストから所望のグループを各学習装置2に選択させることで、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。
なお、各学習装置2をグループに割り当てる方法として第1のグルーピング方法が採用された場合、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てることは、以下のステップS701~ステップS703の処理により構成される。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
ステップS701では、制御部11は、複数のグループを示すグループリスト123を各学習装置2に配信する。これにより、制御部11は、各学習装置2に対して、グループリスト123に示される複数のグループの中から1つ以上のグループを選択させる。グループリスト123に含まれる各グループは、ローカル学習データ3、学習装置2、学習装置2の利用者等の属性に応じて設定されていてもよい。例えば、外観検査の例では、ライン番号、工場名、企業名等の属性に応じてグループが設定されていてもよい。また、各学習装置2からの要求により、グループリスト123に新たなグループが設定されてもよい。各学習装置2のオペレータは、出力装置25に出力されたグループリスト123を参照し、入力装置24を操作して、グループリスト123の中から1つ以上のグループを選択することができる。また、オペレータは、入力装置24を操作して、グループリスト123に新たなグループを追加することができる。各学習装置2は、2つ以上のグループを選択してもよい。各学習装置2の制御部21は、この操作に応じて、グループ選択の回答をモデル生成装置1に返信する。
ステップS702では、制御部11は、この選択の回答を各学習装置2から取得する。そして、ステップS703では、制御部11は、取得された回答に基づいて、選択された1つ以上のグループに各学習装置2を割り当てる。1つ以上のグループの割り当てが完了すると、制御部11は、第1のグルーピング方法によるグループの割り当てに関する一連の処理を終了する。この第1のグルーピング方法によれば、制御部11は、簡易な方法により各学習装置2をグループ分けすることができる。
(B)第2のグルーピング方法
次に、図13を用いて、第2のグルーピング方法の一例について説明する。図13は、第2のグルーピング方法による各学習装置2に対するグループの割り当てに関する処理手順の一例を示すフローチャートである。第2のグルーピング方法では、制御部11は、ローカル学習データ3の属性に応じて、各学習装置2を適切なグループに割り当てる。
次に、図13を用いて、第2のグルーピング方法の一例について説明する。図13は、第2のグルーピング方法による各学習装置2に対するグループの割り当てに関する処理手順の一例を示すフローチャートである。第2のグルーピング方法では、制御部11は、ローカル学習データ3の属性に応じて、各学習装置2を適切なグループに割り当てる。
なお、各学習装置2をグループに割り当てる方法として第2のグルーピング方法が採用された場合、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てることは、以下のステップS801~ステップS803の処理により構成される。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS801)
ステップS801では、制御部11は、ローカル学習データ3に関する属性データを各学習装置2から取得する。属性データを取得する方法は、上記ステップS203において識別の結果51を各学習装置2から取得する方法と同様であってよい。制御部11は、各学習装置2から属性データを直接的に又は間接的に取得してよい。
ステップS801では、制御部11は、ローカル学習データ3に関する属性データを各学習装置2から取得する。属性データを取得する方法は、上記ステップS203において識別の結果51を各学習装置2から取得する方法と同様であってよい。制御部11は、各学習装置2から属性データを直接的に又は間接的に取得してよい。
属性データは、ローカル学習データ3に関するあらゆる情報を含んでもよく、例えば、ローカル学習データ3に含まれるデータの種別を示す情報、データに表れる特徴を示す情報、データの利用目的を示す情報等を含んでもよい。データに表れる特徴は、当該データから推論可能なあらゆる要素を含んでよい。ローカル学習データ3が製品の写る画像データにより構成される場合、データに表れる特徴は、例えば、製品に含まれる欠陥の有無、製品に含まれる欠陥の種別等であってよい。また、データの利用目的は、実施の形態に応じて適宜決定されてよい。ローカル学習データ3に含まれるデータは、例えば、外観検査、栽培状況の監視等の所定の推論の学習に利用されてよい。属性データは、各学習装置2において、ステップS101により、ローカル学習データ3を収集する際に生成されてよい。属性データを取得すると、制御部11は、次のステップS802に処理を進める。
(ステップS802及びステップS803)
ステップS802では、制御部11は、各学習装置2から取得された属性データをクラスタリングする。クラスタリングの方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。クラスタリングには、k平均法(k-meansクラスタリング)等の公知の方法が採用されてよい。
ステップS802では、制御部11は、各学習装置2から取得された属性データをクラスタリングする。クラスタリングの方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。クラスタリングには、k平均法(k-meansクラスタリング)等の公知の方法が採用されてよい。
ステップS803では、制御部11は、クラスタリングの結果に基づいて、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。一例として、制御部11は、取得した属性データが同一のクラスに割り当てられた学習装置2を同一のグループに割り当てる。この場合、各グループは、属性データのクラスに応じて設定されてよい。また、制御部11は、クラスタリングの結果に基づいて、各学習装置2を2つ以上のグループに割り当ててもよい。
クラスタリングの結果に基づくグループの割り当てが完了すると、制御部11は、第2のグルーピング方法によるグループの割り当てに関する一連の処理を終了する。この第2のグルーピング方法によれば、制御部11は、ローカル学習データ3の属性に応じて、各学習装置2を適切なグループに割り当てることができる。
以上の2つの方法の少なくともいずれかの方法を採用することで、制御部11は、各学習装置2を適切にグループ分けすることができる。ただし、グルーピングの方法は、これらの例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、入力装置14を介したオペレータによるグループ分けの指定を受け付けてもよい。この場合、制御部11は、オペレータの指定に応じて各学習装置2のグループ分けを行ってもよい。
[特徴]
以上のとおり、本実施形態に係るモデル生成装置1は、ステップS204により生成モデル41の機械学習を実施するために、ステップS203において、ローカル学習データ3そのものを収集するのではなく、各識別モデル40の識別の結果51を収集する。これにより、モデル生成装置1にかかる通信コストを抑えることができる。また、ローカル学習データ3そのものを生成モデル41の機械学習に使用しなくてもよいため、ステップS203において、モデル生成装置1にかかる計算コストを抑えることができる。更に、ローカル学習データ3そのものをモデル生成装置1に集結せずに済むため、ローカル学習データ3の内容が直接的に明らかになるのを防ぐことができる。よって、ローカル学習データ3の秘匿性をある程度は担保することができる。
以上のとおり、本実施形態に係るモデル生成装置1は、ステップS204により生成モデル41の機械学習を実施するために、ステップS203において、ローカル学習データ3そのものを収集するのではなく、各識別モデル40の識別の結果51を収集する。これにより、モデル生成装置1にかかる通信コストを抑えることができる。また、ローカル学習データ3そのものを生成モデル41の機械学習に使用しなくてもよいため、ステップS203において、モデル生成装置1にかかる計算コストを抑えることができる。更に、ローカル学習データ3そのものをモデル生成装置1に集結せずに済むため、ローカル学習データ3の内容が直接的に明らかになるのを防ぐことができる。よって、ローカル学習データ3の秘匿性をある程度は担保することができる。
加えて、本実施形態では、ステップS204において、生成モデル41は、収集された識別の結果51を使用した機械学習により、複数の識別モデル40のうちの少なくともいずれか一つの識別モデル40の識別性能を低下させるようなデータを生成するように訓練される。つまり、当該機械学習により、生成モデル41は、少なくともいずれか一つの識別モデル40の識別を誤らせるようなデータを生成するように訓練される。これにより、各識別モデル40の機械学習に使用されたローカル学習データ3のいずれかの分布に従ったデータを生成可能な生成モデル41を構築することができる。そのため、学習済みの生成モデル41は、各識別モデル40の機械学習に使用されたローカル学習データ3の論理和の分布に従ったデータを生成することができる。つまり、各学習装置2により収集されるローカル学習データ3の分布が異なっていても、学習済みの生成モデル41は、各分布に含まれ得るデータを生成することができる。したがって、本実施形態によれば、多様なデータを生成可能な生成モデル41を構築することができる。
なお、構築された学習済みの生成モデル41は、推論用学習データの件数、本実施形態では、推論に利用するデータ群225を構成するデータ2251の件数を増やすのに利用されてよい。本実施形態により構築された生成モデル41によれば、各学習装置2で収集されたローカル学習データ3の分布に含まれ得るデータを生成することができる。そのため、各学習装置2単独では収集するのが困難であるが、他の学習装置2では得られるようなデータを生成モデル41により得ることができる。そのため、データ群225に含まれるデータ2251の件数を増やすだけでなく、データ2251のバリエーションを豊富にすることができ、これによって、ステップS302における推論の精度を高めることができる。
[実施例]
上記効果を検証するために、実施例及び比較例に係る生成モデルを構築した。ただし、本発明は、以下の実施例に限定されるものではない。
上記効果を検証するために、実施例及び比較例に係る生成モデルを構築した。ただし、本発明は、以下の実施例に限定されるものではない。
<条件>
・ローカル学習データの件数:3件
・ローカル学習データを構成するデータ:(v,w)で与えられる2次元の数値データ
-第1ローカル学習データ:(v,w)の平均(-0.67,0.5)、標準偏差0.3の正規分布からランダムサンプリングされた数値
-第2ローカル学習データ:(v,w)の平均(0.67,0.5)、標準偏差0.3の正規分布からランダムサンプリングされた数値
-第3ローカル学習データ:(v,w)の平均(0,-1)、標準偏差0.3の正規分布からランダムサンプリングされた数値
・ローカル学習データを構成するデータの件数:30000(10000サンプル×3ローカル分)件
・識別モデル:4層構造のニューラルネットワーク、ローカル学習データ毎に用意
・生成モデル:4層構造のニューラルネットワーク
・識別モデル及び生成モデルの機械学習の繰り返し回数:5000回
生成モデルは、200次元の入力層、128次元の全結合層、128次元の全結合層、及び2次元の全結合層を備える。識別モデルは、2次元の入力層、128次元の全結合層、128次元の全結合層、及び1次元の全結合層を備える。
・ローカル学習データの件数:3件
・ローカル学習データを構成するデータ:(v,w)で与えられる2次元の数値データ
-第1ローカル学習データ:(v,w)の平均(-0.67,0.5)、標準偏差0.3の正規分布からランダムサンプリングされた数値
-第2ローカル学習データ:(v,w)の平均(0.67,0.5)、標準偏差0.3の正規分布からランダムサンプリングされた数値
-第3ローカル学習データ:(v,w)の平均(0,-1)、標準偏差0.3の正規分布からランダムサンプリングされた数値
・ローカル学習データを構成するデータの件数:30000(10000サンプル×3ローカル分)件
・識別モデル:4層構造のニューラルネットワーク、ローカル学習データ毎に用意
・生成モデル:4層構造のニューラルネットワーク
・識別モデル及び生成モデルの機械学習の繰り返し回数:5000回
生成モデルは、200次元の入力層、128次元の全結合層、128次元の全結合層、及び2次元の全結合層を備える。識別モデルは、2次元の入力層、128次元の全結合層、128次元の全結合層、及び1次元の全結合層を備える。
図14は、各ローカル学習データS1~S3を示す。3件のローカル学習データS1~S3に対応して3つの識別モデルを用意した。与えられたデータが第1ローカル学習データS1由来か生成モデル由来かを識別するように第1識別モデルを訓練した。与えられたデータが第2ローカル学習データS2由来か生成モデル由来かを識別するように第2識別モデルを訓練した。与えられたデータが第3ローカル学習データS3由来か生成モデル由来かを識別するように第3識別モデルを訓練した。
実施例では、上記実施形態の処理手順のとおり、3つの識別モデルのうちの少なくともいずれか一つの識別性能を低下させるようなデータを生成するように生成モデルを訓練した。比較例では、平均二乗誤差により誤差を計算し、3つの識別モデル全ての識別性能を低下させるようなデータを生成するように生成モデルを訓練した。この学習方法の点以外、比較例の処理手順は、実施例と同じに設定した。そして、実施例及び比較例それぞれにより得られた各生成モデルに、ガウス分布から抽出されたノイズを与えて、2次元の数値データを生成した。
図15Aは、比較例の学習方法により得られた生成モデルにより生成された数値データを示す。図15Bは、実施例の学習方法により得られた生成モデルにより生成された数値データを示す。図15A及び図15Bでは、四角の点が、ローカル学習データS1~S3を構成する数値データを示し、黒丸の点が、生成された数値データを示す。上記条件のとおり、数値データの分布が重複しないように3件のローカル学習データS1~S3を用意した。その結果、図15Aに示されるとおり、比較例の学習方法では、生成モデルは、どのローカル学習データS1~S3にも属さない数値データを生成するように訓練された。一方、図15Bに示されるとおり、実施例の学習方法では、生成モデルは、各件のローカル学習データS1~S3に属し得る数値データを生成するように訓練された。
以上の検証結果から、全ての識別モデルの識別性能を低下させるようなデータを生成するように生成モデルを訓練した場合、構築される学習済みの生成モデルにより生成可能なデータは、非常に限られたものになってしまうことが分かった。特に、ローカル学習データの分布が重複しないようなケースでは、生成モデルは、どの分布にも含まれないようなデータを生成するように構築されてしまい、構築された生成モデルでは、ローカル学習データの分布に含まれ得るデータを生成することはできないことが分かった。つまり、比較例の学習方法により構築された生成モデルでは、意図したデータを生成することができず、有用なデータを得ることができないことが分かった。一方、本実施形態の学習方法によれば、各件のローカル学習データが不均一であり、ローカル学習データの分布が重複しないようなケースであっても、生成モデルは、各件のローカル学習データの論理和の分布に従ったデータを生成する能力を習得することができることが分かった。そのため、本実施形態によれば、各件のローカル学習データの分布に含まれ得る多様なデータを生成可能な生成モデルを構築することができることが分かった。つまり、本実施形態によれば、構築された生成モデルにより、有用なデータを得られることが検証できた。
§4 変形例
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
<4.1>
上記実施形態に係るモデル生成装置1は、センサSにより得られたセンシングデータに含まれる特徴を推論する場面に適用されている。しかしながら、上記実施形態の適用範囲は、このような例に限定される訳ではない。上記実施形態に係るモデル生成装置1は、所定のデータ、特に、所定の推論の学習に利用可能なデータを生成するあらゆる場面に適用可能である。以下、適用場面を限定した5つの変形例を例示する。
上記実施形態に係るモデル生成装置1は、センサSにより得られたセンシングデータに含まれる特徴を推論する場面に適用されている。しかしながら、上記実施形態の適用範囲は、このような例に限定される訳ではない。上記実施形態に係るモデル生成装置1は、所定のデータ、特に、所定の推論の学習に利用可能なデータを生成するあらゆる場面に適用可能である。以下、適用場面を限定した5つの変形例を例示する。
(A)外観検査の場面
図16は、第1変形例に係る検査システム100Aの適用場面の一例を模式的に例示する。本変形例は、生産ラインで生産される製品RAの状態を推定するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図16に示されるとおり、本変形例に係る検査システム100Aは、モデル生成装置1及び複数の検査装置2Aを備えている。上記実施形態と同様に、モデル生成装置1及び各検査装置2Aは、ネットワークを介して互いに接続されてよい。
図16は、第1変形例に係る検査システム100Aの適用場面の一例を模式的に例示する。本変形例は、生産ラインで生産される製品RAの状態を推定するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図16に示されるとおり、本変形例に係る検査システム100Aは、モデル生成装置1及び複数の検査装置2Aを備えている。上記実施形態と同様に、モデル生成装置1及び各検査装置2Aは、ネットワークを介して互いに接続されてよい。
各検査装置2Aは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各検査装置2Aは、上記各学習装置2と同様に構成されてよい。本変形例では、各検査装置2Aは、カメラSAに接続される。各検査装置2Aは、カメラSAにより製品RAを撮影することにより、当該製品RAの写る画像データを取得する。カメラSAの種類は、特に限定されなくてもよい。カメラSAは、例えば、RGB画像を取得するよう構成された一般的なデジタルカメラ、深度画像を取得するように構成された深度カメラ、赤外線量を画像化するように構成された赤外線カメラ等であってよい。各検査装置2Aは、得られた画像データに基づいて、製品RAの状態を検査する(つまり、製品RAの良否を判定する)。
なお、本変形例では、製品RAの状態を推定するのに利用するデータとして、製品の写る画像データを採用する。しかしながら、製品RAの状態推定(良否判定)に利用可能なデータは、画像データに限られなくてもよい。例えば、画像データと共に又は代わりに、マイクにより得られた音データ、エンコーダにより得られた測定データ等が状態推定に利用されてもよい。
<検査装置のハードウェア構成>
図17は、本変形例に係る各検査装置2Aのハードウェア構成の一例を模式的に例示する。図17に示されるとおり、本変形例に係る各検査装置2Aは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各検査装置2Aは、外部インタフェース27を介してカメラSAに接続される。ただし、各検査装置2Aのハードウェア構成は、このような例に限定されなくてもよい。各検査装置2Aの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各検査装置2Aは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、PLC(programmable logic controller)等であってもよい。
図17は、本変形例に係る各検査装置2Aのハードウェア構成の一例を模式的に例示する。図17に示されるとおり、本変形例に係る各検査装置2Aは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各検査装置2Aは、外部インタフェース27を介してカメラSAに接続される。ただし、各検査装置2Aのハードウェア構成は、このような例に限定されなくてもよい。各検査装置2Aの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各検査装置2Aは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、PLC(programmable logic controller)等であってもよい。
本変形例に係る各検査装置2Aの記憶部22は、学習プログラム82A、検査プログラム83A、ローカル学習データ3A、学習結果データ221A等の各種情報を記憶する。学習プログラム82A、検査プログラム83A、ローカル学習データ3A、及び学習結果データ221Aは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82A、検査プログラム83A、及びローカル学習データ3Aのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各検査装置2Aは、記憶媒体92から、学習プログラム82A、検査プログラム83A、及びローカル学習データ3Aのうちの少なくともいずれかを取得してもよい。
<学習処理>
図18Aは、本変形例に係る各検査装置2Aの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各検査装置2Aの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Aの実行により実現される。図18Aに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各検査装置2Aの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各検査装置2Aは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
図18Aは、本変形例に係る各検査装置2Aの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各検査装置2Aの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Aの実行により実現される。図18Aに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各検査装置2Aの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各検査装置2Aは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各検査装置2Aの制御部21は、学習データ収集部211Aとして動作し、識別モデル40Aの機械学習に利用するローカル学習データ3Aを収集する。本変形例では、識別モデル40Aは、上記実施形態に係る識別モデル40と同様に、ニューラルネットワークにより構成される。ローカル学習データ3Aは、製品の写る製品画像データ31により構成される。製品画像データ31は、データ2251に対応する。
ローカル学習データ3Aを生成する方法は、上記実施形態と同様に、実施の形態に応じて適宜選択されてよい。本変形例では、ローカル学習データ3Aは、カメラSAにより得られる画像データに写る製品RAの状態を推定するのに利用され得る。そのため、ローカル学習データ3Aを構成する製品画像データ31は、例えば、シミ、汚れ、傷等の欠陥を含む又は含まない製品RAをカメラにより様々な条件で撮影することで得られてよい。これにより、ローカル学習データ3Aが生成されてよい。
ステップS102では、制御部21は、学習処理部212として動作し、生成モデル41により生成されたデータを取得する。本変形例では、生成モデル41は、製品の写り得る画像データを生成するように構成される。モデル生成装置1の制御部11は、所定の確率分布からノイズを抽出し、抽出されたノイズを生成モデル41に入力して、生成モデル41の演算処理を実行する。これにより、制御部11は、生成モデルからの出力として、画像データを取得する。制御部21は、このようにして生成モデル41により生成された画像データを取得する。
ステップS103では、制御部21は、学習処理部212として動作し、ローカル学習データ3Aを使用した機械学習により、与えられた画像データがローカル学習データ3Aに含まれる製品画像データ31であるか否かを識別する能力を獲得した学習済みの識別モデル40Aを構築する。本変形例では、制御部21は、ローカル学習データ3A及び生成モデル41により生成された画像データを使用して、与えられた画像データがローカル学習データ3A由来か生成モデル41由来かを識別するように識別モデル40Aを訓練する。ステップS104では、制御部21は、保存処理部213として動作し、ステップS103の機械学習により構築された学習済みの識別モデル40Aの構造及び演算パラメータを示す情報を学習結果データ221Aとして生成する。そして、制御部21は、生成された学習結果データ221Aを所定の記憶領域に保存する。
<検査処理>
図18Bは、本変形例に係る各検査装置2Aの検査処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各検査装置2Aの検査処理に関するソフトウェア構成は、制御部21による検査プログラム83Aの実行により実現される。図18Bに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各検査装置2Aの検査処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各検査装置2Aは、上記各学習装置2と同様に、検査処理に関する一連の処理を実行する。
図18Bは、本変形例に係る各検査装置2Aの検査処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各検査装置2Aの検査処理に関するソフトウェア構成は、制御部21による検査プログラム83Aの実行により実現される。図18Bに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各検査装置2Aの検査処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各検査装置2Aは、上記各学習装置2と同様に、検査処理に関する一連の処理を実行する。
すなわち、ステップS301では、各検査装置2Aの制御部21は、対象データ取得部216として動作し、外観検査の対象となる製品RAの写る対象画像データ223AをカメラSAから取得する。
ステップS302では、制御部21は、検査部217Aとして動作し、製品RAの状態を判定するための推論用学習データとして収集されたデータ群225Aを取得する。本変形例では、データ群225Aは、複数件の製品画像データ2251Aにより構成される。各件の製品画像データ2251Aは、欠陥を含む又は含まない製品の写る画像データであってよい。データ群225Aは、欠陥を含む製品の画像データ群及び欠陥を含まない製品の画像データ群のいずれかで構成されてもよいし、両方により構成されてもよい。また、上記実施形態と同様に、データ群225Aに含まれる各件の製品画像データ2251Aは、例えば、ローカル学習データ3Aに含まれる製品画像データ31、本変形例における生成モデル41により生成された画像データ等であってよい。制御部21は、学習済みの生成モデル41を利用して生成されたデータを製品画像データ2251Aとして取得してもよい。学習済みの生成モデル41によるデータの生成は、各検査装置2Aにより実行されてもよいし、他のコンピュータにより実行されてもよい。これにより、制御部21は、学習済みの生成モデル41を利用して生成されたデータを含むデータ群225Aを取得してもよい。
次に、制御部21は、データ群225Aと対象画像データ223Aとの比較に基づいて、対象画像データ223Aに写る製品RAの状態(良否)を判定する。制御部21は、上記実施形態と同様の方法で、データ群225Aを構成する製品画像データ2251Aと対象画像データ223Aとを比較することにより、対象画像データ223Aに写る製品RAの状態を推定、すなわち、製品RAに欠陥が含まれるか否かを判定することができる。
なお、データ群225Aに含まれる製品画像データ2251Aの件数が不足している場合、制御部21は、製品画像データ2251Aを適宜ローカル学習データ3Aに指定し、指定されたローカル学習データ3Aについての生成モデル41を構築するようにモデル生成装置1に要求してもよい。そして、制御部21は、これにより構築された学習済みの生成モデル41を利用して、製品RAの写り得る新たな画像データを生成し、生成された新たな画像データを製品画像データ2251Aとしてデータ群225Aに加えてよい。これにより、制御部21は、データ群225Aに含まれる製品画像データ2251Aの件数を増加させてもよい。
ステップS303では、制御部21は、出力部218として動作し、製品RAの状態を推定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、製品RAの状態を判定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、製品RAに欠陥が含まれる場合に、そのことを知らせるための警告を出力装置25に出力してもよい。また、例えば、各検査装置2Aが製品RAを搬送するコンベア装置(不図示)に接続される場合に、製品RAの状態を判定した結果に基づいて、欠陥のない製品RAと欠陥のある製品RAとを別のラインで搬送されるようにコンベア装置を制御してもよい。
<モデル生成>
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Aを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Aを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
すなわち、ステップS201では、モデル生成装置1の制御部11は、生成モデル41を用いて、画像データを生成する。ステップS202では、制御部11は、生成された画像データを各識別モデル40Aに送信して、生成された画像データに対する識別を各識別モデル40Aに実行させる。ステップS203では、制御部11は、送信された画像データに対する各識別モデル40Aによる識別の結果を受信する。本変形例では、制御部11は、各検査装置2Aに画像データを送信することで、画像データに対する識別を各識別モデル40Aに実行させる。そして、制御部11は、各検査装置2Aから各識別モデル40Aによる識別の結果を取得する。
ステップS204では、制御部11は、受信された識別の結果を利用した機械学習により、複数の識別モデル40Aのうちの少なくともいずれか一つの識別モデル40Aの識別性能を低下させるような画像データを生成するように生成モデル41を訓練する。ステップS205では、制御部11は、ステップS204の機械学習により構築された学習済みの生成モデル41の構造及び演算パラメータを示す情報を学習結果データ121として生成する。そして、制御部11は、生成された学習結果データ121を所定の記憶領域に保存する。
本変形例によれば、生産ラインで生産される製品RAの状態を検査する場面において、その検査に利用可能でかつ多様な画像データを生成可能な生成モデル41を構築することができる。この生成モデル41を利用することで、検査に利用するデータ群225Aを構成する製品画像データ2251Aの件数を増やすことができる。本変形例では、この生成モデル41により、各検査装置2A単独では収集するのが困難であるが、他の検査装置2Aでは得られている製品画像データを生成することができる。これにより、データ群225Aに含まれる製品画像データ2251Aの件数を増やすだけでなく、製品画像データ2251Aのバリエーションを豊富にすることができる。つまり、ある現場では経験のない欠陥が他の現場で発生していたと想定する。この場合に、他の現場で得られたローカル学習データ3Aが生成モデル41の機械学習に反映されていれば、この生成モデル41により、その欠陥を含む製品RAの写る画像データを生成することができる。よって、この画像データをデータ群225Aに追加することで、製品画像データ2251Aのバリエーションを豊富にすることができる。したがって、本変形例によれば、ステップS302における検査の精度を高めることができる。例えば、その現場ではまだ経験のない欠陥を発見することができる。
(B)栽培状況を監視する場面
図19は、第2変形例に係る監視システム100Bの適用場面の一例を模式的に例示する。本変形例は、植物GBの栽培状況を推定するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図19に示されるとおり、本変形例に係る監視システム100Bは、モデル生成装置1及び複数の監視装置2Bを備えている。上記実施形態と同様に、モデル生成装置1及び各監視装置2Bは、ネットワークを介して互いに接続されてよい。
図19は、第2変形例に係る監視システム100Bの適用場面の一例を模式的に例示する。本変形例は、植物GBの栽培状況を推定するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図19に示されるとおり、本変形例に係る監視システム100Bは、モデル生成装置1及び複数の監視装置2Bを備えている。上記実施形態と同様に、モデル生成装置1及び各監視装置2Bは、ネットワークを介して互いに接続されてよい。
各監視装置2Bは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各監視装置2Bは、上記各学習装置2と同様に構成されてよい。本変形例では、各監視装置2Bは、センサSBに接続され、植物GBの栽培状況を監視可能に構成される。また、本変形例では、各監視装置2Bは、栽培装置RBに接続され、植物GBの栽培状況に応じて栽培装置RBの動作を制御可能に構成される。
栽培装置RBは、植物GBの生育環境を制御して、植物GBを栽培するように構成される。栽培装置RBは、植物GBの生育環境を制御可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。生育環境は、植物GBを生育する状況に関し、例えば、植物GBに光を照射する時間、植物GB周囲の温度、植物GBに与える水の量等である。栽培装置RBは、例えば、カーテン装置、照明装置、空調設備、散水装置等であってよい。カーテン装置は、建物の窓に取り付けられたカーテンを開閉するように構成される。照明装置は、例えば、LED(light emitting diode)照明、蛍光灯等である。空調設備は、例えば、エアコンディショナ等である。散水装置は、例えば、スプリンクラ等である。カーテン装置及び照明装置は、植物GBに光を照射する時間を制御するために利用される。空調設備は、植物GB周囲の温度を制御するために利用される。散水装置は、植物GBに与える水の量を制御するために利用される。
各監視装置2Bは、センサSBにより植物GBの栽培状況をセンシングすることにより、植物GBの栽培状況に関する状況データとしてセンシングデータをセンサSBから取得する。栽培状況は、植物GBを栽培するあらゆる要素に関し、例えば、栽培時点までの生育環境、生育状態等により特定されてよい。生育状態は、例えば、植物GBの成長度等により規定されてよい。センサSBは、植物GBの栽培状況をセンシング可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。センサSBは、例えば、光度計、温度計、湿度計、カメラ等であってよい。カメラは、例えば、一般的なカメラ、深度カメラ、赤外線カメラ等であってよい。各監視装置2Bは、得られた状況データに基づいて、植物GBの栽培状況を推定し、推定された栽培状況に適した生育環境を実現するように栽培装置RBの動作を制御する。ただし、各監視装置2Bの構成は、このような例に限定されなくてよい。各監視装置2Bは、栽培装置RBに接続されておらず、栽培装置RBの動作を制御可能に構成されていなくてもよい。
<監視装置のハードウェア構成>
図20は、本変形例に係る各監視装置2Bのハードウェア構成の一例を模式的に例示する。図20に示されるとおり、本変形例に係る各監視装置2Bは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各監視装置2Bは、外部インタフェース27を介して栽培装置RB及びセンサSBに接続される。ただし、各監視装置2Bのハードウェア構成は、このような例に限定されなくてもよい。各監視装置2Bの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各監視装置2Bは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、PLC等であってもよい。
図20は、本変形例に係る各監視装置2Bのハードウェア構成の一例を模式的に例示する。図20に示されるとおり、本変形例に係る各監視装置2Bは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各監視装置2Bは、外部インタフェース27を介して栽培装置RB及びセンサSBに接続される。ただし、各監視装置2Bのハードウェア構成は、このような例に限定されなくてもよい。各監視装置2Bの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各監視装置2Bは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、PLC等であってもよい。
本変形例に係る各監視装置2Bの記憶部22は、学習プログラム82B、監視プログラム83B、ローカル学習データ3B、学習結果データ221B等の各種情報を記憶する。学習プログラム82B、監視プログラム83B、ローカル学習データ3B、及び学習結果データ221Bは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82B、監視プログラム83B、及びローカル学習データ3Bのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各監視装置2Bは、記憶媒体92から、学習プログラム82B、監視プログラム83B、及びローカル学習データ3Bのうちの少なくともいずれかを取得してもよい。
<学習処理>
図21Aは、本変形例に係る各監視装置2Bの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Bの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Bの実行により実現される。図21Aに示されるとおり、取り扱うデータがセンシングデータから植物GBの栽培状況に関する状況データに置き換わる点を除き、各監視装置2Bの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各監視装置2Bは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
図21Aは、本変形例に係る各監視装置2Bの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Bの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Bの実行により実現される。図21Aに示されるとおり、取り扱うデータがセンシングデータから植物GBの栽培状況に関する状況データに置き換わる点を除き、各監視装置2Bの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各監視装置2Bは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各監視装置2Bの制御部21は、推論用学習データ収集部211Bとして動作し、識別モデル40Bの機械学習に利用するローカル学習データ3Bを収集する。本変形例では、識別モデル40Bは、上記実施形態に係る識別モデル40と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Bは、植物GBの栽培状況に関する状況データ32により構成される。状況データ32は、データ2251に対応する。
ローカル学習データ3Bを生成する方法は、上記実施形態と同様に、実施の形態に応じて適宜選択されてよい。本変形例では、ローカル学習データ3Bは、植物GBの栽培状況を推定するのに利用され得る。そのため、ローカル学習データ3Bを構成する状況データ32は、植物GBの栽培状況をセンサにより様々な条件でセンシングすることで得られてよい。これにより、ローカル学習データ3Bが生成されてよい。
ステップS102では、制御部21は、学習処理部212として動作し、生成モデル41により生成されたデータを取得する。本変形例では、生成モデル41は、植物GBの栽培状況に関する疑似的な状況データ(以下、「疑似状況データ」とも記載する)を生成するように構成される。モデル生成装置1の制御部11は、所定の確率分布からノイズを抽出し、抽出されたノイズを生成モデル41に入力して、生成モデル41の演算処理を実行する。これにより、制御部11は、生成モデルからの出力として、疑似状況データを取得する。制御部21は、このようにして生成モデル41により生成された疑似状況データを取得する。
ステップS103では、制御部21は、学習処理部212として動作し、ローカル学習データ3Bを使用した機械学習により、与えられたデータがローカル学習データ3Bに含まれる状況データ32であるか否かを識別する能力を獲得した学習済みの識別モデル40Bを構築する。本変形例では、制御部21は、ローカル学習データ3B及び生成モデル41により生成された疑似状況データを使用して、与えられたデータがローカル学習データ3B由来か生成モデル41由来かを識別するように識別モデル40Bを訓練する。ステップS104では、制御部21は、保存処理部213として動作し、ステップS103の機械学習により構築された学習済みの識別モデル40Bの構造及び演算パラメータを示す情報を学習結果データ221Bとして生成する。そして、制御部21は、生成された学習結果データ221Bを所定の記憶領域に保存する。
<監視処理>
図21Bは、本変形例に係る各監視装置2Bの監視処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Bの監視処理に関するソフトウェア構成は、制御部21による監視プログラム83Bの実行により実現される。図21Bに示されるとおり、取り扱うデータがセンシングデータから状況データに置き換わる点を除き、各監視装置2Bの監視処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各監視装置2Bは、上記各学習装置2と同様に、監視処理に関する一連の処理を実行する。
図21Bは、本変形例に係る各監視装置2Bの監視処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Bの監視処理に関するソフトウェア構成は、制御部21による監視プログラム83Bの実行により実現される。図21Bに示されるとおり、取り扱うデータがセンシングデータから状況データに置き換わる点を除き、各監視装置2Bの監視処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各監視装置2Bは、上記各学習装置2と同様に、監視処理に関する一連の処理を実行する。
すなわち、ステップS301では、各監視装置2Bの制御部21は、対象データ取得部216として動作し、栽培状況を監視する対象となる植物GBの栽培状況に関する対象状況データ223BをセンサSBから取得する。
ステップS302では、制御部21は、監視部217Bとして動作し、栽培状況を推定するための推論用学習データとして収集されたデータ群225Bを取得する。本変形例では、データ群225Bは、複数件の状況データ2251Bにより構成される。各件の状況データ2251Bは、植物GBの特定の栽培状況に関するものであってよい。また、上記実施形態と同様に、データ群225Bに含まれる各件の状況データ2251Bは、例えば、ローカル学習データ3Bに含まれる状況データ32、本変形例における生成モデル41により生成された状況データ等であってよい。制御部21は、学習済みの生成モデル41を利用して生成されたデータを状況データ2251Bとして取得してもよい。学習済みの生成モデル41によるデータの生成は、各監視装置2Bにより実行されてもよいし、他のコンピュータにより実行されてもよい。これにより、制御部21は、学習済みの生成モデル41を利用して生成されたデータを含むデータ群225Bを取得してもよい。
次に、制御部21は、データ群225Bと対象状況データ223Bとの比較に基づいて、対象状況データ223Bから植物GBの栽培状況を推定する。制御部21は、上記実施形態と同様の方法で、データ群225Bを構成する状況データ2251Bと対象状況データ223Bとを比較することにより、対象状況データ223Bから植物GBの栽培状況を推定する。
なお、データ群225Bに含まれる状況データ2251Bの件数が不足している場合、制御部21は、状況データ2251Bを適宜ローカル学習データ3Bに指定し、指定されたローカル学習データ3Bについての生成モデル41を構築するようにモデル生成装置1に要求してもよい。そして、制御部21は、これにより構築された学習済みの生成モデル41を利用して、植物GBの栽培状況に関し得る新たな状況データを生成し、生成された新たな状況データを状況データ2251Bとしてデータ群225Bに加えてよい。これにより、制御部21は、データ群225Bに含まれる状況データ2251Bの件数を増加させてもよい。
ステップS303では、制御部21は、出力部218として動作し、植物GBの栽培状況を推定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、植物GBの栽培状況を推定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、推定された栽培状況に応じて、栽培装置RBに与える制御指令を決定してもよい。栽培状況と制御指令との対応関係はテーブル形式等の参照情報により与えられてもよい。この参照情報は、記憶部22、記憶媒体92、外部記憶装置等に格納されていてもよく、制御部21は、この参照情報を参照することで、推定した栽培状況に応じて制御指令を決定してもよい。そして、制御部21は、決定された制御指令を栽培装置RBに与えることで、栽培装置RBの動作を制御してもよい。また、例えば、制御部21は、決定された制御指令を示す情報を出力装置25に出力し、植物GBの管理者に栽培装置RBの動作を制御するように促してもよい。
<モデル生成>
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Bを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Bを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
すなわち、ステップS201では、モデル生成装置1の制御部11は、生成モデル41を用いて、疑似状況データを生成する。ステップS202では、制御部11は、生成された疑似状況データを各識別モデル40Bに送信して、生成された疑似状況データに対する識別を各識別モデル40Bに実行させる。ステップS203では、制御部11は、送信された疑似状況データに対する各識別モデル40Bによる識別の結果を受信する。本変形例では、制御部11は、各監視装置2Bに疑似状況データを送信することで、疑似状況データに対する識別を各識別モデル40Bに実行させる。そして、制御部11は、各監視装置2Bから各識別モデル40Bによる識別の結果を取得する。
ステップS204では、制御部11は、受信された識別の結果を利用した機械学習により、複数の識別モデル40Bのうちの少なくともいずれか一つの識別モデル40Bの識別性能を低下させるような状況データを生成するように生成モデル41を訓練する。ステップS205では、制御部11は、ステップS204の機械学習により構築された学習済みの生成モデル41の構造及び演算パラメータを示す情報を学習結果データ121として生成する。そして、制御部11は、生成された学習結果データ121を所定の記憶領域に保存する。
本変形例によれば、植物GBの栽培状況を監視する場面において、その監視に利用可能でかつ多様な状況データを生成可能な生成モデル41を構築することができる。この生成モデル41を利用することで、監視に利用するデータ群225Bを構成する状況データ2251Bの件数を増やすことができる。本変形例では、この生成モデル41により、各監視装置2B単独では収集するのが困難であるが、他の監視装置2Bでは得られている状況データを生成することができる。これにより、データ群225Bに含まれる状況データ2251Bの件数を増やすだけでなく、状況データ2251Bのバリエーションを豊富にすることができる。
例えば、温暖な気候の地域で植物GBの栽培状況を監視する監視装置2Bと、寒冷な気候の地域で植物GBの栽培状況を監視する他の監視装置2Bとが存在すると想定する。この場面では、温暖な気候の地域の監視装置2Bでは、寒冷な気候の地域で発生しやすい妻財状況の経験が殆どないと想定される。そのため、監視装置2B単独では、そのような経験に関する状況データを得るのが困難であるため、異常気象等により温暖な気候の地域で寒冷な気候の地域で発生するような栽培状況になった際に、監視装置2Bは、その栽培状況を適切に推定できない可能性がある。これに対して、本変形例によれば、他の監視装置2Bにおいてその栽培状況の経験があり、それにより得られたローカル学習データ3Bが生成モデル41の機械学習に反映されていれば、この生成モデル41により、その栽培状況に関する状況データを生成することができる。よって、この状況データをデータ群225Bに追加することで、状況データ2251Bのバリエーションを豊富にすることができる。したがって、本変形例によれば、ステップS302における栽培状況の推定精度を高めることができる。例えば、その現場でまだ経験のない栽培状況を推定することができる。これにより、推定された栽培状況に応じて栽培装置RBの動作を制御する場合には、栽培状況に適切なように栽培装置RBの動作を制御する精度を高めることができる。
(C)ドライバモニタリングの場面
図22は、第3変形例に係る監視システム100Cの適用場面の一例を模式的に例示する。本変形例は、車両を運転する運転者RCの状態を推定するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図22に示されるとおり、本変形例に係る監視システム100Cは、モデル生成装置1及び複数の監視装置2Cを備えている。上記実施形態と同様に、モデル生成装置1及び各監視装置2Cは、ネットワークを介して互いに接続されてよい。
図22は、第3変形例に係る監視システム100Cの適用場面の一例を模式的に例示する。本変形例は、車両を運転する運転者RCの状態を推定するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図22に示されるとおり、本変形例に係る監視システム100Cは、モデル生成装置1及び複数の監視装置2Cを備えている。上記実施形態と同様に、モデル生成装置1及び各監視装置2Cは、ネットワークを介して互いに接続されてよい。
各監視装置2Cは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各監視装置2Cは、上記各学習装置2と同様に構成されてよい。各監視装置2Cは、運転者RCを観測することで得られたデータに基づいて、当該運転者RCの状態を推定する。推定に利用するデータは、運転者RCの状態に関するものであれば、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。推定に利用するデータは、例えば、運転者RCのバイタルデータ、運転者RCの写り得る画像データ等であってよい。本変形例では、各監視装置2Cは、運転者RCを撮影可能に配置されたカメラSCに接続される。カメラSCは、例えば、一般的なカメラ、深度カメラ、赤外線カメラ等であってよい。各監視装置2Cは、カメラSCから得られた画像データに基づいて、運転者RCの状態を推定する。推定の対象となる運転者RCの状態は、実施の形態に応じて適宜決定されてよい。推定の対象となる運転者RCの状態は、実施の形態に応じて適宜決定されてよく、例えば、運転者RCの眠気の度合いを示す眠気度、運転者RCの疲労の度合いを示す疲労度、運転者RCの運転に対する余裕の度合いを示す余裕度、又はこれらの組み合わせを含んでもよい。
<監視装置のハードウェア構成>
図23は、本変形例に係る各監視装置2Cのハードウェア構成の一例を模式的に例示する。図23に示されるとおり、本変形例に係る各監視装置2Cは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各監視装置2Cは、外部インタフェース27を介してカメラSCに接続される。ただし、各監視装置2Cのハードウェア構成は、このような例に限定されなくてもよい。各監視装置2Cの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各監視装置2Cは、提供されるサービス専用に設計された情報処理装置の他、汎用のコンピュータ、スマートフォンを含む携帯電話、車載装置等であってもよい。
図23は、本変形例に係る各監視装置2Cのハードウェア構成の一例を模式的に例示する。図23に示されるとおり、本変形例に係る各監視装置2Cは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各監視装置2Cは、外部インタフェース27を介してカメラSCに接続される。ただし、各監視装置2Cのハードウェア構成は、このような例に限定されなくてもよい。各監視装置2Cの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各監視装置2Cは、提供されるサービス専用に設計された情報処理装置の他、汎用のコンピュータ、スマートフォンを含む携帯電話、車載装置等であってもよい。
本変形例に係る各監視装置2Cの記憶部22は、学習プログラム82C、監視プログラム83C、ローカル学習データ3C、学習結果データ221C等の各種情報を記憶する。学習プログラム82C、監視プログラム83C、ローカル学習データ3C、及び学習結果データ221Cは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82C、監視プログラム83C、及びローカル学習データ3Cのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各監視装置2Cは、記憶媒体92から、学習プログラム82C、監視プログラム83C、及びローカル学習データ3Cのうちの少なくともいずれかを取得してもよい。
<学習処理>
図24Aは、本変形例に係る各監視装置2Cの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Cの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Cの実行により実現される。図24Aに示されるとおり、取り扱うデータがセンシングデータから運転者RCの写り得る画像データに置き換わる点を除き、各監視装置2Cの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各監視装置2Cは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
図24Aは、本変形例に係る各監視装置2Cの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Cの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Cの実行により実現される。図24Aに示されるとおり、取り扱うデータがセンシングデータから運転者RCの写り得る画像データに置き換わる点を除き、各監視装置2Cの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各監視装置2Cは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各監視装置2Cの制御部21は、学習データ収集部211Cとして動作し、識別モデル40Cの機械学習に利用するローカル学習データ3Cを収集する。本変形例では、識別モデル40Cは、上記実施形態に係る識別モデル40と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Cは、運転者の写る画像データ33により構成される。画像データ33は、データ2251に対応する。
ローカル学習データ3Cを生成する方法は、上記実施形態と同様に、実施の形態に応じて適宜選択されてよい。本変形例では、ローカル学習データ3Cは、運転者RCの状態を推定するのに利用され得る。そのため、ローカル学習データ3Cを構成する画像データ33は、車両を運転する被験者(運転者)をカメラにより様々な状況で撮影することで得られてもよい。これにより、ローカル学習データ3Cが生成されてよい。
ステップS102では、制御部21は、学習処理部212として動作し、生成モデル41により生成されたデータを取得する。本変形例では、生成モデル41は、運転者の写り得る画像データを生成するように構成される。モデル生成装置1の制御部11は、所定の確率分布からノイズを抽出し、抽出されたノイズを生成モデル41に入力して、生成モデル41の演算処理を実行する。これにより、制御部11は、生成モデルからの出力として、画像データを取得する。制御部21は、このようにして生成モデル41により生成された画像データを取得する。
ステップS103では、制御部21は、学習処理部212として動作し、ローカル学習データ3Cを使用した機械学習により、与えられたデータがローカル学習データ3Cに含まれる画像データ33であるか否かを識別する能力を獲得した学習済みの識別モデル40Cを構築する。本変形例では、制御部21は、ローカル学習データ3C及び生成モデル41により生成された画像データを使用して、与えられた画像データがローカル学習データ3C由来か生成モデル41由来かを識別するように識別モデル40Cを訓練する。ステップS104では、制御部21は、保存処理部213として動作し、ステップS103の機械学習により構築された学習済みの識別モデル40Cの構造及び演算パラメータを示す情報を学習結果データ221Cとして生成する。そして、制御部21は、生成された学習結果データ221Cを所定の記憶領域に保存する。
<監視処理>
図24Bは、本変形例に係る各監視装置2Cの監視処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Cの監視処理に関するソフトウェア構成は、制御部21による監視プログラム83Cの実行により実現される。図24Bに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各監視装置2Cの監視処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各監視装置2Cは、上記各学習装置2と同様に、監視処理に関する一連の処理を実行する。
図24Bは、本変形例に係る各監視装置2Cの監視処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Cの監視処理に関するソフトウェア構成は、制御部21による監視プログラム83Cの実行により実現される。図24Bに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各監視装置2Cの監視処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各監視装置2Cは、上記各学習装置2と同様に、監視処理に関する一連の処理を実行する。
すなわち、ステップS301では、各監視装置2Cの制御部21は、対象データ取得部216として動作し、運転者RCの写り得る対象画像データ223CをカメラSCから取得する。
ステップS302では、制御部21は、監視部217Cとして動作し、運転者の状態を推定するための推論用学習データとして収集されたデータ群225C取得する。本変形例では、データ群225Cは、複数件の画像データ2251Cにより構成される。各件の画像データ2251Cは、運転者の特定の状態に関するものであってよい。また、上記実施形態と同様に、データ群225Cに含まれる各件の画像データ2251Cは、例えば、ローカル学習データ3Cに含まれる画像データ33、本変形例における生成モデル41により生成された画像データ等であってよい。制御部21は、学習済みの生成モデル41を利用して生成されたデータを画像データ2251Cとして取得してもよい。学習済みの生成モデル41によるデータの生成は、各監視装置2Cにより実行されてもよいし、他のコンピュータにより実行されてもよい。これにより、制御部21は、学習済みの生成モデル41を利用して生成されたデータを含むデータ群225Cを取得してもよい。
次に、制御部21は、データ群225Cと対象画像データ223Cとの比較に基づいて、対象画像データ223Cに写り得る運転者RCの状態を推定する。制御部21は、上記実施形態と同様の方法で、データ群225Cを構成する画像データ2251Cと対象画像データ223Cとを比較することにより、対象画像データ223Cに写る運転者RCの状態を推定する。
なお、データ群225Cに含まれる画像データ2251Cの件数が不足している場合、制御部21は、画像データ2251Cを適宜ローカル学習データ3Cに指定し、指定されたローカル学習データ3Cについての生成モデル41を構築するようにモデル生成装置1に要求してもよい。そして、制御部21は、これにより構築された学習済みの生成モデル41を利用して、運転者の写り得る新たな画像データを生成し、生成された新たな画像データを画像データ2251Cとしてデータ群225Cに加えてよい。これにより、制御部21は、データ群225Cに含まれる画像データ2251Cの件数を増加させてもよい。
ステップ303では、制御部21は、出力部218として動作し、運転者RCの状態を推定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、運転者RCの状態を推定した結果をそのまま出力装置25に出力してもよい。
また、例えば、制御部21は、運転者RCの状態に応じて、警告等の特定のメッセージを出力装置25に出力してもよい。一例として、運転者RCの状態として、眠気度及び疲労度の少なくとも一方を推定した場合、制御部21は、眠気度及び疲労度の少なくとも一方が閾値を超えるか否かを判定してもよい。閾値は適宜設定されてよい。そして、眠気度及び疲労度の少なくとも一方が閾値を超えている場合に、制御部21は、駐車場等に停車し、休憩を取るように運転者RCに促す警告を出力装置25に出力してもよい。
また、例えば、車両が自動運転動作可能に構成されている場合、制御部21は、運転者RCの状態を推定した結果に基づいて、車両の自動運転の動作を制御してもよい。一例として、車両が、システムにより車両の走行を制御する自動運転モード及び運転者RCの操舵により車両の走行を制御する手動運転モードの切り替えが可能に構成されていると想定する。
このケースにおいて、自動運転モードで車両が走行しており、自動運転モードから手動運転モードへの切り替えを運転者RC又はシステムから受け付けた際に、制御部21は、運転者RCの推定された余裕度が閾値を超えているか否かを判定してもよい。そして、運転者RCの余裕度が閾値を超えている場合に、制御部21は、自動運転モードから手動運転モードへの切り替えを許可してもよい。一方、運転者RCの余裕度が閾値以下である場合には、制御部21は、自動運転モードから手動運転モードへの切り替えを許可せず、自動運転モードでの走行を維持してもよい。
また、手動運転モードで車両が走行している際に、制御部21は、眠気度及び疲労度の少なくとも一方が閾値を超えるか否かを判定してもよい。そして、眠気度及び疲労度の少なくとも一方が閾値を超えている場合に、制御部21は、手動運転モードから自動運転モードに切り替えて、駐車場等の安全な場所に停車するように指示する指令を車両のシステムに送信してもよい。一方で、そうではない場合には、制御部21は、手動運転モードによる車両の走行を維持してもよい。
また、手動運転モードで車両が走行している際に、制御部21は、余裕度が閾値以下であるか否かを判定してもよい。そして、余裕度が閾値以下である場合に、制御部21は、減速する指令を車両のシステムに送信してもよい。一方で、そうではない場合には、制御部21は、運転者RCの操作による車両の走行を維持してもよい。
<モデル生成>
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Cを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Cを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
すなわち、ステップS201では、モデル生成装置1の制御部11は、生成モデル41を用いて、画像データを生成する。ステップS202では、制御部11は、生成された画像データを各識別モデル40Cに送信して、生成された画像データに対する識別を各識別モデル40Cに実行させる。ステップS203では、制御部11は、送信された画像データに対する各識別モデル40Cによる識別の結果を受信する。本変形例では、制御部11は、各監視装置2Cに画像データを送信することで、画像データに対する識別を各識別モデル40Cに実行させる。そして、制御部11は、各監視装置2Cから各識別モデル40Cによる識別の結果を取得する。
ステップS204では、制御部11は、受信された識別の結果を利用した機械学習により、複数の識別モデル40Cのうちの少なくともいずれか一つの識別モデル40Cの識別性能を低下させるような画像データを生成するように生成モデル41を訓練する。ステップS205では、制御部11は、ステップS204の機械学習により構築された学習済みの生成モデル41の構造及び演算パラメータを示す情報を学習結果データ121として生成する。そして、制御部11は、生成された学習結果データ121を所定の記憶領域に保存する。
本変形例によれば、運転者RCの状態を監視する場面において、その監視に利用可能でかつ多様な画像データを生成可能な生成モデル41を構築することができる。この生成モデル41を利用することで、監視に利用するデータ群225Cを構成する画像データ2251Cの件数を増やすことができる。本変形例では、この生成モデル41により、各監視装置2C単独では収集するのが困難であるが、他の監視装置2Cでは得られている特定の運転者RCの属性及び運転環境の表れる画像データを生成することができる。これにより、データ群225Cに含まれる画像データ2251Cの件数を増やすだけでなく、画像データ2251Cのバリエーションを豊富にすることができる。したがって、本変形例によれば、ステップS303における運転者RCの状態の推定精度を高めることができる。
(D)発電量予測の場面
図25は、第4変形例に係る予測システム100Dの適用場面の一例を模式的に例示する。本変形例は、発電設備RDにおける発電量の予測に利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図25に示されるとおり、本変形例に係る予測システム100Dは、モデル生成装置1及び複数の予測装置2Dを備えている。上記実施形態と同様に、モデル生成装置1及び各予測装置2Dは、ネットワークを介して互いに接続されてよい。
図25は、第4変形例に係る予測システム100Dの適用場面の一例を模式的に例示する。本変形例は、発電設備RDにおける発電量の予測に利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図25に示されるとおり、本変形例に係る予測システム100Dは、モデル生成装置1及び複数の予測装置2Dを備えている。上記実施形態と同様に、モデル生成装置1及び各予測装置2Dは、ネットワークを介して互いに接続されてよい。
各予測装置2Dは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各予測装置2Dは、上記各学習装置2と同様に構成されてよい。各予測装置2Dは、発電設備RDの発電に関連するデータに基づいて、当該発電設備RDにおける発電量を予測する。発電設備RDの種類は、特に限定されなくてもよく、例えば、太陽光の発電設備であってよい。発電量の予測に利用するデータは、発電設備RDの発電に関連し得るものであれば、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。本変形例では、発電設備RDは、太陽光の発電設備であり、各予測装置2Dは、気象データに基づいて、発電設備RDの発電量を予測する。
<予測装置のハードウェア構成>
図26は、本変形例に係る各予測装置2Dのハードウェア構成の一例を模式的に例示する。図26に示されるとおり、本変形例に係る各予測装置2Dは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。ただし、各予測装置2Dのハードウェア構成は、このような例に限定されなくてもよい。各予測装置2Dの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各予測装置2Dは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
図26は、本変形例に係る各予測装置2Dのハードウェア構成の一例を模式的に例示する。図26に示されるとおり、本変形例に係る各予測装置2Dは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。ただし、各予測装置2Dのハードウェア構成は、このような例に限定されなくてもよい。各予測装置2Dの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各予測装置2Dは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
本変形例に係る各予測装置2Dの記憶部22は、学習プログラム82D、予測プログラム83D、ローカル学習データ3D、学習結果データ221D等の各種情報を記憶する。学習プログラム82D、予測プログラム83D、ローカル学習データ3D、及び学習結果データ221Dは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82D、予測プログラム83D、及びローカル学習データ3Dのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各予測装置2Dは、記憶媒体92から、学習プログラム82D、予測プログラム83D、及びローカル学習データ3Dのうちの少なくともいずれかを取得してもよい。
<学習処理>
図27Aは、本変形例に係る各予測装置2Dの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各予測装置2Dの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Dの実行により実現される。図27Aに示されるとおり、取り扱うデータがセンシングデータから気象データに置き換わる点を除き、各予測装置2Dの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各予測装置2Dは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
図27Aは、本変形例に係る各予測装置2Dの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各予測装置2Dの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Dの実行により実現される。図27Aに示されるとおり、取り扱うデータがセンシングデータから気象データに置き換わる点を除き、各予測装置2Dの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各予測装置2Dは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各予測装置2Dの制御部21は、学習データ収集部211Dとして動作し、識別モデル40Dの機械学習に利用するローカル学習データ3Dを収集する。本変形例では、識別モデル40Dは、上記実施形態に係る識別モデル40と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Dは、気象データ34により構成される。気象データ34は、データ2251に対応する。気象データ34は、例えば、天候、気温、降水量、湿度、風量等を示すデータを含んでよい。
ローカル学習データ3Dを生成する方法は、上記実施形態と同様に、実施の形態に応じて適宜選択されてよい。本変形例では、ローカル学習データ3Dは、発電量を予測するのに利用され得る。そのため、ローカル学習データ3Dを構成する気象データ34は、発電設備RDの発電量と共に様々な気象条件で得られてよい。発電量は、例えば、発電設備RDのセンサ、オペレータの入力等により与えられてよい。これにより、ローカル学習データ3Dが生成されてよい。
ステップS102では、制御部21は、学習処理部212として動作し、生成モデル41により生成されたデータを取得する。本変形例では、生成モデル41は、疑似的な気象データ(以下、「疑似気象データ」とも記載する)を生成するように構成される。モデル生成装置1の制御部11は、所定の確率分布からノイズを抽出し、抽出されたノイズを生成モデル41に入力して、生成モデル41の演算処理を実行する。これにより、制御部11は、生成モデルからの出力として、疑似気象データを取得する。制御部21は、このようにして生成モデル41により生成された疑似気象データを取得する。
ステップS103では、制御部21は、学習処理部212として動作し、ローカル学習データ3Dを使用した機械学習により、与えられた気象データがローカル学習データ3Dに含まれる気象データ34であるか否かを識別する能力を獲得した学習済みの識別モデル40Dを構築する。本変形例では、制御部21は、ローカル学習データ3D及び生成モデル41により生成された疑似気象データを使用して、与えられた気象データがローカル学習データ3D由来か生成モデル41由来かを識別するように識別モデル40Dを訓練する。ステップS104では、制御部21は、保存処理部213として動作し、ステップS103の機械学習により構築された学習済みの識別モデル40Dの構造及び演算パラメータを示す情報を学習結果データ221Dとして生成する。そして、制御部21は、生成された学習結果データ221Dを所定の記憶領域に保存する。
<予測処理>
図27Bは、本変形例に係る各予測装置2Dの予測処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各予測装置2Dの予測処理に関するソフトウェア構成は、制御部21による予測プログラム83Dの実行により実現される。図27Bに示されるとおり、取り扱うデータがセンシングデータから気象データに置き換わる点を除き、各予測装置2Dの予測処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各予測装置2Dは、上記各学習装置2と同様に、予測処理に関する一連の処理を実行する。
図27Bは、本変形例に係る各予測装置2Dの予測処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各予測装置2Dの予測処理に関するソフトウェア構成は、制御部21による予測プログラム83Dの実行により実現される。図27Bに示されるとおり、取り扱うデータがセンシングデータから気象データに置き換わる点を除き、各予測装置2Dの予測処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各予測装置2Dは、上記各学習装置2と同様に、予測処理に関する一連の処理を実行する。
すなわち、ステップS301では、各予測装置2Dの制御部21は、対象データ取得部216として動作し、発電量を予測する対象となる発電設備RDにおける気象条件に関する対象気象データ223Dを取得する。対象気象データ223Dの取得先は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部21は、公知の気象データサーバから対象気象データ223Dを取得してもよい。また、例えば、各予測装置2Dが、発電設備RD周辺の気象条件を観測するセンサに接続される場合、制御部21は、当該センサから対象気象データ223Dを取得してもよい。
ステップS302では、制御部21は、予測部217Dとして動作し、発電量を予測するための推論用学習データとして収集されたデータ群225Dを取得する。本変形例では、データ群225Dは、複数件の気象データ2251Dにより構成される。各件の気象データ2251Dは、特定の発電量に応じて取得されてよい。データ群225Dに含まれる各件の気象データ2251Dは、例えば、ローカル学習データ3Dに含まれる気象データ34、本変形例における生成モデル41により生成された気象データ等であってよい。制御部21は、学習済みの生成モデル41を利用して生成されたデータを気象データ2251Dとして取得してもよい。学習済みの生成モデル41によるデータの生成は、各予測装置3Dにより実行されてもよいし、他のコンピュータにより実行されてもよい。これにより、制御部21は、学習済みの生成モデル41を利用して生成されたデータを含むデータ群225Dを取得することができる。
次に、制御部21は、データ群225Dと対象気象データ223Dとの比較に基づいて、対象気象データ223Dから発電量を予測する。制御部21は、上記実施形態と同様の方法で、データ群225Dを構成する気象データ2251Dと対象気象データ223Dとを比較することにより、対象気象データ223Dから発電量を予測する。
なお、データ群225Dに含まれる気象データ2251Dの件数が不足している場合、制御部21は、気象データ2251Dを適宜ローカル学習データ3Dに指定し、指定されたローカル学習データ3Dについての生成モデル41を構築するようにモデル生成装置1に要求してもよい。そして、制御部21は、これにより構築された学習済みの生成モデル41を利用して、特定の発電量に関し得る新たな気象データを生成し、生成された新たな気象データを気象データ2251Dとしてデータ群225Dに加えてよい。これにより、制御部21は、データ群225Dに含まれる気象データ2251Dの件数を増加させてもよい。
ステップ303では、制御部21は、出力部218として動作し、発電設備RDの発電量を予測した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、発電設備RDの発電量を予測した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、発電設備RDの発電量と閾値とを比較し、発電設備RDの発電量が閾値以下である場合に、他の発電設備により発電を行うことを促すメッセージを出力装置25に出力してもよい。閾値は適宜設定されてよい。
<モデル生成>
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Dを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Dを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
すなわち、ステップS201では、モデル生成装置1の制御部11は、生成モデル41を用いて、疑似気象データを生成する。ステップS202では、制御部11は、生成された疑似気象データを各識別モデル40Dに送信して、生成された疑似気象データに対する識別を各識別モデル40Dに実行させる。ステップS203では、制御部11は、送信された疑似気象データに対する各識別モデル40Dによる識別の結果を受信する。本変形例では、制御部11は、各予測装置2Dに疑似気象データを送信することで、疑似気象データに対する識別を各識別モデル40Dに実行させる。そして、制御部11は、各予測装置2Dから各識別モデル40Dによる識別の結果を取得する。
ステップS204では、制御部11は、受信された識別の結果を利用した機械学習により、複数の識別モデル40Dのうちの少なくともいずれか一つの識別モデル40Dの識別性能を低下させるような気象データを生成するように生成モデル41を訓練する。ステップS205では、制御部11は、ステップS204の機械学習により構築された学習済みの生成モデル41の構造及び演算パラメータを示す情報を学習結果データ121として生成する。そして、制御部11は、生成された学習結果データ121を所定の記憶領域に保存する。
本変形例によれば、発電設備RDにおける発電量の予測する場面において、その予測に利用可能でかつ多様な気象データを生成可能な生成モデル41を構築することができる。この生成モデル41を利用することで、予測に利用するデータ群225Dを構成する気象データ2251Dの件数を増やすことができる。本変形例では、この生成モデル41により、各予測装置2D単独では収集するのが困難であるが、他の予測装置2Dでは得られている特定の気象条件における発電設備RDの発電量に応じた気象データを生成することができる。これにより、データ群225Dに含まれる気象データ2251Dの件数を増やすだけでなく、気象データ2251Dのバリエーションを豊富にすることができる。したがって、本変形例によれば、ステップS303における発電量の予測精度を高めることができる。
(E)健康状態を診断する場面
図28は、第5変形例に係る診断システム100Eの適用場面の一例を模式的に例示する。本変形例は、対象者REの健康状態を推定(診断)するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図28に示されるとおり、本変形例に係る診断システム100Eは、モデル生成装置1及び複数の診断装置2Eを備えている。上記実施形態と同様に、モデル生成装置1及び各診断装置2Eは、ネットワークを介して互いに接続されてよい。
図28は、第5変形例に係る診断システム100Eの適用場面の一例を模式的に例示する。本変形例は、対象者REの健康状態を推定(診断)するのに利用可能なデータを生成する場面に上記実施形態に係るモデル生成装置1を適用した例である。図28に示されるとおり、本変形例に係る診断システム100Eは、モデル生成装置1及び複数の診断装置2Eを備えている。上記実施形態と同様に、モデル生成装置1及び各診断装置2Eは、ネットワークを介して互いに接続されてよい。
各診断装置2Eは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各診断装置2Eは、上記各学習装置2と同様に構成されてよい。各診断装置2Eは、対象者REの健康状態に関連するデータに基づいて、当該対象者REの健康状態を診断する。診断に利用するデータは、対象者REの健康状態に関連し得るものであれば、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。診断に利用するデータは、例えば、画像データ、バイタルデータ等であってよい。バイタルデータは、バイタルに関するものであり、例えば、体温、血圧、脈拍等の測定結果を示すデータであってよい。本変形例では、各診断装置2Eは、バイタルセンサSEに接続される。各診断装置2Eは、バイタルセンサSEから得られたバイタルデータに基づいて、対象者REの健康状態を診断する。推定の対象となる健康状態は、実施の形態に応じて適宜決定されてよく、例えば、健康であるか否か、病気になる予兆があるか否か等を含んでよい。
<診断装置のハードウェア構成>
図29は、本変形例に係る各診断装置2Eのハードウェア構成の一例を模式的に例示する。図29に示されるとおり、本変形例に係る各診断装置2Eは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各診断装置2Eは、外部インタフェース27を介してバイタルセンサSEに接続される。バイタルセンサSEは、例えば、体温計、血圧計、脈拍計等である。ただし、各診断装置2Eのハードウェア構成は、このような例に限定されなくてもよい。各診断装置2Eの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各診断装置2Eは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
図29は、本変形例に係る各診断装置2Eのハードウェア構成の一例を模式的に例示する。図29に示されるとおり、本変形例に係る各診断装置2Eは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各診断装置2Eは、外部インタフェース27を介してバイタルセンサSEに接続される。バイタルセンサSEは、例えば、体温計、血圧計、脈拍計等である。ただし、各診断装置2Eのハードウェア構成は、このような例に限定されなくてもよい。各診断装置2Eの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各診断装置2Eは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
本変形例に係る各診断装置2Eの記憶部22は、学習プログラム82E、診断プログラム83E、ローカル学習データ3E、学習結果データ221E等の各種情報を記憶する。学習プログラム82E、診断プログラム83E、ローカル学習データ3E、及び学習結果データ221Eは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82E、診断プログラム83E、及びローカル学習データ3Eのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各診断装置2Eは、記憶媒体92から、学習プログラム82E、診断プログラム83E、及びローカル学習データ3Eのうちの少なくともいずれかを取得してもよい。
<学習処理>
図30Aは、本変形例に係る各診断装置2Eの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各診断装置2Eの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Eの実行により実現される。図30Aに示されるとおり、取り扱うデータがセンシングデータからバイタルデータに置き換わる点を除き、各診断装置2Eの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各診断装置2Eは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
図30Aは、本変形例に係る各診断装置2Eの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各診断装置2Eの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Eの実行により実現される。図30Aに示されるとおり、取り扱うデータがセンシングデータからバイタルデータに置き換わる点を除き、各診断装置2Eの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各診断装置2Eは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各診断装置2Eの制御部21は、学習データ収集部211Eとして動作し、識別モデル40Eの機械学習に利用するローカル学習データ3Eを収集する。本変形例では、識別モデル40Eは、上記実施形態に係る識別モデル40と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Eは、バイタルデータ36により構成される。
ローカル学習データ3Eを生成する方法は、上記実施形態と同様に、実施の形態に応じて適宜選択されてよい。本変形例では、ローカル学習データ3Eは、対象者の健康状態を推定するのに利用され得る。そのため、ローカル学習データ3Eを構成するバイタルデータ36は、様々な健康状態の被験者のバイタルをバイタルセンサで測定することで得られてよい。これにより、ローカル学習データ3Eが生成されてよい。
ステップS102では、制御部21は、学習処理部212として動作し、生成モデル41により生成されたデータを取得する。本変形例では、生成モデル41は、疑似的なバイタルデータ(以下、「疑似バイタルデータ」とも記載する)を生成するように構成される。モデル生成装置1の制御部11は、所定の確率分布からノイズを抽出し、抽出されたノイズを生成モデル41に入力して、生成モデル41の演算処理を実行する。これにより、制御部11は、生成モデルからの出力として、疑似バイタルデータを取得する。制御部21は、このようにして生成モデル41により生成された疑似バイタルデータを取得する。
ステップS103では、制御部21は、学習処理部212として動作し、ローカル学習データ3Eを使用した機械学習により、与えられたバイタルデータがローカル学習データ3Eに含まれるバイタルデータ36であるか否かを識別する能力を獲得した学習済みの識別モデル40Eを構築する。本変形例では、制御部21は、ローカル学習データ3E及び生成モデル41により生成された疑似バイタルデータを使用して、与えられたバイタルデータがローカル学習データ3E由来か生成モデル41由来かを識別するように識別モデル40Eを訓練する。ステップS104では、制御部21は、保存処理部213として動作し、ステップS103の機械学習により構築された学習済みの識別モデル40Eの構造及び演算パラメータを示す情報を学習結果データ221Eとして生成する。そして、制御部21は、生成された学習結果データ221Eを所定の記憶領域に保存する。
<診断処理>
図30Bは、本変形例に係る各診断装置2Eの診断処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各診断装置2Eの診断処理に関するソフトウェア構成は、制御部21による診断プログラム83Eの実行により実現される。図30Bに示されるとおり、取り扱うデータがセンシングデータからバイタルデータに置き換わる点を除き、各診断装置2Eの診断処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各診断装置2Eは、上記各学習装置2と同様に、診断処理に関する一連の処理を実行する。
図30Bは、本変形例に係る各診断装置2Eの診断処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各診断装置2Eの診断処理に関するソフトウェア構成は、制御部21による診断プログラム83Eの実行により実現される。図30Bに示されるとおり、取り扱うデータがセンシングデータからバイタルデータに置き換わる点を除き、各診断装置2Eの診断処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各診断装置2Eは、上記各学習装置2と同様に、診断処理に関する一連の処理を実行する。
すなわち、ステップS301では、各診断装置2Eの制御部21は、対象データ取得部216として動作し、対象者REのバイタルを測定した結果を示す対象バイタルデータ223EをバイタルセンサSEから取得する。
ステップS302では、制御部21は、診断部217Eとして動作し、対象者REの健康状態を診断するための推論用学習データとして収集されたデータ群225Eを取得する。本変形例では、データ群225Eは、複数件のバイタルデータ2251Eにより構成される。各件のバイタルデータ2251Eは、特定の健康状態に応じて取得されてよい。また、上記実施形態と同様に、データ群225Eに含まれる各件のバイタルデータ2251Eは、例えば、ローカル学習データ3Eに含まれるバイタルデータ36、本変形例における生成モデル41により生成されたバイタルデータ等であってよい。制御部21は、学習済みの生成モデル41を利用して生成されたデータをバイタルデータ2251Eとして取得してもよい。学習済みの生成モデル41によるデータの生成は、各診断装置2Eにより実行されてもよいし、他のコンピュータにより実行されてもよい。これにより、制御部21は、学習済みの生成モデル41を利用して生成されたデータを含むデータ群225Eを取得してもよい。
次に、制御部21は、データ群225Eと対象バイタルデータ223Eとの比較に基づいて、対象者REの健康状態を診断する。制御部21は、上記実施形態と同様の方法で、データ群225Eを構成するバイタルデータ2251Eと対象バイタルデータ223Eとを比較することにより、対象者REの健康状態を診断する。
なお、データ群225Eに含まれるバイタルデータ2251Eの件数が不足している場合、制御部21は、バイタルデータ2251Eを適宜ローカル学習データ3Eに指定し、指定されたローカル学習データ3Eについての生成モデル41を構築するようにモデル生成装置1に要求してもよい。そして、制御部21は、これにより構築された学習済みの生成モデル41を利用して、特定の健康状態に応じ得る新たなバイタルデータを生成し、生成された新たなバイタルデータをバイタルデータ2251Eとしてデータ群225Eに加えてよい。これにより、制御部21は、データ群225Eに含まれるバイタルデータ2251Eの件数を増加させてもよい。
ステップ303では、制御部21は、出力部218として動作し、対象者REの健康状態を診断した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、対象者REの健康状態を診断した結果をそのまま出力装置25に出力してもよい。また、例えば、診断された対象者REの健康状態が所定の病気の予兆を示す場合に、制御部21は、病院での診査を促すメッセージを出力装置25に出力してもよい。
<モデル生成>
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Eを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
本変形例では、モデル生成装置1は、上記のように構築された各識別モデル40Eを利用して、上記実施形態と同様に、上記ステップS201~S205の処理を実行する。
すなわち、ステップS201では、モデル生成装置1の制御部11は、生成モデル41を用いて、疑似バイタルデータを生成する。ステップS202では、制御部11は、生成された疑似バイタルデータを各識別モデル40Eに送信して、生成された疑似バイタルデータに対する識別を各識別モデル40Eに実行させる。ステップS203では、制御部11は、送信された疑似バイタルデータに対する各識別モデル40Eによる識別の結果を受信する。本変形例では、制御部11は、各診断装置2Eに疑似バイタルデータを送信することで、疑似バイタルデータに対する識別を各識別モデル40Eに実行させる。そして、制御部11は、各診断装置2Eから各識別モデル40Eによる識別の結果を取得する。
ステップS204では、制御部11は、受信された識別の結果を利用した機械学習により、複数の識別モデル40Eのうちの少なくともいずれか一つの識別モデル40Eの識別性能を低下させるような気象データを生成するように生成モデル41を訓練する。ステップS205では、制御部11は、ステップS204の機械学習により構築された学習済みの生成モデル41の構造及び演算パラメータを示す情報を学習結果データ121として生成する。そして、制御部11は、生成された学習結果データ121を所定の記憶領域に保存する。
本変形例によれば、対象者REの健康状態を診断する場面において、その診断に利用可能でかつ多様なバイタルデータを生成可能な生成モデル41を構築することができる。この生成モデル41を利用することで、診断に利用するデータ群225Eを構成するバイタルデータ2251Eの件数を増やすことができる。本変形例では、この生成モデル41により、各診断装置2E単独では収集するのが困難であるが、他の診断装置2Eでは得られている特定の対象者の属性及び健康状態に応じたバイタルデータを生成することができる。これにより、データ群225Eに含まれるバイタルデータ2251Eの件数を増やすだけでなく、バイタルデータ2251Eのバリエーションを豊富にすることができる。したがって、本変形例によれば、ステップS303における対象者REの健康状態の推定精度を高めることができる。
<4.2>
上記実施形態では、生成モデル41により生成されたデータは、センサSより得られた対象データ223に表れる特徴を推論するのに利用されるデータ群225を構成するデータとして利用可能である。また、各学習装置2は、上記ステップS302において、データ群225と対象データ223との比較に基づいて、対象データ223に表れる特徴を推論している。しかしながら、生成モデル41により生成されるデータ及び推論処理の方法は、このような例に限定されなくてもよい。例えば、生成モデル41により生成されるデータは、所定の推論を行う能力を推定器に獲得させるための機械学習に利用されてもよい。また、各学習装置2は、その機械学習により構築された学習済みの推定器を利用して、対象データ223に表れる特徴を推論してもよい。
上記実施形態では、生成モデル41により生成されたデータは、センサSより得られた対象データ223に表れる特徴を推論するのに利用されるデータ群225を構成するデータとして利用可能である。また、各学習装置2は、上記ステップS302において、データ群225と対象データ223との比較に基づいて、対象データ223に表れる特徴を推論している。しかしながら、生成モデル41により生成されるデータ及び推論処理の方法は、このような例に限定されなくてもよい。例えば、生成モデル41により生成されるデータは、所定の推論を行う能力を推定器に獲得させるための機械学習に利用されてもよい。また、各学習装置2は、その機械学習により構築された学習済みの推定器を利用して、対象データ223に表れる特徴を推論してもよい。
図31は、本変形例に係る学習装置2Fのハードウェア構成の一例を模式的に例示する。本変形例に係る学習装置2Fは、所定の推論を行う能力を推定器に獲得させるための機械学習を更に実行する点、及びその機械学習により構築された学習済みの推定器を利用して所定の推論を行う点を除き、上記実施形態に係る各学習装置2と同様に構成される。具体的には、本変形例に係る学習装置2Fは、上記実施形態に係る各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。ただし、学習装置2Fのハードウェア構成は、このような例に限定されなくてもよい。学習装置2Fの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。学習装置2Fは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってよい。
本変形例に係る学習装置2Fの記憶部22は、上記実施形態に加えて、推論学習プログラム85、及び推論学習結果データ228を更に含む。推論学習プログラム85は、推定器(後述する推定器45)の機械学習に関する後述の情報処理(図32B)を学習装置2Fに実行させるためのプログラムである。推論学習プログラム85は、この情報処理の一連の命令を含む。推論学習プログラム85は、記憶媒体92に記憶されていてもよい。また、学習装置2Fは、記憶媒体92から推論学習プログラム85を取得してもよい。推論学習結果データ228は、学習済みの推定器に関する情報を示す。推論学習結果データ228は、推論学習プログラム85を実行した結果として得られる。なお、推論プログラム83Fは、上記実施形態に係る推論プログラム83に対応する。推論プログラム83Fは、学習済みの推定器を利用して推論処理を実行する点を除き、上記実施形態に係る推論プログラム83と同様の命令を含む。
本変形例では、学習装置2Fは、機械学習により特徴を推論する能力を獲得するのに使用する推論用ローカル学習データ(後述する推論用ローカル学習データ227)を収集する。このとき、学習装置2Fは、学習済みの生成モデル41により生成されたデータを取得してもよい。上記実施形態と同様に、学習済みの生成モデル41によるデータの生成は、学習装置2Fにより実行されてもよいし、他のコンピュータにより実行されてもよい。学習済みの生成モデル41によるデータの生成を学習装置2Fが実行する場合、学習装置2Fは、学習結果データ121を保持することで、学習済みの生成モデル41を備える。これにより、学習装置2Fは、学習済みの生成モデル41により生成されたデータを含む推論用ローカル学習データを収集してもよい。次に、学習装置2Fは、収集された推論用ローカル学習データを使用した機械学習により、データに表れる特徴を推論する能力を獲得した学習済みの推定器を構築する。一方、推論処理では、学習装置2Fは、対象データ223を取得する。次に、学習装置2Fは、学習済みの推定器を利用して、対象データに表れる特徴を推定する。そして、学習装置2Fは、特徴を推定した結果に関する情報を出力する。
<推論の学習処理>
図32Aは、本変形例に係る学習装置2Fの推論の学習処理に関するソフトウェア構成の一例を模式的に例示する。学習装置2Fの制御部21は、上記学習プログラム82等と同様に、推論学習プログラム85を実行する。これにより、学習装置2Fは、学習データ収集部291、学習処理部292、及び保存処理部293をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本変形例では、推論の学習処理に関する学習装置2Fの各ソフトウェアモジュールは、制御部21(CPU)により実現される。
図32Aは、本変形例に係る学習装置2Fの推論の学習処理に関するソフトウェア構成の一例を模式的に例示する。学習装置2Fの制御部21は、上記学習プログラム82等と同様に、推論学習プログラム85を実行する。これにより、学習装置2Fは、学習データ収集部291、学習処理部292、及び保存処理部293をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本変形例では、推論の学習処理に関する学習装置2Fの各ソフトウェアモジュールは、制御部21(CPU)により実現される。
ただし、推論の学習処理に関するソフトウェア構成は、このような例に限定されなくてもよい。以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、学習装置2Fの推論の学習処理に関するソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。なお、それぞれを区別する場合、例えば、学習データ収集部211及び学習処理部212をそれぞれ「第1学習データ収集部」及び「第1学習処理部」と称し、学習データ収集部291及び学習処理部292をそれぞれ「第2学習データ収集部」及び「第2学習処理部」と称する等のように呼び分けてもよい。
本変形例に係る学習装置2Fは、これらのソフトウェアモジュールを備えることで、推定器45の機械学習を実行する。推定器45は、上記識別モデル40及び生成モデル41と同様に、機械学習により所定の能力を獲得可能な学習モデルであり、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。図32Aに示されるとおり、本変形例に係る推定器45は、上記識別モデル40及び生成モデル41と同様に、3層構造のニューラルネットワークにより構成されている。推定器45は、入力側から順に、入力層451、中間(隠れ)層452、及び出力層453を備えている。ただし、推定器45の構造は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、推定器45の備える中間層の数は、1つに限定されなくてもよく、2つ以上であってもよい。
上記識別モデル40及び生成モデル41と同様に、推定器45の各層451~453に含まれるニューロン(ノード)の数も、実施の形態に応じて適宜選択されてよい。図32Aの例では、各ニューロンは、隣接する層の全てのニューロンと結合されている。しかしながら、ニューロンの結合は、このような例に限定されなくてもよく、実施の形態に応じて適宜設定されてよい。各層451~453に含まれる各ニューロン間の結合の重み及び各ニューロンの閾値は、演算処理に利用される推定器45の演算パラメータの一例である。
次に、図32Bを更に用いて、本変形例に係る学習装置2Fの推論の機械学習に関する動作例について説明する。図32Bは、本変形例に係る学習装置2Fによる推定器45の機械学習に関する処理手順の一例を示すフローチャートである。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS191)
ステップS191では、制御部21は、学習データ収集部291として動作し、推定器45の機械学習に利用する推論用ローカル学習データ227を収集する。本変形例では、推定器45がニューラルネットワークにより構成されるため、制御部21は、訓練データ2271及び正解データ2272の組み合わせをそれぞれ含む複数の学習データセット2270により構成される推論用ローカル学習データ227を収集する。
ステップS191では、制御部21は、学習データ収集部291として動作し、推定器45の機械学習に利用する推論用ローカル学習データ227を収集する。本変形例では、推定器45がニューラルネットワークにより構成されるため、制御部21は、訓練データ2271及び正解データ2272の組み合わせをそれぞれ含む複数の学習データセット2270により構成される推論用ローカル学習データ227を収集する。
訓練データ2271(入力データ)は、所定の能力を発揮する対象となるデータである。本変形例では、訓練データ2271は、センサSにより得られるセンシングデータと同種のデータであり、ローカル学習データ3を構成するデータであってよい。正解データ2272(教師データ)は、訓練データ2271に対して所定の能力を発揮した結果(正解)を示すデータである。正解データ2272には、上記ラベルが利用されてよい。
各学習データセット2270を取得する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、センサSと同種のセンサを用意し、用意したセンサにより様々な条件で観測を行うことで、訓練データ2271を取得することができる。そして、取得された訓練データ2271に対して、当該訓練データ2271に表れる特徴を示す正解データ2272を関連付ける。これにより、各学習データセット2270を生成することができる。
各学習データセット2270は、コンピュータの動作により自動的に生成されてもよいし、オペレータの操作により手動的に生成されてもよい。また、各学習データセット2270の生成は、学習装置2Fにより行われてもよいし、学習装置2F以外の他のコンピュータにより行われてもよい。各学習データセット2270を学習装置2Fが生成する場合、制御部21は、自動的に又は入力装置24を介したオペレータの操作により手動的に上記一連の処理を実行することで、複数の学習データセット2270により構成される推論用ローカル学習データ227を収集する。一方、各学習データセット2270を他のコンピュータが生成する場合、制御部21は、例えば、ネットワーク、記憶媒体92等を介して、他のコンピュータにより生成された複数の学習データセット2270により構成される推論用ローカル学習データ227を収集する。
また、推論用ローカル学習データ227の少なくとも一部には、ローカル学習データ3が利用されてもよい。この場合、ローカル学習データ3を構成する各件のデータに上記正解データ2272を適宜付与することで、各学習データセット2270を生成することができる。
更に、推論用ローカル学習データ227の少なくとも一部には、生成モデル41により生成されたデータが利用されてよい。学習済みの生成モデル41によるデータの生成は、各学習装置2により実行されてもよいし、他のコンピュータにより実行されてもよい。学習済みの生成モデル41によるデータの生成を学習装置2Fが実行する場合、制御部21は、学習結果データ121を保持することで、学習済みの生成モデル41を備える。制御部21は、上記学習処理により生成された学習結果データ121を、例えば、ネットワーク、記憶媒体92等を介して取得してもよい。この場合、制御部21は、学習結果データ121を参照して、学習済みの生成モデル41を設定する。また、制御部21は、ガウス分布等の所定の確率分布から複数のノイズを抽出する。そして、制御部21は、抽出されたノイズを生成モデル41の入力層411に入力し、入力側から順に各層411~413に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、ノイズに対応して生成されたデータを出力層413から取得する。取得されたデータを訓練データ2271として推論用ローカル学習データ227に追加することで、制御部21は、学習済みの生成モデル41により生成されたデータを含む推論用ローカル学習データ227を取得することができる。或いは、制御部21は、ネットワーク、記憶媒体92等を介して、他のコンピュータにより学習済みの生成モデル41を利用して生成されたデータを取得してもよい。
また、制御部21は、推論用ローカル学習データ227に含まれる訓練データ2271により構成されるローカル学習データ3、及び/又は、推論用ローカル学習データ227とは別に用意されたローカル学習データ3について、生成モデル41を構築するようにモデル生成装置1に要求してもよい。そして、制御部21は、これにより構築された学習済みの生成モデル41を利用して、センサSにより得られるセンシングデータと同種の生成データ55を生成し、生成された生成データ55を訓練データ2271として利用してもよい。生成データ55には、適宜正解データ2272が付与されてよい。これにより、制御部21は、推論用ローカル学習データ227に含まれる学習データセット2270の件数を増加させてもよい。
収集される学習データセット2270の件数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。推論用ローカル学習データ227を収集すると、制御部21は、次のステップS192に処理を進める。
(ステップS192)
ステップS192では、制御部21は、学習処理部292として動作し、収集された推論用ローカル学習データ227を使用して、推定器45の機械学習を実行する。この機械学習では、制御部21は、各学習データセット2270について、訓練データ2271を入力層451に入力すると、正解データ2272と一致する出力値を出力層453から出力するように推定器45を訓練する。これにより、制御部21は、センサSにより得られたデータに表れる特徴を推論する能力を獲得した学習済みの推定器45を構築する。
ステップS192では、制御部21は、学習処理部292として動作し、収集された推論用ローカル学習データ227を使用して、推定器45の機械学習を実行する。この機械学習では、制御部21は、各学習データセット2270について、訓練データ2271を入力層451に入力すると、正解データ2272と一致する出力値を出力層453から出力するように推定器45を訓練する。これにより、制御部21は、センサSにより得られたデータに表れる特徴を推論する能力を獲得した学習済みの推定器45を構築する。
具体的に、制御部21は、機械学習の処理対象となる推定器45を用意する。用意する推定器45の構造、各ニューロン間の結合の重みの初期値、及び各ニューロンの閾値の初期値は、テンプレートにより与えられてもよいし、オペレータの入力により与えられてもよい。また、再学習を行う場合には、制御部21は、過去の機械学習を行うことで得られた学習結果データに基づいて、推定器45を用意してもよい。
次に、制御部21は、ステップS191で取得した各学習データセット2270に含まれる訓練データ2271及び正解データ2272を利用して、推定器45の学習処理を実行する。
例えば、第1のステップでは、制御部21は、各学習データセット2270について、訓練データ2271を入力層451に入力し、入力側から順に各層451~453に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、訓練データ2271に表れる特徴を推論した結果に対応する出力値を出力層453から取得する。第2のステップでは、制御部21は、制御部21は、取得した出力値と対応する正解データ2272の値との誤差を算出する。第3のステップでは、制御部21は、誤差逆伝播法により、算出した出力値の誤差を用いて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの誤差を算出する。第4のステップでは、制御部21は、算出した各誤差に基づいて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの値の更新を行う。
制御部21は、上記第1~第4のステップを繰り返すことで、各学習データセット2270について、訓練データ2271を入力すると、対応する正解データ2272と一致する出力値が出力層453から出力されるように、推定器45の演算パラメータの値を調整する。例えば、制御部21は、各学習データセット2270について、出力層453から得られる出力値と正解データ2272の値との誤差の和が閾値以下になるまで、上記第1~第4のステップを繰り返す。正解データ2272の値と出力層453の出力値とが一致することは、このような閾値による誤差が正解データ2272の値と出力層453の出力値との間に生じることを含んでよい。閾値は、実施の形態に応じて適宜設定されてよい。これにより、制御部21は、訓練データ2271の入力に対して、対応する正解データ2272と一致する出力値を出力するように訓練された学習済みの推定器45を構築することができる。すなわち、制御部21は、センサSにより得られたデータに表れる特徴を推論する能力を獲得した学習済みの推定器45を構築することができる。学習済みの推定器45は、「識別器」等と称されてよい。推定器45の機械学習が完了すると、制御部21は、次のステップS193に処理を進める。
(ステップS193)
ステップS193では、制御部21は、保存処理部293として動作し、機械学習により構築された学習済みの推定器45に関する情報を所定の記憶領域に保存する。本変形例では、制御部21は、ステップS192の機械学習により構築された学習済みの推定器45の構造及び演算パラメータを示す情報を推論学習結果データ228として生成する。そして、制御部21は、生成された学習結果データ228を所定の記憶領域に保存する。所定の記憶領域は、例えば、制御部21内のRAM、記憶部22、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。
ステップS193では、制御部21は、保存処理部293として動作し、機械学習により構築された学習済みの推定器45に関する情報を所定の記憶領域に保存する。本変形例では、制御部21は、ステップS192の機械学習により構築された学習済みの推定器45の構造及び演算パラメータを示す情報を推論学習結果データ228として生成する。そして、制御部21は、生成された学習結果データ228を所定の記憶領域に保存する。所定の記憶領域は、例えば、制御部21内のRAM、記憶部22、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。
<推論処理>
図33は、本変形例に係る学習装置2Fの推論処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、学習装置2Fの推論処理に関するソフトウェア構成は、制御部21による推論プログラム83Fの実行により実現される。図32Bに示されるとおり、推論方法が異なる点を除き、学習装置2Fの推論処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、学習装置2Fは、上記各学習装置2と同様に、推論処理に関する一連の処理を実行する。
図33は、本変形例に係る学習装置2Fの推論処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、学習装置2Fの推論処理に関するソフトウェア構成は、制御部21による推論プログラム83Fの実行により実現される。図32Bに示されるとおり、推論方法が異なる点を除き、学習装置2Fの推論処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、学習装置2Fは、上記各学習装置2と同様に、推論処理に関する一連の処理を実行する。
すなわち、ステップS301及びS303については、学習装置2Fの制御部21は、上記実施形態と同様に実行する。一方、ステップS302では、学習装置2Fの制御部21は、推論部217Fとして動作し、学習済みの推定器45を利用して、対象データ223に表れる特徴を推論する。本実施形態では、推論部217Fは、推論学習結果データ228を保持することで、学習済みの推定器45を含む。
具体的に、制御部21は、推論学習結果データ228を参照して、学習済みの推定器45の設定を行う。次に、制御部21は、取得された対象データ223を学習済みの推定器45に入力し、当該学習済みの推定器45の演算処理を実行する。すなわち、制御部21は、学習済みの推定器45の入力層451に対象データ223を入力し、入力側から順に各層451~453に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、対象データ223に含まれる特徴を推論した結果に対応する出力値を学習済みの推定器45の出力層453から取得する。
本変形例では、学習装置2Fは、学習済みの推定器45を利用して、対象データ223に表れる特徴を推論するように構成される。このケースでは、学習済みの生成モデル41により生成されたデータ(生成データ55)により、推定器45の機械学習に利用する推論用ローカル学習データ227の件数を増やすことができる。特に、生成モデル41によれば、学習装置2F単独では収集するのが困難であるが、他の学習装置2Fでは得られるデータを生成することができる。そのため、推論用ローカル学習データ227に含まれる訓練データ2271のバリエーションを豊富にすることができ、これによって、機械学習により構築される学習済みの推定器45の性能を高めることができる。つまり、ステップS302では、対象データ223に表れる特徴を精度よく推論することができる。
なお、モデル生成装置1により生成モデル41を生成する対象となる学習装置には、上記実施形態に係る学習装置2と同様の方法で推論処理を実行する学習装置と、本変形例に係る学習装置2Fと同様の方法で推論処理を実行する学習装置とが混在してもよい。また、上記変形例に係る検査装置2A、監視装置2B、監視装置2C、予測装置2D、及び診断装置2Eについても、当該変形例と同様に、学習済みの推定器により各推論を実行するように構成されてもよい。
<4.3>
上記実施形態では、各学習装置2は、学習処理及び推論処理の両方を実行するコンピュータにより構成されている。しかしながら、各学習装置2の構成は、このような例に限定されなくてもよい。複数の学習装置2の少なくともいずれかは、複数台のコンピュータにより構成されてよい。この場合、学習装置2は、学習処理と推論処理とが別々のコンピュータで実行されるように構成されてよい。
上記実施形態では、各学習装置2は、学習処理及び推論処理の両方を実行するコンピュータにより構成されている。しかしながら、各学習装置2の構成は、このような例に限定されなくてもよい。複数の学習装置2の少なくともいずれかは、複数台のコンピュータにより構成されてよい。この場合、学習装置2は、学習処理と推論処理とが別々のコンピュータで実行されるように構成されてよい。
図34は、本変形例に係る学習装置2Gの構成の一例を模式的に例示する。本変形例では、学習装置2Gは、上記学習処理を実行するように構成される第1コンピュータ200、及び上記推論処理を実行するように構成される第2コンピュータ201を備える。第1コンピュータ200及び第2コンピュータ201それぞれのハードウェア構成は、上記実施形態に係る各学習装置2のハードウェア構成と同様であってよい。第1コンピュータ200は、学習プログラム82を実行することで、学習データ収集部211、学習処理部212、及び保存処理部213をソフトウェアモジュールとして備えるコンピュータとして動作する。第2コンピュータ201は、推論プログラム83を実行することで、対象データ取得部216、推論部217、及び出力部218をソフトウェアモジュールとして備えるコンピュータとして動作する。この場合、第1コンピュータ200を「学習装置」として取り扱ってもよい。なお、上記変形例に係る検査装置2A、監視装置2B、監視装置2C、予測装置2D、及び診断装置2Eについても同様である。また、上記変形例に係る学習装置2Fと同様の方法で推論処理を実行するように構成する場合、学習装置2Gは、第3コンピュータ(不図示)を更に備えてもよい。この第3コンピュータが、推論学習プログラム85を実行することで、上記学習データ収集部291、学習処理部292、及び保存処理部293をソフトウェアモジュールとして備えるコンピュータとして動作してもよい。
<4.4>
上記実施形態では、各識別モデル40による識別の結果51を導出する過程で、各学習装置2は、式3及び式4の計算において、他の学習装置2の演算結果を利用して、演算結果を統合、すなわち、総和を計算している。また、モデル生成装置1は、式7の計算において、各学習装置2の演算の結果を利用して、当該演算の結果を統合している。これらの演算の結果は、ローカル学習データ3に関連するため、これらの演算の結果が開示されると、各学習装置2の保持するローカル学習データ3を推定することが可能となってしまう。そこで、各学習装置2の保持するローカル学習データ3の秘匿性を更に高めるため、各識別モデル40による識別の結果51は秘密計算により統合されてよい。秘密計算の方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。本変形例では、秘密分散及び準同型暗号のいずれかを利用した方法が採用されてよい。
上記実施形態では、各識別モデル40による識別の結果51を導出する過程で、各学習装置2は、式3及び式4の計算において、他の学習装置2の演算結果を利用して、演算結果を統合、すなわち、総和を計算している。また、モデル生成装置1は、式7の計算において、各学習装置2の演算の結果を利用して、当該演算の結果を統合している。これらの演算の結果は、ローカル学習データ3に関連するため、これらの演算の結果が開示されると、各学習装置2の保持するローカル学習データ3を推定することが可能となってしまう。そこで、各学習装置2の保持するローカル学習データ3の秘匿性を更に高めるため、各識別モデル40による識別の結果51は秘密計算により統合されてよい。秘密計算の方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。本変形例では、秘密分散及び準同型暗号のいずれかを利用した方法が採用されてよい。
(A)秘密分散を利用する方法
図35Aは、秘密分散を利用して統合処理を実行する場面の一例を模式的に例示する。秘密分散を利用した方法では、それぞれ信頼性のある第三者機関として第1サーバ61及び第2サーバ62がネットワークに設置される。第1サーバ61及び第2サーバ62はそれぞれ、モデル生成装置1等と同様にハードウェアプロセッサ及びメモリを備えるコンピュータである。
図35Aは、秘密分散を利用して統合処理を実行する場面の一例を模式的に例示する。秘密分散を利用した方法では、それぞれ信頼性のある第三者機関として第1サーバ61及び第2サーバ62がネットワークに設置される。第1サーバ61及び第2サーバ62はそれぞれ、モデル生成装置1等と同様にハードウェアプロセッサ及びメモリを備えるコンピュータである。
この方法では、まず、各学習装置2の制御部21は、自身の演算結果を他のコンピュータに送信する際、乱数を生成する。自身の演算結果を他のコンピュータに送信する場面は、上記実施形態では、式3のexp(lyi)を他の学習装置2に送信する場面、式4のyiS(lyi)を他の学習装置2に送信する場面、式7の計算のために式6のViをモデル生成装置1に送信する場面である。式3及び式4の場面では、他のコンピュータは、他の学習装置2である。また、式7の場面では、他のコンピュータは、モデル生成装置1である。乱数を生成する方法は、実施の形態に応じて適宜選択されてよい。次に、制御部21は、演算結果の値と生成された乱数との差分を算出する。そして、制御部21は、算出された差分を第1サーバ61に送信する一方で、生成された乱数を第2サーバ62に送信する。
これに応じて、第1サーバ61は、以下の式8のとおり、各学習装置2から受信した差分の総和を計算する。一方、第2サーバ62は、以下の式9のとおり、各学習装置2から受信した乱数の総和を計算する。
第1サーバ61及び第2サーバ62はそれぞれ、総和の計算結果を他のコンピュータに送信する。他のコンピュータは、第1サーバ61及び第2サーバ62それぞれから受信した総和を加算する。これにより、各学習装置2の保持する演算結果を他のコンピュータにおいて特定されるのを防止しながら、他のコンピュータは、識別の結果51に関する各学習装置2の演算結果を統合する(すなわち、総和の計算を行う)ことができる。
なお、秘密分散の方式は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。秘密分散の方式には、例えば、国際標準(ISO/IEC 19592-2:2017)の方式等が用いられてよい。また、モデル生成装置1が信頼性のあるサーバであれば、モデル生成装置1が、第1サーバ61及び第2サーバ62のいずれかとして動作してもよい。
(B)準同型暗号を利用する方法
図35Bは、準同型暗号を利用して統合処理を実行する場面の一例を模式的に例示する。準同型暗号を利用した方法では、信頼性のある第三者機関としてサーバ65がネットワークに設置される。サーバ65は、モデル生成装置1等と同様にハードウェアプロセッサ及びメモリを備えるコンピュータである。
図35Bは、準同型暗号を利用して統合処理を実行する場面の一例を模式的に例示する。準同型暗号を利用した方法では、信頼性のある第三者機関としてサーバ65がネットワークに設置される。サーバ65は、モデル生成装置1等と同様にハードウェアプロセッサ及びメモリを備えるコンピュータである。
この方法では、まず、サーバ65が、公開鍵及び秘密鍵を発行する。公開鍵は、準同型性を有するように生成される。つまり、公開鍵により暗号化された2つの暗号文が与えられた場合に、暗号化された状態のまま2つの暗号文の加算が可能であるように公開鍵が生成される。サーバ65は、発行された公開鍵及び秘密鍵のうち公開鍵を各学習装置2に配信する。
各学習装置2の制御部21は、受信した公開鍵により、自身の演算結果を暗号化する。そして、制御部21は、暗号化された演算結果を他のコンピュータに送信する。他のコンピュータは、以下の式10のとおりに、各学習装置2から受信した演算結果の値を暗号化された状態のまま総和を計算する。
他のコンピュータは、暗号化された総和をサーバ65に送信する。サーバ65は、秘密鍵により、他のコンピュータから受信した暗号化された総和を復号化する。そして、サーバ65は、復号化した演算結果の総和を他のコンピュータに返信する。これにより、各学習装置2の保持する演算結果を他のコンピュータにおいて特定されるのを防止しながら、他のコンピュータは、識別の結果51に関する各学習装置2の演算結果を統合することができる。
なお、準同型暗号の方式は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。準同型暗号の方式には、例えば、modified-ElGamal暗号、Paillier暗号等が用いられてよい。また、モデル生成装置1が信頼性のあるサーバであれば、モデル生成装置1が、サーバ65として動作してもよい。
以上のとおり、本変形例によれば、上記2つの方法のうちのいずれかにより、各識別モデル40による識別の結果51を秘密計算により統合することができる。これにより、各学習装置2の保持するローカル学習データ3の秘匿性を更に高めることができる。
<4.5>
上記実施形態及び変形例では、識別モデル40、生成モデル41、及び推定器45は、3層構造の全結合ニューラルネットワークにより構成されている。しかしながら、識別モデル40、生成モデル41、及び推定器45それぞれを構成するニューラルネットワークの構造及び種類は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、識別モデル40、生成モデル41、及び推定器45それぞれは、畳み込み層、プーリング層、及び全結合層を備える畳み込みニューラルネットワークにより構成されてよい。また、例えば、時系列データを利用する場合には、識別モデル40、生成モデル41、及び推定器45それぞれは、再帰型ニューラルネットワークにより構成されてよい。識別モデル40、生成モデル41、及び推定器45それぞれの種類は、実施の形態に応じて適宜選択されてよい。
上記実施形態及び変形例では、識別モデル40、生成モデル41、及び推定器45は、3層構造の全結合ニューラルネットワークにより構成されている。しかしながら、識別モデル40、生成モデル41、及び推定器45それぞれを構成するニューラルネットワークの構造及び種類は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、識別モデル40、生成モデル41、及び推定器45それぞれは、畳み込み層、プーリング層、及び全結合層を備える畳み込みニューラルネットワークにより構成されてよい。また、例えば、時系列データを利用する場合には、識別モデル40、生成モデル41、及び推定器45それぞれは、再帰型ニューラルネットワークにより構成されてよい。識別モデル40、生成モデル41、及び推定器45それぞれの種類は、実施の形態に応じて適宜選択されてよい。
なお、上記機械学習において、追加条件(例えば、ラベル)が与えられたデータをローカル学習データ3として利用することで、追加条件に応じたデータを生成可能な条件付き生成モデルを構築することができる。上記生成モデル41は、このような条件付き生成モデルであってもよい。この場合、各グループを示す情報を追加情報として与えることで、生成モデル41、複数のグループそれぞれに対応するデータを生成可能に構築されてよい。追加条件は、生成モデル41により生成するデータの種別に関するものであればよく、例えば、生成するデータの属性、生成するデータに表れる特徴の属性等により与えられてもよい。生成するデータが画像データである場合、生成するデータの属性は、例えば、画像データの解像度、ピクセル数、欠損の有無等であってよい。また、生成するデータに表れる特徴の属性は、例えば、推論の対象となる対象物の属性、対象物の種別等であってよい。
<4.6>
上記実施形態において、各学習装置2により構築される識別モデル40の数は、1つに限られなくてもよく、複数であってもよい。複数の識別モデル40を保持する場合、各学習装置2は、識別モデル40毎に個別にローカル学習データ3を収集してもよいし、少なくとも一部の識別モデル40で少なくとも部分的に共通にローカル学習データ3を収集してもよい。
上記実施形態において、各学習装置2により構築される識別モデル40の数は、1つに限られなくてもよく、複数であってもよい。複数の識別モデル40を保持する場合、各学習装置2は、識別モデル40毎に個別にローカル学習データ3を収集してもよいし、少なくとも一部の識別モデル40で少なくとも部分的に共通にローカル学習データ3を収集してもよい。
また、上記実施形態では、各識別モデル40は、各学習装置2に保持されている。しかしながら、各識別モデル40の配置は、このような例に限定されなくてもよい。例えば、複数の識別モデル40のうちの少なくとも一部は、モデル生成装置1に保持されていてもよい。
また、上記実施形態において、グルーピングの処理は省略されてよい。第1のグルーピング方法を省略する場合、グループリスト123は省略されてよい。グルーピングの処理を省略する場合、割当情報124は省略されてよい。また、モデル生成装置1のソフトウェア構成からグルーピング部116は省略されてよい。
また、上記実施形態において、データは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等の個別の種類のデータに置き換えられてよい。例えば、ローカル学習データ3が画像データを含むことで、モデル生成装置1及び複数の学習装置2により画像生成システムを構成することができる。また、例えば、ローカル学習データ3がセンサにより得られるセンシングデータを含むことで、モデル生成装置1及び複数の学習装置2によりセンシングデータの生成システムを構成することができる。
1…モデル生成装置、
11…制御部、12…記憶部、13…通信インタフェース、
14…入力装置、15…出力装置、16…ドライブ、
111…生成部、112…送信部、113…受信部、
114…学習処理部、115…保存処理部、
116…グルーピング部、
121…学習結果データ、123…グループリスト、
124…割当情報、
81…モデル生成プログラム、91…記憶媒体、
2…学習装置、
21…制御部、22…記憶部、23…通信インタフェース、
24…入力装置、25…出力装置、26…ドライブ、
27…外部インタフェース、
211…学習データ収集部、212…学習処理部、
213…保存処理部、
216…対象データ取得部、217…推論部、
218…出力部、
221…学習結果データ、223…対象データ、
225…データ群、
82…学習プログラム、83…推論プログラム、
92…記憶媒体、
S…センサ、
3…ローカル学習データ、
40…識別モデル、
401…入力層、402…中間(隠れ)層、
403…出力層、
41…生成モデル、
411…入力層、412…中間(隠れ)層、
413…出力層、
50…データ、51…(識別の)結果
11…制御部、12…記憶部、13…通信インタフェース、
14…入力装置、15…出力装置、16…ドライブ、
111…生成部、112…送信部、113…受信部、
114…学習処理部、115…保存処理部、
116…グルーピング部、
121…学習結果データ、123…グループリスト、
124…割当情報、
81…モデル生成プログラム、91…記憶媒体、
2…学習装置、
21…制御部、22…記憶部、23…通信インタフェース、
24…入力装置、25…出力装置、26…ドライブ、
27…外部インタフェース、
211…学習データ収集部、212…学習処理部、
213…保存処理部、
216…対象データ取得部、217…推論部、
218…出力部、
221…学習結果データ、223…対象データ、
225…データ群、
82…学習プログラム、83…推論プログラム、
92…記憶媒体、
S…センサ、
3…ローカル学習データ、
40…識別モデル、
401…入力層、402…中間(隠れ)層、
403…出力層、
41…生成モデル、
411…入力層、412…中間(隠れ)層、
413…出力層、
50…データ、51…(識別の)結果
Claims (11)
- 生成モデルを用いて、データを生成する生成部と、
ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力をそれぞれ獲得した複数の学習済みの識別モデルそれぞれに生成された前記データを送信し、前記各識別モデルに前記データに対する識別を実行させる送信部と、
送信された前記データに対する前記各識別モデルによる識別の結果を受信する受信部と、
受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練する学習処理部と、
を備える、
モデル生成装置。 - 前記各識別モデルは、各学習装置に保持され、
前記送信部は、生成された前記データを前記各学習装置に送信することで、前記データに対する識別を前記各識別モデルに実行させ、
前記受信部は、前記各識別モデルによる識別の結果を前記各学習装置から受信する、
請求項1に記載のモデル生成装置。 - 前記各識別モデルによる識別の結果は秘密計算により統合され、
前記学習処理部は、統合された前記識別の結果を使用した機械学習により、前記生成モデルを訓練する、
請求項2に記載のモデル生成装置。 - 前記各学習装置を複数のグループのうちの少なくともいずれかに割り当てるグルーピング部を更に備え、
前記グループ毎に生成モデルを保持し、
前記受信部は、前記グループ毎に、前記各識別モデルによる識別の結果を前記各学習装置から受信し、
前記学習処理部は、前記グループ毎に、受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルによる識別を誤らせるデータを生成するように前記生成モデルを訓練する、
請求項2又は3に記載のモデル生成装置。 - 前記グルーピング部は、前記複数のグループを示すリストを前記各学習装置に配信して、前記各学習装置に対して、前記リストに示される前記複数のグループのうちから1つ以上のグループを選択させ、選択された前記1つ以上のグループに前記各学習装置を割り当てる、
請求項4に記載のモデル生成装置。 - 前記グルーピング部は、
前記ローカル学習データに関する属性データを前記各学習装置から取得し、
前記各学習装置から取得した前記属性データをクラスタリングし、
前記クラスタリングの結果に基づいて、前記複数の学習装置それぞれを前記複数のグループのうちの少なくともいずれかに割り当てる、
請求項4に記載のモデル生成装置。 - 複数の学習装置と、
モデル生成装置と、
を備え、
前記各学習装置は、
ローカル学習データを収集するステップと、
ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、
を実行し、
前記モデル生成装置は、
生成モデルを用いて、データを生成するステップと、
生成された前記データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記データに対する識別を実行させるステップと、
前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、
受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、
を実行する、
モデル生成システム。 - コンピュータが、
生成モデルを用いて、データを生成するステップと、
ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力をそれぞれ獲得した複数の学習済みの識別モデルそれぞれに生成された前記データを送信し、前記各識別モデルに前記データに対する識別を実行させるステップと、
送信された前記データに対する前記各識別モデルによる識別の結果を受信するステップと、
受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、
を実行する、
モデル生成方法。 - コンピュータに、
生成モデルを用いて、データを生成するステップと、
ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データか否かを識別する能力をそれぞれ獲得した複数の学習済みの識別モデルそれぞれに生成された前記データを送信し、前記各識別モデルに前記データに対する識別を実行させるステップと、
送信された前記データに対する前記各識別モデルによる識別の結果を受信するステップと、
受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるようなデータを生成するように前記生成モデルを訓練するステップと、
を実行させるための、
モデル生成プログラム。 - 複数の検査装置と、
モデル生成装置と、
を備え、
前記各検査装置は、
製品の写る製品画像データを含むローカル学習データを収集するステップと、
ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データに含まれる前記製品画像データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、
を実行し、
前記モデル生成装置は、
生成モデルを用いて、画像データを生成するステップと、
生成された前記画像データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記画像データに対する識別を実行させるステップと、
前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、
受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるような画像データを生成するように前記生成モデルを訓練するステップと、
を実行する、
検査システム。 - 植物の栽培状況をそれぞれ監視する複数の監視装置と、
モデル生成装置と、
を備え、
前記各監視装置は、
前記植物の栽培状況に関する状況データを含むローカル学習データを収集するステップと、
ローカル学習データを使用した機械学習により、与えられたデータが当該ローカル学習データに含まれる前記状況データか否かを識別する能力を獲得した学習済みの識別モデルを構築するステップと、
を実行し、
前記モデル生成装置は、
生成モデルを用いて、疑似状況データを生成するステップと、
生成された前記疑似状況データを前記各学習装置に送信することで、前記各学習装置の前記識別モデルに前記疑似状況データに対する識別を実行させるステップと、
前記各学習装置の前記識別モデルによる識別の結果を前記各学習装置から受信するステップと、
受信された前記識別の結果を使用した機械学習により、前記複数の識別モデルのうちの少なくともいずれか一つの識別モデルの識別性能を低下させるような疑似状況データを生成するように前記生成モデルを訓練するステップと、
を実行する、
監視システム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19910896.0A EP3913550A4 (en) | 2019-01-18 | 2019-11-18 | MODEL GENERATION DEVICE, MODEL GENERATION METHOD, MODEL GENERATION PROGRAM, MODEL GENERATION SYSTEM, INSPECTION SYSTEM AND MONITORING SYSTEM |
CN201980082089.1A CN113196312B (zh) | 2019-01-18 | 2019-11-18 | 模型生成装置、模型生成方法、模型生成程序、模型生成系统、检查系统以及监视系统 |
US17/414,983 US20220067584A1 (en) | 2019-01-18 | 2019-11-18 | Model generation apparatus, model generation method, computer-readable storage medium storing a model generation program, model generation system, inspection system, and monitoring system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-006778 | 2019-01-18 | ||
JP2019006778A JP7020438B2 (ja) | 2019-01-18 | 2019-01-18 | モデル生成装置、モデル生成方法、モデル生成プログラム、モデル生成システム、検査システム、及び監視システム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020148992A1 true WO2020148992A1 (ja) | 2020-07-23 |
Family
ID=71613668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/044991 WO2020148992A1 (ja) | 2019-01-18 | 2019-11-18 | モデル生成装置、モデル生成方法、モデル生成プログラム、モデル生成システム、検査システム、及び監視システム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220067584A1 (ja) |
EP (1) | EP3913550A4 (ja) |
JP (1) | JP7020438B2 (ja) |
WO (1) | WO2020148992A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022259481A1 (ja) * | 2021-06-10 | 2022-12-15 | 日本電気株式会社 | 学習方法 |
EP4202747A4 (en) * | 2020-12-22 | 2024-04-17 | Hitachi, Ltd. | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING METHOD |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022115518A (ja) | 2021-01-28 | 2022-08-09 | 富士通株式会社 | 情報処理プログラム,情報処理方法および情報処理装置 |
JP7182762B1 (ja) | 2022-01-20 | 2022-12-05 | エスペックミック株式会社 | 人工気象装置及び人工気象システム |
CN116032636B (zh) * | 2023-01-06 | 2023-10-20 | 南京通力峰达软件科技有限公司 | 一种基于神经网络的车联网数据加密方法 |
CN117252038B (zh) * | 2023-11-16 | 2024-02-13 | 吉林建筑大学 | 一种新能源建筑一体化节能设计分析方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012026982A (ja) | 2010-07-27 | 2012-02-09 | Panasonic Electric Works Sunx Co Ltd | 検査装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101809741B1 (ko) * | 2016-01-25 | 2017-12-15 | 세명대학교 산학협력단 | 식물재배 원격제어시스템 및 그 제어방법 |
JP2017228224A (ja) * | 2016-06-24 | 2017-12-28 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
US10650290B2 (en) * | 2018-06-04 | 2020-05-12 | Adobe Inc. | Sketch completion using machine learning |
US11250347B2 (en) * | 2018-06-27 | 2022-02-15 | Microsoft Technology Licensing, Llc | Personalization enhanced recommendation models |
JP2020027517A (ja) * | 2018-08-15 | 2020-02-20 | 株式会社Nttドコモ | 行動データ識別システム |
-
2019
- 2019-01-18 JP JP2019006778A patent/JP7020438B2/ja active Active
- 2019-11-18 EP EP19910896.0A patent/EP3913550A4/en active Pending
- 2019-11-18 WO PCT/JP2019/044991 patent/WO2020148992A1/ja unknown
- 2019-11-18 US US17/414,983 patent/US20220067584A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012026982A (ja) | 2010-07-27 | 2012-02-09 | Panasonic Electric Works Sunx Co Ltd | 検査装置 |
Non-Patent Citations (2)
Title |
---|
IAN J. GOODFELLOWJEAN POUGET-ABADIEMEHDI MIRZABING XUDAVID WARDE-FARLEYSHERJIL OZAIRAARON COURVILLEYOSHUA BENGIO: "Generative Adversarial Networks", ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS, 2014, pages 2672 - 2680 |
ZHU, XINYUE ET AL.: "Emotion Classification with Data Augmentation Using Generative Adversarial Networks", ARXIV, 14 December 2017 (2017-12-14), XP055725382, Retrieved from the Internet <URL:https://arxiv.org/pdf/1711.00648.pdf> [retrieved on 20191218] * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4202747A4 (en) * | 2020-12-22 | 2024-04-17 | Hitachi, Ltd. | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING METHOD |
WO2022259481A1 (ja) * | 2021-06-10 | 2022-12-15 | 日本電気株式会社 | 学習方法 |
JP7548432B2 (ja) | 2021-06-10 | 2024-09-10 | 日本電気株式会社 | 学習方法 |
Also Published As
Publication number | Publication date |
---|---|
JP7020438B2 (ja) | 2022-02-16 |
JP2020115312A (ja) | 2020-07-30 |
EP3913550A1 (en) | 2021-11-24 |
EP3913550A4 (en) | 2022-05-11 |
CN113196312A (zh) | 2021-07-30 |
US20220067584A1 (en) | 2022-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7036049B2 (ja) | モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム | |
WO2020148992A1 (ja) | モデル生成装置、モデル生成方法、モデル生成プログラム、モデル生成システム、検査システム、及び監視システム | |
US11941868B2 (en) | Inference apparatus, inference method, and computer-readable storage medium storing an inference program | |
JP2022037241A (ja) | 異常検出システム、異常検出方法、異常検出プログラム及び学習済モデル生成方法 | |
CN111028939B (zh) | 一种基于深度学习的多组学智能诊断系统 | |
JP7396125B2 (ja) | モデル生成装置、推定装置、モデル生成方法、及びモデル生成プログラム | |
KR20200005987A (ko) | 터치입력을 이용한 인지장애 진단 시스템 및 방법 | |
JP6466442B2 (ja) | コンピュータ化された臨床診断支援のための階層的自己学習システム | |
JP7388137B2 (ja) | 統合分析方法、統合分析装置、及び統合分析プログラム | |
KR20190069687A (ko) | 우울증 진단을 위한 다중 설문 분석 시스템 및 그 방법 | |
CN117235661B (zh) | 基于ai的直饮水质量监测方法 | |
JP2020091862A (ja) | 医用撮像における特徴識別 | |
US20220406036A1 (en) | Analysis apparatus, analysis method, and computer-readable storage medium storing an analysis program | |
CN114580087A (zh) | 一种船载设备的联邦剩余使用寿命预测方法、装置及系统 | |
CN113196312B (zh) | 模型生成装置、模型生成方法、模型生成程序、模型生成系统、检查系统以及监视系统 | |
EP4295368A1 (en) | Predicting disease progression based on digital-pathology and gene-expression data | |
CN114550860B (zh) | 一种基于流程数据与智能网络模型的就医满意度评估方法 | |
EP4064184A1 (en) | Model generation device, estimation device, model generation method, and model generation program | |
Basani et al. | Enhanced Fault Diagnosis in IoT: Uniting Data Fusion with Deep Multi-Scale Fusion Neural Network | |
Al-Doghman et al. | Adaptive Consensus-based Aggregation for Edge Computing | |
CN117523481A (zh) | 一种肿瘤细胞培养信息分析方法 | |
Nerlich et al. | MARKUS TJ MOHR', HEINZ REDL2 |
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: 19910896 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2019910896 Country of ref document: EP Effective date: 20210818 |