WO2020184084A1 - 学習装置、推定装置、データ生成装置、学習方法、及び学習プログラム - Google Patents

学習装置、推定装置、データ生成装置、学習方法、及び学習プログラム Download PDF

Info

Publication number
WO2020184084A1
WO2020184084A1 PCT/JP2020/006252 JP2020006252W WO2020184084A1 WO 2020184084 A1 WO2020184084 A1 WO 2020184084A1 JP 2020006252 W JP2020006252 W JP 2020006252W WO 2020184084 A1 WO2020184084 A1 WO 2020184084A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
encoder
training
learning
training data
Prior art date
Application number
PCT/JP2020/006252
Other languages
English (en)
French (fr)
Inventor
大和 岡本
敦史 橋本
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to US17/431,455 priority Critical patent/US20220139070A1/en
Priority to CN202080013551.5A priority patent/CN113424208A/zh
Priority to EP20770498.2A priority patent/EP3940631A4/en
Publication of WO2020184084A1 publication Critical patent/WO2020184084A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • G06V20/54Surveillance or monitoring of activities, e.g. for recognising suspicious objects of traffic, e.g. cars on the road, trains or boats
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0112Measuring and analyzing of parameters relative to traffic conditions based on the source of data from the vehicle, e.g. floating car data [FCD]
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0116Measuring and analyzing of parameters relative to traffic conditions based on the source of data from roadside infrastructure, e.g. beacons
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0125Traffic data processing
    • G08G1/0129Traffic data processing for creating historical data or processing based on historical data
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0137Measuring and analyzing of parameters relative to traffic conditions for specific applications
    • G08G1/0141Measuring and analyzing of parameters relative to traffic conditions for specific applications for traffic information dissemination

Definitions

  • the present invention relates to a learning device, an estimation device, a data generation device, a learning method, and a learning program.
  • Patent Document 1 proposes a method of predicting demand for a predetermined target for emergency vehicles, transportation means, mobile sales, etc., based on area information indicating the situation of the area.
  • machine learning such as a regression model and a neural network is performed using learning data composed of area information and correct answer data indicating demand for a predetermined target corresponding to the area information.
  • the demand for a predetermined target is predicted from the area information indicating the situation of the area.
  • the trained model constructed by machine learning it is possible to perform estimation (including prediction) tasks such as regression and classification on unknown data of the same type as the given training data.
  • estimation including prediction
  • the accuracy of estimation by the trained model may depend on the acquisition attributes such as the conditions for acquiring the given training data (specifically, training data). For example, it is assumed that the data obtained from the sensor set on the road is used as training data to predict the traffic flow of the road. In this situation, the characteristics of the road traffic flow appearing in the data can differ due to various factors.
  • the characteristics of the traffic flow appearing in the data can be fundamentally different.
  • traffic flow characteristics can differ due to road attributes such as branch points, confluences, straight roads, and curved roads.
  • the characteristics of the traffic flow appearing in the obtained data may differ depending on the method of acquiring the data.
  • the traffic flow conditions appearing in the data may differ between the data obtained by measuring from the side near the road and the data obtained by measuring from a position slightly above the road.
  • the accuracy of estimation by the trained model may depend on the acquisition attributes such as the conditions under which the training data was acquired. For example, suppose you have built a trained model trained to predict traffic flow on this road from data obtained by sensors observing a straight road without branches and merges. In this case, if this trained model is used for the data obtained by the sensor observing the curved road including the confluence, the trained model is likely to make a false prediction. Similarly, it is assumed that a trained model is constructed to predict the traffic flow of the road from the data obtained by the sensors observing the road from above the road. In this case, if this trained model is used for data obtained by another sensor that observes the same road from the side, this trained model is likely to make a false prediction. In other words, if the attribute of acquisition of training data and the attribute of acquisition of unknown data that is the target of the estimation task are different, the trained model may not be able to be estimated properly.
  • Domain adaptation is known as one of these attempts. Domain adaptation is a method of adapting a trained model that has acquired the ability to perform a predetermined task using training data acquired in one domain to data acquired in another domain.
  • Non-Patent Document 1 proposes one of the methods of domain adaptation.
  • Non-Patent Document 1 a data set composed of a combination of source image data to be training data and correct answer data (label) indicating an object to be reflected in the source image data is prepared.
  • a source extractor and a classifier corresponding to this will be prepared.
  • the source extractor and the classifier are trained using the prepared data set.
  • the source extractor is trained to extract features from the input image data.
  • the classifier is trained to classify objects appearing in the source image data based on the features extracted from the source image data.
  • the target image data to be the target of the estimation task prepares the target image data to be the target of the estimation task.
  • a target extractor corresponding to this and a source extractor and a classifier for discriminating the output of the target extractor are prepared.
  • the discriminator is trained to discriminate between the feature amount extracted from the source image data by the source extractor and the feature amount extracted from the target image data by the target extractor
  • the discrimination by this discriminator is performed.
  • the classifier trained with the source image data can be applied to the target image data as well. That is, by using the trained object extractor and classifier, it is possible to classify the objects reflected in the target image data in the same manner as the source image data.
  • Non-Patent Document 1 even if the acquisition attributes differ between the unknown data targeted for the estimation task and the training data, the trained model can perform the estimation task for the unknown data. Can be expected to be properly feasible.
  • the present inventor has found that the conventional method according to Non-Patent Document 1 has the following problems. That is, this method has a problem that the introduction cost is high because the target extractor is generated for each domain for acquiring the target image data.
  • the training data includes data obtained from each sensor observing each of the one-lane and two-lane roads, and the trained model is more congested on two-lane roads than on one-lane roads. It is further assumed that the training data is used to obtain the knowledge that the possibility of occurrence of In this case, the trained model predicts congestion on this road with relatively high accuracy, although the training data and acquisition attributes are different for the unknown data obtained from the sensor that observes the three-lane road. May be able to do.
  • the conventional method the information about the event peculiar to the domain for acquiring the target image data is lost due to the hostile learning of the target extractor. Furthermore, not all information about the event common to the domain that acquires the target image data and the domain that acquires the source image data is not reflected in the learning of the target extractor, and some of the information about this common event. Information can be lost. Therefore, the conventional method has a problem that the accuracy of the estimation task by the trained model may be lowered due to the loss of such information.
  • Such problems are not unique to the scene of constructing a trained model for estimating the road condition from the data obtained by the sensor that observes the road condition.
  • This problem can occur in any situation where a trained model is built to perform a given estimation task on a given data.
  • the scene of constructing a trained model for performing a predetermined estimation task is, for example, a trained model for estimating the state of the target person from the data obtained by the sensor observing the state of the target person.
  • the predetermined data used in these situations are, for example, image data, sound data, numerical data, text data, and other measurement data obtained by a sensor.
  • the conventional method has a problem that the introduction cost is high because the target extractor is generated for each domain in which the target data is acquired. Further, in the learning of the target extractor, there is a problem that the accuracy of the estimation task by the trained model may be lowered due to the loss of information.
  • the present invention on the one hand, was made in view of such circumstances, and an object of the present invention is to provide a trained model that has a relatively low introduction cost and is robust against differences in attributes related to data acquisition. To provide the technology to build.
  • the present invention adopts the following configuration in order to solve the above-mentioned problems.
  • the learning device is composed of a combination of training data, metadata showing attributes related to the acquisition of the training data, and correct answer data showing features included in the training data.
  • a data acquisition unit that acquires a data set
  • a learning processing unit that performs machine learning of a learning model including a first encoder, a second encoder, a first meta-discriminator, a second meta-identifier, and an estimator.
  • the first encoder is configured to convert the given input data into the first feature quantity
  • the second encoder is configured to convert the input data into the second feature quantity.
  • the first meta-discriminator is configured so that the output value of the first encoder is input and the attribute related to the acquisition of the input data is discriminated from the first feature amount, and the second meta-discriminator is the said.
  • the output value of the second encoder is input, and the attribute related to the acquisition of the input data is identified from the second feature amount, and the estimator is the output of the first encoder and the second encoder.
  • a value is input, and the features included in the input data are estimated from the first feature amount and the second feature amount, and performing the machine learning is the training for each of the training data sets.
  • the first and second encoders are fed with the training data so that the estimation result obtained from the estimator matches the correct data. It is obtained from the first meta-discriminator by feeding the training data to the first encoder for one encoder, the second encoder and the second training step for training the estimator, and each training data set.
  • the third training step and the fourth training step are alternated, including a fourth training step, which trains the first encoder so that the identification result obtained from the first meta-identifier does not match the metadata. It is equipped with a learning processing unit that repeatedly executes data.
  • machine learning of each part of the learning model is performed by four training steps.
  • the second coder and the second meta-discriminator give training data to the second coder for each training data set, and the result of discrimination obtained from the second meta-discriminator becomes metadata. Trained to fit.
  • the second feature quantity obtained by the second encoder has a component corresponding to the attribute related to the acquisition so that the second meta-discriminator can appropriately identify the attribute related to the acquisition of the training data. Will be included.
  • the first coder, the second coder, and the estimator provide training data to the first and second coders for each training data set for estimation obtained from the estimator.
  • the results are trained to fit the correct data.
  • the first feature amount and the second feature amount obtained by the first coder and the second coder include the feature included in the training data, that is, the component corresponding to the correct answer of the estimation task. Will be.
  • the training data is given to the first encoder, and the first meta-discriminator is trained so that the identification result obtained from the first meta-discriminator matches the metadata.
  • the training data is given to the first encoder so that the identification result obtained from the first meta-discriminator does not match the metadata. That is, in the third training step and the fourth training step, hostile learning of the first encoder and the first meta-discriminator is performed.
  • the training data is included in the first feature quantity obtained by the first encoder so that the identification by the first meta-discriminator fails in response to the improvement in the discrimination performance of the first meta-identifier.
  • the component corresponding to the attribute related to the acquisition of is no longer included.
  • the second feature amount obtained by coding the second encoder tends to include the component corresponding to the metadata. Therefore, the first feature amount obtained by encoding the first encoder tends to include components corresponding to information other than metadata.
  • the estimator is trained to estimate the features contained in the training data from both of these features. Therefore, by using the trained first coder, second coder, and estimator, the features contained in the data can be determined based on both the domain-specific information from which the data is acquired and the common information. You can perform the task of estimating. Therefore, in cases where the domain-specific information from which the data is acquired is useful for the estimation task, the accuracy of estimation by the trained model can be improved.
  • the first feature amount obtained by the second encoder is not used and the first one obtained by the first encoder is not used.
  • the features included in the data may be estimated based on the features. This makes it possible to exclude the influence of the components corresponding to the metadata when performing the estimation task. Therefore, even in cases where information specific to attributes related to data acquisition adversely affects the accuracy of the estimation task (for example, when estimating events that commonly appear in the domain from which data is acquired), the accuracy of estimation by the trained model can be determined. Can be enhanced.
  • the output value obtained as the second feature from the second encoder is the domain of the input data (that is, the attribute related to data acquisition).
  • the output value obtained from the second encoder is input to the second meta-discriminator, and the output value (metadata identification result) obtained from the second meta-discriminator is input data.
  • the first encoder plays a role of extracting a feature amount (first feature amount) including a component corresponding to information other than metadata.
  • the second encoder plays a role of extracting the feature amount (second feature amount) corresponding to the metadata.
  • the first encoder and the second encoder can be commonly used for data obtained from different domains. Therefore, according to the configuration, it is not necessary to prepare an extractor for each domain in which data is acquired.
  • the configuration it is possible to save the trouble of preparing a trained extractor for each domain in which data is acquired.
  • the trained second encoder and the second meta-discriminator it is possible to evaluate whether or not the trained model can appropriately perform the estimation task on the unknown data. .. Based on the results of this evaluation, it is possible to prevent the training model from being used for unknown data that cannot perform the estimation task properly, or to select the training model that is appropriate for the unknown data. can do. Therefore, according to this configuration, it is possible to construct a trained model that has a relatively low introduction cost and is robust against differences in attributes related to data acquisition.
  • the first coder, the second coder, the first meta-discriminator, the second meta-discriminator, and the estimator are each operation parameters used for the operation, and the operation parameters adjusted by machine learning are used. Be prepared.
  • the types of such a first coder, a second coder, a first meta-discriminator, a second meta-discriminator, and an estimator are not particularly limited as long as they are machine-learnable models (learners). It may be appropriately selected depending on the embodiment.
  • a neural network for each of the first coder, the second coder, the first meta-discriminator, the second meta-discriminator, and the estimator
  • a neural network for each of the first coder, the second coder, the first meta-discriminator, the second meta-discriminator, and the estimator, the weight of the connection between each neuron, the threshold value of each neuron, and the like are described above. This is an example of operation parameters.
  • the data format of each feature amount does not have to be particularly limited and may be appropriately selected according to the embodiment.
  • the type of training data does not have to be particularly limited and may be appropriately selected according to the embodiment.
  • image data, sound data, numerical data, text data, and other measurement data obtained by a sensor may be used.
  • the sensor may be, for example, an image sensor (camera), an infrared sensor, a sound sensor (microphone), an ultrasonic sensor, an optical sensor, a pressure sensor, a pressure sensor, a temperature sensor, or the like.
  • the sensor may be, for example, an environmental sensor, a vital sensor, an in-vehicle sensor, a home security sensor, or the like.
  • the environmental sensor may be, for example, a barometer, a thermometer, a hygrometer, a sound pressure sensor, a sound sensor, an ultraviolet sensor, a luminometer, a rain gauge, a gas sensor, or the like.
  • Vital sensors include, for example, sphygmomanometer, pulse rate monitor, heart rate monitor, electrocardiograph, electromyogram, thermometer, skin electroreactivity meter, microwave sensor, electroencephalograph, electroencephalograph, activity meter, blood glucose meter, eye. It may be a potential sensor, an eye movement measuring instrument, or the like.
  • the in-vehicle sensor may be, for example, an image sensor, a laser sensor, a microwave sensor, or the like.
  • Home security sensors include, for example, image sensors, infrared sensors, activity (voice) sensors, gas (CO2, etc.) sensors, current sensors, smart meters (sensors that measure the amount of electricity used in home appliances, lighting, etc.).
  • Training data may consist of a plurality of different types of data.
  • the first encoder and the second encoder may be prepared for each type of training data. That is, the first coder and the second coder may each include a plurality of partial coders. Each partial encoder may be configured to accept the input of the corresponding type of training data and convert the input corresponding type of training data into a feature quantity.
  • Metadata is configured to show attributes related to the acquisition of training data.
  • This attribute related to the acquisition of training data may include any information that can identify any condition from which the training data was acquired.
  • the attribute related to the acquisition of the training data may include an attribute related to the time when the training data was acquired.
  • the attributes related to time may include, for example, the type of time zone, the type of day of the week, the type of weekdays and holidays, the type of month, the type of season, and the like.
  • the type of time zone may be represented by a division such as morning, noon, and night, or may be represented by a predetermined time division such as from 7:00 to 9:00.
  • the attributes related to the acquisition of the training data may include any kind of information related to the sensor.
  • the attributes related to the acquisition of training data may include attributes related to the usage pattern of the sensor, attributes related to the specifications of the sensor, attributes related to the observation environment of the sensor, and the like.
  • the attributes related to the usage pattern of the sensor may include, for example, attributes related to the operation setting of the sensor, attributes related to the installation status of the sensor, and the like.
  • the attributes related to the operation setting of the sensor may include, for example, a set value of the measurement range, a set value of the resolution of the measurement range, a set value of the sampling frequency, and the like.
  • Attributes related to the installation status of the sensor may include, for example, the installation angle of the sensor, the temperature around the sensor, the distance between the sensor and the observation target, the installation interval of the sensor, and the like.
  • the attributes related to the sensor specifications may include, for example, attributes related to sensor performance, attributes related to sensor device information, attributes related to the initial installation conditions of the sensor, and the like.
  • Attributes related to the performance of the sensor may include, for example, the sensitivity limit of the sensor, the dynamic range, the settable range of spatial resolution, the settable range of the sampling frequency, and the like.
  • the attributes related to the device information of the sensor may include, for example, the type of the sensor, the name of the sensor, the description of the sensor, and the like.
  • the attributes related to the initial installation conditions of the sensor may include information such as a proper noun of the installation location.
  • Attributes related to the observation environment of the sensor may include, for example, location, weather, temperature, humidity, illuminance, and the like.
  • the attributes related to the acquisition of training data may include any kind of information about the object.
  • the object observed by the sensor may be the object.
  • the attributes related to the acquisition of training data may include, for example, the type of the object, the identification information for identifying the object, and the like.
  • the attributes related to the acquisition of training data may include, for example, identification information (personal information) such as an identifier of the person (subject), gender, age, physique, and race.
  • identification information personal information
  • the attributes relating to the acquisition of the training data may include any kind of information about the behavior of the person.
  • the correct answer data is configured to show the features included in the training data, that is, the correct answer of the estimation task for the training data.
  • the features included in the training data can be the target of estimation (including prediction) tasks such as classification and regression, the types may not be particularly limited and may be appropriately selected according to the embodiment. You can.
  • Estimating features may include classification, regression, and the like.
  • the feature may include any element that can be inferred from the data. Estimating a feature may include predicting some element of the future. In this case, the feature may include a precursor to an element that will appear in the future.
  • the correct answer data may be appropriately determined according to the estimation task to be acquired.
  • the correct answer data may be composed of, for example, information indicating the category of the feature, information indicating the probability that the feature appears, information indicating the value of the feature, information indicating the range in which the feature appears, and the like.
  • a training data set that does not include the correct answer data that is, a training data set composed of a combination of the correct answer data and the metadata may be further used.
  • At least one or more first training data sets and at least one or more second training data sets included in the plurality of training data sets are based on the respective metadata. It may be obtained from different domains so that the attributes shown are different. According to this configuration, it is possible to construct a trained model that is robust to the difference in attributes related to data acquisition.
  • different domains mean that the attributes related to the acquisition of training data are different, and when the metadata shows multiple attributes, at least some of the attributes are different.
  • the domain defines attributes related to data acquisition, such as conditions for acquiring data. As an example, assuming a scene in which data is acquired by a camera, if the shooting conditions such as the orientation of the camera, the resolution of the camera, the brightness of the environment, and the shooting target are different, the attributes related to the acquisition of training data are different. In this case, each shooting condition is an example of a different domain.
  • the second encoder in the first training step, includes the component corresponding to the attribute related to the acquisition of the training data indicated by the metadata. It may be trained so that in the fourth training step, the first feature quantity comprises a component corresponding to information commonly appearing in the domain for acquiring the training data of each training data set. May be trained. According to this configuration, it is possible to construct a trained model that is robust to the difference in attributes related to data acquisition.
  • the information that appears in common in the domain is, for example, information that does not depend on the attributes related to the acquisition of training data indicated by the metadata. As an example, when image data obtained by photographing numbers under different shooting conditions and backgrounds is given, the type of numbers is information that appears in common in the domain.
  • noise may be input to each of the encoders together with the training data, and each training may be executed. If the randomness of some training data in multiple training data sets is very different from that of other training data, or if some training data has a large defect compared to other training data, then It is difficult to prevent the components corresponding to the different characteristics from being included in the first feature quantity. That is, it is difficult to prevent the first encoder from learning the characteristics of the difference. Therefore, in these cases, the first meta-discriminator can identify the acquired attribute from the characteristics of the difference, and in the fourth training step, the identification by the first meta-discriminator fails. 1 It can be difficult to train a encoder.
  • noise can be input to each encoder together with the training data to fill in the characteristics of the difference, thereby properly completing the fourth training step. Will be able to. Therefore, according to this configuration, even when the above training data is given, it is possible to construct a trained model that is robust to the difference in attributes related to data acquisition.
  • performing the machine learning means that the training data is given to the first encoder for each learning data set, so that the first encoder can be used as the first feature quantity.
  • the first encoder reduces the amount of mutual information between the obtained output value and the output value obtained as the second feature amount from the second encoder by giving the training data to the second encoder.
  • a fifth training step of training the second encoder may be further included.
  • the component corresponding to the metadata is likely to be included in the second feature amount as a result of the result of the fifth training step, whereas the component corresponding to the information other than the metadata is included in the first feature amount. It can be more easily contained in the second feature amount and less likely to be contained in the second feature amount.
  • the component corresponding to the metadata and the component corresponding to the other information can be appropriately distributed to the second feature amount and the first feature amount.
  • dummy metadata corresponding to the metadata which is a dummy configured with a value different from the corresponding metadata.
  • Metadata may be retrieved.
  • training the first encoder so that the result of the identification does not match the metadata means that the identification obtained from the first meta-identifier by giving the training data to the first encoder. It may be configured by training the first encoder so that the results match the dummy metadata. According to this configuration, the processing of the fourth training step can be simplified.
  • the dummy metadata may be composed of metadata of a learning data set different from the corresponding learning data set. According to this configuration, the amount of calculation for generating dummy metadata can be suppressed, and the processing cost of the fourth training step can be reduced.
  • the method of selecting another learning data set for acquiring the metadata to be used as dummy metadata does not have to be particularly limited, and may be appropriately selected according to the embodiment.
  • another training data set may be randomly selected from a plurality of training data sets, and the metadata of the selected training data set may be used as dummy metadata of the target training data set.
  • the metadata of another training data set assigned to the target training data set is used as dummy metadata. You may.
  • one training data set may be selected from a plurality of training data sets, and the metadata of the selected training data set may be used as dummy metadata of all the training data sets.
  • dummy metadata may be generated by inverting the value of the metadata.
  • the dummy metadata may be composed of random values (for example, random numbers) different from the values of the metadata.
  • the training data set may be used as it is for training, or the dummy metadata of the training data set may be changed.
  • the method of training the first encoder so that the identification result obtained from the first meta-identifier does not match the metadata does not have to be limited to the method of giving this dummy metadata.
  • the first encoder may be trained by calculating the gradient in the direction in which the error between the output value of the first meta-discriminator and the metadata becomes large and back-propagating the calculated gradient.
  • the learning model may further include a decoder configured to decode the input data from the first feature amount and the second feature amount.
  • the decoding data obtained by the decoder by giving the training data to the first encoder and the second encoder conforms to the training data.
  • it may further include a sixth training step of training the first encoder, the second encoder and the decoder.
  • it is guaranteed that the input data can be restored from the first feature amount and the second feature amount by training the decoder. That is, it can be guaranteed that there is no loss of information regarding the input data in the first feature amount and the second feature amount. Therefore, according to the configuration, in any of the above cases, information loss can be suppressed in the process of converting to feature quantities, so that the estimation task can be performed robustly and with high accuracy due to the difference in attributes related to data acquisition. You can build possible trained models.
  • the learning device in the first, second, and sixth training steps, by giving the training data to the second encoder, an output value is output from the second encoder as the second feature amount. Is acquired, noise is input to the second meta-discriminator, the estimator, and the decoder together with the acquired output value, and each training may be performed. According to this configuration, it is possible to learn domains having different attributes related to data acquisition by performing training in which noise is added to the second feature amount. This makes it possible to build a trained model that is robust against differences in attributes related to data acquisition and can perform estimation tasks with high accuracy.
  • the form in which noise is input together with the second feature amount does not have to be limited to such an example. For example, noise input may be omitted in at least one of the first, second, and sixth training steps.
  • the data acquisition unit uses the first training data of at least one of the plurality of training data sets after the learning processing unit performs machine learning of the learning model.
  • an output value is acquired from the first encoder as the first feature amount
  • the training data is assigned to the second encoder
  • the output value is output from the second encoder as the second feature amount.
  • Output data may be acquired from the decoder as the decrypted data.
  • the learning processing unit may use the acquired output data as new training data to perform machine learning of the learning model again.
  • the decoded data obtained by inputting noise together with the second feature amount is used for machine learning as new training data to learn domains with different attributes related to data acquisition. Can be done. This makes it possible to build a trained model that is robust against differences in attributes related to data acquisition and can perform estimation tasks with high accuracy.
  • the correct answer data associated with the new training data may be acquired as appropriate. For example, if the features indicated by the correct answer data do not depend on the attributes related to the acquisition of the training data, the correct answer data associated with the original training data used to generate the new training data may be associated with the new training data. Further, for example, the result of estimation by the estimator may be associated with new training data as correct answer data. Further, for example, new correct answer data may be generated, and the generated new correct answer data may be associated with new training data. Similarly, metadata associated with new training data may be acquired as appropriate. For example, the result of discrimination obtained from the second meta-discriminator by inputting noise together with the second feature amount may be associated as metadata as new training data. Also, for example, new metadata may be generated and the generated new metadata may be associated with new training data.
  • the learning model is configured so that the output value of the first encoder is input and the features included in the input data are estimated from the first feature amount. It may further include a vessel. To carry out the machine learning, for each of the training data sets, the estimation result obtained from the other estimator by giving the training data to the first encoder is included in the correct answer data or the training data. A seventh training step may be further included to train the first encoder and the other estimator to fit other correct data showing other features. According to this configuration, it is possible to guarantee that the component corresponding to the information available for estimating the feature is included in the first feature quantity by the machine learning of the seventh training step. This makes it possible to improve the accuracy of estimation by the trained model, especially in the case of estimating an event that commonly appears in the domain from which data is acquired from the first feature quantity.
  • the other trained estimators may be used to perform the estimation task based on the first feature quantity. It is desirable that the other features shown by the other correct answer data are different from the features shown by the correct answer data and appear in common in the domain. In the case of training the first encoder and other estimators so that the estimation results obtained from other estimators match the correct data, the features indicated by the correct data are those that commonly appear in the domain. Is desirable.
  • the learning device may be applied to any situation in which a trained model for performing a predetermined estimation task for a predetermined data is constructed.
  • the learning device related to each of the above aspects is, for example, a scene of constructing a learned model for estimating the condition of the road from the data obtained by the sensor for observing the condition of the road, and a sensor for observing the condition of the subject.
  • the training data may be sensing data obtained by a sensor for observing a vehicle traveling on a road.
  • the metadata may indicate the attributes of the road, the observation angle of the sensor, the installation interval of the sensor, the type of the sensor, or a combination thereof as the attributes related to the acquisition.
  • the correct answer data may indicate information on the traffic condition of the road as the feature.
  • the training data may be sensing data obtained by a sensor that observes the state of the subject.
  • the metadata may indicate, as attributes related to the acquisition, the identification information of the subject, the attribute related to the time when the sensing data was acquired, the attribute related to the installation status of the sensor, the installation location of the sensor, or a combination thereof.
  • the correct answer data may indicate the state of the subject as the feature.
  • the training data may be image data showing the product.
  • the metadata may indicate the attributes of the product, the shooting conditions of the product, the attributes of the factory that manufactures the product, or a combination thereof.
  • the correct answer data may indicate the state of the product as the feature.
  • the product shown in the image data may be, for example, a product transported on a production line of electronic devices, electronic parts, automobile parts, chemicals, foods, and the like.
  • the electronic component may be, for example, a board, a chip capacitor, a liquid crystal, a winding of a relay, or the like.
  • the automobile parts may be, for example, connecting rods, shafts, engine blocks, power window switches, panels and the like.
  • the chemical may be, for example, a packaged tablet, an unpackaged tablet, or the like.
  • the product may be a final product produced after the completion of the manufacturing process, an intermediate product produced in the middle of the manufacturing process, or an initial product prepared before the manufacturing process is completed. You may.
  • the condition of the product may be, for example, related to defects.
  • the state of the product may be expressed by whether or not the product contains defects, the type of defects contained in the product, the range of defects contained in the product, or a combination thereof.
  • the features may relate to product defects such as scratches, stains, cracks, dents, burrs, color unevenness, foreign matter contamination and the like.
  • the learning device is composed of a combination of image data, metadata indicating attributes related to the acquisition of the image data, and correct answer data indicating features included in the image data.
  • a data acquisition unit that acquires a data set
  • a learning processing unit that performs machine learning of a learning model including a first encoder, a second encoder, a first meta-discriminator, a second meta-identifier, and an estimator.
  • the first encoder is configured to convert the given input data into the first feature quantity
  • the second encoder is configured to convert the input data into the second feature quantity.
  • the first meta-discriminator is configured so that the output value of the first encoder is input and the attribute related to the acquisition of the input data is discriminated from the first feature amount, and the second meta-discriminator is the said.
  • the output value of the second encoder is input, and the attribute related to the acquisition of the input data is identified from the second feature amount, and the estimator is the output of the first encoder and the second encoder.
  • a value is input, and the features included in the input data are estimated from the first feature amount and the second feature amount.
  • Performing the machine learning is performed on the image for each training data set.
  • the first and second encoders are fed with the image data so that the estimation results obtained from the estimator match the correct data. It is obtained from the first meta-discriminator by feeding the image data to the first encoder for one encoder, the second encoder and the second training step for training the estimator, and each training data set.
  • the third training step and the fourth training step are alternated, including a fourth training step, which trains the first encoder so that the identification result obtained from the first meta-identifier does not match the metadata. It is equipped with a learning processing unit that repeatedly executes data.
  • the learning device is composed of a combination of sensing data, metadata indicating attributes related to acquisition of the sensing data, and correct answer data indicating features included in the sensing data.
  • a data acquisition unit that acquires a data set
  • a learning processing unit that performs machine learning of a learning model including a first encoder, a second encoder, a first meta-discriminator, a second meta-identifier, and an estimator.
  • the first encoder is configured to convert the given input data into the first feature quantity
  • the second encoder is configured to convert the input data into the second feature quantity.
  • the first meta-discriminator is configured so that the output value of the first encoder is input and the attribute related to the acquisition of the input data is discriminated from the first feature amount, and the second meta-discriminator is the said.
  • the output value of the second encoder is input, and the attribute related to the acquisition of the input data is identified from the second feature amount, and the estimator is the output of the first encoder and the second encoder.
  • a value is input, and the features included in the input data are estimated from the first feature amount and the second feature amount, and performing the machine learning is the sensing for each of the learning data sets.
  • the first and second encoders are fed with the sensing data so that the estimation results obtained from the estimator match the correct data. It is obtained from the first meta-discriminator by feeding the sensing data to the first encoder for one encoder, the second encoder, the second training step to train the estimator, and each training data set.
  • the third training step and the fourth training step are alternated, including a fourth training step, which trains the first encoder so that the identification result obtained from the first meta-identifier does not match the metadata. It is equipped with a learning processing unit that repeatedly executes data.
  • One aspect of the present invention may be a device that utilizes a learned learning model constructed by the learning device.
  • one aspect of the present invention may be an estimation device configured to perform a predetermined estimation task on predetermined data by using the learned learning model constructed by the learning device. Good.
  • This estimation device may be referred to as a prediction device, a monitoring device, a diagnostic device, an inspection device, or the like, depending on the type of estimation task in the application scene.
  • one aspect of the present invention may be a data generation device configured to generate new data by using a trained learning model including a decoder constructed by the learning device. Good.
  • the estimation device includes the first encoder, the second encoder, and the second encoder trained by a data acquisition unit that acquires target data and a learning apparatus according to any one of the above aspects. It includes an estimation unit that estimates features included in the acquired target data using an estimator, and an output unit that outputs information about the result of estimating the features.
  • the estimator utilizes the data acquisition unit for acquiring the target data, the first encoder trained by the learning device according to the one aspect, and the other estimator. Therefore, it includes an estimation unit that estimates the features included in the acquired target data, and an output unit that outputs information about the result of estimating the features.
  • the other estimator may be replaced with a learned estimator constructed independently of the machine learning of the learning device by the learning device.
  • the estimation device identifies the attribute related to the acquisition of the target data by using the second encoder and the second meta-identifier trained by the learning device, and the result of the identification. Based on the above, an evaluation unit for determining whether or not to adopt the result of estimating the characteristics may be further provided. In addition, not adopting the estimated result may include discarding the estimated result after executing the estimation process by the estimation unit and not executing the estimation process.
  • the estimation device includes the first encoder and the second encoder trained by a data acquisition unit that acquires target image data and a learning apparatus according to any one of the above aspects. , And an estimation unit that estimates features included in the acquired target image data using the estimator, and an output unit that outputs information about the result of estimating the features.
  • the estimation device utilizes a data acquisition unit that acquires target image data, the first encoder trained by the learning device according to the one aspect, and the other estimator.
  • An estimation unit that estimates the features included in the acquired target image data, and an output unit that outputs information about the result of estimating the features are provided.
  • Other estimators may be replaced with trained estimators constructed independently of the machine learning of the learning device by the learning device.
  • the estimation device identifies the attribute related to the acquisition of the target image data by using the second encoder and the second meta-identifier trained by the learning device, and the identification is performed.
  • An evaluation unit for determining whether or not to adopt the result of estimating the feature based on the result may be further provided.
  • not adopting the estimated result may include discarding the estimated result after executing the estimation process by the estimation unit and not executing the estimation process.
  • the estimation device includes the first coder and the second coder trained by a data acquisition unit that acquires target sensing data and a learning device according to any one of the above. , And an estimation unit that estimates the features included in the acquired target sensing data using the estimator, and an output unit that outputs information about the result of estimating the features.
  • the estimator according to one aspect of the present invention utilizes a data acquisition unit that acquires target sensing data, the first encoder trained by the learning device according to the one aspect, and the other estimator.
  • the device includes an estimation unit that estimates the features included in the acquired target sensing data, and an output unit that outputs information about the result of estimating the features.
  • Other estimators may be replaced with trained estimators constructed independently of the machine learning of the learning device by the learning device.
  • the estimation device identifies the attribute related to the acquisition of the target sensing data by using the second encoder and the second meta-identifier trained by the learning device, and the identification is performed.
  • An evaluation unit for determining whether or not to adopt the result of estimating the feature based on the result may be further provided.
  • not adopting the estimated result may include discarding the estimated result after executing the estimation process by the estimation unit and not executing the estimation process.
  • the data generation device provides the target data to the data acquisition unit that acquires the target data and the first encoder trained by the learning device according to the one aspect.
  • An output value is obtained from the first encoder as the first feature quantity, and the trained decoder is used to obtain the output value obtained from the second encoder without giving the output value acquired from the second encoder.
  • a data generation unit that generates decoded data by decoding the target data from the output value obtained from, and a storage processing unit that stores the generated decoded data in a predetermined storage area. Be prepared.
  • the data generation device provides the target image data to the data acquisition unit that acquires the target image data and the first encoder trained by the learning device according to the one aspect.
  • the output value is acquired from the first encoder as the first feature amount, and the trained decoder is used to obtain the output value acquired from the second encoder without giving the output value.
  • a data generation unit that generates decoded data by decoding the target image data from the output value acquired from the encoder, and a storage processing unit that stores the generated decoded data in a predetermined storage area. And.
  • the data generation device provides the target sensing data to the data acquisition unit that acquires the target sensing data and the first encoder trained by the learning device according to the one aspect.
  • the output value is acquired from the first encoder as the first feature amount
  • the trained decoder is used to obtain the output value acquired from the second encoder without giving the output value.
  • a data generation unit that generates decoded data by decoding the target sensing data from the output value acquired from the encoder, and a storage processing unit that stores the generated decoded data in a predetermined storage area. And.
  • one aspect of the present invention is an information processing method that realizes all or a part of each of the above configurations. It may be a program, or it may be a storage medium that stores such a program and can be read by a computer or other device, machine, or the like. Here, the storage medium that can be read by a computer or the like is a medium that stores information such as a program by electrical, magnetic, optical, mechanical, or chemical action. Further, one aspect of the present invention may be a system composed of a learning device according to any one of the above forms, and at least one of an estimation device and a data generation device according to any one form.
  • the computer is configured by a combination of training data, metadata showing attributes related to the acquisition of the training data, and correct answer data showing the characteristics included in the training data.
  • the first encoder is configured to convert a given input data into a first feature quantity
  • the second encoder is configured to convert the input data into a second feature quantity.
  • the first meta-discriminator is configured so that the output value of the first encoder is input and the attribute related to the acquisition of the input data is discriminated from the first feature amount
  • the second meta-discriminator is the second meta-discriminator.
  • the output values of the two encoders are input, and the attributes related to the acquisition of the input data are identified from the second feature amount
  • the estimator is the output values of the first encoder and the second encoder. Is input, and the features included in the input data are estimated from the first feature amount and the second feature amount, and performing the machine learning is the training data for each of the training data sets.
  • the third training step and the fourth training step are alternated, including a fourth training step in which the first encoder is trained so that the identification result obtained from the meta-discriminator does not match the metadata. It is an information processing method that executes repeatedly, steps, and.
  • the learning program is configured by combining training data, metadata showing attributes related to acquisition of the training data, and correct answer data showing features included in the training data, respectively.
  • the step of acquiring a plurality of training data sets to be performed and in the step of performing machine learning of a training model including a first encoder, a second encoder, a first meta-discriminator, a second meta-identifier, and an estimator. Therefore, the first encoder is configured to convert the given input data into the first feature amount, and the second encoder is configured to convert the input data into the second feature amount.
  • the first meta-discriminator is configured so that the output value of the first encoder is input and the attribute related to the acquisition of the input data is discriminated from the first feature amount
  • the second meta-discriminator is configured.
  • the output value of the second encoder is input, and the attribute related to the acquisition of the input data is identified from the second feature amount.
  • the estimator is of the first encoder and the second encoder. An output value is input, the features included in the input data are estimated from the first feature amount and the second feature amount, and the machine learning is performed for each of the learning data sets.
  • the second encoder and the second meta-discriminator are trained so that the identification result obtained from the second meta-identifier by giving the training data to the second encoder is compatible with the metadata.
  • the training data is given to the first encoder and the second encoder so that the estimation result obtained from the estimator matches the correct answer data. Obtained from the first meta-discriminator by feeding the training data to the first coder for the first coder, the second coder, the second training step to train the estimator, and each training data set.
  • the third training step and the fourth training step include a fourth training step of training the first encoder so that the identification result obtained from the first meta-identifier does not match the metadata. It is a program for executing steps and steps that are executed repeatedly alternately.
  • FIG. 1 schematically illustrates an example of a situation in which the present invention is applied.
  • FIG. 2 schematically illustrates an example of the hardware configuration of the learning device according to the embodiment.
  • FIG. 3 schematically illustrates an example of the hardware configuration of the estimation device according to the embodiment.
  • FIG. 4 schematically illustrates an example of the hardware configuration of the data generation device according to the embodiment.
  • FIG. 5A schematically illustrates an example of the software configuration of the learning device according to the embodiment.
  • FIG. 5B schematically illustrates an example of the software configuration of the learning device according to the embodiment.
  • FIG. 5C schematically illustrates an example of the software configuration of the learning device according to the embodiment.
  • FIG. 5D schematically illustrates an example of the software configuration of the learning device according to the embodiment.
  • FIG. 5A schematically illustrates an example of the software configuration of the learning device according to the embodiment.
  • FIG. 5B schematically illustrates an example of the software configuration of the learning device according to the embodiment.
  • FIG. 5C schematically illustrates
  • FIG. 6 schematically illustrates an example of the software configuration of the estimation device according to the embodiment.
  • FIG. 7 schematically illustrates an example of the software configuration of the data generation device according to the embodiment.
  • FIG. 8 illustrates an example of the processing procedure of the learning device according to the embodiment.
  • FIG. 9 illustrates an example of the machine learning processing procedure of the learning device according to the embodiment.
  • FIG. 10 illustrates an example of the processing procedure of the estimation device according to the embodiment.
  • FIG. 11 illustrates an example of the processing procedure of the data generator according to the embodiment.
  • FIG. 12 schematically illustrates an example of another situation to which the present invention is applied.
  • FIG. 13A schematically illustrates an example of the hardware configuration of the prediction device according to another embodiment.
  • FIG. 13B schematically illustrates an example of the software configuration of the prediction device according to another form.
  • FIG. 14 schematically illustrates an example of another situation to which the present invention is applied.
  • FIG. 15A schematically illustrates an example of the hardware configuration of the monitoring device according to another form.
  • FIG. 15B schematically illustrates an example of the software configuration of the monitoring device according to another form.
  • FIG. 16 schematically illustrates an example of another situation to which the present invention is applied.
  • FIG. 17 schematically illustrates an example of another situation to which the present invention is applied.
  • FIG. 18A schematically illustrates an example of the hardware configuration of the inspection device according to another form.
  • FIG. 13B schematically illustrates an example of the software configuration of the inspection device according to another form.
  • FIG. 19 schematically illustrates an example of another situation to which the present invention is applied.
  • FIG. 20A schematically illustrates an example of the hardware configuration of the monitoring device according to another form.
  • FIG. 20B schematically illustrates an example of the software configuration of the monitoring device according to another form.
  • FIG. 21 schematically illustrates an example of another situation to which the present invention is applied.
  • FIG. 22A schematically illustrates an example of the hardware configuration of the monitoring device according to another form.
  • FIG. 22B schematically illustrates an example of the software configuration of the monitoring device according to another form.
  • FIG. 23 schematically illustrates an example of another situation to which the present invention is applied.
  • FIG. 24A schematically illustrates an example of the hardware configuration of the recommended device according to another embodiment.
  • FIG. 24B schematically illustrates an example of the software configuration of the recommended device according to another embodiment.
  • the present embodiment an embodiment according to one aspect of the present invention (hereinafter, also referred to as “the present embodiment”) will be described with reference to the drawings.
  • the embodiments described below are merely examples of the present invention in all respects. Needless to say, various improvements and modifications can be made without departing from the scope of the present invention. That is, in carrying out the present invention, a specific configuration according to the embodiment may be appropriately adopted.
  • the data appearing in the present embodiment are described in natural language, but more specifically, the data is specified in a pseudo language, commands, parameters, machine language, etc. that can be recognized by a computer.
  • FIG. 1 schematically illustrates an example of a scene in which the present invention is applied.
  • the system according to the present embodiment includes a learning device 1, an estimation device 2, and a data generation device 3.
  • the learning device 1 and the estimation device 2 perform machine learning of the learning model 5, and the estimation system for estimating the features included in the target data is configured by using the result of the machine learning.
  • the learning device 1 and the data generation device 3 configure a data generation system that performs machine learning of the learning model 5 and uses the results of the machine learning to generate new data related to the target data. ..
  • the learning device 1 is a computer configured to perform machine learning of the learning model 5. Specifically, the learning device 1 according to the present embodiment acquires a plurality of learning data sets 121. Each training data set 121 is a correct answer indicating the training data 122, the metadata 123 indicating the attributes related to the acquisition of the training data 122, and the features included in the training data 122 (that is, the correct answer of the estimation task for the training data 122). It is composed of a combination of data 124.
  • the type of training data 122 does not have to be particularly limited, and may be appropriately selected according to the estimation task to be acquired by the learning model 5.
  • the training data 122 may be, for example, image data, sound data, numerical data, text data, or other measurement data obtained by a sensor.
  • the learning model 5 is made to acquire the ability to estimate the features included in the sensing data obtained by the sensor S. Therefore, in the present embodiment, the training data 122 is sensing data obtained by the sensor S or a sensor of the same type (hereinafter, including the same type of sensor, referred to as the sensor S).
  • the type of the sensor S does not have to be particularly limited, and may be appropriately selected according to the estimation task to be acquired by the learning model 5.
  • the sensor S may be, for example, an image sensor (camera), an infrared sensor, a sound sensor (microphone), an ultrasonic sensor, an optical sensor, a pressure sensor, a pressure sensor, a temperature sensor, or the like. Further, the sensor S may be, for example, an environmental sensor, a vital sensor, an in-vehicle sensor, a home security sensor, or the like.
  • the environmental sensor may be, for example, a barometer, a thermometer, a hygrometer, a sound pressure sensor, a sound sensor, an ultraviolet sensor, an illuminance meter, a rain gauge, a gas sensor, or the like.
  • Vital sensors include, for example, sphygmomanometer, pulse rate monitor, heart rate monitor, electrocardiograph, electromyogram, thermometer, skin electroreactivity meter, microwave sensor, electroencephalograph, electroencephalograph, activity meter, blood glucose meter, eye. It may be a potential sensor, an eye movement measuring instrument, or the like.
  • the in-vehicle sensor may be, for example, an image sensor, a laser sensor, a microwave sensor, or the like.
  • Home security sensors include, for example, image sensors, infrared sensors, activity (voice) sensors, gas (CO2, etc.) sensors, current sensors, smart meters (sensors that measure the amount of electricity used in home appliances, lighting, etc.). Good.
  • Metadata 123 is configured to indicate attributes related to the acquisition of training data 122.
  • the attribute relating to the acquisition of the training data 122 may include any information that can identify any condition from which the training data 122 was acquired.
  • the attribute related to the acquisition of the training data 122 may include an attribute related to the time when the training data 122 was acquired.
  • the attributes related to time may include, for example, the type of time zone, the type of day of the week, the type of weekdays and holidays, the type of month, the type of season, and the like.
  • the type of time zone may be represented by a division such as morning, noon, and night, or may be represented by a predetermined time division such as from 7:00 to 9:00.
  • the attribute related to the acquisition of the training data 122 may include all kinds of information related to the sensor S.
  • the attributes related to the acquisition of the training data 122 may include attributes related to the usage pattern of the sensor S, attributes related to the specifications of the sensor S, attributes related to the observation environment of the sensor S, and the like.
  • the attributes related to the usage pattern of the sensor S may include, for example, attributes related to the operation setting of the sensor S, attributes related to the installation status of the sensor S, and the like.
  • the attributes related to the operation setting of the sensor S may include, for example, a set value of the measurement range, a set value of the resolution of the measurement range, a set value of the sampling frequency, and the like.
  • Attributes related to the installation status of the sensor S may include, for example, the installation angle of the sensor S, the temperature around the sensor S, the distance between the sensor S and the observation target, the installation interval of the sensor S, and the like.
  • the attributes related to the specifications of the sensor S may include, for example, attributes related to the performance of the sensor S, attributes related to device information of the sensor S, attributes related to the initial installation conditions of the sensor S, and the like.
  • Attributes related to the performance of the sensor S may include, for example, the sensitivity limit of the sensor S, the dynamic range, the settable range of spatial resolution, the settable range of the sampling frequency, and the like.
  • the attributes related to the device information of the sensor S may include, for example, the type of the sensor S, the name of the sensor S, the description of the sensor S, and the like.
  • the attribute related to the initial installation condition of the sensor S may include information such as a proper noun of the installation location.
  • the attributes of the sensor S regarding the observation environment may include, for example, location, weather, temperature, humidity, illuminance, and the like.
  • the attribute related to the acquisition of the training data 122 may include all kinds of information about the object.
  • the object to be observed by the sensor S may be the object.
  • the attributes related to the acquisition of the training data 122 may include, for example, the type of the object, the identification information for identifying the object, and the like.
  • the attributes related to the acquisition of the training data 122 may include, for example, identification information (personal information) such as an identifier of the person (subject), gender, age, physique, and race.
  • identification information personal information
  • the attributes relating to the acquisition of the training data 122 may include any kind of information about the behavior of the person.
  • the correct answer data 124 is configured to show the features included in the training data 122, that is, the correct answer of the estimation task for the training data 122.
  • the type of the feature included in the training data 122 may not be particularly limited as long as it can be the target of estimation (including prediction) tasks such as classification and regression, and is appropriately selected according to the embodiment. May be done.
  • Estimating features may include classification, regression, and the like.
  • the feature may include any element that can be inferred from the data. Estimating a feature may include predicting some element of the future. In this case, the feature may include a precursor to an element that will appear in the future.
  • the correct answer data 124 may be appropriately determined according to the estimation task to be acquired.
  • the correct answer data 124 may be composed of, for example, information indicating the category of the feature, information indicating the probability that the feature appears, information indicating the value of the feature, information indicating the range in which the feature appears, and the like.
  • a camera, an ultrasonic sensor, an infrared sensor, or the like may be used as a sensor for observing a vehicle traveling on the road.
  • the training data 122 may be image data, data showing the measurement result of the number of passing vehicles per unit time, data showing the measurement result of the average speed, and the like.
  • the metadata 123 may be composed of information indicating the attributes of the road, the observation angle of the sensor S, the installation interval of the sensor S, the type of the sensor S, and the like.
  • the attributes of a road are, for example, whether it is a straight road, whether it is a curved road, whether there is a toll gate on a toll road, whether it is a confluence, whether it is a branch point, etc. May be indicated by.
  • the correct answer data 124 may be composed of information on the traffic condition of the road.
  • the traffic conditions may be current or future as revealed by the training data 122.
  • Information on the traffic condition of the road may be expressed by, for example, the presence or absence of a traffic jam, the probability of the occurrence of a traffic jam, the duration of the traffic jam that has occurred, the time required from the installation location of the sensor S to a predetermined location, and the like.
  • the presence or absence of traffic congestion may be expressed by whether or not traffic congestion occurs after a predetermined time.
  • the learning device 1 uses the acquired plurality of learning data sets 121 to perform machine learning of the learning model 5.
  • the learning model 5 includes a first encoder 51, a second encoder 52, a first meta-discriminator 53, a second meta-identifier 54, and an estimator 55.
  • the first encoder 51 is configured to convert the given input data into the first feature quantity.
  • the second encoder 52 is configured to convert the given input data into a second feature quantity.
  • the data format of each feature amount does not have to be particularly limited and may be appropriately selected according to the embodiment.
  • the first meta-identifier 53 is configured so that an output value (first feature amount) of the first encoder 51 is input and an attribute related to acquisition of input data is identified from the input first feature amount.
  • the second meta-identifier 54 is configured so that the output value (second feature amount) of the second encoder 52 is input and the attribute related to the acquisition of the input data is identified from the input second feature amount.
  • the estimator 55 the output values (first feature amount and second feature amount) of the first coder 51 and the second coder 52 are input, and the input first feature amount and the second feature amount are used as input data. It is configured to estimate the features involved.
  • implementing machine learning includes the first to fourth training steps.
  • the learning device 1 provides the training data 122 to the second encoder 52 for each training data set 121 so that the identification result obtained from the second meta-discriminator 54 matches the metadata 123.
  • the second encoder 52 and the second meta-identifier 54 are trained.
  • the learning device 1 gives the training data 122 to the first encoder 51 and the second encoder 52 for each training data set 121, and the estimation result obtained from the estimator 55 is the correct answer data 124.
  • the first encoder 51, the second encoder 52, and the estimator 55 are trained to conform to.
  • the learning device 1 gives the training data 122 to the first encoder 51 for each training data set 121, so that the identification result obtained from the first meta-discriminator 53 matches the metadata 123. As such, the first meta-discriminator 53 is trained.
  • the training device 1 gives the training data 122 to the first encoder 51, and the identification result obtained from the first meta-discriminator 53 does not match the metadata 123. As such, the first encoder 51 is trained.
  • the learning device 1 alternately and repeatedly executes the third training step and the fourth training step.
  • the result of identification obtained by each meta classifier (53, 54) is also referred to as “meta identification”.
  • the estimation device 2 is a computer configured to perform an estimation task on the target data by using the learned learning model 5.
  • the sensor S is connected to the estimation device 2.
  • the estimation device 2 acquires the target data from the sensor S.
  • the estimation device 2 estimates the features included in the acquired target data by using the learned learning model 5. Then, the estimation device 2 outputs information regarding the estimation result.
  • the data generation device 3 is a computer configured to generate new data related to the target data by using the learned learning model 5.
  • the sensor S is connected to the data generation device 3.
  • the data generation device 3 acquires the target data from the sensor S.
  • the data generation device 3 uses the trained learning model 5 to generate new data related to the acquired target data.
  • the new data may be at least one of the first feature amount and the second feature amount extracted from the acquired target data. Further, the new data may be decoded data generated by a decoder described later.
  • the data generation device 3 stores the generated new data in a predetermined storage area.
  • the second feature amount obtained by 52 includes a component corresponding to the attribute related to the acquisition.
  • the first feature amount and the second feature amount obtained by the first coder 51 and the second coder 52 that have been learned by the second training step include the features included in the training data 122 (that is, the estimation task). Ingredients corresponding to (correct answer) will be included.
  • hostile learning of the first encoder 51 and the first meta-discriminator 53 is performed by the third training step and the fourth training step.
  • the quantity will not include the component corresponding to the attribute related to the acquisition of the training data 122.
  • the second feature amount obtained by encoding the trained second encoder 52 includes the components corresponding to the metadata 123. Is likely to be included.
  • the first feature amount obtained by the trained first encoder 51 tends to include a component corresponding to information other than the metadata 123 regarding the feature included in the training data 122.
  • the estimator 55 is trained to estimate the features included in the training data 122 from both of these features.
  • the first feature amount includes the number of traffic flows generated in spots and the component corresponding to the change tendency of the increase / decrease as information common to the domain. Become.
  • the second feature amount includes a component corresponding to the tendency of the traffic flow caused by the terrain that appears constantly and the tendency of the traffic flow co-occurring at a plurality of points as the information peculiar to the domain.
  • the estimator 55 can perform a task of estimating the probability of occurrence of a traffic jam, the presence or absence of a traffic jam, and the like based on both of these pieces of information. Therefore, in the estimation device 2 according to the present embodiment, by using the learned first coder 51, second coder 52, and estimator 55, information specific to the domain for acquiring the target data and common information. You can perform the task of estimating the features contained in the target data based on both of the information in. Therefore, in the case where the information specific to the domain for which the target data is acquired is useful for the estimation task, the accuracy of estimating the features included in the target data can be improved.
  • the estimation device 2 learns without using the second feature amount obtained by the trained second encoder 52.
  • the features included in the target data can be estimated based on the first feature amount obtained by the finished first encoder 51. This makes it possible to exclude the influence of the component corresponding to the attribute related to the acquisition of the target data when executing the estimation task. Therefore, even in the case where the attribute information related to the acquisition of the target data adversely affects the accuracy of the estimation task, the accuracy of estimating the features included in the target data can be improved.
  • the output value obtained from the second encoder 52 as the second feature amount is the domain of the input data (that is, the acquisition of the input data). Corresponds to the result of estimating the attribute). If the result of this estimation is correct, the output value obtained from the second meta-discriminator 54 (that is, meta) can be obtained by inputting the output value obtained from the second encoder 52 into the trained second meta-discriminator 54.
  • the result of identification matches the attributes related to the acquisition of input data. Therefore, in the estimation device 2 according to the present embodiment, whether or not the target data is input to the second encoder 52 and the result of meta identification obtained from the second meta-identifier 54 conforms to the attribute related to the acquisition of the target data.
  • the learning model 5 that has been trained for the target data can appropriately perform the estimation task.
  • the target data for which the trained learning model 5 cannot properly perform the estimation task is given, it is possible to avoid performing the estimation task for the target data.
  • it is possible to select an appropriate trained learning model 5 for the target data when there are a plurality of trained learning models 5 trained by the training data sets obtained from different domains, it is possible to select an appropriate trained learning model 5 for the target data.
  • first coder 51 plays a role of extracting a feature amount (first feature amount) including a component corresponding to information other than the attribute related to data acquisition.
  • second encoder 52 plays a role of extracting the feature amount (second feature amount) corresponding to the attribute related to data acquisition.
  • the first encoder 51 and the second encoder 52 can be commonly used for the target data obtained from different domains. Therefore, in the present embodiment, it is not necessary to prepare an extractor for each domain for acquiring the target data.
  • the present embodiment it is possible to omit the trouble of preparing a trained extractor for each domain for acquiring the target data.
  • the trained second encoder 52 and the second meta-discriminator 54 it is evaluated whether or not the trained learning model 5 can appropriately perform the estimation task for the target data. be able to.
  • the learning device 1, the estimation device 2, and the data generation device 3 are connected to each other via a network.
  • the type of network may be appropriately selected from, for example, the Internet, a wireless communication network, a mobile communication network, a telephone network, a dedicated network, and the like.
  • the method of exchanging data between the devices 1 to 3 does not have to be limited to such an example, and may be appropriately selected according to the embodiment.
  • the learning device 1, the estimation device 2, and the data generation device 3 data may be exchanged using a storage medium.
  • the learning device 1, the estimation device 2, and the data generation device 3 are separate computers.
  • the configuration of the system according to the present embodiment does not have to be limited to such an example, and may be appropriately determined according to the embodiment.
  • at least one pair of the learning device 1, the estimation device 2, and the data generating device 3 may be an integrated computer.
  • at least one of the learning device 1, the estimation device 2, and the data generation device 3 may be configured by a plurality of computers.
  • FIG. 2 schematically illustrates an example of the hardware configuration of the learning device 1 according to the present embodiment.
  • the learning device 1 is a computer to which the control unit 11, the storage unit 12, the communication interface 13, the input device 14, the output device 15, and the drive 16 are electrically connected. ..
  • the communication interface is described as "communication I / F".
  • the control unit 11 includes a CPU (Central Processing Unit), RAM (Random Access Memory), ROM (Read Only Memory), etc., which are hardware processors, 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 is composed of, 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 learning program 81, the plurality of learning data sets 121, and the learning result data 128.
  • the learning program 81 is a program for causing the learning device 1 to execute information processing (FIGS. 8 and 9) described later regarding machine learning of the learning model 5.
  • the learning program 81 includes a series of instructions for the information processing.
  • the plurality of learning data sets 121 are used for machine learning of the learning model 5.
  • the learning result data 128 shows information about the learned learning model 5.
  • the learning result data 128 is obtained as an execution result of the learning program 81. 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 learning device 1 can perform data communication via a network with other information processing devices (for example, an estimation device 2 and a data generation device 3).
  • the input device 14 is, for example, a device for inputting a mouse, a keyboard, or the like.
  • the output device 15 is, for example, a device for outputting a display, a speaker, or the like.
  • the operator can operate the learning device 1 via the input device 14 and the output device 15.
  • the input device 14 and the output device 15 may be integrally configured by a touch panel display or the like.
  • 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 the drive 16 may be appropriately selected according to the type of the storage medium 91.
  • At least one of the learning program 81 and the plurality of learning data sets 121 may be stored in the storage medium 91.
  • the storage medium 91 stores the information of the program or the like by electrical, magnetic, optical, mechanical or chemical action so that the information of the program or the like recorded by the computer or other device or machine can be read. It is a medium to do.
  • the learning device 1 may acquire at least one of the learning program 81 and the plurality of learning data sets 121 from the storage medium 91.
  • FIG. 2 illustrates a disc-type storage medium such as a CD or DVD as an example of the storage medium 91.
  • the type of the storage medium 91 is not limited to the disc type, and may be other than the disc type.
  • Examples of storage media other than the disk type include semiconductor memories such as flash memories.
  • the components can be omitted, replaced, or added as appropriate according to the embodiment.
  • the control unit 11 may include a plurality of hardware processors.
  • the hardware processor may be composed of a microprocessor, an FPGA (field-programmable gate array), a DSP (digital signal processor), or the like.
  • the storage unit 12 may be composed of 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 learning 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 learning device 1 may be a general-purpose server device, a general-purpose PC (Personal Computer), or the like, in addition to an information processing device designed exclusively for the provided service.
  • FIG. 3 schematically illustrates an example of the hardware configuration of the estimation 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. It is a computer.
  • the external interface is described as "external I / F".
  • the control units 21 to drive 26 of the estimation device 2 according to the present embodiment may be configured in the same manner as the control units 11 to drive 16 of the learning device 1, respectively.
  • control unit 21 includes a CPU, RAM, ROM, etc., which are hardware processors, and is configured to execute various information processing based on programs and data.
  • the storage unit 22 is composed of, for example, a hard disk drive, a solid state drive, or the like. In the present embodiment, the storage unit 22 stores various information such as the estimation program 82 and the learning result data 128.
  • the estimation program 82 is a program for causing the estimation device 2 to execute information processing (FIG. 10) described later, which estimates features included in the target data, by using the learned learning model 5.
  • the estimation program 82 includes a series of instructions for the information processing. 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.
  • the estimation device 2 can perform data communication via the network with another information processing device (for example, the learning device 1).
  • the input device 24 is, for example, a device for inputting a mouse, a keyboard, or the like.
  • the output device 25 is, for example, a device for outputting a display, a speaker, or the like.
  • the operator can operate the estimation device 2 via the input device 24 and the output device 25.
  • the input device 24 and the output device 25 may be integrally configured by a touch panel display or the like.
  • 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 estimation program 82 and the learning result data 128 may be stored in the storage medium 92. Further, the estimation device 2 may acquire at least one of the estimation program 82 and the learning result data 128 from the storage medium 92.
  • the type of the storage medium 92 may be a disc type or may be other than the disc type.
  • 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 the external interfaces 27 may be appropriately selected according to the type and number of connected external devices.
  • the estimation device 2 is connected to the sensor S via the external interface 27.
  • the sensor S is used to acquire the target data that is the target of the estimation task.
  • the type and location of the sensor S need not be particularly limited and may be appropriately determined according to the type of estimation task to be performed.
  • the method of connecting to the sensor S does not have to be limited to such an example.
  • the estimation device 2 may be connected to the sensor S via the communication interface 23 instead of the external interface 27.
  • the components can be omitted, replaced, or added as appropriate according to the embodiment.
  • the control unit 21 may include a plurality of hardware processors.
  • the hardware processor may be composed of a microprocessor, FPGA, DSP and the like.
  • the storage unit 22 may be composed of 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.
  • the estimation device 2 may be composed of a plurality of computers. In this case, the hardware configurations of the computers may or may not match. Further, the estimation 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. 4 schematically illustrates an example of the hardware configuration of the data generation device 3 according to the present embodiment.
  • control unit 31 the storage unit 32, the communication interface 33, the input device 34, the output device 35, the drive 36, and the external interface 37 are electrically connected. It is a computer.
  • the control unit 31 to the external interface 37 of the data generation device 3 may be configured in the same manner as the control unit 21 to the external interface 27 of the estimation device 2, respectively.
  • control unit 31 includes a CPU, RAM, ROM, etc., which are hardware processors, and is configured to execute various information processing based on programs and data.
  • the storage unit 32 is composed of, for example, a hard disk drive, a solid state drive, or the like.
  • the storage unit 32 stores various information such as the generation program 83 and the learning result data 128.
  • the generation program 83 is a program for causing the data generation device 3 to execute information processing (FIG. 11), which will be described later, to generate new data related to the target data by using the learned learning model 5.
  • the generation program 83 includes a series of instructions for the information processing. Details will be described later.
  • the communication interface 33 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.
  • the data generation device 3 can perform data communication via the network with another information processing device (for example, the learning device 1).
  • the input device 34 is, for example, a device for inputting a mouse, a keyboard, or the like.
  • the output device 35 is, for example, a device for outputting a display, a speaker, or the like. The operator can operate the data generation device 3 via the input device 34 and the output device 35.
  • the input device 34 and the output device 35 may be integrally configured by a touch panel display or the like.
  • the drive 36 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 93. At least one of the generation program 83 and the learning result data 128 may be stored in the storage medium 93. Further, the data generation device 3 may acquire at least one of the generation program 83 and the learning result data 128 from the storage medium 93.
  • the type of the storage medium 93 may be a disc type or may be other than the disc type.
  • the external interface 37 is, for example, a USB port, a dedicated port, or the like, and is an interface for connecting to an external device.
  • the type and number of the external interfaces 37 may be appropriately selected according to the type and number of connected external devices.
  • the data generation device 3 is connected to the sensor S via the external interface 37.
  • the type and location of the sensor S may not be particularly limited and may be appropriately determined according to the embodiment.
  • the method of connecting to the sensor S does not have to be limited to such an example.
  • the data generation device 3 may be connected to the sensor S via the communication interface 33 instead of the external interface 37.
  • the components can be omitted, replaced, or added as appropriate according to the embodiment.
  • the control unit 31 may include a plurality of hardware processors.
  • the hardware processor may be composed of a microprocessor, FPGA, DSP and the like.
  • the storage unit 32 may be composed of a RAM and a ROM included in the control unit 31. At least one of the communication interface 33, the input device 34, the output device 35, the drive 36, and the external interface 37 may be omitted.
  • the data generation device 3 may be composed of a plurality of computers. In this case, the hardware configurations of the computers may or may not match. Further, the data generation device 3 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.
  • FIGS. 5A to 5D schematically illustrate an example of the software configuration of the learning device 1 and the process of information processing by each module according to the present embodiment.
  • the control unit 11 of the learning device 1 expands the learning program 81 stored in the storage unit 12 into the RAM. Then, the control unit 11 controls each component by interpreting the learning program 81 expanded in the RAM by the CPU and executing a series of instruction groups included in the learning program 81.
  • the learning device 1 operates as a computer including a data acquisition unit 111, a learning processing unit 112, and a storage processing unit 113 as software modules. That is, in the present embodiment, each software module of the learning device 1 is realized by the control unit 11 (CPU).
  • the data acquisition unit 111 acquires a plurality of learning data sets 121.
  • each training data set 121 is included in the training data 122, the metadata 123 indicating the attributes related to the acquisition of the training data 122, the correct answer data 124 indicating the features included in the training data 122, and the training data 122. It is composed of a combination of other correct answer data 125 showing the characteristics of.
  • At least one or more first training data sets and at least one or more second training data sets included in the plurality of training data sets 121 are different so that the attributes indicated by the respective metadata 123 are different. May be obtained from the domain.
  • the other features shown by the other correct answer data 125 are different from the features shown by the correct answer data 124, and are features that commonly appear in the domain from which the training data 122 is acquired.
  • the information that commonly appears in the domain is, for example, information that does not depend on the attribute related to the acquisition of the training data 122 indicated by the metadata 123.
  • the image data of the product is given as the training data 122 in order to construct the trained model used for the visual inspection.
  • the presence or absence of defects in the product is information that does not easily depend on the attributes related to the acquisition of image data. Therefore, the other correct answer data 125 may indicate the presence or absence of a defect as another feature included in the training data 122.
  • the correct answer data 124 may indicate information other than these, such as the type of defect, as a feature included in the training data 122.
  • the correct answer data 124 shows the features that can improve the estimation accuracy by the information peculiar to the domain.
  • the learning processing unit 112 uses the acquired plurality of learning data sets 121 to perform machine learning of the learning model 5.
  • the learning model 5 includes a first encoder 51, a second encoder 52, a first meta-discriminator 53, a second meta-identifier 54, and an estimator 55.
  • the learning model 5 further includes a decoder 56 and another estimator 57 in addition to these.
  • the first encoder 51 and the second encoder 52 are arranged in parallel on the input side.
  • the output of the first encoder 51 is connected to the inputs of the first meta-identifier 53, the estimator 55, the decoder 56, and the other estimators 57.
  • the output of the second encoder 52 is connected to the inputs of the second meta-identifier 54, the estimator 55, and the decoder 56.
  • the output value (first feature amount) of the first encoder 51 is input to each of the first meta-identifier 53 and the other estimator 57.
  • the output value (second feature amount) of the second encoder 52 is input to the second meta-identifier 54.
  • the output values (first feature amount and second feature amount) of the first coder 51 and the second coder 52 are input to the estimator 55 and the decoder 56, respectively.
  • the first encoder 51 is configured to convert the given input data into the first feature amount.
  • the second encoder 52 is configured to convert the given input data into a second feature quantity.
  • the first meta-identifier 53 is configured to identify attributes related to the acquisition of input data from the first feature quantity obtained by the first encoder 51.
  • the second meta-discriminator 54 is configured to identify the attribute related to the acquisition of input data from the second feature amount obtained by the second coder 52.
  • the estimator 55 is configured to estimate the features included in the input data from the first feature amount and the second feature amount obtained by the first coder 51 and the second coder 52.
  • the decoder 56 is configured to decode the input data from the first feature amount and the second feature amount obtained by the first coder 51 and the second coder 52.
  • the other estimator 57 estimates the features included in the input data (features indicated by the correct answer data 124 or other features indicated by the other correct answer data 125) from the first feature amount obtained by the first encoder 51. It is configured to do.
  • the training data 122 of each learning data set 121 is input data.
  • the target data target data (221, 321) described later
  • the input data may be composed of a plurality of different types of data, such as being composed of image data and sound data.
  • the first encoder 51 and the second encoder 52 may be prepared for each type of input data. That is, the first coder 51 and the second coder 52 may each include a plurality of partial coders. Each partial encoder may be configured to accept the input of the corresponding type of data and convert the input corresponding type of data into a feature quantity. In this case, the first feature amount and the second feature amount are calculated for each type of input data.
  • Each of the calculated first feature quantities is input to the first meta-identifier 53, the estimator 55, the decoder 56, and the other estimator 57. Further, each of the calculated second feature quantities is input to the second meta-identifier 54, the estimator 55, and the decoder 56.
  • the machine learning process includes the first to fourth training steps described above.
  • the training processing unit 112 provides the training data 122 to the second encoder 52 for identification obtained from the second meta-discriminator 54.
  • the second encoder 52 and the second meta-discriminator 54 are trained so that the results match the metadata 123.
  • the second encoder 52 can be trained so that the second feature quantity contains a component corresponding to the attribute related to the acquisition of the training data 122 indicated by the metadata 123.
  • the training processing unit 112 gives the training data 122 to the first encoder 51 and the second encoder 52 for each training data set 121, and the estimation result obtained from the estimator 55 is correct data.
  • the first encoder 51, the second encoder 52, and the estimator 55 are trained to conform to 124.
  • the learning processing unit 112 provides the training data 122 to the first encoder 51 for each training data set 121 to obtain the identification obtained from the first meta-discriminator 53.
  • the first meta-identifier 53 is trained so that the results match the metadata 123.
  • the training processing unit 112 gives the training data 122 to the first encoder 51 for each training data set 121, and the identification result obtained from the first meta-identifier 53 conforms to the metadata 123.
  • the first encoder 51 is trained so as not to.
  • the learning processing unit 112 alternately and repeatedly executes the third training step and the fourth training step.
  • the first encoder 51 can be trained so that the first feature quantity includes a component corresponding to the information commonly appearing in the domain for acquiring the training data 122 of each training data set 121.
  • the machine learning process further includes the fifth to seventh training steps in addition to the first to fourth training steps.
  • the learning processing unit 112 gives the training data 122 to the first encoder 51 for each learning data set 121, so that the output value and the training data obtained from the first encoder 51 as the first feature amount.
  • the first coder 51 and the second coder 52 are trained so that the amount of mutual information with the output value obtained from the second coder 52 as the second feature amount is reduced by giving 122 to the second coder 52. To do.
  • the training processing unit 112 gives training data 122 to the first encoder 51 and the second encoder 52 for each training data set 121, so that the decoding data obtained by the decoder 56 is the training data.
  • the first encoder 51, the second encoder 52, and the decoder 56 are trained to fit 122.
  • the training processing unit 112 gives the training data 122 to the first encoder 51 for each training data set 121, and the estimation result obtained from the other estimator 57 is the correct answer data 124 or other.
  • the first encoder 51 and the other estimator 57 are trained to fit the correct data 125.
  • the other correct answer data 125 may be omitted from each training data set 121.
  • the features indicated by the correct answer data 124 are features that commonly appear in the domain from which the training data 122 is acquired.
  • the storage processing unit 113 generates information about the learned learning model 5 as learning result data 128. Then, the storage processing unit 113 stores the generated learning result data 128 in a predetermined storage area.
  • the predetermined storage area may be, for example, a RAM in the control unit 11, a storage unit 12, a storage medium 91, an external storage device, or a combination thereof.
  • each of the instruments 51 to 57 is composed of a multi-layered neural network used for deep learning.
  • Each of the instruments 51 to 57 includes an input layer (511, 521, 513, 541, 551, 561, 571), an intermediate (hidden) layer (512, 522, 532, 542, 552, 562, 572), and an output layer ( It is equipped with 513, 523, 533, 543, 535, 563, 573).
  • each vessel 51 to 57 does not have to be limited to such an example, and may be appropriately determined according to the embodiment.
  • the number of intermediate layers (512, 522, 532, 542, 552, 562, 572) is not limited to one, and may be two or more.
  • the structures may at least partially match.
  • the structures of the respective vessels 51 to 57 do not have to match.
  • Each layer (511 to 513, 521 to 523, 513 to 533, 541 to 543, 551 to 553, 561 to 563, 571 to 573) has one or more neurons (nodes).
  • the number of neurons (nodes) contained in each layer (511 to 513, 521 to 523, 513 to 533, 541 to 543, 551 to 553, 561 to 563, 571 to 573) does not have to be particularly limited. It may be appropriately selected according to the form of.
  • Neurons in adjacent layers are appropriately connected, and a weight (connection load) is set for each connection.
  • a threshold is set for each neuron, and basically, the output of each neuron is determined by whether or not the sum of the products of each input and each weight exceeds the threshold.
  • the weight of the connection between each neuron and the threshold value of each neuron contained in each layer (511 to 513, 521 to 523, 513 to 533, 541 to 543, 551 to 553, 561 to 563, 571 to 573) are determined by each device 51. This is an example of the calculation parameters of to 57.
  • the calculation parameters of each device 51 to 57 are used for the calculation process of each device 51 to 57, and are adjusted by each of the above training steps of machine learning.
  • the learning processing unit 112 inputs the training data 122 to the input layer 521 of the second encoder 52 for each learning data set 121, and the output layer of the second meta-discriminator 54.
  • the output value (result of meta identification) is acquired from 543.
  • the learning processing unit 112 adjusts the values of the calculation parameters of the second encoder 52 and the second meta-identifier 54 so that the error between the acquired output value and the metadata 123 becomes smaller.
  • the learning processing unit 112 inputs the training data 122 to the input layer (511, 512) of each encoder (51, 52) for each training data set 121, and the output layer 553 of the estimator 55. Get the output value (identification result) from.
  • the learning processing unit 112 adjusts the values of the calculation parameters of the first encoder 51, the second encoder 52, and the estimator 55 so that the error between the acquired output value and the correct answer data 124 becomes smaller.
  • the learning processing unit 112 inputs the training data 122 to the input layer 511 of the first encoder 51 for each training data set 121, and outputs a value (output value from the output layer 533 of the first meta-identifier 53). Get the result of meta-identification).
  • the learning processing unit 112 adjusts the value of the calculation parameter of the first meta-discriminator 53 so that the error between the acquired output value and the metadata 123 becomes small.
  • the value of the calculation parameter of the first meta-identifier 53 is adjusted, while the value of the calculation parameter of the first encoder 51 is fixed.
  • the learning processing unit 112 inputs the training data 122 to the input layer 511 of the first encoder 51 for each learning data set 121, and the output layer of the first meta-identifier 53.
  • the output value (result of meta-identification) is acquired from 533.
  • the learning processing unit 112 adjusts the value of the calculation parameter of the first encoder 51 so that the error between the acquired output value and the metadata 123 becomes large.
  • the value of the calculation parameter of the first encoder 51 is adjusted, while the value of the calculation parameter of the first meta-identifier 53 is fixed.
  • the learning processing unit 112 has dummy metadata 129 corresponding to the metadata 123 for each learning data set 121, which is a dummy meta composed of values different from the corresponding metadata 123.
  • Data 129 may be acquired.
  • training the first encoder 51 so that the identification result obtained from the first meta-discriminator 53 does not conform to the metadata 123 is first performed by giving the training data 122 to the first encoder 51. It may be configured by training the first encoder 51 such that the identification result obtained from the meta-identifier 53 conforms to the dummy metadata 129.
  • the learning processing unit 112 inputs the training data 122 to the input layer 511 of the first encoder 51 to obtain an output value obtained from the output layer 533 of the first meta-identifier 53.
  • the value of the calculation parameter of the first encoder 51 may be adjusted so that the error from the dummy metadata 129 becomes small.
  • the training processing unit 112 inputs the training data 122 to the input layer (511, 521) of each encoder (51, 52) for each training data set 121, and each encoder (51, 52). ), The output values (first feature amount and second feature amount) are acquired from the output layer (513, 523).
  • the learning processing unit 112 calculates the mutual information amount between the first feature amount obtained from the first encoder 51 and the second feature amount obtained from the second encoder 52. Then, the learning processing unit 112 adjusts the values of at least one of the calculation parameters of the first encoder 51 and the second encoder 52 so that the error derived from the calculated mutual information amount becomes smaller.
  • the error derived from the mutual information amount may be the value of the mutual information amount as it is, or may be calculated by applying a predetermined operation such as square or logarithm to the value of the mutual information amount.
  • the training processing unit 112 inputs the training data 122 to the input layer (511, 521) of each encoder (51, 52) for each training data set 121, and the output layer 563 of the decoder 56. Get the output data (restoration data) from.
  • the learning processing unit 112 adjusts the values of the calculation parameters of the first encoder 51, the second encoder 52, and the decoder 56 so that the error between the acquired output data and the training data 122 becomes smaller.
  • the learning processing unit 112 inputs the training data 122 to the input layer 511 of the first encoder 51 for each training data set 121, and outputs a value (estimated) from the output layer 573 of the other estimator 57. Result) is obtained.
  • the learning processing unit 112 adjusts the values of the calculation parameters of the first encoder 51 and the other estimator 57 so that the error between the acquired output value and the correct answer data 124 or the other correct answer data 125 becomes small.
  • the first, second, and fifth to seventh training steps may also be repeatedly executed.
  • the learning processing unit 112 may alternately repeat the adjustment of the calculation parameter values in the third training step and the fourth training step in the process of repeating the adjustment of the calculation parameter values in the first to seventh training steps.
  • the first, second, and fifth to seventh training steps may be performed as pre-learning of hostile learning by the third and fourth training steps.
  • the learning processing unit 112 sets the values of the calculation parameters by the third training step and the fourth training step after the adjustment of the calculation parameter values by the first, second, and fifth to seventh training steps is completed. The adjustment may be repeated alternately.
  • the first, second, and fifth to seventh training steps may be performed individually.
  • the learning processing unit 112 may separately perform the adjustment of the value of the calculation parameter by each of the first, second, and fifth to seventh training steps.
  • at least any combination of the first, second, and fifth to seventh training steps may be performed simultaneously. For example, assume a situation where the first training step and the second training step are executed at the same time. In this situation, the learning processing unit 112 may input the training data 122 to each of the encoders (51 and 52) and acquire the output values from the second meta-discriminator 54 and the estimator 55, respectively.
  • the learning processing unit 112 may calculate an error between the output value of the second meta-discriminator 54 and the metadata 123, and an error between the output value of the estimator 55 and the correct answer data 124. Then, the learning processing unit 112 may adjust the values of the calculation parameters of the first encoder 51, the second encoder 52, the second meta-identifier 54, and the estimator 55 so that each error becomes smaller.
  • noise 61 may be input to each encoder (51, 52) together with the training data 122. After that, each of the above trainings may be carried out.
  • the form in which the noise 61 is input together with the training data 122 does not have to be limited to such an example.
  • the input of noise 61 may be omitted in at least one of the first to seventh training steps.
  • the output value may be acquired from the second encoder 52 as the second feature amount by giving the training data 122 to the second encoder 52. .. Then, the noise 62 is input to the second meta-discriminator 54, the estimator 55, and the decoder 56 together with the acquired output value (second feature amount), and each training may be executed.
  • the form in which the noise 62 is input together with the second feature amount does not have to be limited to such an example.
  • the input of noise 62 may be omitted in at least one of the first, second, and sixth training steps.
  • the data acquisition unit 111 receives training data 122 of at least one of the plurality of learning data sets 121 after the learning processing unit 112 performs machine learning of the learning model 5. May be obtained from the first encoder 51 as an output value as the first feature amount by giving the first encoder 51. Further, the data acquisition unit 111 may acquire the output value as the second feature amount from the second encoder 52 by giving the training data 122 to the second encoder 52 as well. Then, the data acquisition unit 111 inputs the output value (first feature amount) acquired from the first encoder 51 to the decoder 56, and the output value (second feature amount) acquired from the second encoder 52.
  • the noise 63 may be input to the decoder 56 to acquire output data as decoded data from the decoder 56.
  • the method of inputting the noise 63 together with the second feature amount and the type of the noise 63 are not particularly limited and may be the same as the noise 62.
  • the learning processing unit 112 may use the acquired output data as new training data 192 to perform machine learning of the learning model 5 again.
  • the new training data 192 may be associated with metadata 193, correct answer data 194, and other correct answer data 195.
  • the metadata 193, the correct answer data 194, and the other correct answer data 195 may be acquired as appropriate.
  • the storage processing unit 113 generates information indicating the structure of each device 51 to 57 of the learned learning model 5 constructed by the machine learning and the value of the calculation parameter as the learning result data 128.
  • the structure of each device 51 to 57 is specified by, for example, the number of layers from the input layer to the output layer in the neural network, the type of each layer, the number of neurons contained in each layer, the connection relationship between neurons in adjacent layers, and the like. You can. When the structure of each device 51 to 57 is shared in the system, the information about this structure may be omitted from the learning result data 128.
  • the storage processing unit 113 stores the generated learning result data 128 in a predetermined storage area.
  • FIG. 6 schematically illustrates an example of the software configuration of the estimation device 2 according to the present embodiment.
  • the control unit 21 of the estimation device 2 expands the estimation program 82 stored in the storage unit 22 into the RAM. Then, the control unit 21 controls each component by interpreting the estimation program 82 expanded in the RAM by the CPU and executing a series of instruction groups included in the estimation program 82.
  • the estimation device 2 operates as a computer including the data acquisition unit 211, the evaluation unit 212, the estimation unit 213, and the output unit 214 as software modules. That is, in the present embodiment, each software module of the estimation device 2 is realized by the control unit 21 (CPU) in the same manner as the learning device 1.
  • the data acquisition unit 211 acquires the target data 221 to be executed by the estimation task.
  • the data acquisition unit 211 acquires the target data 221 from the sensor S.
  • the evaluation unit 212 and the estimation unit 213 include the trained learning model 5 by holding the learning result data 128.
  • the estimation unit 213 may use the first encoder 51, the second encoder 52, and the estimator 55 trained by the learning device 1 to estimate the features included in the acquired target data 221.
  • the estimation unit 213 may use the first encoder 51 and another estimator 57 trained by the learning device 1 to estimate the features included in the acquired target data 221.
  • the output unit 214 outputs information regarding the result of estimating the feature.
  • the evaluation unit 212 identifies the attributes related to the acquisition of the target data 221 by using the second encoder 52 and the second meta-identifier 54 trained by the learning device 1. Then, the evaluation unit 212 determines whether or not to adopt the result of estimating the feature by the estimation unit 213 based on the result of the identification. Not adopting the estimated result may include discarding the estimated result after executing the estimation process by the estimation unit 213, and not executing the estimation process.
  • the estimation device 2 (evaluation unit 212 and estimation unit 213) does not necessarily have to hold all the components of the trained learning model 5.
  • the portion not used by the estimation device 2 may be omitted.
  • the information corresponding to the portion may be omitted from the learning result data 128 held by the estimation device 2.
  • FIG. 7 schematically illustrates an example of the software configuration of the data generation device 3 according to the present embodiment.
  • the control unit 31 of the data generation device 3 expands the generation program 83 stored in the storage unit 32 into the RAM. Then, the control unit 31 controls each component by interpreting the generation program 83 expanded in the RAM by the CPU and executing a series of instruction groups included in the generation program 83.
  • the data generation device 3 operates as a computer including the data acquisition unit 311, the generation unit 312, and the storage processing unit 313 as software modules. That is, in the present embodiment, each software module of the data generation device 3 is realized by the control unit 31 (CPU) in the same manner as the learning device 1 and the estimation device 2.
  • the data acquisition unit 311 acquires the target data 321 that is the source for generating new data.
  • the data acquisition unit 311 acquires the target data 321 from the sensor S.
  • the generation unit 312 includes the learned learning model 5 by holding the learning result data 128.
  • the generation unit 312 acquires the output value as the first feature amount from the first encoder 51 by giving the target data 321 to the first encoder 51 trained by the learning device 1.
  • the generation unit 312 uses the trained decoder 56 to output the output obtained from the first encoder 51 without giving the output value (second feature amount) acquired from the second encoder 52.
  • Decrypted data is generated by decoding the target data 321 from the value (first feature amount).
  • the storage processing unit 313 stores the generated decoded data as new data in a predetermined storage area.
  • the predetermined storage area may be, for example, a RAM in the control unit 31, a storage unit 32, a storage medium 93, an external storage device, or a combination thereof.
  • the data generation device 3 may generate at least one of the first feature amount and the second feature amount by using at least one of the first coder 51 and the second coder 52.
  • the storage processing unit 313 may store at least one of the generated first feature amount and the second feature amount as new data in a predetermined storage area.
  • the data generation device 3 (generation unit 312) does not necessarily have to hold all the components of the trained learning model 5.
  • the portion not used by the data generation device 3 may be omitted.
  • the information corresponding to the portion may be omitted from the learning result data 128 held by the data generation device 3.
  • each software module of the learning device 1, the estimation device 2, and the data generation device 3 will be described in detail in an operation example described later.
  • an example in which each software module of the learning device 1, the estimation device 2, and the data generation device 3 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.
  • software modules may be omitted, replaced, or added as appropriate according to the embodiment.
  • FIG. 8 is a flowchart showing an example of the processing procedure of the learning device 1 according to the present embodiment.
  • the processing procedure described below is an example of a learning method. However, the processing procedure described below is only an example, and each processing may be changed as much as possible. Further, with respect to the processing procedure described below, steps can be omitted, replaced, and added as appropriate according to the embodiment.
  • Step S101 the control unit 11 operates as the data acquisition unit 111 to acquire a plurality of learning data sets 121.
  • the control unit 11 acquires a plurality of learning data sets 121 each composed of a combination of training data 122, metadata 123, correct answer data 124, and other correct answer data 125.
  • the method for acquiring each learning data set 121 does not have to be particularly limited, and may be appropriately selected according to the embodiment.
  • a sensor S is prepared, and sensing data generated by observing with the prepared sensor S under various conditions is acquired as training data 122.
  • the observation target may be appropriately selected according to the estimation task to be acquired by the learning model 5.
  • metadata 123, correct answer data 124, and other correct answer data 125 are appropriately acquired.
  • Metadata 123 may be given by operator input. Alternatively, the metadata 123 may be obtained from reference information indicating the usage pattern, specifications, observation environment, etc. of the sensor S. Further, the correct answer data 124 and the other correct answer data 125 may be given by the input of the operator. Alternatively, the correct answer data 124 and the other correct answer data 125 may be given based on the result of estimating the features included in the training data 122 by the trained estimator. The acquired metadata 123, the correct answer data 124, and the other correct answer data 125 are associated with the training data 122. As a result, each training data set 121 can be generated.
  • Each learning data set 121 may be automatically generated by the operation of the computer, or may be manually generated by the operation of the operator. Further, each learning data set 121 may be generated by the learning device 1 or by a computer other than the learning device 1.
  • the control unit 11 automatically or manually executes the above series of processes by an operation via the operator's input device 14, thereby performing a plurality of learning data. Acquire set 121.
  • the control unit 11 acquires a plurality of learning data sets 121 generated by the other computer via, for example, a network or a storage medium 91.
  • some training data sets may be generated by the learning device 1, and other training data sets may be generated by one or a plurality of other computers.
  • At least one or more first training data sets and at least one or more second training data sets included in the plurality of training data sets 121 have different attributes indicated by the respective metadata 123. May be obtained from different domains.
  • the different domains mean that the attributes related to the acquisition of the training data 122 are different, and when the metadata 123 shows a plurality of attributes, at least some of the attributes are different.
  • the domain defines attributes related to data acquisition, such as conditions for acquiring data. As an example, when the sensor S is a camera, if the shooting conditions such as the orientation of the camera, the resolution of the camera, the brightness of the environment, and the shooting target are different, the attributes related to the acquisition of the training data 122 are different. In this case, it is an example of a domain in which each shooting condition is different.
  • the number of learning data sets 121 to be acquired does not have to be particularly limited, and may be appropriately selected according to the embodiment.
  • the control unit 11 proceeds to the next step S102.
  • Step S102 the control unit 11 operates as the learning processing unit 112, and uses the acquired plurality of learning data sets 121 to perform machine learning of the learning model 5.
  • the learning model 5 includes a first encoder 51, a second encoder 52, a first meta-discriminator 53, a second meta-identifier 54, an estimator 55, a decoder 56, and another estimator 57.
  • the control unit 11 trains each device 51 to 57 of the learning model 5 in the first to seventh training steps.
  • the processing order of each training step is not particularly limited and may be appropriately determined according to the embodiment.
  • FIG. 9 is a flowchart illustrating an example of a machine learning processing procedure by the learning device 1 according to the present embodiment.
  • the process of step S102 according to the present embodiment includes the following processes of steps S201 to S208.
  • the processing procedure described below is only an example, and each processing may be changed as much as possible.
  • the control unit 11 Before executing step S201, the control unit 11 prepares a learning model 5 to be processed by machine learning.
  • the structure of each device 51 to 57 of the learning model 5 to be prepared and the initial values of the calculation parameters may be given by the template or by the input of the operator.
  • the template may include information about the structure of the neural network and information about the initial values of the arithmetic parameters of the neural network.
  • the structure of each device 51 to 57 is specified by, for example, the number of layers from the input layer to the output layer in the neural network, the type of each layer, the number of neurons contained in each layer, the connection relationship between neurons in adjacent layers, and the like. You can.
  • the control unit 11 may prepare a learning model 5 to be processed based on the learning result data obtained by the past machine learning.
  • Step S201 the control unit 11 provides training data 122 to the second encoder 52 for each training data set 121 so that the identification result obtained from the second meta-discriminator 54 matches the metadata 123.
  • the second encoder 52 and the second meta-discriminator 54 are trained.
  • Step S201 is an example of the first training step.
  • the control unit 11 uses the training data 122 as input data and the metadata 123 as training data to learn the neural network constituting the second encoder 52 and the second meta-discriminator 54. Execute the process. For this learning process, a batch gradient descent method, a stochastic gradient descent method, a mini-batch gradient descent method, or the like may be used.
  • the control unit 11 inputs the training data 122 to the second encoder 52 for each learning data set 121, and performs arithmetic processing of the second encoder 52 and the second meta-identifier 54. Execute. That is, the control unit 11 inputs the training data 122 to the input layer 521 of the second encoder 52, and determines the firing of each neuron included in each layer (521 to 523, 541 to 543) in order from the input side. By this arithmetic processing, the control unit 11 acquires an output value corresponding to the result of identifying the attribute related to the acquisition of the training data 122 from the second feature amount from the output layer 543 of the second meta classifier 54.
  • the control unit 11 calculates the error between the output value acquired from the output layer 543 and the metadata 123 based on the loss function.
  • the loss function a known loss function such as mean square error and cross entropy error may be used.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error becomes smaller, and backpropagates the calculated gradient by the back propagation method to each layer.
  • the error of the calculation parameters (for example, the weight of the connection between each neuron, the threshold of each neuron, etc.) included in (521 to 523, 541 to 543) is calculated.
  • the control unit 11 updates the value of the calculation parameter based on each calculated error.
  • the control unit 11 repeats the first to fourth steps so that the error between the output value output from the output layer 543 and the metadata 123 for each learning data set 121 becomes smaller.
  • the values of the calculation parameters of the device 52 and the second meta-identifier 54 are adjusted.
  • the number of repetitions may be appropriately determined. For example, a specified number of times for repeating the adjustment of the value of the calculation parameter may be set. The specified number of times may be given, for example, by a set value or by an operator's designation.
  • the control unit 11 repeats the first to fourth steps until the number of repetitions reaches the specified number of times. Further, for example, the control unit 11 may repeat the first to fourth steps until the sum of the errors becomes equal to or less than the threshold value.
  • the second meta-discriminator 54 was trained to output an output value matching the metadata 123.
  • the second encoder 52 and the second meta-identifier 54 can be constructed. This "matching" may include an acceptable difference due to a threshold or the like between the output value of the output layer and the teacher data.
  • the second encoder 52 can be trained so that the second feature quantity contains a component corresponding to the attribute relating to the acquisition of the training data 122 indicated by the metadata 123.
  • Step S202 the control unit 11 gives the training data 122 to the first encoder 51 and the second encoder 52 for each training data set 121, so that the estimation result obtained from the estimator 55 matches the correct answer data 124.
  • the first encoder 51, the second encoder 52, and the estimator 55 are trained so as to do so.
  • Step S202 is an example of the second training step.
  • the control unit 11 uses the training data 122 as input data and the correct answer data 124 as teacher data, and uses the neurals constituting the first encoder 51, the second encoder 52, and the estimator 55. Execute the network learning process. In this learning process, the method of adjusting the values of the arithmetic parameters of the encoders (51, 52) and the estimator 55 may be the same as in step S201.
  • the control unit 11 inputs the training data 122 to the input layer (511, 512) of each encoder (51, 52) for each learning data set 121, and the first encoder 51. , The arithmetic processing of the second encoder 52 and the estimator 55 is executed. By this arithmetic processing, the control unit 11 acquires an output value corresponding to the result of estimating the features included in the training data 122 from the first feature amount and the second feature amount from the output layer 553 of the estimator 55.
  • the control unit 11 calculates the error between the output value acquired from the output layer 553 and the correct answer data 124 based on the loss function.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error becomes smaller, and back-propagates the calculated gradient by the error back-propagation method, thereby causing each layer (511 to 513). , 521 to 523, 551 to 553) are calculated.
  • the control unit 11 updates the value of the calculation parameter based on each calculated error.
  • the control unit 11 reduces the error between the output value output from the output layer 553 and the correct answer data 124 for each learning data set 121.
  • the values of the calculation parameters of the device 51, the second code device 52, and the estimator 55 are adjusted.
  • the control unit 11 may repeat the first to fourth steps until the number of repetitions reaches a predetermined number of times. Alternatively, the control unit 11 may repeat the first to fourth steps until the sum of the errors becomes equal to or less than the threshold value.
  • the estimator 55 was trained to output an output value matching the correct answer data 124.
  • the first encoder 51, the second encoder 52, and the estimator 55 can be constructed.
  • the control unit 11 proceeds to the next step S203.
  • Step S203 the control unit 11 provides training data 122 to the first encoder 51 and the second encoder 52 for each training data set 121, so that the decoding data obtained by the decoder 56 conforms to the training data 122.
  • the first encoder 51, the second encoder 52, and the decoder 56 are trained so as to do so.
  • Step S203 is an example of the sixth training step.
  • the control unit 11 uses the training data 122 as input data and teacher data to execute learning processing of the neural network constituting the first encoder 51, the second encoder 52, and the decoder 56. ..
  • the method of adjusting the values of the arithmetic parameters of the encoders (51, 52) and the decoder 56 may be the same as in step S201 or the like.
  • the control unit 11 inputs the training data 122 to the input layer (511, 512) of each encoder (51, 52) for each learning data set 121, and the first encoder 51. , The arithmetic processing of the second encoder 52 and the decoder 56 is executed. By this arithmetic processing, the control unit 11 acquires the output data corresponding to the result of decoding the training data 122 from the first feature amount and the second feature amount from the output layer 563 of the decoder 56.
  • the control unit 11 calculates the error between the output data acquired from the output layer 563 and the training data 122 based on the loss function.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error becomes smaller, and back-propagates the calculated gradient by the error back-propagation method, thereby causing each layer (511 to 513). , 521 to 523, 561 to 563), and the error of the calculation parameter is calculated.
  • the control unit 11 updates the value of the calculation parameter based on each calculated error.
  • the control unit 11 reduces the error between the output data output from the output layer 563 and the training data 122 for each learning data set 121, so that the first code
  • the values of the calculation parameters of the device 51, the second coder 52, and the decoder 56 are adjusted.
  • the control unit 11 may repeat the first to fourth steps until the number of repetitions reaches a predetermined number of times. Alternatively, the control unit 11 may repeat the first to fourth steps until the sum of the errors becomes equal to or less than the threshold value.
  • the control unit 11 proceeds to the next step S204.
  • Step S204 the control unit 11 gives the training data 122 to the first encoder 51 for each learning data set 121, and the estimation result obtained from the other estimator 57 is the correct answer data 124 or the other correct answer data 125.
  • the first encoder 51 and the other estimator 57 are trained to conform to.
  • Step S204 is an example of the seventh training step.
  • the control unit 11 uses the training data 122 as input data and the correct answer data 124 or other correct answer data 125 as teacher data to configure the first encoder 51 and the other estimator 57.
  • the method of adjusting the values of the calculation parameters of the first encoder 51 and the other estimator 57 may be the same as in step S201 or the like.
  • the control unit 11 inputs training data 122 to the input layer 511 of the first encoder 51 for each learning data set 121, and the first encoder 51 and the other estimator 57 Execute arithmetic processing. By this arithmetic processing, the control unit 11 acquires an output value corresponding to the result of estimating the feature included in the training data 122 from the first feature amount from the output layer 573 of the other estimator 57.
  • the control unit 11 calculates the error between the output value acquired from the output layer 573 and the correct answer data 124 or other correct answer data 125 based on the loss function.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error becomes smaller, and back-propagates the calculated gradient by the error back-propagation method, thereby causing each layer (511 to 513). , 571 to 573), the error of the calculation parameter is calculated.
  • the control unit 11 updates the value of the calculation parameter based on each calculated error.
  • the control unit 11 reduces the error between the output value output from the output layer 573 and the correct answer data 124 or other correct answer data 125 for each learning data set 121. As described above, the values of the arithmetic parameters of the first encoder 51 and the other estimator 57 are adjusted.
  • the control unit 11 may repeat the first to fourth steps until the number of repetitions reaches a predetermined number of times. Alternatively, the control unit 11 may repeat the first to fourth steps until the sum of the errors becomes equal to or less than the threshold value.
  • Step S205 the control unit 11 provides the output value (first feature amount) and the training data 122 obtained from the first encoder 51 by giving the training data 122 to the first encoder 51 for each learning data set 121.
  • the first coder 51 and the second coder 52 are trained so that the amount of mutual information with the output value (second feature amount) obtained from the second coder 52 is reduced by giving to the second coder 52. ..
  • Step S205 is an example of the fifth training step.
  • the control unit 11 uses the training data 122 as input data so that the mutual information amount becomes small (for example, using the fact that the mutual information amount becomes 0 as the teacher data).
  • the learning process of the neural network constituting the 1st encoder 51 and the 2nd encoder 52 is executed. In this learning process, the method of adjusting the value of the calculation parameter of at least one of the first encoder 51 and the second encoder 52 is basically the same as in step S201 and the like.
  • the control unit 11 inputs the training data 122 to the input layer (511, 521) of each encoder (51, 52) for each learning data set 121, and each encoder (51). , 52). In this arithmetic processing, the control unit 11 acquires an output value corresponding to the result of converting the training data 122 into each feature amount from the output layer (513, 523) of each encoder (51, 52).
  • the control unit 11 calculates the mutual information amount between the output values (first feature amount and second feature amount) obtained from the first coder 51 and the second coder 52, and the loss function.
  • the error is derived from the mutual information based on.
  • a known method may be adopted as the method for calculating the mutual information amount.
  • the loss function is defined to calculate the absolute value, the value of the mutual information amount may be used as it is as an error.
  • the loss function may be defined to apply certain operations, such as squared or logarithmic, to the value of mutual information.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error becomes smaller, and calculates it in at least one of the first encoder 51 and the second encoder 52 by the error back propagation method. Backpropagates the gradient. As a result, the control unit 11 calculates the error of the calculation parameter included in at least one of the layers 511 to 513 of the first encoder 51 and the layers 521 to 523 of the second encoder 52. In the fourth step, the control unit 11 updates the value of the calculation parameter based on each calculated error.
  • the control unit 11 repeats the first to fourth steps, and for each learning data set 121, the output value output from the output layer 513 of the first encoder 51 and the output layer 523 of the second encoder 52.
  • the value of at least one of the arithmetic parameters of the first encoder 51 and the second encoder 52 is adjusted so that the amount of mutual information with the output value output from is reduced.
  • the control unit 11 may repeat the first to fourth steps until the number of repetitions reaches a predetermined number of times. Alternatively, the control unit 11 may repeat the first to fourth steps until the sum of the errors becomes equal to or less than the threshold value.
  • Step S206 the control unit 11 gives the training data 122 to the first encoder 51 for each training data set 121 so that the identification result obtained from the first meta-discriminator 53 matches the metadata 123. , The first meta-discriminator 53 is trained.
  • Step S206 is an example of the third training step.
  • the value of the calculation parameter of the first meta-identifier 53 is adjusted, while the value of the calculation parameter of the first encoder 51 is fixed.
  • the control unit 11 uses the training data 122 as input data and the metadata 123 as teacher data to execute the learning process of the neural network constituting the first meta-discriminator 53.
  • the method of adjusting the value of the calculation parameter of the first meta-identifier 53 may be the same as that of step S201 or the like except that the value of the calculation parameter of the first encoder 51 is fixed.
  • the control unit 11 inputs the training data 122 to the input layer 511 of the first encoder 51 for each learning data set 121, and the first encoder 51 and the first meta-identifier 53. Executes the arithmetic processing of. By this arithmetic processing, the control unit 11 acquires an output value corresponding to the result of identifying the attribute related to the acquisition of the training data 122 from the first feature amount from the output layer 533 of the first meta classifier 53.
  • the control unit 11 calculates the error between the output value output from the output layer 533 and the metadata 123 based on the loss function.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error becomes smaller, and backpropagates the calculated gradient by the error back propagation method. The control unit 11 stops the back propagation of this gradient up to the input layer 531 of the first meta-discriminator 53. As a result, the control unit 11 calculates the error of the calculation parameter included in each layer 531 to 533 of the first meta-discriminator 53.
  • the control unit 11 updates the value of the calculation parameter of the first meta-discriminator 53 based on each calculated error.
  • the control unit 11 reduces the error between the output value output from the output layer 533 and the metadata 123 for each learning data set 121, so that the first meta The value of the calculation parameter of the classifier 53 is adjusted.
  • the control unit 11 may repeat the first to fourth steps until the number of repetitions reaches a predetermined number of times. Alternatively, the control unit 11 may repeat the first to fourth steps until the sum of the errors becomes equal to or less than the threshold value.
  • the control unit 11 proceeds to the next step S207.
  • Step S207 the control unit 11 provides training data 122 to the first encoder 51 for each training data set 121 so that the identification result obtained from the first meta-discriminator 53 does not match the metadata 123.
  • the first encoder 51 is trained.
  • Step S207 is an example of the fourth training step.
  • the value of the calculation parameter of the first encoder 51 is adjusted, while the value of the calculation parameter of the first meta-identifier 53 is fixed.
  • the control unit 11 uses the training data 122 as input data and uses the first encoder 51 so as not to match the metadata 123 (for example, using the dummy metadata 129 as teacher data).
  • the learning process of the constituent neural network is executed.
  • the method of adjusting the value of the calculation parameter of the first encoder 51 may be the same as that of step S201 or the like except that the value of the calculation parameter of the first meta-identifier 53 is fixed.
  • the control unit 11 inputs the training data 122 to the input layer 511 of the first encoder 51 for each learning data set 121, and the first encoder 51 and the first meta-identifier 53. Executes the arithmetic processing of. By this arithmetic processing, the control unit 11 acquires an output value corresponding to the result of identifying the attribute related to the acquisition of the training data 122 from the first feature amount from the output layer 533 of the first meta classifier 53.
  • the control unit 11 uses the dummy metadata 129 corresponding to the metadata 123 for each training data set 121, and the dummy metadata 129 is configured with a value different from the corresponding metadata 123. get.
  • the control unit 11 calculates the error between the output value output from the output layer 533 and the acquired dummy metadata 129 based on the loss function.
  • the dummy metadata 129 may be appropriately provided so that the first encoder 51 can be trained so that the identification result obtained from the first meta-discriminator 53 does not match the metadata 123.
  • the dummy metadata 129 may be composed of metadata 123 of another learning data set 121 that is different from the corresponding learning data set 121. That is, the control unit 11 selects another training data set 121 different from the training data set 121 for which the dummy metadata 129 is to be acquired, and targets the metadata 123 of the other selected training data set 121. It may be used as dummy metadata 129 of the training data set 121 of.
  • the method of selecting another training data set 121 for acquiring the metadata 123 to be used as the dummy metadata 129 does not have to be particularly limited, and is appropriately selected according to the embodiment. You can.
  • the control unit 11 randomly selects another training data set 121 from the plurality of training data sets 121, and uses the metadata 123 of the selected training data set 121 as the dummy metadata 129 of the target training data set 121. You may use it.
  • control unit 11 shifts the correspondence between the training data 122 and the metadata 123 in the training data set 121 in an arbitrary direction, so that the control unit 11 shifts the correspondence between the training data 122 and the metadata 123 in an arbitrary direction, so that the other training data set 121 assigned to the target training data set 121
  • the metadata 123 of the above may be used as the dummy metadata 129.
  • control unit 11 selects one training data set 121 from the plurality of training data sets 121, and uses the metadata 123 of the selected training data set 121 as dummy metadata of all the training data sets 121. It may be used as 129. According to this method, the amount of calculation for generating dummy metadata 129 can be suppressed, and the processing cost in this step S207 can be reduced.
  • the method for generating dummy metadata 129 does not have to be limited to such an example, and may be appropriately selected according to the embodiment.
  • the control unit 11 may generate dummy metadata 129 by inverting the value of the metadata 123.
  • the control unit 11 may generate dummy metadata 129 composed of random values (for example, random numbers) different from the values of the metadata 123.
  • the control unit 11 may use the learning data set 121 as it is for training, or may appropriately change the dummy metadata 129 of the learning data set 121.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error becomes smaller, and the output layer 533 to the first encoder 51 of the first meta-discriminator 53 is subjected to the error back propagation method.
  • the calculated gradient is backpropagated to the input layer 511 of.
  • the control unit 11 omits the calculation of the error of the calculation parameter included in the first meta-identifier 53, and calculates the error of the calculation parameter included in the first encoder 51.
  • the control unit 11 updates the value of the calculation parameter of the first encoder 51 based on each calculated error.
  • the control unit 11 makes the error between the output value output from the output layer 533 and the dummy metadata 129 small for each learning data set 121.
  • the value of the calculation parameter of the encoder 51 is adjusted.
  • the control unit 11 may repeat the first to fourth steps until the number of repetitions reaches a predetermined number of times. Alternatively, the control unit 11 may repeat the first to fourth steps until the sum of the errors becomes equal to or less than the threshold value.
  • the control unit 11 can execute the process of this step S207 in the same manner as the process of step S201 or the like. Therefore, the process of this step S207 can be simplified.
  • the first encoder 51 is a component corresponding to information other than the attributes related to the acquisition of the training data 122 of each learning data set 121, for example, information commonly appearing in the domain for acquiring the training data 122. Can be trained to include the first feature quantity.
  • the control unit 11 proceeds to the next step S208.
  • the method of training the first encoder 51 so that the identification result obtained from the first metadata classifier 53 does not match the metadata 123 is not limited to the method of using the dummy metadata 129. Good.
  • the control unit 11 may calculate an error between the output value output from the output layer 533 and the metadata 123 for each learning data set 121.
  • the control unit 11 calculates the gradient of the error in the direction in which the calculated error increases, and the gradient calculated by the error backpropagation method is used as the input layer 511 of the first encoder 51. May be backpropagated to. In this process, the control unit 11 may calculate the error of the calculation parameter included in the first encoder 51.
  • the control unit 11 may update the value of the calculation parameter of the first encoder 51 based on each calculated error. Also by this method, the control unit 11 can train the first encoder 51 so that the identification result obtained from the first meta-identifier 53 does not conform to the metadata 123.
  • Step S208 the control unit 11 determines whether or not to repeat the processes of steps S201 to S207.
  • the criteria for repeating the treatment may be appropriately determined according to the embodiment. For example, a specified number of times to repeat the process may be set. The specified number of times may be given, for example, by a set value or by an operator's designation. In this case, the control unit 11 determines whether or not the number of times the processes of steps S201 to S207 have been executed has reached the specified number of times. When it is determined that the number of executions has not reached the specified number of times, the control unit 11 returns the process to step S201 and repeats the processes of steps S201 to S207.
  • steps S206 and S207 are alternately and repeatedly executed.
  • the control unit 11 ends the machine learning process according to the present embodiment and proceeds to the next step S103.
  • the quantity will include the component corresponding to the attribute related to the acquisition.
  • the first feature amount and the second feature amount obtained by the first coder 51 and the second coder 52 that have been learned include the features included in the training data 122 (that is, the correct answer of the estimation task). Ingredients corresponding to are included.
  • hostile learning of the first encoder 51 and the first meta-discriminator 53 is performed by alternately executing the processes of steps S206 and S207.
  • step S206 the value of the arithmetic parameter of the first meta-identifier 53 is adjusted so that the output value of the first meta-identifier 53 matches the metadata 123, whereas the arithmetic parameter of the first encoder 51 is adjusted.
  • the value of is fixed.
  • step S207 the value of the calculation parameter of the first encoder 51 is adjusted so that the output value of the first meta-discriminator 53 does not match the metadata 123, whereas the value of the operation parameter of the first meta-identifier 53 is adjusted.
  • the value of the operation parameter is fixed.
  • step S206 with respect to the ability of the first encoder 51 at that stage to convert the training data 122 into the first feature amount so as not to include the component corresponding to the metadata 123, such a first.
  • the ability of the first meta-discriminator 53 to discriminate the metadata 123 from one feature quantity is improved.
  • step S207 the training data 122 is set as the first feature amount so that the component corresponding to the metadata 123 is not included, based on the meta-discrimination ability of the first meta-discriminator 53 at that stage.
  • the ability of the first encoder 51 to convert is improved.
  • the first feature amount includes components other than the metadata 123, for example, components corresponding to information commonly appearing in the domain for acquiring the training data 122 of each learning data set 121.
  • the second feature amount obtained by coding the learned second encoder 52 is included in the metadata 123.
  • the corresponding component is likely to be included.
  • the first feature amount obtained by the trained first encoder 51 tends to include a component corresponding to information other than the metadata 123 regarding the feature included in the training data 122.
  • the estimator 55 is trained to estimate the features included in the training data 122 from both of these features. Therefore, by using the trained first coder 51, second coder 52, and estimator 55, the target data is based on both the domain-specific information for acquiring the target data and the common information. You can perform the task of estimating the features contained in. Therefore, in the case where the information specific to the domain for which the target data is acquired is useful for the estimation task, the accuracy of estimating the features included in the target data can be improved.
  • the learned second feature amount is not used and the trained second encoder 52 is not used.
  • the features included in the target data can be estimated based on the first feature amount obtained by the 1-sign device 51.
  • the trained first encoder 51 and the other estimator 57 by using the trained first encoder 51 and the other estimator 57, the influence of the component corresponding to the attribute related to the acquisition of the target data is excluded, and the features included in the target data are obtained. Can be estimated. Therefore, according to the present embodiment, the accuracy of estimating the features included in the target data can be improved even in the case where the attribute information related to the acquisition of the target data adversely affects the accuracy of the estimation task.
  • the decoder 56 by training the decoder 56 together with the respective coders (51, 52) by the machine learning in step S203, it is possible to restore the input data from the first feature amount and the second feature amount. That is, it can be guaranteed that there is no loss of information regarding the input data in the first feature amount and the second feature amount. Therefore, according to the present embodiment, the loss of information can be suppressed in the process of converting the input data into the feature amount, so that the accuracy of the estimation task by the estimator 55 and the other estimator 57 can be improved.
  • step S204 it can be guaranteed that the component corresponding to the information available for estimating the feature indicated by the correct answer data 124 or the other correct answer data 125 is included in the first feature amount. As a result, it is possible to prevent the first feature amount from becoming useless information for the estimation task, and it is possible to improve the accuracy of the estimation task based on the first feature amount.
  • the machine learning in step S205 reduces the amount of mutual information between the first feature amount and the second feature amount.
  • the component corresponding to the metadata 123 is likely to be included in the second feature amount, whereas the component corresponding to the information other than the metadata 123 is likely to be included in the first feature amount and the second feature. It can be difficult to include in the amount. That is, the component corresponding to the metadata 123 and the component corresponding to other information can be appropriately distributed to the second feature amount and the first feature amount. Therefore, according to the present embodiment, useful information other than the metadata 123 can be easily included in the first feature amount, whereby the accuracy of the estimation task based on the first feature amount can be improved.
  • the machine learning processing procedure of the learning model 5 does not have to be limited to the above example, and steps can be omitted, replaced, and added as appropriate depending on the embodiment.
  • control unit 11 alternately repeatedly executes the processes of steps S206 and S207 in the process of repeatedly executing the series of processes of steps S201 to S207. ..
  • the method of alternately and repeatedly executing the processes of steps S206 and S207 does not have to be limited to such an example.
  • the control unit 11 may execute the processes of steps S201 to S205 as pre-learning. In this case, after the adjustment of the calculation parameter value by the processing of steps S201 to S205 is completed, the control unit 11 may alternately repeat the adjustment of the calculation parameter value by step S206 and step S207.
  • the processes of steps S201 to S205 are individually executed.
  • the method of adjusting the value of the calculation parameter by the processing of steps S201 to S205 does not have to be limited to such an example.
  • the control unit 11 may simultaneously execute at least any combination of steps S201 to S205.
  • the control unit 11 may input the training data 122 to each encoder (51, 52) and acquire the output value from each of the second meta-discriminator 54 and the estimator 55. ..
  • the control unit 11 may calculate an error between the output value of the second meta-identifier 54 and the metadata 123, and an error between the output value of the estimator 55 and the correct answer data 124.
  • the control unit 11 back-propagates the gradient of each error to obtain the error of the arithmetic parameters included in the first encoder 51, the second encoder 52, the second meta-identifier 54, and the estimator 55. It may be calculated.
  • the control unit 11 may update the value of each calculation parameter based on each calculated error.
  • control unit 11 may input noise 61 together with the training data 122 to each encoder (51, 52). .. On that basis, the control unit 11 may execute the processes of each step S201 to S207.
  • the method of inputting the noise 61 together with the training data 122 does not have to be particularly limited, and may be appropriately selected depending on the embodiment.
  • the control unit 11 may add noise 61 to the training data 122. Then, the control unit 11 may input the training data 122 to which the noise 61 is added to each encoder (51, 52).
  • each encoder (51, 52) may include a second channel of noise 61 in addition to the first channel of training data 122.
  • the input layer (511, 521) of each encoder (51, 52) has a first neuron (node) for inputting training data 122 and a second for inputting noise 61. It may have neurons (nodes).
  • the first neuron is an example of the first channel
  • the second neuron is an example of the second channel.
  • the control unit 11 inputs the training data 122 to the first channel of each encoder (51, 52) and inputs the noise 61 to the second channel to generate the noise 61 together with the training data 122. You can enter it.
  • the type of noise 61 is not particularly limited and may be appropriately selected according to the embodiment.
  • the noise 61 may be, for example, random noise or the like.
  • the form in which the noise 61 is input together with the training data 122 does not have to be limited to such an example.
  • the input of noise 61 may be omitted.
  • the first meta-discriminator 53 can discriminate the acquired attribute from the characteristics of the difference, and in step S207, the first meta-discriminator 53 fails to discriminate. 1 It may be difficult to train the encoder 51. On the other hand, by inputting the noise 61 together with the training data 122, the characteristic of the difference can be filled in, so that the processing of step S207 can be completed appropriately.
  • step S201 to S203 the control unit 11 outputs the training data 122 from the second encoder 52 by giving the training data 122 to the second encoder 52.
  • the value (second feature amount) may be acquired.
  • the control unit 11 inputs the noise 62 together with the acquired output value (second feature amount) to the second meta-discriminator 54, the estimator 55, and the decoder 56, and performs training in each step S201 to S203. You may do it.
  • the method of inputting the noise 62 together with the second feature amount does not have to be particularly limited, and may be appropriately selected according to the embodiment as in the case of the noise 61.
  • the control unit 11 may add noise 62 to the output value (second feature amount) of the second encoder 52. Then, the control unit 11 may input the second feature amount to which the noise 62 is added to the second meta-identifier 54, the estimator 55, and the decoder 56, respectively.
  • the inputs of the second meta-discriminator 54, the estimator 55, and the decoder 56 may include a channel of noise 62 in addition to the first channel of the second feature amount.
  • the input layers (541, 551, 561) of the second meta-discriminator 54, the estimator 55, and the decoder 56 are the first neurons (nodes) for inputting the second feature amount.
  • a second neuron (node) for inputting noise 62 may be provided.
  • the first neuron is an example of the first channel
  • the second neuron is an example of the second channel.
  • control unit 11 inputs the second feature amount to the first channel of each of the second meta-identifier 54, the estimator 55, and the decoder 56, and inputs the noise 62 to the second channel. Then, the noise 62 can be input together with the second feature amount.
  • the estimator 55 and the decoder 56 each include a first feature channel in addition to these channels.
  • the control unit 11 inputs the first feature amount to the relevant channels of the estimator 55 and the decoder 56 together with the above inputs.
  • the type of noise 62 is not particularly limited, and may be appropriately selected according to the embodiment as in the case of noise 61.
  • the noise 62 may be, for example, random noise or the like.
  • the form in which the noise 62 is input together with the second feature amount does not have to be limited to such an example.
  • the input of noise 62 may be omitted.
  • the attributes related to data acquisition differ depending on the noise 62 in the second meta-discriminator 54, the estimator 55, and the decoder 56, respectively.
  • a trained learning model 5 (second meta-discriminator 54, estimator 55, and decoder 56) capable of performing an estimation task with high accuracy and robust against differences in attributes related to data acquisition can be constructed. Can be done.
  • the correct answer data 124 and other correct answer data 125 may be omitted from the learning data set 121 used in the machine learning of steps S201, step S203, and steps S205 to S207. Further, the metadata 123 may be omitted from the learning data set 121 used in the machine learning of steps S202 to S205. A learning dataset with each omitted data set may be used for machine learning at each step.
  • Step S103 the control unit 11 operates as the storage processing unit 113, and uses information indicating the structure and the value of the calculation parameter of each device 51 to 57 of the learned learning model 5 as the learning result data 128. Generate.
  • the structure of each vessel 51 to 57 is specified, for example, by the number of layers of the neural network, the number of neurons contained in each layer, the connection relationship between neurons in adjacent layers, and the like.
  • the control unit 11 stores the generated learning result data 128 in a predetermined storage area.
  • the predetermined storage area may be, for example, a RAM in the control unit 11, a storage unit 12, a storage medium 91, an external storage device, or a combination thereof.
  • the external storage device may be, for example, a data server such as NAS (Network Attached Storage).
  • the control unit 11 may store the learning result data 128 in the data server via the network by using the communication interface 13.
  • the external storage device may be, for example, an external storage device connected to the learning device 1.
  • the control unit 11 ends a series of processes related to this operation example.
  • the generated learning result data 128 may be provided to the estimation device 2 and the data generation device 3 at an arbitrary timing.
  • the control unit 11 may transfer the learning result data 128 to the estimation device 2 and the data generation device 3 as the process of step S103 or separately from the process of step S103.
  • the estimation device 2 and the data generation device 3 may each acquire the learning result data 128 by accepting this transfer. Further, for example, the estimation device 2 and the data generation device 3 each acquire the learning result data 128 by accessing the learning device 1 or the data server via the network using the communication interfaces (23, 33), respectively. You may.
  • the learning result data 128 may be incorporated in each of the estimation device 2 and the data generation device 3 in advance.
  • control unit 11 may repeat the above series of processes. At the time of this repetition, the control unit 11 may generate new training data 192 by using the learned first encoder 51, second encoder 52, and decoder 56.
  • control unit 11 operates as the data acquisition unit 111 after performing machine learning of the learning model 5, and supplies at least one of the training data 122 of the plurality of learning data sets 121 to the first encoder 51. You may input and execute the arithmetic processing of the 1st encoder 51. As a result, the control unit 11 may acquire an output value (first feature amount) from the first encoder 51. Further, the control unit 11 inputs the training data 122 to the second encoder 52 and executes the arithmetic processing of the second encoder 52 to output a value (second feature amount) from the second encoder 52. May be obtained.
  • control unit 11 inputs the first feature amount acquired from the first encoder 51 to the decoder 56, and transmits the noise 63 to the decoder 56 together with the second feature amount acquired from the second encoder 52. It may be input and the arithmetic processing of the decoder 56 may be executed. As a result, the control unit 11 may acquire output data (decrypted data) from the decoder 56.
  • the method of inputting the noise 63 together with the second feature amount and the type of the noise 63 are not particularly limited and may be the same as the noise 62.
  • the control unit 11 may operate as the learning processing unit 112, use the acquired decoded data as new training data 192, and perform machine learning of the learning model 5 again.
  • the new training data 192 may be associated with metadata 193, correct answer data 194, and other correct answer data 195.
  • the metadata 193, the correct answer data 194, and the other correct answer data 195 may be acquired as appropriate.
  • the control unit 11 inputs the noise 63 together with the second feature amount acquired from the second encoder 52 into the second meta-discriminator 54, and inputs the noise 63 to the second meta-discriminator 54.
  • the arithmetic processing of 54 may be executed.
  • the control unit 11 may acquire the output value (result of meta identification) obtained from the second meta-identifier 54 by this arithmetic processing as metadata 193, and associate the acquired metadata 193 with the training data 192.
  • the control unit 11 may accept the operator's input via the input device 14 and generate the metadata 193 in response to the operator's input. Then, the control unit 11 may associate the generated metadata 193 with the training data 192.
  • the control unit 11 may input the first feature amount, the second feature amount, and the noise 63 into the estimator 55 and execute the arithmetic processing of the estimator 55. Good.
  • the control unit 11 may acquire the output value (identification result) obtained from the estimator 55 by this arithmetic processing as the correct answer data 194, and may associate the acquired correct answer data 194 with the training data 192.
  • the control unit 11 may receive the operator's input via the input device 14 and generate correct answer data 194 in response to the operator's input. Then, the control unit 11 may associate the generated correct answer data 194 with the training data 192.
  • the correct answer data 124 is determined. It may also be used as correct answer data 194.
  • the control unit 11 may receive the input of the operator via the input device 14 and generate other correct answer data 195 in response to the input of the operator. .. Then, the control unit 11 may associate the generated other correct answer data 195 with the training data 192. Further, for example, when the feature indicated by the other correct answer data 125 associated with the original training data 122 used for generating the new training data 192 does not depend on the attribute related to the acquisition of the training data 122, the other correct answer. The data 125 may also be used as other correct answer data 195.
  • the control unit 11 can use the training data 192 for the machine learning processing of the steps S201, S206, and S207.
  • the control unit 11 can use the training data 192 for the machine learning process of the steps S202 and S204.
  • the control unit 11 can use the training data 192 for the machine learning process in step S204. Further, even when none of the metadata 193, the correct answer data 194, and the other correct answer data 195 is obtained, the control unit 11 performs the training data in the machine learning process of the steps S203 and S205. 192 can be used.
  • the control unit 11 uses the training data 192 as input data and uses the second feature amount and noise 63 input to the decoder 56 when generating the training data 192 as training data to configure the second encoder 52. You may execute the learning process of the neural network. As described above, the generated training data 192 may be used for partial machine learning of the components of the learning model 5.
  • FIG. 10 is a flowchart showing an example of the processing procedure of the estimation device 2 according to the present embodiment.
  • the processing procedure described below is an example of an estimation method. However, the processing procedure described below is only an example, and each processing may be changed as much as possible. Further, with respect to the processing procedure described below, steps can be omitted, replaced, and added as appropriate according to the embodiment.
  • Step S501 the control unit 21 operates as the data acquisition unit 211 to acquire the target data 221 to be the target for executing the estimation task.
  • the estimation device 2 is connected to the sensor S via the external interface 27. Therefore, the control unit 21 acquires the sensing data generated by the sensor S as the target data 221 via the external interface 27.
  • the route for acquiring the target data 221 does not have to be limited to such an example, and may be appropriately determined according to the embodiment.
  • the sensor S may be connected to another computer different from the estimation device 2.
  • the control unit 21 may acquire the target data 221 by accepting the transmission of the target data 221 from another computer. When the target data 221 is acquired, the control unit 21 proceeds to the next step S502.
  • Step S502 the control unit 21 operates as the evaluation unit 212 and identifies the attributes related to the acquisition of the target data 221 by using the second encoder 52 and the second meta-identifier 54 trained by the learning device 1. ..
  • control unit 21 sets the trained second encoder 52 and the second meta-identifier 54 with reference to the learning result data 128. Subsequently, the control unit 21 inputs the acquired target data 221 to the second encoder 52, and executes arithmetic processing of the second encoder 52 and the second meta-identifier 54. That is, the control unit 21 inputs the target data 221 to the input layer 521 of the second encoder 52, and determines the firing of each neuron included in each layer (521 to 523, 541 to 543) in order from the input side.
  • the control unit 21 acquires the output value corresponding to the result of identifying the attribute related to the acquisition of the target data 221 from the output layer 543 of the second meta classifier 54. That is, the control unit 21 can identify the attribute related to the acquisition of the target data 221 by acquiring the output value of the second meta classifier 54. When the attribute related to the acquisition of the target data 221 is identified, the control unit 21 proceeds to the next step S503.
  • Step S503 and Step S504 In step S503, the control unit 21 operates as the evaluation unit 212, and estimates the features included in the target data 221 by the estimator 55 or another estimator 57 based on the result of identifying the attributes related to the acquisition of the target data 221. Determine whether to adopt the result. In step S504, the control unit 21 determines the branch destination of the process based on the determination result of step S503.
  • step S502 When the result of the identification by step S502 matches the correct answer value of the attribute related to the acquisition of the target data 221, the control unit 21 determines that the estimation result by the estimator 55 or another estimator 57 is adopted, and the next step. The process proceeds to S505. On the other hand, if the identification result in step S502 does not match the correct answer value of the attribute related to the acquisition of the target data 221, the control unit 21 determines that the estimation result by the estimator 55 or another estimator 57 is not adopted. The processes of steps S505 and S506 are omitted, and a series of processes related to this operation example is completed. In this case, the control unit 21 may output a message to the output device 25 notifying that the obtained target data 221 is likely to be unable to properly perform the estimation task.
  • the correct answer value of the attribute related to the acquisition of the target data 221 may be acquired as appropriate.
  • the control unit 21 may receive the input of the operator via the input device 24 and acquire the correct answer value of the attribute related to the acquisition of the target data 221 based on the input of the operator. Further, for example, the control unit 21 may acquire the correct answer value of the attribute related to the acquisition of the target data 221 by referring to the reference information indicating the usage pattern, specifications, observation environment, etc. of the sensor S. This reference information may be held in a predetermined storage area such as a RAM, a storage unit 22, a storage medium 92, a storage area of the sensor S, or an external storage device in the control unit 21, for example.
  • step S505 the control unit 21 operates as the estimation unit 213, and the target data 221 acquired by using the first coder 51, the second coder 52, and the estimator 55 trained by the learning device 1 Estimate the features contained in.
  • the control unit 21 estimates the features included in the acquired target data 221 by using the first encoder 51 and another estimator 57 trained by the learning device 1.
  • the control unit 21 refers to the learning result data 128, and the trained first coder 51 and the estimator 55 Make further settings. This setting process may be executed at the same time as step S502.
  • the control unit 21 inputs the target data 221 to the input layer (511, 521) of each coder (51, 52), and executes arithmetic processing of the first coder 51, the second coder 52, and the estimator 55. To do.
  • the control unit 21 acquires an output value corresponding to the result of estimating the feature included in the target data 221 from the output layer 553 of the estimator 55.
  • the control unit 21 refers to the learning result data 128 and sets the learned first encoder 51 and the other estimator 57. I do.
  • This setting process may be executed at the same time as step S502.
  • the control unit 21 inputs the target data 221 to the input layer 511 of the first encoder 51, and executes arithmetic processing of the first encoder 51 and the other estimator 57. As a result, the control unit 21 acquires an output value corresponding to the result of estimating the feature included in the target data 221 from the output layer 573 of the other estimator 57.
  • the information specific to the attribute related to the acquisition of the target data 221 is useful for the estimation task, it is preferable to estimate the features included in the target data 221 by the former method.
  • the information specific to the attribute related to the acquisition of the target data 221 adversely affects the estimation task, it is preferable to estimate the features included in the target data 221 by the latter method.
  • the traffic condition of the road is estimated from the sensing data obtained by the sensor observing the vehicle traveling on the road.
  • the control unit 21 proceeds to the next step S506.
  • the other estimator 57 used in this step S505 may be replaced with another estimator trained by another machine learning other than the above-mentioned series of machine learning of the learning device 1. That is, in the latter method, the control unit 21 may use another estimator instead of the other estimator 57.
  • the other estimator can be constructed by machine learning using the output value of the first encoder 51 as input data and the other correct answer data 125 as teacher data.
  • the machine learning of this other estimator may be performed by the learning device 1, the estimator 2, or a computer different from the learning device 1 and the estimator 2. Good. In this case, the estimation device 2 may acquire learning result data regarding another estimator at an arbitrary timing.
  • Step S506 the control unit 21 operates as the output unit 214 and outputs information regarding the result of estimating the feature.
  • the output destination and the content of the information to be output may be appropriately determined according to the embodiment.
  • the control unit 21 may output the result of estimating the features included in the target data 221 to the output device 25 as it is. Further, for example, the control unit 21 may execute some information processing based on the estimation result. Then, the control unit 21 may output the result of executing the information processing as information regarding the estimation result. The output of the result of executing this information processing may include outputting a specific message such as a warning according to the estimation result, controlling the operation of the controlled device according to the estimation result, and the like. ..
  • the output destination may be, for example, an output device 25, a control target device, or the like.
  • the control unit 21 determines whether or not to adopt the result of the estimation processing before executing the estimation processing in step S505, and obtains the result of the estimation processing. When it is determined not to be adopted, the execution of the processes of steps S505 and S506 is omitted.
  • the method of not adopting the result of the estimation process is not limited to such an example.
  • the control unit 21 may execute the processes of steps S502 and S503 after executing the process of step S505. Then, when it is determined that the result of the estimation process is not adopted, the control unit 21 may discard the result of the process of step S505 and omit the execution of the process of step S506. On the other hand, when it is determined that the result of the estimation process is adopted, the control unit 21 may execute the process of step S506.
  • the estimation task is appropriately executed for the target data 221 by using the learned second encoder 52 and the second meta-discriminator 54.
  • the control unit 21 may use the trained first encoder 51, second encoder 52, and decoder 56.
  • step S502 the control unit 21 inputs the acquired target data 221 to the input layer (511, 521) of each encoder (51, 52), and inputs the acquired target data 221 to the first encoder 51 and the second encoder 52. , And the arithmetic processing of the decoder 56 is executed. As a result, the control unit 21 acquires output data (decoded data) corresponding to the result of decoding the target data 221 from the first feature amount and the second feature amount from the output layer 563 of the decoder 56.
  • the control unit 21 compares the acquired decoded data with the target data 221 and based on the result of the comparison, depending on whether or not the decoded data conforms to the target data 321, the estimator 55 or It may be determined whether or not to adopt the estimation result of the feature included in the target data 221 by another estimator 57.
  • the comparison between the decoded data and the target data 221 may be performed by any method.
  • the control unit 21 may calculate the degree of agreement between the decoded data and the target data 221 as the comparison process.
  • control unit 21 may determine that the estimation result by the estimator 55 or another estimator 57 is adopted depending on the degree of agreement between the decoded data and the target data 221 being equal to or higher than the threshold value. On the other hand, the control unit 21 may determine that the estimation result by the estimator 55 or another estimator 57 is not adopted depending on the degree of agreement between the decoded data and the target data 221 being less than the threshold value.
  • the threshold may be determined as appropriate.
  • FIG. 11 is a flowchart showing an example of the processing procedure of the data generation device 3 according to the present embodiment.
  • the processing procedure described below is an example of a data generation method. However, the processing procedure described below is only an example, and each processing may be changed as much as possible. Further, with respect to the processing procedure described below, steps can be omitted, replaced, and added as appropriate according to the embodiment.
  • Step S701 the control unit 31 operates as the data acquisition unit 311 and acquires the target data 321 that is the source for generating new data.
  • the data generation device 3 is connected to the sensor S via the external interface 37. Therefore, the control unit 31 acquires the sensing data generated by the sensor S as the target data 321 via the external interface 37.
  • the route for acquiring the target data 321 does not have to be limited to such an example, and may be appropriately determined according to the embodiment.
  • the sensor S may be connected to another computer different from the data generation device 3.
  • the control unit 31 may acquire the target data 321 by accepting the transmission of the target data 321 from another computer.
  • the control unit 31 proceeds to the next step S702.
  • step S702 the control unit 31 operates as the generation unit 312, and by giving the target data 321 to the first encoder 51 trained by the learning device 1, the output value (first feature amount) from the first encoder 51. To get.
  • the control unit 31 uses the trained decoder 56 to move from the first encoder 51 without giving an output value (second feature amount) acquired from the second encoder 52.
  • Decrypted data is generated by decoding the target data 321 from the acquired output value (first feature amount).
  • control unit 31 sets the trained first encoder 51 and the decoder 56 with reference to the learning result data 128.
  • the control unit 31 inputs the target data 321 to the input layer 511 of the first encoder 51, and executes the arithmetic processing of the first encoder 51. As a result, the control unit 31 acquires an output value (first feature amount) from the output layer 513 of the first encoder 51.
  • control unit 31 inputs the first feature amount acquired from the first encoder 51 to the corresponding neuron of the input layer 561 of the decoder 56.
  • control unit 31 inputs data irrelevant to the second feature amount obtained from the target data 321 to the neuron (node) that receives the input of the second feature amount in the input layer 561 of the decoder 56.
  • control unit 31 may input numerical data composed of zero values to the corresponding neurons of the input layer 561 as data irrelevant to the second feature amount. Further, for example, the control unit 31 may input numerical data composed of random values to the corresponding neurons of the input layer 561 as data irrelevant to the second feature amount.
  • control unit 31 may further set the learned second encoder 52 with reference to the learning result data 128. Then, the control unit 31 may input data unrelated to the target data 321 into the second encoder 52 and execute the arithmetic processing of the second encoder 52.
  • Data unrelated to the target data 321 is different from, for example, numerical data composed of zero values, numerical data composed of random values, data obtained by at least partially converting the target data 321 and target data 321. It may be data acquired under the conditions.
  • the conversion of the target data 321 may be performed by a known numerical conversion method.
  • the control unit 31 inputs the output value obtained from the output layer 523 of the second encoder 52 by this arithmetic processing to the corresponding neuron of the input layer 561 as data irrelevant to the second feature amount obtained from the target data 321. You may.
  • the control unit 31 controls the decoder 56. Executes the arithmetic processing of. As a result, the control unit 31 acquires the output data (decrypted data) corresponding to the result of decoding the target data 321 from the first feature amount from the output layer 563 of the decoder 56 without giving the second feature amount. To do.
  • the control unit 31 proceeds to the next step S704.
  • Step S704 the control unit 31 operates as the storage processing unit 313 and stores the generated decoded data as new data in a predetermined storage area.
  • the predetermined storage area may be, for example, a RAM in the control unit 31, a storage unit 32, a storage medium 93, an external storage device, or a combination thereof.
  • the external storage device may be, for example, a data server such as NAS.
  • the control unit 31 may store the decrypted data in the data server via the network by using the communication interface 33.
  • the external storage device may be, for example, an external storage device connected to the data generation device 3.
  • the generated decrypted data corresponds to the data obtained by excluding the information related to the second feature amount (that is, the information corresponding to the attribute related to the acquisition of the target data 321) from the target data 321. That is, the present embodiment can be used in a scene where data excluding domain-specific information is excluded from the target data 321.
  • the generated decoded data may be used, for example, for analysis of features that commonly appear in a domain, or for machine learning of an estimator configured to estimate the features from the target data.
  • the control unit 31 may store the generated decrypted data in a predetermined storage area so that it can be used for any of these purposes.
  • the control unit 31 may store the generated decoded data in a storage area accessible to a computer that uses the decoded data for any of these purposes.
  • the control unit 31 ends a series of processes related to this operation example.
  • the control unit 31 may generate at least one of the first feature amount and the second feature amount by using at least one of the first coder 51 and the second coder 52. In this case, the control unit 31 may store at least one of the generated first feature amount and the second feature amount as new data in a predetermined storage area.
  • the first feature amount tends to include a component corresponding to information other than the attributes related to the acquisition of the target data 321 (for example, information that appears in common in each domain).
  • the second feature amount tends to include a component corresponding to the attribute (that is, domain-specific information) related to the acquisition of the target data 321. Therefore, the first feature quantity may be used, for example, for analysis of features commonly appearing in a domain, or machine learning of an estimator configured to estimate the features from target data.
  • the second feature quantity may be used, for example, for analysis of domain-specific information or machine learning of an estimator configured to estimate the feature from target data.
  • control unit 31 may generate new data by the same method as the training data 192. That is, the control unit 31 may input the target data 321 into the input layer (511, 521) of each encoder (51, 52) and execute the arithmetic processing of each encoder (51, 52). As a result, the control unit 31 may acquire each feature amount from the output layer (513, 523) of each encoder (51, 52). Then, the control unit 31 may input the first feature amount, the second feature amount, and the noise into the input layer 561 of the decoder 56, and execute the arithmetic processing of the decoder 56. As a result, the control unit 31 may acquire the decoded data from the output layer 563 of the decoder 56.
  • the control unit 31 may store the acquired decoded data in a predetermined storage area. According to this generation method, it is possible to generate new data (decoded data) in which the acquisition attribute is changed by the amount of noise for the target data 321.
  • the data generation device 3 may acquire the training data 122 of the learning device 1 as the target data 321 and return the decoded data generated by this method to the learning device 1 as the training data 192. As a result, the amount of training data held by the learning device 1 can be increased, and by using the training data for machine learning, a trained learning model capable of executing an estimation task with relatively high accuracy. 5 can be constructed.
  • control unit 31 may evaluate whether or not each encoder (51, 52) can appropriately calculate the feature amount for the target data 321 by the same evaluation method as the estimation device 2. ..
  • the control unit 31 may evaluate whether or not each encoder (51, 52) can appropriately calculate the feature amount for the target data 321 by the same evaluation method as the estimation device 2. ..
  • the control unit 31 When the result of the meta identification by the second meta-identifier 54 matches the correct answer value of the attribute related to the acquisition of the target data 321 or the decoded data obtained by the decoder 56 matches the target data 321, the control unit 31 , The data generated by the above series of processes may be adopted.
  • the control unit 31 May omit the above-mentioned series of processes related to data generation. Alternatively, the control unit 31 may discard the data generated by the above series of processes.
  • the first encoder 51, the second encoder 52, and the estimator 55 that have been learned by machine learning in steps S201 to S208 have information specific to the domain for acquiring the target data. , And the ability to perform the task of estimating the features contained in the target data, based on both common information. Further, the trained first encoder 51 and the other estimator 57 perform a task of estimating the features included in the target data based on the information common to the domain, excluding the influence of the information specific to the domain. You can acquire the ability to execute.
  • step S505 of the estimation device 2 learning that can execute the estimation task with relatively high accuracy in both the case where the information specific to the attribute related to the acquisition of the target data 221 is useful for the estimation task and the case where it has an adverse effect.
  • the completed learning model 5 can be constructed.
  • the first encoder 51 and the second encoder 52 can be commonly used for the target data (211 and 311) obtained from different domains. Therefore, in the present embodiment, it is possible to omit the trouble of preparing a trained extractor for each domain for acquiring the target data (211 and 311).
  • the trained learning model 5 appropriately estimates the target data 221 by the processes of steps S502 to S504. It is possible to evaluate whether or not it is possible to carry out. Based on the result of this evaluation, it is possible to prevent the trained learning model 5 from being used for the target data 221 that cannot properly perform the estimation task, or to prevent the trained learning model 5 suitable for the target data 221. Can be selected.
  • the learning device 1, the estimation device 2, and the data generation device 3 according to the above embodiment are applied to a scene in which a feature included in the sensing data obtained by the sensor S is estimated.
  • the scope of application of the above embodiment is not limited to such an example.
  • the above embodiment may be applied to a situation where a feature included in data obtained from a data other than a sensor is estimated.
  • the above embodiment can be applied to any situation in which a predetermined estimation task is performed on a predetermined data.
  • a modified example in which the application scene is limited will be illustrated.
  • FIG. 12 schematically illustrates an example of an application scene of the system according to the first modification.
  • This modification is an example in which the above embodiment is applied to a scene of predicting a traffic condition of a vehicle traveling on a road.
  • the system according to the present embodiment includes a learning device 1, a prediction device 2A, and a data generation device 3. Similar to the above embodiment, the learning device 1, the prediction device 2A, and the data generation device 3 may be connected to each other via a network.
  • the system according to this modification may be configured in the same manner as in the above embodiment except that the data to be handled is different.
  • the learning device 1 executes machine learning information processing according to the same processing procedure as that of the above embodiment, except that the data to be handled is different. That is, in step S101, the learning device 1 acquires a plurality of learning data sets 121A for learning the prediction of the traffic situation. Like each learning data set 121A and the above learning data set 121, it is composed of a combination of training data 122A, metadata 123A, correct answer data 124A, and other correct answer data 125A.
  • the training data 122A, the metadata 123A, the correct answer data 124A, and the other correct answer data 125A correspond to the training data 122, the metadata 123, the correct answer data 124, and the other correct answer data 125, respectively, according to the above embodiment.
  • the training data 122A is, for example, sensing data obtained by a sensor SA for observing a vehicle traveling on a road or a sensor of the same type (hereinafter, including the same type of sensor is referred to as a sensor SA).
  • the type of the sensor SA may not be particularly limited as long as it can observe a vehicle traveling on the road, and may be appropriately selected according to the embodiment.
  • the sensor SA may be, for example, a camera, an ultrasonic sensor, an infrared sensor, or the like.
  • the training data 122A may be composed of, for example, image data, data showing the measurement result of the number of passing vehicles per unit time, data showing the measurement result of the average speed of passing vehicles, and the like.
  • Metadata 123A indicates, for example, road attributes, sensor SA observation angles, sensor SA installation intervals, sensor SA types, or combinations thereof as attributes related to acquisition of training data 122A.
  • the attributes of a road are, for example, whether it is a straight road, whether it is a curved road, whether there is a toll gate on a toll road, whether it is a confluence, whether it is a branch point, etc. May be indicated by.
  • the correct answer data 124A and the other correct answer data 125A each show, for example, information on the traffic condition of the road as a feature included in the training data 122A.
  • the correct answer data 124A and the other correct answer data 125A may each indicate information on the traffic condition of the road from the time when the training data 122A is acquired to the time in the future.
  • the information on the traffic condition of the road may include, for example, information such as the presence / absence of a traffic jam, the probability of the occurrence of a traffic jam, the duration of the traffic jam that has occurred, and the time required from the installation location of the sensor SA to a predetermined location.
  • the presence or absence of traffic congestion may be expressed by whether or not traffic congestion occurs after a predetermined time.
  • sensor SAs are installed in each of the plurality of road sections, and in order to predict the probability of congestion occurring in each road section, it is assumed that the sensing data obtained by each sensor SA is collected as training data 122A. ..
  • the learning model There is a possibility that the machine learning of 5 cannot be carried out properly.
  • preprocessing such as deleting some data or adding new data may be performed.
  • the learning device 1 uses a plurality of learning data sets 121A each composed of a combination of such training data 122A, metadata 123A, correct answer data 124A, and other correct answer data 125A.
  • Machine learning of the learning model 5A is performed in the same manner as in the form.
  • the learning model 5A may be configured in the same manner as the learning model 5 according to the above embodiment. That is, the learning model 5A includes a first encoder 51A, a second encoder 52A, a first meta-discriminator 53A, a second meta-identifier 54A, an estimator 55A, a decoder 56A, and another estimator 57A. There is.
  • Each device 51A to 57A corresponds to each device 51 to 57 according to the above embodiment.
  • the configuration of each device 51A to 57A may be the same as that of each device 51 to 57 according to the above embodiment.
  • the second encoder 52A is trained to convert the training data 122A into a second feature quantity including a component corresponding to the attribute related to the acquisition of the training data 122A indicated by the metadata 123A.
  • the first encoder 51A converts the training data 122A into a first feature quantity including information other than the attributes related to the acquisition of the training data 122A, for example, a component corresponding to the information commonly appearing in the domain for acquiring the training data 122A.
  • the portion of the learning model 5A that includes the estimator 55A or another estimator 57A acquires the ability to predict traffic conditions from the sensing data obtained by the sensor SA. Further, the portion of the learning model 5A including the decoder 56A acquires the ability to generate the same type of decoded data as the sensing data obtained by the sensor SA.
  • step S103 the learning device 1 generates information about the learned learning model 5A as the learning result data 128A, and stores the generated learning result data 128A in a predetermined storage area.
  • the generated learning result data 128A may be provided to the prediction device 2A and the data generation device 3 at an arbitrary timing.
  • the data generation device 3 executes information processing related to data generation by the same processing procedure as in the above embodiment, except that the data to be handled is different. That is, the data generation device 3 executes the processes of steps S701 to S704. As a result, the data generation device 3 can generate the decoded data from the target sensing data by using the learned first encoder 51A and the decoder 56A.
  • the decoded data corresponds to the data obtained by excluding the information corresponding to the attribute related to the acquisition of the target sensing data from the target sensing data.
  • the data generation device 3 uses the trained first encoder 51A, second encoder 52A, and decoder 56A to change the acquisition attribute by the amount of noise (decrypted data). May be generated. Further, the data generation device 3 may generate data of at least one of the first feature amount and the second feature amount by using at least one of the trained first coder 51A and second coder 52A. ..
  • the prediction device 2A corresponds to the estimation device 2.
  • the prediction device 2A may be configured in the same manner as the estimation device 2 except that the data to be handled is different.
  • the prediction device 2A is connected to the sensor SA via a network.
  • the prediction device 2A acquires the target sensing data from the sensor SA.
  • the prediction device 2A predicts the traffic condition of the target road based on the acquired target sensing data by using the learned learning model 5A constructed by the learning device 1.
  • FIG. 13A schematically illustrates an example of the hardware configuration of the prediction device 2A according to this modification.
  • the prediction device 2A according to the present modification is 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, similarly to the estimation device 2.
  • 27 is an electrically connected computer.
  • the prediction device 2A is connected to the sensor SA via the communication interface 23.
  • the sensor SA may be appropriately arranged on a predetermined road for monitoring the traffic condition.
  • the hardware configuration of the prediction device 2A does not have to be limited to such an example.
  • components can be omitted, replaced, and added as appropriate depending on the embodiment.
  • the prediction device 2A 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 the prediction device 2A stores various information such as the prediction program 82A and the learning result data 128A.
  • the prediction program 82A and the learning result data 128A correspond to the estimation program 82 and the learning result data 128 according to the above embodiment.
  • At least one of the prediction program 82A and the learning result data 128A may be stored in the storage medium 92. Further, the prediction device 2A may acquire at least one of the prediction program 82A and the learning result data 128A from the storage medium 92.
  • FIG. 13B schematically illustrates an example of the software configuration of the prediction device 2A according to this modification. Similar to the above embodiment, the software configuration of the prediction device 2A is realized by executing the prediction program 82A by the control unit 21. As shown in FIG. 13B, the software configuration of the prediction device 2A is the same as the software configuration of the estimation device 2 except that the sensing data obtained by the sensor SA for observing the vehicle traveling on the road is handled. As a result, the prediction device 2A executes a series of processes related to the prediction process in the same manner as the estimation process of the estimation device 2.
  • step S501 the control unit 21 operates as the data acquisition unit 211, and acquires the target sensing data 221A reflecting the traffic condition on the target road from the sensor SA.
  • step S502 the control unit 21 operates as the evaluation unit 212 and identifies the attributes related to the acquisition of the target sensing data 221A by using the second encoder 52A and the second meta-identifier 54A trained by the learning device 1. To do. Specifically, the control unit 21 refers to the learning result data 128A and sets the learned second encoder 52A and the second meta-identifier 54A.
  • control unit 21 inputs the acquired target sensing data 221A to the second encoder 52A, and executes arithmetic processing of the second encoder 52A and the second meta-identifier 54A. By this arithmetic processing, the control unit 21 acquires an output value corresponding to the result of identifying the attribute related to the acquisition of the target sensing data 221A from the second meta-identifier 54A.
  • step S503 the control unit 21 operates as the evaluation unit 212 and adopts the result of prediction by the estimator 55A or another estimator 57A based on the result of identifying the attribute related to the acquisition of the target sensing data 221A. Is determined.
  • step S504 the control unit 21 determines the branch destination of the process based on the determination result of step S503.
  • step S502 When the result of the identification in step S502 matches the correct answer value of the attribute related to the acquisition of the target sensing data 221A, the control unit 21 determines that the result of the prediction by the estimator 55A or another estimator 57A is adopted, and next The process proceeds to step S505 of. On the other hand, if the identification result in step S502 does not match the correct answer value of the attribute related to the acquisition of the target sensing data 221A, the control unit 21 determines that the prediction result by the estimator 55A or another estimator 57A is not adopted. Then, the processes of steps S505 and S506 are omitted, and a series of processes related to this modification is completed.
  • step S505 the control unit 21 operates as the prediction unit 213A and uses the first encoder 51A, the second encoder 52A, and the estimator 55A trained by the learning device 1 to target from the target sensing data 221A. Predict traffic conditions on roads. Alternatively, the control unit 21 predicts the traffic condition on the target road from the target sensing data 221A by using the first encoder 51A and another estimator 57A trained by the learning device 1.
  • control unit 21 refers to the learning result data 128A and further sets the learned first encoder 51A and the estimator 55A.
  • the control unit 21 inputs the target sensing data 221A to each encoder (51A, 52A), and executes arithmetic processing of the first encoder 51A, the second encoder 52A, and the estimator 55A.
  • the control unit 21 acquires an output value corresponding to the result of predicting the traffic condition on the target road from the target sensing data 221A from the estimator 55A.
  • control unit 21 refers to the learning result data 128A and sets the learned first encoder 51A and the other estimator 57A.
  • the control unit 21 inputs the target sensing data 221A to the first encoder 51A, and executes arithmetic processing of the first encoder 51A and the other estimator 57A. As a result, the control unit 21 acquires an output value corresponding to the result of predicting the traffic condition on the target road from the target sensing data 221A from the other estimator 57A.
  • the control unit 21 operates as the output unit 214 and outputs information regarding the result of predicting the traffic condition on the target road.
  • 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 predicting the traffic condition to the output device 25 as it is.
  • the control unit 21 may distribute the result of predicting the traffic condition to the in-vehicle device or the user terminal of the vehicle existing around the target road. The range of distribution may be determined as appropriate.
  • the control unit 21 may acquire position information from the vehicle-mounted device or user terminal of the vehicle, and specify the vehicle-mounted device or user terminal to be distributed based on the acquired position information.
  • the control unit 21 may output a message for notifying that the probability of occurrence of traffic congestion is high.
  • the threshold may be determined as appropriate.
  • the control unit 21 may deliver the message to the in-vehicle device or the user terminal of the vehicle existing around the target road.
  • the message may include information indicating a detour route with a lower probability of congestion than the route including the target road. Further, it is assumed that the vehicle is equipped with a control device for controlling the operation of automatic driving.
  • the control unit 21 issues a command to the periphery of the target road to instruct the vehicle to travel on a route avoiding the target road when the probability of occurrence of traffic congestion on the target road is equal to or higher than the threshold value. It may be delivered to the control device of an existing vehicle. In response to this, the vehicle control device may control the automatic driving of the vehicle so as to travel on a route avoiding the target road.
  • the probability of occurrence of traffic congestion or the prediction of the presence or absence of traffic congestion tends to depend on the attributes of the road. For example, a two-lane road is less likely to cause traffic congestion than a one-lane road. Further, for example, there is a high probability that traffic congestion will occur on a road having many merging points as compared with a straight road. Therefore, in the scene of predicting the probability of occurrence of traffic congestion or the presence or absence of traffic congestion, it is considered that the information specific to the domain from which the data is acquired is useful for the estimation task. On the other hand, the number of traffic flows and the tendency of their increase / decrease do not depend on the attributes of the road. Therefore, in the scene of estimating the duration of the traffic congestion that has occurred, the information specific to the domain from which the data is acquired is the estimation task. It is thought that this will adversely affect the accuracy of.
  • the sensor SA may be, for example, a camera.
  • the camera may be installed on the road or may be held by a person traveling on the road.
  • the training data 122A may be, for example, image data.
  • Metadata 123A may be set to indicate, for example, road attributes and sensor SA installation intervals.
  • the correct answer data 124A may be set to indicate, for example, the probability of occurrence of traffic congestion or the presence or absence of traffic congestion.
  • the other correct answer data 125B may be set to indicate, for example, the duration of the traffic jam that has occurred.
  • the first feature amount will include, as information common to the domain, the number of traffic flows that occur in spots and the components corresponding to the changing tendency of the increase or decrease.
  • the second feature amount includes a component corresponding to the tendency of the traffic flow caused by the terrain that appears constantly and the tendency of the traffic flow co-occurring at a plurality of points as the information peculiar to the domain.
  • the tendency of traffic flow due to the terrain that appears constantly is, for example, a tendency that speed reduction and congestion are likely to occur in the sag portion.
  • co-occurrence at a plurality of points means that, for example, when a traffic jam occurs at a confluence of expressways, there is a high possibility that a traffic jam will occur at a point of a straight road in front of the confluence.
  • the traffic flow at one point affects the traffic flow at another point.
  • the traffic congestion is based on both the information peculiar to the above domain and the information common to the domain. It is possible to perform an estimation task that predicts the probability of occurrence or the presence or absence of traffic congestion. Therefore, it is possible to predict the probability of occurrence of traffic congestion or the presence or absence of traffic congestion on the target road with relatively high accuracy. Further, in the prediction device 2A, by using the learned first encoder 51A and the other estimator 57, the information peculiar to the domain is excluded, and the traffic jam generated based on the information common to the domain. Can perform an estimation task that predicts the duration of. Therefore, the duration of traffic congestion on the target road can be predicted with relatively high accuracy.
  • FIG. 14 schematically illustrates an example of an application scene of the system according to the second modification.
  • This modified example is an example in which the above embodiment is applied to a scene where the state of the subject is estimated.
  • FIG. 14 as an example of a scene of estimating the state of the target person, a scene of monitoring the state of the driver RB of the vehicle is illustrated.
  • the driver RB is an example of a subject.
  • the system according to the present embodiment includes a learning device 1, a monitoring device 2B, and a data generating device 3. Similar to the above embodiment, the learning device 1, the monitoring device 2B, and the data generating device 3 may be connected to each other via a network.
  • the system according to this modification may be configured in the same manner as in the above embodiment except that the data to be handled is different.
  • the learning device 1 executes machine learning information processing according to the same processing procedure as that of the above embodiment, except that the data to be handled is different. That is, in step S101, the learning device 1 acquires a plurality of learning data sets 121B for learning the task of estimating the state of the target person. Like each learning data set 121B and the above learning data set 121, it is composed of a combination of training data 122B, metadata 123B, correct answer data 124B, and other correct answer data 125B.
  • the training data 122B, the metadata 123B, the correct answer data 124B, and the other correct answer data 125B correspond to the training data 122, the metadata 123, the correct answer data 124, and the other correct answer data 125, respectively, according to the above embodiment.
  • the training data 122B is, for example, sensing data obtained by a sensor SB for observing the state of a subject or a sensor of the same type (hereinafter, including the same type of sensor and referred to as a sensor SB).
  • the subject is, for example, a driver who drives a vehicle.
  • the type of the sensor SB is not particularly limited as long as the state of the subject can be observed, and the sensor SB may be appropriately selected according to the embodiment.
  • the sensor SB may be, for example, a camera, a vital sensor, or a combination thereof.
  • the camera may be, for example, a general RGB camera, a depth camera, an infrared camera, or the like.
  • the vital sensor may be, for example, a thermometer, a sphygmomanometer, a pulse rate monitor, or the like.
  • the training data 122B may be composed of, for example, image data, vital data, and the like.
  • the metadata 123B indicates, as attributes related to the acquisition of training data 122B, for example, the identification information of the subject, the attribute related to the time when the sensing data was acquired, the attribute related to the installation status of the sensor SB, the installation location of the sensor SB, or a combination thereof. ..
  • the subject identification information may include, for example, information (identifier) for identifying the subject, gender, age, physique, race, and the like.
  • the attributes related to time may include, for example, the type of time zone, the type of day of the week, the type of weekdays and holidays, the type of month, the type of season, and the like.
  • Attributes related to the installation status of the sensor SB may include, for example, the installation angle of the sensor SB, the ambient temperature of the sensor SB, the distance between the sensor SB and the subject, the installation interval of the sensor SB, and the like.
  • the correct answer data 124B and the other correct answer data 125B each indicate, for example, the state of the subject as a feature included in the training data 122B.
  • the subject's condition may include, for example, the subject's health condition.
  • the health state may be expressed by, for example, the probability of developing a predetermined disease, the probability of a change in physical condition, or the like.
  • the state of the subject includes, for example, the degree of drowsiness indicating the degree of drowsiness of the subject, the degree of fatigue indicating the degree of fatigue of the subject, the degree of margin indicating the degree of margin for driving of the subject, or a combination thereof. It's fine.
  • the learning device 1 uses a plurality of learning data sets 121B each composed of a combination of such training data 122B, metadata 123B, correct answer data 124B, and other correct answer data 125B.
  • Machine learning of the learning model 5B is performed in the same manner as in the form.
  • the learning model 5B may be configured in the same manner as the learning model 5 according to the above embodiment. That is, the learning model 5B includes a first encoder 51B, a second encoder 52B, a first meta-identifier 53B, a second meta-identifier 54B, an estimator 55B, a decoder 56B, and another estimator 57B. There is.
  • Each device 51B to 57B corresponds to each device 51 to 57 according to the above embodiment.
  • the configuration of each device 51B to 57B may be the same as that of each device 51 to 57 according to the above embodiment.
  • the second encoder 52B is trained to convert the training data 122B into a second feature quantity including a component corresponding to the attribute related to the acquisition of the training data 122B indicated by the metadata 123B.
  • the first encoder 51B converts the training data 122B into a first feature quantity including information other than the attributes related to the acquisition of the training data 122B, for example, a component corresponding to the information commonly appearing in the domain for acquiring the training data 122B.
  • the portion of the learning model 5B that includes the estimator 55B or another estimator 57B acquires the ability to estimate the driver's condition from the sensing data obtained by the sensor SB. Further, the portion of the learning model 5B including the decoder 56B acquires the ability to generate the same type of decoded data as the sensing data obtained by the sensor SB.
  • step S103 the learning device 1 generates information about the learned learning model 5B as learning result data 128B, and stores the generated learning result data 128B in a predetermined storage area.
  • the generated learning result data 128B may be provided to the monitoring device 2B and the data generation device 3 at an arbitrary timing.
  • the data generation device 3 executes information processing related to data generation by the same processing procedure as in the above embodiment, except that the data to be handled is different. That is, the data generation device 3 executes the processes of steps S701 to S704. As a result, the data generation device 3 can generate the decoded data from the target sensing data by using the learned first encoder 51B and the decoder 56B. The decoded data corresponds to the data obtained by excluding the information corresponding to the attribute related to the acquisition of the target sensing data from the target sensing data. Further, the data generation device 3 uses the learned first encoder 51B, second encoder 52B, and decoder 56B to change the acquisition attribute by the amount of noise (decrypted data). May be generated. Further, the data generation device 3 may generate data of at least one of the first feature amount and the second feature amount by using at least one of the trained first coder 51B and the second coder 52B. ..
  • the monitoring device 2B corresponds to the estimation device 2.
  • the monitoring device 2B may be configured in the same manner as the estimation device 2 except that the data to be handled is different.
  • the monitoring device 2B is connected to the sensor SB.
  • the monitoring device 2B acquires the target sensing data from the sensor SB.
  • the monitoring device 2B estimates the state of the driver RB based on the acquired target sensing data by using the learned learning model 5B constructed by the learning device 1.
  • FIG. 15A schematically illustrates an example of the hardware configuration of the monitoring device 2B according to this modification.
  • the monitoring device 2B according to the present modification is 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, similarly to the estimation device 2.
  • 27 is an electrically connected computer.
  • the monitoring device 2B is connected to the sensor SB via the external interface 27.
  • the sensor SB may be appropriately arranged at a place where the state of the driver RB can be observed. For example, when the sensor SB is a camera, the sensor SB may be arranged in the vicinity of the driver's seat so that the driver RB can be photographed.
  • the sensor SB when the sensor SB is a vital sensor, the sensor SB may be appropriately attached so that the vitals of the driver RB can be measured.
  • the hardware configuration of the monitoring device 2B does not have to be limited to such an example.
  • the components can be omitted, replaced, and added as appropriate according to the embodiment.
  • the monitoring device 2B may be a general-purpose computer, a mobile phone including a smartphone, an in-vehicle device, or the like, in addition to an information processing device designed exclusively for the provided service.
  • the storage unit 22 of the monitoring device 2B stores various information such as the monitoring program 82B and the learning result data 128B.
  • the monitoring program 82B and the learning result data 128B correspond to the estimation program 82 and the learning result data 128 according to the above embodiment.
  • At least one of the monitoring program 82B and the learning result data 128B may be stored in the storage medium 92. Further, the monitoring device 2B may acquire at least one of the monitoring program 82B and the learning result data 128B from the storage medium 92.
  • FIG. 15B schematically illustrates an example of the software configuration of the monitoring device 2B according to this modification. Similar to the above embodiment, the software configuration of the monitoring device 2B is realized by executing the monitoring program 82B by the control unit 21. As shown in FIG. 15B, the software configuration of the monitoring device 2B is the same as the software configuration of the estimation device 2 except that the sensing data obtained by the sensor SB for observing the state of the driver RB is handled. As a result, the monitoring device 2B executes a series of processes related to the monitoring process in the same manner as the estimation process of the estimation device 2.
  • step S501 the control unit 21 operates as the data acquisition unit 211, and acquires the target sensing data 221B reflecting the state of the driver RB from the sensor SB.
  • step S502 the control unit 21 operates as the evaluation unit 212 and identifies the attributes related to the acquisition of the target sensing data 221B by using the second encoder 52B and the second meta-identifier 54B trained by the learning device 1. To do. Specifically, the control unit 21 refers to the learning result data 128B and sets the learned second encoder 52B and the second meta-identifier 54B.
  • control unit 21 inputs the acquired target sensing data 221B to the second encoder 52B, and executes arithmetic processing of the second encoder 52B and the second meta-identifier 54B. By this arithmetic processing, the control unit 21 acquires the output value corresponding to the result of identifying the attribute related to the acquisition of the target sensing data 221B from the second meta-identifier 54B.
  • step S503 the control unit 21 operates as the evaluation unit 212, and based on the result of identifying the attribute related to the acquisition of the target sensing data 221B, whether or not to adopt the estimation result by the estimator 55B or another estimator 57B. Is determined.
  • step S504 the control unit 21 determines the branch destination of the process based on the determination result of step S503.
  • step S502 When the result of the identification in step S502 matches the correct answer value of the attribute related to the acquisition of the target sensing data 221B, the control unit 21 determines that the result of estimation by the estimator 55B or another estimator 57B is adopted, and next The process proceeds to step S505 of. On the other hand, if the identification result in step S502 does not match the correct answer value of the attribute related to the acquisition of the target sensing data 221B, the control unit 21 determines that the estimation result by the estimator 55B or another estimator 57B is not adopted. Then, the processes of steps S505 and S506 are omitted, and a series of processes related to this modification is completed.
  • step S505 the control unit 21 operates as the monitoring unit 213B and operates from the target sensing data 221B by using the first encoder 51B, the second encoder 52B, and the estimator 55B trained by the learning device 1. Estimate the state of person RB. Alternatively, the control unit 21 estimates the state of the driver RB from the target sensing data 221B by using the first encoder 51B and another estimator 57B trained by the learning device 1.
  • control unit 21 refers to the learning result data 128B and further sets the learned first encoder 51B and the estimator 55B.
  • the control unit 21 inputs the target sensing data 221B to each encoder (51B, 52B), and executes arithmetic processing of the first encoder 51B, the second encoder 52B, and the estimator 55B.
  • the control unit 21 acquires an output value corresponding to the result of estimating the state of the driver RB from the target sensing data 221B from the estimator 55B.
  • control unit 21 refers to the learning result data 128B and sets the trained first encoder 51B and the other estimator 57B.
  • the control unit 21 inputs the target sensing data 221B to the first encoder 51B, and executes arithmetic processing of the first encoder 51B and the other estimator 57B. As a result, the control unit 21 acquires an output value corresponding to the result of estimating the state of the driver RB from the target sensing data 221B from the other estimator 57B.
  • step S506 the control unit 21 operates as the output unit 214 and outputs information regarding the result of estimating the state of the driver RB.
  • 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 estimating the state of the driver RB to the output device 25 as it is. Further, for example, the control unit 21 may execute some information processing based on the estimation result. Then, the control unit 21 may output the result of executing the information processing as information regarding the estimation result.
  • the control unit 21 may output a specific message such as a warning to the output device 25 according to the estimated state of the driver RB.
  • a specific message such as a warning to the output device 25 according to the estimated state of the driver RB.
  • the control unit 21 determines whether or not at least one of the estimated sleepiness and fatigue exceeds the threshold value. May be determined.
  • the threshold value may be set as appropriate. Then, when at least one of the degree of drowsiness and the degree of fatigue exceeds the threshold value, the control unit 21 outputs a warning to the output device 25 to urge the driver RB to stop at a parking lot or the like and take a break. May be good.
  • control unit 21 when the vehicle is equipped with a control device (not shown) for controlling the operation of automatic driving, the control unit 21 performs the operation of automatic driving of the vehicle based on the result of estimating the state of the driver RB.
  • a command for instructing may be transmitted to the control device.
  • the control device is configured to be switchable between an automatic driving mode for controlling the running of the vehicle and a manual driving mode for controlling the running of the vehicle by steering the driver RB.
  • the control unit 21 when the vehicle is traveling in the automatic driving mode and the driver RB or the system accepts the switch from the automatic driving mode to the manual driving mode, the control unit 21 has an estimated margin of the driver RB. It may be determined whether or not the degree exceeds the threshold. Then, when the margin of the driver RB exceeds the threshold value, the control unit 21 may transmit a command permitting the switching from the automatic operation mode to the manual operation mode to the control device. On the other hand, when the margin of the driver RB is equal to or less than the threshold value, the control unit 21 sends a notification to the control device not permitting the switching from the automatic driving mode to the manual driving mode, and runs in the automatic driving mode. You may try to maintain it.
  • the control unit 21 may determine whether or not at least one of the estimated drowsiness and fatigue exceeds the threshold value. Then, when at least one of the degree of drowsiness and the degree of fatigue exceeds the threshold value, the control unit 21 switches from the manual operation mode to the automatic operation mode and instructs the vehicle to stop at a safe place such as a parking lot. May be sent to the control device. On the other hand, if this is not the case, the control unit 21 may maintain the running of the vehicle in the manual driving mode.
  • the control unit 21 may determine whether or not the estimated margin is equal to or less than the threshold value. Then, when the margin is equal to or less than the threshold value, the control unit 21 may send a deceleration command to the control device. On the other hand, if this is not the case, the control unit 21 may maintain the running of the vehicle by the operation of the driver RB.
  • the vehicle control device and the monitoring device 2B may be configured by an integrated computer.
  • a learned learning model 5B that has a relatively low introduction cost and is robust to the difference in attributes related to the acquisition of the sensing data is constructed. be able to.
  • changes in physical condition including the degree of drowsiness, fatigue, margin, etc. have little relation to the attributes of the subject and can be estimated from relative changes in vital signs such as blood pressure. Therefore, in the scene of estimating the change in physical condition, the information specific to the domain from which the data is acquired is considered to adversely affect the accuracy of the estimation task.
  • the risk of developing a predetermined disease may depend on the attributes of the subject. Therefore, in the scene of estimating the probability of developing a predetermined disease, the information specific to the domain from which the data is acquired is considered to be useful for the estimation task.
  • the sensor SB may be, for example, a vital sensor such as a blood pressure monitor.
  • the training data 122B may be, for example, vital measurement data such as blood pressure.
  • the metadata 123B may be set to indicate, for example, identification information of a subject (subject) and attributes relating to the time (eg, measurement time) at which the data was acquired.
  • the correct answer data 124B may be set to indicate, for example, the probability of developing a predetermined disease.
  • the other correct answer data 125B may be set to indicate, for example, the probability that a change in physical condition will occur.
  • the first feature amount will include components corresponding to the average and increase / decrease range of vital values such as blood pressure values as information common to domains.
  • the second feature amount includes the attribute of the subject and the component corresponding to the bias based on the time when the data is acquired as the information peculiar to the domain.
  • the monitoring device 2B by using the learned first encoder 51B and the other estimator 57B, the information specific to the domain is excluded, and the driver is based on the information common to the domain. It is possible to carry out the task of estimating the physical condition change of RB. Therefore, the change in the physical condition of the driver RB can be estimated with relatively high accuracy. Further, in the monitoring device 2B, by using the learned first coder 51B, second coder 52B, and estimator 55B, the driver RB can use the learned information specific to the domain and common information. The task of estimating the probability of developing a given disease can be performed. Therefore, the probability that the driver RB will develop a predetermined disease can be estimated with relatively high accuracy.
  • the target person for which the state is estimated does not have to be limited to the driver RB of the vehicle illustrated in FIG. 14, and may include any person.
  • the target person for which the state is predicted may include, for example, a worker who works in an office, a factory, or the like, a person to be measured whose vital signs are measured, and the like.
  • FIG. 16 schematically illustrates an example of another scene in which the state of the subject is estimated.
  • the system illustrated in FIG. 16 includes a learning device 1, a diagnostic device 2B2, and a data generating device 3.
  • the diagnostic device 2B2 corresponds to the monitoring device 2B.
  • the diagnostic device 2B2 is connected to the vital sensor SB2, and the target sensing data of the person to be measured is acquired by the vital sensor SB2.
  • the vital sensor SB2 is an example of the sensor SB.
  • the diagnostic device 2B2 estimates the state of the person to be measured by the same processing as that of the monitoring device 2B.
  • the state of the person being measured may include the health state of the person being measured.
  • the state of health may include, for example, whether or not he is healthy, whether or not there is a sign of illness, and the like.
  • the correct answer data 124B and the other correct answer data 125B may be configured to indicate, for example, the type of health condition of the person, the probability of getting the target disease, and the like.
  • FIG. 17 schematically illustrates an example of an application scene of the system according to the third modification.
  • This modification is an example in which the above embodiment is applied to a scene where the appearance inspection of the product RC is performed.
  • the system according to the present embodiment includes a learning device 1, an inspection device 2C, and a data generation device 3. Similar to the above embodiment, the learning device 1, the inspection device 2C, and the data generation device 3 may be connected to each other via a network.
  • the system according to this modification may be configured in the same manner as in the above embodiment except that the data to be handled is different.
  • the learning device 1 executes machine learning information processing according to the same processing procedure as that of the above embodiment, except that the data to be handled is different. That is, in step S101, the learning device 1 acquires a plurality of learning data sets 121C for learning the task of estimating the state of the product RC. Like each learning data set 121C and the above learning data set 121, it is composed of a combination of training data 122C, metadata 123C, correct answer data 124C, and other correct answer data 125C.
  • the training data 122C, the metadata 123C, the correct answer data 124C, and the other correct answer data 125C correspond to the training data 122, the metadata 123, the correct answer data 124, and the other correct answer data 125, respectively, according to the above embodiment.
  • the training data 122C is, for example, image data showing the product RC.
  • the training data 122C is a product RC or a product of the same type (hereinafter, a product RC including the same type of product) by a camera SC or a camera of the same type (hereinafter, a camera SC of the same type is included). It may be obtained by taking a picture of.
  • the camera SC may be, for example, a general RGB camera, a depth camera, an infrared camera, or the like.
  • Product RC may be, for example, a product transported on a production line for electronic devices, electronic parts, automobile parts, chemicals, foods, and the like.
  • the electronic component may be, for example, a board, a chip capacitor, a liquid crystal, a winding of a relay, or the like.
  • the automobile parts may be, for example, connecting rods, shafts, engine blocks, power window switches, panels and the like.
  • the chemical may be, for example, a packaged tablet, an unpackaged tablet, or the like.
  • the product may be a final product produced after the completion of the manufacturing process, an intermediate product produced in the middle of the manufacturing process, or an initial product prepared before the manufacturing process is completed. You may.
  • the metadata 123C indicates, for example, the attributes of the product RC, the shooting conditions of the product RC, the attributes of the factory that manufactures the product RC, or a combination thereof, as the attributes related to the acquisition of the training data 122C.
  • the attributes of the product RC may include, for example, the type, identifier, material, appearance (for example, three-dimensional shape) of the product RC and the like.
  • the shooting conditions of the product RC may include, for example, the shooting angle of the camera SC, the orientation of the product RC, the lighting conditions, the distance between the camera SC and the product RC, the attributes related to the performance of the camera SC, the background conditions, and the like.
  • the attributes related to the performance of the camera SC may include, for example, the type of image data to be obtained (whether or not it is an RGB image, etc.), the resolution, and the like.
  • the attributes of the factory that manufactures the product RC may include, for example, the identifier of the factory, the production capacity of the product RC, and the like.
  • the correct answer data 124C and the other correct answer data 125C each indicate, for example, the state of the product RC as a feature included in the training data 122C.
  • the condition of the product RC may be, for example, related to defects.
  • the state of the product RC may be expressed by whether or not the product RC contains defects, the types of defects contained in the product RC, the range of defects contained in the product RC, or a combination thereof.
  • the defect may be, for example, scratches, stains, cracks, dents, burrs, color unevenness, foreign matter contamination, and the like.
  • the learning device 1 uses a plurality of learning data sets 121C each composed of a combination of such training data 122C, metadata 123C, correct answer data 124C, and other correct answer data 125C.
  • Machine learning of the learning model 5C is performed in the same manner as in the form.
  • the learning model 5C may be configured in the same manner as the learning model 5 according to the above embodiment. That is, the learning model 5C includes a first encoder 51C, a second encoder 52C, a first meta-discriminator 53C, a second meta-discriminator 54C, an estimator 55C, a decoder 56C, and another estimator 57C. There is.
  • Each device 51C to 57C corresponds to each device 51 to 57 according to the above embodiment.
  • the configuration of each device 51C to 57C may be the same as that of each device 51 to 57 according to the above embodiment.
  • the second encoder 52C is trained to convert the training data 122C into a second feature quantity including a component corresponding to the attribute related to the acquisition of the training data 122C indicated by the metadata 123C.
  • the first encoder 51C converts the training data 122C into a first feature quantity including information other than the attributes related to the acquisition of the training data 122C, for example, a component corresponding to the information commonly appearing in the domain for acquiring the training data 122C.
  • the portion of the learning model 5C that includes the estimator 55C or another estimator 57C acquires the ability to estimate the state of the product RC in the image data obtained by the camera SC. Further, the portion of the learning model 5C including the decoder 56C acquires the ability to generate decoded data of the same type as the image data obtained by the camera SC.
  • step S103 the learning device 1 generates information about the learned learning model 5C as the learning result data 128C, and stores the generated learning result data 128C in a predetermined storage area.
  • the generated learning result data 128C may be provided to the inspection device 2C and the data generation device 3 at an arbitrary timing.
  • the data generation device 3 executes information processing related to data generation by the same processing procedure as in the above embodiment, except that the data to be handled is different. That is, the data generation device 3 executes the processes of steps S701 to S704. As a result, the data generation device 3 can generate the decoded data from the target image data by using the learned first encoder 51C and the decoder 56C. The decoded data corresponds to the data obtained by excluding the information corresponding to the attribute related to the acquisition of the target image data from the target image data. Further, the data generation device 3 uses the learned first encoder 51C, second encoder 52C, and decoder 56C to change the acquisition attribute by the amount of noise (decrypted data). May be generated. Further, the data generation device 3 may generate data of at least one of the first feature amount and the second feature amount by using at least one of the trained first coder 51C and second coder 52C. ..
  • the inspection device 2C corresponds to the estimation device 2.
  • the inspection device 2C may be configured in the same manner as the estimation device 2 except that the data to be handled is different.
  • the inspection device 2C is connected to the camera SC.
  • the inspection device 2C acquires the target image data from the camera SC.
  • the inspection device 2C uses the learned learning model 5C constructed by the learning device 1 to estimate the state of the product RC based on the acquired target image data, thereby performing an appearance inspection of the product RC. carry out.
  • FIG. 18A schematically illustrates an example of the hardware configuration of the inspection device 2C according to this modification.
  • the inspection device 2C according to this modification is 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, similarly to the estimation device 2.
  • 27 is an electrically connected computer.
  • the inspection device 2C is connected to the camera SC via the external interface 27.
  • the camera SC may be appropriately arranged at a place where the product RC can be photographed.
  • the camera SC may be placed in the vicinity of the conveyor device that conveys the product RC.
  • the hardware configuration of the inspection device 2C does not have to be limited to such an example.
  • the inspection device 2C 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 exclusively for the provided service.
  • the storage unit 22 of the inspection device 2C stores various information such as the inspection program 82C and the learning result data 128C.
  • the inspection program 82C and the learning result data 128C correspond to the estimation program 82 and the learning result data 128 according to the above embodiment.
  • At least one of the test program 82C and the learning result data 128C may be stored in the storage medium 92. Further, the inspection device 2C may acquire at least one of the inspection program 82C and the learning result data 128C from the storage medium 92.
  • FIG. 18B schematically illustrates an example of the software configuration of the inspection device 2C according to this modification. Similar to the above embodiment, the software configuration of the inspection device 2C is realized by executing the inspection program 82C by the control unit 21. As shown in FIG. 18B, the software configuration of the inspection device 2C is the same as the software configuration of the estimation device 2 except that the image data of the product RC obtained by the camera SC is handled. As a result, the inspection device 2C executes a series of processes related to the inspection process in the same manner as the estimation process of the estimation device 2.
  • step S501 the control unit 21 operates as the data acquisition unit 211 and acquires the target image data 221C in which the product RC is captured from the camera SC.
  • step S502 the control unit 21 operates as the evaluation unit 212 and identifies the attributes related to the acquisition of the target image data 221C by using the second encoder 52C and the second meta-identifier 54C trained by the learning device 1. To do. Specifically, the control unit 21 refers to the learning result data 128C and sets the learned second encoder 52C and the second meta-identifier 54C.
  • control unit 21 inputs the acquired target image data 221C to the second encoder 52C, and executes arithmetic processing of the second encoder 52C and the second meta-identifier 54C. By this arithmetic processing, the control unit 21 acquires the output value corresponding to the result of identifying the attribute related to the acquisition of the target image data 221C from the second meta-identifier 54C.
  • step S503 the control unit 21 operates as the evaluation unit 212, and whether or not to adopt the estimation result by the estimator 55C or another estimator 57C based on the result of identifying the attribute related to the acquisition of the target image data 221C. Is determined.
  • step S504 the control unit 21 determines the branch destination of the process based on the determination result of step S503.
  • step S502 When the result of the identification in step S502 matches the correct answer value of the attribute related to the acquisition of the target image data 221C, the control unit 21 determines that the result of estimation by the estimator 55C or another estimator 57C is adopted, and next The process proceeds to step S505 of. On the other hand, if the identification result in step S502 does not match the correct answer value of the attribute related to the acquisition of the target image data 221C, the control unit 21 determines that the estimation result by the estimator 55C or another estimator 57C is not adopted. Then, the processes of steps S505 and S506 are omitted, and a series of processes related to this modification is completed.
  • step S505 the control unit 21 operates as the inspection unit 213C and is captured in the target image data 221C by using the first encoder 51C, the second encoder 52C, and the estimator 55C trained by the learning device 1. Estimate the state of product RC. Alternatively, the control unit 21 estimates the state of the product RC reflected in the target image data 221C by using the first encoder 51C and another estimator 57C trained by the learning device 1.
  • control unit 21 refers to the learning result data 128C and further sets the learned first encoder 51C and the estimator 55C.
  • the control unit 21 inputs the target image data 221C to each encoder (51C, 52C), and executes arithmetic processing of the first encoder 51C, the second encoder 52C, and the estimator 55C.
  • the control unit 21 acquires an output value corresponding to the result of estimating the state of the product RC reflected in the target image data 221C from the estimator 55C.
  • control unit 21 refers to the learning result data 128C and sets the learned first encoder 51C and other estimator 57C.
  • the control unit 21 inputs the target image data 221C to the first encoder 51C, and executes arithmetic processing of the first encoder 51C and the other estimator 57C. As a result, the control unit 21 acquires an output value corresponding to the result of estimating the state of the product RC reflected in the target image data 221C from the other estimator 57C.
  • the control unit 21 operates as the output unit 214 and outputs information regarding the result of estimating the state of the product 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 output the result of estimating the state of the product RC to the output device 25 as it is.
  • the control unit 21 may output a warning to the output device 25 to notify the defect when the product RC contains a defect.
  • the inspection device 2C is connected to a conveyor device (not shown) that conveys the product RC, the product RC without defects and the product RC with defects are selected based on the result of estimating the state of the product RC.
  • the conveyor device may be controlled to be conveyed on another line.
  • a learned learning model 5C is constructed in which the introduction cost is relatively low and the learning model 5C is robust to the difference in attributes related to the acquisition of sensing data in the scene of estimating the state of the product reflected in the image data. be able to.
  • domain-specific information such as the surface material of the product RC, the pattern of the conveyor background, and the lighting conditions, which can change the state in which the defect is reflected, is estimated accurately. May have an adverse effect on.
  • defects that occur in product RC may depend on the type of product RC. Therefore, in the scene of estimating the type of defect existing in the product RC, domain-specific information such as the type of product RC may be useful for estimating the type of defect.
  • the metadata 123C may be set to indicate, for example, the type of product RC, the material of product RC, the appearance of product RC, the orientation of product RC, the lighting conditions, and the background conditions.
  • the correct answer data 124C may be set to indicate, for example, the type of defect.
  • the other correct answer data 125C may be set to indicate, for example, the presence or absence of a defect.
  • the first feature amount will include a component corresponding to the appearance of the defect as information common to the domain.
  • the second feature amount is domain-specific information such as background conditions (for example, conveyor handle), appearance of product RC, correspondence between appearance and type of defects, and predetermined defects for each type of product RC. Will include components corresponding to the probability of occurrence of.
  • the inspection device 2C by using the learned first encoder 51C and other estimator 57C, the information specific to the domain is excluded, and the defect is found based on the information common to the domain. Can perform the task of estimating the presence or absence. Therefore, it is possible to estimate whether or not there is a defect in the product RC with relatively high accuracy. Further, in the inspection device 2C, by using the learned first coder 51C, second coder 52C, and estimator 55C, the type of defect can be determined based on the information peculiar to the above domain and the common information. Can perform the task of estimating. Therefore, when a defect exists in the product RC, the type of the defect can be estimated with relatively high accuracy.
  • FIG. 19 schematically illustrates an example of an application scene of the system according to the fourth modification.
  • This modification is an example in which the above embodiment is applied to a scene in which the attributes of a person appearing in image data are estimated.
  • the system according to the present embodiment includes a learning device 1, a monitoring device 2D, and a data generation device 3. Similar to the above embodiment, the learning device 1, the monitoring device 2D, and the data generating device 3 may be connected to each other via a network.
  • the system according to this modification may be configured in the same manner as in the above embodiment except that the data to be handled is different.
  • the learning device 1 executes machine learning information processing according to the same processing procedure as that of the above embodiment, except that the data to be handled is different. That is, in step S101, the learning device 1 acquires a plurality of learning data sets 121D for learning the task of estimating the attributes of a person.
  • Each training data set 121D like the training data set 121, is composed of a combination of training data 122D, metadata 123D, correct answer data 124D, and other correct answer data 125D.
  • the training data 122D, the metadata 123D, the correct answer data 124D, and the other correct answer data 125D correspond to the training data 122, the metadata 123, the correct answer data 124, and the other correct answer data 125, respectively, according to the above embodiment.
  • the training data 122D is, for example, image data showing a person such as a subject.
  • the training data 122D may be obtained by photographing a subject with a camera SD or a camera of the same type (hereinafter, including the same type of camera and referred to as a camera SD).
  • the camera SD may be, for example, a general RGB camera, a depth camera, an infrared camera, or the like.
  • the metadata 123D has, for example, an attribute related to the operation setting of the camera SD, an attribute related to the installation status of the camera SD, an attribute related to the time when the training data 122D was acquired, an attribute related to the installation location of the camera SD, or an attribute related to the acquisition of the training data 122D. A combination of these is shown.
  • the attributes related to the operation settings of the camera SD may include, for example, the setting values of the measurement range, the resolution, and the setting values of the sampling frequency.
  • Attributes related to the installation status of the camera SD may include, for example, the installation angle of the camera SD.
  • the attributes related to time may include, for example, the type of time zone, the type of day of the week, the type of weekdays and holidays, the type of month, the type of season, and the like.
  • the correct answer data 124D and the other correct answer data 125D each indicate, for example, a range in which a person appears (bounding box), a person's identification information, a person's state, or a combination thereof, as features included in the training data 122D.
  • the person identification information may include, for example, a person's identifier, name, gender, age, physique, race, and the like.
  • the state of the person may include, for example, the behavior of the person, the posture of the person, and the like.
  • the learning device 1 uses a plurality of learning data sets 121D each composed of a combination of such training data 122D, metadata 123D, correct answer data 124D, and other correct answer data 125D.
  • Machine learning of the learning model 5D is performed in the same manner as in the form.
  • the learning model 5D may be configured in the same manner as the learning model 5 according to the above embodiment. That is, the learning model 5D includes a first encoder 51D, a second encoder 52D, a first meta-discriminator 53D, a second meta-identifier 54D, an estimator 55D, a decoder 56D, and another estimator 57D. There is.
  • Each device 51D to 57D corresponds to each device 51 to 57 according to the above embodiment.
  • the configuration of each device 51D to 57D may be the same as that of each device 51 to 57 according to the above embodiment.
  • the second encoder 52D is trained to convert the training data 122D into a second feature quantity including a component corresponding to the attribute related to the acquisition of the training data 122D indicated by the metadata 123D.
  • the first encoder 51D converts the training data 122D into a first feature quantity including information other than the attributes related to the acquisition of the training data 122D, for example, a component corresponding to the information commonly appearing in the domain for acquiring the training data 122D.
  • the portion of the learning model 5D that includes the estimator 55D or another estimator 57D acquires the ability to estimate the attributes of a person from the image data obtained by the camera SD. Further, the portion of the learning model 5D including the decoder 56D acquires the ability to generate the same type of decoded data as the image data obtained by the camera SD.
  • step S103 the learning device 1 generates information about the learned learning model 5D as learning result data 128D, and stores the generated learning result data 128D in a predetermined storage area.
  • the generated learning result data 128D may be provided to the monitoring device 2D and the data generation device 3 at an arbitrary timing.
  • the data generation device 3 executes information processing related to data generation by the same processing procedure as in the above embodiment, except that the data to be handled is different. That is, the data generation device 3 executes the processes of steps S701 to S704. As a result, the data generation device 3 can generate the decoded data from the target image data by using the learned first encoder 51D and the decoder 56D.
  • the decoded data corresponds to the data obtained by excluding the information corresponding to the attribute related to the acquisition of the target image data from the target image data.
  • the data generation device 3 uses the learned first encoder 51D, second encoder 52D, and decoder 56D to change the acquisition attribute by the amount of noise (decrypted data). May be generated. Further, the data generation device 3 may generate data of at least one of the first feature amount and the second feature amount by using at least one of the trained first coder 51D and the second coder 52D. ..
  • the monitoring device 2D corresponds to the estimation device 2.
  • the monitoring device 2D may be configured in the same manner as the estimation device 2 except that the data to be handled is different.
  • the monitoring device 2D is connected to the camera SD via a network.
  • the monitoring device 2D acquires the target image data from the camera SD.
  • the monitoring device 2D estimates the attributes of the person appearing in the acquired target image data by using the learned learning model 5D constructed by the learning device 1.
  • FIG. 20A schematically illustrates an example of the hardware configuration of the monitoring device 2D according to this modification.
  • the monitoring device 2D according to this modification is 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, similarly to the estimation device 2.
  • 27 is an electrically connected computer.
  • the monitoring device 2D is connected to the camera SD via the communication interface 23.
  • the camera SD may be arranged as appropriate. As an example, the camera SD may be installed on the platform of a station, on the street, in a store, or the like.
  • the hardware configuration of the monitoring device 2D does not have to be limited to such an example.
  • the monitoring device 2D 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 the monitoring device 2D stores various information such as the monitoring program 82D and the learning result data 128D.
  • the monitoring program 82D and the learning result data 128D correspond to the estimation program 82 and the learning result data 128 according to the above embodiment.
  • At least one of the monitoring program 82D and the learning result data 128D may be stored in the storage medium 92. Further, the monitoring device 2D may acquire at least one of the monitoring program 82D and the learning result data 128D from the storage medium 92.
  • FIG. 20B schematically illustrates an example of the software configuration of the monitoring device 2D according to this modification. Similar to the above embodiment, the software configuration of the monitoring device 2D is realized by executing the monitoring program 82D by the control unit 21. As shown in FIG. 20B, the software configuration of the monitoring device 2D is the same as that of the estimation device 2 except that the image data of the person captured by the camera SD is handled. As a result, the monitoring device 2D executes a series of processes related to the monitoring process in the same manner as the estimation process of the estimation device 2.
  • step S501 the control unit 21 operates as the data acquisition unit 211 and acquires the target image data 221D in which a person can be captured from the camera SD.
  • step S502 the control unit 21 operates as the evaluation unit 212 and identifies the attributes related to the acquisition of the target image data 221D by using the second encoder 52D and the second meta-identifier 54D trained by the learning device 1. To do. Specifically, the control unit 21 refers to the learning result data 128D and sets the learned second encoder 52D and the second meta-identifier 54D.
  • control unit 21 inputs the acquired target image data 221D to the second encoder 52D, and executes arithmetic processing of the second encoder 52D and the second meta-identifier 54D. By this arithmetic processing, the control unit 21 acquires the output value corresponding to the result of identifying the attribute related to the acquisition of the target image data 221D from the second meta-identifier 54D.
  • step S503 the control unit 21 operates as the evaluation unit 212 and adopts the result of estimation by the estimator 55D or another estimator 57D based on the result of identifying the attribute related to the acquisition of the target image data 221D. Is determined.
  • step S504 the control unit 21 determines the branch destination of the process based on the determination result of step S503.
  • step S502 When the result of the identification in step S502 matches the correct answer value of the attribute related to the acquisition of the target image data 221D, the control unit 21 determines that the result of estimation by the estimator 55D or another estimator 57D is adopted, and next The process proceeds to step S505 of. On the other hand, if the identification result in step S502 does not match the correct answer value of the attribute related to the acquisition of the target image data 221D, the control unit 21 determines that the estimation result by the estimator 55D or another estimator 57D is not adopted. Then, the processes of steps S505 and S506 are omitted, and a series of processes related to this modification is completed.
  • step S505 the control unit 21 operates as the monitoring unit 213D and is captured in the target image data 221D by using the first coder 51D, the second coder 52D, and the estimator 55D trained by the learning device 1. Estimate the attributes of a person. Alternatively, the control unit 21 estimates the attributes of the person appearing in the target image data 221D by using the first encoder 51D and another estimator 57D trained by the learning device 1.
  • control unit 21 refers to the learning result data 128D and further sets the learned first encoder 51D and the estimator 55D.
  • the control unit 21 inputs the target image data 221D to each encoder (51D, 52D), and executes arithmetic processing of the first encoder 51D, the second encoder 52D, and the estimator 55D.
  • the control unit 21 acquires an output value corresponding to the result of estimating the attribute of the person reflected in the target image data 221D from the estimator 55D.
  • control unit 21 refers to the learning result data 128D and sets the learned first encoder 51D and the other estimator 57D.
  • the control unit 21 inputs the target image data 221D to the first encoder 51D, and executes arithmetic processing of the first encoder 51D and the other estimator 57D. As a result, the control unit 21 acquires an output value corresponding to the result of estimating the attribute of the person reflected in the target image data 221D from the other estimator 57D.
  • the control unit 21 operates as the output unit 214 and outputs information regarding the result of estimating the attributes of the person.
  • the control unit 21 may output the result of estimating the attribute of the person to the output device 25 as it is.
  • the control unit 21 may output the target image data 221D and indicate the range in which the person is captured on the output target image data 221D. Good.
  • the control unit 21 determines the type of the estimated event. A message such as a warning may be output according to the above.
  • a learned learning model 5D that has a relatively low introduction cost and is robust to differences in attributes related to the acquisition of sensing data is constructed in a scene of estimating the attributes of a person appearing in image data. be able to.
  • domain-specific information such as the resolution of the camera SD, the shooting time zone, and the shooting season, which can change the state of the person's image, adversely affects the estimation accuracy.
  • the state of a person such as behavior and posture may depend on the place where the person exists. Therefore, in the scene of estimating the state of a person, domain-specific information such as the installation location of the camera SD may be useful for estimating the state of the person.
  • the metadata 123D may be set to indicate, for example, the installation location of the camera SD, the resolution of the camera SD, the shooting time zone, and the shooting season.
  • the correct answer data 124D may be set to indicate, for example, the state of a person.
  • the other correct answer data 125D may be set to indicate, for example, a range in which a person appears.
  • the first feature amount is made to include a component corresponding to the appearance of the biased person (for example, the appearance of an average person) as information common to the domains. become.
  • the second feature amount is information specific to the domain, such as the location of the camera SD, the resolution of the camera SD, the shooting time zone, how the person is photographed depending on the shooting season, and the occurrence of the posture of the person at each point. It will contain the component corresponding to the probability.
  • the monitoring device 2D by using the trained first encoder 51D and the other estimator 57D, the information specific to the domain is excluded, and the information of the person is based on the information common to the domain. You can perform the task of estimating the range to be captured. Therefore, it is possible to estimate the range in which a person appears in the target image data 221D with relatively high accuracy. Further, in the monitoring device 2D, by using the learned first coder 51D, second coder 52D, and estimator 55D, the person's information is based on both the domain-specific information and the common information. Can perform the task of estimating the state. Therefore, it is possible to estimate the state of a person such as behavior and posture with relatively high accuracy.
  • FIG. 21 schematically illustrates an example of an application scene of the system according to the fifth modification.
  • This modification is an example in which the above embodiment is applied to a situation where the situation outside the vehicle is estimated from the sensing data obtained by the in-vehicle sensor.
  • the system according to the present embodiment includes a learning device 1, a monitoring device 2E, and a data generating device 3. Similar to the above embodiment, the learning device 1, the monitoring device 2E, and the data generating device 3 may be connected to each other via a network.
  • the system according to this modification may be configured in the same manner as in the above embodiment except that the data to be handled is different.
  • the learning device 1 executes machine learning information processing according to the same processing procedure as that of the above embodiment, except that the data to be handled is different. That is, in step S101, the learning device 1 acquires a plurality of learning data sets 121E for learning the task of estimating the situation outside the vehicle. Like each learning data set 121E and the above learning data set 121, it is composed of a combination of training data 122E, metadata 123E, correct answer data 124E, and other correct answer data 125E.
  • the training data 122E, the metadata 123E, the correct answer data 124E, and the other correct answer data 125E correspond to the training data 122, the metadata 123, the correct answer data 124, and the other correct answer data 125, respectively, according to the above embodiment.
  • the training data 122E is, for example, sensing data obtained by an in-vehicle sensor.
  • the training data 122E may be obtained by photographing the situation around the outside of the vehicle with an in-vehicle sensor SE or a sensor of the same type thereof (hereinafter, including the same type of sensor and referred to as an in-vehicle sensor SE).
  • the in-vehicle sensor SE may be, for example, a camera, a lidar sensor, a millimeter wave radar, an ultrasonic sensor, or the like.
  • the camera may be, for example, a general RGB camera, a depth camera, an infrared camera, or the like.
  • the training data 122E may be composed of, for example, image data, measurement data of various sensors, and the like.
  • the metadata 123E indicates, for example, a vehicle attribute, an attribute related to the observation environment of the in-vehicle sensor SE, or a combination thereof as attributes related to the acquisition of training data 122E.
  • Vehicle attributes may include, for example, vehicle type, vehicle identification number, vehicle specifications, and the like.
  • Attributes related to the observation environment may include, for example, location, weather, temperature, humidity, illuminance, and the like. Further, the attributes related to the observation environment may include information on the landscape such as whether or not it is an urban area, whether or not it is a country road, and the type of road.
  • the correct answer data 124E and the other correct answer data 125E each have features included in the training data 122E, such as information on the external environment of the vehicle, the risk of an accident, an operation command for the vehicle according to the situation outside the vehicle, or a combination thereof.
  • the information on the external environment of the vehicle may include, for example, information on the road on which the vehicle travels, information on an object existing in the traveling direction of the vehicle, and the like.
  • the information on the road on which the vehicle travels may include, for example, information indicating the type of the traveling lane, the type of the road, and the like.
  • the object existing in the traveling direction of the vehicle may be, for example, a road, a traffic light, an obstacle (person, an object) or the like.
  • Information about objects existing in the traveling direction of the vehicle is, for example, road surface condition, traffic light lighting condition, presence / absence of obstacle, type of obstacle, size of obstacle, size of obstacle, speed of obstacle, It may include event information of obstacles and the like.
  • the event information of the obstacle may indicate, for example, a person or a vehicle jumping out, a sudden start, a sudden stop, a lane change, or the like. This event information may be represented by other information such as the presence or absence of obstacles and the speed of obstacles.
  • the risk of an accident may be indicated, for example, by the type of accident and the probability of occurrence of the accident.
  • the operation command for the vehicle according to the situation outside the vehicle may be defined by, for example, the accelerator amount, the brake amount, the steering angle of the steering wheel, the lighting of the light, the use of the horn, and the like.
  • the correct answer data 124E or other correct answer data 125E indicates an operation command for the vehicle according to the situation outside the vehicle
  • estimating the situation outside the vehicle determines the operation command for the vehicle according to the situation outside the vehicle. Including to do.
  • the learning device 1 uses a plurality of learning data sets 121E each composed of a combination of such training data 122E, metadata 123E, correct answer data 124E, and other correct answer data 125E, and carries out the above implementation.
  • Machine learning of the learning model 5E is performed in the same manner as in the form.
  • the learning model 5E may be configured in the same manner as the learning model 5 according to the above embodiment. That is, the learning model 5E includes a first encoder 51E, a second encoder 52E, a first meta-discriminator 53E, a second meta-identifier 54E, an estimator 55E, a decoder 56E, and another estimator 57E. There is.
  • Each device 51E to 57E corresponds to each device 51 to 57 according to the above embodiment.
  • the configuration of each device 51E to 57E may be the same as that of each device 51 to 57 according to the above embodiment.
  • the second encoder 52E is trained to convert the training data 122E into a second feature quantity including a component corresponding to the attribute related to the acquisition of the training data 122E indicated by the metadata 123E.
  • the first encoder 51E converts the training data 122E into a first feature quantity including information other than the attributes related to the acquisition of the training data 122E, for example, a component corresponding to the information commonly appearing in the domain for acquiring the training data 122E.
  • the portion of the learning model 5E that includes the estimator 55E or another estimator 57E acquires the ability to estimate the situation outside the vehicle from the sensing data obtained by the vehicle-mounted sensor SE. Further, the portion of the learning model 5E including the decoder 56E acquires the ability to generate the same type of decoded data as the sensing data obtained by the in-vehicle sensor SE.
  • step S103 the learning device 1 generates information about the learned learning model 5E as the learning result data 128E, and stores the generated learning result data 128E in a predetermined storage area.
  • the generated learning result data 128E may be provided to the monitoring device 2E and the data generation device 3 at an arbitrary timing.
  • the data generation device 3 executes information processing related to data generation by the same processing procedure as in the above embodiment, except that the data to be handled is different. That is, the data generation device 3 executes the processes of steps S701 to S704. As a result, the data generation device 3 can generate the decoded data from the target sensing data by using the learned first encoder 51E and the decoder 56E.
  • the decoded data corresponds to the data obtained by excluding the information corresponding to the attribute related to the acquisition of the target sensing data from the target sensing data.
  • the data generation device 3 uses the learned first encoder 51E, second encoder 52E, and decoder 56E to change the acquisition attribute by the amount of noise (decrypted data). May be generated. Further, the data generation device 3 may generate data of at least one of the first feature amount and the second feature amount by using at least one of the trained first coder 51E and the second coder 52E. ..
  • the monitoring device 2E corresponds to the estimation device 2.
  • the monitoring device 2E may be configured in the same manner as the estimation device 2 except that the data to be handled is different.
  • the monitoring device 2E is connected to the vehicle-mounted sensor SE.
  • the monitoring device 2E acquires the target sensing data from the in-vehicle sensor SE. Then, the monitoring device 2E estimates the situation outside the vehicle from the acquired target sensing data by using the learned learning model 5E constructed by the learning device 1.
  • FIG. 22A schematically illustrates an example of the hardware configuration of the monitoring device 2E according to the present modification.
  • the monitoring device 2E according to this modification is 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, similarly to the estimation device 2.
  • 27 is an electrically connected computer.
  • the monitoring device 2E is connected to the vehicle-mounted sensor SE via the external interface 27.
  • the in-vehicle sensor SE may be appropriately arranged according to the embodiment as long as it can monitor the situation outside the vehicle.
  • the hardware configuration of the monitoring device 2E does not have to be limited to such an example.
  • the monitoring device 2E may be a general-purpose computer, a mobile phone including a smartphone, an in-vehicle device, or the like, in addition to an information processing device designed exclusively for the provided service.
  • the storage unit 22 of the monitoring device 2E stores various information such as the monitoring program 82E and the learning result data 128E.
  • the monitoring program 82E and the learning result data 128E correspond to the estimation program 82 and the learning result data 128 according to the above embodiment.
  • At least one of the monitoring program 82E and the learning result data 128E may be stored in the storage medium 92. Further, the monitoring device 2E may acquire at least one of the monitoring program 82E and the learning result data 128E from the storage medium 92.
  • FIG. 22B schematically illustrates an example of the software configuration of the monitoring device 2E according to this modification. Similar to the above embodiment, the software configuration of the monitoring device 2E is realized by executing the monitoring program 82E by the control unit 21. As shown in FIG. 22B, the software configuration of the monitoring device 2E is the same as the software configuration of the estimation device 2 except that the sensing data obtained by the in-vehicle sensor SE is handled. As a result, the monitoring device 2E executes a series of processes related to the monitoring process in the same manner as the estimation process of the estimation device 2.
  • step S501 the control unit 21 operates as the data acquisition unit 211 and acquires the target sensing data 221E reflecting the situation outside the vehicle from the vehicle-mounted sensor SE.
  • step S502 the control unit 21 operates as the evaluation unit 212 and identifies the attributes related to the acquisition of the target sensing data 221E by using the second encoder 52E and the second meta-identifier 54E trained by the learning device 1. To do. Specifically, the control unit 21 refers to the learning result data 128E and sets the learned second encoder 52E and the second meta-identifier 54E.
  • control unit 21 inputs the acquired target sensing data 221E to the second encoder 52E, and executes arithmetic processing of the second encoder 52E and the second meta-identifier 54E.
  • control unit 21 acquires the output value corresponding to the result of identifying the attribute related to the acquisition of the target sensing data 221E from the second meta-identifier 54E.
  • step S503 whether or not the control unit 21 operates as the evaluation unit 212 and adopts the result of estimation by the estimator 55E or another estimator 57E based on the result of identifying the attribute related to the acquisition of the target sensing data 221E. Is determined.
  • step S504 the control unit 21 determines the branch destination of the process based on the determination result of step S503.
  • step S502 When the result of the identification in step S502 matches the correct answer value of the attribute related to the acquisition of the target sensing data 221E, the control unit 21 determines that the result of estimation by the estimator 55E or another estimator 57E is adopted, and next The process proceeds to step S505 of. On the other hand, if the identification result in step S502 does not match the correct answer value of the attribute related to the acquisition of the target sensing data 221E, the control unit 21 determines that the estimation result by the estimator 55E or another estimator 57E is not adopted. Then, the processes of steps S505 and S506 are omitted, and a series of processes related to this modification is completed.
  • step S505 the control unit 21 operates as the monitoring unit 213E, and uses the first coder 51E, the second coder 52E, and the estimator 55E trained by the learning device 1 from the target sensing data 221E to the vehicle. Estimate the external situation. Alternatively, the control unit 21 estimates the situation outside the vehicle from the target sensing data 221E by using the first encoder 51E and another estimator 57E trained by the learning device 1.
  • control unit 21 refers to the learning result data 128E and further sets the learned first encoder 51E and the estimator 55E.
  • the control unit 21 inputs the target sensing data 221E to each encoder (51E, 52E), and executes arithmetic processing of the first encoder 51E, the second encoder 52E, and the estimator 55E.
  • the control unit 21 acquires an output value corresponding to the result of estimating the situation outside the vehicle from the target sensing data 221E from the estimator 55E.
  • control unit 21 refers to the learning result data 128E and sets the learned first encoder 51E and the other estimator 57E.
  • the control unit 21 inputs the target sensing data 221E to the first encoder 51E, and executes arithmetic processing of the first encoder 51E and the other estimator 57E. As a result, the control unit 21 acquires an output value corresponding to the result of estimating the situation outside the vehicle from the target sensing data 221E from the other estimator 57E.
  • step S506 the control unit 21 operates as the output unit 214 and outputs information regarding the result of estimating the situation outside the vehicle.
  • the control unit 21 may output the result of estimating the situation outside the vehicle to the output device 25 as it is.
  • the control unit 21 may determine whether or not there is a possibility of danger in the traveling of the vehicle based on at least one of the estimated external environment of the vehicle and the risk of an accident. The case where it is determined that there is a possibility that the traveling of the vehicle may be dangerous may be appropriately set according to the embodiment.
  • the control unit 21 is dangerous for the vehicle to run. It may be determined that there is a possibility that The threshold value may be set as appropriate. When it is determined that the running of the vehicle may cause a danger, the control unit 21 may output a warning to notify the danger to the output device 25.
  • the control unit 21 estimates the situation outside the vehicle, and as a result, the situation outside the vehicle. Acquire the operation command for the vehicle according to.
  • the control unit 21 may directly control the operation of the vehicle based on the acquired operation command.
  • the control unit 21 may indirectly control the operation of the vehicle by giving the acquired operation command to the control device.
  • the method of controlling the operation of the vehicle based on the estimation result does not have to be limited to such an example.
  • the control unit 21 may determine the operation policy of the vehicle based on, for example, the external environment of the vehicle or the estimation result of the accident risk.
  • the correspondence between the estimation result and the operation policy of the vehicle may be given by data such as a data table.
  • This data may be stored in, for example, a RAM, a storage unit 22, a storage medium 92, an external storage device, or a combination thereof in the control unit 21.
  • the control unit 21 may determine the operation policy of the vehicle according to the result of estimating the external environment of the vehicle or the accident risk.
  • the operation policy of the vehicle may be defined by, for example, the accelerator amount, the brake amount, the steering angle of the steering wheel, the lighting of the light, the use of the horn, and the like. Then, the control unit 21 may directly or indirectly control the operation of the vehicle according to the determined operation policy.
  • a learned learning model 5E that has a relatively low introduction cost and is robust to differences in attributes related to acquisition of sensing data is constructed in a situation where the situation outside the vehicle is estimated from the sensing data. be able to.
  • the operation command for the vehicle and the risk of an accident may differ depending on the type of road on which the vehicle travels, the weather, and the like. Therefore, in the scene of estimating the operation command or the risk of an accident according to the situation outside the vehicle, domain-specific information such as attributes related to the observation environment may be useful for determining the operation command. On the other hand, in the scene of estimating the external environment of the vehicle, the difference in the background becomes a disturbance, which may adversely affect the accuracy of the estimation task.
  • the in-vehicle sensor SE may be, for example, a camera, a lidar sensor, a millimeter wave radar, or the like.
  • the training data 122E may be, for example, image data, measurement data, or the like.
  • the metadata 123E may be set to indicate, for example, the type of vehicle, the weather, the type of road, whether it is an urban area, and whether it is a country road.
  • the correct answer data 124E may be set to indicate an operation command or an accident risk for the vehicle according to the situation outside the vehicle.
  • the other correct answer data 125E may be set to indicate information about the external environment of the vehicle.
  • the first feature amount includes the components corresponding to the information about the road shape, the pedestrian, and other vehicles appearing in the training data 122E as the information common to the domain. become.
  • the second feature amount includes the component corresponding to the information on the road type, the weather, and the landscape appearing in the training data 122E as the domain-specific information.
  • the information specific to the domain is excluded, and the vehicle is based on the information common to the domain. Can perform the task of estimating the external environment. Therefore, the external environment of the vehicle can be estimated with relatively high accuracy. Further, by using the learned first encoder 51E, second encoder 52E, and estimator 55E in the monitoring device 2E, the outside of the vehicle is based on both the information peculiar to the above domain and the common information. It is possible to carry out a task of estimating the risk of an accident or an operation command for a vehicle according to the situation of.
  • FIG. 23 schematically illustrates an example of an application scene of the system according to the sixth modification.
  • This modification is an example in which the above embodiment is applied to a situation where a recommended article or service is estimated based on historical data of actions such as customer purchasing and web browsing.
  • the system according to the present embodiment includes a learning device 1, a recommended device 2F, and a data generation device 3. Similar to the above embodiment, the learning device 1, the recommended device 2F, and the data generating device 3 may be connected to each other via a network.
  • the system according to this modification may be configured in the same manner as in the above embodiment except that the data to be handled is different.
  • the learning device 1 executes machine learning information processing according to the same processing procedure as that of the above embodiment, except that the data to be handled is different. That is, in step S101, the learning device 1 acquires a plurality of learning data sets 121F for learning the task of recommending the product or service recommended to the customer. Like each learning data set 121F and the above learning data set 121, it is composed of a combination of training data 122F, metadata 123F, correct answer data 124F, and other correct answer data 125F.
  • the training data 122F, the metadata 123F, the correct answer data 124F, and the other correct answer data 125F correspond to the training data 122, the metadata 123, the correct answer data 124, and the other correct answer data 125, respectively, according to the above embodiment.
  • the training data 122F is, for example, customer history data. Historical data may include, for example, information indicating customer purchases, browsing of advertisements on the Web, searches, link trajectories, previously recommended products or services, and the like.
  • the history data may be accumulated by the customer operating a user terminal such as a PC or a mobile phone.
  • the storage location of the history data may be, for example, a customer's user terminal, a web server provided for browsing, or the like.
  • the training data 122F may further include data indicating the target product or service as a label. That is, in this modification, the learning model 5F may be a conditional learning model.
  • the training data 122F will be described as further including data indicating the target product or service as a label.
  • the configuration of the learning model 5F does not have to be limited to such an example.
  • the learning model 5F is prepared for each category of goods or services, and may be configured to output the hit rate for each category.
  • the training data 122F does not have to include the label.
  • Metadata 123F indicates, for example, the type of medium on which customer identification information and recommended information are posted, or a combination thereof, as attributes related to the acquisition of training data 122F.
  • the customer identification information may include, for example, the customer's identifier, gender, age, physique, race, and the like.
  • the medium on which the recommended information is posted may be, for example, a web page, an e-mail newsletter, digital signage, or the like.
  • the correct answer data 124F and the other correct answer data 125F each show a hit rate when the target product or service is recommended by a predetermined medium as a feature included in the training data 122F.
  • the hit rate may be calculated, for example, by the number of customers who purchased the target product or service with respect to the total number of customers who recommended the target product or service.
  • the hit rate may be given for each category of goods or services.
  • the learning device 1 uses a plurality of learning data sets 121F each composed of a combination of such training data 122F, metadata 123F, correct answer data 124F, and other correct answer data 125F.
  • Machine learning of the learning model 5F is performed in the same manner as in the form.
  • the learning model 5F may be configured in the same manner as the learning model 5 according to the above embodiment. That is, the learning model 5F includes a first encoder 51F, a second encoder 52F, a first meta-discriminator 53F, a second meta-identifier 54F, an estimator 55F, a decoder 56F, and another estimator 57F. There is.
  • Each device 51F to 57F corresponds to each device 51 to 57 according to the above embodiment.
  • the configuration of each device 51F to 57F may be the same as that of each device 51 to 57 according to the above embodiment.
  • the second encoder 52F is trained to convert the training data 122F into a second feature quantity including a component corresponding to the attribute related to the acquisition of the training data 122F indicated by the metadata 123F.
  • the first encoder 51F converts the training data 122F into a first feature quantity including information other than the attributes related to the acquisition of the training data 122F, for example, a component corresponding to the information commonly appearing in the domain for acquiring the training data 122F.
  • the portion of the learning model 5F that includes the estimator 55F or another estimator 57F acquires the ability to estimate the hit rate when recommending a product or service. Further, the portion of the learning model 5F including the decoder 56F acquires the ability to generate the same type of decrypted data as the customer's historical data.
  • step S103 the learning device 1 generates information about the learned learning model 5F as learning result data 128F, and stores the generated learning result data 128F in a predetermined storage area.
  • the generated learning result data 128F may be provided to the recommended device 2F and the data generation device 3 at an arbitrary timing.
  • the data generation device 3 executes information processing related to data generation by the same processing procedure as in the above embodiment, except that the data to be handled is different. That is, the data generation device 3 executes the processes of steps S701 to S704. As a result, the data generation device 3 can generate the decoded data from the target history data by using the learned first encoder 51F and the decoder 56F.
  • the decrypted data corresponds to the data obtained by excluding the information corresponding to the attribute related to the acquisition of the target history data from the target history data.
  • the data generation device 3 uses the learned first encoder 51F, second encoder 52F, and decoder 56F to change the acquisition attribute by the amount of noise (decrypted data). May be generated. Further, the data generation device 3 may generate data of at least one of the first feature amount and the second feature amount by using at least one of the learned first coder 51F and second coder 52F. ..
  • the recommended device 2F corresponds to the above estimation device 2.
  • the recommended device 2F may be configured in the same manner as the estimation device 2 except that the data to be handled is different.
  • the recommended device 2F appropriately acquires the target history data of the customer. Then, the recommended device 2F uses the learned learning model 5F constructed by the learning device 1 to estimate the hit rate when the target product or service is recommended from the acquired target history data.
  • FIG. 24A schematically illustrates an example of the hardware configuration of the recommended device 2F according to this modification.
  • the recommended device 2F according to this modification is 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, similarly to the estimation device 2. 27 is an electrically connected computer.
  • the hardware configuration of the recommended device 2F does not have to be limited to such an example.
  • the components can be omitted, replaced, and added as appropriate according to the embodiment.
  • the recommended device 2F may be a general-purpose server, 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 the recommended device 2F stores various information such as the recommended program 82F and the learning result data 128F.
  • the recommended program 82F and the learning result data 128F correspond to the estimation program 82 and the learning result data 128 according to the above embodiment.
  • At least one of the recommended program 82F and the learning result data 128F may be stored in the storage medium 92.
  • the recommended device 2F may acquire at least one of the recommended program 82F and the learning result data 128F from the storage medium 92.
  • FIG. 24B schematically illustrates an example of the software configuration of the recommended device 2F according to this modification. Similar to the above embodiment, the software configuration of the recommended device 2F is realized by executing the recommended program 82F by the control unit 21. As shown in FIG. 24B, the software configuration of the recommended device 2F is the same as the software configuration of the estimation device 2 except that the customer history data is handled. As a result, the recommended device 2F executes a series of processes related to the recommended process in the same manner as the estimation process of the estimation device 2.
  • the control unit 21 operates as the data acquisition unit 211 to acquire the customer's target history data 221F.
  • the method for acquiring the target history data 221F does not have to be particularly limited, and may be appropriately selected depending on the embodiment.
  • the control unit 21 may acquire the target history data 221F from the customer's user terminal.
  • the control unit 21 may acquire the target history data 221F from the server that provides the customer with the sale of the product or service.
  • the recommended device 2F is a server that provides the customer with the sale of goods or services
  • the target history data 221F may be accumulated when the customer accesses the product or service via the user terminal.
  • step S502 the control unit 21 operates as the evaluation unit 212 and identifies the attributes related to the acquisition of the target history data 221F by using the second encoder 52F and the second meta-identifier 54F trained by the learning device 1. To do. Specifically, the control unit 21 refers to the learning result data 128F and sets the learned second encoder 52F and the second meta-identifier 54F. Subsequently, the control unit 21 inputs the acquired target history data 221F to the second encoder 52F, and executes arithmetic processing of the second encoder 52F and the second meta-identifier 54F. By this arithmetic processing, the control unit 21 acquires the output value corresponding to the result of identifying the attribute related to the acquisition of the target history data 221F from the second meta classifier 54F.
  • step S503 the control unit 21 operates as the evaluation unit 212, and whether or not to adopt the estimation result by the estimator 55F or another estimator 57F based on the result of identifying the attribute related to the acquisition of the target history data 221F. Is determined.
  • step S504 the control unit 21 determines the branch destination of the process based on the determination result of step S503.
  • step S502 When the result of the identification in step S502 matches the correct answer value of the attribute related to the acquisition of the target history data 221F, the control unit 21 determines that the result of the estimation by the estimator 55F or another estimator 57F is adopted, and next The process proceeds to step S505 of. On the other hand, if the identification result in step S502 does not match the correct answer value of the attribute related to the acquisition of the target history data 221F, the control unit 21 determines that the estimation result by the estimator 55F or another estimator 57F is not adopted. Then, the processes of steps S505 and S506 are omitted, and a series of processes related to this modification is completed.
  • step S505 the control unit 21 operates as the estimation unit 213F, and uses the first coder 51F, the second coder 52F, and the estimator 55F trained by the learning device 1 to target from the target history data 221F. Estimate the hit rate when recommending a product or service. Alternatively, the control unit 21 estimates the hit rate when the target product or service is recommended from the target history data 221F by using the first encoder 51F and another estimator 57F trained by the learning device 1. To do.
  • control unit 21 refers to the learning result data 128F and further sets the learned first encoder 51F and the estimator 55F.
  • the control unit 21 inputs the target history data 221F and the label indicating the target product or service into each coder (51F, 52F), and performs arithmetic processing of the first coder 51F, the second coder 52F, and the estimator 55F. To execute.
  • the control unit 21 acquires an output value corresponding to the result of estimating the hit rate when the target product or service is recommended from the target history data 221F from the estimator 55F.
  • control unit 21 refers to the learning result data 128F and sets the learned first encoder 51F and other estimator 57F.
  • the control unit 21 inputs the target history data 221F and a label indicating the target product or service to the first encoder 51F, and executes arithmetic processing of the first encoder 51F and other estimators 57F.
  • the control unit 21 acquires an output value corresponding to the result of estimating the hit rate when the target product or service is recommended from the target history data 221F from the other estimator 57F.
  • the control unit 21 operates as the output unit 214 and outputs information regarding the result of estimating the hit rate when the target product or service is recommended. For example, the control unit 21 may output the result of estimating the hit rate when recommending the target product or service to the output device 25 as it is. Further, for example, the control unit 21 may determine whether or not the estimated hit rate is equal to or higher than the threshold value. Based on the result of the determination, the control unit 21 identifies the product or service whose hit rate is equal to or higher than the threshold value, and recommends the specified product or service to the customer via a web page or the like. The medium used for recommending the product or service may be appropriately selected according to the embodiment.
  • Learning model 5F can be constructed.
  • domain-specific information such as customer identification information may adversely affect the accuracy of the estimation task.
  • the willingness to purchase a product that is purchased once, such as an expensive product or service may have a high dependence on the customer's identification information. Therefore, domain-specific information may be useful in the estimation task when estimating the recommended hit rate for a single-shot product. That is, depending on the type of product or service, there may be cases where domain-specific information works usefully or has an adverse effect.
  • the metadata 123F may be set to indicate the customer's identification information.
  • the correct answer data 124F and the other correct answer data 125F may be set to show the recommended hit rate for the target product or service, respectively.
  • the first feature amount will include a component corresponding to the recommended hit tendency according to the purchase history of the customer as information common to the domain.
  • the second feature amount includes, as domain-specific information, a component corresponding to the recommended hit tendency according to the customer's identification information.
  • the trained first encoder 51F and the other estimator 57F can be used to make the recommendation.
  • the medium rate can be estimated with relatively high accuracy.
  • the target is based on both the information specific to the domain and the common information. It is possible to carry out the task of estimating the hit rate when recommending a product or service. Therefore, in the scene of recommending a product or service whose purchasing activity tends to depend on the customer's identification information such as a product or service purchased once, the learned first encoder 51F, second encoder 52F, and estimation By using the device 55F, the hit rate of the recommendation can be estimated with relatively high accuracy.
  • which of the above two estimation methods may be adopted may be set based on the operator's designation, set value, and the like.
  • each device 51 to 57 of the learning model 5 is configured by a neural network.
  • each of the instruments 51 to 57 is an arithmetic parameter used for arithmetic and has an arithmetic parameter adjusted by machine learning, that is, if it is a model (learning apparatus) capable of machine learning, in particular. It does not have to be limited.
  • the types of the vessels 51 to 57 may be appropriately selected according to the embodiment.
  • a support vector machine, a regression model, a decision tree model, or the like may be used in addition to the neural network.
  • the machine learning method of each device 51 to 57 may be appropriately selected according to the type of each learning device.
  • each device 51 to 57 is composed of a fully connected neural network having a three-layer structure.
  • the type of neural network constituting each device 51 to 57 does not have to be limited to such an example.
  • each device 51-57 may be configured by a convolutional neural network including a convolutional layer, a pooling layer, and a fully connected layer.
  • each device 51 to 57 may be configured by a recursive neural network.
  • the vital sensor acquires the vital measurement data of the target person and estimates the state of the target person from the acquired measurement data.
  • the time course of the acquired measurement data is useful for estimating the condition of the subject.
  • at least one of the components of the learning model is composed of a recursive neural network.
  • the learning model 5 includes the decoder 56 and other, in addition to the first encoder 51, the second encoder 52, the first meta-discriminator 53, the second meta-identifier 54, and the estimator 55B.
  • the estimator 57 is provided.
  • the configuration of the learning model 5 does not have to be limited to such an example.
  • At least one of the decoder 56 and the other estimator 57 may be omitted from the training model 5.
  • the process of step S203 may be omitted in the machine learning processing procedure.
  • the process of step S204 may be omitted in the machine learning processing procedure.
  • the first encoder 51 and the second encoder 52 are used so that the mutual information amount of the first feature amount and the second feature amount is reduced by the process of step S205. train.
  • the processing procedure of machine learning does not have to be limited to such an example.
  • the process of step S205 may be omitted.
  • the estimator 2 uses the second encoder 52 and the second meta-identifier 54 that have been learned by the processes of steps S502 to S504 to use the estimator 55 or another estimator 57. It is evaluated whether or not to adopt the result of the estimation processing by.
  • the processing procedure of the estimation device 2 does not have to be limited to such an example.
  • the processing of steps S502 to S504 may be omitted.
  • the evaluation unit 212 may be omitted from the software configuration of the estimation device 2. It should be noted that these changes may be similarly applied to the system according to the first to sixth modifications.
  • the training data (122, 192) and the target data (221, 321) are individual data such as image data, sound data, numerical data, text data, and other measurement data obtained by the sensor, respectively. It may be replaced with the type of data.
  • the image system can be configured by the learning device 1, the estimation device 2, and the data generation device 3.
  • the learning device 1 can construct a trained learning model 5 that has acquired the ability to estimate a predetermined feature from image data by machine learning using a plurality of learning data sets.
  • the estimation device 2 can estimate the features included in the target image data by using the trained learning model 5 including the estimator 55 or another estimator 57.
  • the data generation device 3 can generate new data from the target image data by using the learning model 5 including the trained decoder 56.
  • the third modification and the fourth modification are examples of the image system.
  • the sensor system can be configured by the learning device 1, the estimation device 2, and the data generation device 3. it can.
  • the learning device 1 can construct a trained learning model 5 that has acquired the ability to estimate a predetermined feature from the sensing data by machine learning using a plurality of learning data sets.
  • the estimation device 2 can estimate the features included in the target sensing data by using the trained learning model 5 including the estimator 55 or another estimator 57.
  • the data generation device 3 can generate new data from the target sensing data by using the learning model 5 including the trained decoder 56.
  • the first modification, the second modification, and the fifth modification are examples of the sensor system.
  • estimation unit 214 ... output unit, 221 ... Target data, 3 ... Data generator, 31 ... Control unit, 32 ... Storage unit, 33 ... Communication interface, 34 ... Input device, 35 ... Output device, 36 ... Drive, 37 ... External interface, 311 ... Data acquisition unit, 312 ... Generation unit, 313 ... Preservation processing unit, 321 ... Target data, 5 ... Learning model, 51 ... 1st encoder, 52 ... 2nd encoder, 53 ... 1st meta-discriminator, 54 ... 2nd meta-discriminator, 55 ... Estimator, 56 ... Decoder, 57 ... Other Estimators, S ... Sensor

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

導入コストが比較的に低廉で、かつデータの取得に関する属性の相違にロバストな学習済みのモデルを構築する。本発明の一側面に係る学習装置は、各学習データセットについて、第2メタ識別器による識別の結果がメタデータに適合するように第2符号器及び第2メタ識別器を訓練する第1訓練ステップ、推定器による推定の結果が正解データに適合するように各符号器及び推定器を訓練する第2訓練ステップ、第1メタ識別器による識別の結果がメタデータに適合するように第1メタ識別器を訓練する第3訓練ステップ、並びに、第1メタ識別器による識別の結果がメタデータに適合しないように第1符号器を訓練する第4訓練ステップを実行する。第3訓練ステップ及び第4訓練ステップは交互に繰り返し実行される。

Description

学習装置、推定装置、データ生成装置、学習方法、及び学習プログラム
 本発明は、学習装置、推定装置、データ生成装置、学習方法、及び学習プログラムに関する。
 道路に設置されたカメラ等の各種センサにより得られたデータを用いて、交通に関する様々な事象を推定するシステムの開発が行われている。例えば、特許文献1には、エリアの状況を示すエリア情報に基づいて、緊急車両、輸送手段、移動販売等に所定の対象に関する需要を予測する方法が提案されている。具体的には、エリア情報、及び当該エリア情報に対応する所定の対象に関する需要を示す正解データにより構成される学習データを使用して、回帰モデル、ニューラルネットワーク等の機械学習を実施する。この機械学習により構築された学習済みのモデルを利用して、エリアの状況を示すエリア情報から所定の対象に関する需要を予測する。
 機械学習により構築された学習済みのモデルによれば、与えられた訓練データと同種の未知のデータに対して、回帰、分類等の推定(予測を含む)タスクを実行することができる。ただし、学習済みのモデルによる推定の精度は、与えられた学習データ(詳細には、訓練データ)を取得した条件等の取得の属性に依存し得る。例えば、道路に設定されたセンサから得られるデータを訓練データとして用いて、当該道路の交通流を予測する場面を想定する。この場面において、データに現れる道路の交通流の特性は、様々な要因により相違し得る。
 要因の一例として、観測対象が相違すると、データに現れる交通流の特性は根本的に相違し得る。例えば、分岐点、合流点、直線道路、曲がり道等の道路の属性に起因して、交通流の特性は相違し得る。また、同じ地点を観測している(すなわち、観測対象が同じ)場合でも、データを取得する方法に起因して、得られるデータに現れる交通流の特性は相違し得る。例えば、道路近傍で側方から測定することで得られたデータと道路よりやや離れた上方の位置から測定することで得られたデータとでは、データに現れる交通流の状態は相違し得る。
 そのため、学習済みのモデルによる推定の精度は、訓練データを取得した条件等の取得の属性に依存し得る。例えば、分岐及び合流のない直線の道路を観測するセンサにより得られたデータからこの道路の交通流を予測するように訓練された学習済みのモデルを構築したと想定する。この場合、合流点を含む曲がり道の道路を観測するセンサにより得られたデータに対してこの学習済みのモデルを利用したとすると、この学習済みのモデルは誤った予測をする可能性が高い。同様に、道路から離れた上方の位置より当該道路を観測するセンサにより得られたデータから当該道路の交通流を予測するように訓練された学習済みのモデルを構築したと想定する。この場合、同じ道路を側方から観測する別のセンサにより得られたデータに対してこの学習済みのモデルを利用したとすると、この学習済みのモデルは誤った予測をする可能性が高い。つまり、訓練データの取得の属性と推定タスクの対象となる未知のデータの取得の属性とが異なれば、学習済みのモデルは適切に推定できなくなる可能性がある。
 これに対して、想定されるあらゆる要因を考慮して、学習済みのモデルを構築することが考えられる。例えば、複数の地点で得られたデータを1つのモデルの機械学習に使用することが考えられる。しかしながら、この場合には、その複数の地点を含むエリアでの交通流を予測するように訓練された学習済みのモデルを構築することは可能であるものの、当該モデルの構造が複雑になってしまい、学習済みのモデルを他のエリアに転用するのは困難である。更には、学習データが膨大になり、学習が収束しない可能性がある。
 そのため、あらゆる要因に対応する入力を受け付けるようにモデルの構造を複雑にするのではなく、訓練データにより得られた学習の成果を、取得の属性の異なる未知のデータに適用可能に何らかの方策を行うのが好ましい。この試みの一つとして、ドメイン適応が知られている。ドメイン適応とは、あるドメインで取得された学習データを利用して所定のタスクを遂行する能力を習得した学習済みのモデルを他のドメインで取得されたデータに適応させる手法である。非特許文献1には、このドメイン適応の手法の一つが提案されている。
 具体的には、非特許文献1では、まず、訓練データとなるソース画像データ及び当該ソース画像データに写る対象物を示す正解データ(ラベル)の組み合わせにより構成されたデータセットを用意する。また、これに対応するソース抽出器及び分類器を用意する。そして、事前学習として、用意されたデータセットにより、ソース抽出器及び分類器を訓練する。ソース抽出器は、入力された画像データから特徴量を抽出するように訓練される。分類器は、ソース画像データから抽出された特徴量に基づいて、当該ソース画像データに写る対象物を分類するように訓練される。
 次に、推定タスクの対象となる対象画像データを用意する。また、これに対応する対象抽出器と、ソース抽出器及び対象抽出器の出力を識別するための識別器とを用意する。そして、ソース抽出器によりソース画像データから抽出された特徴量と対象抽出器により対象画像データから抽出された特徴量とを識別するように識別器を訓練するのに対して、この識別器による識別が誤るように対象抽出器を敵対的に訓練する。この敵対的学習により、対象抽出器は、ソース抽出器と共通の特徴空間に対象画像データをマッピングする、すなわち、ソース抽出器と共通の特徴を抽出するように訓練される。その結果、ソース画像データで訓練された分類器を対象画像データにも適用することができるようになる。つまり、訓練された対象抽出器と分類器とを利用することで、ソース画像データと同じように、対象画像データに写る対象物を分類することができる。
特開2019-028489号公報
Eric Tzeng, et al. "Adversarral Discriminative Domain Adaptation" arXiv preprint arXiv:1702.05464, 2017.
 非特許文献1の方法によれば、推定タスクの対象となる未知のデータと訓練データとの間で取得の属性が相違する場合でも、学習済みのモデルは、当該未知のデータに対して推定タスクを適切に実行可能であることを期待することができる。しかしながら、本件発明者は、この非特許文献1による従来の方法には、次のような問題点があることを見出した。すなわち、この方法では、対象画像データを取得するドメイン毎に対象抽出器を生成することになるため、導入コストが高いという問題点がある。
 また、推定タスクによっては、データの取得に関する属性の相違を考慮したほうがよい可能性がある。例えば、道路を観測するセンサから得られたデータからその道路で渋滞の生じる可能性を予測する学習済みのモデルを構築する場面を想定する。このケースにおいて、一車線及び二車線の道路それぞれを観測する各センサから得られたデータが訓練データには含まれており、学習済みのモデルは、一車線よりも二車線の道路の方が渋滞の生じる可能性が低いとの知見を当該訓練データにより得ていると更に想定する。この場合、三車線の道路を観測するセンサから得られた未知のデータに対して、訓練データと取得に関する属性が相違するものの、学習済みのモデルは、比較的に高い精度でこの道路の渋滞予測を行うことができる可能性がある。
 これに対して、従来の方法では、対象抽出器の敵対的学習により、対象画像データを取得するドメインに特有の事象に関する情報は損失する。更には、対象画像データを取得するドメインとソース画像データを取得するドメインとで共通する事象に関する全ての情報が対象抽出器の学習に反映されるとは限らず、この共通する事象に関する一部の情報が損失する可能性がある。したがって、従来の方法では、このような情報の損失が生じることで、学習済みのモデルによる推定タスクの精度が低くなってしまう可能性があるという問題点がある。
 なお、このような問題点は、道路の状況を観測するセンサにより得られたデータから当該道路の状況を推定するための学習済みのモデルを構築する場面に特有のものではない。所定のデータに対して所定の推定タスクを行うための学習済みのモデルを構築するあらゆる場面でこの問題が生じ得る。所定の推定タスクを行うための学習済みのモデルを構築する場面とは、例えば、対象者の状態を観察するセンサにより得られたデータから当該対象者の状態を推定するための学習済みのモデルを構築する場面、カメラにより得られた画像データに写る人物の属性を推定するための学習済みのモデルを構築する場面、車載データにより得られるデータから車両に与える指令を推定するための学習済みのモデルを構築する場面、顧客情報からレコメンドの的中率を推定するための学習済みのモデルを構築する場面、画像データに写る製品の状態を推定するための学習済みのモデルを構築する場面等である。これらの場面で利用される所定のデータは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等である。これらの場面でも、従来の方法では、対象データを取得するドメイン毎に対象抽出器を生成することになるため、導入コストが高いという問題点がある。また、対象抽出器の学習において、情報の損失が生じることで、学習済みのモデルによる推定タスクの精度が低くなってしまう可能性があるという問題点がある。
 本発明は、一側面では、このような実情を鑑みてなされたものであり、その目的は、導入コストが比較的に低廉で、かつデータの取得に関する属性の相違にロバストな学習済みのモデルを構築するための技術を提供することである。
 本発明は、上述した課題を解決するために、以下の構成を採用する。
 すなわち、本発明の一側面に係る学習装置は、訓練データ、前記訓練データの取得に関する属性を示すメタデータ、及び前記訓練データに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するデータ取得部と、第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施する学習処理部であって、前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、を含み、前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、学習処理部と、を備える。
 当該構成に係る学習装置では、4つの訓練ステップにより、学習モデルの各部分の機械学習が行われる。第1訓練ステップでは、第2符号器及び第2メタ識別器が、各学習データセットについて、訓練データを第2符号器に与えることで第2メタ識別器から得られる識別の結果がメタデータに適合するように訓練される。この訓練の結果により、訓練データの取得に関する属性を第2メタ識別器が適切に識別可能となるように、第2符号器により得られる第2特徴量には、当該取得に関する属性に対応する成分が含まれるようになる。第2訓練ステップでは、第1符号器、第2符号器、及び推定器が、各学習データセットについて、訓練データを第1符号器及び第2符号器に与えることで推定器から得られる推定の結果が正解データに適合するように訓練される。この訓練の結果により、第1符号器及び第2符号器による得られる第1特徴量及び第2特徴量には、訓練データに含まれる特徴、すなわち、推定タスクの正解に対応する成分が含まれるようになる。
 第3訓練ステップでは、訓練データを第1符号器に与えることで第1メタ識別器から得られる識別の結果がメタデータに適合するように第1メタ識別器を訓練する。これに対して、第4訓練ステップでは、訓練データを第1符号器に与えることで第1メタ識別器から得られる識別の結果がメタデータに適合しないように第1符号器を訓練する。すなわち、第3訓練ステップ及び第4訓練ステップでは、第1符号器及び第1メタ識別器の敵対的学習を実施する。これにより、第1メタ識別器の識別性能が向上するのに対応して、この第1メタ識別器による識別が失敗するように、第1符号器により得られる第1特徴量には、訓練データの取得に関する属性に対応する成分が含まれないようになる。
 すなわち、当該構成に係る機械学習の結果、訓練データに含まれる特徴に関して、第2符号器の符号化により得られる第2特徴量には、メタデータに対応する成分が含まれやすくなるのに対して、第1符号器の符号化により得られる第1特徴量には、メタデータ以外の情報に対応する成分が含まれやすくなる。推定器は、この両方の特徴量から訓練データに含まれる特徴を推定するように訓練される。したがって、学習済みの第1符号器、第2符号器、及び推定器を利用することで、データを取得するドメインに特有の情報、及び共通の情報の両方に基づいて、データに含まれる特徴を推定するタスクを実行することができる。そのため、データを取得するドメインに特有の情報が推定タスクに有益であるケースで、学習済みのモデルによる推定の精度を高めることができる。
 また、データの取得に関する属性に特有の情報が推定タスクの精度に悪影響を及ぼす場合には、第2符号器により得られる第2特徴量は利用せずに、第1符号器により得られる第1特徴量に基づいて、データに含まれる特徴を推定するようにすればよい。これにより、推定タスクを実行する際に、メタデータに対応する成分の影響を除外することができる。そのため、データの取得に関する属性に特有の情報が推定タスクの精度に悪影響を及ぼすケース(例えば、データを取得するドメインに共通に現れる事象を推定するケース)でも、学習済みのモデルによる推定の精度を高めることができる。
 加えて、学習済みの第2符号器に入力データを入力することで、当該第2符号器から第2特徴量として得られる出力値は、当該入力データのドメイン(すなわち、データの取得に関する属性)を推定した結果に対応する。この推定の結果が正しければ、第2符号器から得られる出力値を第2メタ識別器に入力することで、第2メタ識別器から得られる出力値(メタデータの識別結果)は、入力データの取得に関する属性に適合する。そのため、未知のデータを第2符号器に入力し、第2メタ識別器から得られる識別の結果が未知のデータの取得に関する属性に適合しているか否かにより、上記学習済みのモデルにより推定タスクを適切に遂行可能か否か、を判定することができる。これにより、学習済みのモデルが適切に推定タスクを実行できない未知のデータが与えられているときに、この未知のデータに対して当該学習済みのモデルにより推定タスクを実行するのを避けることができる。また、異なるドメインのデータで学習済みの複数のモデルが存在する場合には、未知のデータに対して適切な学習済みのモデルを選択することができる。
 更に、当該構成では、第1符号器及び第2符号器の2つの符号器が用意される。第1符号器が、メタデータ以外の情報に対応する成分を含む特徴量(第1特徴量)を抽出する役割を果たす。第2符号器が、メタデータに対応する特徴量(第2特徴量)を抽出する役割を果たす。異なるドメインから得られたデータに第1符号器及び第2符号器を共通に利用することができる。そのため、当該構成によれば、データを取得するドメイン毎に抽出器を用意しなくてよい。
 したがって、当該構成によれば、データを取得するドメイン毎に学習済みの抽出器を用意する手間を省略することができる。また、データの取得に関する属性に特有の情報が推定タスクに有用なケース及び悪影響を及ぼすケースの両方で、比較的に高精度に推定タスクを実行可能な学習済みのモデルを構築することができる。更には、学習済みの第2符号器及び第2メタ識別器を利用することで、学習済みのモデルが未知のデータに対して適切に推定タスクを遂行可能か否か、を評価することができる。この評価の結果に基づいて、適切に推定タスクを遂行不能な未知のデータに対して学習済みのモデルが利用されるのを防止したり、未知のデータに適切な学習済みのモデルを選択したりすることができる。そのため、当該構成によれば、導入コストが比較的に低廉で、かつデータの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。
 なお、第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器はそれぞれ、演算に利用される演算パラメータであって、機械学習により調整される演算パラメータを備える。このような第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器の種類はそれぞれ、機械学習可能なモデル(学習器)であれば、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器それぞれには、例えば、ニューラルネットワーク、サポートベクタマシン、回帰モデル、決定木モデル等が用いられてよい。第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器それぞれにニューラルネットワークが用いられる場合、各ニューロン間の結合の重み、各ニューロンの閾値等が、上記演算パラメータの一例である。各特徴量のデータ形式は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。
 訓練データの種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。訓練データには、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等が利用されてよい。センサは、例えば、画像センサ(カメラ)、赤外線センサ、音センサ(マイクロフォン)、超音波センサ、光センサ、圧力センサ、気圧センサ、温度センサ等であってよい。また、センサは、例えば、環境センサ、バイタルセンサ、車載センサ、ホームセキュリティセンサ等であってよい。環境センサは、例えば、気圧計、温度計、湿度計、音圧計、音センサ、紫外線センサ、照度計、雨量計、ガスセンサ等であってよい。バイタルセンサは、例えば、血圧計、脈拍計、心拍計、心電計、筋電計、体温計、皮膚電気反応計、マイクロ波センサ、脳波計、脳磁計、活動量計、血糖値測定器、眼電位センサ、眼球運動計測器等であってよい。車載センサは、例えば、画像センサ、レーザセンサ、マイクロ波センサ等であってよい。ホームセキュリティセンサは、例えば、画像センサ、赤外線センサ、活性度(音声)センサ、ガス(CO2等)センサ、電流センサ、スマートメータ(家電、照明等の電力使用量を計測するセンサ)等であってよい。訓練データは、複数の異なる種類のデータにより構成されてよい。この場合、第1符号器及び第2符号器はそれぞれ、訓練データの種類毎に用意されてよい。すなわち、第1符号器及び第2符号器はそれぞれ複数の部分符号器を備えてよい。各部分符号器は、対応する種類の訓練データの入力を受け付けて、入力された対応する種類の訓練データを特徴量に変換するように構成されてよい。
 メタデータは、訓練データの取得に関する属性を示すように構成される。この訓練データの取得に関する属性は、訓練データを取得した何らかの条件を識別可能なあらゆる情報を含んでよい。例えば、当該訓練データの取得に関する属性は、訓練データを取得した時間に関する属性を含んでもよい。時間に関する属性は、例えば、時間帯の種別、曜日の種別、平日及び休日の別、月の種別、季節の種別等を含んでもよい。時間帯の種別は、朝、昼、夜等の区分により表現されてもよいし、7時から9時まで等のように所定の時間の区分により表現されてもよい。
 また、訓練データがセンサにより得られる場合、訓練データの取得に関する属性は、センサに関連するあらゆる種類の情報を含んでよい。例えば、訓練データの取得に関する属性は、センサの利用形態に関する属性、センサの仕様に関する属性、センサの観測環境に関する属性等を含んでもよい。センサの利用形態に関する属性は、例えば、センサの動作設定に関する属性、センサの設置状況に関する属性等を含んでもよい。センサの動作設定に関する属性は、例えば、計測範囲の設定値、計測範囲の分解能の設定値、サンプリング周波数の設定値等を含んでもよい。センサの設置状況に関する属性は、例えば、センサの設置角度、センサ周囲の温度、センサと観測対象との間の距離、センサの設置間隔等を含んでもよい。センサの仕様に関する属性は、例えば、センサの性能に関する属性、センサの機器情報に関する属性、センサの初期設置条件に関する属性等を含んでもよい。センサの性能に関する属性は、例えば、センサの感度限界、ダイナミックレンジ、空間分解能の設定可能範囲、サンプリング周波数の設定可能範囲等を含んでもよい。センサの機器情報に関する属性は、例えば、センサの種別、センサの名称、センサの説明等を含んでもよい。センサの初期設置条件に関する属性は、例えば、設置場所の固有名詞等の情報を含んでもよい。センサの観測環境に関する属性は、例えば、場所、天候、気温、湿度、照度等を含んでもよい。
 また、訓練データが対象物に対して得られる場合、訓練データの取得に関する属性は、当該対象物に関するあらゆる種類の情報を含んでもよい。訓練データがセンサにより得られる場合、センサによる観測対象が当該対象物であってよい。訓練データの取得に関する属性は、例えば、対象物の種別、対象物を識別するための識別情報等を含んでもよい。対象物が人物である場合、訓練データの取得に関する属性は、例えば、人物(被験者)の識別子、性別、年齢、体格、人種等の識別情報(個人情報)を含んでもよい。また、訓練データが人物の何らかの行動に対して得られる場合には、訓練データの取得に関する属性は、人物の行動に関するあらゆる種類の情報を含んでもよい。
 正解データは、訓練データに含まれる特徴、すなわち、訓練データに対する推定タスクの正解を示すように構成される。訓練データに含まれる特徴は、分類、回帰等の推定(予測を含む)タスクの対象となり得るものであれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。特徴を推定することには、分類すること、回帰すること等が含まれてよい。特徴は、データから推定可能なあらゆる要素を含んでよい。特徴を推定することには、未来の何らかの要素を予測することが含まれてよい。この場合、特徴は、未来に現れる要素の予兆を含んでよい。正解データは、習得させる推定タスクに応じて適宜決定されてよい。正解データは、例えば、特徴のカテゴリを示す情報、特徴の表れる確率を示す情報、特徴の値を示す情報、特徴の写る範囲を示す情報等により構成されてよい。なお、第2訓練ステップ以外の訓練ステップでは、この正解データを含まない学習データセット、すなわち、正解データ及びメタデータの組み合わせにより構成された学習データセットが更に利用されてよい。
 上記一側面に係る学習装置において、前記複数の学習データセットに含まれる少なくとも1つ以上の第1の学習データセット、及び少なくとも1つ以上の第2の学習データセットは、それぞれの前記メタデータにより示される属性が相違するように異なるドメインから得られてよい。当該構成によれば、データの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。
 なお、異なるドメインとは、訓練データの取得に関する属性が相違することであり、メタデータが複数の属性を示す場合には、少なくとも一部の属性が相違することである。ドメインは、例えば、データを取得する条件等のデータの取得に関する属性を規定する。一例として、カメラによりデータを取得する場面を想定した場合、カメラの向き、カメラの解像度、環境の明るさ、撮影対象等の撮影条件が異なれば、訓練データの取得に関する属性が相違する。この場合、それぞれの撮影条件は異なるドメインの一例である。
 上記一側面に係る学習装置において、前記第1訓練ステップでは、前記第2符号器は、前記メタデータにより示される前記訓練データの取得に関する属性に対応する成分を前記第2特徴量が含むように訓練されてよく、第4訓練ステップでは、前記第1符号器は、前記各学習データセットの前記訓練データを取得するドメインに共通に現れる情報に対応する成分を前記第1特徴量が含むように訓練されてよい。当該構成によれば、データの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。なお、ドメインに共通に現れる情報とは、例えば、メタデータにより示される訓練データの取得に関する属性に依存しない情報である。一例として、異なる撮影条件及び背景で数字を撮影した画像データが与えられた場合、数字の種別は、ドメインに共通に現れる情報である。
 上記一側面に係る学習装置において、前記各訓練ステップでは、前記訓練データと共にノイズが前記各符号器に入力されて、各訓練が実行されてよい。複数の学習データセットのうちの一部の訓練データと他の訓練データとのランダム性が極めて相違する場合、又は他の訓練データに比べて一部の訓練データに大きな欠損が存在する場合、その相違の特性に対応する成分を第1特徴量に入らないようにするのは困難である。すなわち、その相違の特性を第1符号器に学習させないようにするのは困難である。そのため、これらの場合には、第1メタ識別器がその相違の特性から取得の属性を識別することができてしまい、第4訓練ステップにおいて、第1メタ識別器による識別が失敗するように第1符号器を訓練することが困難となってしまう可能性がある。これに対して、当該構成では、訓練データにと共にノイズを各符号器に入力するようにすることで、その相違の特性を埋めることができ、これによって、第4訓練ステップを適切に完了することができるようになる。したがって、当該構成によれば、上記のような訓練データが与えられた場合でも、データの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。
 上記一側面に係る学習装置において、前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1符号器から前記第1特徴量として得られる出力値と前記訓練データを前記第2符号器に与えることで前記第2符号器から前記第2特徴量として得られる出力値との相互情報量が少なくなるように、前記第1符号器及び前記第2符号器を訓練する第5訓練ステップを更に含んでもよい。当該構成によれば、第5訓練ステップの成果により、メタデータに対応する成分は第2特徴量に含まれやすくなるのに対して、メタデータ以外の情報に対応する成分が、第1特徴量に更に含まれやすく、かつ第2特徴量に含まれ難くすることができる。これにより、メタデータに対応する成分及びそれ以外の情報に対応する成分を第2特徴量及び第1特徴量に適切に分配することができる。その結果、特に、データを取得するドメインに共通に現れる事象を第1特徴量から推定するケースで、学習済みのモデルによる推定の精度を高めることができる。
 上記一側面に係る学習装置において、前記第4訓練ステップでは、前記各学習データセットについて、前記メタデータに対応するダミーメタデータであって、対応する前記メタデータとは異なる値で構成されたダミーメタデータが取得されてよい。そして、前記識別の結果が前記メタデータに適合しないように前記第1符号器を訓練することは、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記ダミーメタデータに適合するように前記第1符号器を訓練することにより構成されてよい。当該構成によれば、第4訓練ステップの処理を簡易化することができる。
 上記一側面に係る学習装置において、前記ダミーメタデータは、対応する学習データセットとは異なる学習データセットのメタデータにより構成されてよい。当該構成によれば、ダミーメタデータを生成する計算量を抑えることができ、第4訓練ステップの処理コストを低減することができる。
 対象の学習データセットについて、ダミーメタデータとして利用するメタデータを取得する他の学習データセットを選択する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、複数の学習データセットから他の学習データセットをランダムに選択し、選択された学習データセットのメタデータを対象の学習データセットのダミーメタデータとして利用してもよい。また、例えば、学習データセットの訓練データとメタデータとの対応関係を任意の方向にずらすことで、対象の学習データセットに割り当てられた他の学習データセットのメタデータをダミーメタデータとして利用してもよい。また、例えば、複数の学習データセットの中から1つの学習データセットを選択し、選択された学習データセットのメタデータを全ての学習データセットのダミーメタデータとして利用してもよい。
 なお、ダミーメタデータを生成する方法は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。この方法の他、例えば、ダミーメタデータは、メタデータの値を反転することで生成されてよい。また、例えば、ダミーメタデータは、メタデータの値とは相違するランダムな値(例えば、乱数)により構成されてよい。複数の学習データセットのうちダミーメタデータとメタデータとが一致する学習データセットが存在してもよい。この場合、当該学習データセットを訓練にそのまま利用してもよいし、当該学習データセットのダミーメタデータを変更するようにしてもよい。
 また、第1メタ識別器から得られる識別の結果がメタデータに適合しないように第1符号器を訓練する方法は、このダミーメタデータを与える方法に限られなくてもよい。例えば、第1メタ識別器の出力値とメタデータとの誤差が大きくなる方向の勾配を算出し、算出された勾配を逆伝播することで、第1符号器を訓練してもよい。
 上記一側面に係る学習装置において、前記学習モデルは、前記第1特徴量及び前記第2特徴量から前記入力データを復号化するように構成される復号器を更に含んでよい。前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記復号器により得られる復号化データが前記訓練データに適合するように、前記第1符号器、前記第2符号器及び前記復号器を訓練する第6訓練ステップを更に含んでよい。当該構成によれば、復号器の訓練により、第1特徴量及び第2特徴量から入力データを復元可能であることが保証される。すなわち、第1特徴量及び第2特徴量において、入力データに関する情報の欠損がないことを保証することができる。したがって、当該構成によれば、上記いずれのケースにおいても、特徴量に変換する過程で情報の欠損を抑えることができるため、データの取得に関する属性の相違にロバストで、高精度に推定タスクを遂行可能な学習済みのモデルを構築することができる。
 上記一側面に係る学習装置において、前記第1、第2、及び第6訓練ステップでは、前記訓練データを前記第2符号器に与えることで前記第2符号器から前記第2特徴量として出力値が取得され、取得された当該出力値と共にノイズが前記第2メタ識別器、前記推定器、及び前記復号器に入力されて、各訓練が実行されてよい。当該構成によれば、第2特徴量にノイズを付与した訓練を実施することで、データの取得に関する属性の相違するドメインを学習することができる。これにより、データの取得に関する属性の相違にロバストで、高精度に推定タスクを遂行可能な学習済みのモデルを構築することができる。なお、第2特徴量と共にノイズを入力する形態は、このような例に限定されなくてもよい。例えば、第1、第2、及び第6訓練ステップのうちの少なくともいずれかにおいて、ノイズの入力が省略されてもよい。
 上記一側面に係る学習装置において、前記データ取得部は、前記学習処理部が前記学習モデルの機械学習を実施した後に、前記複数の学習データセットのうちの少なくともいずれかの訓練データを前記第1符号器に与えることで前記第1符号器から前記第1特徴量として出力値を取得し、前記訓練データを前記第2符号器に与えることで前記第2符号器から前記第2特徴量として出力値を取得し、及び前記第1符号器から取得された前記出力値を前記復号器に入力し、かつ前記第2符号器から得られた前記出力値と共にノイズを前記復号器に入力することで、前記復号器から前記復号化データとして出力データを取得してもよい。前記学習処理部は、取得された前記出力データを新たな訓練データとして利用して、前記学習モデルの機械学習を再度実施してもよい。当該構成によれば、第2特徴量と共にノイズを入力することで得られた復号化データを新たな訓練データとして機械学習に使用することで、データの取得に関する属性の相違するドメインを学習することができる。これにより、データの取得に関する属性の相違にロバストで、高精度に推定タスクを遂行可能な学習済みのモデルを構築することができる。
 なお、新たな訓練データに関連付けられる正解データは適宜取得されてよい。例えば、正解データにより示される特徴が訓練データの取得に関する属性に依存しない場合、新たな訓練データの生成に利用した元の訓練データに関連付けられた正解データを新たな訓練データに関連付けてよい。また、例えば、推定器による推定の結果を正解データとして新たな訓練データに関連付けてもよい。また、例えば、新たな正解データを生成し、生成された新たな正解データを新たな訓練データに関連付けてもよい。同様に、新たな訓練データに関連付けるメタデータは適宜取得されてよい。例えば、第2特徴量と共にノイズを入力することで第2メタ識別器から得られた識別の結果をメタデータとして新たな訓練データとして関連付けてもよい。また、例えば、新たなメタデータを生成し、生成された新たなメタデータを新たな訓練データに関連付けてもよい。
 上記一側面に係る学習装置において、前記学習モデルは、前記第1符号器の出力値が入力され、前記第1特徴量から前記入力データに含まれる特徴を推定するように構成された他の推定器を更に含んでもよい。前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記他の推定器から得られる推定の結果が前記正解データ又は前記訓練データに含まれる他の特徴を示す他の正解データに適合するように、前記第1符号器及び前記他の推定器を訓練する第7訓練ステップを更に含んでもよい。当該構成によれば、第7訓練ステップの機械学習により、特徴の推定に利用可能な情報に対応する成分が第1特徴量に含まれることを保証することができる。これにより、特に、データを取得するドメインに共通に現れる事象を第1特徴量から推定するケースで、学習済みのモデルによる推定の精度を高めることができる。
 なお、学習済みの他の推定器は、第1特徴量に基づいて推定タスクを遂行するのに利用されてよい。他の正解データにより示される他の特徴は、正解データにより示される特徴とは別の特徴であって、ドメインに共通に現れる特徴であることが望ましい。他の推定器から得られる推定の結果が正解データに適合するように第1符号器及び他の推定器を訓練するケースでは、正解データにより示される特徴は、ドメインに共通に現れる特徴であることが望ましい。
 上記各側面に係る学習装置は、所定のデータに対して所定の推定タスクを行うための学習済みのモデルを構築するあらゆる場面に適用されてよい。上記各側面に係る学習装置は、例えば、道路の状況を観測するセンサにより得られたデータから当該道路の状況を推定するための学習済みのモデルを構築する場面、対象者の状態を観察するセンサにより得られたデータから当該対象者の状態を推定するための学習済みのモデルを構築する場面、カメラにより得られた画像データに写る人物の属性を推定するための学習済みのモデルを構築する場面、車載データにより得られるデータから車両に与える指令を推定するための学習済みのモデルを構築する場面、顧客情報からレコメンドの的中率を推定するための学習済みのモデルを構築する場面、画像データに写る製品の状態を推定するための学習済みのモデルを構築する場面等に適用されてよい。
 例えば、上記一側面に係る学習装置において、前記訓練データは、道路を走行する車両を観察するセンサにより得られたセンシングデータであってよい。前記メタデータは、前記取得に関する属性として、前記道路の属性、前記センサの観察角度、前記センサの設置間隔、前記センサの種類又はこれらの組み合わせを示してよい。前記正解データは、前記特徴として、前記道路の交通状況に関する情報を示してよい。当該構成によれば、道路を観察するセンサにより得られたセンシングデータから道路の交通状況を推定する場面において、データの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。
 また、例えば、上記一側面に係る学習装置において、前記訓練データは、被験者の状態を観察するセンサにより得られたセンシングデータであってよい。前記メタデータは、前記取得に関する属性として、前記被験者の識別情報、前記センシングデータを取得した時間に関する属性、前記センサの設置状況に関する属性、前記センサの設置場所、又はこれらの組み合わせを示してよい。前記正解データは、前記特徴として、前記被験者の状態を示してよい。当該構成によれば、対象者の状態を観察するセンサにより得られたセンシングデータから当該対象者の状態を推定するための学習済みのモデルを構築する場面において、データの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。
 また、例えば、上記一側面に係る学習装置において、前記訓練データは、製品の写る画像データであってよい。前記メタデータは、製品の属性、製品の撮影条件、製品を製造する工場の属性又はこれらの組み合わせを示してもよい。前記正解データは、前記特徴として、製品の状態を示してもよい。当該構成によれば、画像データに写る製品の状態を推定するための学習済みのモデルを構築する場面において、データの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。
 なお、画像データに写る製品は、例えば、電子機器、電子部品、自動車部品、薬品、食品等の製造ラインで搬送される製品であってよい。電子部品は、例えば、基盤、チップコンデンサ、液晶、リレーの巻線等であってよい。自動車部品は、例えば、コンロッド、シャフト、エンジンブロック、パワーウィンドウスイッチ、パネル等であってよい。薬品は、例えば、包装済みの錠剤、未包装の錠剤等であってよい。製品は、製造過程完了後に生成される最終品であってもよいし、製造過程の途中で生成される中間品であってもよいし、製造過程を経過する前に用意される初期品であってもよい。製品の状態は、例えば、欠陥に関するものであってよい。この場合、製品の状態は、製品に欠陥が含まれるか否か、製品に含まれる欠陥の種類、製品に含まれる欠陥の範囲又はこれらの組み合わせにより表現されてよい。これに応じて、特徴は、例えば、傷、汚れ、クラック、打痕、バリ、色ムラ、異物混入等の製品の欠陥に関するものであってよい。
 また、本発明の一側面に係る学習装置は、画像データ、前記画像データの取得に関する属性を示すメタデータ、及び前記画像データに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するデータ取得部と、第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施する学習処理部であって、前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、前記機械学習を実施することは、前記各学習データセットについて、前記画像データを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、前記各学習データセットについて、前記画像データを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、前記各学習データセットについて、前記画像データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、前記各学習データセットについて、前記画像データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、を含み、前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、学習処理部と、を備える。
 また、本発明の一側面に係る学習装置は、センシングデータ、前記センシングデータの取得に関する属性を示すメタデータ、及び前記センシングデータに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するデータ取得部と、第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施する学習処理部であって、前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、前記機械学習を実施することは、前記各学習データセットについて、前記センシングデータを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、前記各学習データセットについて、前記センシングデータを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、前記各学習データセットについて、前記センシングデータを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、前記各学習データセットについて、前記センシングデータを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、を含み、前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、学習処理部と、を備える。
 また、本発明の形態は、上記学習装置に限られなくてもよい。本発明の一側面は、上記学習装置により構築された学習済みの学習モデルを利用する装置であってもよい。例えば、本発明の一側面は、上記学習装置により構築された学習済みの学習モデルを利用して、所定のデータに対して所定の推定タスクを実行するように構成された推定装置であってもよい。この推定装置は、適用場面における推定タスクの種類に応じて、予測装置、監視装置、診断装置、検査装置等と称されてよい。また、例えば、本発明の一側面は、上記学習装置により構築された復号器を含む学習済みの学習モデルを利用して、新たなデータを生成するように構成されたデータ生成装置であってもよい。
 例えば、本発明の一側面に係る推定装置は、対象データを取得するデータ取得部と、上記いずれかの側面に係る学習装置により訓練された前記第1符号器、前記第2符号器、及び前記推定器を利用して、取得された対象データに含まれる特徴を推定する推定部と、前記特徴を推定した結果に関する情報を出力する出力部と、を備える。
 また、例えば、本発明の一側面に係る推定装置は、対象データを取得するデータ取得部と、上記一側面に係る学習装置により訓練された前記第1符号器及び前記他の推定器を利用して、取得された対象データに含まれる特徴を推定する推定部と、前記特徴を推定した結果に関する情報を出力する出力部と、を備える。なお、他の推定器は、学習装置による学習装置の機械学習とは無関係に構築された学習済みの推定器に置き換えられてもよい。
 また、上記一側面に係る推定装置は、前記学習装置により訓練された前記第2符号器及び前記第2メタ識別器を利用して、前記対象データの取得に関する属性を識別し、当該識別の結果に基づいて、前記特徴を推定した結果を採用するか否かを判定する評価部を更に備えてもよい。なお、推定した結果を採用しないことは、推定部による推定処理を実行した後、当該推定の結果を破棄すること、及び推定処理を実行しないことを含んでよい。
 また、例えば、本発明の一側面に係る推定装置は、対象画像データを取得するデータ取得部と、上記いずれかの側面に係る学習装置により訓練された前記第1符号器、前記第2符号器、及び前記推定器を利用して、取得された対象画像データに含まれる特徴を推定する推定部と、前記特徴を推定した結果に関する情報を出力する出力部と、を備える。
 また、例えば、本発明の一側面に係る推定装置は、対象画像データを取得するデータ取得部と、上記一側面に係る学習装置により訓練された前記第1符号器及び前記他の推定器を利用して、取得された対象画像データに含まれる特徴を推定する推定部と、前記特徴を推定した結果に関する情報を出力する出力部と、を備える。他の推定器は、学習装置による学習装置の機械学習とは無関係に構築された学習済みの推定器に置き換えられてもよい。
 また、上記一側面に係る推定装置は、前記学習装置により訓練された前記第2符号器及び前記第2メタ識別器を利用して、前記対象画像データの取得に関する属性を識別し、当該識別の結果に基づいて、前記特徴を推定した結果を採用するか否かを判定する評価部を更に備えてもよい。なお、推定した結果を採用しないことは、推定部による推定処理を実行した後、当該推定の結果を破棄すること、及び推定処理を実行しないことを含んでよい。
 また、例えば、本発明の一側面に係る推定装置は、対象センシングデータを取得するデータ取得部と、上記いずれかの側面に係る学習装置により訓練された前記第1符号器、前記第2符号器、及び前記推定器を利用して、取得された対象センシングデータに含まれる特徴を推定する推定部と、前記特徴を推定した結果に関する情報を出力する出力部と、を備える。
 また、例えば、本発明の一側面に係る推定装置は、対象センシングデータを取得するデータ取得部と、上記一側面に係る学習装置により訓練された前記第1符号器及び前記他の推定器を利用して、取得された対象センシングデータに含まれる特徴を推定する推定部と、前記特徴を推定した結果に関する情報を出力する出力部と、を備える。他の推定器は、学習装置による学習装置の機械学習とは無関係に構築された学習済みの推定器に置き換えられてもよい。
 また、上記一側面に係る推定装置は、前記学習装置により訓練された前記第2符号器及び前記第2メタ識別器を利用して、前記対象センシングデータの取得に関する属性を識別し、当該識別の結果に基づいて、前記特徴を推定した結果を採用するか否かを判定する評価部を更に備えてもよい。なお、推定した結果を採用しないことは、推定部による推定処理を実行した後、当該推定の結果を破棄すること、及び推定処理を実行しないことを含んでよい。
 また、例えば、本発明の一側面に係るデータ生成装置は、対象データを取得するデータ取得部と、上記一側面に係る学習装置により訓練された前記第1符号器に前記対象データを与えることで前記第1符号器から前記第1特徴量として出力値を取得し、訓練された前記復号器を利用して、前記第2符号器から取得される出力値を与えずに、前記第1符号器から取得された前記出力値から前記対象データを復号化することで、復号化データを生成するデータ生成部と、生成された前記復号化データを所定の記憶領域に保存する保存処理部と、を備える。
 また、例えば、本発明の一側面に係るデータ生成装置は、対象画像データを取得するデータ取得部と、上記一側面に係る学習装置により訓練された前記第1符号器に前記対象画像データを与えることで前記第1符号器から前記第1特徴量として出力値を取得し、訓練された前記復号器を利用して、前記第2符号器から取得される出力値を与えずに、前記第1符号器から取得された前記出力値から前記対象画像データを復号化することで、復号化データを生成するデータ生成部と、生成された前記復号化データを所定の記憶領域に保存する保存処理部と、を備える。
 また、例えば、本発明の一側面に係るデータ生成装置は、対象センシングデータを取得するデータ取得部と、上記一側面に係る学習装置により訓練された前記第1符号器に前記対象センシングデータを与えることで前記第1符号器から前記第1特徴量として出力値を取得し、訓練された前記復号器を利用して、前記第2符号器から取得される出力値を与えずに、前記第1符号器から取得された前記出力値から前記対象センシングデータを復号化することで、復号化データを生成するデータ生成部と、生成された前記復号化データを所定の記憶領域に保存する保存処理部と、を備える。
 また、上記各形態に係る学習装置、推定装置、及びデータ利用装置それぞれの別の態様として、本発明の一側面は、以上の各構成の全部又はその一部を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記憶した、コンピュータその他装置、機械等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。また、本発明の一側面は、上記いずれかの形態に係る学習装置と、いずれかの形態に係る推定装置及びデータ生成装置の少なくともいずれかとにより構成されるシステムであってよい。
 例えば、本発明の一側面に係る学習方法は、コンピュータが、訓練データ、前記訓練データの取得に関する属性を示すメタデータ、及び前記訓練データに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するステップと、第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施するステップであって、前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、を含み、前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、ステップと、を実行する、情報処理方法である。
 また、例えば、本発明の一側面に係る学習プログラムは、コンピュータに、訓練データ、前記訓練データの取得に関する属性を示すメタデータ、及び前記訓練データに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するステップと、第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施するステップであって、前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、を含み、前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、ステップと、を実行させるための、プログラムである。
 本発明によれば、導入コストが比較的に低廉で、かつデータの取得に関する属性の相違にロバストな学習済みのモデルを構築することができる。
図1は、本発明が適用される場面の一例を模式的に例示する。 図2は、実施の形態に係る学習装置のハードウェア構成の一例を模式的に例示する。 図3は、実施の形態に係る推定装置のハードウェア構成の一例を模式的に例示する。 図4は、実施の形態に係るデータ生成装置のハードウェア構成の一例を模式的に例示する。 図5Aは、実施の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。 図5Bは、実施の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。 図5Cは、実施の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。 図5Dは、実施の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。 図6は、実施の形態に係る推定装置のソフトウェア構成の一例を模式的に例示する。 図7は、実施の形態に係るデータ生成装置のソフトウェア構成の一例を模式的に例示する。 図8は、実施の形態に係る学習装置の処理手順の一例を例示する。 図9は、実施の形態に係る学習装置の機械学習の処理手順の一例を例示する。 図10は、実施の形態に係る推定装置の処理手順の一例を例示する。 図11は、実施の形態に係るデータ生成装置の処理手順の一例を例示する。 図12は、本発明が適用される他の場面の一例を模式的に例示する。 図13Aは、他の形態に係る予測装置のハードウェア構成の一例を模式的に例示する。 図13Bは、他の形態に係る予測装置のソフトウェア構成の一例を模式的に例示する。 図14は、本発明が適用される他の場面の一例を模式的に例示する。 図15Aは、他の形態に係る監視装置のハードウェア構成の一例を模式的に例示する。 図15Bは、他の形態に係る監視装置のソフトウェア構成の一例を模式的に例示する。 図16は、本発明が適用される他の場面の一例を模式的に例示する。 図17は、本発明が適用される他の場面の一例を模式的に例示する。 図18Aは、他の形態に係る検査装置のハードウェア構成の一例を模式的に例示する。 図13Bは、他の形態に係る検査装置のソフトウェア構成の一例を模式的に例示する。 図19は、本発明が適用される他の場面の一例を模式的に例示する。 図20Aは、他の形態に係る監視装置のハードウェア構成の一例を模式的に例示する。 図20Bは、他の形態に係る監視装置のソフトウェア構成の一例を模式的に例示する。 図21は、本発明が適用される他の場面の一例を模式的に例示する。 図22Aは、他の形態に係る監視装置のハードウェア構成の一例を模式的に例示する。 図22Bは、他の形態に係る監視装置のソフトウェア構成の一例を模式的に例示する。 図23は、本発明が適用される他の場面の一例を模式的に例示する。 図24Aは、他の形態に係る推奨装置のハードウェア構成の一例を模式的に例示する。 図24Bは、他の形態に係る推奨装置のソフトウェア構成の一例を模式的に例示する。
 以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
 §1 適用例
 まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本発明を適用した場面の一例を模式的に例示する。
 図1に示されるとおり、本実施形態に係るシステムは、学習装置1、推定装置2、及びデータ生成装置3を備えている。学習装置1及び推定装置2により、学習モデル5の機械学習を実施し、当該機械学習の成果を利用して、対象データに含まれる特徴を推定する推定システムが構成される。また、学習装置1及びデータ生成装置3により、学習モデル5の機械学習を実施し、当該機械学習の成果を利用して、対象データに関連する新たなデータを生成するデータ生成システムが構成される。
 本実施形態に係る学習装置1は、学習モデル5の機械学習を実施するように構成されたコンピュータである。具体的に、本実施形態に係る学習装置1は、複数の学習データセット121を取得する。各学習データセット121は、訓練データ122、当該訓練データ122の取得に関する属性を示すメタデータ123、及び当該訓練データ122に含まれる特徴(すなわち、当該訓練データ122に対する推定タスクの正解)を示す正解データ124の組み合わせにより構成される。
 訓練データ122の種類は、特に限定されなくてもよく、学習モデル5に習得させる推定タスクに応じて適宜選択されてよい。訓練データ122には、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等であってよい。図1の例では、センサSにより得られるセンシングデータに含まれる特徴を推定する能力を学習モデル5に習得させる場面が想定されている。そのため、本実施形態では、訓練データ122は、センサS又はこれと同種のセンサ(以下、同種のセンサを含んでセンサSと称する)により得られるセンシングデータである。
 センサSの種類は、特に限定されなくてもよく、学習モデル5に習得させる推定タスクに応じて適宜選択されてよい。センサSは、例えば、画像センサ(カメラ)、赤外線センサ、音センサ(マイクロフォン)、超音波センサ、光センサ、圧力センサ、気圧センサ、温度センサ等であってよい。また、センサSは、例えば、環境センサ、バイタルセンサ、車載センサ、ホームセキュリティセンサ等であってよい。環境センサは、例えば、気圧計、温度計、湿度計、音圧計、音センサ、紫外線センサ、照度計、雨量計、ガスセンサ等であってよい。バイタルセンサは、例えば、血圧計、脈拍計、心拍計、心電計、筋電計、体温計、皮膚電気反応計、マイクロ波センサ、脳波計、脳磁計、活動量計、血糖値測定器、眼電位センサ、眼球運動計測器等であってよい。車載センサは、例えば、画像センサ、レーザセンサ、マイクロ波センサ等であってよい。ホームセキュリティセンサは、例えば、画像センサ、赤外線センサ、活性度(音声)センサ、ガス(CO2等)センサ、電流センサ、スマートメータ(家電、照明等の電力使用量を計測するセンサ)等であってよい。
 メタデータ123は、訓練データ122の取得に関する属性を示すように構成される。この訓練データ122の取得に関する属性は、訓練データ122を取得した何らかの条件を識別可能なあらゆる情報を含んでよい。例えば、当該訓練データ122の取得に関する属性は、訓練データ122を取得した時間に関する属性を含んでもよい。時間に関する属性は、例えば、時間帯の種別、曜日の種別、平日及び休日の別、月の種別、季節の種別等を含んでもよい。時間帯の種別は、朝、昼、夜等の区分により表現されてもよいし、7時から9時まで等のように所定の時間の区分により表現されてもよい。
 また、本実施形態では、訓練データ122は、センサSにより得られるため、訓練データ122の取得に関する属性は、センサSに関連するあらゆる種類の情報を含んでよい。例えば、訓練データ122の取得に関する属性は、センサSの利用形態に関する属性、センサSの仕様に関する属性、センサSの観測環境に関する属性等を含んでもよい。センサSの利用形態に関する属性は、例えば、センサSの動作設定に関する属性、センサSの設置状況に関する属性等を含んでもよい。センサSの動作設定に関する属性は、例えば、計測範囲の設定値、計測範囲の分解能の設定値、サンプリング周波数の設定値等を含んでもよい。センサSの設置状況に関する属性は、例えば、センサSの設置角度、センサSの周囲の温度、センサSと観測対象との間の距離、センサSの設置間隔等を含んでもよい。センサSの仕様に関する属性は、例えば、センサSの性能に関する属性、センサSの機器情報に関する属性、センサSの初期設置条件に関する属性等を含んでもよい。センサSの性能に関する属性は、例えば、センサSの感度限界、ダイナミックレンジ、空間分解能の設定可能範囲、サンプリング周波数の設定可能範囲等を含んでもよい。センサSの機器情報に関する属性は、例えば、センサSの種別、センサSの名称、センサSの説明等を含んでもよい。センサSの初期設置条件に関する属性は、例えば、設置場所の固有名詞等の情報を含んでもよい。センサSの観測環境に関する属性は、例えば、場所、天候、気温、湿度、照度等を含んでもよい。
 また、訓練データ122が何らかの対象物に対して得られる場合、訓練データ122の取得に関する属性は、当該対象物に関するあらゆる種類の情報を含んでもよい。本実施形態では、センサSによる観察対象が当該対象物であってよい。訓練データ122の取得に関する属性は、例えば、対象物の種別、対象物を識別するための識別情報等を含んでもよい。対象物が人物である場合、訓練データ122の取得に関する属性は、例えば、人物(被験者)の識別子、性別、年齢、体格、人種等の識別情報(個人情報)を含んでもよい。また、訓練データ122が人物の何らかの行動に対して得られる場合には、訓練データ122の取得に関する属性は、人物の行動に関するあらゆる種類の情報を含んでもよい。
 正解データ124は、訓練データ122に含まれる特徴、すなわち、訓練データ122に対する推定タスクの正解を示すように構成される。訓練データ122に含まれる特徴は、分類、回帰等の推定(予測を含む)タスクの対象となり得るものであれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。特徴を推定することには、分類すること、回帰すること等が含まれてよい。特徴は、データから推定可能なあらゆる要素を含んでよい。特徴を推定することには、未来の何らかの要素を予測することが含まれてよい。この場合、特徴は、未来に現れる要素の予兆を含んでよい。正解データ124は、習得させる推定タスクに応じて適宜決定されてよい。正解データ124は、例えば、特徴のカテゴリを示す情報、特徴の表れる確率を示す情報、特徴の値を示す情報、特徴の写る範囲を示す情報等により構成されてよい。
 一例として、道路の交通状況を予測する場面では、センサSには、道路を走行する車両を観察するセンサとして、カメラ、超音波センサ、赤外線センサ等が用いられてよい。これに応じて、訓練データ122は、画像データ、単位時間当たりの車両の通過台数の計測結果を示すデータ、平均速度の計測結果を示すデータ等であってよい。メタデータ123は、道路の属性、センサSの観察角度、センサSの設置間隔、センサSの種類等を示す情報により構成されてよい。道路の属性は、例えば、直線道路であるか否か、曲がり道であるか否か、有料道路の料金所があるか否か、合流点であるか否か、分岐点であるか否か等により示されてよい。正解データ124は、道路の交通状況に関する情報により構成されてよい。交通状況は、訓練データ122により現れる現在のものであってもよいし、未来のものであってもよい。道路の交通状況に関する情報は、例えば、渋滞発生の有無、渋滞発生の確率、発生した渋滞の継続時間、センサSの設置場所から所定の場所までの所要時間等により表現されてよい。渋滞発生の有無は、所定時間後に渋滞が発生するか否かにより表現されてもよい。
 本実施形態に係る学習装置1は、取得された複数の学習データセット121を使用して、学習モデル5の機械学習を実施する。本実施形態では、学習モデル5は、第1符号器51、第2符号器52、第1メタ識別器53、第2メタ識別器54、及び推定器55を含んでいる。第1符号器51は、与えられた入力データを第1特徴量に変換するように構成される。第2符号器52は、与えられた入力データを第2特徴量に変換するように構成される。各特徴量のデータ形式は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。第1メタ識別器53は、第1符号器51の出力値(第1特徴量)が入力され、入力された第1特徴量から入力データの取得に関する属性を識別するように構成される。第2メタ識別器54は、第2符号器52の出力値(第2特徴量)が入力され、入力された第2特徴量から入力データの取得に関する属性を識別するように構成される。推定器55は、第1符号器51及び第2符号器52の出力値(第1特徴量及び第2特徴量)が入力され、入力された第1特徴量及び第2特徴量から入力データに含まれる特徴を推定するように構成される。
 本実施形態では、機械学習を実施することは、第1~第4訓練ステップを含む。第1訓練ステップでは、学習装置1は、各学習データセット121について、訓練データ122を第2符号器52に与えることで第2メタ識別器54から得られる識別の結果がメタデータ123に適合するように、第2符号器52及び第2メタ識別器54を訓練する。第2訓練ステップでは、学習装置1は、各学習データセット121について、訓練データ122を第1符号器51及び第2符号器52に与えることで推定器55から得られる推定の結果が正解データ124に適合するように、第1符号器51、第2符号器52及び推定器55を訓練する。
 第3訓練ステップでは、学習装置1は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1メタ識別器53から得られる識別の結果がメタデータ123に適合するように、第1メタ識別器53を訓練する。第4訓練ステップでは、学習装置1は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1メタ識別器53から得られる識別の結果がメタデータ123に適合しないように、第1符号器51を訓練する。学習装置1は、第3訓練ステップ及び第4訓練ステップを交互に繰り返し実行する。なお、以下、説明の便宜上、各メタ識別器(53、54)により得られる識別の結果を「メタ識別」とも記載する。
 本実施形態に係る推定装置2は、学習済みの学習モデル5を利用して、対象データに対して推定タスクを遂行するように構成されたコンピュータである。本実施形態では、推定装置2には、センサSが接続されている。推定装置2は、センサSから対象データを取得する。推定装置2は、学習済みの学習モデル5を利用して、取得された対象データに含まれる特徴を推定する。そして、推定装置2は、推定の結果に関する情報を出力する。
 本実施形態に係るデータ生成装置3は、学習済みの学習モデル5を利用して、対象データに関連する新たなデータを生成するように構成されたコンピュータである。本実施形態では、データ生成装置3には、センサSが接続されている。データ生成装置3は、センサSから対象データを取得する。データ生成装置3は、学習済みの学習モデル5を利用して、取得された対象データに関連する新たなデータを生成する。新たなデータは、取得された対象データから抽出された第1特徴量及び第2特徴量の少なくともいずれかであってよい。また、新たなデータは、後述する復号器により生成された復号化データであってもよい。データ生成装置3は、生成された新たなデータを所定の記憶領域に保存する。
 以上のとおり、本実施形態では、学習装置1の第1訓練ステップにより、訓練データ122の取得に関する属性を第2メタ識別器54が適切に識別可能となるように、学習済みの第2符号器52により得られる第2特徴量には、当該取得に関する属性に対応する成分が含まれるようになる。また、第2訓練ステップにより、学習済みの第1符号器51及び第2符号器52により得られる第1特徴量及び第2特徴量には、訓練データ122に含まれる特徴(すなわち、推定タスクの正解)に対応する成分が含まれるようになる。更に、本実施形態では、第3訓練ステップ及び第4訓練ステップにより、第1符号器51及び第1メタ識別器53の敵対的学習を実施する。これにより、第1メタ識別器53の識別性能が向上するのに対応して、この第1メタ識別器53による識別が失敗するように、学習済みの第1符号器51により得られる第1特徴量には、訓練データ122の取得に関する属性に対応する成分が含まれないようになる。
 すなわち、本実施形態では、上記機械学習の結果、訓練データ122に含まれる特徴に関して、学習済みの第2符号器52の符号化により得られる第2特徴量には、メタデータ123に対応する成分が含まれやすくなる。これに対して、学習済みの第1符号器51により得られる第1特徴量には、訓練データ122に含まれる特徴に関する、メタデータ123以外の情報に対応する成分が含まれやすくなる。推定器55は、この両方の特徴量から訓練データ122に含まれる特徴を推定するように訓練される。一例として、上記道路の交通状況を予測する場面では、第1特徴量は、ドメインに共通の情報として、スポット的に発生する交通流の数及びその増減の変化傾向に対応する成分を含むようになる。一方、第2特徴量は、ドメインに特有の情報として、定常的に表れる地形起因の交通流の傾向、及び複数の地点で共起する交通流の傾向に対応する成分を含むようになる。推定器55は、これら両方の情報に基づいて、渋滞発生の確率、渋滞の有無等を推定するタスクを遂行することができる。したがって、本実施形態に係る推定装置2では、学習済みの第1符号器51、第2符号器52、及び推定器55を利用することで、対象データを取得するドメインに特有の情報、及び共通の情報の両方に基づいて、対象データに含まれる特徴を推定するタスクを実行することができる。そのため、対象データを取得するドメインに特有の情報が推定タスクに有益であるケースで、対象データに含まれる特徴を推定する精度を高めることができる。
 また、対象データの取得に関する属性に特有の情報が推定タスクの精度に悪影響を及ぼす場合、推定装置2は、学習済みの第2符号器52により得られる第2特徴量は利用せずに、学習済みの第1符号器51により得られる第1特徴量に基づいて、対象データに含まれる特徴を推定することができる。これにより、推定タスクを実行する際に、対象データの取得に関する属性に対応する成分の影響を除外することができる。そのため、対象データの取得に関する属性の情報が推定タスクの精度に悪影響を及ぼすケースにおいても、対象データに含まれる特徴を推定する精度を高めることができる。
 加えて、学習済みの第2符号器52に入力データを入力することで、当該第2符号器52から第2特徴量として得られる出力値は、当該入力データのドメイン(すなわち、入力データの取得に関する属性)を推定した結果に対応する。この推定の結果が正しければ、第2符号器52から得られる出力値を学習済みの第2メタ識別器54に入力することで、当該第2メタ識別器54から得られる出力値(すなわち、メタ識別の結果)は、入力データの取得に関する属性に適合する。そのため、本実施形態に係る推定装置2では、対象データを第2符号器52に入力し、第2メタ識別器54から得られるメタ識別の結果が対象データの取得に関する属性に適合しているか否かにより、当該対象データに対して学習済みの学習モデル5が推定タスクを適切に遂行可能か否か、を判定することができる。これにより、学習済みの学習モデル5が適切に推定タスクを遂行できない対象データが与えられているときに、この対象データに対して推定タスクを遂行するのを避けることができる。また、異なるドメインから得られた学習データセットにより学習済みの複数の学習モデル5が存在する場合には、対象データに対して適切な学習済みの学習モデル5を選択することができる。
 更に、本実施形態では、第1符号器51及び第2符号器52の2つの符号器が用意される。第1符号器51が、データの取得に関する属性以外の情報に対応する成分を含む特徴量(第1特徴量)を抽出する役割を果たす。第2符号器52が、データの取得に関する属性に対応する特徴量(第2特徴量)を抽出する役割を果たす。異なるドメインから得られた対象データに第1符号器51及び第2符号器52を共通に利用することができる。そのため、本実施形態では、対象データを取得するドメイン毎に抽出器を用意しなくてもよい。
 したがって、本実施形態によれば、対象データを取得するドメイン毎に学習済みの抽出器を用意する手間を省略することができる。また、対象データの取得に関する属性に特有の情報が推定タスクに有用なケース及び悪影響を及ぼすケースの両方で、比較的に高精度に推定タスクを実行可能な学習済みの学習モデル5を構築することができる。更には、学習済みの第2符号器52及び第2メタ識別器54を利用することで、学習済みの学習モデル5が対象データに対して適切に推定タスクを遂行可能か否か、を評価することができる。この評価の結果に基づいて、適切に推定タスクを遂行不能な対象データに対して学習済みの学習モデル5が利用されるのを防止したり、対象データに適切な学習済みの学習モデル5を選択したりすることができる。そのため、本実施形態によれば、導入コストが比較的に低廉で、かつ対象データの取得に関する属性の相違にロバストな学習済みの学習モデル5を構築することができる。
 なお、図1の例では、学習装置1、推定装置2、及びデータ生成装置3は、ネットワークを介して互いに接続されている。ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。ただし、各装置1~3の間でデータをやりとりする方法は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、学習装置1、推定装置2、及びデータ生成装置3では、記憶媒体を利用して、データがやりとりされてよい。
 また、図1の例では、学習装置1、推定装置2、及びデータ生成装置3は、それぞれ別個のコンピュータである。しかしながら、本実施形態に係るシステムの構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、学習装置1、推定装置2、及びデータ生成装置3のうちの少なくともいずれかのペアは一体のコンピュータであってよい。また、例えば、学習装置1、推定装置2、及びデータ生成装置3のうちの少なくともいずれかは、複数台のコンピュータにより構成されてよい。
 §2 構成例
 [ハードウェア構成]
 次に、図2を用いて、本実施形態に係る学習装置1のハードウェア構成の一例について説明する。図2は、本実施形態に係る学習装置1のハードウェア構成の一例を模式的に例示する。
 図2に示されるとおり、本実施形態に係る学習装置1は、制御部11、記憶部12、通信インタフェース13、入力装置14、出力装置15、及びドライブ16が電気的に接続されたコンピュータである。なお、図2では、通信インタフェースを「通信I/F」と記載している。
 制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、プログラム及び各種データに基づいて情報処理を実行するように構成される。記憶部12は、メモリの一例であり、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部12は、学習プログラム81、複数の学習データセット121、学習結果データ128等の各種情報を記憶する。
 学習プログラム81は、学習モデル5の機械学習に関する後述の情報処理(図8、図9)を学習装置1に実行させるためのプログラムである。学習プログラム81は、当該情報処理の一連の命令を含む。複数の学習データセット121は、当該学習モデル5の機械学習に利用される。学習結果データ128は、学習済みの学習モデル5に関する情報を示す。学習結果データ128は、学習プログラム81の実行結果として得られる。詳細は後述する。
 通信インタフェース13は、例えば、有線LAN(Local Area Network)モジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。学習装置1は、この通信インタフェース13を利用することで、ネットワークを介したデータ通信を他の情報処理装置(例えば、推定装置2、データ生成装置3)と行うことができる。
 入力装置14は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置15は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置14及び出力装置15を介して、学習装置1を操作することができる。入力装置14及び出力装置15は、タッチパネルディスプレイ等により一体的に構成されてもよい。
 ドライブ16は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体91に記憶されたプログラムを読み込むためのドライブ装置である。ドライブ16の種類は、記憶媒体91の種類に応じて適宜選択されてよい。上記学習プログラム81及び複数の学習データセット121の少なくともいずれかは、この記憶媒体91に記憶されていてもよい。
 記憶媒体91は、コンピュータその他装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。学習装置1は、この記憶媒体91から、上記学習プログラム81及び複数の学習データセット121の少なくともいずれかを取得してもよい。
 ここで、図2では、記憶媒体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)等であってもよい。
 <推定装置>
 次に、図3を用いて、本実施形態に係る推定装置2のハードウェア構成の一例について説明する。図3は、本実施形態に係る推定装置2のハードウェア構成の一例を模式的に例示する。
 図3に示されるとおり、本実施形態に係る推定装置2は、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27が電気的に接続されたコンピュータである。なお、図3では、外部インタフェースを「外部I/F」と記載している。本実施形態に係る推定装置2の制御部21~ドライブ26はそれぞれ、上記学習装置1の制御部11~ドライブ16それぞれと同様に構成されてよい。
 すなわち、制御部21は、ハードウェアプロセッサであるCPU、RAM、ROM等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部22は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部22は、推定プログラム82、学習結果データ128等の各種情報を記憶する。
 推定プログラム82は、学習済みの学習モデル5を利用して、対象データに含まれる特徴を推定する後述の情報処理(図10)を推定装置2に実行させるためのプログラムである。推定プログラム82は、当該情報処理の一連の命令を含む。詳細は後述する。
 通信インタフェース23は、例えば、有線LANモジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。推定装置2は、この通信インタフェース23を利用することで、ネットワークを介したデータ通信を他の情報処理装置(例えば、学習装置1)と行うことができる。
 入力装置24は、例えば、マウス、キーボード等の入力を行うための装置である。出力装置25は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置24及び出力装置25を介して、推定装置2を操作することができる。入力装置24及び出力装置25は、タッチパネルディスプレイ等により一体的に構成されてもよい。
 ドライブ26は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体92に記憶されたプログラムを読み込むためのドライブ装置である。上記推定プログラム82及び学習結果データ128のうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、推定装置2は、記憶媒体92から、上記推定プログラム82及び学習結果データ128のうちの少なくともいずれかを取得してもよい。記憶媒体92の種類は、ディスク型であってもよいし、ディスク型以外であってもよい。
 外部インタフェース27は、例えば、USB(Universal Serial Bus)ポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース27の種類及び数は、接続される外部装置の種類及び数に応じて適宜選択されてよい。本実施形態では、推定装置2は、外部インタフェース27を介して、センサSに接続される。
 センサSは、推定タスクの対象となる対象データを取得するのに利用される。センサSの種類及び配置場所は、特に限定されなくてもよく、遂行する推定タスクの種類に応じて適宜決定されてよい。なお、センサSとの接続方法は、このような例に限定されなくてよい。例えば、センサSが通信インタフェースを備えている場合、推定装置2は、外部インタフェース27ではなく、通信インタフェース23を介して、センサSに接続されてよい。
 なお、推定装置2の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部21は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA、DSP等で構成されてよい。記憶部22は、制御部21に含まれるRAM及びROMにより構成されてもよい。通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27の少なくともいずれかは省略されてもよい。推定装置2は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、推定装置2は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
 <データ生成装置>
 次に、図4を用いて、本実施形態に係るデータ生成装置3のハードウェア構成の一例について説明する。図4は、本実施形態に係るデータ生成装置3のハードウェア構成の一例を模式的に例示する。
 図4に示されるとおり、本実施形態に係るデータ生成装置3は、制御部31、記憶部32、通信インタフェース33、入力装置34、出力装置35、ドライブ36、及び外部インタフェース37が電気的に接続されたコンピュータである。データ生成装置3の制御部31~外部インタフェース37はそれぞれ、上記推定装置2の制御部21~外部インタフェース27それぞれと同様に構成されてよい。
 すなわち、制御部31は、ハードウェアプロセッサであるCPU、RAM、ROM等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部32は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。記憶部32は、生成プログラム83、学習結果データ128等の各種情報を記憶する。
 生成プログラム83は、学習済みの学習モデル5を利用して、対象データに関連する新たなデータを生成する後述の情報処理(図11)をデータ生成装置3に実行させるためのプログラムである。生成プログラム83は、当該情報処理の一連の命令を含む。詳細は後述する。
 通信インタフェース33は、例えば、有線LANモジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。データ生成装置3は、この通信インタフェース33を利用することで、ネットワークを介したデータ通信を他の情報処理装置(例えば、学習装置1)と行うことができる。
 入力装置34は、例えば、マウス、キーボード等の入力を行うための装置である。出力装置35は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置34及び出力装置35を介して、データ生成装置3を操作することができる。入力装置34及び出力装置35は、タッチパネルディスプレイ等により一体的に構成されてもよい。
 ドライブ36は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体93に記憶されたプログラムを読み込むためのドライブ装置である。上記生成プログラム83及び学習結果データ128のうちの少なくともいずれかは、記憶媒体93に記憶されていてもよい。また、データ生成装置3は、記憶媒体93から、上記生成プログラム83及び学習結果データ128のうちの少なくともいずれかを取得してもよい。記憶媒体93の種類は、ディスク型であってもよいし、ディスク型以外であってもよい。
 外部インタフェース37は、例えば、USBポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース37の種類及び数は、接続される外部装置の種類及び数に応じて適宜選択されてよい。本実施形態では、データ生成装置3は、外部インタフェース37を介して、センサSに接続される。センサSの種類及び配置場所は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。なお、センサSとの接続方法は、このような例に限定されなくてよい。例えば、センサSが通信インタフェースを備えている場合、データ生成装置3は、外部インタフェース37ではなく、通信インタフェース33を介して、センサSに接続されてよい。
 なお、データ生成装置3の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部31は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA、DSP等で構成されてよい。記憶部32は、制御部31に含まれるRAM及びROMにより構成されてもよい。通信インタフェース33、入力装置34、出力装置35、ドライブ36及び外部インタフェース37の少なくともいずれかは省略されてもよい。データ生成装置3は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、データ生成装置3は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
 [ソフトウェア構成]
 <学習装置>
 次に、図5A~図5Dを用いて、本実施形態に係る学習装置1のソフトウェア構成の一例について説明する。図5A~図5Dは、本実施形態に係る学習装置1のソフトウェア構成及び各モジュールによる情報処理の過程の一例を模式的に例示する。
 学習装置1の制御部11は、記憶部12に記憶された学習プログラム81をRAMに展開する。そして、制御部11は、CPUにより、RAMに展開された学習プログラム81を解釈して、当該学習プログラム81に含まれる一連の命令群を実行することで、各構成要素を制御する。これにより、図5A~図5Dに示されるとおり、本実施形態に係る学習装置1は、データ取得部111、学習処理部112、及び保存処理部113をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、学習装置1の各ソフトウェアモジュールは、制御部11(CPU)により実現される。
 データ取得部111は、複数の学習データセット121を取得する。本実施形態では、各学習データセット121は、訓練データ122、訓練データ122の取得に関する属性を示すメタデータ123、訓練データ122に含まれる特徴を示す正解データ124、及び訓練データ122に含まれる他の特徴を示す他の正解データ125の組み合わせにより構成される。複数の学習データセット121に含まれる少なくとも1つ以上の第1の学習データセット、及び少なくとも1つ以上の第2の学習データセットは、それぞれのメタデータ123により示される属性が相違するように異なるドメインから取得されてよい。
 他の正解データ125により示される他の特徴は、正解データ124により示される特徴とは別であり、訓練データ122を取得するドメインに共通に現れる特徴であることが望ましい。ドメインに共通に現れる情報とは、例えば、メタデータ123により示される訓練データ122の取得に関する属性に依存しない情報である。一例として、外観検査に利用する学習済みのモデルを構築するために、製品の写る画像データが訓練データ122として与えられている場面を想定する。この場面において、製品に生じる欠陥の有無は、画像データの取得に関する属性に依存し難い情報である。そのため、他の正解データ125は、訓練データ122に含まれる他の特徴として、欠陥の有無を示してよい。この場合、正解データ124は、訓練データ122に含まれる特徴として、例えば、欠陥の種別等のこれら以外の情報を示してよい。ドメインに共通に現れる特徴を示す他の正解データ125が与えられる場合には、正解データ124は、ドメインに特有の情報により推定精度が向上し得る特徴を示すのが好ましい。
 学習処理部112は、取得された複数の学習データセット121を使用して、学習モデル5の機械学習を実施する。上記のとおり、学習モデル5は、第1符号器51、第2符号器52、第1メタ識別器53、第2メタ識別器54、及び推定器55を含んでいる。本実施形態では、学習モデル5は、これらに加えて、復号器56及び他の推定器57を更に含んでいる。第1符号器51及び第2符号器52は入力側に並列に配置される。第1符号器51の出力は、第1メタ識別器53、推定器55、復号器56、及び他の推定器57の入力に接続している。第2符号器52の出力は、第2メタ識別器54、推定器55、及び復号器56の入力に接続している。これにより、第1符号器51の出力値(第1特徴量)は、第1メタ識別器53及び他の推定器57それぞれに入力される。第2符号器52の出力値(第2特徴量)は、第2メタ識別器54に入力される。第1符号器51及び第2符号器52の出力値(第1特徴量及び第2特徴量)は、推定器55及び復号器56それぞれに入力される。
 第1符号器51は、与えられた入力データを第1特徴量に変換するように構成される。第2符号器52は、与えられた入力データを第2特徴量に変換するように構成される。第1メタ識別器53は、第1符号器51により得られた第1特徴量から入力データの取得に関する属性を識別するように構成される。第2メタ識別器54は、第2符号器52により得られた第2特徴量から入力データの取得に関する属性を識別するように構成される。推定器55は、第1符号器51及び第2符号器52により得られた第1特徴量及び第2特徴量から入力データに含まれる特徴を推定するように構成される。復号器56は、第1符号器51及び第2符号器52により得られた第1特徴量及び第2特徴量から入力データを復号化するように構成される。他の推定器57は、第1符号器51により得られた第1特徴量から入力データに含まれる特徴(正解データ124により示される特徴又は他の正解データ125により示される他の特徴)を推定するように構成される。
 学習フェーズでは、各学習データセット121の訓練データ122が入力データである。一方、利用フェーズでは、対象データ(後述する対象データ(221、321))が入力データである。入力データは、画像データ及び音データにより構成される等のように、複数の異なる種類のデータにより構成されてよい。この場合、第1符号器51及び第2符号器52はそれぞれ、入力データの種類毎に用意されてよい。すなわち、第1符号器51及び第2符号器52はそれぞれ複数の部分符号器を備えてよい。各部分符号器は、対応する種類のデータの入力を受け付けて、入力された対応する種類のデータを特徴量に変換するように構成されてよい。この場合、入力データの種類毎に第1特徴量及び第2特徴量が算出される。算出された各第1特徴量は、第1メタ識別器53、推定器55、復号器56、及び他の推定器57に入力される。また、算出された各第2特徴量は、第2メタ識別器54、推定器55、及び復号器56に入力される。
 図5B及び図5Cに示されるとおり、機械学習の処理は、上記第1~第4訓練ステップを含んでいる。図5Bに示されるとおり、第1訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第2符号器52に与えることで第2メタ識別器54から得られる識別の結果がメタデータ123に適合するように、第2符号器52及び第2メタ識別器54を訓練する。第1訓練ステップにより、第2符号器52は、メタデータ123により示される訓練データ122の取得に関する属性に対応する成分を第2特徴量が含むように訓練され得る。第2訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51及び第2符号器52に与えることで推定器55から得られる推定の結果が正解データ124に適合するように、第1符号器51、第2符号器52及び推定器55を訓練する。
 図5Cに示されるとおり、第3訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1メタ識別器53から得られる識別の結果がメタデータ123に適合するように、第1メタ識別器53を訓練する。第4訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1メタ識別器53から得られる識別の結果がメタデータ123に適合しないように、第1符号器51を訓練する。学習処理部112は、第3訓練ステップ及び第4訓練ステップを交互に繰り返し実行する。第4訓練ステップにより、第1符号器51は、各学習データセット121の訓練データ122を取得するドメインに共通に現れる情報に対応する成分を第1特徴量が含むように訓練され得る。
 図5Bに示されるとおり、本実施形態では、機械学習の処理は、これら第1~第4訓練ステップに加えて、第5~第7訓練ステップを更に含んでいる。第5訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1符号器51から第1特徴量として得られる出力値と訓練データ122を第2符号器52に与えることで第2符号器52から第2特徴量として得られる出力値との相互情報量が少なくなるように、第1符号器51及び第2符号器52を訓練する。第6訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51及び第2符号器52に与えることで復号器56により得られる復号化データが訓練データ122に適合するように、第1符号器51、第2符号器52、及び復号器56を訓練する。
 第7訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51に与えることで他の推定器57から得られる推定の結果が正解データ124又は他の正解データ125に適合するように、第1符号器51及び他の推定器57を訓練する。第7訓練ステップにおいて、正解データ124を使用し、他の正解データ125を使用しない場合、当該他の正解データ125は、各学習データセット121から省略されてよい。この場合、正解データ124により示される特徴は、訓練データ122を取得するドメインに共通に現れる特徴であることが望ましい。
 保存処理部113は、学習済みの学習モデル5に関する情報を学習結果データ128として生成する。そして、保存処理部113は、生成された学習結果データ128を所定の記憶領域に保存する。所定の記憶領域は、例えば、制御部11内のRAM、記憶部12、記憶媒体91、外部記憶装置又はこれらの組み合わせであってよい。
 (各器の構成)
 次に、各器51~57の構成について説明する。各器51~57には、機械学習を実施可能な任意のモデルが利用されてよい。図5Aに示されるとおり、本実施形態では、各器51~57は、深層学習に用いられる多層構造のニューラルネットワークにより構成されている。各器51~57は、入力層(511、521、531、541、551、561、571)、中間(隠れ)層(512、522、532、542、552、562、572)、及び出力層(513、523、533、543、553、563、573)を備えている。
 ただし、各器51~57の構造は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、中間層(512、522、532、542、552、562、572)の数は、1つに限定されなくてもよく、2つ以上であってもよい。また、各器51~57の少なくともいずれかの組み合わせでは、少なくとも部分的に構造が一致していてもよい。或いは、各器51~57の構造は、一致していなくてもよい。
 各層(511~513、521~523、531~533、541~543、551~553、561~563、571~573)は1又は複数のニューロン(ノード)を備えている。各層(511~513、521~523、531~533、541~543、551~553、561~563、571~573)に含まれるニューロン(ノード)の数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。
 隣接する層のニューロン同士は適宜結合され、各結合には重み(結合荷重)が設定されている。また、各ニューロンには閾値が設定されており、基本的には、各入力と各重みとの積の和が閾値を超えているか否かによって各ニューロンの出力が決定される。各層(511~513、521~523、531~533、541~543、551~553、561~563、571~573)に含まれる各ニューロン間の結合の重み及び各ニューロンの閾値は、各器51~57の演算パラメータの一例である。
 各器51~57の演算パラメータは、各器51~57の演算処理に利用され、機械学習の上記各訓練ステップにより調整される。具体的には、第1訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第2符号器52の入力層521に入力し、第2メタ識別器54の出力層543から出力値(メタ識別の結果)を取得する。学習処理部112は、取得される出力値とメタデータ123との誤差が小さくなるように、第2符号器52及び第2メタ識別器54の演算パラメータの値を調整する。
 第2訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を各符号器(51、52)の入力層(511、512)に入力し、推定器55の出力層553から出力値(識別の結果)を取得する。学習処理部112は、取得される出力値と正解データ124との誤差が小さくなるように、第1符号器51、第2符号器52及び推定器55の演算パラメータの値を調整する。
 第3訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51の入力層511に入力し、第1メタ識別器53の出力層533から出力値(メタ識別の結果)を取得する。学習処理部112は、取得される出力値とメタデータ123との誤差が小さくなるように、第1メタ識別器53の演算パラメータの値を調整する。第3訓練ステップでは、第1メタ識別器53の演算パラメータの値は調整されるのに対して、第1符号器51の演算パラメータの値は固定される。
 これに対して、第4訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51の入力層511に入力し、第1メタ識別器53の出力層533から出力値(メタ識別の結果)を取得する。学習処理部112は、取得される出力値とメタデータ123との誤差が大きくなるように、第1符号器51の演算パラメータの値を調整する。第4訓練ステップでは、第1符号器51の演算パラメータの値は調整されるのに対して、第1メタ識別器53の演算パラメータの値は固定される。
 なお、第4訓練ステップでは、学習処理部112は、各学習データセット121について、メタデータ123に対応するダミーメタデータ129であって、対応するメタデータ123とは異なる値で構成されたダミーメタデータ129を取得してもよい。この場合、第1メタ識別器53から得られる識別の結果がメタデータ123に適合しないように第1符号器51を訓練することは、訓練データ122を第1符号器51に与えることで第1メタ識別器53から得られる識別の結果がダミーメタデータ129に適合するように第1符号器51を訓練することにより構成されてよい。換言すると、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51の入力層511に入力することで第1メタ識別器53の出力層533から得られる出力値とダミーメタデータ129との誤差が小さくなるように、第1符号器51の演算パラメータの値を調整してよい。
 第5訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を各符号器(51、52)の入力層(511、521)に入力し、各符号器(51、52)の出力層(513、523)から出力値(第1特徴量及び第2特徴量)を取得する。学習処理部112は、第1符号器51から得られる第1特徴量及び第2符号器52から得られる第2特徴量の間の相互情報量を算出する。そして、学習処理部112は、算出された相互情報量から導出される誤差が小さくなるように、第1符号器51及び第2符号器52の少なくとも一方の演算パラメータの値を調整する。相互情報量から導出される誤差は、相互情報量の値そのままでもよいし、二乗したり、対数をとったりする等の所定の演算を相互情報量の値に適用することで算出されてもよい。
 第6訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を各符号器(51、52)の入力層(511、521)を入力し、復号器56の出力層563から出力データ(復元化データ)を取得する。学習処理部112は、取得される出力データと訓練データ122との誤差が小さくなるように、第1符号器51、第2符号器52、及び復号器56の演算パラメータの値を調整する。
 第7訓練ステップでは、学習処理部112は、各学習データセット121について、訓練データ122を第1符号器51の入力層511に入力し、他の推定器57の出力層573から出力値(推定の結果)を取得する。学習処理部112は、取得される出力値と正解データ124又は他の正解データ125との誤差が小さくなるように、第1符号器51及び他の推定器57の演算パラメータの値を調整する。
 なお、第3訓練ステップ及び第4訓練ステップを交互に繰り返し実行する際に、第1、第2、及び第5~第7訓練ステップも繰り返し実行されてよい。換言すると、学習処理部112は、第1~第7訓練ステップによる演算パラメータの値の調整を繰り返す過程で、第3訓練ステップ及び第4訓練ステップによる演算パラメータの値の調整を交互に繰り返してもよい。或いは、第1、第2、及び第5~第7訓練ステップは、第3訓練ステップ及び第4訓練ステップによる敵対的学習の事前学習として実行されてよい。換言すると、学習処理部112は、第1、第2、及び第5~第7訓練ステップによる演算パラメータの値の調整が完了した後に、第3訓練ステップ及び第4訓練ステップによる演算パラメータの値の調整を交互に繰り返してもよい。
 また、第1、第2、及び第5~第7訓練ステップは個別に実行されてよい。換言すると、学習処理部112は、第1、第2、及び第5~第7訓練ステップそれぞれによる演算パラメータの値の調整を別々に実行してもよい。或いは、第1、第2、及び第5~第7訓練ステップの少なくともいずれかの組み合わせは同時に実行されてよい。例えば、第1訓練ステップ及び第2訓練ステップを同時に実行する場面を想定する。この場面では、学習処理部112は、訓練データ122を各符号器(51、52)に入力し、第2メタ識別器54及び推定器55それぞれから出力値を取得してよい。続いて、学習処理部112は、第2メタ識別器54の出力値とメタデータ123との誤差、及び推定器55の出力値と正解データ124との誤差を算出してもよい。そして、学習処理部112は、各誤差が小さくなるように、第1符号器51、第2符号器52、第2メタ識別器54及び推定器55の演算パラメータの値を調整してもよい。
 また、本実施形態において、上記第1~第7訓練ステップでは、訓練データ122と共にノイズ61が各符号器(51、52)に入力されてよい。その上で、上記各訓練が実行されてよい。なお、訓練データ122と共にノイズ61を入力する形態は、このような例に限定されなくてもよい。第1~第7訓練ステップの少なくともいずれかにおいて、ノイズ61の入力は省略されてよい。
 また、本実施形態において、第1、第2、第6訓練ステップでは、訓練データ122を第2符号器52に与えることで第2符号器52から第2特徴量として出力値が取得されてよい。そして、取得された出力値(第2特徴量)と共にノイズ62が第2メタ識別器54、推定器55、及び復号器56に入力されて、各訓練が実行されてよい。なお、第2特徴量と共にノイズ62を入力する形態は、このような例に限定されなくてもよい。第1、第2、及び第6訓練ステップのうちの少なくともいずれかにおいて、ノイズ62の入力が省略されてよい。
 更に、図5Dに示されるとおり、本実施形態において、データ取得部111は、学習処理部112が学習モデル5の機械学習を実施した後に、複数の学習データセット121の少なくともいずれかの訓練データ122を第1符号器51に与えることで、第1符号器51から第1特徴量としての出力値を取得してもよい。また、データ取得部111は、当該訓練データ122を第2符号器52にも与えることで、第2符号器52から第2特徴量としての出力値を取得してもよい。そして、データ取得部111は、第1符号器51から取得された出力値(第1特徴量)を復号器56に入力し、かつ第2符号器52から取得された出力値(第2特徴量)と共にノイズ63を復号器56に入力することで、復号器56から復号化データとして出力データを取得してよい。第2特徴量と共にノイズ63を入力する方法及びノイズ63の種類は、特に限定されなくてもよく、上記ノイズ62と同様であってよい。学習処理部112は、取得された出力データを新たな訓練データ192として使用して、学習モデル5の機械学習を再度実施してもよい。なお、学習データセット121と同様に、新たな訓練データ192には、メタデータ193、正解データ194、及び他の正解データ195が関連付けられてよい。メタデータ193、正解データ194、及び他の正解データ195はそれぞれ適宜取得されてよい。
 保存処理部113は、上記機械学習により構築された学習済みの学習モデル5の各器51~57の構造及び演算パラメータの値を示す情報を学習結果データ128として生成する。各器51~57の構造は、例えば、ニューラルネットワークにおける入力層から出力層までの層の数、各層の種類、各層に含まれるニューロンの数、隣接する層のニューロン同士の結合関係等により特定されてよい。システム内で各器51~57の構造が共通化される場合、この構造に関する情報は学習結果データ128から省略されてよい。保存処理部113は、生成された学習結果データ128を所定の記憶領域に保存する。
 <推定装置>
 次に、図6を用いて、本実施形態に係る推定装置2のソフトウェア構成の一例について説明する。図6は、本実施形態に係る推定装置2のソフトウェア構成の一例を模式的に例示する。
 推定装置2の制御部21は、記憶部22に記憶された推定プログラム82をRAMに展開する。そして、制御部21は、CPUにより、RAMに展開された推定プログラム82を解釈して、当該推定プログラム82に含まれる一連の命令群を実行することで、各構成要素を制御する。これにより、図6に示されるとおり、本実施形態に係る推定装置2は、データ取得部211、評価部212、推定部213、及び出力部214をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、推定装置2の各ソフトウェアモジュールは、上記学習装置1と同様に、制御部21(CPU)により実現される。
 データ取得部211は、推定タスクの実行対象となる対象データ221を取得する。本実施形態では、データ取得部211は、センサSから対象データ221を取得する。評価部212及び推定部213は、学習結果データ128を保持することで、学習済みの学習モデル5を備えている。推定部213は、学習装置1により訓練された第1符号器51、第2符号器52、及び推定器55を利用して、取得された対象データ221に含まれる特徴を推定してもよい。或いは、推定部213は、学習装置1により訓練された第1符号器51及び他の推定器57を利用して、取得された対象データ221に含まれる特徴を推定してもよい。出力部214は、特徴を推定した結果に関する情報を出力する。
 評価部212は、学習装置1により訓練された第2符号器52及び第2メタ識別器54を利用して、対象データ221の取得に関する属性を識別する。そして、評価部212は、当該識別の結果に基づいて、推定部213により特徴を推定した結果を採用するか否かを判定する。推定した結果を採用しないことは、推定部213による推定処理を実行した後に、当該推定の結果を破棄すること、及び推定処理を実行しないことを含んでよい。
 なお、推定装置2(評価部212及び推定部213)は、必ずしも学習済みの学習モデル5の全ての構成要素を保持しなければならない訳ではない。学習済みの学習モデル5において、推定装置2の利用しない部分は省略されてよい。この場合、推定装置2の保持する学習結果データ128からその部分に対応する情報が省略されてよい。
 <データ生成装置>
 次に、図7を用いて、本実施形態に係るデータ生成装置3のソフトウェア構成の一例について説明する。図7は、本実施形態に係るデータ生成装置3のソフトウェア構成の一例を模式的に例示する。
 データ生成装置3の制御部31は、記憶部32に記憶された生成プログラム83をRAMに展開する。そして、制御部31は、CPUにより、RAMに展開された生成プログラム83を解釈して、当該生成プログラム83に含まれる一連の命令群を実行することで、各構成要素を制御する。これにより、図7に示されるとおり、本実施形態に係るデータ生成装置3は、データ取得部311、生成部312、及び保存処理部313をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、データ生成装置3の各ソフトウェアモジュールは、上記学習装置1及び推定装置2と同様に、制御部31(CPU)により実現される。
 データ取得部311は、新たなデータを生成する元となる対象データ321を取得する。本実施形態では、データ取得部311は、センサSから対象データ321を取得する。生成部312は、学習結果データ128を保持することで、学習済みの学習モデル5を備えている。生成部312は、学習装置1により訓練された第1符号器51に対象データ321を与えることで第1符号器51から第1特徴量として出力値を取得する。そして、生成部312は、訓練された復号器56を利用して、第2符号器52から取得される出力値(第2特徴量)を与えずに、第1符号器51から取得された出力値(第1特徴量)から対象データ321を復号化することで、復号化データを生成する。保存処理部313は、生成された復号化データを新たなデータとして所定の記憶領域に保存する。所定の記憶領域は、例えば、制御部31内のRAM、記憶部32、記憶媒体93、外部記憶装置又はこれらの組み合わせであってよい。
 なお、データ生成装置3により生成される新たなデータは復号化データに限定されなくてもよい。データ生成装置3は、第1符号器51及び第2符号器52の少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方を生成してもよい。この場合、保存処理部313は、生成された第1特徴量及び第2特徴量の少なくとも一方を新たなデータとして所定の記憶領域に保存してもよい。
 また、データ生成装置3(生成部312)は、必ずしも学習済みの学習モデル5の全ての構成要素を保持しなければならない訳ではない。学習済みの学習モデル5において、データ生成装置3の利用しない部分は省略されてよい。この場合、データ生成装置3の保持する学習結果データ128からその部分に対応する情報が省略されてよい。
 <その他>
 学習装置1、推定装置2及びデータ生成装置3の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、学習装置1、推定装置2及びデータ生成装置3の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、学習装置1、推定装置2及びデータ生成装置3それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
 §3 動作例
 [学習装置]
 次に、図8を用いて、学習装置1の動作例について説明する。図8は、本実施形態に係る学習装置1の処理手順の一例を示すフローチャートである。以下で説明する処理手順は、学習方法の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
 (ステップS101)
 ステップS101では、制御部11は、データ取得部111として動作し、複数の学習データセット121を取得する。本実施形態では、制御部11は、訓練データ122、メタデータ123、正解データ124、及び他の正解データ125の組み合わせによりそれぞれ構成される複数の学習データセット121を取得する。
 各学習データセット121を取得する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、センサSを用意し、用意したセンサSにより様々な条件で観測を行うことで生成されるセンシングデータを訓練データ122として取得する。観測の対象は、学習モデル5に習得させる推定タスクに応じて適宜選択されてよい。取得された訓練データ122に対して、メタデータ123、正解データ124、及び他の正解データ125を適宜取得する。
 メタデータ123は、オペレータの入力により与えられてもよい。或いは、メタデータ123は、センサSの利用形態、仕様、観測環境等を示す参照情報から得られてもよい。また、正解データ124、及び他の正解データ125は、オペレータの入力により与えられてもよい。或いは、正解データ124、及び他の正解データ125は、学習済みの推定器により訓練データ122に含まれる特徴を推定した結果に基づいて与えられてもよい。訓練データ122に対して、取得されたメタデータ123、正解データ124、及び他の正解データ125を関連付ける。これにより、各学習データセット121を生成することができる。
 各学習データセット121は、コンピュータの動作により自動的に生成されてもよいし、オペレータの操作により手動的に生成されてもよい。また、各学習データセット121の生成は、学習装置1により行われてもよいし、学習装置1以外の他のコンピュータにより行われてもよい。各学習データセット121を学習装置1が生成する場合、制御部11は、自動的に又はオペレータの入力装置14を介した操作により手動的に上記一連の処理を実行することで、複数の学習データセット121を取得する。一方、各学習データセット121を他のコンピュータが生成する場合、制御部11は、例えば、ネットワーク、記憶媒体91等を介して、他のコンピュータにより生成された複数の学習データセット121を取得する。複数の学習データセット121のうち一部の学習データセットが学習装置1により生成され、その他の学習データセットが1又は複数の他のコンピュータにより生成されてもよい。
 なお、複数の学習データセット121に含まれる少なくとも1つ以上の第1の学習データセット、及び少なくとも1つ以上の第2の学習データセットは、それぞれのメタデータ123により示される属性が相違するように異なるドメインから取得されてよい。異なるドメインとは、訓練データ122の取得に関する属性が相違することであり、メタデータ123が複数の属性を示す場合には、少なくとも一部の属性が相違することである。ドメインは、例えば、データを取得する条件等のデータの取得に関する属性を規定する。一例として、センサSがカメラである場合、カメラの向き、カメラの解像度、環境の明るさ、撮影対象等の撮影条件が異なれば、訓練データ122の取得に関する属性が相違する。この場合、それぞれの撮影条件が異なるドメインの一例である。
 取得される学習データセット121の件数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。複数の学習データセット121を取得すると、制御部11は、次のステップS102に処理を進める。
 (ステップS102)
 ステップS102では、制御部11は、学習処理部112として動作し、取得された複数の学習データセット121を使用して、学習モデル5の機械学習を実施する。本実施形態では、学習モデル5は、第1符号器51、第2符号器52、第1メタ識別器53、第2メタ識別器54、推定器55、復号器56及び他の推定器57を含む。制御部11は、第1~第7訓練ステップにより、学習モデル5の各器51~57を訓練する。各訓練ステップの処理順序は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
 <機械学習>
 図9を更に用いて、ステップS102における機械学習の処理の一例を詳細に説明する。図9は、本実施形態に係る学習装置1による機械学習の処理手順の一例を例示するフローチャートである。本実施形態に係るステップS102の処理は、以下のステップS201~S208の処理を含む。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。
 ステップS201を実行する前に、制御部11は、機械学習の処理対象となる学習モデル5を用意する。用意する学習モデル5の各器51~57の構造、及び演算パラメータの初期値は、テンプレートにより与えられてもよいし、オペレータの入力により与えられてもよい。テンプレートは、ニューラルネットワークの構造に関する情報、及びニューラルネットワークの演算パラメータの初期値に関する情報を含んでよい。各器51~57の構造は、例えば、ニューラルネットワークにおける入力層から出力層までの層の数、各層の種類、各層に含まれるニューロンの数、隣接する層のニューロン同士の結合関係等により特定されてよい。再学習を行う場合、制御部11は、過去の機械学習により得られた学習結果データに基づいて、処理対象となる学習モデル5を用意してもよい。
 (ステップS201)
 ステップS201では、制御部11は、各学習データセット121について、訓練データ122を第2符号器52に与えることで第2メタ識別器54から得られる識別の結果がメタデータ123に適合するように、第2符号器52及び第2メタ識別器54を訓練する。ステップS201は、第1訓練ステップの一例である。本実施形態では、制御部11は、訓練データ122を入力データとして利用し、メタデータ123を教師データとして利用して、第2符号器52及び第2メタ識別器54を構成するニューラルネットワークの学習処理を実行する。この学習処理には、バッチ勾配降下法、確率的勾配降下法、ミニバッチ勾配降下法等が用いられてよい。
 一例として、第1のステップでは、制御部11は、各学習データセット121について、訓練データ122を第2符号器52に入力し、第2符号器52及び第2メタ識別器54の演算処理を実行する。すなわち、制御部11は、訓練データ122を第2符号器52の入力層521に入力し、入力側から順に各層(521~523、541~543)に含まれる各ニューロンの発火判定を行う。この演算処理により、制御部11は、第2メタ識別器54の出力層543から、訓練データ122の取得に関する属性を第2特徴量から識別した結果に対応する出力値を取得する。
 第2のステップでは、制御部11は、出力層543から取得された出力値とメタデータ123との誤差を損失関数に基づいて算出する。損失関数には、平均二乗誤差、交差エントロピー誤差等の公知の損失関数が用いられてよい。第3のステップでは、制御部11は、算出された誤差の小さくなる方向に当該誤差の勾配を算出し、誤差逆伝播(Back propagation)法により、算出された勾配を逆伝播することで、各層(521~523、541~543)に含まれる演算パラメータ(例えば、各ニューロン間の結合の重み、各ニューロンの閾値等)の誤差を算出する。第4のステップでは、制御部11は、算出された各誤差に基づいて、演算パラメータの値を更新する。
 制御部11は、上記第1~第4のステップを繰り返すことで、各学習データセット121について、出力層543から出力される出力値とメタデータ123との誤差が小さくなるように、第2符号器52及び第2メタ識別器54の演算パラメータの値を調整する。繰り返す回数は適宜決定されてよい。例えば、演算パラメータの値の調整を繰り返す規定回数が設定されていてもよい。規定回数は、例えば、設定値により与えられてもよいし、オペレータの指定により与えられてもよい。この場合、制御部11は、繰り返し回数が規定回数に到達するまで、上記第1~第4のステップを繰り返す。また、例えば、誤差の和が閾値以下になるまで、制御部11は、上記第1~第4のステップを繰り返してもよい。
 この機械学習の結果、各学習データセット121について、訓練データ122を第2符号器52に入力すると、メタデータ123に適合する出力値が第2メタ識別器54から出力されるように訓練された第2符号器52及び第2メタ識別器54を構築することができる。この「適合する」ことは、閾値等により許容可能な差異が、出力層の出力値と教師データとの間で生じることを含んでもよい。ステップS201の機械学習により、第2符号器52は、メタデータ123により示される訓練データ122の取得に関する属性に対応する成分を第2特徴量が含むように訓練され得る。第2符号器52及び第2メタ識別器54の訓練が完了すると、制御部11は、次のステップS202に処理を進める。
 (ステップS202)
 ステップS202では、制御部11は、各学習データセット121について、訓練データ122を第1符号器51及び第2符号器52に与えることで推定器55から得られる推定の結果が正解データ124に適合するように、第1符号器51、第2符号器52及び推定器55を訓練する。ステップS202は、第2訓練ステップの一例である。本実施形態では、制御部11は、訓練データ122を入力データとして利用し、正解データ124を教師データとして利用して、第1符号器51、第2符号器52及び推定器55を構成するニューラルネットワークの学習処理を実行する。この学習処理において、各符号器(51、52)及び推定器55の演算パラメータの値を調整する方法は、上記ステップS201と同様であってよい。
 一例として、第1のステップでは、制御部11は、各学習データセット121について、訓練データ122を各符号器(51、52)の入力層(511、512)に入力し、第1符号器51、第2符号器52及び推定器55の演算処理を実行する。この演算処理により、制御部11は、推定器55の出力層553から、訓練データ122に含まれる特徴を第1特徴量及び第2特徴量から推定した結果に対応する出力値を取得する。
 第2のステップでは、制御部11は、出力層553から取得された出力値と正解データ124との誤差を損失関数に基づいて算出する。第3のステップでは、制御部11は、算出された誤差の小さくなる方向に当該誤差の勾配を算出し、誤差逆伝播法により、算出された勾配を逆伝播することで、各層(511~513、521~523、551~553)に含まれる演算パラメータの誤差を算出する。第4のステップでは、制御部11は、算出された各誤差に基づいて、演算パラメータの値を更新する。
 制御部11は、上記第1~第4のステップを繰り返すことで、各学習データセット121について、出力層553から出力される出力値と正解データ124との誤差が小さくなるように、第1符号器51、第2符号器52及び推定器55の演算パラメータの値を調整する。制御部11は、繰り返し回数が規定回数に到達するまで、上記第1~第4のステップを繰り返してもよい。或いは、制御部11は、誤差の和が閾値以下になるまで、上記第1~第4のステップを繰り返してもよい。
 この機械学習の結果、各学習データセット121について、訓練データ122を各符号器(51、52)に入力すると、正解データ124に適合する出力値が推定器55から出力されるように訓練された第1符号器51、第2符号器52及び推定器55を構築することができる。第1符号器51、第2符号器52及び推定器55の訓練が完了すると、制御部11は、次のステップS203に処理を進める。
 (ステップS203)
 ステップS203では、制御部11は、各学習データセット121について、訓練データ122を第1符号器51及び第2符号器52に与えることで復号器56により得られる復号化データが訓練データ122に適合するように、第1符号器51、第2符号器52、及び復号器56を訓練する。ステップS203は、第6訓練ステップの一例である。本実施形態では、制御部11は、訓練データ122を入力データ及び教師データとして利用して、第1符号器51、第2符号器52及び復号器56を構成するニューラルネットワークの学習処理を実行する。この学習処理において、各符号器(51、52)及び復号器56の演算パラメータの値を調整する方法は、上記ステップS201等と同様であってよい。
 一例として、第1のステップでは、制御部11は、各学習データセット121について、訓練データ122を各符号器(51、52)の入力層(511、512)に入力し、第1符号器51、第2符号器52及び復号器56の演算処理を実行する。この演算処理により、制御部11は、復号器56の出力層563から、第1特徴量及び第2特徴量から訓練データ122を復号化した結果に対応する出力データを取得する。
 第2のステップでは、制御部11は、出力層563から取得された出力データと訓練データ122との誤差を損失関数に基づいて算出する。第3のステップでは、制御部11は、算出された誤差の小さくなる方向に当該誤差の勾配を算出し、誤差逆伝播法により、算出された勾配を逆伝播することで、各層(511~513、521~523、561~563)に含まれる演算パラメータの誤差を算出する。第4のステップでは、制御部11は、算出された各誤差に基づいて、演算パラメータの値を更新する。
 制御部11は、上記第1~第4のステップを繰り返すことで、各学習データセット121について、出力層563から出力される出力データと訓練データ122との誤差が小さくなるように、第1符号器51、第2符号器52及び復号器56の演算パラメータの値を調整する。制御部11は、繰り返し回数が規定回数に到達するまで、上記第1~第4のステップを繰り返してもよい。或いは、制御部11は、誤差の和が閾値以下になるまで、上記第1~第4のステップを繰り返してもよい。
 この機械学習の結果、各学習データセット121について、訓練データ122を各符号器(51、52)に入力すると、訓練データ122に適合する復号化データが復号器56から出力されるように訓練された第1符号器51、第2符号器52及び復号器56を構築することができる。第1符号器51、第2符号器52及び復号器56の訓練が完了すると、制御部11は、次のステップS204に処理を進める。
 (ステップS204)
 ステップS204では、制御部11は、各学習データセット121について、訓練データ122を第1符号器51に与えることで他の推定器57から得られる推定の結果が正解データ124又は他の正解データ125に適合するように、第1符号器51及び他の推定器57を訓練する。ステップS204は、第7訓練ステップの一例である。本実施形態では、制御部11は、訓練データ122を入力データとして利用し、正解データ124又は他の正解データ125を教師データとして利用して、第1符号器51及び他の推定器57を構成するニューラルネットワークの学習処理を実行する。この学習処理において、第1符号器51及び他の推定器57の演算パラメータの値を調整する方法は、上記ステップS201等と同様であってよい。
 一例として、第1のステップでは、制御部11は、各学習データセット121について、訓練データ122を第1符号器51の入力層511に入力し、第1符号器51及び他の推定器57の演算処理を実行する。この演算処理により、制御部11は、他の推定器57の出力層573から、訓練データ122に含まれる特徴を第1特徴量から推定した結果に対応する出力値を取得する。
 第2のステップでは、制御部11は、出力層573から取得された出力値と正解データ124又は他の正解データ125との誤差を損失関数に基づいて算出する。第3のステップでは、制御部11は、算出された誤差の小さくなる方向に当該誤差の勾配を算出し、誤差逆伝播法により、算出された勾配を逆伝播することで、各層(511~513、571~573)に含まれる演算パラメータの誤差を算出する。第4のステップでは、制御部11は、算出された各誤差に基づいて、演算パラメータの値を更新する。
 制御部11は、上記第1~第4のステップを繰り返すことで、各学習データセット121について、出力層573から出力される出力値と正解データ124又は他の正解データ125との誤差が小さくなるように、第1符号器51及び他の推定器57の演算パラメータの値を調整する。制御部11は、繰り返し回数が規定回数に到達するまで、上記第1~第4のステップを繰り返してもよい。或いは、制御部11は、誤差の和が閾値以下になるまで、上記第1~第4のステップを繰り返してもよい。
 この機械学習の結果、各学習データセット121について、訓練データ122を第1符号器51に入力すると、正解データ124又は他の正解データ125に適合する出力値が他の推定器57から出力されるように訓練された第1符号器51及び他の推定器57を構築することができる。第1符号器51及び他の推定器57の訓練が完了すると、制御部11は、次のステップS205に処理を進める。
 (ステップS205)
 ステップS205では、制御部11は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1符号器51から得られる出力値(第1特徴量)と訓練データ122を第2符号器52に与えることで第2符号器52から得られる出力値(第2特徴量)との相互情報量が少なくなるように、第1符号器51及び第2符号器52を訓練する。ステップS205は、第5訓練ステップの一例である。本実施形態では、制御部11は、訓練データ122を入力データとして利用して、相互情報量が小さくなるように(例えば、相互情報量が0となることを教師データとして利用して)、第1符号器51及び第2符号器52を構成するニューラルネットワークの学習処理を実行する。この学習処理において、第1符号器51及び第2符号器52の少なくともいずれか一方の演算パラメータの値を調整する方法は、上記ステップS201等と基本的には同様である。
 一例として、第1のステップでは、制御部11は、各学習データセット121について、訓練データ122を各符号器(51、52)の入力層(511、521)に入力し、各符号器(51、52)の演算処理を実行する。この演算処理には、制御部11は、各符号器(51、52)の出力層(513、523)から、訓練データ122を各特徴量に変換した結果に対応する出力値を取得する。
 第2のステップでは、制御部11は、第1符号器51及び第2符号器52から得られた出力値(第1特徴量及び第2特徴量)間の相互情報量を算出し、損失関数に基づいて相互情報量から誤差を導出する。相互情報量の計算手法には公知の方法が採用されてよい。また、損失関数が絶対値を算出するように定義されることで、相互情報量の値がそのまま誤差として利用されてもよい。或いは、損失関数は、二乗したり、対数をとったりする等の所定の演算を相互情報量の値に適用するように定義されてもよい。第3のステップでは、制御部11は、算出された誤差の小さくなる方向に当該誤差の勾配を算出し、誤差逆伝播法により、第1符号器51及び第2符号器52の少なくとも一方に算出された勾配を逆伝播する。これにより、制御部11は、第1符号器51の各層511~513及び第2符号器52の各層521~523の少なくとも一方に含まれる演算パラメータの誤差を算出する。第4のステップでは、制御部11は、算出された各誤差に基づいて、演算パラメータの値を更新する。
 制御部11は、上記第1~第4のステップを繰り返すことで、各学習データセット121について、第1符号器51の出力層513から出力される出力値と第2符号器52の出力層523から出力される出力値との相互情報量が少なくなるように、第1符号器51及び第2符号器52の少なくとも一方の演算パラメータの値を調整する。制御部11は、繰り返し回数が規定回数に到達するまで、上記第1~第4のステップを繰り返してもよい。或いは、制御部11は、誤差の和が閾値以下になるまで、上記第1~第4のステップを繰り返してもよい。
 この機械学習の結果、各学習データセット121について、訓練データ122を各符号器(51、52)に入力すると、相互情報量の少ない出力値が各符号器(51、52)から出力されるように訓練された各符号器(51、52)を構築することができる。各符号器(51、52)の訓練が完了すると、制御部11は、次のステップS206に処理を進める。
 (ステップS206)
 ステップS206では、制御部11は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1メタ識別器53から得られる識別の結果がメタデータ123に適合するように、第1メタ識別器53を訓練する。ステップS206は、第3訓練ステップの一例である。このステップS206では、第1メタ識別器53の演算パラメータの値は調整されるのに対して、第1符号器51の演算パラメータの値は固定される。本実施形態では、制御部11は、訓練データ122を入力データとして利用し、メタデータ123を教師データとして利用して、第1メタ識別器53を構成するニューラルネットワークの学習処理を実行する。この学習処理において、第1メタ識別器53の演算パラメータの値を調整する方法は、第1符号器51の演算パラメータの値を固定する点を除き、ステップS201等と同様であってよい。
 一例として、第1のステップでは、制御部11は、各学習データセット121について、訓練データ122を第1符号器51の入力層511に入力し、第1符号器51及び第1メタ識別器53の演算処理を実行する。この演算処理により、制御部11は、第1メタ識別器53の出力層533から、訓練データ122の取得に関する属性を第1特徴量から識別した結果に対応する出力値を取得する。
 第2のステップでは、制御部11は、出力層533から出力された出力値とメタデータ123との誤差を損失関数に基づいて算出する。第3のステップでは、制御部11は、算出された誤差の小さくなる方向に当該誤差の勾配を算出し、誤差逆伝播法により、算出された勾配を逆伝播する。制御部11は、この勾配の逆伝播を、第1メタ識別器53の入力層531までで停止する。これにより、制御部11は、第1メタ識別器53の各層531~533に含まれる演算パラメータの誤差を算出する。第4のステップでは、制御部11は、算出された各誤差に基づいて、第1メタ識別器53の演算パラメータの値を更新する。
 制御部11は、上記第1~第4のステップを繰り返すことで、各学習データセット121について、出力層533から出力される出力値とメタデータ123との誤差が小さくなるように、第1メタ識別器53の演算パラメータの値を調節する。制御部11は、繰り返し回数が規定回数に到達するまで、上記第1~第4のステップを繰り返してもよい。或いは、制御部11は、誤差の和が閾値以下になるまで、上記第1~第4のステップを繰り返してもよい。
 この機械学習の結果、各学習データセット121について、訓練データ122を第1符号器51に入力すると、メタデータ123に適合する出力値が第1メタ識別器53から出力されるように訓練された第1メタ識別器53を構築することができる。第1メタ識別器53の訓練が完了すると、制御部11は、次のステップS207に処理を進める。
 (ステップS207)
 ステップS207では、制御部11は、各学習データセット121について、訓練データ122を第1符号器51に与えることで第1メタ識別器53から得られる識別の結果がメタデータ123に適合しないように、第1符号器51を訓練する。ステップS207は、第4訓練ステップの一例である。このステップS207では、第1符号器51の演算パラメータの値は調整されるのに対して、第1メタ識別器53の演算パラメータの値は固定される。本実施形態では、制御部11は、訓練データ122を入力データとして利用し、メタデータ123に適合しないように(例えば、ダミーメタデータ129を教師データとして利用して)、第1符号器51を構成するニューラルネットワークの学習処理を実行する。この学習処理において、第1符号器51の演算パラメータの値を調整する方法は、第1メタ識別器53の演算パラメータの値を固定する点を除き、ステップS201等と同様であってよい。
 一例として、第1のステップでは、制御部11は、各学習データセット121について、訓練データ122を第1符号器51の入力層511に入力し、第1符号器51及び第1メタ識別器53の演算処理を実行する。この演算処理により、制御部11は、第1メタ識別器53の出力層533から、訓練データ122の取得に関する属性を第1特徴量から識別した結果に対応する出力値を取得する。
 第2のステップでは、制御部11は、各学習データセット121について、メタデータ123に対応するダミーメタデータ129であって、対応するメタデータ123とは異なる値で構成されたダミーメタデータ129を取得する。制御部11は、出力層533から出力された出力値と取得されたダミーメタデータ129との誤差を損失関数に基づいて算出する。
 ダミーメタデータ129は、第1メタ識別器53から得られる識別の結果がメタデータ123に適合しないように第1符号器51を訓練することが可能なように適宜与えられてよい。例えば、ダミーメタデータ129は、対応する学習データセット121とは異なる他の学習データセット121のメタデータ123により構成されてよい。すなわち、制御部11は、ダミーメタデータ129を取得する対象となる学習データセット121とは別の他の学習データセット121を選択し、選択された他の学習データセット121のメタデータ123を対象の学習データセット121のダミーメタデータ129として利用してよい。
 対象の学習データセット121について、ダミーメタデータ129として利用するメタデータ123を取得する他の学習データセット121を選択する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、複数の学習データセット121から他の学習データセット121をランダムに選択し、選択された学習データセット121のメタデータ123を対象の学習データセット121のダミーメタデータ129として利用してもよい。また、例えば、制御部11は、学習データセット121における訓練データ122とメタデータ123との対応関係を任意の方向にずらすことで、対象の学習データセット121に割り当てられた他の学習データセット121のメタデータ123をダミーメタデータ129として利用してもよい。また、例えば、制御部11は、複数の学習データセット121の中から1つの学習データセット121を選択し、選択された学習データセット121のメタデータ123を全ての学習データセット121のダミーメタデータ129として利用してもよい。この方法によれば、ダミーメタデータ129を生成する計算量を抑えることができ、本ステップS207の処理コストを低減することができる。
 なお、ダミーメタデータ129を生成する方法は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。上記他の学習データセット121から選択する方法の他、例えば、制御部11は、メタデータ123の値を反転することで、ダミーメタデータ129を生成してもよい。また、例えば、制御部11は、メタデータ123の値とは相違するランダムな値(例えば、乱数)により構成されるダミーメタデータ129を生成してもよい。複数の学習データセット121のうちダミーメタデータ129とメタデータ123とが一致する学習データセット121が存在してもよい。この場合、制御部11は、当該学習データセット121を訓練にそのまま利用してもよいし、当該学習データセット121のダミーメタデータ129を適宜変更してもよい。
 第3のステップでは、制御部11は、算出された誤差の小さくなる方向に当該誤差の勾配を算出し、誤差逆伝播法により、第1メタ識別器53の出力層533から第1符号器51の入力層511まで、算出された勾配を逆伝播する。この過程で、制御部11は、第1メタ識別器53に含まれる演算パラメータの誤差の算出については省略し、第1符号器51に含まれる演算パラメータの誤差を算出する。第4のステップでは、制御部11は、算出された各誤差に基づいて、第1符号器51の演算パラメータの値を更新する。
 制御部11は、上記第1~第4のステップを繰り返すことで、各学習データセット121について、出力層533から出力される出力値とダミーメタデータ129との誤差が小さくなるように、第1符号器51の演算パラメータの値を調節する。制御部11は、繰り返し回数が規定回数に到達するまで、上記第1~第4のステップを繰り返してもよい。或いは、制御部11は、誤差の和が閾値以下になるまで、上記第1~第4のステップを繰り返してもよい。
 この機械学習の結果、各学習データセット121について、訓練データ122を第1符号器51に入力すると、ダミーメタデータ129に適合する出力値が第1メタ識別器53から出力されるように訓練された第1符号器51を構築することができる。すなわち、このダミーメタデータ129を利用した機械学習により、第1符号器51は、第1メタ識別器53から得られる識別の結果がメタデータ123に適合しないように訓練される。このダミーメタデータ129を利用した方法によれば、制御部11は、本ステップS207の処理を上記ステップS201等の処理と同様に実行することができる。そのため、本ステップS207の処理を簡易化することができる。本ステップS207の機械学習により、第1符号器51は、各学習データセット121の訓練データ122の取得に関する属性以外の情報、例えば、訓練データ122を取得するドメインに共通に現れる情報に対応する成分を第1特徴量が含むように訓練され得る。第1符号器51の訓練が完了すると、制御部11は、次のステップS208に処理を進める。
 なお、第1メタ識別器53から得られる識別の結果がメタデータ123に適合しなくなるように第1符号器51を訓練する方法は、このダミーメタデータ129を利用する方法に限られなくてもよい。例えば、上記第2のステップにおいて、制御部11は、各学習データセット121について、出力層533から出力された出力値とメタデータ123との誤差を算出してもよい。そして、第3のステップでは、制御部11は、算出された誤差の大きくなる方向に当該誤差の勾配を算出し、誤差逆伝播法により、算出された勾配を第1符号器51の入力層511まで逆伝播してもよい。この過程で、制御部11は、第1符号器51に含まれる演算パラメータの誤差を算出してよい。そして、第4のステップでは、制御部11は、算出された各誤差に基づいて、第1符号器51の演算パラメータの値を更新してもよい。この方法によっても、制御部11は、第1メタ識別器53から得られる識別の結果がメタデータ123に適合しなくなるように第1符号器51を訓練することができる。
 (ステップS208)
 ステップS208では、制御部11は、ステップS201~ステップS207の処理を繰り返すか否かを判定する。処理を繰り返す基準は、実施の形態に応じて適宜決定されてよい。例えば、処理を繰り返す規定回数が設定されていてもよい。規定回数は、例えば、設定値により与えられてもよいし、オペレータの指定により与えられてもよい。この場合、制御部11は、ステップS201~ステップS207の処理を実行した回数が規定回数に到達したか否かを判定する。実行回数が規定回数に到達していないと判定した場合、制御部11は、ステップS201に処理を戻し、ステップS201~ステップS207の処理を繰り返す。本実施形態では、このステップS201~ステップS207の処理が繰り返される過程で、ステップS206及びステップS207が交互に繰り返し実行される。一方、実行回数が規定回数に到達していると判定した場合には、制御部11は、本実施形態に係る機械学習の処理を終了し、次のステップS103に処理を進める。
 (機械学習の結果)
 以上の一連の訓練ステップのうちステップS201により、訓練データ122の取得に関する属性を第2メタ識別器54が適切に識別可能となるように、学習済みの第2符号器52により得られる第2特徴量には、当該取得に関する属性に対応する成分が含まれるようになる。また、ステップS202により、学習済みの第1符号器51及び第2符号器52により得られる第1特徴量及び第2特徴量には、訓練データ122に含まれる特徴(すなわち、推定タスクの正解)に対応する成分が含まれるようになる。更に、本実施形態では、ステップS206及びステップS207の処理を交互に実行することにより、第1符号器51及び第1メタ識別器53の敵対的学習が実施される。
 ステップS206では、第1メタ識別器53の出力値がメタデータ123に適合するように第1メタ識別器53の演算パラメータの値は調整されるのに対して、第1符号器51の演算パラメータの値は固定される。一方、ステップS207では、第1メタ識別器53の出力値がメタデータ123に適合しないように第1符号器51の演算パラメータの値は調整されるのに対して、第1メタ識別器53の演算パラメータの値は固定される。すなわち、ステップS206では、その段階での第1符号器51の、メタデータ123に対応する成分が含まれないように訓練データ122を第1特徴量に変換する能力に対して、そのような第1特徴量からメタデータ123を識別する第1メタ識別器53の能力の向上が図られる。これに対して、ステップS207では、その段階での第1メタ識別器53のメタ識別の能力を基準として、メタデータ123に対応する成分が含まれないように訓練データ122を第1特徴量に変換する第1符号器51の能力の向上が図られる。
 つまり、ステップS206及びステップS207の処理を交互に実行することで、第1符号器51及び第1メタ識別器53それぞれの上記能力が向上する。これにより、第1メタ識別器53の識別性能が向上するのに対応して、この第1メタ識別器53による識別が失敗するように、学習済みの第1符号器51により得られる第1特徴量には、訓練データ122の取得に関する属性に対応する成分が含まれないようになる。第1特徴量には、メタデータ123以外の成分、例えば、各学習データセット121の訓練データ122を取得するドメインに共通に現れる情報に対応する成分が含まれるようになっていく。
 したがって、本実施形態では、ステップS201、ステップS202、ステップS206、及びステップS207の機械学習の結果、学習済みの第2符号器52の符号化により得られる第2特徴量には、メタデータ123に対応する成分が含まれやすくなる。これに対して、学習済みの第1符号器51により得られる第1特徴量には、訓練データ122に含まれる特徴に関する、メタデータ123以外の情報に対応する成分が含まれやすくなる。推定器55は、この両方の特徴量から訓練データ122に含まれる特徴を推定するように訓練される。よって、学習済みの第1符号器51、第2符号器52、及び推定器55を利用することにより、対象データを取得するドメインに特有の情報、及び共通の情報の両方に基づいて、対象データに含まれる特徴を推定するタスクを実行することができる。そのため、対象データを取得するドメインに特有の情報が推定タスクに有益であるケースで、対象データに含まれる特徴を推定する精度を高めることができる。
 また、対象データの取得に関する属性に特有の情報が推定タスクの精度に悪影響を及ぼす場合には、学習済みの第2符号器52により得られる第2特徴量は利用せずに、学習済みの第1符号器51により得られる第1特徴量に基づいて、対象データに含まれる特徴を推定することができる。本実施形態では、学習済みの第1符号器51及び他の推定器57を利用することで、対象データの取得に関する属性に対応する成分の影響を除外して、当該対象データに含まれる特徴を推定することができる。よって、本実施形態によれば、対象データの取得に関する属性の情報が推定タスクの精度に悪影響を及ぼすケースにおいても、対象データに含まれる特徴を推定する精度を高めることができる。
 また、ステップS203の機械学習により、各符号器(51、52)と共に復号器56を訓練することで、第1特徴量及び第2特徴量から入力データを復元可能であることすることができる。すなわち、第1特徴量及び第2特徴量において、入力データに関する情報の欠損がないことを保証することができる。したがって、本実施形態によれば、入力データを特徴量に変換する過程で情報の欠損を抑えることができるため、推定器55及び他の推定器57それぞれによる推定タスクの精度を高めることができる。
 また、ステップS204の機械学習により、正解データ124又は他の正解データ125により示される特徴の推定に利用可能な情報に対応する成分が第1特徴量に含まれることを保証することができる。これにより、第1特徴量が推定タスクに価値のない情報になるのを防止することができ、第1特徴量に基づく推定タスクの精度を高めることができる。
 また、ステップS205の機械学習により、第1特徴量及び第2特徴量の間の相互情報量が少なくなる。その結果、メタデータ123に対応する成分は第2特徴量により含まれやすくなるのに対して、メタデータ123以外の情報に対応する成分が、第1特徴量に含まれやすく、かつ第2特徴量に含まれ難くすることができる。つまり、メタデータ123に対応する成分及びそれ以外の情報に対応する成分を第2特徴量及び第1特徴量に適切に分配することができる。よって、本実施形態によれば、メタデータ123以外の有用な情報が第1特徴量に含まれやすいようにし、これにより、第1特徴量に基づく推定タスクの精度を高めることができる。
 (その他)
 学習モデル5の機械学習の処理手順は、上記の例に限定されなくてもよく、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
 (A)交互に繰り返す手順
 例えば、上記実施形態では、制御部11は、ステップS201~ステップS207の一連の処理を繰り返し実行する過程で、ステップS206及びステップS207の処理を交互に繰り返し実行している。しかしながら、ステップS206及びステップS207の処理を交互に繰り返し実行する方法は、このような例に限定されなくてもよい。例えば、制御部11は、ステップS201~ステップS205の処理を事前学習として実行してもよい。この場合、ステップS201~ステップS205の処理による演算パラメータの値の調整が完了した後に、制御部11は、ステップS206及びステップS207による演算パラメータの値の調整を交互に繰り返してもよい。
 (B)更新処理の手順
 また、上記実施形態では、ステップS201~ステップS205の処理は個別に実行されている。しかしながら、ステップS201~ステップS205の処理により演算パラメータの値を調整する方法は、このような例に限定されなくてもよい。例えば、制御部11は、ステップS201~ステップS205の少なくともいずれかの組み合わせを同時に実行してもよい。例えば、ステップS201及びステップS202の処理を同時に実行する場面を想定する。この場面では、第1のステップにおいて、制御部11は、訓練データ122を各符号器(51、52)に入力し、第2メタ識別器54及び推定器55それぞれから出力値を取得してよい。第2のステップにおいて、制御部11は、第2メタ識別器54の出力値とメタデータ123との誤差、及び推定器55の出力値と正解データ124との誤差を算出してもよい。第3のステップにおいて、制御部11は、各誤差の勾配を逆伝播し、第1符号器51、第2符号器52、第2メタ識別器54及び推定器55に含まれる演算パラメータの誤差を算出してもよい。そして、第4のステップにおいて、制御部11は、算出された各誤差に基づいて、各演算パラメータの値を更新してもよい。
 (C)訓練データに対するノイズの追加
 また、本実施形態において、上記ステップS201~ステップS207では、制御部11は、訓練データ122と共にノイズ61を各符号器(51、52)に入力してもよい。その上で、制御部11は、各ステップS201~ステップS207の処理を実行してもよい。
 訓練データ122と共にノイズ61を入力する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、訓練データ122にノイズ61を付与してよい。そして、制御部11は、ノイズ61の付与された訓練データ122を各符号器(51、52)に入力してもよい。
 また、例えば、各符号器(51、52)の入力は、訓練データ122の第1のチャンネルに加えて、ノイズ61の第2のチャンネルを備えてよい。本実施形態では、各符号器(51、52)の入力層(511、521)が、訓練データ122を入力するための第1のニューロン(ノード)、及びノイズ61を入力するための第2のニューロン(ノード)を備えてよい。第1のニューロンが第1のチャンネルの一例であり、第2のニューロンが第2のチャンネルの一例である。この場合、制御部11は、各符号器(51、52)の第1のチャンネルに訓練データ122を入力し、かつ第2のチャンネルにノイズ61を入力することで、訓練データ122と共にノイズ61を入力することができる。
 ノイズ61の種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。ノイズ61は、例えば、ランダムなノイズ等であってよい。なお、訓練データ122と共にノイズ61を入力する形態は、このような例に限定されなくてもよい。ステップS201~ステップS207のうちの少なくともいずれかにおいて、ノイズ61の入力は省略されてよい。
 複数の学習データセット121のうちの一部の訓練データ122と他の訓練データ122とのランダム性が極めて相違する場合、又は他の訓練データ122に比べて一部の訓練データ122に大きな欠損が存在する場合、その相違の特性に対応する成分を第1特徴量に入らないようにするのは困難である。すなわち、その相違の特性を第1符号器51に学習させないようにするのは困難である。そのため、これらの場合には、第1メタ識別器53がその相違の特性から取得の属性を識別することができてしまい、ステップS207において、第1メタ識別器53による識別が失敗するように第1符号器51を訓練することが困難となってしまう可能性がある。これに対して、訓練データ122と共にノイズ61を入力することで、その相違の特性を埋めることができ、これによって、ステップS207の処理を適切に完了することができるようになる。
 (D)第2特徴量に対するノイズの追加
 また、本実施形態において、ステップS201~ステップS203では、制御部11は、訓練データ122を第2符号器52に与えることで第2符号器52から出力値(第2特徴量)を取得してもよい。そして、制御部11は、取得された出力値(第2特徴量)と共にノイズ62を第2メタ識別器54、推定器55、及び復号器56に入力し、各ステップS201~ステップS203による訓練を実行してもよい。
 第2特徴量と共にノイズ62を入力する方法は、特に限定されなくてもよく、上記ノイズ61と同様に、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、第2符号器52の出力値(第2特徴量)にノイズ62を付与してよい。そして、制御部11は、ノイズ62の付与された第2特徴量を第2メタ識別器54、推定器55、及び復号器56それぞれに入力してもよい。
 また、例えば、第2メタ識別器54、推定器55、及び復号器56の入力は、第2特徴量の第1のチャンネルに加えて、ノイズ62のチャンネルを備えてもよい。本実施形態では、第2メタ識別器54、推定器55、及び復号器56それぞれの入力層(541、551、561)が、第2特徴量を入力するための第1のニューロン(ノード)、及びノイズ62を入力するための第2のニューロン(ノード)を備えてよい。第1のニューロンが第1のチャンネルの一例であり、第2のニューロンが第2のチャンネルの一例である。この場合、制御部11は、第2メタ識別器54、推定器55、及び復号器56それぞれの第1のチャンネルに第2特徴量を入力し、かつ第2のチャンネルにノイズ62を入力することで、第2特徴量と共にノイズ62を入力することができる。推定器55及び復号器56はそれぞれ、これらのチャンネルに加えて、第1特徴量のチャンネルを備える。ステップS202及びステップS203それぞれでは、制御部11は、上記入力と共に、推定器55及び復号器56それぞれの当該チャンネルに第1特徴量を入力する。
 ノイズ62の種類は、特に限定されなくてもよく、上記ノイズ61と同様に、実施の形態に応じて適宜選択されてよい。ノイズ62は、例えば、ランダムなノイズ等であってよい。なお、第2特徴量と共にノイズ62を入力する形態は、このような例に限定されなくてもよい。ステップS201~ステップS203のうちの少なくともいずれかにおいて、ノイズ62の入力が省略されてよい。
 この第2特徴量と共にノイズ62を入力して、上記各訓練を実施することにより、第2メタ識別器54、推定器55、及び復号器56それぞれに、データの取得に関する属性がノイズ62により相違するドメインを学習させることができる。これにより、データの取得に関する属性の相違にロバストで、高精度に推定タスクを遂行可能な学習済みの学習モデル5(第2メタ識別器54、推定器55、及び復号器56)を構築することができる。
 (E)学習データセット
 上記実施形態において、ステップS201、ステップS203、ステップS205~ステップS207の機械学習で使用される学習データセット121から、正解データ124及び他の正解データ125が省略されてよい。また、ステップS202~ステップS205の機械学習で使用される学習データセット121から、メタデータ123が省略されてよい。それぞれデータの省略された学習データセットが各ステップの機械学習に使用されてよい。
 (ステップS103)
 図8に戻り、ステップS103では、制御部11は、保存処理部113として動作し、学習済みの学習モデル5の各器51~57の構造及び演算パラメータの値を示す情報を学習結果データ128として生成する。各器51~57の構造は、例えば、ニューラルネットワークの層の数、各層に含まれるニューロンの数、隣接する層のニューロン同士の結合関係等により特定される。システム内で各器51~57の構造が共通化される場合、この構造に関する情報は学習結果データ128から省略されてよい。制御部11は、生成された学習結果データ128を所定の記憶領域に保存する。
 所定の記憶領域は、例えば、制御部11内のRAM、記憶部12、記憶媒体91、外部記憶装置又はこれらの組み合わせであってよい。外部記憶装置は、例えば、NAS(Network Attached Storage)等のデータサーバであってもよい。この場合、制御部11は、通信インタフェース13を利用して、ネットワークを介してデータサーバに学習結果データ128を格納してもよい。また、外部記憶装置は、例えば、学習装置1に接続された外付けの記憶装置であってよい。学習結果データ128を保存すると、制御部11は、本動作例に係る一連の処理を終了する。
 なお、生成された学習結果データ128は、任意のタイミングで推定装置2及びデータ生成装置3に提供されてよい。例えば、制御部11は、ステップS103の処理として又はステップS103の処理とは別に、学習結果データ128を推定装置2及びデータ生成装置3に転送してもよい。推定装置2及びデータ生成装置3はそれぞれ、この転送を受け付けることで、学習結果データ128を取得してもよい。また、例えば、推定装置2及びデータ生成装置3はそれぞれ、通信インタフェース(23、33)を利用して、学習装置1又はデータサーバにネットワークを介してアクセスすることで、学習結果データ128を取得してもよい。学習結果データ128は、推定装置2及びデータ生成装置3それぞれに予め組み込まれてもよい。
 また、制御部11は、上記一連の処理を繰り返してもよい。この繰り返しの際に、制御部11は、学習済みの第1符号器51、第2符号器52及び復号器56を利用して、新たな訓練データ192を生成してもよい。
 具体的には、制御部11は、学習モデル5の機械学習を実施した後に、データ取得部111として動作し、複数の学習データセット121の少なくともいずれかの訓練データ122を第1符号器51に入力し、第1符号器51の演算処理を実行してもよい。これにより、制御部11は、第1符号器51から出力値(第1特徴量)を取得してもよい。また、制御部11は、当該訓練データ122を第2符号器52にも入力し、第2符号器52の演算処理を実行することで、第2符号器52から出力値(第2特徴量)を取得してもよい。
 そして、制御部11は、第1符号器51から取得された第1特徴量を復号器56に入力し、かつ第2符号器52から取得された第2特徴量と共にノイズ63を復号器56に入力し、復号器56の演算処理を実行してもよい。これにより、制御部11は、復号器56から出力データ(復号化データ)を取得してもよい。第2特徴量と共にノイズ63を入力する方法及びノイズ63の種類は、特に限定されなくてもよく、上記ノイズ62と同様であってよい。
 制御部11は、学習処理部112として動作し、取得された復号化データを新たな訓練データ192として使用して、学習モデル5の機械学習を再度実施してもよい。なお、学習データセット121と同様に、新たな訓練データ192には、メタデータ193、正解データ194、及び他の正解データ195が関連付けられてよい。メタデータ193、正解データ194、及び他の正解データ195はそれぞれ適宜取得されてよい。
 メタデータ193を取得する方法の一例として、例えば、制御部11は、第2符号器52から取得された第2特徴量と共にノイズ63を第2メタ識別器54に入力し、第2メタ識別器54の演算処理を実行してもよい。制御部11は、この演算処理により第2メタ識別器54から得られる出力値(メタ識別の結果)をメタデータ193として取得し、取得されたメタデータ193を訓練データ192に関連付けてもよい。また、例えば、制御部11は、入力装置14を介したオペレータの入力を受け付けて、オペレータの入力に応じてメタデータ193を生成してもよい。そして、制御部11は、生成されたメタデータ193を訓練データ192に関連付けてもよい。
 正解データ194を取得する方法の一例として、例えば、制御部11は、第1特徴量、第2特徴量、及びノイズ63を推定器55に入力し、推定器55の演算処理を実行してもよい。制御部11は、この演算処理により推定器55から得られる出力値(識別の結果)を正解データ194として取得し、取得された正解データ194を訓練データ192に関連付けてもよい。また、例えば、制御部11は、入力装置14を介したオペレータの入力を受け付けて、オペレータの入力に応じて正解データ194を生成してもよい。そして、制御部11は、生成された正解データ194を訓練データ192に関連付けてもよい。また、例えば、新たな訓練データ192の生成に利用した元の訓練データ122に関連付けられている正解データ124により示される特徴が訓練データ122の取得に関する属性に依存しない場合、当該正解データ124が、正解データ194としても利用されてよい。
 他の正解データ195を取得する方法の一例として、例えば、制御部11は、入力装置14を介したオペレータの入力を受け付けて、オペレータの入力に応じて他の正解データ195を生成してもよい。そして、制御部11は、生成された他の正解データ195を訓練データ192に関連付けてもよい。また、例えば、新たな訓練データ192の生成に利用した元の訓練データ122に関連付けられている他の正解データ125により示される特徴が訓練データ122の取得に関する属性に依存しない場合、当該他の正解データ125が、他の正解データ195としても利用されてよい。
 訓練データ192に対してメタデータ193が得られている場合、制御部11は、上記ステップS201、ステップS206、及びステップS207の機械学習の処理に、当該訓練データ192を使用することができる。訓練データ192に対して正解データ194が得られている場合、制御部11は、上記ステップS202及びステップS204の機械学習の処理に、当該訓練データ192を使用することができる。訓練データ192に対して他の正解データ195が得られている場合、制御部11は、上記ステップS204の機械学習の処理に、当該訓練データ192を使用することができる。また、メタデータ193、正解データ194、及び他の正解データ195のいずれも得られていない場合であっても、制御部11は、上記ステップS203及びステップS205の機械学習の処理に、当該訓練データ192を使用することができる。
 訓練データ192を使用した機械学習により、データの取得に関する属性がノイズ63により相違するドメインを学習モデル5に学習させることができる。これにより、データの取得に関する属性の相違にロバストで、高精度に推定タスクを遂行可能な学習済みの学習モデル5を構築することができる。なお、訓練データ192の使用方法は、このような例に限定されなくてもよい。例えば、制御部11は、訓練データ192を入力データとし、訓練データ192を生成する際に復号器56に入力した第2特徴量及びノイズ63を教師データとして利用し、第2符号器52を構成するニューラルネットワークの学習処理を実行してもよい。このように、生成された訓練データ192は、学習モデル5の構成要素の部分的な機械学習に使用されてもよい。
 [推定装置]
 次に、図10を用いて、推定装置2の動作例について説明する。図10は、本実施形態に係る推定装置2の処理手順の一例を示すフローチャートである。以下で説明する処理手順は、推定方法の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
 (ステップS501)
 ステップS501では、制御部21は、データ取得部211として動作し、推定タスクを遂行する対象となる対象データ221を取得する。本実施形態では、推定装置2は、外部インタフェース27を介して、センサSに接続されている。そのため、制御部21は、外部インタフェース27を介して、センサSにより生成されるセンシングデータを対象データ221として取得する。
 ただし、対象データ221を取得する経路は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、推定装置2とは異なる他のコンピュータにセンサSが接続されていてもよい。この場合、制御部21は、他のコンピュータから対象データ221の送信を受け付けることで、対象データ221を取得してもよい。対象データ221を取得すると、制御部21は、次のステップS502に処理を進める。
 (ステップS502)
 ステップS502では、制御部21は、評価部212として動作し、学習装置1により訓練された第2符号器52及び第2メタ識別器54を利用して、対象データ221の取得に関する属性を識別する。
 本実施形態では、制御部21は、学習結果データ128を参照して、学習済みの第2符号器52及び第2メタ識別器54の設定を行う。続いて、制御部21は、取得された対象データ221を第2符号器52に入力し、第2符号器52及び第2メタ識別器54の演算処理を実行する。すなわち、制御部21は、第2符号器52の入力層521に対象データ221を入力し、入力側から順に各層(521~523、541~543)に含まれる各ニューロンの発火判定を行う。この演算処理により、制御部21は、対象データ221の取得に関する属性を識別した結果に対応する出力値を第2メタ識別器54の出力層543から取得する。つまり、制御部21は、第2メタ識別器54の出力値を取得することで、対象データ221の取得に関する属性を識別することができる。対象データ221の取得に関する属性を識別すると、制御部21は、次のステップS503に処理を進める。
 (ステップS503及びステップS504)
 ステップS503では、制御部21は、評価部212として動作し、対象データ221の取得に関する属性を識別した結果に基づいて、推定器55又は他の推定器57による対象データ221に含まれる特徴の推定結果を採用するか否かを判定する。ステップS504では、制御部21は、ステップS503の判定結果に基づいて、処理の分岐先を決定する。
 ステップS502による識別の結果が対象データ221の取得に関する属性の正解値に適合している場合、制御部21は、推定器55又は他の推定器57による推定結果を採用すると判定し、次のステップS505に処理を進める。一方、ステップS502による識別の結果が対象データ221の取得に関する属性の正解値に適合していない場合、制御部21は、推定器55又は他の推定器57による推定結果を採用しないと判定し、ステップS505及びステップS506の処理を省略し、本動作例に係る一連の処理を終了する。この場合、制御部21は、得られた対象データ221に対して推定タスクを適切に遂行不能である可能性が高いことを通知するメッセージを出力装置25に出力してもよい。
 なお、対象データ221の取得に関する属性の正解値は適宜取得されてよい。制御部21は、例えば、制御部21は、入力装置24を介したオペレータの入力を受け付けて、当該オペレータの入力に基づいて、対象データ221の取得に関する属性の正解値を取得してもよい。また、例えば、制御部21は、センサSの利用形態、仕様、観測環境等を示す参照情報を参照することで、対象データ221の取得に関する属性の正解値を取得してもよい。この参照情報は、例えば、制御部21内のRAM、記憶部22、記憶媒体92、センサSの記憶領域、外部記憶装置等の所定の記憶領域に保持されていてよい。
 (ステップS505)
 ステップS505では、制御部21は、推定部213として動作し、学習装置1により訓練された第1符号器51、第2符号器52、及び推定器55を利用して、取得された対象データ221に含まれる特徴を推定する。或いは、制御部21は、学習装置1により訓練された第1符号器51及び他の推定器57を利用して、取得された対象データ221に含まれる特徴を推定する。
 第1符号器51、第2符号器52、及び推定器55を推定タスクに利用する場合、制御部21は、学習結果データ128を参照し、学習済みの第1符号器51及び推定器55の設定を更に行う。この設定処理は、上記ステップS502と同時に実行されてよい。制御部21は、対象データ221を各符号器(51、52)の入力層(511、521)に入力し、第1符号器51、第2符号器52、及び推定器55の演算処理を実行する。これにより、制御部21は、対象データ221に含まれる特徴を推定した結果に対応する出力値を推定器55の出力層553から取得する。
 一方、第1符号器51及び他の推定器57を推定タスクに利用する場合、制御部21は、学習結果データ128を参照し、学習済みの第1符号器51及び他の推定器57の設定を行う。この設定処理は、上記ステップS502と同時に実行されてよい。制御部21は、対象データ221を第1符号器51の入力層511に入力し、第1符号器51及び他の推定器57の演算処理を実行する。これにより、制御部21は、対象データ221に含まれる特徴を推定した結果に対応する出力値を他の推定器57の出力層573から取得する。
 対象データ221の取得に関する属性に特有の情報が推定タスクに有用なケースでは、前者の方法により対象データ221に含まれる特徴を推定するのが好ましい。一方、対象データ221の取得に関する属性に特有の情報が推定タスクに悪影響を及ぼすケースでは、後者の方法により対象データ221に含まれる特徴を推定するのが好ましい。一例として、道路を走行する車両を観察するセンサにより得られたセンシングデータから当該道路の交通状況を推定する場面を想定する。この場面では、例えば、渋滞発生の確率、所定の場所までの所要時間等のセンサの観察場所に特有の交通状況を推定する場合には、前者の方法により推定タスクを遂行するのが好ましい。一方、観察時点における渋滞発生の有無、走行する車両台数の検出等のセンサの観察場所に比較的に依存性の低い交通状況を推定する場合には、後者の方法により推定タスクを遂行するのが好ましい。対象データ221に含まれる特徴の推定が完了すると、制御部21は、次のステップS506に処理を進める。
 なお、本ステップS505で利用される他の推定器57は、学習装置1の上記一連の機械学習ではない別の機械学習で訓練された別の推定器に置き換えられてよい。すなわち、後者の方法において、制御部21は、他の推定器57ではなく、別の推定器を利用してもよい。第1符号器51の出力値を入力データとして使用し、他の正解データ125を教師データとして使用した機械学習により、当該別の推定器を構築することができる。この別の推定器の機械学習は、学習装置1により実施されてもよいし、推定装置2により実施されてもよいし、学習装置1及び推定装置2とは異なる別のコンピュータにより実施されてもよい。この場合、推定装置2は、別の推定器に関する学習結果データを任意のタイミングで取得してよい。
 (ステップS506)
 ステップS506では、制御部21は、出力部214として動作し、特徴を推定した結果に関する情報を出力する。
 出力先及び出力する情報の内容はそれぞれ、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、対象データ221に含まれる特徴を推定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、推定の結果に基づいて、何らかの情報処理を実行してもよい。そして、制御部21は、その情報処理を実行した結果を推定の結果に関する情報として出力してもよい。この情報処理を実行した結果の出力には、推定の結果に応じて警告等の特定のメッセージを出力すること、推定の結果に応じて制御対象装置の動作を制御すること等が含まれてよい。出力先は、例えば、出力装置25、制御対象装置等であってよい。推定の結果に関する情報の出力が完了すると、制御部21は、本動作例に係る一連の処理を終了する。
 (その他)
 (A)処理順序について
 なお、上記処理手順の一例では、制御部21は、ステップS505による推定処理を実行する前に、推定処理の結果を採用するか否かを判定し、推定処理の結果を採用しないと判定した場合には、ステップS505及びステップS506の処理の実行を省略している。しかしながら、推定処理の結果を採用しない方法は、このような例に限定されなくてもよい。例えば、制御部21は、ステップS505の処理を実行した後に、ステップS502及びステップS503の処理を実行してもよい。そして、推定処理の結果を採用しないと判定した場合には、制御部21は、ステップS505の処理の結果を破棄し、ステップS506の処理の実行を省略してもよい。一方、推定処理の結果を採用すると判定した場合に、制御部21は、ステップS506の処理を実行してもよい。
 (B)複数の学習モデル5が存在するケース
 また、複数の学習済みの学習モデル5が取得されている場合、制御部21は、上記評価の結果に基づいて、複数の学習済みの学習モデル5から、対象データ221に対して適切に推定タスクを遂行可能な学習済みの学習モデル5を選択してもよい。第2メタ識別器54によるメタ識別の結果が対象データ221の取得に関する属性の正解値に適合する学習済みの学習モデル5が、対象データ221に対して適切に推定タスクを遂行可能なものである。制御部21は、選択された学習済みの学習モデル5をステップS505の処理に利用してもよい。
 (C)他の評価方法の一例
 また、上記処理手順の一例では、学習済みの第2符号器52及び第2メタ識別器54を利用して、対象データ221に対して推定タスクを適切に遂行可能か否か、を評価している。しかしながら、この評価方法は、このような例に限定されなくてもよい。例えば、制御部21は、学習済みの第1符号器51、第2符号器52、及び復号器56を利用してもよい。
 すなわち、上記ステップS502では、制御部21は、取得された対象データ221を各符号器(51、52)の入力層(511、521)に入力し、第1符号器51、第2符号器52、及び復号器56の演算処理を実行する。これにより、制御部21は、第1特徴量及び第2特徴量から対象データ221を復号化した結果に対応する出力データ(復号化データ)を復号器56の出力層563から取得する。
 取得された復号化データが対象データ221から乖離するほど、対象データ221に対して推定タスクを適切に遂行不能である可能性が高いことを示す。そこで、制御部21は、取得された復号化データと対象データ221とを比較し、比較の結果に基づいて、復号化データが対象データ321に適合するか否かに応じて、推定器55又は他の推定器57による対象データ221に含まれる特徴の推定結果を採用するか否かを判定してもよい。復号化データと対象データ221との比較は、任意の方法で行われてよい。例えば、制御部21は、当該比較処理として、復号化データと対象データ221との一致度を算出してもよい。この場合、制御部21は、復号化データと対象データ221との一致度が閾値以上であることに応じて、推定器55又は他の推定器57による推定結果を採用すると判定してもよい。一方、制御部21は、復号化データと対象データ221との一致度が閾値未満であることに応じて、推定器55又は他の推定器57による推定結果を採用しないと判定してもよい。閾値は適宜決定されてよい。
 [データ生成装置]
 次に、図11を用いて、データ生成装置3の動作例について説明する。図11は、本実施形態に係るデータ生成装置3の処理手順の一例を示すフローチャートである。以下で説明する処理手順は、データ生成方法の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
 (ステップS701)
 ステップS701では、制御部31は、データ取得部311として動作し、新たなデータを生成する元となる対象データ321を取得する。本実施形態では、データ生成装置3は、外部インタフェース37を介して、センサSに接続されている。そのため、制御部31は、外部インタフェース37を介して、センサSにより生成されるセンシングデータを対象データ321として取得する。
 ただし、対象データ321を取得する経路は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、データ生成装置3とは異なる他のコンピュータにセンサSが接続されていてもよい。この場合、制御部31は、他のコンピュータから対象データ321の送信を受け付けることで、対象データ321を取得してもよい。対象データ321を取得すると、制御部31は、次のステップS702に処理を進める。
 (ステップS702及びステップS703)
 ステップS702では、制御部31は、生成部312として動作し、学習装置1により訓練された第1符号器51に対象データ321を与えることで第1符号器51から出力値(第1特徴量)を取得する。次のステップS703では、制御部31は、訓練された復号器56を利用して、第2符号器52から取得される出力値(第2特徴量)を与えずに、第1符号器51より取得された出力値(第1特徴量)から対象データ321を復号化することで、復号化データを生成する。
 本実施形態では、制御部31は、学習結果データ128を参照して、学習済みの第1符号器51及び復号器56の設定を行う。制御部31は、対象データ321を第1符号器51の入力層511に入力し、第1符号器51の演算処理を実行する。これにより、制御部31は、第1符号器51の出力層513から出力値(第1特徴量)を取得する。
 続いて、制御部31は、第1符号器51から取得された第1特徴量を復号器56の入力層561の対応するニューロンに入力する。一方、制御部31は、復号器56の入力層561における第2特徴量の入力を受け付けるニューロン(ノード)には、対象データ321から得られる第2特徴量とは無関係なデータを入力する。
 例えば、制御部31は、第2特徴量とは無関係なデータとして、ゼロ値で構成された数値データを入力層561の対応するニューロンに入力してもよい。また、例えば、制御部31は、第2特徴量とは無関係なデータとして、ランダムな値で構成された数値データを入力層561の対応するニューロンに入力してもよい。
 また、例えば、制御部31は、学習結果データ128を参照して、学習済みの第2符号器52の設定を更に行ってよい。そして、制御部31は、対象データ321とは無関係なデータを第2符号器52に入力し、第2符号器52の演算処理を実行してもよい。対象データ321とは無関係なデータは、例えば、ゼロ値で構成された数値データ、ランダムな値で構成された数値データ、対象データ321を少なくとも部分的に変換したデータ、対象データ321とは相違する条件で取得されたデータ等であってよい。対象データ321の変換は、公知の数値変換方法により行われてよい。制御部31は、この演算処理により第2符号器52の出力層523から得られる出力値を、対象データ321から得られる第2特徴量とは無関係なデータとして入力層561の対応するニューロンに入力してもよい。
 第1符号器51から取得された第1特徴量及び対象データ321から得られる第2特徴量とは無関係なデータを入力層561の対応するニューロンに入力した後、制御部31は、復号器56の演算処理を実行する。これにより、制御部31は、第2特徴量を与えずに、第1特徴量から対象データ321を復号化した結果に対応する出力データ(復号化データ)を復号器56の出力層563から取得する。この演算処理により復号化データを生成すると、制御部31は、次のステップS704に処理を進める。
 (ステップS704)
 ステップS704では、制御部31は、保存処理部313として動作し、生成された復号化データを新たなデータとして所定の記憶領域に保存する。所定の記憶領域は、例えば、例えば、制御部31内のRAM、記憶部32、記憶媒体93、外部記憶装置又はこれらの組み合わせであってよい。外部記憶装置は、例えば、NAS等のデータサーバであってもよい。この場合、制御部31は、通信インタフェース33を利用して、ネットワークを介してデータサーバに復号化データを格納してもよい。また、外部記憶装置は、例えば、データ生成装置3に接続された外付けの記憶装置であってよい。
 生成される復号化データは、第2特徴量に関する情報(すなわち、対象データ321の取得に関する属性に対応する情報)を対象データ321から除外することで得られるデータに相当する。つまり、対象データ321からドメインに特有の情報を除外したデータを生成する場面に本実施形態を利用することができる。例えば、機械学習に使用した各学習データセット121において、訓練データ122が人物に対して得られており、メタデータ123が人物の個人情報を含んでいる場合、対象者の個人情報を除外した復号化データを生成することができる。生成された復号化データは、例えば、ドメインに共通に現れる特徴の分析、又は対象データからその特徴を推定するように構成される推定器の機械学習に利用されてよい。
 制御部31は、これらの用途いずれかに利用可能に、生成された復号化データを所定の記憶領域に保存してよい。例えば、制御部31は、生成された復号化データを、これらの用途のいずれかで復号化データを利用するコンピュータにアクセス可能な記憶領域に保存してもよい。復号化データの保存が完了すると、制御部31は、本動作例に係る一連の処理を終了する。
 なお、データ生成装置3により生成される新たなデータは復号化データに限定されなくてもよい。制御部31は、第1符号器51及び第2符号器52の少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方を生成してもよい。この場合、制御部31は、生成された第1特徴量及び第2特徴量の少なくとも一方を新たなデータとして所定の記憶領域に保存してもよい。
 第1特徴量は、対象データ321の取得に関する属性以外の情報(例えば、各ドメインに共通に現れる情報)に対応する成分を含みやすい。他方、第2特徴量は、対象データ321の取得に関する属性(すなわち、ドメインに特有の情報)に対応する成分を含みやすい。そのため、第1特徴量は、例えば、ドメインに共通に現れる特徴の分析、又は対象データからその特徴を推定するように構成される推定器の機械学習に利用されてよい。第2特徴量は、例えば、ドメインに特有の情報の分析、又は対象データからその特徴を推定するように構成される推定器の機械学習に利用されてよい。
 また、制御部31は、上記訓練データ192と同様の方法で、新たなデータを生成してもよい。すなわち、制御部31は、対象データ321を各符号器(51、52)の入力層(511、521)に入力し、各符号器(51、52)の演算処理を実行してもよい。これにより、制御部31は、各符号器(51、52)の出力層(513、523)から各特徴量を取得してもよい。そして、制御部31は、第1特徴量、第2特徴量、及びノイズを復号器56の入力層561に入力し、復号器56の演算処理を実行してもよい。これにより、制御部31は、復号器56の出力層563から復号化データを取得してもよい。制御部31は、取得された復号化データを所定の記憶領域に保存してもよい。この生成方法によれば、対象データ321に対して、取得に関する属性をノイズの分だけ変更した新たなデータ(復号化データ)を生成することができる。データ生成装置3は、上記学習装置1の訓練データ122を対象データ321として取得し、この方法により生成された復号化データを訓練データ192として学習装置1に返信してもよい。これにより、学習装置1の保持する訓練データの量を増加させることができ、その訓練データが機械学習に使用されることで、比較的に高精度に推定タスクを実行可能な学習済みの学習モデル5を構築することができる。
 また、制御部31は、上記推定装置2と同様の評価方法により、対象データ321に対して各符号器(51、52)が適切に特徴量を算出可能か否か、を評価してもよい。第2メタ識別器54によるメタ識別の結果が対象データ321の取得に関する属性の正解値に適合する、又は復号器56により得られる復号化データが対象データ321に適合する場合に、制御部31は、上記一連の処理により生成されたデータを採用してもよい。一方、第2メタ識別器54によるメタ識別の結果が対象データ321の取得に関する属性の正解値に適合しない、又は復号器56により得られる復号化データが対象データ321に適合しない場合、制御部31は、データの生成に関する上記一連の処理を省略してもよい。或いは、制御部31は、上記一連の処理により生成されたデータを破棄してもよい。
 [特徴]
 以上のとおり、本実施形態では、ステップS201~ステップS208の機械学習により、学習済みの第1符号器51、第2符号器52、及び推定器55は、対象データを取得するドメインに特有の情報、及び共通の情報の両方に基づいて、対象データに含まれる特徴を推定するタスクを実行する能力を習得することができる。また、学習済みの第1符号器51及び他の推定器57は、ドメインに特有の情報の影響を除外して、ドメインに共通の情報に基づいて、対象データに含まれる特徴を推定するタスクを実行する能力を習得することができる。そのため、推定装置2のステップS505において、対象データ221の取得に関する属性に特有の情報が推定タスクに有用なケース及び悪影響を及ぼすケースの両方で、比較的に高精度に推定タスクを実行可能な学習済みの学習モデル5を構築することができる。
 また、本実施形態では、異なるドメインから得られた対象データ(211、311)に第1符号器51及び第2符号器52を共通に利用することができる。そのため、本実施形態では、対象データ(211、311)を取得するドメイン毎に学習済みの抽出器を用意する手間を省略することができる。
 更には、学習済みの第2符号器52及び第2メタ識別器54を利用することで、ステップS502~ステップS504の処理により、学習済みの学習モデル5が対象データ221に対して適切に推定タスクを遂行可能か否か、を評価することができる。この評価の結果に基づいて、適切に推定タスクを遂行不能な対象データ221に対して学習済みの学習モデル5が利用されるのを防止したり、対象データ221に適切な学習済みの学習モデル5を選択したりすることができる。
 したがって、本実施形態によれば、導入コストが比較的に低廉で、かつ対象データの取得に関する属性の相違にロバストな学習済みの学習モデル5を構築することができる。
 §4 変形例
 以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良及び変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
 <4.1>
 上記実施形態に係る学習装置1、推定装置2、及びデータ生成装置3は、センサSにより得られるセンシングデータに含まれる特徴を推定する場面に適用されている。しかしながら、上記実施形態の適用範囲は、このような例に限定される訳ではない。上記実施形態は、センサ以外から得られたデータに含まれる特徴を推定する場面に適用されてよい。上記実施形態は、所定のデータに対して所定の推定タスクを遂行するあらゆる場面に適用可能である。以下、適用場面を限定した変形例を例示する。
 (A)交通状況を予測する場面
 図12は、第1変形例に係るシステムの適用場面の一例を模式的に例示する。本変形例は、道路を走行する車両の交通状況を予測する場面に上記実施形態を適用した例である。図12に示されるとおり、本実施形態に係るシステムは、学習装置1、予測装置2A、及びデータ生成装置3を備えている。上記実施形態と同様に、学習装置1、予測装置2A、及びデータ生成装置3は、ネットワークを介して互いに接続されてよい。本変形例に係るシステムは、取り扱うデータが異なる点を除き、上記実施形態と同様に構成されてよい。
 本変形例に係る学習装置1は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、機械学習の情報処理を実行する。すなわち、ステップS101では、学習装置1は、交通状況の予測を学習するための複数の学習データセット121Aを取得する。各学習データセット121A、上記学習データセット121と同様に、訓練データ122A、メタデータ123A、正解データ124A、及び他の正解データ125Aの組み合わせにより構成される。訓練データ122A、メタデータ123A、正解データ124A、及び他の正解データ125Aはそれぞれ、上記実施形態に係る訓練データ122、メタデータ123、正解データ124、及び他の正解データ125それぞれに対応する。
 訓練データ122Aは、例えば、道路を走行する車両を観察するセンサSA又はこれと同種のセンサ(以下、同種のセンサを含んでセンサSAと称する)により得られたセンシングデータである。センサSAは、道路を走行する車両を観察可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。センサSAは、例えば、カメラ、超音波センサ、赤外線センサ等であってよい。訓練データ122Aは、例えば、画像データ、単位時間当たりの車両の通過台数の計測結果を示すデータ、通過する車両の平均速度の計測結果を示すデータ等により構成されてよい。
 メタデータ123Aは、訓練データ122Aの取得に関する属性として、例えば、道路の属性、センサSAの観察角度、センサSAの設置間隔、センサSAの種類、又はこれらの組み合わせを示す。道路の属性は、例えば、直線道路であるか否か、曲がり道であるか否か、有料道路の料金所があるか否か、合流点であるか否か、分岐点であるか否か等により示されてよい。
 正解データ124A及び他の正解データ125Aはそれぞれ、訓練データ122Aに含まれる特徴として、例えば、道路の交通状況に関する情報を示す。本変形例では、正解データ124A及び他の正解データ125Aはそれぞれ、訓練データ122Aの取得された時点から未来の時点における道路の交通状況に関する情報を示してよい。道路の交通状況に関する情報は、例えば、渋滞発生の有無、渋滞発生の確率、発生した渋滞の継続時間、センサSAの設置場所から所定の場所までの所要時間等の情報を含んでよい。渋滞発生の有無は、所定時間後に渋滞が発生するか否かにより表現されてもよい。
 なお、複数の道路区間それぞれにセンサSAが設置されており、各道路区間における渋滞発生の確率を予測するために、各センサSAにより得られたセンシングデータを訓練データ122Aとして収集した場面を想定する。この場面において、第1の道路区間と第2の道路区間との間で、得られた訓練データ122Aにおいて、渋滞発生時のデータと渋滞未発生時のデータとの割合が大きく相違すると、学習モデル5の機械学習が適切に実施できない可能性がある。この場合には、データの割合を調整するために、一部のデータを削除したり、新たなデータを追加したりする等の前処理が実施されてよい。
 ステップS102では、学習装置1は、このような訓練データ122A、メタデータ123A、正解データ124A、及び他の正解データ125Aの組み合わせによりそれぞれ構成された複数の学習データセット121Aを使用して、上記実施形態と同様に、学習モデル5Aの機械学習を実施する。学習モデル5Aは、上記実施形態に係る学習モデル5と同様に構成されてよい。すなわち、学習モデル5Aは、第1符号器51A、第2符号器52A、第1メタ識別器53A、第2メタ識別器54A、推定器55A、復号器56A、及び他の推定器57Aを含んでいる。各器51A~57Aは、上記実施形態に係る各器51~57に対応する。各器51A~57Aの構成は、上記実施形態に係る各器51~57と同様であってよい。
 当該機械学習により、第2符号器52Aは、メタデータ123Aにより示される訓練データ122Aの取得に関する属性に対応する成分を含む第2特徴量に当該訓練データ122Aを変換するように訓練される。第1符号器51Aは、訓練データ122Aの取得に関する属性以外の情報、例えば、訓練データ122Aを取得するドメインに共通に現れる情報に対応する成分を含む第1特徴量に当該訓練データ122Aを変換するように訓練される。学習モデル5Aにおける推定器55A又は他の推定器57Aを含む部分は、センサSAにより得られたセンシングデータから交通状況を予測する能力を獲得する。また、学習モデル5Aにおける復号器56Aを含む部分は、センサSAにより得られたセンシングデータと同種の復号化データを生成する能力を獲得する。
 ステップS103では、学習装置1は、学習済みの学習モデル5Aに関する情報を学習結果データ128Aとして生成し、生成された学習結果データ128Aを所定の記憶領域に保存する。生成された学習結果データ128Aは、任意のタイミングで予測装置2A及びデータ生成装置3に提供されてよい。
 データ生成装置3は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、データ生成に関する情報処理を実行する。すなわち、データ生成装置3は、上記ステップS701~ステップS704の処理を実行する。これにより、データ生成装置3は、学習済みの第1符号器51A及び復号器56Aを利用して、対象センシングデータから復号化データを生成することができる。復号化データは、対象センシングデータの取得に関する属性に対応する情報を当該対象センシングデータから除外することで得られるデータに相当する。また、データ生成装置3は、学習済みの第1符号器51A、第2符号器52A、及び復号器56Aを利用して、取得に関する属性をノイズの分だけ変更した新たなデータ(復号化データ)を生成してもよい。更に、データ生成装置3は、学習済みの第1符号器51A及び第2符号器52Aの少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方のデータを生成してもよい。
 予測装置2Aは、上記推定装置2に対応する。予測装置2Aは、取り扱うデータが異なる点を除き、上記推定装置2と同様に構成されてよい。本変形例では、予測装置2Aは、ネットワークを介してセンサSAに接続される。予測装置2Aは、センサSAから対象センシングデータを取得する。そして、予測装置2Aは、学習装置1により構築された学習済みの学習モデル5Aを利用して、取得された対象センシングデータに基づいて、対象の道路の交通状況を予測する。
 <予測装置のハードウェア構成>
 図13Aは、本変形例に係る予測装置2Aのハードウェア構成の一例を模式的に例示する。図13Aに示されるとおり、本変形例に係る予測装置2Aは、上記推定装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27が電気的に接続されたコンピュータである。予測装置2Aは、通信インタフェース23を介してセンサSAに接続される。センサSAは、交通状況を監視する所定の道路に適宜配置されてよい。ただし、予測装置2Aのハードウェア構成は、このような例に限定されなくてもよい。予測装置2Aの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。予測装置2Aは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってよい。
 本変形例に係る予測装置2Aの記憶部22は、予測プログラム82A、学習結果データ128A等の各種情報を記憶する。予測プログラム82A及び学習結果データ128Aは、上記実施形態に係る推定プログラム82及び学習結果データ128に対応する。予測プログラム82A及び学習結果データ128Aのうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、予測装置2Aは、記憶媒体92から、予測プログラム82A及び学習結果データ128Aのうちの少なくともいずれかを取得してもよい。
 <予測装置のソフトウェア構成及び動作例>
 図13Bは、本変形例に係る予測装置2Aのソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、予測装置2Aのソフトウェア構成は、制御部21による予測プログラム82Aの実行により実現される。図13Bに示されるとおり、道路を走行する車両を観察するセンサSAにより得られるセンシングデータを取り扱う点を除き、予測装置2Aのソフトウェア構成は、上記推定装置2のソフトウェア構成と同様である。これにより、予測装置2Aは、上記推定装置2の推定処理と同様に、予測処理に関する一連の処理を実行する。
 すなわち、ステップS501では、制御部21は、データ取得部211として動作し、対象の道路における交通状況の反映された対象センシングデータ221AをセンサSAから取得する。ステップS502では、制御部21は、評価部212として動作し、学習装置1により訓練された第2符号器52A及び第2メタ識別器54Aを利用して、対象センシングデータ221Aの取得に関する属性を識別する。具体的には、制御部21は、学習結果データ128Aを参照し、学習済みの第2符号器52A及び第2メタ識別器54Aの設定を行う。続いて、制御部21は、取得された対象センシングデータ221Aを第2符号器52Aに入力し、第2符号器52A及び第2メタ識別器54Aの演算処理を実行する。この演算処理により、制御部21は、対象センシングデータ221Aの取得に関する属性を識別した結果に対応する出力値を第2メタ識別器54Aから取得する。
 ステップS503では、制御部21は、評価部212として動作し、対象センシングデータ221Aの取得に関する属性を識別した結果に基づいて、推定器55A又は他の推定器57Aによる予測の結果を採用するか否かを判定する。ステップS504では、制御部21は、ステップS503の判定結果に基づいて、処理の分岐先を決定する。
 ステップS502による識別の結果が対象センシングデータ221Aの取得に関する属性の正解値に適合している場合、制御部21は、推定器55A又は他の推定器57Aによる予測の結果を採用すると判定し、次のステップS505に処理を進める。一方、ステップS502による識別の結果が対象センシングデータ221Aの取得に関する属性の正解値に適合していない場合、制御部21は、推定器55A又は他の推定器57Aによる予測の結果を採用しないと判定し、ステップS505及びステップS506の処理を省略し、本変形例に係る一連の処理を終了する。
 ステップS505では、制御部21は、予測部213Aとして動作し、学習装置1により訓練された第1符号器51A、第2符号器52A、及び推定器55Aを利用して、対象センシングデータ221Aから対象の道路における交通状況を予測する。或いは、制御部21は、学習装置1により訓練された第1符号器51A及び他の推定器57Aを利用して、対象センシングデータ221Aから対象の道路における交通状況を予測する。
 具体的には、制御部21は、学習結果データ128Aを参照し、学習済みの第1符号器51A及び推定器55Aの設定を更に行う。制御部21は、対象センシングデータ221Aを各符号器(51A、52A)に入力し、第1符号器51A、第2符号器52A、及び推定器55Aの演算処理を実行する。これにより、制御部21は、対象センシングデータ221Aから対象の道路における交通状況を予測した結果に対応する出力値を推定器55Aから取得する。
 或いは、制御部21は、学習結果データ128Aを参照し、学習済みの第1符号器51A及び他の推定器57Aの設定を行う。制御部21は、対象センシングデータ221Aを第1符号器51Aに入力し、第1符号器51A及び他の推定器57Aの演算処理を実行する。これにより、制御部21は、対象センシングデータ221Aから対象の道路における交通状況を予測した結果に対応する出力値を他の推定器57Aから取得する。
 ステップS506では、制御部21は、出力部214として動作し、対象の道路における交通状況を予測した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、交通状況を予測した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、交通状況を予測した結果を対象の道路の周辺に存在する車両の車載装置又はユーザ端末に配信してもよい。配信する範囲は適宜決定されてよい。この場合、制御部21は、車両の車載装置又はユーザ端末から位置情報を取得し、取得された位置情報に基づいて、配信する対象の車載装置又はユーザ端末を特定してよい。
 また、例えば、ステップS505の処理により、対象の道路における交通渋滞の発生確率を予測した場面を想定する。この場面において、対象の道路において渋滞の発生確率が閾値以上である場合に、制御部21は、渋滞発生の確率が高いことを通知するためのメッセージを出力してもよい。閾値は適宜決定されてよい。また、制御部21は、対象の道路の周辺に存在する車両の車載装置又はユーザ端末に当該メッセージを配信してもよい。当該メッセージには、対象の道路を含むルートよりも渋滞の発生確率の低い迂回ルートを示す情報が含まれてもよい。更に、自動運転の動作を制御する制御装置を車両が備えている場面を想定する。この場面では、制御部21は、対象の道路において渋滞の発生確率が閾値以上である場合に、対象の道路を避けたルートを走行するように指示するための指令を、対象の道路の周辺に存在する車両の制御装置に配信してもよい。これに応じて、車両の制御装置は、対象の道路を避けたルートを走行するように車両の自動運転を制御してもよい。
 本変形例によれば、センシングデータから交通状況を予測する場面において、導入コストが比較的に低廉で、かつセンシングデータの取得に関する属性の相違にロバストな学習済みの学習モデル5Aを構築することができる。
 一例として、渋滞発生の確率又は渋滞の有無の予測は、道路の属性に依存する傾向がある。例えば、一車線の道路よりも二車線の道路の方が交通渋滞の発生する確率は低い。また、例えば、直線道路に比べて合流点の多い道路では交通渋滞の発生する確率が高い。そのため、渋滞発生の確率又は渋滞の有無を予測する場面では、データを取得するドメインに特有の情報が推定タスクに有用であると考えられる。これに対して、交通流の数及びその増減の変化傾向は、道路の属性に依存し難いため、発生した渋滞の継続時間を推定する場面では、データを取得するドメインに特有の情報が推定タスクの精度に悪影響を及ぼすと考えられる。
 そこで、センサSAは、例えば、カメラであってよい。カメラは、道路に設置されていてもよいし、その道路を移動する人物が保持していてもよい。これに応じて、訓練データ122Aは、例えば、画像データであってよい。メタデータ123Aは、例えば、道路の属性及びセンサSAの設置間隔を示すように設定されてよい。正解データ124Aは、例えば、渋滞発生の確率又は渋滞の有無を示すように設定されてよい。他の正解データ125Bは、例えば、発生した渋滞の継続時間を示すように設定されてよい。
 この設定により上記機械学習を実行することで、第1特徴量は、ドメインに共通の情報として、スポット的に発生する交通流の数及びその増減の変化傾向に対応する成分を含むようになる。一方、第2特徴量は、ドメインに特有の情報として、定常的に表れる地形起因の交通流の傾向、及び複数の地点で共起する交通流の傾向に対応する成分を含むようになる。定常的に表れる地形起因の交通流の傾向とは、例えば、サグ部で速度低下及び渋滞が生じやすい等の傾向である。また、複数の地点で共起するとは、例えば、高速道路の合流地点で渋滞が発生した場合に、その合流地点よりも手前の直線道路の地点でも渋滞が生じる可能性が高い等のように、ある地点の交通流が他の地点の交通流に影響を及ぼすことである。
 その結果、予測装置2Aにおいて、学習済みの第1符号器51A、第2符号器52A、及び推定器55Aを利用することで、上記ドメインに特有の情報及び共通する情報の両方に基づいて、渋滞発生の確率又は渋滞の有無を予測する推定タスクを遂行することができる。そのため、対象の道路で渋滞発生の確率又は渋滞の有無を比較的に高い精度で予測することができる。また、予測装置2Aにおいて、学習済みの第1符号器51A及び他の推定器57を利用することで、上記ドメインに特有の情報を除外し、上記ドメインに共通の情報に基づいて、発生した渋滞の継続時間を予測する推定タスクを遂行することができる。そのため、対象の道路における渋滞の継続時間を比較的に高い精度で予測することができる。
 (B)対象者の状態を推定する場面
 図14は、第2変形例に係るシステムの適用場面の一例を模式的に例示する。本変形例は、対象者の状態を推定する場面に上記実施形態を適用した例である。図14では、対象者の状態を推定する場面の一例として、車両の運転者RBの状態を監視する場面が例示されている。運転者RBは、対象者の一例である。図14に示されるとおり、本実施形態に係るシステムは、学習装置1、監視装置2B、及びデータ生成装置3を備えている。上記実施形態と同様に、学習装置1、監視装置2B、及びデータ生成装置3は、ネットワークを介して互いに接続されてよい。本変形例に係るシステムは、取り扱うデータが異なる点を除き、上記実施形態と同様に構成されてよい。
 本変形例に係る学習装置1は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、機械学習の情報処理を実行する。すなわち、ステップS101では、学習装置1は、対象者の状態を推定するタスクを学習するための複数の学習データセット121Bを取得する。各学習データセット121B、上記学習データセット121と同様に、訓練データ122B、メタデータ123B、正解データ124B、及び他の正解データ125Bの組み合わせにより構成される。訓練データ122B、メタデータ123B、正解データ124B、及び他の正解データ125Bはそれぞれ、上記実施形態に係る訓練データ122、メタデータ123、正解データ124、及び他の正解データ125それぞれに対応する。
 訓練データ122Bは、例えば、被験者の状態を観察するセンサSB又はこれと同種のセンサ(以下、同種のセンサを含んでセンサSBと称する)により得られたセンシングデータである。被験者は、例えば、車両を運転する運転者である。センサSBは、対象者の状態を観察可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。センサSBは、例えば、カメラ、バイタルセンサ、又はこれらの組み合わせであってよい。カメラは、例えば、一般的なRGBカメラ、深度カメラ、赤外線カメラ等であってよい。また、バイタルセンサは、例えば、体温計、血圧計、脈拍計等であってよい。訓練データ122Bは、例えば、画像データ、バイタルデータ等により構成されてよい。
 メタデータ123Bは、訓練データ122Bの取得に関する属性として、例えば、被験者の識別情報、センシングデータを取得した時間に関する属性、センサSBの設置状況に関する属性、センサSBの設置場所、又はこれらの組み合わせを示す。被験者の識別情報は、例えば、被験者を識別するための情報(識別子)、性別、年齢、体格、人種等を含んでよい。時間に関する属性は、例えば、時間帯の種別、曜日の種別、平日及び休日の別、月の種別、季節の種別等を含んでよい。センサSBの設置状況に関する属性は、例えば、センサSBの設置角度、センサSBの周囲の温度、センサSBと被験者との間の距離、センサSBの設置間隔等を含んでよい。
 正解データ124B及び他の正解データ125Bはそれぞれ、訓練データ122Bに含まれる特徴として、例えば、被験者の状態を示す。被験者の状態は、例えば、被験者の健康状態を含んでよい。健康状態は、例えば、所定の疾患を発症する確率、体調変化が生じる確率等により表現されてよい。本変形例では、被験者の状態は、例えば、被験者の眠気の度合いを示す眠気度、被験者の疲労の度合いを示す疲労度、被験者の運転に対する余裕の度合いを示す余裕度、又はこれらの組み合わせを含んでよい。
 ステップS102では、学習装置1は、このような訓練データ122B、メタデータ123B、正解データ124B、及び他の正解データ125Bの組み合わせによりそれぞれ構成された複数の学習データセット121Bを使用して、上記実施形態と同様に、学習モデル5Bの機械学習を実施する。学習モデル5Bは、上記実施形態に係る学習モデル5と同様に構成されてよい。すなわち、学習モデル5Bは、第1符号器51B、第2符号器52B、第1メタ識別器53B、第2メタ識別器54B、推定器55B、復号器56B、及び他の推定器57Bを含んでいる。各器51B~57Bは、上記実施形態に係る各器51~57に対応する。各器51B~57Bの構成は、上記実施形態に係る各器51~57と同様であってよい。
 当該機械学習により、第2符号器52Bは、メタデータ123Bにより示される訓練データ122Bの取得に関する属性に対応する成分を含む第2特徴量に当該訓練データ122Bを変換するように訓練される。第1符号器51Bは、訓練データ122Bの取得に関する属性以外の情報、例えば、訓練データ122Bを取得するドメインに共通に現れる情報に対応する成分を含む第1特徴量に当該訓練データ122Bを変換するように訓練される。学習モデル5Bにおける推定器55B又は他の推定器57Bを含む部分は、センサSBにより得られたセンシングデータから運転者の状態を推定する能力を獲得する。また、学習モデル5Bにおける復号器56Bを含む部分は、センサSBにより得られたセンシングデータと同種の復号化データを生成する能力を獲得する。
 ステップS103では、学習装置1は、学習済みの学習モデル5Bに関する情報を学習結果データ128Bとして生成し、生成された学習結果データ128Bを所定の記憶領域に保存する。生成された学習結果データ128Bは、任意のタイミングで監視装置2B及びデータ生成装置3に提供されてよい。
 データ生成装置3は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、データ生成に関する情報処理を実行する。すなわち、データ生成装置3は、上記ステップS701~ステップS704の処理を実行する。これにより、データ生成装置3は、学習済みの第1符号器51B及び復号器56Bを利用して、対象センシングデータから復号化データを生成することができる。復号化データは、対象センシングデータの取得に関する属性に対応する情報を当該対象センシングデータから除外することで得られるデータに相当する。また、データ生成装置3は、学習済みの第1符号器51B、第2符号器52B、及び復号器56Bを利用して、取得に関する属性をノイズの分だけ変更した新たなデータ(復号化データ)を生成してもよい。更に、データ生成装置3は、学習済みの第1符号器51B及び第2符号器52Bの少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方のデータを生成してもよい。
 監視装置2Bは、上記推定装置2に対応する。監視装置2Bは、取り扱うデータが異なる点を除き、上記推定装置2と同様に構成されてよい。本変形例では、監視装置2Bは、センサSBに接続されている。監視装置2Bは、センサSBから対象センシングデータを取得する。そして、監視装置2Bは、学習装置1により構築された学習済みの学習モデル5Bを利用して、取得された対象センシングデータに基づいて、運転者RBの状態を推定する。
 <監視装置のハードウェア構成>
 図15Aは、本変形例に係る監視装置2Bのハードウェア構成の一例を模式的に例示する。図15Aに示されるとおり、本変形例に係る監視装置2Bは、上記推定装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27が電気的に接続されたコンピュータである。監視装置2Bは、外部インタフェース27を介してセンサSBに接続される。センサSBは、運転者RBの状態を観察可能な場所に適宜配置されてよい。例えば、センサSBがカメラである場合、センサSBは、運転者RBを撮影可能なように運転席の近傍に配置されてよい。また、例えば、センサSBがバイタルセンサである場合、センサSBは、運転者RBのバイタルを測定可能に適宜取り付けられてよい。ただし、監視装置2Bのハードウェア構成は、このような例に限定されなくてもよい。監視装置2Bの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。監視装置2Bは、提供されるサービス専用に設計された情報処理装置の他、汎用のコンピュータ、スマートフォンを含む携帯電話、車載装置等であってもよい。
 本変形例に係る監視装置2Bの記憶部22は、監視プログラム82B、学習結果データ128B等の各種情報を記憶する。監視プログラム82B及び学習結果データ128Bは、上記実施形態に係る推定プログラム82及び学習結果データ128に対応する。監視プログラム82B及び学習結果データ128Bのうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、監視装置2Bは、記憶媒体92から、監視プログラム82B及び学習結果データ128Bのうちの少なくともいずれかを取得してもよい。
 <監視装置のソフトウェア構成及び動作例>
 図15Bは、本変形例に係る監視装置2Bのソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、監視装置2Bのソフトウェア構成は、制御部21による監視プログラム82Bの実行により実現される。図15Bに示されるとおり、運転者RBの状態を観察するセンサSBにより得られるセンシングデータを取り扱う点を除き、監視装置2Bのソフトウェア構成は、上記推定装置2のソフトウェア構成と同様である。これにより、監視装置2Bは、上記推定装置2の推定処理と同様に、監視処理に関する一連の処理を実行する。
 すなわち、ステップS501では、制御部21は、データ取得部211として動作し、運転者RBの状態の反映された対象センシングデータ221BをセンサSBから取得する。ステップS502では、制御部21は、評価部212として動作し、学習装置1により訓練された第2符号器52B及び第2メタ識別器54Bを利用して、対象センシングデータ221Bの取得に関する属性を識別する。具体的には、制御部21は、学習結果データ128Bを参照し、学習済みの第2符号器52B及び第2メタ識別器54Bの設定を行う。続いて、制御部21は、取得された対象センシングデータ221Bを第2符号器52Bに入力し、第2符号器52B及び第2メタ識別器54Bの演算処理を実行する。この演算処理により、制御部21は、対象センシングデータ221Bの取得に関する属性を識別した結果に対応する出力値を第2メタ識別器54Bから取得する。
 ステップS503では、制御部21は、評価部212として動作し、対象センシングデータ221Bの取得に関する属性を識別した結果に基づいて、推定器55B又は他の推定器57Bによる推定の結果を採用するか否かを判定する。ステップS504では、制御部21は、ステップS503の判定結果に基づいて、処理の分岐先を決定する。
 ステップS502による識別の結果が対象センシングデータ221Bの取得に関する属性の正解値に適合している場合、制御部21は、推定器55B又は他の推定器57Bによる推定の結果を採用すると判定し、次のステップS505に処理を進める。一方、ステップS502による識別の結果が対象センシングデータ221Bの取得に関する属性の正解値に適合していない場合、制御部21は、推定器55B又は他の推定器57Bによる推定の結果を採用しないと判定し、ステップS505及びステップS506の処理を省略し、本変形例に係る一連の処理を終了する。
 ステップS505では、制御部21は、監視部213Bとして動作し、学習装置1により訓練された第1符号器51B、第2符号器52B、及び推定器55Bを利用して、対象センシングデータ221Bから運転者RBの状態を推定する。或いは、制御部21は、学習装置1により訓練された第1符号器51B及び他の推定器57Bを利用して、対象センシングデータ221Bから運転者RBの状態を推定する。
 具体的には、制御部21は、学習結果データ128Bを参照し、学習済みの第1符号器51B及び推定器55Bの設定を更に行う。制御部21は、対象センシングデータ221Bを各符号器(51B、52B)に入力し、第1符号器51B、第2符号器52B、及び推定器55Bの演算処理を実行する。これにより、制御部21は、対象センシングデータ221Bから運転者RBの状態を推定した結果に対応する出力値を推定器55Bから取得する。
 或いは、制御部21は、学習結果データ128Bを参照し、学習済みの第1符号器51B及び他の推定器57Bの設定を行う。制御部21は、対象センシングデータ221Bを第1符号器51Bに入力し、第1符号器51B及び他の推定器57Bの演算処理を実行する。これにより、制御部21は、対象センシングデータ221Bから運転者RBの状態を推定した結果に対応する出力値を他の推定器57Bから取得する。
 ステップS506では、制御部21は、出力部214として動作し、運転者RBの状態を推定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、運転者RBの状態を推定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、推定の結果に基づいて、何らかの情報処理を実行してもよい。そして、制御部21は、その情報処理を実行した結果を推定の結果に関する情報として出力してもよい。
 当該情報処理の一例として、制御部21は、推定される運転者RBの状態に応じて、警告等の特定のメッセージを出力装置25に出力してもよい。具体例として、運転者RBの眠気度及び疲労度の少なくとも一方を運転者RBの状態として推定した場合、制御部21は、推定された眠気度及び疲労度の少なくとも一方が閾値を超えるか否かを判定してもよい。閾値は適宜設定されてよい。そして、眠気度及び疲労度の少なくとも一方が閾値を超えている場合に、制御部21は、駐車場等に停車し、休憩を取るように運転者RBに促す警告を出力装置25に出力してもよい。
 また、例えば、自動運転の動作を制御する制御装置(不図示)を車両が備えている場合、制御部21は、運転者RBの状態を推定した結果に基づいて、車両の自動運転の動作を指示するための指令を制御装置に送信してもよい。一例として、制御装置が、車両の走行を制御する自動運転モード及び運転者RBの操舵により車両の走行を制御する手動運転モードの切り替え可能に構成されていると想定する。
 このケースにおいて、自動運転モードで車両が走行しており、自動運転モードから手動運転モードへの切り替えを運転者RB又はシステムから受け付けた際に、制御部21は、推定された運転者RBの余裕度が閾値を超えているか否かを判定してもよい。そして、運転者RBの余裕度が閾値を超えている場合に、制御部21は、自動運転モードから手動運転モードへの切り替えを許可する指令を制御装置に送信してもよい。一方、運転者RBの余裕度が閾値以下である場合には、制御部21は、自動運転モードから手動運転モードへの切り替えを許可しない通知を制御装置に送信し、自動運転モードでの走行を維持するようにしてもよい。
 また、手動運転モードで車両が走行している際に、制御部21は、推定された眠気度及び疲労度の少なくとも一方が閾値を超えるか否かを判定してもよい。そして、眠気度及び疲労度の少なくとも一方が閾値を超えている場合に、制御部21は、手動運転モードから自動運転モードに切り替えて、駐車場等の安全な場所に停車するように指示する指令を制御装置に送信してもよい。一方で、そうではない場合には、制御部21は、手動運転モードによる車両の走行を維持するようにしてもよい。
 また、手動運転モードで車両が走行している際に、制御部21は、推定された余裕度が閾値以下であるか否かを判定してもよい。そして、余裕度が閾値以下である場合に、制御部21は、減速する指令を制御装置に送信してもよい。一方で、そうではない場合には、制御部21は、運転者RBの操作による車両の走行を維持してもよい。なお、車両の制御装置と監視装置2Bとは一体のコンピュータにより構成されてよい。
 本変形例によれば、センシングデータから運転者の状態を推定する場面において、導入コストが比較的に低廉で、かつセンシングデータの取得に関する属性の相違にロバストな学習済みの学習モデル5Bを構築することができる。
 一例として、上記眠気度、疲労度、余裕度等を含む体調の変化は、対象者の属性との関係性は低く、血圧等のバイタルの相対的な変化から推定することができる。そのため、体調の変化を推定する場面では、データを取得するドメインに特有の情報は推定タスクの精度に悪影響を及ぼすと考えられる。一方で、所定の疾患(例えば、生活習慣病)の発症リスクは対象者の属性に依存し得る。そのため、所定の疾患を発症する確率を推定する場面では、データを取得するドメインに特有の情報は推定タスクに有用であると考えられる。
 そこで、センサSBは、例えば、血圧計等のバイタルセンサであってよい。これに応じて、訓練データ122Bは、例えば、血圧等のバイタルの測定データであってよい。メタデータ123Bは、例えば、対象者(被験者)の識別情報、及びデータを取得した時間(例えば、測定時間)に関する属性を示すように設定されてよい。正解データ124Bは、例えば、所定の疾患を発症する確率を示すように設定されてよい。他の正解データ125Bは、例えば、体調変化の生じる確率を示すように設定されてよい。
 この設定により上記機械学習を実行することで、第1特徴量は、ドメインに共通の情報として、血圧値等のバイタル値の平均及び増減幅に対応する成分を含むようになる。一方、第2特徴量は、ドメインに特有の情報として、対象者の属性及びデータを取得した時間に基づくバイアスに対応する成分を含むようになる。
 その結果、監視装置2Bにおいて、学習済みの第1符号器51B及び他の推定器57Bを利用することで、上記ドメインに特有の情報を除外し、上記ドメインに共通の情報に基づいて、運転者RBの体調変化を推定するタスクを遂行することができる。そのため、運転者RBの体調変化を比較的に高い精度で推定することができる。また、監視装置2Bにおいて、学習済みの第1符号器51B、第2符号器52B、及び推定器55Bを利用することで、上記ドメインに特有の情報及び共通の情報に基づいて、運転者RBが所定の疾患を発症する確率を推定するタスクを遂行することができる。そのため、運転者RBが所定の疾患を発症する確率を比較的に高い精度で推定することができる。
 なお、状態を推定する対象となる対象者は、図14に例示される車両の運転者RBに限られなくてもよく、あらゆる人物を含んでよい。状態を予測する対象となる対象者は、例えば、オフィス、工場等で作業を行う作業者、バイタルを計測される被計測者等を含んでもよい。
 図16は、対象者の状態を推定する他の場面の一例を模式的に例示する。図16に例示されるシステムは、学習装置1、診断装置2B2、及びデータ生成装置3を備えている。診断装置2B2は、上記監視装置2Bに対応する。図16の例では、診断装置2B2は、バイタルセンサSB2に接続され、このバイタルセンサSB2により被計測者の対象センシングデータを取得する。バイタルセンサSB2は、上記センサSBの一例である。診断装置2B2は、上記監視装置2Bと同様の処理により、被計測者の状態を推定する。被計測者の状態には、当該被計測者の健康状態が含まれてよい。健康状態は、例えば、健康であるか否か、病気になる予兆があるか否か等を含んでよい。正解データ124B及び他の正解データ125Bはそれぞれ、例えば、人物の健康状態の種別、対象の病気になる確率等を示すように構成されてよい。
 (C)外観検査の場面
 図17は、第3変形例に係るシステムの適用場面の一例を模式的に例示する。本変形例は、製品RCの外観検査を行う場面に上記実施形態を適用した例である。図17に示されるとおり、本実施形態に係るシステムは、学習装置1、検査装置2C、及びデータ生成装置3を備えている。上記実施形態と同様に、学習装置1、検査装置2C、及びデータ生成装置3は、ネットワークを介して互いに接続されてよい。本変形例に係るシステムは、取り扱うデータが異なる点を除き、上記実施形態と同様に構成されてよい。
 本変形例に係る学習装置1は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、機械学習の情報処理を実行する。すなわち、ステップS101では、学習装置1は、製品RCの状態を推定するタスクを学習するための複数の学習データセット121Cを取得する。各学習データセット121C、上記学習データセット121と同様に、訓練データ122C、メタデータ123C、正解データ124C、及び他の正解データ125Cの組み合わせにより構成される。訓練データ122C、メタデータ123C、正解データ124C、及び他の正解データ125Cはそれぞれ、上記実施形態に係る訓練データ122、メタデータ123、正解データ124、及び他の正解データ125それぞれに対応する。
 訓練データ122Cは、例えば、製品RCの写る画像データである。訓練データ122Cは、カメラSC又はこれと同種のカメラ(以下、同種のカメラを含んでカメラSCと称する)により製品RC又はこれと同種の製品(以下、同種の製品を含んで製品RCと称する)を撮影することで得られてよい。カメラSCは、例えば、一般的なRGBカメラ、深度カメラ、赤外線カメラ等であってよい。
 製品RCは、例えば、電子機器、電子部品、自動車部品、薬品、食品等の製造ラインで搬送される製品であってよい。電子部品は、例えば、基盤、チップコンデンサ、液晶、リレーの巻線等であってよい。自動車部品は、例えば、コンロッド、シャフト、エンジンブロック、パワーウィンドウスイッチ、パネル等であってよい。薬品は、例えば、包装済みの錠剤、未包装の錠剤等であってよい。製品は、製造過程完了後に生成される最終品であってもよいし、製造過程の途中で生成される中間品であってもよいし、製造過程を経過する前に用意される初期品であってもよい。
 メタデータ123Cは、訓練データ122Cの取得に関する属性として、例えば、製品RCの属性、製品RCの撮影条件、製品RCを製造する工場の属性又はこれらの組み合わせを示す。製品RCの属性は、例えば、製品RCの種別、識別子、素材、外観(例えば、三次元形状)等を含んでよい。製品RCの撮影条件は、例えば、カメラSCの撮影角度、製品RCの向き、照明の条件、カメラSCと製品RCとの間の距離、カメラSCの性能に関する属性、背景条件等を含んでよい。カメラSCの性能に関する属性は、例えば、得られる画像データの種別(RGB画像か否か等)、解像度等を含んでよい。製品RCを製造する工場の属性は、例えば、工場の識別子、製品RCの生産能力等を含んでよい。
 正解データ124C及び他の正解データ125Cはそれぞれ、訓練データ122Cに含まれる特徴として、例えば、製品RCの状態を示す。製品RCの状態は、例えば、欠陥に関するものであってよい。一例として、製品RCの状態は、製品RCに欠陥が含まれるか否か、製品RCに含まれる欠陥の種類、製品RCに含まれる欠陥の範囲又はこれらの組み合わせにより表現されてよい。欠陥は、例えば、傷、汚れ、クラック、打痕、バリ、色ムラ、異物混入等であってよい。
 ステップS102では、学習装置1は、このような訓練データ122C、メタデータ123C、正解データ124C、及び他の正解データ125Cの組み合わせによりそれぞれ構成された複数の学習データセット121Cを使用して、上記実施形態と同様に、学習モデル5Cの機械学習を実施する。学習モデル5Cは、上記実施形態に係る学習モデル5と同様に構成されてよい。すなわち、学習モデル5Cは、第1符号器51C、第2符号器52C、第1メタ識別器53C、第2メタ識別器54C、推定器55C、復号器56C、及び他の推定器57Cを含んでいる。各器51C~57Cは、上記実施形態に係る各器51~57に対応する。各器51C~57Cの構成は、上記実施形態に係る各器51~57と同様であってよい。
 当該機械学習により、第2符号器52Cは、メタデータ123Cにより示される訓練データ122Cの取得に関する属性に対応する成分を含む第2特徴量に当該訓練データ122Cを変換するように訓練される。第1符号器51Cは、訓練データ122Cの取得に関する属性以外の情報、例えば、訓練データ122Cを取得するドメインに共通に現れる情報に対応する成分を含む第1特徴量に当該訓練データ122Cを変換するように訓練される。学習モデル5Cにおける推定器55C又は他の推定器57Cを含む部分は、カメラSCにより得られた画像データに写る製品RCの状態を推定する能力を獲得する。また、学習モデル5Cにおける復号器56Cを含む部分は、カメラSCにより得られた画像データと同種の復号化データを生成する能力を獲得する。
 ステップS103では、学習装置1は、学習済みの学習モデル5Cに関する情報を学習結果データ128Cとして生成し、生成された学習結果データ128Cを所定の記憶領域に保存する。生成された学習結果データ128Cは、任意のタイミングで検査装置2C及びデータ生成装置3に提供されてよい。
 データ生成装置3は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、データ生成に関する情報処理を実行する。すなわち、データ生成装置3は、上記ステップS701~ステップS704の処理を実行する。これにより、データ生成装置3は、学習済みの第1符号器51C及び復号器56Cを利用して、対象画像データから復号化データを生成することができる。復号化データは、対象画像データの取得に関する属性に対応する情報を当該対象画像データから除外することで得られるデータに相当する。また、データ生成装置3は、学習済みの第1符号器51C、第2符号器52C、及び復号器56Cを利用して、取得に関する属性をノイズの分だけ変更した新たなデータ(復号化データ)を生成してもよい。更に、データ生成装置3は、学習済みの第1符号器51C及び第2符号器52Cの少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方のデータを生成してもよい。
 検査装置2Cは、上記推定装置2に対応する。検査装置2Cは、取り扱うデータが異なる点を除き、上記推定装置2と同様に構成されてよい。本変形例では、検査装置2Cは、カメラSCに接続されている。検査装置2Cは、カメラSCから対象画像データを取得する。そして、検査装置2Cは、学習装置1により構築された学習済みの学習モデル5Cを利用して、取得された対象画像データに基づいて、製品RCの状態を推定ことで、製品RCの外観検査を実施する。
 <検査装置のハードウェア構成>
 図18Aは、本変形例に係る検査装置2Cのハードウェア構成の一例を模式的に例示する。図18Aに示されるとおり、本変形例に係る検査装置2Cは、上記推定装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27が電気的に接続されたコンピュータである。検査装置2Cは、外部インタフェース27を介してカメラSCに接続される。カメラSCは、製品RCを撮影可能な場所に適宜配置されてよい。例えば、カメラSCは、製品RCを搬送するコンベア装置の近傍に配置されてよい。ただし、検査装置2Cのハードウェア構成は、このような例に限定されなくてもよい。検査装置2Cの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。検査装置2Cは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、PLC(programmable logic controller)等であってもよい。
 本変形例に係る検査装置2Cの記憶部22は、検査プログラム82C、学習結果データ128C等の各種情報を記憶する。検査プログラム82C及び学習結果データ128Cは、上記実施形態に係る推定プログラム82及び学習結果データ128に対応する。検査プログラム82C及び学習結果データ128Cのうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、検査装置2Cは、記憶媒体92から、検査プログラム82C及び学習結果データ128Cのうちの少なくともいずれかを取得してもよい。
 <検査装置のソフトウェア構成及び動作例>
 図18Bは、本変形例に係る検査装置2Cのソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、検査装置2Cのソフトウェア構成は、制御部21による検査プログラム82Cの実行により実現される。図18Bに示されるとおり、カメラSCにより得られる製品RCの写る画像データを取り扱う点を除き、検査装置2Cのソフトウェア構成は、上記推定装置2のソフトウェア構成と同様である。これにより、検査装置2Cは、上記推定装置2の推定処理と同様に、検査処理に関する一連の処理を実行する。
 すなわち、ステップS501では、制御部21は、データ取得部211として動作し、製品RCの写る対象画像データ221CをカメラSCから取得する。ステップS502では、制御部21は、評価部212として動作し、学習装置1により訓練された第2符号器52C及び第2メタ識別器54Cを利用して、対象画像データ221Cの取得に関する属性を識別する。具体的には、制御部21は、学習結果データ128Cを参照し、学習済みの第2符号器52C及び第2メタ識別器54Cの設定を行う。続いて、制御部21は、取得された対象画像データ221Cを第2符号器52Cに入力し、第2符号器52C及び第2メタ識別器54Cの演算処理を実行する。この演算処理により、制御部21は、対象画像データ221Cの取得に関する属性を識別した結果に対応する出力値を第2メタ識別器54Cから取得する。
 ステップS503では、制御部21は、評価部212として動作し、対象画像データ221Cの取得に関する属性を識別した結果に基づいて、推定器55C又は他の推定器57Cによる推定の結果を採用するか否かを判定する。ステップS504では、制御部21は、ステップS503の判定結果に基づいて、処理の分岐先を決定する。
 ステップS502による識別の結果が対象画像データ221Cの取得に関する属性の正解値に適合している場合、制御部21は、推定器55C又は他の推定器57Cによる推定の結果を採用すると判定し、次のステップS505に処理を進める。一方、ステップS502による識別の結果が対象画像データ221Cの取得に関する属性の正解値に適合していない場合、制御部21は、推定器55C又は他の推定器57Cによる推定の結果を採用しないと判定し、ステップS505及びステップS506の処理を省略し、本変形例に係る一連の処理を終了する。
 ステップS505では、制御部21は、検査部213Cとして動作し、学習装置1により訓練された第1符号器51C、第2符号器52C、及び推定器55Cを利用して、対象画像データ221Cに写る製品RCの状態を推定する。或いは、制御部21は、学習装置1により訓練された第1符号器51C及び他の推定器57Cを利用して、対象画像データ221Cに写る製品RCの状態を推定する。
 具体的には、制御部21は、学習結果データ128Cを参照し、学習済みの第1符号器51C及び推定器55Cの設定を更に行う。制御部21は、対象画像データ221Cを各符号器(51C、52C)に入力し、第1符号器51C、第2符号器52C、及び推定器55Cの演算処理を実行する。これにより、制御部21は、対象画像データ221Cに写る製品RCの状態を推定した結果に対応する出力値を推定器55Cから取得する。
 或いは、制御部21は、学習結果データ128Cを参照し、学習済みの第1符号器51C及び他の推定器57Cの設定を行う。制御部21は、対象画像データ221Cを第1符号器51Cに入力し、第1符号器51C及び他の推定器57Cの演算処理を実行する。これにより、制御部21は、対象画像データ221Cに写る製品RCの状態を推定した結果に対応する出力値を他の推定器57Cから取得する。
 ステップS506では、制御部21は、出力部214として動作し、製品RCの状態を推定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、製品RCの状態を推定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、製品RCに欠陥が含まれる場合に、そのことを知らせるための警告を出力装置25に出力してもよい。また、例えば、検査装置2Cが製品RCを搬送するコンベア装置(不図示)に接続される場合、製品RCの状態を推定した結果に基づいて、欠陥のない製品RCと欠陥のある製品RCとを別のラインで搬送されるようにコンベア装置を制御してもよい。
 本変形例によれば、画像データに写る製品の状態を推定する場面において、導入コストが比較的に低廉で、かつセンシングデータの取得に関する属性の相違にロバストな学習済みの学習モデル5Cを構築することができる。
 製品RCに欠陥が存在するか否かを推定する場面では、欠陥の写る状態に変動を及ぼし得る、製品RCの表面材質、コンベアの背景の柄、照明条件等のドメインに特有の情報が推定精度に悪影響を及ぼす可能性がある。一方で、製品RCに生じる欠陥は、当該製品RCの種別に依存し得る。そのため、製品RCに存在する欠陥の種別を推定する場面では、製品RCの種類等のドメインに特有の情報が欠陥の種別の推定に有用である可能性がある。
 そこで、メタデータ123Cは、例えば、製品RCの種別、製品RCの素材、製品RCの外観、製品RCの向き、照明条件、及び背景条件を示すように設定されてよい。正解データ124Cは、例えば、欠陥の種別を示すように設定されてよい。他の正解データ125Cは、例えば、欠陥の有無を示すように設定されてよい。
 この設定により上記機械学習を実行することで、第1特徴量は、ドメインに共通の情報として、欠陥の外観に対応する成分を含むようになる。一方、第2特徴量は、ドメインに特有の情報として、背景条件(例えば、コンベアの柄)、製品RCの外観、欠陥の外観と種類との対応関係、及び製品RCの種別毎の所定の欠陥の発生確率に対応する成分を含むようになる。
 その結果、検査装置2Cにおいて、学習済みの第1符号器51C及び他の推定器57Cを利用することで、上記ドメインに特有の情報を除外し、上記ドメインに共通の情報に基づいて、欠陥の有無を推定するタスクを遂行することができる。そのため、製品RCに欠陥が存在するか否かを比較的に高い精度で推定することができる。また、検査装置2Cにおいて、学習済みの第1符号器51C、第2符号器52C、及び推定器55Cを利用することで、上記ドメインに特有の情報及び共通の情報に基づいて、欠陥の種別を推定するタスクを遂行することができる。そのため、製品RCに欠陥が存在する場合に、その欠陥の種別を比較的に高い精度で推定することができる。
 (D)人物検出の場面
 図19は、第4変形例に係るシステムの適用場面の一例を模式的に例示する。本変形例は、画像データに写る人物の属性を推定する場面に上記実施形態を適用した例である。図19に示されるとおり、本実施形態に係るシステムは、学習装置1、監視装置2D、及びデータ生成装置3を備えている。上記実施形態と同様に、学習装置1、監視装置2D、及びデータ生成装置3は、ネットワークを介して互いに接続されてよい。本変形例に係るシステムは、取り扱うデータが異なる点を除き、上記実施形態と同様に構成されてよい。
 本変形例に係る学習装置1は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、機械学習の情報処理を実行する。すなわち、ステップS101では、学習装置1は、人物の属性を推定するタスクを学習するための複数の学習データセット121Dを取得する。各学習データセット121D、上記学習データセット121と同様に、訓練データ122D、メタデータ123D、正解データ124D、及び他の正解データ125Dの組み合わせにより構成される。訓練データ122D、メタデータ123D、正解データ124D、及び他の正解データ125Dはそれぞれ、上記実施形態に係る訓練データ122、メタデータ123、正解データ124、及び他の正解データ125それぞれに対応する。
 訓練データ122Dは、例えば、被験者等の人物の写る画像データである。訓練データ122Dは、カメラSD又はこれと同種のカメラ(以下、同種のカメラを含んでカメラSDと称する)により被験者を撮影することで得られてよい。カメラSDは、例えば、一般的なRGBカメラ、深度カメラ、赤外線カメラ等であってよい。
 メタデータ123Dは、訓練データ122Dの取得に関する属性として、例えば、カメラSDの動作設定に関する属性、カメラSDの設置状況に関する属性、訓練データ122Dを取得した時間に関する属性、カメラSDの設置場所に関する属性又はこれらの組み合わせを示す。カメラSDの動作設定に関する属性は、例えば、計測範囲の設定値、解像度、サンプリング周波数の設定値を含んでよい。カメラSDの設置状況に関する属性は、例えば、カメラSDの設置角度等を含んでよい。時間に関する属性は、例えば、時間帯の種別、曜日の種別、平日及び休日の別、月の種別、季節の種別等を含んでよい。
 正解データ124D及び他の正解データ125Dはそれぞれ、訓練データ122Dに含まれる特徴として、例えば、人物の写る範囲(バウンディングボックス)、人物の識別情報、人物の状態又はこれらの組み合わせを示す。人物の識別情報は、例えば、人物の識別子、名前、性別、年齢、体格、人種等を含んでもよい。人物の状態は、例えば、人物の行動、人物の姿勢等を含んでもよい。なお、正解データ124D又は他の正解データ125Dが人物のバウンディングボックスを示す場合、人物の属性を推定することは、画像データ内の人物の写る範囲を検出することを含む。
 ステップS102では、学習装置1は、このような訓練データ122D、メタデータ123D、正解データ124D、及び他の正解データ125Dの組み合わせによりそれぞれ構成された複数の学習データセット121Dを使用して、上記実施形態と同様に、学習モデル5Dの機械学習を実施する。学習モデル5Dは、上記実施形態に係る学習モデル5と同様に構成されてよい。すなわち、学習モデル5Dは、第1符号器51D、第2符号器52D、第1メタ識別器53D、第2メタ識別器54D、推定器55D、復号器56D、及び他の推定器57Dを含んでいる。各器51D~57Dは、上記実施形態に係る各器51~57に対応する。各器51D~57Dの構成は、上記実施形態に係る各器51~57と同様であってよい。
 当該機械学習により、第2符号器52Dは、メタデータ123Dにより示される訓練データ122Dの取得に関する属性に対応する成分を含む第2特徴量に当該訓練データ122Dを変換するように訓練される。第1符号器51Dは、訓練データ122Dの取得に関する属性以外の情報、例えば、訓練データ122Dを取得するドメインに共通に現れる情報に対応する成分を含む第1特徴量に当該訓練データ122Dを変換するように訓練される。学習モデル5Dにおける推定器55D又は他の推定器57Dを含む部分は、カメラSDにより得られた画像データから人物の属性を推定する能力を獲得する。また、学習モデル5Dにおける復号器56Dを含む部分は、カメラSDにより得られた画像データと同種の復号化データを生成する能力を獲得する。
 ステップS103では、学習装置1は、学習済みの学習モデル5Dに関する情報を学習結果データ128Dとして生成し、生成された学習結果データ128Dを所定の記憶領域に保存する。生成された学習結果データ128Dは、任意のタイミングで監視装置2D及びデータ生成装置3に提供されてよい。
 データ生成装置3は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、データ生成に関する情報処理を実行する。すなわち、データ生成装置3は、上記ステップS701~ステップS704の処理を実行する。これにより、データ生成装置3は、学習済みの第1符号器51D及び復号器56Dを利用して、対象画像データから復号化データを生成することができる。復号化データは、対象画像データの取得に関する属性に対応する情報を当該対象画像データから除外することで得られるデータに相当する。また、データ生成装置3は、学習済みの第1符号器51D、第2符号器52D、及び復号器56Dを利用して、取得に関する属性をノイズの分だけ変更した新たなデータ(復号化データ)を生成してもよい。更に、データ生成装置3は、学習済みの第1符号器51D及び第2符号器52Dの少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方のデータを生成してもよい。
 監視装置2Dは、上記推定装置2に対応する。監視装置2Dは、取り扱うデータが異なる点を除き、上記推定装置2と同様に構成されてよい。本変形例では、監視装置2Dは、ネットワークを介してカメラSDに接続される。監視装置2Dは、カメラSDから対象画像データを取得する。そして、監視装置2Dは、学習装置1により構築された学習済みの学習モデル5Dを利用して、取得された対象画像データに写る人物の属性を推定する。
 <監視装置のハードウェア構成>
 図20Aは、本変形例に係る監視装置2Dのハードウェア構成の一例を模式的に例示する。図20Aに示されるとおり、本変形例に係る監視装置2Dは、上記推定装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27が電気的に接続されたコンピュータである。監視装置2Dは、通信インタフェース23を介してカメラSDに接続される。カメラSDは適宜配置されてよい。一例として、カメラSDは、駅のホーム、街頭、店舗内等に設置されてよい。ただし、監視装置2Dのハードウェア構成は、このような例に限定されなくてもよい。監視装置2Dの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。監視装置2Dは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってよい。
 本変形例に係る監視装置2Dの記憶部22は、監視プログラム82D、学習結果データ128D等の各種情報を記憶する。監視プログラム82D及び学習結果データ128Dは、上記実施形態に係る推定プログラム82及び学習結果データ128に対応する。監視プログラム82D及び学習結果データ128Dのうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、監視装置2Dは、記憶媒体92から、監視プログラム82D及び学習結果データ128Dのうちの少なくともいずれかを取得してもよい。
 <監視装置のソフトウェア構成及び動作例>
 図20Bは、本変形例に係る監視装置2Dのソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、監視装置2Dのソフトウェア構成は、制御部21による監視プログラム82Dの実行により実現される。図20Bに示されるとおり、カメラSDにより得られる人物の写る画像データを取り扱う点を除き、監視装置2Dのソフトウェア構成は、上記推定装置2のソフトウェア構成と同様である。これにより、監視装置2Dは、上記推定装置2の推定処理と同様に、監視処理に関する一連の処理を実行する。
 すなわち、ステップS501では、制御部21は、データ取得部211として動作し、人物の写り得る対象画像データ221DをカメラSDから取得する。ステップS502では、制御部21は、評価部212として動作し、学習装置1により訓練された第2符号器52D及び第2メタ識別器54Dを利用して、対象画像データ221Dの取得に関する属性を識別する。具体的には、制御部21は、学習結果データ128Dを参照し、学習済みの第2符号器52D及び第2メタ識別器54Dの設定を行う。続いて、制御部21は、取得された対象画像データ221Dを第2符号器52Dに入力し、第2符号器52D及び第2メタ識別器54Dの演算処理を実行する。この演算処理により、制御部21は、対象画像データ221Dの取得に関する属性を識別した結果に対応する出力値を第2メタ識別器54Dから取得する。
 ステップS503では、制御部21は、評価部212として動作し、対象画像データ221Dの取得に関する属性を識別した結果に基づいて、推定器55D又は他の推定器57Dによる推定の結果を採用するか否かを判定する。ステップS504では、制御部21は、ステップS503の判定結果に基づいて、処理の分岐先を決定する。
 ステップS502による識別の結果が対象画像データ221Dの取得に関する属性の正解値に適合している場合、制御部21は、推定器55D又は他の推定器57Dによる推定の結果を採用すると判定し、次のステップS505に処理を進める。一方、ステップS502による識別の結果が対象画像データ221Dの取得に関する属性の正解値に適合していない場合、制御部21は、推定器55D又は他の推定器57Dによる推定の結果を採用しないと判定し、ステップS505及びステップS506の処理を省略し、本変形例に係る一連の処理を終了する。
 ステップS505では、制御部21は、監視部213Dとして動作し、学習装置1により訓練された第1符号器51D、第2符号器52D、及び推定器55Dを利用して、対象画像データ221Dに写る人物の属性を推定する。或いは、制御部21は、学習装置1により訓練された第1符号器51D及び他の推定器57Dを利用して、対象画像データ221Dに写る人物の属性を推定する。
 具体的には、制御部21は、学習結果データ128Dを参照し、学習済みの第1符号器51D及び推定器55Dの設定を更に行う。制御部21は、対象画像データ221Dを各符号器(51D、52D)に入力し、第1符号器51D、第2符号器52D、及び推定器55Dの演算処理を実行する。これにより、制御部21は、対象画像データ221Dに写る人物の属性を推定した結果に対応する出力値を推定器55Dから取得する。
 或いは、制御部21は、学習結果データ128Dを参照し、学習済みの第1符号器51D及び他の推定器57Dの設定を行う。制御部21は、対象画像データ221Dを第1符号器51Dに入力し、第1符号器51D及び他の推定器57Dの演算処理を実行する。これにより、制御部21は、対象画像データ221Dに写る人物の属性を推定した結果に対応する出力値を他の推定器57Dから取得する。
 ステップS506では、制御部21は、出力部214として動作し、人物の属性を推定した結果に関する情報を出力する。例えば、制御部21は、人物の属性を推定した結果をそのまま出力装置25に出力してもよい。また、例えば、人物の写る範囲を人物の属性として推定した場合、制御部21は、対象画像データ221Dを出力し、出力される対象画像データ221D上で推定される人物の写る範囲を示してもよい。また、例えば、カメラSDが駅のホーム等に設置されており、駅のホームから転落する予兆がある等のイベントを人物の状態として推定した場合に、制御部21は、推定されるイベントの種別に応じた警告等のメッセージを出力してもよい。
 本変形例によれば、画像データに写る人物の属性を推定する場面において、導入コストが比較的に低廉で、かつセンシングデータの取得に関する属性の相違にロバストな学習済みの学習モデル5Dを構築することができる。
 一例として、人物の写る範囲を推定する場面では、人物の写る状態に変動を及ぼし得る、カメラSDの解像度、撮影の時間帯、撮影の季節等のドメインに特有の情報が推定精度に悪影響を及ぼす可能性がある。一方で、行動、姿勢等の人物の状態は、人物の存在する場所に依存し得る。そのため、人物の状態を推定する場面では、カメラSDの設置場所等のドメインに特有の情報が人物の状態の推定に有用である可能性がある。
 そこで、メタデータ123Dは、例えば、カメラSDの設置場所、カメラSDの解像度、撮影の時間帯、及び撮影の季節を示すように設定されてよい。正解データ124Dは、例えば、人物の状態を示すように設定されてよい。他の正解データ125Dは、例えば、人物の写る範囲を示すように設定されてよい。
 この設定により上記機械学習を実行することで、第1特徴量は、ドメインに共通の情報として、バイアスの除去された人物の外観(例えば、平均的な人物の外観)に対応する成分を含むようになる。一方、第2特徴量は、ドメインに特有の情報として、カメラSDの設置場所、カメラSDの解像度、撮影の時間帯、及び撮影の季節による人物の写り方、並びに地点毎の人物の姿勢の発生確率に対応する成分を含むようになる。
 その結果、監視装置2Dにおいて、学習済みの第1符号器51D及び他の推定器57Dを利用することで、上記ドメインに特有の情報を除外し、上記ドメインに共通の情報に基づいて、人物の写る範囲を推定するタスクを遂行することができる。そのため、対象画像データ221D内において人物の写る範囲を比較的に高い精度で推定することができる。また、監視装置2Dにおいて、学習済みの第1符号器51D、第2符号器52D、及び推定器55Dを利用することで、上記ドメインに特有の情報及び共通の情報の両方に基づいて、人物の状態を推定するタスクを遂行することができる。そのため、行動、姿勢等の人物の状態を比較的に高い精度で推定することができる。
 (E)運転状況を監視する場面
 図21は、第5変形例に係るシステムの適用場面の一例を模式的に例示する。本変形例は、車載センサにより得られるセンシングデータから車両外部の状況を推定する場面に上記実施形態を適用した例である。図21に示されるとおり、本実施形態に係るシステムは、学習装置1、監視装置2E、及びデータ生成装置3を備えている。上記実施形態と同様に、学習装置1、監視装置2E、及びデータ生成装置3は、ネットワークを介して互いに接続されてよい。本変形例に係るシステムは、取り扱うデータが異なる点を除き、上記実施形態と同様に構成されてよい。
 本変形例に係る学習装置1は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、機械学習の情報処理を実行する。すなわち、ステップS101では、学習装置1は、車両外部の状況を推定するタスクを学習するための複数の学習データセット121Eを取得する。各学習データセット121E、上記学習データセット121と同様に、訓練データ122E、メタデータ123E、正解データ124E、及び他の正解データ125Eの組み合わせにより構成される。訓練データ122E、メタデータ123E、正解データ124E、及び他の正解データ125Eはそれぞれ、上記実施形態に係る訓練データ122、メタデータ123、正解データ124、及び他の正解データ125それぞれに対応する。
 訓練データ122Eは、例えば、車載センサにより得られるセンシングデータである。訓練データ122Eは、車載センサSE又はこれと同種のセンサ(以下、同種のセンサを含んで車載センサSEと称する)により車両外部周辺の状況を撮影することで得られてよい。車載センサSEは、例えば、カメラ、Lidarセンサ、ミリ波レーダ、超音波センサ等であってよい。カメラは、例えば、一般的なRGBカメラ、深度カメラ、赤外線カメラ等であってよい。訓練データ122Eは、例えば、画像データ、各種センサの測定データ等により構成されてよい。
 メタデータ123Eは、訓練データ122Eの取得に関する属性として、例えば、車両の属性、車載センサSEの観測環境に関する属性、又はこれらの組み合わせを示す。車両の属性は、例えば、車両の種別、車両の識別番号、車両の仕様等を含んでよい。観測環境に関する属性は、例えば、場所、天候、気温、湿度、照度等を含んでもよい。更に、観測環境に関する属性は、例えば、市街地であるか否か、田舎道であるか否か、道路の種別等の景観に関する情報を含んでもよい。
 正解データ124E及び他の正解データ125Eはそれぞれ、訓練データ122Eに含まれる特徴として、例えば、車両の外部環境に関する情報、事故のリスク、車両外部の状況に応じた車両に対する動作指令、又はこれらの組み合わせを示す。車両の外部環境に関する情報は、例えば、車両の走行する道路に関する情報、車両の走行方向に存在する物体に関する情報等を含んでよい。車両の走行する道路に関する情報は、例えば、走行車線の種別、道路の種別等を示す情報含んでよい。車両の走行方向に存在する物体は、例えば、道路、信号機、障害物(人、物)等であってよい。車両の走行方向に存在する物体に関する情報は、例えば、道路の路面状態、信号機の点灯状態、障害物の有無、障害物の種別、障害物の寸法、障害物の大きさ、障害物の速度、障害物のイベント情報等を含んでよい。障害物のイベント情報は、例えば、人又は車両の飛び出し、急発進、急停車、車線変更等を示してよい。このイベント情報は、例えば、障害物の有無、障害物の速度等のその他の情報により表現されてよい。事故のリスクは、例えば、事故の種別及びその事故の発生確率により示されてよい。車両外部の状況に応じた車両に対する動作指令は、例えば、アクセル量、ブレーキ量、ハンドル操舵角、ライトの点灯、クラクションの使用等により規定されてよい。なお、正解データ124E又は他の正解データ125Eが車両外部の状況に応じた車両に対する動作指令を示す場合、車両外部の状況を推定することは、車両外部の状況に応じて車両に対する動作指令を決定することを含む。
 ステップS102では、学習装置1は、このような訓練データ122E、メタデータ123E、正解データ124E、及び他の正解データ125Eの組み合わせによりそれぞれ構成された複数の学習データセット121Eを使用して、上記実施形態と同様に、学習モデル5Eの機械学習を実施する。学習モデル5Eは、上記実施形態に係る学習モデル5と同様に構成されてよい。すなわち、学習モデル5Eは、第1符号器51E、第2符号器52E、第1メタ識別器53E、第2メタ識別器54E、推定器55E、復号器56E、及び他の推定器57Eを含んでいる。各器51E~57Eは、上記実施形態に係る各器51~57に対応する。各器51E~57Eの構成は、上記実施形態に係る各器51~57と同様であってよい。
 当該機械学習により、第2符号器52Eは、メタデータ123Eにより示される訓練データ122Eの取得に関する属性に対応する成分を含む第2特徴量に当該訓練データ122Eを変換するように訓練される。第1符号器51Eは、訓練データ122Eの取得に関する属性以外の情報、例えば、訓練データ122Eを取得するドメインに共通に現れる情報に対応する成分を含む第1特徴量に当該訓練データ122Eを変換するように訓練される。学習モデル5Eにおける推定器55E又は他の推定器57Eを含む部分は、車載センサSEにより得られたセンシングデータから車両外部の状況を推定する能力を獲得する。また、学習モデル5Eにおける復号器56Eを含む部分は、車載センサSEにより得られたセンシングデータと同種の復号化データを生成する能力を獲得する。
 ステップS103では、学習装置1は、学習済みの学習モデル5Eに関する情報を学習結果データ128Eとして生成し、生成された学習結果データ128Eを所定の記憶領域に保存する。生成された学習結果データ128Eは、任意のタイミングで監視装置2E及びデータ生成装置3に提供されてよい。
 データ生成装置3は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、データ生成に関する情報処理を実行する。すなわち、データ生成装置3は、上記ステップS701~ステップS704の処理を実行する。これにより、データ生成装置3は、学習済みの第1符号器51E及び復号器56Eを利用して、対象センシングデータから復号化データを生成することができる。復号化データは、対象センシングデータの取得に関する属性に対応する情報を当該対象センシングデータから除外することで得られるデータに相当する。また、データ生成装置3は、学習済みの第1符号器51E、第2符号器52E、及び復号器56Eを利用して、取得に関する属性をノイズの分だけ変更した新たなデータ(復号化データ)を生成してもよい。更に、データ生成装置3は、学習済みの第1符号器51E及び第2符号器52Eの少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方のデータを生成してもよい。
 監視装置2Eは、上記推定装置2に対応する。監視装置2Eは、取り扱うデータが異なる点を除き、上記推定装置2と同様に構成されてよい。本変形例では、監視装置2Eは、車載センサSEに接続されている。監視装置2Eは、車載センサSEから対象センシングデータを取得する。そして、監視装置2Eは、学習装置1により構築された学習済みの学習モデル5Eを利用して、取得された対象センシングデータから車両外部の状況を推定する。
 <監視装置のハードウェア構成>
 図22Aは、本変形例に係る監視装置2Eのハードウェア構成の一例を模式的に例示する。図22Aに示されるとおり、本変形例に係る監視装置2Eは、上記推定装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27が電気的に接続されたコンピュータである。監視装置2Eは、外部インタフェース27を介して車載センサSEに接続される。車載センサSEは、車両外部の状況を監視可能であれば、実施の形態に応じて適宜配置されてよい。ただし、監視装置2Eのハードウェア構成は、このような例に限定されなくてもよい。監視装置2Eの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。監視装置2Eは、提供されるサービス専用に設計された情報処理装置の他、汎用のコンピュータ、スマートフォンを含む携帯電話、車載装置等であってもよい。
 本変形例に係る監視装置2Eの記憶部22は、監視プログラム82E、学習結果データ128E等の各種情報を記憶する。監視プログラム82E及び学習結果データ128Eは、上記実施形態に係る推定プログラム82及び学習結果データ128に対応する。監視プログラム82E及び学習結果データ128Eのうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、監視装置2Eは、記憶媒体92から、監視プログラム82E及び学習結果データ128Eのうちの少なくともいずれかを取得してもよい。
 <監視装置のソフトウェア構成及び動作例>
 図22Bは、本変形例に係る監視装置2Eのソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、監視装置2Eのソフトウェア構成は、制御部21による監視プログラム82Eの実行により実現される。図22Bに示されるとおり、車載センサSEにより得られるセンシングデータを取り扱う点を除き、監視装置2Eのソフトウェア構成は、上記推定装置2のソフトウェア構成と同様である。これにより、監視装置2Eは、上記推定装置2の推定処理と同様に、監視処理に関する一連の処理を実行する。
 すなわち、ステップS501では、制御部21は、データ取得部211として動作し、車両外部の状況の反映された対象センシングデータ221Eを車載センサSEから取得する。ステップS502では、制御部21は、評価部212として動作し、学習装置1により訓練された第2符号器52E及び第2メタ識別器54Eを利用して、対象センシングデータ221Eの取得に関する属性を識別する。具体的には、制御部21は、学習結果データ128Eを参照し、学習済みの第2符号器52E及び第2メタ識別器54Eの設定を行う。続いて、制御部21は、取得された対象センシングデータ221Eを第2符号器52Eに入力し、第2符号器52E及び第2メタ識別器54Eの演算処理を実行する。この演算処理により、制御部21は、対象センシングデータ221Eの取得に関する属性を識別した結果に対応する出力値を第2メタ識別器54Eから取得する。
 ステップS503では、制御部21は、評価部212として動作し、対象センシングデータ221Eの取得に関する属性を識別した結果に基づいて、推定器55E又は他の推定器57Eによる推定の結果を採用するか否かを判定する。ステップS504では、制御部21は、ステップS503の判定結果に基づいて、処理の分岐先を決定する。
 ステップS502による識別の結果が対象センシングデータ221Eの取得に関する属性の正解値に適合している場合、制御部21は、推定器55E又は他の推定器57Eによる推定の結果を採用すると判定し、次のステップS505に処理を進める。一方、ステップS502による識別の結果が対象センシングデータ221Eの取得に関する属性の正解値に適合していない場合、制御部21は、推定器55E又は他の推定器57Eによる推定の結果を採用しないと判定し、ステップS505及びステップS506の処理を省略し、本変形例に係る一連の処理を終了する。
 ステップS505では、制御部21は、監視部213Eとして動作し、学習装置1により訓練された第1符号器51E、第2符号器52E、及び推定器55Eを利用して、対象センシングデータ221Eから車両外部の状況を推定する。或いは、制御部21は、学習装置1により訓練された第1符号器51E及び他の推定器57Eを利用して、対象センシングデータ221Eから車両外部の状況を推定する。
 具体的には、制御部21は、学習結果データ128Eを参照し、学習済みの第1符号器51E及び推定器55Eの設定を更に行う。制御部21は、対象センシングデータ221Eを各符号器(51E、52E)に入力し、第1符号器51E、第2符号器52E、及び推定器55Eの演算処理を実行する。これにより、制御部21は、対象センシングデータ221Eから車両外部の状況を推定した結果に対応する出力値を推定器55Eから取得する。
 或いは、制御部21は、学習結果データ128Eを参照し、学習済みの第1符号器51E及び他の推定器57Eの設定を行う。制御部21は、対象センシングデータ221Eを第1符号器51Eに入力し、第1符号器51E及び他の推定器57Eの演算処理を実行する。これにより、制御部21は、対象センシングデータ221Eから車両外部の状況を推定した結果に対応する出力値を他の推定器57Eから取得する。
 ステップS506では、制御部21は、出力部214として動作し、車両外部の状況を推定した結果に関する情報を出力する。例えば、制御部21は、車両外部の状況を推定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、推定される車両の外部環境及び事故のリスクの少なくとも一方に基づいて、車両の走行に危険の生じる可能性があるか否かを判定してもよい。車両の走行に危険の生じる可能性があると判定するケースは、実施の形態に応じて適宜設定されてよい。例えば、人又は車両の飛び出し、急発進、急停車、車線変更等のイベントが生じると推定されているケース、事故の発生確率が閾値以上であるケース等において、制御部21は、車両の走行に危険の生じる可能性があると判定してもよい。閾値は適宜設定されてよい。車両の走行に危険の生じる可能性があると判定した場合に、制御部21は、その危険を知らせるための警告を出力装置25に出力してもよい。
 また、車両外部の状況に応じた車両に対する動作指令を示す正解データ124E又は他の正解データ125Eが与えられている場合、制御部21は、車両外部の状況を推定した結果として、車両外部の状況に応じた車両に対する動作指令を取得する。制御部21は、取得された動作指令に基づいて車両の動作を直接的に制御してもよい。或いは、車両が、当該車両の動作を制御する制御装置を備える場合、制御部21は、取得された動作指令を制御装置に与えることで、車両の動作を間接的に制御してもよい。
 なお、推定結果に基づいて、車両の動作を制御する方法は、このような例に限定されなくてもよい。制御部21は、例えば、上記車両の外部環境又は事故リスクの推定結果に基づいて、車両の動作方針を決定してもよい。推定結果と車両の動作方針との対応関係は、例えば、データテーブル等のデータにより与えられてよい。このデータは、例えば、制御部21内のRAM、記憶部22、記憶媒体92、外部記憶装置、又はこれらの組み合わせに保持されていてよい。制御部21は、このデータを参照することで、車両の外部環境又は事故リスクを推定した結果に応じて、車両の動作方針を決定してよい。車両の動作方針は、例えば、アクセル量、ブレーキ量、ハンドル操舵角、ライトの点灯、クラクションの使用等により規定されてよい。そして、制御部21は、決定された動作方針に従って、車両の動作を直接的に又は間接的に制御してもよい。
 本変形例によれば、センシングデータから車両外部の状況を推定する場面において、導入コストが比較的に低廉で、かつセンシングデータの取得に関する属性の相違にロバストな学習済みの学習モデル5Eを構築することができる。
 一例として、車両の外部環境が同じであっても、車両に対する動作指令及び事故のリスクは、車両の走行する道路の種別、天候等に応じて相違し得る。そのため、車両外部の状況に応じた動作指令又は事故のリスクを推定する場面では、観測環境に関する属性等のドメインに特有の情報が動作指令の決定に有用である可能性がある。これに対して、車両の外部環境を推定する場面では、背景の相違が外乱となって、推定タスクの精度に悪影響を及ぼす可能性がある。
 そこで、車載センサSEは、例えば、カメラ、Lidarセンサ、ミリ波レーダ等であってよい。訓練データ122Eは、例えば、画像データ、測定データ等であってよい。メタデータ123Eは、例えば、車両の種別、天候、道路の種別、市街地であるか否か、及び田舎道であるか否かを示すように設定されてよい。正解データ124Eは、車両外部の状況に応じた車両に対する動作指令又は事故のリスクを示すように設定されてよい。他の正解データ125Eは、車両の外部環境に関する情報を示すように設定されてよい。
 この設定により上記機械学習を実行することで、第1特徴量は、ドメインに共通の情報として、訓練データ122Eに表れる道路の形状、歩行者、及び他の車両に関する情報に対応する成分を含むようになる。一方、第2特徴量は、ドメインに特有の情報として、訓練データ122Eに表れる道路の種別、天候、及び風景に関する情報に対応する成分を含むようになる。
 その結果、監視装置2Eにおいて、学習済みの第1符号器51E及び他の推定器57Eを利用することで、上記ドメインに特有の情報を除外し、上記ドメインに共通の情報に基づいて、車両の外部環境を推定するタスクを遂行することができる。そのため、車両の外部環境を比較的に高い精度で推定することができる。また、監視装置2Eにおいて、学習済みの第1符号器51E、第2符号器52E、及び推定器55Eを利用することで、上記ドメインに特有の情報及び共通の情報の両方に基づいて、車両外部の状況に応じた車両に対する動作指令又は事故のリスクを推定するタスクを遂行することができる。そのため、車両外部の状況に応じた車両に対する動作指令又は事故のリスクを比較的に高い精度で推定することができる。
 (F)物品又はサービスを推奨する場面
 図23は、第6変形例に係るシステムの適用場面の一例を模式的に例示する。本変形例は、顧客の購買、ウェブの閲覧等の行動の履歴データに基づいて推奨される物品又はサービスを推定する場面に上記実施形態を適用した例である。図23に示されるとおり、本実施形態に係るシステムは、学習装置1、推奨装置2F、及びデータ生成装置3を備えている。上記実施形態と同様に、学習装置1、推奨装置2F、及びデータ生成装置3は、ネットワークを介して互いに接続されてよい。本変形例に係るシステムは、取り扱うデータが異なる点を除き、上記実施形態と同様に構成されてよい。
 本変形例に係る学習装置1は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、機械学習の情報処理を実行する。すなわち、ステップS101では、学習装置1は、顧客に推奨される商品又はサービスを推奨するタスクを学習するための複数の学習データセット121Fを取得する。各学習データセット121F、上記学習データセット121と同様に、訓練データ122F、メタデータ123F、正解データ124F、及び他の正解データ125Fの組み合わせにより構成される。訓練データ122F、メタデータ123F、正解データ124F、及び他の正解データ125Fはそれぞれ、上記実施形態に係る訓練データ122、メタデータ123、正解データ124、及び他の正解データ125それぞれに対応する。
 訓練データ122Fは、例えば、顧客の履歴データである。履歴データは、例えば、顧客の購買、ウェブにおける広告の閲覧、検索、リンクの軌跡、過去に推奨された商品又はサービス等を示す情報を含んでよい。履歴データは、例えば、PC、携帯電話等のユーザ端末を顧客が操作することにより蓄積されてよい。履歴データの蓄積場所は、例えば、顧客のユーザ端末、閲覧に供されたウェブサーバ等であってよい。訓練データ122Fは、対象の商品又はサービスを示すデータはラベルとして更に含んでもよい。つまり、本変形例では、学習モデル5Fは、条件付きの学習モデルであってよい。以下、訓練データ122Fは、対象の商品又はサービスを示すデータはラベルとして更に含むものとして説明する。ただし、学習モデル5Fの構成は、このような例に限定されなくてもよい。例えば、学習モデル5Fは、商品又はサービスのカテゴリ毎に用意され、カテゴリ毎の的中率を出力するように構成されてよい。この場合、訓練データ122Fは、ラベルを含んでいなくてもよい。
 メタデータ123Fは、訓練データ122Fの取得に関する属性として、例えば、顧客の識別情報、推奨情報を掲載する媒体の種別又はこれらの組み合わせを示す。顧客の識別情報は、例えば、顧客の識別子、性別、年齢、体格、人種等を含んでもよい。推奨情報を掲載する媒体は、例えば、ウェブページ、メールマガジン、デジタルサイネージ等であってよい。
 正解データ124F及び他の正解データ125Fはそれぞれ、訓練データ122Fに含まれる特徴として、例えば、対象の商品又はサービスを所定の媒体で推奨した際の的中率を示す。的中率は、例えば、対象の商品又はサービスを推奨された全顧客数に対する対象の商品又はサービスを購入した顧客数により算出されてよい。的中率は、商品又はサービスのカテゴリ毎に与えられてもよい。
 ステップS102では、学習装置1は、このような訓練データ122F、メタデータ123F、正解データ124F、及び他の正解データ125Fの組み合わせによりそれぞれ構成された複数の学習データセット121Fを使用して、上記実施形態と同様に、学習モデル5Fの機械学習を実施する。学習モデル5Fは、上記実施形態に係る学習モデル5と同様に構成されてよい。すなわち、学習モデル5Fは、第1符号器51F、第2符号器52F、第1メタ識別器53F、第2メタ識別器54F、推定器55F、復号器56F、及び他の推定器57Fを含んでいる。各器51F~57Fは、上記実施形態に係る各器51~57に対応する。各器51F~57Fの構成は、上記実施形態に係る各器51~57と同様であってよい。
 当該機械学習により、第2符号器52Fは、メタデータ123Fにより示される訓練データ122Fの取得に関する属性に対応する成分を含む第2特徴量に当該訓練データ122Fを変換するように訓練される。第1符号器51Fは、訓練データ122Fの取得に関する属性以外の情報、例えば、訓練データ122Fを取得するドメインに共通に現れる情報に対応する成分を含む第1特徴量に当該訓練データ122Fを変換するように訓練される。学習モデル5Fにおける推定器55F又は他の推定器57Fを含む部分は、商品又はサービスを推奨した際の的中率を推定する能力を獲得する。また、学習モデル5Fにおける復号器56Fを含む部分は、顧客の履歴データと同種の復号化データを生成する能力を獲得する。
 ステップS103では、学習装置1は、学習済みの学習モデル5Fに関する情報を学習結果データ128Fとして生成し、生成された学習結果データ128Fを所定の記憶領域に保存する。生成された学習結果データ128Fは、任意のタイミングで推奨装置2F及びデータ生成装置3に提供されてよい。
 データ生成装置3は、取り扱うデータが異なる点を除き、上記実施形態と同様の処理手順により、データ生成に関する情報処理を実行する。すなわち、データ生成装置3は、上記ステップS701~ステップS704の処理を実行する。これにより、データ生成装置3は、学習済みの第1符号器51F及び復号器56Fを利用して、対象履歴データから復号化データを生成することができる。復号化データは、対象履歴データの取得に関する属性に対応する情報を当該対象履歴データから除外することで得られるデータに相当する。また、データ生成装置3は、学習済みの第1符号器51F、第2符号器52F、及び復号器56Fを利用して、取得に関する属性をノイズの分だけ変更した新たなデータ(復号化データ)を生成してもよい。更に、データ生成装置3は、学習済みの第1符号器51F及び第2符号器52Fの少なくとも一方を利用して、第1特徴量及び第2特徴量の少なくとも一方のデータを生成してもよい。
 推奨装置2Fは、上記推定装置2に対応する。推奨装置2Fは、取り扱うデータが異なる点を除き、上記推定装置2と同様に構成されてよい。推奨装置2Fは、顧客の対象履歴データを適宜取得する。そして、推奨装置2Fは、学習装置1により構築された学習済みの学習モデル5Fを利用して、取得された対象履歴データから対象の商品又はサービスを推奨した際の的中率を推定する。
 <推奨装置のハードウェア構成>
 図24Aは、本変形例に係る推奨装置2Fのハードウェア構成の一例を模式的に例示する。図24Aに示されるとおり、本変形例に係る推奨装置2Fは、上記推定装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26及び外部インタフェース27が電気的に接続されたコンピュータである。ただし、推奨装置2Fのハードウェア構成は、このような例に限定されなくてもよい。推奨装置2Fの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。推奨装置2Fは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ、汎用のPC等であってもよい。
 本変形例に係る推奨装置2Fの記憶部22は、推奨プログラム82F、学習結果データ128F等の各種情報を記憶する。推奨プログラム82F及び学習結果データ128Fは、上記実施形態に係る推定プログラム82及び学習結果データ128に対応する。推奨プログラム82F及び学習結果データ128Fのうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、推奨装置2Fは、記憶媒体92から、推奨プログラム82F及び学習結果データ128Fのうちの少なくともいずれかを取得してもよい。
 <推奨装置のソフトウェア構成及び動作例>
 図24Bは、本変形例に係る推奨装置2Fのソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、推奨装置2Fのソフトウェア構成は、制御部21による推奨プログラム82Fの実行により実現される。図24Bに示されるとおり、顧客の履歴データを取り扱う点を除き、推奨装置2Fのソフトウェア構成は、上記推定装置2のソフトウェア構成と同様である。これにより、推奨装置2Fは、上記推定装置2の推定処理と同様に、推奨処理に関する一連の処理を実行する。
 すなわち、ステップS501では、制御部21は、データ取得部211として動作し、顧客の対象履歴データ221Fを取得する。対象履歴データ221Fを取得する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部21は、顧客のユーザ端末から対象履歴データ221Fを取得してもよい。また、例えば、制御部21は、商品又はサービスの販売を顧客に提供するサーバから対象履歴データ221Fを取得してもよい。また、推奨装置2Fが、商品又はサービスの販売を顧客に提供するサーバである場合、ユーザ端末を介した顧客のアクセスの際に対象履歴データ221Fを蓄積してもよい。
 ステップS502では、制御部21は、評価部212として動作し、学習装置1により訓練された第2符号器52F及び第2メタ識別器54Fを利用して、対象履歴データ221Fの取得に関する属性を識別する。具体的には、制御部21は、学習結果データ128Fを参照し、学習済みの第2符号器52F及び第2メタ識別器54Fの設定を行う。続いて、制御部21は、取得された対象履歴データ221Fを第2符号器52Fに入力し、第2符号器52F及び第2メタ識別器54Fの演算処理を実行する。この演算処理により、制御部21は、対象履歴データ221Fの取得に関する属性を識別した結果に対応する出力値を第2メタ識別器54Fから取得する。
 ステップS503では、制御部21は、評価部212として動作し、対象履歴データ221Fの取得に関する属性を識別した結果に基づいて、推定器55F又は他の推定器57Fによる推定の結果を採用するか否かを判定する。ステップS504では、制御部21は、ステップS503の判定結果に基づいて、処理の分岐先を決定する。
 ステップS502による識別の結果が対象履歴データ221Fの取得に関する属性の正解値に適合している場合、制御部21は、推定器55F又は他の推定器57Fによる推定の結果を採用すると判定し、次のステップS505に処理を進める。一方、ステップS502による識別の結果が対象履歴データ221Fの取得に関する属性の正解値に適合していない場合、制御部21は、推定器55F又は他の推定器57Fによる推定の結果を採用しないと判定し、ステップS505及びステップS506の処理を省略し、本変形例に係る一連の処理を終了する。
 ステップS505では、制御部21は、推定部213Fとして動作し、学習装置1により訓練された第1符号器51F、第2符号器52F、及び推定器55Fを利用して、対象履歴データ221Fから対象の商品又はサービスを推奨した際の的中率を推定する。或いは、制御部21は、学習装置1により訓練された第1符号器51F及び他の推定器57Fを利用して、対象履歴データ221Fから対象の商品又はサービスを推奨した際の的中率を推定する。
 具体的には、制御部21は、学習結果データ128Fを参照し、学習済みの第1符号器51F及び推定器55Fの設定を更に行う。制御部21は、対象履歴データ221F及び対象の商品又はサービスを示すラベルを各符号器(51F、52F)に入力し、第1符号器51F、第2符号器52F、及び推定器55Fの演算処理を実行する。これにより、制御部21は、対象履歴データ221Fから対象の商品又はサービスを推奨した際の的中率を推定した結果に対応する出力値を推定器55Fから取得する。
 或いは、制御部21は、学習結果データ128Fを参照し、学習済みの第1符号器51F及び他の推定器57Fの設定を行う。制御部21は、対象履歴データ221F及び対象の商品又はサービスを示すラベルを第1符号器51Fに入力し、第1符号器51F及び他の推定器57Fの演算処理を実行する。これにより、制御部21は、対象履歴データ221Fから対象の商品又はサービスを推奨した際の的中率を推定した結果に対応する出力値を他の推定器57Fから取得する。
 ステップS506では、制御部21は、出力部214として動作し、対象の商品又はサービスを推奨した際の的中率を推定した結果に関する情報を出力する。例えば、制御部21は、対象の商品又はサービスを推奨した際の的中率を推定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、推定される的中率が閾値以上であるか否かを判定してもよい。判定の結果に基づいて、制御部21は、的中率が閾値以上である商品又はサービスを特定し、ウェブページ等を介して、特定された商品又はサービスを顧客に推奨する。商品又はサービスの推奨に利用する媒体は実施の形態に応じて適宜選択されてよい。
 本変形例によれば、履歴データから商品又はサービスを推奨した際の的中率を推定する場面において、導入コストが比較的に低廉で、かつセンシングデータの取得に関する属性の相違にロバストな学習済みの学習モデル5Fを構築することができる。
 一例として、日用品、安価な嗜好品等の消耗品は、継続的に購買されることから、そのような商品に対する購買意欲は、顧客の識別情報にそれほど依存しない場合がある。そのため、消耗品に対する推奨の的中率を推定する場面では、顧客の識別情報等のドメインに特有の情報が推定タスクの精度に悪影響を及ぼす可能性がある。一方、高価な商品又はサービス等の単発的に購入される商品に対する購買意欲は、顧客の識別情報に高い依存性を有する場合がある。そのため、単発的に購入される商品に対する推奨の的中率を推定する場面では、ドメインに特有の情報が推定タスクに有用である可能性がある。すなわち、商品又はサービスの種別によって、ドメインに特有の情報が有用に働くケース及び悪影響を及ぼすケースが生じ得る。
 そこで、メタデータ123Fは、顧客の識別情報を示すように設定されてよい。正解データ124F及び他の正解データ125Fはそれぞれ、対象の商品又はサービスに対する推奨の的中率を示すように設定されてよい。
 この設定により上記機械学習を実行することで、第1特徴量は、ドメインに共通の情報として、顧客の購買履歴に応じた推奨の的中傾向に対応する成分を含むようになる。一方で、第2特徴量は、ドメインに特有の情報として、顧客の識別情報に応じた推奨の的中傾向に対応する成分を含むようになる。
 その結果、推奨装置2Fにおいて、学習済みの第1符号器51F及び他の推定器57Fを利用することで、上記ドメインに特有の情報を除外し、上記ドメインに共通の情報に基づいて、対象の商品又はサービスを推奨した際の的中率を推定するタスクを遂行することができる。そのため、消耗品等の顧客の識別情報に購買活動がそれほど依存しない商品又はサービスを推奨する場面において、学習済みの第1符号器51F及び他の推定器57Fを利用することで、当該推奨の的中率を比較的に高精度に推定することができる。また、推奨装置2Fにおいて、学習済みの第1符号器51F、第2符号器52F、及び推定器55Fを利用することで、上記ドメインに特有の情報及び共通の情報の両方に基づいて、対象の商品又はサービスを推奨した際の的中率を推定するタスクを遂行することができる。そのため、単発的に購入される商品又はサービス等の顧客の識別情報に購買活動が依存しやすい商品又はサービスを推奨する場面において、学習済みの第1符号器51F、第2符号器52F、及び推定器55Fを利用することで、当該推奨の的中率を比較的に高精度に推定することができる。なお、推奨装置2Fでは、オペレータの指定、設定値等に基づいて、上記2つの推定方法のうちのいずれを採用するかが設定されていてよい。
 <4.2>
 上記実施形態では、学習モデル5の各器51~57は、ニューラルネットワークにより構成されている。しかしながら、各器51~57は、演算に利用される演算パラメータであって、機械学習により調整される演算パラメータを備えていれば、すなわち、機械学習可能なモデル(学習器)であれば、特に限定されなくてもよい。各器51~57の種類は、実施の形態に応じて適宜選択されてよい。各器51~57には、ニューラルネットワークの他に、例えば、サポートベクタマシン、回帰モデル、決定木モデル等が用いられてよい。各器51~57の機械学習の方法は、それぞれの学習器の種類に応じて適宜選択されてよい。
 また、上記実施形態の図5Aの例では、各器51~57は、3層構造の全結合型ニューラルネットワークにより構成されている。しかしながら、各器51~57を構成するニューラルネットワークの種類は、このような例に限定されなくてもよい。例えば、各器51~57は、畳み込み層、プーリング層、及び全結合層を備える畳み込みニューラルネットワークにより構成されてよい。また、例えば、各器51~57は、再帰型ニューラルネットワークにより構成されてよい。
 なお、これらの変更は、上記第1~第6変形例に係るシステムについても同様に適用されてよい。例えば、上記第2変形例において、バイタルセンサにより対象者のバイタルの測定データを取得し、取得される測定データから対象者の状態を推定する場面を想定する。この場面では、取得される測定データの経時的変化は、対象者の状態を推定するのに有用である。このような経時的変化を推定タスクの遂行に反映させる場合には、学習モデルの構成要素のうちの少なくともいずれかが再帰型ニューラルネットワークにより構成されるのが好ましい。再帰型ニューラルネットワークを用いることで、対象データの経時的な変化を推定タスクの遂行に反映させることができる。
 <4.3>
 上記実施形態では、学習モデル5は、第1符号器51、第2符号器52、第1メタ識別器53、第2メタ識別器54、及び推定器55Bに加えて、復号器56及び他の推定器57を備えている。しかしながら、学習モデル5の構成は、このような例に限定されなくてもよい。復号器56及び他の推定器57の少なくとも一方は学習モデル5から省略されてよい。復号器56を省略する場合、上記機械学習の処理手順において、上記ステップS203の処理は省略されてよい。また、他の推定器57を省略する場合、上記機械学習の処理手順において、ステップS204の処理は省略されてよい。
 また、上記実施形態では、機械学習の処理手順において、ステップS205の処理により、第1特徴量及び第2特徴量の相互情報量が少なくなるように第1符号器51及び第2符号器52を訓練する。しかしながら、機械学習の処理手順は、このような例に限定されなくてもよい。このステップS205の処理は省略されてよい。
 また、上記実施形態では、推定装置2は、ステップS502~ステップS504の処理により、学習済みの第2符号器52及び第2メタ識別器54を利用して、推定器55又は他の推定器57による推定処理の結果を採用するか否かを評価している。しかしながら、推定装置2の処理手順は、このような例に限定されなくてもよい。ステップS502~ステップS504の処理は省略されてよい。この場合、推定装置2のソフトウェア構成から評価部212が省略されてよい。なお、これらの変更は、上記第1~第6変形例に係るシステムについても同様に適用されてよい。
 また、上記実施形態において、訓練データ(122、192)及び対象データ(221、321)はそれぞれ、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等の個別の種類のデータに置き換えられてよい。
 例えば、訓練データ(122、192)及び対象データ(221、321)はそれぞれが画像データであることで、学習装置1、推定装置2、及びデータ生成装置3により画像システムを構成することができる。この場合、学習装置1は、複数の学習データセットを使用した機械学習により、画像データから所定の特徴を推定する能力を獲得した学習済みの学習モデル5を構築することができる。推定装置2は、推定器55又は他の推定器57を含む学習済みの学習モデル5を利用することで、対象画像データに含まれる特徴を推定することができる。データ生成装置3は、学習済みの復号器56を含む学習モデル5を利用することで、対象画像データから新たなデータを生成することができる。上記第3変形例、及び第4変形例は、当該画像システムの一例である。
 また、例えば、訓練データ(122、192)及び対象データ(221、321)はそれぞれがセンシングデータであることで、学習装置1、推定装置2、及びデータ生成装置3によりセンサシステムを構成することができる。この場合、学習装置1は、複数の学習データセットを使用した機械学習により、センシングデータから所定の特徴を推定する能力を獲得した学習済みの学習モデル5を構築することができる。推定装置2は、推定器55又は他の推定器57を含む学習済みの学習モデル5を利用することで、対象センシングデータに含まれる特徴を推定することができる。データ生成装置3は、学習済みの復号器56を含む学習モデル5を利用することで、対象センシングデータから新たなデータを生成することができる。上記第1変形例、第2変形例、及び第5変形例は、当該センサシステムの一例である。
 1…学習装置、
 11…制御部、12…記憶部、13…通信インタフェース、
 14…入力装置、15…出力装置、16…ドライブ、
 111…データ取得部、112…学習処理部、
 113…保存処理部、
 121…学習データセット、
 122…訓練データ、123…メタデータ、
 124…正解データ、125…他の正解データ、
 128…学習結果データ、
 81…学習プログラム、91…記憶媒体、
 2…推定装置、
 21…制御部、22…記憶部、23…通信インタフェース、
 24…入力装置、25…出力装置、26…ドライブ、
 27…外部インタフェース、
 211…データ取得部、212…評価部、
 213…推定部、214…出力部、
 221…対象データ、
 3…データ生成装置、
 31…制御部、32…記憶部、33…通信インタフェース、
 34…入力装置、35…出力装置、36…ドライブ、
 37…外部インタフェース、
 311…データ取得部、312…生成部、
 313…保存処理部、
 321…対象データ、
 5…学習モデル、
 51…第1符号器、52…第2符号器、
 53…第1メタ識別器、54…第2メタ識別器、
 55…推定器、56…復号器、57…他の推定器、
 S…センサ

Claims (20)

  1.  訓練データ、前記訓練データの取得に関する属性を示すメタデータ、及び前記訓練データに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するデータ取得部と、
     第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施する学習処理部であって、
     前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、
     前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、
     前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、
     前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、
     前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、
     前記機械学習を実施することは、
      前記各学習データセットについて、前記訓練データを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、
      前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、
      前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、
      前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、
    を含み、
     前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、
    学習処理部と、
    を備える、
    学習装置。
  2.  前記複数の学習データセットに含まれる少なくとも1つ以上の第1の学習データセット、及び少なくとも1つ以上の第2の学習データセットは、それぞれの前記メタデータにより示される属性が相違するように異なるドメインから得られる、
    請求項1に記載の学習装置。
  3.  前記第1訓練ステップでは、前記第2符号器は、前記メタデータにより示される前記訓練データの取得に関する属性に対応する成分を前記第2特徴量が含むように訓練され、
     前記第4訓練ステップでは、前記第1符号器は、前記各学習データセットの前記訓練データを取得するドメインに共通に現れる情報に対応する成分を前記第1特徴量が含むように訓練される、
    請求項1又は2に記載の学習装置。
  4.  前記各訓練ステップでは、前記訓練データと共にノイズが前記各符号器に入力されて、各訓練が実行される、
    請求項1から3のいずれか1項に記載の学習装置。
  5.  前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1符号器から前記第1特徴量として得られる出力値と前記訓練データを前記第2符号器に与えることで前記第2符号器から前記第2特徴量として得られる出力値との相互情報量が少なくなるように、前記第1符号器及び前記第2符号器を訓練する第5訓練ステップを更に含む、
    請求項1から4のいずれか1項に記載の学習装置。
  6.  前記第4訓練ステップでは、前記各学習データセットについて、前記メタデータに対応するダミーメタデータであって、対応する前記メタデータとは異なる値で構成されたダミーメタデータが取得され、
     前記識別の結果が前記メタデータに適合しないように前記第1符号器を訓練することは、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記ダミーメタデータに適合するように前記第1符号器を訓練することにより構成される、
    請求項1から5のいずれか1項に記載の学習装置。
  7.  前記ダミーメタデータは、対応する学習データセットとは異なる学習データセットのメタデータにより構成される、
    請求項6に記載の学習装置。
  8.  前記学習モデルは、前記第1特徴量及び前記第2特徴量から前記入力データを復号化するように構成される復号器を更に含み、
     前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記復号器により得られる復号化データが前記訓練データに適合するように、前記第1符号器、前記第2符号器及び前記復号器を訓練する第6訓練ステップを更に含む、
    請求項1から7のいずれか1項に記載の学習装置。
  9.  前記第1、第2、及び第6訓練ステップでは、前記訓練データを前記第2符号器に与えることで前記第2符号器から前記第2特徴量として出力値が取得され、取得された当該出力値と共にノイズが前記第2メタ識別器、前記推定器、及び前記復号器に入力されて、各訓練が実行される、
    請求項8に記載の学習装置。
  10.  前記データ取得部は、前記学習処理部が前記学習モデルの機械学習を実施した後に、前記複数の学習データセットのうちの少なくともいずれかの訓練データを前記第1符号器に与えることで前記第1符号器から前記第1特徴量として出力値を取得し、前記訓練データを前記第2符号器に与えることで前記第2符号器から前記第2特徴量として出力値を取得し、及び前記第1符号器から取得された前記出力値を前記復号器に入力し、かつ前記第2符号器から得られた前記出力値と共にノイズを前記復号器に入力することで、前記復号器から前記復号化データとして出力データを取得し、
     前記学習処理部は、取得された前記出力データを新たな訓練データとして利用して、前記学習モデルの機械学習を再度実施する、
    請求項8又は9に記載の学習装置。
  11.  前記学習モデルは、前記第1符号器の出力値が入力され、前記第1特徴量から前記入力データに含まれる特徴を推定するように構成された他の推定器を更に含み、
     前記機械学習を実施することは、前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記他の推定器から得られる推定の結果が前記正解データ又は前記訓練データに含まれる他の特徴を示す他の正解データに適合するように、前記第1符号器及び前記他の推定器を訓練する第7訓練ステップを更に含む、
    請求項1から10のいずれか1項に記載の学習装置。
  12.  前記訓練データは、道路を走行する車両を観察するセンサにより得られたセンシングデータであり、
     前記メタデータは、前記取得に関する属性として、前記道路の属性、前記センサの観察角度、前記センサの設置間隔、前記センサの種類又はこれらの組み合わせを示し、
     前記正解データは、前記特徴として、前記道路の交通状況に関する情報を示す、
    請求項1から11のいずれか1項に記載の学習装置。
  13.  前記訓練データは、被験者の状態を観察するセンサにより得られたセンシングデータであり、
     前記メタデータは、前記取得に関する属性として、前記被験者の識別情報、前記センシングデータを取得した時間に関する属性、前記センサの設置状況に関する属性、前記センサの設置場所、又はこれらの組み合わせを示し、
     前記正解データは、前記特徴として、前記被験者の状態を示す、
    請求項1から11のいずれか1項に記載の学習装置。
  14.  前記訓練データは、製品の写る画像データであり、
     前記メタデータは、前記取得に関する属性として、前記製品の属性、前記製品の撮影条件、前記製品を製造する工場の属性又はこれらの組み合わせを示し、
     前記正解データは、前記特徴として、前記製品の状態を示す、
    請求項1から11のいずれか1項に記載の学習装置。
  15.  対象データを取得するデータ取得部と、
     請求項1から14のいずれか1項に記載の学習装置により訓練された前記第1符号器、前記第2符号器、及び前記推定器を利用して、取得された対象データに含まれる特徴を推定する推定部と、
     前記特徴を推定した結果に関する情報を出力する出力部と、
    を備える、
    推定装置。
  16.  対象データを取得するデータ取得部と、
     請求項11に記載の学習装置により訓練された前記第1符号器及び前記他の推定器を利用して、取得された対象データに含まれる特徴を推定する推定部と、
     前記特徴を推定した結果に関する情報を出力する出力部と、
    を備える、
    推定装置。
  17.  前記学習装置により訓練された前記第2符号器及び前記第2メタ識別器を利用して、前記対象データの取得に関する属性を識別し、当該識別の結果に基づいて、前記特徴を推定した結果を採用するか否かを判定する評価部を更に備える、
    請求項15又は16に記載の推定装置。
  18.  対象データを取得するデータ取得部と、
     請求項8から10のいずれか1項に記載の学習装置により訓練された前記第1符号器に前記対象データを与えることで前記第1符号器から前記第1特徴量として出力値を取得し、訓練された前記復号器を利用して、前記第2符号器から取得される出力値を与えずに、前記第1符号器から取得された前記出力値から前記対象データを復号化することで、復号化データを生成するデータ生成部と、
     生成された前記復号化データを所定の記憶領域に保存する保存処理部と、
    を備える、
    データ生成装置。
  19.  コンピュータが、
     訓練データ、前記訓練データの取得に関する属性を示すメタデータ、及び前記訓練データに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するステップと、
     第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施するステップであって、
     前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、
     前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、
     前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、
     前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、
     前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、
     前記機械学習を実施することは、
      前記各学習データセットについて、前記訓練データを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、
      前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、
      前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、
      前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、
    を含み、
     前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、
    ステップと、
    を実行する、
    学習方法。
  20.  コンピュータに、
     訓練データ、前記訓練データの取得に関する属性を示すメタデータ、及び前記訓練データに含まれる特徴を示す正解データの組み合わせによりそれぞれ構成される複数の学習データセットを取得するステップと、
     第1符号器、第2符号器、第1メタ識別器、第2メタ識別器、及び推定器を含む学習モデルの機械学習を実施するステップであって、
     前記第1符号器は、与えられた入力データを第1特徴量に変換するように構成され、
     前記第2符号器は、前記入力データを第2特徴量に変換するように構成され、
     前記第1メタ識別器は、前記第1符号器の出力値が入力され、前記入力データの取得に関する属性を前記第1特徴量から識別するように構成され、
     前記第2メタ識別器は、前記第2符号器の出力値が入力され、前記入力データの取得に関する属性を前記第2特徴量から識別するように構成され、
     前記推定器は、前記第1符号器及び前記第2符号器の出力値が入力され、前記第1特徴量及び前記第2特徴量から前記入力データに含まれる特徴を推定するように構成され、
     前記機械学習を実施することは、
      前記各学習データセットについて、前記訓練データを前記第2符号器に与えることで前記第2メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第2符号器及び前記第2メタ識別器を訓練する第1訓練ステップ、
      前記各学習データセットについて、前記訓練データを前記第1符号器及び前記第2符号器に与えることで前記推定器から得られる推定の結果が前記正解データに適合するように、前記第1符号器、前記第2符号器及び前記推定器を訓練する第2訓練ステップ、
      前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合するように、前記第1メタ識別器を訓練する第3訓練ステップ、並びに、
      前記各学習データセットについて、前記訓練データを前記第1符号器に与えることで前記第1メタ識別器から得られる識別の結果が前記メタデータに適合しないように、前記第1符号器を訓練する第4訓練ステップ、
    を含み、
     前記第3訓練ステップ及び前記第4訓練ステップを交互に繰り返し実行する、
    ステップと、
    を実行させるための、
    学習プログラム。
PCT/JP2020/006252 2019-03-14 2020-02-18 学習装置、推定装置、データ生成装置、学習方法、及び学習プログラム WO2020184084A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/431,455 US20220139070A1 (en) 2019-03-14 2020-02-18 Learning apparatus, estimation apparatus, data generation apparatus, learning method, and computer-readable storage medium storing a learning program
CN202080013551.5A CN113424208A (zh) 2019-03-14 2020-02-18 学习装置、推测装置、数据生成装置、学习方法以及学习程序
EP20770498.2A EP3940631A4 (en) 2019-03-14 2020-02-18 LEARNING DEVICE, DEDUCTION DEVICE, DATA GENERATING DEVICE, LEARNING METHOD AND LEARNING PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-047710 2019-03-14
JP2019047710A JP7003953B2 (ja) 2019-03-14 2019-03-14 学習装置、推定装置、データ生成装置、学習方法、及び学習プログラム

Publications (1)

Publication Number Publication Date
WO2020184084A1 true WO2020184084A1 (ja) 2020-09-17

Family

ID=72426427

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/006252 WO2020184084A1 (ja) 2019-03-14 2020-02-18 学習装置、推定装置、データ生成装置、学習方法、及び学習プログラム

Country Status (5)

Country Link
US (1) US20220139070A1 (ja)
EP (1) EP3940631A4 (ja)
JP (1) JP7003953B2 (ja)
CN (1) CN113424208A (ja)
WO (1) WO2020184084A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113706870A (zh) * 2021-08-30 2021-11-26 广州文远知行科技有限公司 一种拥堵场景下主车换道数据的收集方法及相关设备

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11551117B1 (en) * 2019-10-25 2023-01-10 Reena Malhotra Policy based artificial intelligence engine
JP7485512B2 (ja) * 2019-12-26 2024-05-16 キヤノンメディカルシステムズ株式会社 医用情報処理装置、医用情報処理方法、及び医用情報処理プログラム
US11676031B2 (en) 2020-02-25 2023-06-13 Ventech Solutions, Inc. Anatomical position monitoring for bodily pressure ulcers
US11651107B2 (en) 2020-03-17 2023-05-16 Ventech Solutions, Inc. Securing personally identifiable and private information in conversational AI-based communication
US11568262B2 (en) * 2020-03-25 2023-01-31 Ventech Solutions, Inc. Neural network based radiowave monitoring of fall characteristics in injury diagnosis
US20210319462A1 (en) * 2020-04-08 2021-10-14 Honda Motor Co., Ltd. System and method for model based product development forecasting
CN111483468B (zh) * 2020-04-24 2021-09-07 广州大学 基于对抗模仿学习的无人驾驶车辆换道决策方法和系统
US11704717B2 (en) * 2020-09-24 2023-07-18 Ncr Corporation Item affinity processing
WO2022092079A1 (ja) * 2020-10-27 2022-05-05 コニカミノルタ株式会社 情報処理装置、情報処理システムおよび学習済みモデル
CN116888665A (zh) * 2021-02-18 2023-10-13 三星电子株式会社 电子设备及其控制方法
JP2022153142A (ja) * 2021-03-29 2022-10-12 ソニーグループ株式会社 情報処理システム、生体試料処理装置及びプログラム
US11834067B1 (en) * 2021-07-30 2023-12-05 Waymo Llc Comfort scales for autonomous driving

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012084117A (ja) * 2010-09-13 2012-04-26 Tokyo Institute Of Technology 属性の学習及び転移システム、認識器生成装置、認識器生成方法及び認識装置
JP2016191975A (ja) * 2015-03-30 2016-11-10 株式会社メガチップス 機械学習装置
JP2018147474A (ja) * 2017-03-01 2018-09-20 オムロン株式会社 学習装置、学習結果利用装置、学習方法及び学習プログラム
JP2019028489A (ja) 2017-07-25 2019-02-21 ヤフー株式会社 予測装置、予測方法、予測プログラム、学習データ、及びモデル
US20190065853A1 (en) * 2017-08-31 2019-02-28 Nec Laboratories America, Inc. Parking lot surveillance with viewpoint invariant object recognition by synthesization and domain adaptation

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5164802B2 (ja) * 2008-11-07 2013-03-21 アジア航測株式会社 認識システム、認識方法、および認識プログラム
JP2018005640A (ja) * 2016-07-04 2018-01-11 タカノ株式会社 分類器生成装置、画像検査装置、及び、プログラム
JP2019021218A (ja) * 2017-07-20 2019-02-07 ヤフー株式会社 学習装置、プログラムパラメータ、学習方法およびモデル
US10753997B2 (en) * 2017-08-10 2020-08-25 Siemens Healthcare Gmbh Image standardization using generative adversarial networks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012084117A (ja) * 2010-09-13 2012-04-26 Tokyo Institute Of Technology 属性の学習及び転移システム、認識器生成装置、認識器生成方法及び認識装置
JP2016191975A (ja) * 2015-03-30 2016-11-10 株式会社メガチップス 機械学習装置
JP2018147474A (ja) * 2017-03-01 2018-09-20 オムロン株式会社 学習装置、学習結果利用装置、学習方法及び学習プログラム
JP2019028489A (ja) 2017-07-25 2019-02-21 ヤフー株式会社 予測装置、予測方法、予測プログラム、学習データ、及びモデル
US20190065853A1 (en) * 2017-08-31 2019-02-28 Nec Laboratories America, Inc. Parking lot surveillance with viewpoint invariant object recognition by synthesization and domain adaptation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ERIC TZENG ET AL.: "Adversarial Discriminative Domain Adaptation", ARXIV PREPRINT ARXIV:1702.05464, 2017

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113706870A (zh) * 2021-08-30 2021-11-26 广州文远知行科技有限公司 一种拥堵场景下主车换道数据的收集方法及相关设备
CN113706870B (zh) * 2021-08-30 2022-06-10 广州文远知行科技有限公司 一种拥堵场景下主车换道数据的收集方法及相关设备

Also Published As

Publication number Publication date
JP7003953B2 (ja) 2022-01-21
US20220139070A1 (en) 2022-05-05
EP3940631A4 (en) 2022-12-21
CN113424208A (zh) 2021-09-21
JP2020149504A (ja) 2020-09-17
EP3940631A1 (en) 2022-01-19

Similar Documents

Publication Publication Date Title
WO2020184084A1 (ja) 学習装置、推定装置、データ生成装置、学習方法、及び学習プログラム
US20230058169A1 (en) System for representing attributes in a transportation system digital twin
US20210287459A1 (en) Digital twin systems and methods for transportation systems
Sameen et al. Severity prediction of traffic accidents with recurrent neural networks
US20240203175A1 (en) Interior device to update command input to system
US20200023846A1 (en) Artificial intelligence-based systems and methods for vehicle operation
Bratsas et al. A comparison of machine learning methods for the prediction of traffic speed in urban places
RU2721176C2 (ru) Системы и способы для предсказания поведения пользователя на основе данных о местоположении
JP7162550B2 (ja) モデル生成装置、予測装置、モデル生成方法、及びモデル生成プログラム
Barua et al. A gradient boosting approach to understanding airport runway and taxiway pavement deterioration
Zhang et al. Traffic noise prediction applying multivariate bi-directional recurrent neural network
Aljamal et al. Developing a neural–Kalman filtering approach for estimating traffic stream density using probe vehicle data
Castillo-Botón et al. Analysis and prediction of dammed water level in a hydropower reservoir using machine learning and persistence-based techniques
WO2023096968A1 (en) Intelligent transportation methods and systems
Zhou et al. A data quality control method for seafloor observatories: The application of observed time series data in the East China Sea
Van Hinsbergen et al. A general framework for calibrating and comparing car-following models
Dong et al. A spatial–temporal-based state space approach for freeway network traffic flow modelling and prediction
US20230101183A1 (en) Intelligent transportation systems including digital twin interface for a passenger vehicle
US20230109426A1 (en) Model generation apparatus, estimation apparatus, model generation method, and computer-readable storage medium storing a model generation program
Tran et al. Short-term traffic speed forecasting model for a parallel multi-lane arterial road using GPS-monitored data based on deep learning approach
Dhivya Bharathi et al. Bus travel time prediction: a log-normal auto-regressive (AR) modelling approach
Mantouka et al. Deep survival analysis of searching for on-street parking in urban areas
WO2021182000A1 (ja) パラメータ調整装置、推論装置、パラメータ調整方法、及びパラメータ調整プログラム
Shahrokhi Shahraki et al. An efficient soft computing-based calibration method for microscopic simulation models
WO2022025244A1 (ja) 車両事故予測システム、車両事故予測方法、車両事故予測プログラム、及び、学習済みモデル生成システム

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: 20770498

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2020770498

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2020770498

Country of ref document: EP

Effective date: 20211014