WO2021200392A1 - データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置 - Google Patents

データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置 Download PDF

Info

Publication number
WO2021200392A1
WO2021200392A1 PCT/JP2021/011944 JP2021011944W WO2021200392A1 WO 2021200392 A1 WO2021200392 A1 WO 2021200392A1 JP 2021011944 W JP2021011944 W JP 2021011944W WO 2021200392 A1 WO2021200392 A1 WO 2021200392A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
learning
influence
degree
unit
Prior art date
Application number
PCT/JP2021/011944
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/913,856 priority Critical patent/US20230115987A1/en
Priority to JP2022511981A priority patent/JPWO2021200392A1/ja
Publication of WO2021200392A1 publication Critical patent/WO2021200392A1/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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • 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/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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/047Probabilistic or stochastic networks
    • 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/0475Generative networks

Definitions

  • This disclosure relates to a data adjustment system, a data adjustment device, a data adjustment method, a terminal device, and an information processing device.
  • the conventional technology cannot always be learned using appropriate data.
  • the data when data that has no missing values but is not suitable for learning is used, the data is used as it is, so that it may not be possible to learn a model such as a neural network having desired performance. ..
  • a model such as a neural network having desired performance. ..
  • whether or not there is a missing value in the data used for learning is considered, but whether or not the data itself used for learning is suitable for learning is not considered. Therefore, it is desired to make the data used for learning adjustable.
  • this disclosure proposes a data adjustment system, a data adjustment device, a data adjustment method, a terminal device, and an information processing device that can make the data used for learning adjustable.
  • the data adjustment system of one form according to the present disclosure includes an information processing device and a terminal device, and the information processing device uses the training data used for learning the neural network as described above.
  • the terminal device excludes the measuring unit that measures the degree of influence on learning and the data that is measured as having a low degree of influence, and outputs new data that is new data corresponding to the data that is measured as having a high degree of influence.
  • an adjustment unit that adjusts the training data by acquiring the new data acquired from the database and adding the acquired new data.
  • Embodiment 1-1 Outline of data adjustment processing according to the embodiment of the present disclosure 1-1-1. Background and effects 1-1-2.
  • Procedure for processing related to data adjustment system 1-6 Example of data adjustment based on the degree of influence 1-6-1. Specific example of adjustment 2.
  • Hardware configuration 1-3.
  • Influence function 1-1-4 Bayesian Deep Learning 1-1-5.
  • Others GAN, Grad-CAM, LIMIT, etc.
  • FIG. 1 is a diagram showing an example of data adjustment processing according to the embodiment of the present disclosure.
  • the data adjustment process according to the embodiment of the present disclosure is realized by the data adjustment system 1 including the data adjustment device 100 and the terminal device 10.
  • FIG. 1 describes an outline of the data adjustment process realized by the data adjustment system 1.
  • FIG. 1 is a diagram showing an example of data adjustment processing according to the embodiment of the present disclosure.
  • the data adjustment device 100 is an information processing device that adjusts the training data by excluding predetermined data from the training data used for learning the model by machine learning or by adding new data to the training data.
  • FIG. 1 shows, as an example, a case where the data adjusting device 100 executes a process of adjusting the data of the data set used for learning the deep neural network (DNN).
  • the data adjusting device 100 executes a learning process of learning an identification model (hereinafter, also simply referred to as “model”) which is a DNN that performs image recognition using a data set.
  • model a deep neural network
  • NN Neural Network
  • the data adjusting device 100 learns a model used for smile detection
  • the use of the model learned by the data adjusting device 100 is not limited to smile detection, and the data adjusting device 100 is used for various purposes such as object recognition and impression detection depending on the purpose and use of the model to be learned. Learn the model.
  • the terminal device 10 that provides data to the data adjusting device 100 in response to the request of the data adjusting device 100
  • a data server having data corresponding to the request of the data adjusting device 100 and a data adjusting device.
  • the camera which captures the data (image) corresponding to 100 requirements is shown.
  • the terminal device 10 is not limited to the data server and the camera, but may be various devices as long as the data required by the data adjusting device 100 can be provided to the data adjusting device 100.
  • the terminal device 10 may be a UAV (Unmanned Aerial Vehicle) such as a drone, a moving body such as a vehicle such as an automobile, or an image sensor (imager), and details of this point will be described later.
  • UAV Unmanned Aerial Vehicle
  • the data adjusting device 100 learns the model M1 which is a neural network used for smile detection by using the data set DS1 (step S1). For example, the data adjusting device 100 learns the model M1 by using the data set DS1 stored in the data information storage unit 121 (see FIG. 5).
  • each cell in the data set DS1 shows data (image), and the data set DS1 shows that a large amount of data (image) is included.
  • the data adjusting device 100 designs the structure of a network (neural network or the like) corresponding to the model M1 stored in the model information storage unit 122 (see FIG. 6).
  • the data adjustment device 100 designs the network structure (network structure) of the model M1 used for smile detection.
  • the data adjusting device 100 may generate the network structure of the model M1 used for smile detection based on the information on the network structure corresponding to each application stored in the storage unit 120 (see FIG. 4) in advance. good.
  • the data adjusting device 100 may acquire the network structure information of the model M1 used for smile detection from an external device.
  • the data adjusting device 100 learns the model M1 by using the data set DS1 in which each data (image) is associated with a correct label indicating the presence or absence of a smile.
  • the data adjusting device 100 uses the data set DS1 to perform learning processing so as to minimize the set loss function (loss function), and learns the model M1.
  • the data adjusting device 100 may use various functions as the loss function as long as the degree of influence of each data can be measured in the measurement process described later. The loss function in the Influence function will be described later.
  • the data adjusting device 100 learns the model M1 by updating parameters such as weights and biases so that the output layer has correct values for data input. For example, in the back-propagation method, a loss function is used to indicate how far the output layer value is from the correct state (correct label) for the neural network, and the steepest descent method or the like is used to obtain the loss function. Weights and biases are updated to minimize.
  • the data adjusting device 100 gives an input value (data) to the neural network (model M1), the neural network (model M1) calculates the predicted value based on the input value, and the predicted value and the teacher data (correct answer label). ) To evaluate the error.
  • the data adjusting device 100 executes learning and construction of the model M1 by sequentially correcting the value of the coupling load (synaptic coefficient) in the neural network (model M1) based on the obtained error.
  • the above is an example, and the data adjusting device 100 may perform the learning process of the model M1 by various methods.
  • the data adjusting device 100 measures the degree of influence that each data in the data set DS1 has on the learning of the model M1.
  • the data adjusting device 100 measures the degree of influence that each data in the data set DS1 has on the training of the model M1 by using the method of measuring the degree of influence (measurement method MM1).
  • the larger the value of the influence degree here the higher the degree (contribution degree) that the data contributed to the learning of the model M1. It is shown that the larger the value of the degree of influence, that is, the higher the degree of influence, the more it contributes to the improvement of the identification accuracy of the model M1.
  • the higher the degree of influence the more the data is necessary for learning the model M1.
  • the higher the degree of influence the more useful the data is for training the model M1.
  • the degree of influence the smaller the value, the lower the degree (contribution degree) that the data contributed to the learning of the model M1. It is shown that the smaller the value of the degree of influence, that is, the lower the degree of influence, the less it contributes to the improvement of the identification accuracy of the model M1. As described above, the lower the degree of influence, the more the data is unnecessary for learning the model M1. For example, the lower the degree of influence, the more harmful the data is to the training of the model M1.
  • FIG. 1 shows a case where an Influence function (Influence functions) is used as an example of the measurement method MM1, but the Influence function will be described later.
  • the measurement method MM1 used by the data adjusting device 100 for measuring the degree of influence is not limited to the Influence function and any method may be used as long as a value indicating the degree of influence of each data can be obtained.
  • the data adjusting device 100 may measure the degree of influence of each data by a process of removing the data one by one and re-learning.
  • the data adjusting device 100 may measure the degree of influence of the data X by a process of excluding one data (data X) from the data set DS1 and relearning.
  • the data adjusting device 100 determines the degree of influence of the data X by determining the difference between the learning loss when the entire data set DS1 is used and the learning loss when the data X is removed from the data set DS1. May be measured.
  • the above is an example, and the data adjusting device 100 may measure the degree of influence of each data by using the Influence function or a method other than the above method.
  • the data adjusting device 100 measures the degree of influence of the data DT14 in the data set DS1 on the learning of the model M1 (step S2). As shown in the measurement result RS1, the data adjusting device 100 measures the degree of influence that the data DT14 has on the learning of the model M1 as the degree of influence IV14.
  • the degree of influence IV14 is assumed to be a specific value (for example, 0.2 or the like).
  • the data adjusting device 100 adjusts the data set DS1 based on the influence degree IV14 of the data DT14 (step S3).
  • the data adjusting device 100 determines whether the data DT 14 is necessary for learning the model M1 based on the influence degree IV 14 of the data DT 14. For example, the data adjusting device 100 determines whether the data DT 14 is necessary for learning the model M1 by using the threshold value stored in the threshold information storage unit 123 (see FIG. 7).
  • the data adjusting device 100 uses a threshold value (first threshold value TH1) used for discriminating data having a low degree of influence, that is, a low degree of contribution (also referred to as “first data”), and the data DT14 is a model M1. Determine if it is necessary for learning.
  • the data adjusting device 100 compares the influence degree IV14 of the data DT14 with the first threshold value TH1, and determines that the data DT14 is unnecessary for learning the model M1 when the influence degree IV14 is lower than the first threshold value TH1. ..
  • the data adjusting device 100 determines that the data DT 14 is unnecessary for learning the model M1 because the influence degree IV14 of the data DT 14 is lower than the first threshold value TH1. Therefore, as shown in the discrimination result DR1, the data adjusting device 100 determines that the contribution of the data DT 14 to the learning of the model M1 is low, and determines that the data DT 14 is excluded from the data set DS1. Then, the data adjusting device 100 adjusts the data set DS1 by excluding the data DT 14 from the data set DS1. As a result, the data adjustment device 100 updates the data set DS1.
  • the data adjusting device 100 measures the degree of influence of the data DT33 in the data set DS1 on the learning of the model M1 (step S4). As shown in the measurement result RS2, the data adjusting device 100 measures the degree of influence that the data DT33 has on the learning of the model M1 as the degree of influence IV33.
  • the degree of influence IV33 is assumed to be a specific value (for example, 0.7, etc.).
  • the data adjusting device 100 adjusts the data set DS1 based on the influence degree IV33 of the data DT33 (step S5).
  • the data adjusting device 100 determines whether the data DT 33 is necessary for learning the model M1 based on the influence degree IV 33 of the data DT 33. For example, the data adjusting device 100 determines whether the data DT 33 is necessary for learning the model M1 by using the threshold value stored in the threshold information storage unit 123. In FIG. 1, the data adjusting device 100 determines that the data DT 33 is not unnecessary for learning the model M1 because the influence degree IV 33 of the data DT 33 is equal to or higher than the first threshold value TH1.
  • the data adjusting device 100 uses a threshold value (second threshold value TH2) used for discriminating data having a high degree of influence, that is, a high degree of contribution (also referred to as “second data”), and the data DT33 is a model M1. Determine if it is necessary for learning.
  • the second threshold value TH2 is a value larger than the first threshold value TH1.
  • the data adjusting device 100 compares the influence degree IV33 of the data DT33 with the second threshold value TH2, and determines that the data DT33 is necessary for learning the model M1 when the influence degree IV33 is higher than the second threshold value TH2. ..
  • the data adjusting device 100 determines that the data DT 33 is necessary for learning the model M1 because the influence degree IV33 of the data DT 33 is higher than the second threshold value TH2. Therefore, as shown in the discrimination result DR2, the data adjusting device 100 determines that the contribution of the data DT 33 to the learning of the model M1 is high, and determines that the data corresponding to the data DT 33 is added to the data set DS1. Then, the data adjusting device 100 adjusts the data set DS1 by adding the data corresponding to the data DT 33 to the data set DS1. As a result, the data adjustment device 100 updates the data set DS1.
  • the data adjusting device 100 requests the terminal device 10 for data corresponding to the data DT 33 (step S6).
  • the data adjusting device 100 transmits the request information requesting the data (also referred to as “new data”) corresponding to the data DT 33 to the terminal device 10.
  • the data adjusting device 100 requests the terminal device 10 for new data similar to the data DT 33.
  • the data adjusting device 100 requests the terminal device 10 for data similar to the data DT 33 by transmitting information indicating the data DT 33 to the terminal device 10.
  • the data adjusting device 100 requests data similar to the data DT 33 from the terminal device 10 by transmitting the data DT 33 to the terminal device 10.
  • the terminal device 10 that has received the request from the data adjustment device 100 collects the data corresponding to the request information (step S7).
  • the terminal device 10 collects data similar to the data DT 33 as data to be provided to the data adjusting device 100 (also referred to as “providing data”).
  • the terminal device 10 collects the data corresponding to the request information by extracting the data corresponding to the request information from the possessed data group. For example, the terminal device 10 collects data corresponding to the request information by extracting data similar to the data DT33 from the possessed database. For example, the terminal device 10 compares the data DT 33 with each data in the database, and extracts data having a similarity with the data DT 33 within a predetermined threshold value as providing data. For example, the terminal device 10 calculates the similarity between the data DT 33 and each data in the database by using a model that outputs the similarity of the images, and the data whose similarity with the data DT 33 is within a predetermined threshold value. May be extracted as providing data.
  • the terminal device 10 collects the data corresponding to the request information by extracting the data corresponding to the request information from the captured data. For example, the terminal device 10 collects data corresponding to the request information by extracting data similar to the data DT33 from a plurality of captured images (data). For example, the terminal device 10 compares the data DT 33 with each of the captured images, and extracts data having a similarity with the data DT 33 within a predetermined threshold value as providing data. The terminal device 10 may be controlled to capture an image similar to the data DT 33. In this case, the terminal device 10 captures an image similar to the data DT 33 and collects the image as providing data.
  • the terminal device 10 provides the data for provision to the data adjusting device 100 (step S8).
  • the terminal device 10 transmits data similar to the collected data DT33 to the data adjusting device 100 as providing data.
  • the data adjusting device 100 that has acquired the providing data from the terminal device 10 adds the acquired providing data to the data set DS1 (step S9). As a result, the data adjusting device 100 adds data similar to the data DT33 having a high contribution to the data set DS1.
  • FIG. 1 shows a case where the data adjusting device 100 acquires new data to be added from the terminal device 10 and adds the new data to the data set DS1, but the data adjusting device 100 uses any means to acquire the new data. May be added to the dataset DS1.
  • the data adjusting device 100 may acquire data (new data) corresponding to the data DT 33 from the storage unit 120 and add it to the acquired data set DS1. In this case, the data adjusting device 100 acquires (extracts) data similar to the data DT33 from the data not included in the data set DS1 from the storage unit 120, and adds the acquired (extracted) data to the data set DS1. .. As described above, the data adjusting device 100 may acquire data similar to the data having a high contribution degree (second data) from the data set DS1 from the storage unit 120 and add the data to the data set DS1.
  • the data adjusting device 100 may generate data corresponding to the data DT33 and add the generated data (new data) to the data set DS1.
  • the data adjustment device 100 may generate data similar to the data DT33 and add the generated data to the dataset DS1.
  • the data adjusting device 100 generates data similar to the data DT33 by appropriately using various techniques such as data expansion, and adds the generated data to the data set DS1. In this way, the data adjusting device 100 may generate data similar to the data having a high contribution degree (second data) in the data set DS1 and add the generated data to the data set DS1.
  • FIG. 1 shows only the processing for the two data of the data DT14 and DT33 for the sake of explanation, but the data adjusting device 100 executes the same processing for all the data in the data set DS1.
  • the data adjustment device 100 measures the degree of influence for all the data in the data set DS1.
  • the data adjusting device 100 excludes data having a low contribution from the data set DS1.
  • the data adjusting device 100 adds data similar to the data having a high contribution to the data set DS1.
  • the data adjustment device 100 executes the adjustment process for adjusting the data set DS1.
  • the data adjusting device 100 relearns the model M1 using the adjusted data set DS1 (step S10).
  • the data adjustment device 100 uses the adjusted data set DS1 in which low-contribution data such as data DT14 is excluded and data similar to high-contribution data such as data DT33 is added to the model M1. Learn again.
  • the data adjustment device 100 adjusts the data set DS1 by excluding the data having a low contribution from the data set DS1 and adding data similar to the data having a high contribution to the data set DS1. Execute the process. In this way, the data adjusting device 100 can adjust the data used for learning by excluding or adding data according to the degree of contribution of each data to learning.
  • the data adjusting device 100 adds data corresponding to the data having a high degree of contribution
  • the data adjusting device 100 requests the data from the terminal device 10.
  • the terminal device 10 that has received the request provides the data corresponding to the request to the data adjusting device 100 as providing data.
  • the terminal device 10 can adjust the data used for learning.
  • the data adjustment system 1 adjusts the data used for training by excluding the data having a low contribution from the data set and adding the data corresponding to the data having a high contribution to the data set. Can be made possible.
  • Deep learning makes predictions that exceed human capabilities.
  • research on elucidation of the basis for judgment has become active.
  • the reason for the judgment of deep learning is to find the cause from the result. With such a scientific approach, it may be possible to understand what data is needed to improve the accuracy of deep learning.
  • Deep learning has a structure that mimics human neurons, and models are formed by optimizing a large number of parameters, which is difficult to explain due to its complexity.
  • research on artificial intelligence that can be explained has become active, and various algorithms have been proposed. Research at the academic level is limited, and the development of practical systems has been delayed.
  • the necessary data can be selected by searching for the cause from the results judged by deep learning.
  • Data in deep learning can be sorted by using techniques such as sorting harmful and useful data, lack of data due to unlearning, limits of estimation due to noise, and detection of mislabeled data. It is a very difficult task for humans to coordinate these tasks. Therefore, a system such as the data adjustment system 1 that re-adjusts the learning data by itself identifies the cause from the erroneous determination data and automatically prepares the optimum re-learning data set. In the data adjustment system 1, re-learning is executed using the adjusted data set, and these are repeated by a loop, so that the prediction accuracy can be further improved. This point will be described below with reference to FIG.
  • FIG. 2 is a conceptual diagram of the data adjustment process according to the embodiment of the present disclosure.
  • the processing PS in FIG. 2 shows an overall conceptual diagram of the processing of automatic data adjustment realized by the data adjustment system 1.
  • the processing in which the data adjustment system 1 shown below is described as the main body of the processing may be performed by any device included in the data adjustment system 1 such as the data adjustment device 100 and the terminal device 10.
  • an output (identification result) is obtained from the model NN according to the input of the test data.
  • the processing PS by the data adjustment system 1 when the output (identification result) from the model NN is an error (misrecognition), learning is performed by feeding back the information.
  • the data adjustment system 1 identifies the cause of the erroneous determination (misrecognition) in the data. For example, as shown in the method MT1, the data adjustment system 1 sorts (classifies) useful data whether it is harmful data or not by the Influence function. The data adjustment system 1 repeats the arithmetic loop so as to minimize the loss function of deep learning by removing harmful data.
  • the optimum model can be selected.
  • the accuracy of the data varies depending on the model.
  • the data adjustment system 1 may be configured to automatically select a model with less harmful data distribution.
  • the data adjustment system 1 can determine (know) the case where the accuracy is not obtained due to the lack of data by the Bayesian DNN. In this case, the data adjustment system 1 can improve the accuracy by automatically replenishing the required data from the data lake and then re-learning. Further, for example, the data adjustment system 1 can complement the data by generating the data by GAN (Generative Adversarial Network) as shown in the method MT3. Details of Bayesian DNN and GAN will be described later.
  • GAN Geneative Adversarial Network
  • Bayesian DNN is a technology that can determine (know) when accuracy cannot be expected even if further learning is performed due to noise or the like.
  • the data adjustment system 1 can notify (notify) a human being of the limit at which the accuracy cannot be further improved after the accuracy is improved to some extent by rotating the learning loop as described above.
  • the basis of judgment is human beings by visualizing what is the cause in Grad-CAM (Gradient-weighted Class Activation Mapping) and LIMIT (Local Interpretable Model-agnostic Explanations). Can know the reason for the decision. The details of Grad-CAM and LIMIT will be described later.
  • the data adjustment system 1 is a self-growth type learning system in which automatic data adjustment is integrated in learning of deep learning, for example.
  • the data adjustment system 1 puts test data into the network learned by deep learning.
  • the data adjustment system 1 is a system that automatically adjusts data by identifying the cause in the case of an erroneous determination.
  • the data adjustment system 1 learns again from the adjusted data and generates a network.
  • the data adjustment system 1 tests to find out the cause of the remaining misjudgment.
  • the data adjustment system 1 repeats a loop of automatically adjusting and relearning the data so as to improve the accuracy.
  • the data adjustment system 1 uses Influence function, Bayesian DNN, etc. in these cause elucidation techniques to determine useful / harmful data and identify unlearned / limits.
  • the data adjustment system 1 is characterized in that data deep learning is integrated.
  • the data adjustment system 1 can automatically select high-quality data and improve the accuracy.
  • the data adjustment system 1 can automatically select data whose accuracy should be improved by identifying the scientific cause without human beings adjusting the data by intuition. Since the data adjustment system 1 is a loop system, the accuracy can be improved by letting a computer perform calculations without human intervention.
  • the data adjustment system 1 quantitatively analyzes the influence of each data in the data set on the model (parameter) generated by the influence function. For example, the data adjustment system 1 uses an influence function to formulate the influence of the presence or absence of certain (learning) data on the accuracy (output result) of the model. For example, the data adjustment system 1 measures the degree of influence that each data has on learning without retraining using a data set excluding each data whose influence is to be measured.
  • the measurement of the degree of influence using the Influence function will be described using mathematical formulas and the like.
  • the Influence function is also used, for example, as a method for explaining a black box model of machine learning.
  • the Influence function is disclosed in the following documents, for example. ⁇ Understanding Black-box Predictions via Influence Functions, Pang Wei Kho and Percy Liang ⁇ https://arxiv.org/abs/1703.04730>
  • the data adjustment system 1 can calculate the contribution of data to machine learning by using the Influence function, and can measure (know) how much positive or negative influence a certain data has. can. For example, the data adjustment system 1 calculates (measures) the degree of influence by an algorithm, data, or the like, as shown below. In the following, a case where an image is used as input data will be described as an example.
  • the input x (image) is regarded as a prediction problem in machine learning by the output y (label).
  • Each image is labeled, that is, the image and the correct label are associated with each other.
  • n is an arbitrary natural number
  • label set data set
  • each labeled image z (may be simply referred to as "image z") is expressed by the following formula (may be simply described as "image z"). It becomes like 1).
  • the data adjustment system 1 calculates a parameter ((the left side of the equation (3))) that minimizes the loss by using the equation (3).
  • the empirical loss can be second-order differentiated and is a convex function with respect to the parameter ⁇ .
  • a parameter (variable) with a " ⁇ " above a certain character such as a parameter (variable) with a “ ⁇ ” (hat) above the “ ⁇ ” shown on the left side of equation (3).
  • the data adjustment system 1 calculates a parameter (left side of the equation (4)) when learning is performed using the equation (4) without using the learning data (image z).
  • the degree of influence is the difference (difference) between when the training point z (image z) is removed and when all the data points including the training point z are present. This difference is expressed by the following equation (5).
  • the data adjustment system 1 uses Influence functions to perform calculations without recalculation (re-learning) when the image z is removed by effective approximation as shown below.
  • This idea is a method of calculating the change of parameters assuming that the image z is weighted by a minute ⁇ .
  • a new parameter (the left side of the equation (6)) is defined using the following equation (6).
  • equation (7) shows an influence function corresponding to a certain image z.
  • equation (7) represents the amount of change in the parameter with respect to a minute ⁇ .
  • the equation (8) represents a Hessian (Hessian matrix).
  • Hessian matrix assuming that it is a Hessian matrix with positive definite values, there is also an inverse matrix.
  • the parameter change when the image z is removed is approximately , Can be expressed as the following equation (9).
  • the data adjustment system 1 can measure (find) the degree of influence when the data point z (image z) is removed without re-learning.
  • the data adjustment system 1 measures (obtains) the degree of influence on the loss at a certain test point z test by using the following equations (10-1) to (10-3).
  • the data adjustment system 1 can measure (find) the degree of influence of data in the machine learning model by this calculation.
  • the right-hand side of equation (10-3) consists of a gradient for a certain data loss (loss), a Hessian inverse matrix, a certain training data loss gradient, and the like.
  • the effect of certain data on the prediction (loss) of the model can be obtained by Eq. (10-3).
  • the data adjustment system 1 may appropriately execute various calculations to measure the degree of influence that each image has on learning.
  • Bayesian Deep Learning Next, Bayesian Deep Learning will be described.
  • the data adjustment system 1 can estimate, for example, why the accuracy of the model does not improve by Bayesian Deep Learning by the method MT2 (Bayesian DNN). In this way, the data adjustment system 1 can make a judgment regarding the accuracy of the model by the technology of Bayesian Deep Learning.
  • Bayesian Deep Learning will be explained while describing the assumptions.
  • Uncertainty in deep learning can be divided into accidental uncertainty (Aleatoric uncertainty) and uncertainty in cognition (Epistemic uncertainty).
  • the former accidental uncertainty is due to observational noise, not due to lack of data.
  • occlusion corresponds to this (accidental uncertainty) (corresponding).
  • the mouth of the masked person's face cannot be observed as data because it is hidden by the mask in the first place.
  • the uncertainty in the latter recognition represents the uncertainty about the lack of data. If there is enough data, the uncertainty in recognition can be improved.
  • Bayesian Deep Learning is disclosed in the following documents, for example. ⁇ What Uncertainties Do We Need in Bayesian Deep Learning for Computer Vison, NIPS 2017, Alex Kendall and Yarin Gal ⁇ https://papers.nips.cc/paper/7141-what-uncertainties-do-we-need-in-bayesian -deep-learning-for-computer-vision.pdf>
  • Bayesian deep learning is considered by linking Bayesian estimation and deep learning. Uncertainty can be evaluated by using Bayesian inference because it is possible to understand how the estimation results vary.
  • Bayesian deep learning is a method of estimating from the result of variance obtained in inference using dropouts in deep learning learning.
  • Dropout is a very popular technique for reducing overfitting by randomly reducing the number of neurons in each layer.
  • the data adjustment system 1 is not deterministic in the values obtained by learning and can be calculated by combining the posterior distribution of weights with dropouts.
  • the data adjustment system 1 can estimate the variance of the posterior distribution from the variability that generated a plurality of outputs with a plurality of dropout coefficients.
  • Bayesian deep learning uses dropouts not only during learning but also during inference to sample from the weight distribution.
  • the data adjustment system 1 can sample from the weight distribution by using the dropout not only at the time of learning but also at the time of inference by the method of Montecult dropout.
  • the data adjustment system 1 can obtain the uncertainty of the inference result by repeating the inference many times for the same input.
  • the network learned using the dropout has a structure in which some neurons are missing. Therefore, when the data adjustment system 1 inserts an input image and infers it, it can pass through the neuron lacked by the dropout and obtain the output characterized by its weight. Furthermore, when the same image is input, it is output through different routes in the network, so that the weighted output is different.
  • the dropout network can obtain different output distributions at the time of inference for the same input image.
  • a large output variance means a large amount of model uncertainty.
  • the mean of the distribution by multiple inferences means the final predicted value, and the variance means the uncertainty of the predicted value.
  • Bayesian deep learning expresses uncertainty from the variance of the output during this inference.
  • the data adjustment system 1 can estimate (determine) the uncertainty of the model by Bayesian deep learning as described above.
  • the data adjustment system 1 is not limited to the above-mentioned Influence function and Bayesian Deep Learning, and various methods may be used. This point will be described below.
  • the data adjustment system 1 may automatically generate data (learning data) used for learning by appropriately using various methods. For example, the data adjustment system 1 may (automatically) generate training data by GAN.
  • GAN is disclosed in the following documents, for example. ⁇ Generative Adversarial Networks, Ian J. Goodfellow et al. ⁇ Https://arxiv.org/abs/1406.2661>
  • the data adjustment system 1 may generate data having a high degree of influence by Gan from the data measured to have a high degree of influence by Influence functions.
  • the data adjustment system 1 uses a GAN architecture including a discriminator for identifying a high-impact image and a generator for generating a high-impact image to generate high-impact data. It may be generated.
  • the data adjustment system 1 is an example as described above, and data having a high degree of influence may be generated by appropriately using Gan's technology.
  • the data adjustment system 1 may visualize the basis for the output (judgment) of the model by appropriately using various methods.
  • the data adjustment system 1 uses Grad-CAM to generate evidence information that visualizes the evidence regarding the output (judgment) of the model after the input of the image.
  • the data adjustment system 1 uses Grad-CAM to generate evidence information indicating the basis for determining the presence or absence of a smile by the model M1 that detects a smile.
  • the data adjustment system 1 generates evidence information by processing related to Grad-CAM as disclosed in the following documents.
  • the data adjustment system 1 uses the technology of Grad-CAM, which is a visualization method applicable to the entire network including CNN, to generate rationale information showing the rationale for the output of the model M1.
  • the data adjustment system 1 can visualize the part that affects each class by calculating the weight of each channel from the final layer of the CNN and multiplying the weights. In this way, the data adjustment system 1 can visualize which part of the image was focused on in the neural network including the CNN.
  • the data adjustment system 1 generates evidence information by the method of Grad-CAM (see the above document).
  • the data adjustment system 1 specifies a target type (class) and generates information (image) corresponding to the specified class.
  • the data adjustment system 1 generates information (image) for a specified class by various processes such as backpropagation using the technology of Grad-CAM.
  • the data adjustment system 1 specifies a class of the type "smile” and generates an image related to the basis information corresponding to the type "smile”.
  • the data adjustment system 1 generates an image showing a range (area) being watched for recognition (classification) of the type "smile” in a so-called heat map (color map) format.
  • the data adjustment system 1 stores the input data (image) and the basis information indicating the basis of the determination result in association with each other in the storage unit 120 (see FIG. 4) as a log (history). This makes it possible to verify what kind of input the data adjustment system 1 has determined to perform the subsequent operation.
  • the data adjustment system 1 may use a log of input data (image) stored in the storage unit 120 and evidence information indicating the basis of the determination result for various processes.
  • the data adjustment system 1 may generate data by using a log of input data (image) and evidence information indicating the basis of the determination result.
  • the data adjustment system 1 may generate an image in which the input image is modified so as to include an image of a region indicated by the heat map as the basis information.
  • the data adjustment system 1 may generate data from the log by appropriately using various methods.
  • the basis information generated by the data adjustment system 1 is not limited to an image such as a heat map, but may be information in various formats such as character information and voice information. Further, the data adjustment system 1 is not limited to the Grad-CAM, and various methods may be appropriately used to visualize the basis for the output (judgment) of the model. For example, the data adjustment system 1 may generate evidence information by a method such as LIMITE or TCAV (Testing with Concept Activation Vectors).
  • the data adjustment system 1 may generate the basis information by using the technology of LIMIT.
  • the data adjustment system 1 may generate rationale information by processing related to LIMITE as disclosed in the following documents.
  • the data adjustment system 1 generates the basis information by the method of LIMIT (see the above document). For example, the data adjustment system 1 generates another model (rationale model) that locally approximates to show the reason (rationale) why the model made such a judgment. The data adjustment system 1 generates a basis model that locally approximates the combination of the input information and the output result corresponding to the input information. Then, the data adjustment system 1 generates the rationale information by using the rationale model. Further, the data adjustment system 1 is a method of calculating basis information (generation method) such as "Testing with Concept Activation Vectors" (testing that takes into account the direction of validating the concept) called TCAV as disclosed in the following documents. ) May be used.
  • generation method such as "Testing with Concept Activation Vectors" (testing that takes into account the direction of validating the concept)
  • the data adjustment system 1 generates a plurality of input information by duplicating or changing the basic input information (target input information) such as an image. Then, the data adjustment system 1 inputs each of the plurality of input information into the model (explanation target model) for which the basis information is generated, and outputs a plurality of output information corresponding to each input information from the explanation target model. .. Then, the data adjustment system 1 learns the basis model by using the combination (pair) of each of the plurality of input information and each of the corresponding plurality of output information as learning data. In this way, the data adjustment system 1 generates a basis model that locally approximates the target input information with another interpretable model (such as a linear model).
  • another interpretable model such as a linear model
  • the data adjustment system 1 when it obtains the output of the model for a certain input, it generates a basis model for showing the basis (local explanation) of the output. For example, the data adjustment system 1 generates an interpretable model such as a linear model as a basis model.
  • the data adjustment system 1 generates evidence information based on information such as each parameter of a basis model such as a linear model. For example, the data adjustment system 1 generates evidence information indicating that the influence of the feature amount having a large weight is large among the feature amounts of the basis model such as the linear model.
  • the data adjustment system 1 generates the basis information based on the basis model learned by using the input information and the output result of the model. As described above, the data adjustment system 1 may generate the basis information based on the state information including the output result of the model after the input information is input to the model.
  • the data adjustment system 1 shown in FIG. 3 will be described.
  • the data adjustment system 1 is an information processing system that realizes an adjustment process for adjusting learning data.
  • the data adjustment system 1 includes a data adjustment device 100 and a plurality of terminal devices 10a, 10b, 10c, and 10d.
  • terminal devices 10a, 10b, 10c, 10d and the like When the terminal devices 10a, 10b, 10c, 10d and the like are not distinguished, they may be described as the terminal device 10.
  • four terminal devices 10a, 10b, 10c, and 10d are illustrated, but the data adjustment system 1 includes a number of terminal devices 10 more than four (for example, 20 or 100 or more). It may be.
  • FIG. 3 is a diagram showing a configuration example of the data adjustment system according to the embodiment.
  • the data adjustment system 1 shown in FIG. 3 may include a plurality of data adjustment devices 100.
  • the data adjusting device 100 measures the degree of influence that the data contained in the data set used for learning the model by machine learning has on the learning, and adjusts the data set based on the measurement result (information processing device 100). Computer). Further, the data adjusting device 100 executes the learning process using the data set. Further, the data adjusting device 100 requests the terminal device 10 for data to be added to the data set.
  • the terminal device 10 is a computer that provides data to the data adjusting device 100 in response to a request from the data adjusting device 100.
  • the terminal device 10a is a data server that holds data.
  • the terminal device 10a may be a data server that holds data such as moving images, images, and character information.
  • the terminal device 10a may be a data server that holds content data such as television, movies, and music.
  • the terminal device 10b is a camera having an imaging function.
  • the terminal device 10b is a camera that captures moving images and images and holds the captured data.
  • the terminal device 10c is an image sensor (imager) having an image pickup function.
  • the terminal device 10c has a function of communicating with the data adjusting device 100, and has a function of transmitting an captured image or moving image to the data adjusting device 100.
  • the terminal device 10c captures an image or a moving image in response to a request from the data adjusting device 100, and transmits the captured image or moving image to the data adjusting device 100.
  • the terminal device 10d is a moving body such as a UAV such as a drone or a vehicle such as an automobile.
  • the terminal device 10d has a function of communicating with the data adjusting device 100, and may move in response to a request from the data adjusting device 100.
  • the terminal device 10d has an image pickup function such as an image sensor (imager), moves to a position corresponding to a request from the data adjustment device 100, captures an image or a moving image at that position, and obtains the captured image or moving image as data. It is transmitted to the adjusting device 100.
  • the terminal device 10 may be any device as long as the processing in the embodiment can be realized.
  • the terminal device 10 may be, for example, a device such as a smartphone, a tablet terminal, a notebook PC (Personal Computer), a desktop PC, a mobile phone, or a PDA (Personal Digital Assistant).
  • the terminal device 10 may be a wearable terminal (Wearable Device) or the like that the user can wear.
  • the terminal device 10 may be a wristwatch-type terminal, a glasses-type terminal, or the like.
  • the terminal device 10 may be a so-called home electric appliance such as a television or a refrigerator.
  • the terminal device 10 may be a robot that interacts with a human (user), such as a smart speaker, an entertainment robot, or a domestic robot.
  • the terminal device 10 may be a device arranged at a predetermined position such as digital signage.
  • FIG. 4 is a diagram showing a configuration example of the data adjusting device 100 according to the embodiment of the present disclosure.
  • the data adjusting device 100 includes a communication unit 110, a storage unit 120, and a control unit 130.
  • the data adjusting device 100 includes an input unit (for example, a keyboard, a mouse, etc.) that receives various operations from the administrator of the data adjusting device 100, and a display unit (for example, a liquid crystal display, etc.) for displaying various information. You may have.
  • the communication unit 110 is realized by, for example, a NIC (Network Interface Card) or the like. Then, the communication unit 110 is connected to the network N (see FIG. 3) by wire or wirelessly, and transmits / receives information to / from another information processing device such as the terminal device 10. Further, the communication unit 110 may send and receive information to and from the terminal device 10.
  • a NIC Network Interface Card
  • the storage unit 120 is realized by, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory (Flash Memory), or a storage device such as a hard disk or an optical disk. As shown in FIG. 4, the storage unit 120 according to the embodiment includes a data information storage unit 121, a model information storage unit 122, a threshold information storage unit 123, and a knowledge information storage unit 125.
  • a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory (Flash Memory)
  • flash memory Flash Memory
  • FIG. 4 the storage unit 120 according to the embodiment includes a data information storage unit 121, a model information storage unit 122, a threshold information storage unit 123, and a knowledge information storage unit 125.
  • the data information storage unit 121 stores various information related to the data used for learning.
  • the data information storage unit 121 stores a data set used for learning.
  • FIG. 5 is a diagram showing an example of a data information storage unit according to the embodiment of the present disclosure.
  • the data information storage unit 121 stores various information related to various data such as learning data used for learning and evaluation data used for accuracy evaluation (measurement).
  • FIG. 5 shows an example of the data information storage unit 121 according to the embodiment.
  • the data information storage unit 121 includes items such as “data set ID”, “data ID”, and “data”.
  • Data set ID indicates identification information for identifying the data set.
  • the "data ID” indicates identification information for identifying an object.
  • data indicates data corresponding to the object identified by the data ID. That is, in the example of FIG. 5, the vector data (data) corresponding to the object is associated and registered with the data ID that identifies the object.
  • the data set (data set DS1) identified by the data set ID “DS1” includes a plurality of data identified by the data IDs “DID1”, “DID2”, “DID3” and the like. Show that.
  • each data (learning data) identified by the data IDs "DID1", “DID2”, “DID3” and the like is image information and the like used for learning the smile detection model.
  • the data information storage unit 121 is not limited to the above, and may store various information depending on the purpose.
  • the data information storage unit 121 stores correct answer information (correct answer label) corresponding to each data in association with each data.
  • the data information storage unit 121 stores correct answer information (correct answer label) indicating whether or not each data (image) includes a smile in association with each data.
  • the data information storage unit 121 may identifiable whether each data is learning data, evaluation data, or the like. For example, the data information storage unit 121 stores the learning data and the evaluation data in a distinguishable manner. The data information storage unit 121 may store information that identifies whether each data is learning data or evaluation data.
  • the data adjusting device 100 learns a model based on each data used as learning data and correct answer information. The data adjusting device 100 measures the accuracy of the model based on each data used as evaluation data and correct answer information. The data adjusting device 100 measures the accuracy of the model by collecting the result of comparing the output result output by the model when the evaluation data is input and the correct answer information.
  • the model information storage unit 122 stores information about the model.
  • the model information storage unit 122 stores information (model data) indicating the structure of the model (network).
  • FIG. 6 is a diagram showing an example of a model information storage unit according to the embodiment of the present disclosure.
  • FIG. 6 shows an example of the model information storage unit 122 according to the embodiment.
  • the model information storage unit 122 includes items such as "model ID", "use", and "model data”.
  • Model ID indicates identification information for identifying the model.
  • User indicates the use of the corresponding model.
  • Model data indicates model data.
  • FIG. 6 an example in which conceptual information such as “MDT1" is stored in “model data” is shown, but in reality, various information constituting the model such as information and functions related to the network included in the model are stored. included.
  • model M1 identified by the model ID "M1" is used for "image recognition (smile detection)".
  • the model M1 is a model used for image recognition, and shows that it is used for smile detection. Further, it is shown that the model data of the model M1 is the model data MDT1.
  • the model information storage unit 122 is not limited to the above, and may store various information depending on the purpose.
  • the model information storage unit 122 stores the parameter information of the model learned (generated) by the learning process.
  • the threshold information storage unit 123 stores various information related to the threshold value.
  • the threshold information storage unit 123 stores various information regarding the threshold value used for comparison with the score.
  • FIG. 7 is a diagram showing an example of the threshold information storage unit according to the embodiment.
  • the threshold information storage unit 123 shown in FIG. 7 includes items such as “threshold ID” and “threshold”.
  • Threshold ID indicates identification information for identifying the threshold value. Further, the “threshold value” indicates a specific value of the threshold value identified by the corresponding threshold ID. In addition, information indicating its use is stored in association with each threshold value.
  • the threshold value (first threshold value TH1) identified by the threshold value ID “TH1” is stored in association with information indicating that it is used for discriminating data having a low degree of influence.
  • the first threshold value TH1 is used to discriminate data having a low degree of influence, that is, data to be excluded.
  • the value of the first threshold value TH1 indicates that it is "VL1".
  • the value of the first threshold value TH1 is a specific numerical value (for example, 0.3 or the like).
  • the threshold value (second threshold value TH2) identified by the threshold value ID "TH2" is stored in association with information indicating that it is used for discriminating data having a high degree of influence.
  • the second threshold value TH2 is used to discriminate data having a high degree of influence, that is, data to be added with new data.
  • the value of the second threshold value TH2 indicates that it is “VL2”.
  • the value of the second threshold value TH2 is a specific numerical value (for example, 0.75 or the like).
  • the threshold information storage unit 123 is not limited to the above, and may store various information depending on the purpose.
  • the control unit 130 is a program stored inside the data adjustment device 100 by, for example, a CPU (Central Processing Unit) or an MPU (Micro Processing Unit) (for example, an information processing program such as a data adjustment processing program according to the present disclosure). Is realized by executing RAM (Random Access Memory) etc. as a work area. Further, the control unit 130 is a controller, and is realized by, for example, an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • the control unit 130 includes an acquisition unit 131, a learning unit 132, a measurement unit 133, an adjustment unit 134, and a transmission unit 135, and functions and operations of information processing described below. To realize or execute.
  • the internal configuration of the control unit 130 is not limited to the configuration shown in FIG. 4, and may be another configuration as long as it is a configuration for performing information processing described later.
  • the connection relationship of each processing unit included in the control unit 130 is not limited to the connection relationship shown in FIG. 4, and may be another connection relationship.
  • the acquisition unit 131 acquires various information.
  • the acquisition unit 131 acquires various information from an external information processing device.
  • the acquisition unit 131 acquires various information from the terminal device 10.
  • the acquisition unit 131 acquires various information from the storage unit 120.
  • the acquisition unit 131 acquires various information from the data information storage unit 121, the model information storage unit 122, and the threshold information storage unit 123.
  • the acquisition unit 131 acquires various information learned by the learning unit 132.
  • the acquisition unit 131 acquires various information measured by the measurement unit 133.
  • the acquisition unit 131 acquires various information adjusted by the adjustment unit 134.
  • the learning unit 132 learns various information.
  • the learning unit 132 learns various types of information based on information from an external information processing device and information stored in the storage unit 120.
  • the learning unit 132 learns various types of information based on the information stored in the data information storage unit 121.
  • the learning unit 132 stores the model generated by learning in the model information storage unit 122.
  • the learning unit 132 performs learning processing.
  • the learning unit 132 performs various learning.
  • the learning unit 132 learns various types of information based on the information acquired by the acquisition unit 131.
  • the learning unit 132 learns (generates) the model.
  • the learning unit 132 learns various information such as a model.
  • the learning unit 132 generates a model by learning.
  • the learning unit 132 learns a model by using various techniques related to machine learning. For example, the learning unit 132 learns the parameters of the model (network).
  • the learning unit 132 learns a model by using various techniques related to machine learning.
  • the learning unit 132 learns network parameters. For example, the learning unit 132 learns the network parameters of the model M1. The learning unit 132 learns the network parameters of the model M1.
  • the learning unit 132 performs learning processing based on the learning data (teacher data) stored in the data information storage unit 121.
  • the learning unit 132 generates the model M1 by performing a learning process using the learning data stored in the data information storage unit 121.
  • the learning unit 132 generates a model used for image recognition (smile detection).
  • the learning unit 132 generates the model M1 by learning the network parameters of the model M1.
  • the learning method by the learning unit 132 is not particularly limited. For example, learning data in which label information (whether or not a smile is present) and an image group are linked is prepared, and the learning data is used as a calculation model based on a multi-layer neural network. You may learn by inputting in. Further, for example, a method based on DNN (Deep Neural Network) such as CNN (Convolutional Neural Network) or 3D-CNN may be used.
  • DNN Deep Neural Network
  • CNN Convolutional Neural Network
  • 3D-CNN 3D-CNN
  • the learning unit 132 targets time-series data such as moving images (moving images) such as videos, it is a recurrent neural network (RNN) or an LSTM (Long Short-Term Memory units) that is an extension of the RNN. You may use the method based on.
  • RNN recurrent neural network
  • LSTM Long Short-Term Memory units
  • the learning unit 132 executes the learning process using the data set.
  • the learning unit 132 executes the learning process using the data set adjusted by the adjusting unit 134.
  • the learning unit 132 updates the model by executing the learning process using the data set adjusted by the adjusting unit 134.
  • the learning unit 132 updates the parameters of the model by executing the learning process using the data set adjusted by the adjusting unit 134.
  • the learning unit 132 updates the model M1 by executing the learning process using the data set adjusted by the adjusting unit 134.
  • the measuring unit 133 measures various processes.
  • the measuring unit 133 functions as a measuring means.
  • the measuring unit 133 functions as a measuring means for measuring the degree of influence of the learning data used for learning the neural network on the learning.
  • the measuring unit 133 measures various processes based on the information from the external information processing device.
  • the measuring unit 133 measures various processes based on the information stored in the storage unit 120.
  • the measurement unit 133 measures various processes based on the information stored in the data information storage unit 121, the model information storage unit 122, and the threshold information storage unit 123.
  • the measuring unit 133 generates various information by measuring the processing.
  • the measurement unit 133 measures various processes based on various information acquired by the acquisition unit 131.
  • the measuring unit 133 measures various processes based on various information learned by the learning unit 132.
  • the measurement unit 133 extracts various information based on the various information acquired by the acquisition unit 131.
  • the measurement unit 133 extracts various information based on the various information learned by the learning unit 132.
  • the measuring unit 133 extracts various information based on the information adjusted by the adjusting unit 134.
  • the measurement unit 133 determines various information.
  • the measuring unit 133 determines various information.
  • the measuring unit 133 determines various information.
  • the measurement unit 133 determines the necessity of each data based on the degree of influence of each data.
  • the measurement unit 133 measures the degree of influence of the learning data used for learning the model by machine learning on the learning.
  • the measuring unit 133 measures the degree of influence based on the loss function.
  • the measuring unit 133 measures the degree of influence by a method available for measuring the degree of influence.
  • the measuring unit 133 measures the degree of influence by the Influence function.
  • the measuring unit 133 measures the degree of influence of one data based on the difference between the case of the data set and the case of removing one data from the data set.
  • the measuring unit 133 measures the degree of influence of the learning data used for learning the neural network.
  • the adjustment unit 134 adjusts various information.
  • the adjusting unit 134 functions as an adjusting means for adjusting the data set.
  • the adjustment unit 134 excludes the data measured as having a low degree of influence from the data set, acquires new data which is new data corresponding to the data measured as having a high degree of influence, and uses the acquired new data as data. It functions as an adjustment means to be added to the set.
  • the adjusting unit 134 adjusts various information based on the information from the external information processing device and the information stored in the storage unit 120.
  • the adjusting unit 134 adjusts various information based on the information from other information processing devices such as the terminal device 10.
  • the adjusting unit 134 adjusts various information based on the information stored in the data information storage unit 121, the model information storage unit 122, and the threshold information storage unit 123.
  • the adjustment unit 134 adjusts various information based on various information acquired by the acquisition unit 131.
  • the adjusting unit 134 adjusts various information based on the various information learned by the learning unit 132.
  • the adjusting unit 134 adjusts various information based on various information adjusted by the processing measurement of the measuring unit 133.
  • the adjusting unit 134 adjusts the data set by excluding the data from the data set or adding new data to the data set based on the measurement result by the measuring unit 133.
  • the adjusting unit 134 excludes the first data having a low degree of influence from the data set.
  • the adjusting unit 134 excludes the first data having a degree of influence lower than the first threshold value from the data set.
  • the adjustment unit 134 adds new data, which is new data corresponding to the second data having a high degree of influence, to the data set.
  • the adjusting unit 134 adds new data corresponding to the second data having a degree of influence higher than the second threshold value to the data set.
  • the adjusting unit 134 adds new data acquired from the external device to the data set.
  • the adjusting unit 134 adds new data acquired from the storage unit that stores the data to the data set.
  • the adjustment unit 134 generates new data and adds the generated new data to the data set.
  • the adjusting unit 134 generates new data using the second data, and adds the generated new data to the data set.
  • the coordinating unit 134 generates new data by data expansion (data augmentation) and adds the generated new data to the data set.
  • the adjusting unit 134 generates new data similar to the second data, and adds the generated new data to the data set. For example, the adjustment unit 134 uses the second data as the original data and generates an image similar to the original data by data expansion (data augmentation).
  • the adjusting unit 134 uses the second data as the original data, reduces the original data, enlarges a part of the original data, rotates it left and right, and moves it in the up, down, left, and right directions. , Generates an image similar to the original data.
  • the adjusting unit 134 may generate new data to be added to the data set by various methods.
  • the adjusting unit 134 may generate new data to be added to the data set by the method such as GAN described above.
  • the transmission unit 135 transmits various information.
  • the transmission unit 135 transmits various information to an external information processing device.
  • the transmission unit 135 provides various information to an external information processing device.
  • the transmission unit 135 transmits various information to another information processing device such as the terminal device 10.
  • the transmission unit 135 provides the information stored in the storage unit 120.
  • the transmission unit 135 transmits the information stored in the storage unit 120.
  • the transmission unit 135 provides various types of information based on information from other information processing devices such as the terminal device 10.
  • the transmission unit 135 provides various information based on the information stored in the storage unit 120.
  • the transmission unit 135 provides various types of information based on the information stored in the data information storage unit 121, the model information storage unit 122, and the threshold information storage unit 123.
  • the transmission unit 135 transmits the request information requesting new data to the external device.
  • the transmission unit 135 transmits the request information requesting new data to the terminal device 10.
  • the transmission unit 135 transmits to the terminal device 10 request information requesting data similar to the learning data whose degree of influence on learning in the machine learning model is equal to or higher than a predetermined reference.
  • the transmission unit 135 transmits to the terminal device 10 request information requesting data similar to the learning data whose degree of influence on learning in the machine learning model is equal to or greater than a predetermined threshold.
  • the data adjusting device 100 may use a model (network) in the form of a neural network (NN) such as a deep neural network (DNN).
  • the data adjusting device 100 is not limited to the neural network, and may use various types of models (functions) such as a regression model such as SVM (Support Vector Machine).
  • the data adjusting device 100 may use a model (function) of any format.
  • the data adjustment device 100 may use various regression models such as a non-linear regression model and a linear regression model.
  • FIG. 8 is an example of a network corresponding to the model.
  • the network NW1 shown in FIG. 8 shows a neural network including a plurality of (multilayer) intermediate layers between the input layer INL and the output layer OUTL.
  • the network NW1 shown in FIG. 8 corresponds to the neural network NN in FIG.
  • the data adjusting device 100 may learn the parameters of the network NW1 shown in FIG.
  • the network NW1 shown in FIG. 8 is a conceptual diagram showing a neural network (model) used for image recognition corresponding to the network of the model M1. For example, when an image is input from the input layer INL side, the network NW1 outputs the recognition result from the output layer OUTL. For example, the data adjusting device 100 inputs information to the input layer INL in the network NW1 to output the recognition result corresponding to the input from the output layer OUTL.
  • the network NW1 is shown as an example of the model (network), but the network NW1 may be in various formats depending on the application and the like.
  • the data adjusting device 100 learns the model M1 by learning the parameters (weights) of the model M1 having the structure of the network NW1 shown in FIG.
  • FIG. 9 is a diagram showing a configuration example of the terminal device according to the embodiment of the present disclosure.
  • the terminal device 10 includes a communication unit 11, an input unit 12, an output unit 13, a storage unit 14, a control unit 15, and a sensor unit 16.
  • the terminal device 10 may have any device configuration as long as it can collect data and provide it to the data adjusting device 100.
  • the terminal device 10 may have any other configuration as long as it has a communication unit 11 that communicates with the data adjustment device 100 and a control unit 15 that performs a process of collecting data.
  • the terminal device 10 may not have any of the input unit 12, the output unit 13, the storage unit 14, and the sensor unit 16.
  • the terminal device 10 when the terminal device 10 is an image sensor (imager), the terminal device 10 may have only the communication unit 11, the control unit 15, and the sensor unit 16.
  • the image sensor used in the image sensor (imager) is CMOS (Complementary Metal Oxide Semiconductor).
  • the image sensor used in the image sensor (imager) is not limited to CMOS, and may be various image sensors such as CCD (Charge Coupled Device).
  • the terminal device 10 when the terminal device 10 is a data server, the terminal device 10 may have a configuration having only a communication unit 11, a storage unit 14, and a control unit 15.
  • the terminal device 10 when the terminal device 10 is a mobile body, the terminal device 10 may have a mechanism for realizing the movement of the drive unit (motor) or the like.
  • the communication unit 11 is realized by, for example, a NIC or a communication circuit.
  • the communication unit 11 is connected to the network N (Internet or the like) by wire or wirelessly, and transmits / receives information to / from other devices such as the data adjustment device 100 via the network N.
  • the input unit 12 accepts various inputs.
  • the input unit 12 accepts the user's operation.
  • the input unit 12 may accept an operation (user operation) on the terminal device 10 used by the user as an operation input by the user.
  • the input unit 12 may receive information regarding the operation of the user using the remote controller (remote controller) via the communication unit 11. Further, the input unit 12 may have a button provided on the terminal device 10 or a keyboard or mouse connected to the terminal device 10.
  • the input unit 12 may have a touch panel capable of realizing functions equivalent to those of a remote controller, a keyboard, and a mouse.
  • various information is input to the input unit 12 via the display (output unit 13).
  • the input unit 12 receives various operations from the user via the display screen by the function of the touch panel realized by various sensors. That is, the input unit 12 receives various operations from the user via the display (output unit 13) of the terminal device 10.
  • the input unit 12 receives a user's operation via the display (output unit 13) of the terminal device 10.
  • the output unit 13 outputs various information.
  • the output unit 13 has a function of displaying information.
  • the output unit 13 is provided in the terminal device 10 and displays various information.
  • the output unit 13 is realized by, for example, a liquid crystal display, an organic EL (Electro-Luminescence) display, or the like.
  • the output unit 13 may have a function of outputting audio.
  • the output unit 13 has a speaker that outputs sound.
  • the storage unit 14 is realized by, for example, a semiconductor memory element such as a RAM or a flash memory, or a storage device such as a hard disk or an optical disk.
  • the storage unit 14 stores various information used for displaying the information.
  • control unit 15 for example, a program stored inside the terminal device 10 (for example, an information processing program such as a data providing program according to the present disclosure) is executed by a CPU, an MPU, or the like with a RAM or the like as a work area. It will be realized. Further, the control unit 15 is a controller, and may be realized by an integrated circuit such as an ASIC or FPGA.
  • control unit 15 has a reception unit 151, a collection unit 152, and a transmission unit 153, and realizes or executes the functions and operations of information processing described below.
  • the internal configuration of the control unit 15 is not limited to the configuration shown in FIG. 9, and may be any other configuration as long as it is a configuration for performing information processing described later.
  • the receiving unit 151 receives various information.
  • the receiving unit 151 receives various information from an external information processing device.
  • the receiving unit 151 receives various information from other information processing devices such as the data adjusting device 100.
  • the receiving unit 151 receives the request information indicating the data requested to be acquired by the external device having the learning data used for learning the model by machine learning from the external device.
  • the receiving unit 151 receives the request information indicating the data requested to be acquired by the data adjusting device 100 from the data adjusting device 100.
  • the receiving unit 151 receives request information requesting learning data used for the machine learning from an external device (data adjusting device 100 or the like) having a machine learning model.
  • the receiving unit 151 receives the request information requesting data similar to the learning data whose degree of influence on learning in the machine learning model is equal to or higher than a predetermined reference.
  • the collection unit 152 collects various types of information.
  • the collection unit 152 decides to collect various types of information.
  • the collection unit 152 collects various types of information based on information from an external information processing device.
  • the collecting unit 152 collects various types of information based on the information from the data adjusting device 100.
  • the collecting unit 152 collects various types of information in response to an instruction from the data adjusting device 100.
  • the collecting unit 152 collects various types of information based on the information stored in the storage unit 14.
  • the collecting unit 152 collects data corresponding to the request information received by the receiving unit 151.
  • the collecting unit 152 collects the data corresponding to the request information received by the receiving unit 151 as the data (providing data) to be provided to the data adjusting device 100.
  • the collecting unit 152 collects the data for provision by extracting the data corresponding to the request information received by the receiving unit 151 from the storage unit 14.
  • the collecting unit 152 collects the data for provision by detecting the data corresponding to the request information received by the receiving unit 151 by the sensor unit 16.
  • the transmission unit 153 transmits various information to an external information processing device.
  • the transmission unit 153 transmits various information to another information processing device such as the data adjustment device 100.
  • the transmission unit 153 transmits the information stored in the storage unit 14.
  • the transmission unit 153 transmits various types of information based on information from other information processing devices such as the data adjustment device 100.
  • the transmission unit 153 transmits various types of information based on the information stored in the storage unit 14.
  • the transmission unit 153 transmits the provision data collected as the data corresponding to the request information to the external device.
  • the transmission unit 153 transmits the provision data collected as the data corresponding to the request information to the data adjustment device 100.
  • the transmission unit 153 transmits the provision data collected by the collection unit 152 to the data adjustment device 100.
  • the transmission unit 153 transmits the sensor information detected by the sensor unit 16 to the data adjustment device 100.
  • the transmission unit 153 transmits the image information detected by the image sensor (image sensor) of the sensor unit 16 to the data adjustment device 100.
  • the sensor unit 16 detects various sensor information.
  • the sensor unit 16 has a function as an imaging unit for capturing an image.
  • the sensor unit 16 has an image sensor function and detects image information.
  • the sensor unit 16 functions as an image input unit that receives an image as an input.
  • the sensor unit 16 is not limited to the above, and may have various sensors.
  • the sensor unit 16 is for receiving biological information such as a sound sensor, a position sensor, an acceleration sensor, a gyro sensor, a temperature sensor, a humidity sensor, an illuminance sensor, a pressure sensor, a proximity sensor, and odor, sweat, heartbeat, pulse, and brain wave. It may have various sensors such as sensors. Further, the sensors that detect the above-mentioned various information in the sensor unit 16 may be common sensors, or may be realized by different sensors.
  • FIG. 10 is a flowchart showing the processing of the data adjusting device according to the embodiment of the present disclosure. Specifically, FIG. 10 is a flowchart showing a procedure of information processing by the data adjusting device 100.
  • the data adjusting device 100 measures the contribution of each data included in the data set used for learning the model by machine learning to the learning (step S101). Then, the data adjusting device 100 adjusts the data set by excluding the data from the data set or adding new data to the data set based on the measurement result (step S102).
  • FIG. 11 is a sequence diagram showing a processing procedure of the data adjustment system according to the embodiment of the present disclosure.
  • the data adjusting device 100 measures the contribution of each data in learning (step S201). For example, the data adjusting device 100 measures the degree of contribution that the learning data used for learning the model by machine learning has given to the learning.
  • the data adjusting device 100 excludes data having a low contribution (step S202).
  • the data adjusting device 100 excludes data whose contribution in learning is equal to or less than the threshold for discrimination of low contribution from the data set.
  • the data adjusting device 100 adds data corresponding to the data having a high degree of contribution (step S203).
  • the data adjusting device 100 adds data corresponding to data in which the degree of contribution in learning is equal to or greater than the threshold value for determining the degree of contribution.
  • the data adjusting device 100 requests the terminal device 10 to provide data corresponding to the data having a high degree of contribution (step S204). For example, the data adjusting device 100 requests the terminal device 10 to have data similar to the data having a high degree of contribution.
  • the terminal device 10 for which the data has been requested collects the data corresponding to the request (step S205). Then, the terminal device 10 transmits the collected data to the data adjusting device 100 (step S206).
  • the data adjusting device 100 that has acquired the data from the terminal device 10 adds the acquired data to the data set (step S207).
  • FIG. 12 is a flowchart showing an example of data adjustment and learning processing based on the degree of influence.
  • the data adjusting device 100 calculates the degree of influence of the neural network (step S301). For example, the data adjusting device 100 measures the degree of influence of the learning data used for learning the neural network on the learning.
  • the data adjusting device 100 extracts data having a good degree of influence (step S302).
  • the direction of reducing loss is a good effect
  • the direction of increasing loss is a bad effect
  • the greater the degree of loss reduction the greater the degree of good effect.
  • the data adjusting device 100 extracts data having a good influence degree equal to or higher than a predetermined reference (threshold value or the like).
  • the data adjusting device 100 adds data (step S303).
  • the data adjusting device 100 adds data similar to the data having a good degree of influence to the training data.
  • the data adjusting device 100 may generate data similar to the data having a good influence by data augmentation, and add the generated data to the training data.
  • the data adjusting device 100 may add data similar to the data having a high degree of influence among the data on the network to the training data.
  • the data adjusting device 100 adds data and performs re-learning (step S304). For example, the data adjusting device 100 retrains the model using the training data to which the data is added in step S303.
  • the data adjustment device 100 updates to the retrained model (step S305). For example, the data adjusting device 100 updates the model before re-learning with the model after re-learning. For example, the data adjustment device 100 updates the parameters of the model to the parameters after re-learning.
  • the data adjusting device 100 is a camera equipped with an image classification function by a deep neural network
  • the data adjusting device 100 calculates the data having a good influence.
  • the data adjusting device 100 generates and collects data similar to the data by data augmentation, or collects data from the network.
  • the data adjustment device 100 adds those collected data to relearn the original deep neural network.
  • the data adjusting device 100 can improve the accuracy of the image classification function of the camera.
  • a system that autonomously searches for data that has a positive effect on the increase in data may be configured.
  • the data adjustment system 1 can search for data and automatically perform re-learning without human intervention.
  • the data adjustment system 1 is a learning system that autonomously evolves the deep neural network. With this data adjustment system 1, the deep neural network can evolve its performance by itself.
  • the data adjusting device 100 and the terminal device 10 are separate bodies, but these devices may be integrated.
  • the data adjusting device 100 may be a device having a function of adjusting learning data and a function of collecting data.
  • the data adjustment device 100 is an information processing device that acquires new learning data based on the degree of influence.
  • the data adjusting device 100 uses a trained model using machine learning, a measuring unit for measuring the degree of influence of the training data used for machine learning on machine learning, and new learning data based on the degree of influence. It has a control unit (acquisition unit, etc.) for acquisition.
  • the data adjusting device 100 may be a camera, a smartphone, a television, an automobile, a drone, a robot, or the like. As described above, the data adjusting device 100 may be a terminal device that autonomously collects learning data having a high degree of influence.
  • each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or part of the device is functionally or physically dispersed / physically distributed in any unit according to various loads and usage conditions. Can be integrated and configured.
  • the data adjustment system includes an information processing device (data adjustment device 100 in the embodiment) including a measurement unit and an adjustment unit, and a terminal device (implementation). In the form, it has a terminal device 10).
  • the measuring unit measures the degree of influence that the learning data used for learning the neural network has on the learning.
  • the coordinator excludes the data measured as having a low degree of influence, acquires new data that is new data corresponding to the data measured as having a high degree of influence from the terminal device or the database, and acquires the new data. Adjust the training data by adding.
  • the data adjustment system excludes data or adds data by using the degree of influence that the learning data has on learning.
  • the data adjustment system can adjust the training data by increasing or decreasing the data according to the degree of influence of each data, so that the data used for learning can be adjusted.
  • the data adjusting device includes a measuring unit (measuring unit 133 in the embodiment) and an adjusting unit (adjusting unit 134 in the embodiment).
  • the measuring unit measures the degree of influence of each data contained in the learning data set used for learning the model by machine learning on the learning.
  • the adjusting unit adjusts the training data by excluding predetermined data from the training data or adding new data to the training data based on the measurement result by the measuring unit.
  • the data adjustment device excludes data or adds data by using the degree of influence that the learning data has on learning.
  • the data adjustment system can adjust the training data by increasing or decreasing the data according to the degree of influence of each data, so that the data used for learning can be adjusted.
  • the measuring unit measures the degree of influence based on the loss function.
  • the data adjustment device can accurately measure the degree of influence of each data by measuring the degree of influence based on the loss function. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the measuring unit measures the degree of influence by a method that can be used for measuring the degree of influence.
  • the data adjusting device can accurately measure the degree of influence of each data by measuring the degree of influence by a method available for measuring the degree of influence. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the measuring unit measures the degree of influence by the Influence function.
  • the data adjustment device can accurately measure the degree of influence of each data by measuring the degree of influence by the Influence function. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the measuring unit measures the degree of influence of the predetermined data based on the difference between the case of the training data and the case of removing the predetermined data from the training data.
  • the data adjustment device can accurately measure the degree of influence of the data by measuring the degree of influence based on the difference between the case where a certain data is removed from the training data and the case where the data is not removed. can. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit excludes the first data, which has a low degree of influence, from the learning data.
  • the data adjusting device can appropriately remove the data that does not contribute to the learning from the learning data by excluding the first data having a low influence degree from the learning data. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit excludes the first data whose influence degree is lower than the first threshold value from the learning data.
  • the data adjusting device can appropriately remove the data that does not contribute to learning from the learning data by excluding the first data having the influence degree lower than the first threshold value from the learning data. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit adds new data, which is new data corresponding to the second data having a high degree of influence, to the training data.
  • the data adjusting device can appropriately add the data contributing to the learning to the learning data by adding the new data corresponding to the second data having a high influence to the learning data. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit adds new data corresponding to the second data whose influence degree is higher than the second threshold value to the training data.
  • the data adjustment device can appropriately add data that contributes to learning to the training data by adding new data corresponding to the second data having a higher influence than the second threshold value to the training data. can. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the data adjusting device includes a transmitting unit (transmitting unit 135 in the embodiment).
  • the transmission unit transmits request information requesting new data to an external device (in the embodiment, a terminal device 10 such as a data server, a camera, an image sensor, or a moving body).
  • the coordinating unit adds new data acquired from the external device to the training data.
  • the data adjustment device can appropriately add data that contributes to learning to the training data by requesting new data from the external device and adding the new data acquired from the external device to the training data. .. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit adds new data acquired from the storage unit that stores the data to the training data.
  • the data adjustment device can appropriately add data that contributes to learning to the learning data by acquiring new data from the storage unit that stores the data and adding the acquired new data to the learning data. can. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit generates new data and adds the generated new data to the training data.
  • the data adjusting device can appropriately add data that contributes to learning to the learning data by generating new data and adding the generated new data to the learning data. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit generates new data by data expansion and adds the generated new data to the training data.
  • the data adjusting device can generate new data having a high degree of contribution, such as the second data having a high degree of contribution, and add it to the training data by generating new data by data expansion. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit generates new data using the second data, and adds the generated new data to the training data.
  • the data adjusting device can generate new data having a high degree of contribution, such as the second data having a high degree of contribution, and add it to the training data by generating new data using the second data. .. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the adjustment unit generates new data similar to the second data, and adds the generated new data to the training data.
  • the data adjusting device can generate new data similar to the second data and add new data similar to the second data having a high contribution to the training data by generating new data similar to the second data. can. Therefore, the data adjusting device can make the data used for learning adjustable.
  • the measuring unit measures the degree of influence of the learning data used for learning the neural network.
  • the data adjustment device excludes data from the training data used for training the neural network, and adds data to the training data.
  • the data adjustment system can adjust the data used for learning the neural network by adjusting the training data by increasing or decreasing the data of the training data according to the degree of influence of each data.
  • the data adjusting device includes a learning unit (learning unit 132 in the embodiment).
  • the learning unit executes the learning process using the learning data adjusted by the adjustment unit.
  • the data adjusting device can perform learning using the learning data in which an accurate model can be learned by executing the learning process using the adjusted learning data.
  • the data adjusting device can learn a model using learning data in which a more accurate model can be learned by repeating the learning data adjustment process and the learning process using the adjusted learning data.
  • the terminal device in the embodiment, the terminal device 10 such as a data server, a camera, an image sensor, a mobile body, etc.
  • the terminal device includes a receiving unit (reception unit 151 in the embodiment) and a transmitting unit (implementation).
  • a transmission unit 153 receives request information requesting learning data used for the machine learning from an external device having a machine learning model (data adjusting device 100 in the embodiment).
  • the transmission unit transmits the data collected as the data corresponding to the request information to the external device.
  • the terminal device provides the external device with the data corresponding to the request in response to the request from the external device having the learning data used for learning the model by machine learning.
  • the external device having the learning data can adjust the learning data by adding the data acquired from the terminal device to the learning data. Therefore, the terminal device can make the data used for learning adjustable.
  • the learning data required by the required information according to the present disclosure is data similar to the learning data in which the degree of influence on learning in the machine learning model is equal to or higher than a predetermined standard.
  • a predetermined standard data useful for learning is collected, and the learning process is executed using the data, so that an accurate model is obtained. Learning can be performed using learning data that can be learned by.
  • the information processing device determines the degree of influence of the trained model using machine learning and the learning data used for machine learning on the machine learning. It includes a measuring unit for measuring and a control unit for acquiring new learning data based on the degree of influence.
  • the information processing apparatus can collect useful data for learning and efficiently adjust the learning data by acquiring new learning data based on the degree of influence of learning. .. Therefore, the information processing device can make the data used for learning adjustable.
  • FIG. 13 is a hardware configuration diagram showing an example of a computer 1000 that realizes the functions of information processing devices such as the data adjustment device 100 and the terminal device 10.
  • the computer 1000 includes a CPU 1100, a RAM 1200, a ROM (Read Only Memory) 1300, an HDD (Hard Disk Drive) 1400, a communication interface 1500, and an input / output interface 1600.
  • Each part of the computer 1000 is connected by a bus 1050.
  • the CPU 1100 operates based on the program stored in the ROM 1300 or the HDD 1400, and controls each part. For example, the CPU 1100 expands the program stored in the ROM 1300 or the HDD 1400 into the RAM 1200 and executes processing corresponding to various programs.
  • the ROM 1300 stores a boot program such as a BIOS (Basic Input Output System) executed by the CPU 1100 when the computer 1000 is started, a program that depends on the hardware of the computer 1000, and the like.
  • BIOS Basic Input Output System
  • the HDD 1400 is a computer-readable recording medium that non-temporarily records a program executed by the CPU 1100 and data used by the program.
  • the HDD 1400 is a recording medium for recording an information processing program according to the present disclosure, which is an example of program data 1450.
  • the communication interface 1500 is an interface for the computer 1000 to connect to an external network 1550 (for example, the Internet).
  • the CPU 1100 receives data from another device or transmits data generated by the CPU 1100 to another device via the communication interface 1500.
  • the input / output interface 1600 is an interface for connecting the input / output device 1650 and the computer 1000.
  • the CPU 1100 receives data from an input device such as a keyboard or mouse via the input / output interface 1600. Further, the CPU 1100 transmits data to an output device such as a display, a speaker, or a printer via the input / output interface 1600. Further, the input / output interface 1600 may function as a media interface for reading a program or the like recorded on a predetermined recording medium (media).
  • the media is, for example, an optical recording medium such as DVD (Digital Versatile Disc) or PD (Phase change rewritable Disk), a magneto-optical recording medium such as MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.
  • an optical recording medium such as DVD (Digital Versatile Disc) or PD (Phase change rewritable Disk)
  • a magneto-optical recording medium such as MO (Magneto-Optical disk)
  • tape medium such as DVD (Digital Versatile Disc) or PD (Phase change rewritable Disk)
  • MO Magneto-optical disk
  • the CPU 1100 of the computer 1000 realizes the functions of the control unit 130 and the like by executing the information processing program loaded on the RAM 1200. Further, the information processing program according to the present disclosure and the data in the storage unit 120 are stored in the HDD 1400.
  • the CPU 1100 reads the program data 1450 from the HDD 1400 and executes the program, but as another example, these programs may be acquired from another device via the external network 1550.
  • the present technology can also have the following configurations.
  • a measuring unit that measures the degree of influence that the learning data used for learning the neural network has on the learning and By excluding the data measured as having a low degree of influence, acquiring new data which is new data corresponding to the data measured as having a high degree of influence, and adding the acquired new data, the said An adjustment unit that adjusts training data, Data adjustment system with.
  • the measuring unit The data adjusting device according to (2), which measures the degree of influence based on a loss function.
  • the measuring unit The data adjusting device according to (2) or (3), wherein the degree of influence is measured by a method available for measuring the degree of influence.
  • the measuring unit The data adjusting device according to (4), wherein the degree of influence is measured by an influence function.
  • the measuring unit Described in any one of (2) to (5) for measuring the degree of influence of the predetermined data based on the difference between the case of the training data and the case of removing the predetermined data from the training data. Data regulator.
  • the adjusting part The data adjusting device according to any one of (2) to (6), which excludes the first data having a low degree of influence from the learning data.
  • the adjusting part The data adjusting device according to (7), wherein the first data having an influence degree lower than the first threshold value is excluded from the learning data.
  • the adjusting part The data adjusting device according to any one of (2) to (8), wherein new data, which is new data corresponding to the second data having a high degree of influence, is added to the training data.
  • the adjusting part The data adjusting device according to (9), wherein the new data corresponding to the second data having a degree of influence higher than the second threshold value is added to the learning data.
  • (11) A transmitter that transmits request information requesting new data to an external device, With more The adjusting part The data adjusting device according to (9) or (10), which adds the new data acquired from the external device to the learning data.
  • the adjusting part The data adjusting device according to any one of (9) to (11), wherein the new data acquired from the storage unit that stores the data is added to the learning data. (13) The adjusting part The data adjusting device according to any one of (9) to (12), wherein the new data is generated and the generated new data is added to the learning data. (14) The adjusting part The data adjusting device according to (13), wherein the new data is generated using the second data, and the generated new data is added to the training data. (15) The adjusting part The data adjusting device according to (13) or (14), wherein the new data is generated by data expansion, and the generated new data is added to the training data.
  • the adjusting part The data adjusting device according to any one of (13) to (15), which generates the new data similar to the second data and adds the generated new data to the learning data.
  • the measuring unit The data adjusting device according to any one of (2) to (16), which measures the degree of influence of the training data used for learning a neural network.
  • a learning unit that executes learning processing using the learning data adjusted by the adjustment unit, The data adjusting device according to any one of (2) to (17).
  • the degree of influence that the learning data used for learning the model by machine learning had on the learning was measured, and the degree of influence was measured.
  • the training data is adjusted by excluding the data from the training data or adding new data to the training data based on the measurement result.
  • a data adjustment method that executes processing.
  • a receiver that receives request information indicating data requested to be acquired by an external device having training data used for learning a model by machine learning from the external device, and a receiver.
  • a transmission unit that transmits the provision data collected as data corresponding to the request information to the external device, and
  • a terminal device comprising.
  • the terminal device according to (20) wherein the learning data required by the required information is data similar to the learning data in which the degree of influence on learning in the machine learning model is equal to or higher than a predetermined reference.
  • (22) In information processing equipment A trained model using machine learning and A measuring unit that measures the degree of influence of the learning data used for machine learning on the machine learning, and A control unit that acquires new learning data based on the degree of influence, An information processing device characterized by being equipped with.
  • Data adjustment system 100 Data adjustment device (information processing device) 110 Communication unit 120 Storage unit 121 Data information storage unit 122 Model information storage unit 123 Threshold information storage unit 130 Control unit 131 Acquisition unit 132 Learning unit 133 Measurement unit 134 Adjustment unit 135 Transmission unit 10 Terminal device (data server, camera, image sensor) , Moving body) 11 Communication unit 12 Input unit 13 Output unit 14 Storage unit 15 Control unit 151 Reception unit 152 Collection unit 153 Transmission unit 16 Sensor unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)

Abstract

本開示に係るデータ調整システムは、情報処理装置と、端末装置とを有し、情報処理装置は、ニューラルネットワークの学習に用いられた学習データが前記学習に与えた影響度を測定する測定部と、前記影響度が低いと測定されたデータを除外し、前記影響度が高いと測定されたデータに対応する新たなデータである新規データを端末装置、またはデータベースから取得し、取得した前記新規データを追加することにより、前記学習セットを調整する調整部と、を備える。

Description

データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置
 本開示は、データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置に関する。
 様々な技術分野において、機械学習(単に「学習」ともいう)を利用した情報処理が活用されており、ニューラルネットワーク等のモデルを学習する技術が提供されてきている。このような学習においては、学習されるニューラルネットワーク等のモデル等の性能に学習に用いるデータが影響するため、学習に用いるデータが重要であり、学習に用いるデータに関する技術が提供されている(例えば、特許文献1参照)。
特開2019-179457号公報
 従来技術によれば、欠落した値を候補値から補完したデータを用いて学習を行う。
 しかしながら、従来技術は、適切なデータを用いて学習することができるとは限らない。例えば、従来技術では、欠落した値は無いが学習に適していないデータが用いられる場合、そのデータがそのまま用いられるため、所望の性能を有するニューラルネットワーク等のモデルを学習することができない場合がある。このように、従来技術では、学習に用いるデータに欠落した値がないかは考慮しているが、学習に用いるデータ自体が学習に適しているかという点については考慮されていない。そのため、学習に用いるデータを調整可能にすることが望まれている。
 そこで、本開示では、学習に用いるデータを調整可能にすることができるデータ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置を提案する。
 上記の課題を解決するために、本開示に係る一形態のデータ調整システムは、情報処理装置と、端末装置とを有し、情報処理装置は、ニューラルネットワークの学習に用いられた学習データが前記学習に与えた影響度を測定する測定部と、前記影響度が低いと測定されたデータを除外し、前記影響度が高いと測定されたデータに対応する新たなデータである新規データを端末装置、またはデータベースから取得し、取得した前記新規データを追加することにより、前記学習データを調整する調整部と、を備える。
本開示の実施形態に係るデータ調整処理の一例を示す図である。 本開示の実施形態に係るデータ調整処理の概念図である。 本開示の実施形態に係るデータ調整システムの構成例を示す図である。 本開示の実施形態に係るデータ調整装置の構成例を示す図である。 本開示の実施形態に係るデータ情報記憶部の一例を示す図である。 本開示の実施形態に係るモデル情報記憶部の一例を示す図である。 本開示の実施形態に係る閾値情報記憶部の一例を示す図である。 モデルに対応するネットワークの一例を図である。 本開示の実施形態に係る端末装置の構成例を示す図である。 本開示の実施形態に係るデータ調整装置の処理を示すフローチャートである。 本開示の実施形態に係るデータ調整システムの処理手順を示すシーケンス図である。 影響度に基づくデータ調整及び学習の処理の一例を示すフローチャートである。 データ調整装置や端末装置等の情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
 以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、この実施形態により本願にかかるデータ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置が限定されるものではない。また、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
 以下に示す項目順序に従って本開示を説明する。
  1.実施形態
   1-1.本開示の実施形態に係るデータ調整処理の概要
    1-1-1.背景及び効果
    1-1-2.データ調整システムの概念
    1-1-3.Influence function(影響関数)
    1-1-4.Bayesian Deep Learning
    1-1-5.その他(GAN、Grad-CAM、LIME等)
   1-2.実施形態に係るデータ調整システムの構成
   1-3.実施形態に係るデータ調整装置の構成
    1-3-1.モデル(ネットワーク)例
   1-4.実施形態に係る端末装置の構成
   1-5.実施形態に係る情報処理の手順
    1-5-1.データ調整装置に係る処理の手順
    1-5-2.データ調整システムに係る処理の手順
   1-6.影響度に基づくデータ調整例
    1-6-1.調整の具体例
  2.その他の実施形態
   2-1.その他の構成例
   2-2.その他
  3.本開示に係る効果
  4.ハードウェア構成
[1.実施形態]
[1-1.本開示の実施形態に係るデータ調整処理の概要]
 図1は、本開示の実施形態に係るデータ調整処理の一例を示す図である。本開示の実施形態に係るデータ調整処理は、データ調整装置100や端末装置10を含むデータ調整システム1によって実現される。図1では、データ調整システム1によって実現されるデータ調整処理の概要を説明する。図1は、本開示の実施形態に係るデータ調整処理の一例を示す図である。
 データ調整装置100は、機械学習によるモデルの学習に用いられた学習データから所定のデータを除外すること、または、学習データに新たなデータを追加することにより、学習データを調整する情報処理装置である。図1では、データ調整装置100は、ディープニューラルネットワーク(DNN:Deep Neural Network)の学習に用いられたデータセットのデータを調整する処理を実行する場合を一例として示す。データ調整装置100は、画像認識を行うDNNである識別モデル(以下、単に「モデル」ともいう)を、データセットを用いて学習する学習処理を実行する。なお、以下では、ディープニューラルネットワーク(DNN)を単にニューラルネットワーク(NN:Neural Network)と記載する場合がある。図1では、データ調整装置100は、笑顔検出に用いるモデルを学習する場合を一例として説明する。なお、データ調整装置100が学習するモデルの用途は笑顔検出に限らず、データ調整装置100は、学習するモデルの目的や用途に応じて、例えば物体認識や感動検出等の種々の用途に用いられるモデルを学習する。
 また、図1では、データ調整装置100の要求に応じてデータ調整装置100にデータを提供する端末装置10の一例として、データ調整装置100の要求に対応するデータを有するデータサーバや、データ調整装置100の要求に対応するデータ(画像)を撮像するカメラを示す。なお、端末装置10は、データ調整装置100が要求するデータをデータ調整装置100に提供可能であれば、データサーバやカメラに限らず、種々の装置であってもよい。例えば、端末装置10は、ドローン等のUAV(Unmanned Aerial Vehicle)や自動車等の車両等である移動体や、イメージセンサ(イメージャ)であってもよいが、この点についての詳細は後述する。
 ここから、図1に示す処理の概要を説明する。まず、図1の例では、データ調整装置100は、データセットDS1を用いて、笑顔検出に用いるニューラルネットワークであるモデルM1を学習する(ステップS1)。例えば、データ調整装置100は、データ情報記憶部121(図5参照)に記憶されたデータセットDS1を用いて、モデルM1を学習する。図1では、データセットDS1中の各マス目がデータ(画像)を示し、データセットDS1には多数のデータ(画像)が含まれることを示す。
 図1の例では、データ調整装置100は、モデル情報記憶部122(図6参照)に記憶されたモデルM1に対応するネットワーク(ニューラルネットワーク等)の構造を設計する。データ調整装置100は、笑顔検出に用いるモデルM1のネットワークの構造(ネットワーク構造)を設計する。例えば、データ調整装置100は、予め記憶部120(図4参照)に記憶された各用途に対応するネットワークの構造に関する情報を基に、笑顔検出に用いるモデルM1のネットワークの構造を生成してもよい。例えば、データ調整装置100は、笑顔検出に用いるモデルM1のネットワークの構造情報を、外部装置から取得してもよい。
 例えば、データ調整装置100は、各データ(画像)に笑顔の有無を示す正解ラベルが対応付けられたデータセットDS1を用いて、モデルM1を学習する。データ調整装置100は、データセットDS1を用いて、設定した損失関数(ロス関数)を最小化するように学習処理を行い、モデルM1を学習する。データ調整装置100は、後述する測定処理において各データの影響度が測定可能であれば、種々の関数を損失関数として用いてもよい。なお、Influence function(影響関数)での損失関数に関しては後述する。
 例えば、データ調整装置100は、データの入力に対して出力層が正しい値となるように、重みとバイアス等のパラメータを更新することにより、モデルM1を学習する。例えば、誤差逆伝播法においては、ニューラルネットワークに対して、出力層の値がどれだけ正しい状態(正解ラベル)から離れているかを示す損失関数を用いて、最急降下法等を用いて、損失関数が最小化するように、重みやバイアスの更新が行われる。例えば、データ調整装置100は、入力値(データ)をニューラルネットワーク(モデルM1)に与え、その入力値を基にニューラルネットワーク(モデルM1)が予測値を計算し、予測値と教師データ(正解ラベル)を比較して誤差を評価する。そして、データ調整装置100は、得られた誤差を基にニューラルネットワーク(モデルM1)内の結合荷重(シナプス係数)の値を逐次修正することにより、モデルM1の学習および構築を実行する。なお、上記は一例であり、データ調整装置100は、種々の方法によりモデルM1の学習処理を行ってもよい。
 そして、データ調整装置100は、データセットDS1中の各データがモデルM1の学習に与えた影響度を測定する。データ調整装置100は、影響度を測定する手法(測定手法MM1)を用いて、データセットDS1中の各データがモデルM1の学習に与えた影響度を測定する。ここでいう影響度は、値が大きいほど、そのデータがモデルM1の学習に寄与した度合い(寄与度)が高いことを示す。影響度の値が大きい、すなわち影響度が高いほど、モデルM1の識別精度の向上に寄与していることを示す。このように、影響度が高いほど、そのデータがモデルM1の学習に必要なデータであることを示す。例えば、影響度が高いほど、そのデータがモデルM1の学習に有益なデータであることを示す。
 また、影響度は、値が小さいほど、そのデータがモデルM1の学習に寄与した度合い(寄与度)が低いことを示す。影響度の値が小さい、すなわち影響度が低いほど、モデルM1の識別精度の向上に寄与していないことを示す。このように、影響度が低いほど、そのデータがモデルM1の学習に不要なデータであることを示す。例えば、影響度が低いほど、そのデータがモデルM1の学習に有害なデータであることを示す。
 図1では、測定手法MM1の一例として、Influence function(Influence functions)が用いられる場合を示すが、Influence functionについては後述する。なお、データ調整装置100が影響度の測定に用いる測定手法MM1は、各データの影響度を示す値が取得可能であれば、Influence functionに限らずどのような手法が用いられてもよい。例えば時間や処理リソースに余裕がある場合、データ調整装置100は、データを一つずつ外して再学習する処理により、各データの影響度を測定してもよい。この場合、データ調整装置100は、データセットDS1から1つのデータ(データX)を除外して再学習する処理により、データXの影響度を測定してもよい。例えば、データ調整装置100は、データセットDS1全体を用いた場合の学習でのロスと、データセットDS1からデータXを除いた場合の学習でのロスとの差分を、データXの影響度をして測定してもよい。なお、上記は一例であり、データ調整装置100は、Influence functionや上記の手法以外の他の手法を用いて、各データの影響度をして測定してもよい。
 図1では、データ調整装置100は、データセットDS1中のデータDT14がモデルM1の学習に与えた影響度を測定する(ステップS2)。データ調整装置100は、測定結果RS1に示すように、データDT14がモデルM1の学習に与えた影響度を影響度IV14と測定する。なお、影響度IV14は、具体的な値(例えば0.2等)であるものとする。
 そして、データ調整装置100は、データDT14の影響度IV14に基づいて、データセットDS1を調整する(ステップS3)。まず、データ調整装置100は、データDT14の影響度IV14に基づいて、データDT14がモデルM1の学習に必要であるかを判別する。例えば、データ調整装置100は、閾値情報記憶部123(図7参照)に記憶された閾値を用いて、データDT14がモデルM1の学習に必要であるかを判別する。
 例えば、データ調整装置100は、影響度が低い、すなわち寄与度が低いデータ(「第1データ」ともいう)の判別に用いられる閾値(第1閾値TH1)を用いて、データDT14がモデルM1の学習に必要であるかを判別する。データ調整装置100は、データDT14の影響度IV14と、第1閾値TH1とを比較し、影響度IV14が第1閾値TH1よりも低い場合、データDT14がモデルM1の学習に不要であると判別する。
 図1では、データ調整装置100は、データDT14の影響度IV14が第1閾値TH1よりも低いため、データDT14がモデルM1の学習に不要であると判別する。そのため、データ調整装置100は、判別結果DR1に示すように、データDT14のモデルM1の学習への寄与度が低いと判別して、データDT14をデータセットDS1から除外すると決定する。そして、データ調整装置100は、データDT14をデータセットDS1から除外することにより、データセットDS1を調整する。これにより、データ調整装置100は、データセットDS1を更新する。
 また、図1では、データ調整装置100は、データセットDS1中のデータDT33がモデルM1の学習に与えた影響度を測定する(ステップS4)。データ調整装置100は、測定結果RS2に示すように、データDT33がモデルM1の学習に与えた影響度を影響度IV33と測定する。なお、影響度IV33は、具体的な値(例えば0.7等)であるものとする。
 そして、データ調整装置100は、データDT33の影響度IV33に基づいて、データセットDS1を調整する(ステップS5)。まず、データ調整装置100は、データDT33の影響度IV33に基づいて、データDT33がモデルM1の学習に必要であるかを判別する。例えば、データ調整装置100は、閾値情報記憶部123に記憶された閾値を用いて、データDT33がモデルM1の学習に必要であるかを判別する。図1では、データ調整装置100は、データDT33の影響度IV33が第1閾値TH1以上であるため、データDT33がモデルM1の学習に不要ではないと判別する。
 そして、データ調整装置100は、影響度が高い、すなわち寄与度が高いデータ(「第2データ」ともいう)の判別に用いられる閾値(第2閾値TH2)を用いて、データDT33がモデルM1の学習に必要であるかを判別する。なお、第2閾値TH2は、第1閾値TH1よりも大きい値である。データ調整装置100は、データDT33の影響度IV33と、第2閾値TH2とを比較し、影響度IV33が第2閾値TH2よりも高い場合、データDT33がモデルM1の学習に必要であると判別する。
 図1では、データ調整装置100は、データDT33の影響度IV33が第2閾値TH2よりも高いため、データDT33がモデルM1の学習に必要であると判別する。そのため、データ調整装置100は、判別結果DR2に示すように、データDT33のモデルM1の学習への寄与度が高いと判別して、データDT33に対応するデータをデータセットDS1に追加すると決定する。そして、データ調整装置100は、データDT33に対応するデータをデータセットDS1に追加することにより、データセットDS1を調整する。これにより、データ調整装置100は、データセットDS1を更新する。
 図1では、データ調整装置100は、データDT33に対応するデータを端末装置10に要求する(ステップS6)。データ調整装置100は、データDT33に対応するデータ(「新規データ」ともいう)を要求する要求情報を端末装置10へ送信する。データ調整装置100は、データDT33に類似する新規データを端末装置10に要求する。データ調整装置100は、データDT33を示す情報を端末装置10に送信することにより、データDT33に類似するデータを端末装置10に要求する。例えば、データ調整装置100は、データDT33を端末装置10に送信することにより、データDT33に類似するデータを端末装置10に要求する。
 データ調整装置100からの要求を受信した端末装置10は、要求情報に対応するデータを収集する(ステップS7)。端末装置10は、データDT33に類似するデータを、データ調整装置100に提供するデータ(「提供用データ」ともいう)として収集する。
 例えば、端末装置10がデータサーバである場合、端末装置10は、保有するデータ群から要求情報に対応するデータを抽出することにより、要求情報に対応するデータを収集する。例えば、端末装置10は、保有するデータベースからデータDT33に類似するデータを抽出することにより、要求情報に対応するデータを収集する。例えば、端末装置10は、データDT33と、データベース中の各データとを比較し、データDT33との類似度が所定の閾値以内であるデータを提供用データとして抽出する。例えば、端末装置10は、画像の類似度を出力するモデルを用いて、データDT33と、データベース中の各データとの類似度を算出し、データDT33との類似度が所定の閾値以内であるデータを提供用データとして抽出してもよい。
 また、例えば、端末装置10がカメラである場合、端末装置10は、撮像したデータのうち、要求情報に対応するデータを抽出することにより、要求情報に対応するデータを収集する。例えば、端末装置10は、撮像した複数の画像(データ)からデータDT33に類似するデータを抽出することにより、要求情報に対応するデータを収集する。例えば、端末装置10は、データDT33と、撮像した各画像とを比較し、データDT33との類似度が所定の閾値以内であるデータを提供用データとして抽出する。なお、端末装置10は、データDT33に類似する画像を撮像するように制御されてもよい。この場合、端末装置10は、データDT33に類似する画像を撮像し、その画像を提供用データとして収集する。
 そして、端末装置10は、提供用データをデータ調整装置100へ提供する(ステップS8)。端末装置10は、収集したデータDT33に類似するデータを、提供用データとしてデータ調整装置100へ送信する。
 端末装置10から提供用データを取得したデータ調整装置100は、取得した提供用データをデータセットDS1に追加する(ステップS9)。これにより、データ調整装置100は、寄与度が高いデータDT33に類似するデータをデータセットDS1に追加する。
 なお、図1では、データ調整装置100が端末装置10から追加する新規データを取得し、データセットDS1に追加する場合を示したが、データ調整装置100は、どのような手段により取得した新規データをデータセットDS1に追加してもよい。
 例えば、データ調整装置100は、記憶部120からデータDT33に対応するデータ(新規データ)を取得し、取得したデータセットDS1に追加してもよい。この場合、データ調整装置100は、データセットDS1に含まれないデータのうち、データDT33に類似するデータを記憶部120から取得(抽出)し、取得(抽出)したデータをデータセットDS1に追加する。このように、データ調整装置100は、データセットDS1のうち、寄与度が高いデータ(第2データ)に類似するデータを、記憶部120から取得し、データセットDS1に追加してもよい。
 また、例えば、データ調整装置100は、データDT33に対応するデータを生成し、生成したデータ(新規データ)をデータセットDS1に追加してもよい。この場合、データ調整装置100は、データDT33に類似するデータを生成し、生成したデータをデータセットDS1に追加してもよい。例えば、データ調整装置100は、データ拡張等の種々の技術を適宜用いてデータDT33に類似するデータを生成し、生成したデータをデータセットDS1に追加する。このように、データ調整装置100は、データセットDS1のうち、寄与度が高いデータ(第2データ)に類似するデータを生成し、生成したデータをデータセットDS1に追加してもよい。
 なお、図1では、説明のためにデータDT14、DT33の2つのデータに対する処理のみを示すが、データ調整装置100は、データセットDS1中の全データに対して同様の処理を実行する。例えば、データ調整装置100は、データセットDS1中の全データについて、影響度を測定する。そして、データ調整装置100は、寄与度が低いデータをデータセットDS1から除外する。また、データ調整装置100は、寄与度が高いデータに類似するデータをデータセットDS1に追加する。これにより、データ調整装置100は、データセットDS1を調整する調整処理を実行する。
 そして、データ調整装置100は、調整後のデータセットDS1を用いて、モデルM1を再度学習する(ステップS10)。例えば、データ調整装置100は、データDT14等の寄与度が低いデータが除外され、データDT33等の寄与度が高いデータに類似するデータが追加された調整後のデータセットDS1を用いて、モデルM1を再度学習する。
 上述したように、データ調整装置100は、寄与度が低いデータをデータセットDS1から除外し、寄与度が高いデータに類似するデータをデータセットDS1に追加することで、データセットDS1を調整する調整処理を実行する。このように、データ調整装置100は、各データの学習への寄与度に応じて、データの除外や追加を行うことにより、学習に用いるデータを調整することができる。
 また、データ調整装置100は、寄与度が高いデータに対応するデータを追加する場合、そのデータを端末装置10に要求する。そして、要求を受けた端末装置10は、要求に対応するデータを提供用データとしてデータ調整装置100に提供する。これにより、端末装置10は、学習に用いるデータを調整可能にすることができる。
 上述のように、データ調整システム1は、寄与度が低いデータをデータセットから除外したり、寄与度が高いデータに対応するデータをデータセットに追加したりすることで、学習に用いるデータを調整可能にすることができる。
[1-1-1.背景及び効果等]
 ここで、上述したデータ調整システム1の背景や効果等について説明する。ディープラーニングによって、人間の能力を超える予測が実現されている。しかしながら、人工知能の判断根拠を知ることができず、ブラックボックスによる判断がされている。ディープラーニングの精度を上げるには、大量のデータを必要とする問題点がある。近年、その判断根拠の解明についての研究が盛んとなってきた。そのディープラーニングの判断理由は、結果から原因を探ることである。このような科学的なアプローチをもって、ディープラーニングの精度の向上に必要なデータとは何かを理解することができる可能性がある。
 従来まで、人工知能は高度な性能を持つが、ブラックボックスと言われてきた。ディープラーニングは、人間のニューロンを模倣した構造を持ち、非常に多くのパラメータを最適化することでモデルが形成され、その複雑さから、説明することは困難である。近年、説明可能な人工知能の研究が盛んになり、様々なアルゴリズムが提案されている。学術レベルでの研究に留まり、実用的なシステムへの展開が遅れている。
 ディープラーニングが判断した結果から原因を探ることによって、必要なデータを選定することができる。有害なデータや有益なデータの選別、未学習によるデータ不足、ノイズによる推定の限界、ミスラベルデータの検出などの技術を用いることによって、ディープラーニングにおけるデータを選別することができる。これらの作業を人間が調整することは非常に大変な作業である。そこで、データ調整システム1のような学習用データを自ら再調整するシステムは、誤判定データからその原因を突き止め、最適な再学習用データセットを自動で準備する。データ調整システム1においては、調整されたデータセットを用いて再学習が実行され、これらがループによって繰り返されることによって、更なる予測精度の向上をすることができる。この点についての説明を、以下で図2を用いて行う。
[1-1-2.データ調整システムの概念]
 図2は、本開示の実施形態に係るデータ調整処理の概念図である。図2中の処理PSは、データ調整システム1により実現される自動データ調整の処理の全体的な概念図を示す。以下に示すデータ調整システム1が処理の主体として記載されている処理については、データ調整装置100や端末装置10等のデータ調整システム1に含まれるいずれの装置が行ってもよい。
 まず、図2中の処理PSの全体的な処理概要を説明する。データ調整システム1による処理PSにおいては、図2中の学習LNに示すように、データセットDSを用いてニューラルネットワークであるモデルNNを学習する処理が行われる。データ調整システム1による処理PSにおいては、図2中の入力INに示すように、学習されたモデルNNにデータTD等のテストデータが入力される。
 そして、データ調整システム1による処理PSにおいては、図2中の出力OUTに示すように、テストデータの入力に応じて、モデルNNから出力(識別結果)が得られる。そして、データ調整システム1による処理PSにおいては、モデルNNから出力(識別結果)が誤り(誤認識)である場合、その情報をフィードバックすることにより、学習を行う。
 以下、各処理を個別に説明する。データ調整システム1は、誤判定(誤認識)が起きたデータにおいて、その原因を特定する。例えば、データ調整システム1は、手法MT1に示すように、Influence functionによって、有害なデータなのか、有益なデータを振分ける(分類する)。データ調整システム1は、有害なデータを取り除くことによって、ディープラーニングのロス関数を最小化するように演算ループを繰り返す。
 例えば、Influence functionは、最適なモデルを選定することもできる。データはモデルによって精度が異なる。例えば、有害なデータ分布が少ないモデルを自動的に選択するように、データ調整システム1を構成してもよい。
 例えば、データ調整システム1は、手法MT2に示すように、Bayesian DNNによる、データの不足が原因で精度がでていない場合を判別する(知る)ことができる。この場合、データ調整システム1は、必要とするデータを、データレイクから自動的に補充したうえで、再学習することで精度を向上することができる。また、例えば、データ調整システム1は、手法MT3に示すように、GAN(Generative Adversarial Network:敵対的生成ネットワーク)によってデータを生成することよってデータを補完することもできる。なお、Bayesian DNNやGANについての詳細は、後述する。
 また、Bayesian DNNは、ノイズなどによって、これ以上学習をしても精度が望めない場合を判別する(知る)ことができる技術である。データ調整システム1は、上記のような学習ループを回すことによって精度がある程度向上した後に、これ以上精度が上がらない限界を人間に通知する(知らせる)ことができる。
 データ調整システム1において、判断の根拠は、Grad-CAM(Gradient-weighted Class Activation Mapping)やLIME(Local Interpretable Model-agnostic Explanations)などにおいて、何が原因となっているのかを可視化することによって、人間が判断理由を知ることができる。なお、Grad-CAMやLIMEについての詳細は、後述する。このように、データ調整システム1は、例えばディープラーニングの学習でデータ自動調整が一体化した自己成長型の学習システムである。
 上述のように、データ調整システム1は、ディープラーニングによって学習されたネットワークへテストデータを入れる。データ調整システム1は、誤判定の場合に、その原因を突き止めることによって、データを自動的に調整するシステムである。データ調整システム1は、調整されたデータによって、再度学習しネットワークを生成する。データ調整システム1は、テストをして、まだ残っている誤判定の原因を解明する。データ調整システム1は、精度が向上にするように、データを自動的に調整し再学習するループを繰り返す。データ調整システム1は、これらの原因解明技術において、Influence functionやBayesian DNNなどを用いて、有益・有害データ判定、未学習・限界の特定を行う。このように、データ調整システム1は、データ・ディープラーニングを一体化した点に特徴がある。
 例えば、データ調整システム1によって、大量のデータを必要とするディープラーニングにおいて、品質の良いデータが自動的に選定されて、精度の向上をすることができる。データ調整システム1は、人間がデータを勘で調整することなく、科学的な原因を特定することによって、精度を向上すべきデータを自動選定することができる。データ調整システム1は、ループシステムであるので、人間の作業を介さずに、コンピュータに任せて演算をさせておくことで精度が向上できる。
[1-1-3.Influence function(影響関数)]
 ここから、データ調整システム1における各手法について記載する。まず、Influence functionについて記載する。データ調整システム1は、Influence functionにより、データセット中の各データが生成するモデル(パラメータ)に与える影響を定量的に解析する。例えば、データ調整システム1は、Influence function(影響関数)を用いて、ある(学習)データの有無がモデルの精度(出力結果)に与える影響を定式化する。例えば、データ調整システム1は、影響の測定対象となる各データを除いたデータセットを用いた再学習無しで、各データが学習に与えた影響度を測定する。以下、Influence function(影響関数)を用いた影響度の測定について、数式などを用いて記載する。
 Influence functionは、例えば、機械学習のブラックボックスモデルを説明する方法としても用いられる。
 なお、Influence functionについては例えば下記の文献に開示されている。
 ・Understanding Black-box Predictions via Influence Functions,  Pang Wei Kho and Percy Liang <https://arxiv.org/abs/1703.04730>
 データ調整システム1は、Influence functionを用いることで、機械学習へのデータの寄与度を計算することができ、あるデータがどのくらいの好影響又は悪影響を与えているのかを測定する(知る)ことができる。例えば、データ調整システム1は、以下に示すように、アルゴリズムやデータ等によって影響度を算出(測定)する。以下では、画像を入力データとする場合を一例として説明する。
 例えば、入力x(画像)、を出力y(ラベル)による機械学習における予測問題として捉える。各画像にはラベルが振られている、すなわち画像と正解ラベルとが対応付けられている。例えばn個(nは任意の自然数)の画像とラベルのセット(データセット)があるとすると、それぞれのラベル付き画像z(単に「画像z」と記載する場合がある)は、以下の式(1)のようになる。
Figure JPOXMLDOC01-appb-M000001
 ここで、ある点z(画像z)におけるモデルのパラメータθ∈Θでの損失をL(z,θ)とすると、全てのn個データでの経験損失は、以下の式(2)のように表すことができる。
Figure JPOXMLDOC01-appb-M000002
 そして、この経験損失の最小化は、損失を最小化するパラメータを見つける(決定する)ことを意味するので、以下の式(3)のように表せる。
Figure JPOXMLDOC01-appb-M000003
 例えば、データ調整システム1は、式(3)を用いて損失を最小化するパラメータ((式(3)の左辺))を算出する。ここで、経験損失は、二階微分が可能であり、パラメータθに対して凸関数であると仮定する。以下、機械学習モデルのトレーニングポイントであるデータの影響度を理解することを目標として、どのように計算をするのかを示していく。仮に、あるトレーニングポイントのデータが無い場合、機械学習モデルにどのような影響を与えるのかを考えていく。
 なお、式(3)の左辺に示す「θ」の上に「^」(ハット)が付されたパラメータ(変数)のように、ある文字の上に「^」が付されたパラメータ(変数)は、例えば予測値を示す。以下、式(3)の左辺に示す「θ」の上に「^」が付されたパラメータ(変数)について文章中で言及する場合、「θ」に続けて「^」を記載した「θ^」で表記する。あるトレーニングポイントz(画像z)を機械学習モデルから取り除いた場合は、以下の式(4)のように表すことができる。
Figure JPOXMLDOC01-appb-M000004
 例えば、データ調整システム1は、式(4)を用いてある学習データ(画像z)を用いずに学習を行った場合のパラメータ(式(4)の左辺)を算出する。例えば、影響度は、トレーニングポイントz(画像z)を取り除いたときと、トレーニングポイントzを含めて全てのデータポイントがあるときとの差(差分)である。この差分は、以下の式(5)のように示される。
Figure JPOXMLDOC01-appb-M000005
 ここで、画像zを取り除いたとき場合について再計算すると、計算コストが非常に高い。そこで、データ調整システム1は、Influence functionsを用いて、以下に示すように、効果的な近似よって、画像zを取り除いた場合を再計算(再学習)することなしに演算をする。
 この考え方は、画像zが微小なεによって重みづけられたとして、パラメータの変化を計算していく方法である。ここで、以下の式(6)を用いて、新たなパラメータ(式(6)の左辺)を定義する。
Figure JPOXMLDOC01-appb-M000006
 1982年のCookとWeisbergによる先行研究の結果を利用することによって、パラメータθ^((式(3)の左辺))での重みづけられた画像zの影響度は、以下の式(7)、(8)のように書き表すことができる。
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000008
 なお、CookとWeisbergによる先行研究については例えば下記の文献に開示されている。
 ・Residuals and Influence in Regression,  Cook, R.D. and Weisberg, S <https://conservancy.umn.edu/handle/11299/37076>
 例えば、式(7)は、ある画像zに対応する影響関数を示す。例えば、式(7)は、微小なεに対するパラメータの変化量を表す。また、例えば、式(8)は、ヘッシアン(ヘッセ行列)を示す。ここで、正定値を持つヘッセ行列であると仮定し、逆行列も存在する。ある点であるデータポイントz(画像z)を取り除くことは、「ε=-1/n」によって重みづけられることと同じであると仮定すると、画像zを取り除いたときのパラメータ変化は近似的に、以下の式(9)のように表すことができる。
Figure JPOXMLDOC01-appb-M000009
 つまり、データ調整システム1は、再学習をすることなく、データポイントz(画像z)を取り除いたときの影響度を測定する(求める)ことができる。
 次に、データ調整システム1は、以下の式(10-1)~式(10-3)を用いて、あるテストポイントztestでの損失への影響度を測定する(求める)。
Figure JPOXMLDOC01-appb-M000010
 このように、あるテストポイントztestでの重みづけられた画像zの影響度を定式化できる。そのため、データ調整システム1は、この演算によって、機械学習モデルにおけるデータの影響度を測定する(求める)ことができる。例えば、式(10-3)の右辺は、あるデータのロス(損失)に対する勾配、ヘッシアンの逆行列、ある学習データのロスの勾配等からなる。例えば、あるデータがモデルの予測(ロス)に与える影響は、式(10-3)により求めることができる。なお、上記は一例であり、データ調整システム1は、種々の演算を適宜実行し各画像が学習に与えた影響度を測定してもよい。
[1-1-4.Bayesian Deep Learning]
 次に、Bayesian Deep Learningについて記載する。データ調整システム1は、例えば、手法MT2(Bayesian DNN)によるBayesian Deep Learningで、どのような原因でモデルの精度が上がらないのかを推定することができる。このように、データ調整システム1は、Bayesian Deep Learningの技術によりモデルの精度に関する判断を行うことができる。以下、前提を記載しつつ、Bayesian Deep Learningについて説明する。
 まず、一般的にディープラーニングモデルの推論は、高精度であるが、推論には限界がある。推論ができないという限界を知ることは、ディープラーニングを使いこなす上で、非常に大切である。しかしながら、ディープラーニングの不確実性を完全に排除することはできない。ディープラーニングにおける不確実性とは何であるのかについて以下記載する。
 ディープラーニングにおける不確実性には、2つのタイプが存在する。ディープラーニングにおける不確実性は、偶発的な不確実性(Aleatoric uncertainty)と、認識における不確実性(Epistemic uncertainty)とに分けることができる。前者の偶発的な不確実性は、観測によるノイズに起因するものであり、データ不足によるものではない。例えば、隠れて見えない画像(オクルージョン)のような場合がこれ(偶発的な不確実性)に当たる(該当する)。マスクをした人の顔の口元は、そもそもマスクで隠れているのでデータとして観測することができない。一方で、後者の認識における不確実性は、データが不足していることに対する不確実性を表す。もしデータが充分に存在するとしたら、認識における不確実性を改善することができる。しかしながら、一般的に画像分野における認識における不確実性を明らかにすることは困難とされてきた。
 Bayesian Deep Learning(ベイジアンディープラーニング)の提案によって、不確実性を明らかにすることができるようになってきた。
 なお、Bayesian Deep Learning(ベイジアンディープラーニング)については例えば下記の文献に開示されている。
 ・What Uncertainties Do We Need in Bayesian Deep Learning for Computer Vison, NIPS 2017, Alex Kendall and Yarin Gal <https://papers.nips.cc/paper/7141-what-uncertainties-do-we-need-in-bayesian-deep-learning-for-computer-vision.pdf>
 ベイジアンディープラーニングは、ベイズ推定とディープラーニングを結び付けて考えていく。ベイズ推論を使うことで、推定結果がどのようにばらつくのかがわかるので不確実性を評価することができる。
 ベイジアンディープラーニングは、ディープラーニングの学習においてドロップアウトを用いて、推論において得られる分散の結果から推定する手法である。ドロップアウトとは、各層のニューロンの数をランダムに減らすことで、オーバーフィッティングを減らすために非常に良く用いられているテクニックである。
 ベイジアンディープラーニングにおけるドロップアウトの果たす役割についての数学的な理論は、例えば下記の文献に開示されている。
 ・Dropout as Bayesian Approximation: Representing Model Uncertainty in Deep Learning, ICML 2016,  Yarin Gal and Zoubin Ghahramani <https://arxiv.org/pdf/1506.02142.pdf>
 結論から言うと、ディープラーニングにおいてドロップアウトを用いることは、ベイズ学習をしていることである。例えば、データ調整システム1は、学習によって得られる値は確定的ではなく、重みの事後分布をドロップアウトと組み合わせることによって計算ができる。例えば、データ調整システム1は、複数のドロップアウト係数にて、複数の出力を生成したばらつきから、事後分布の分散を推定することができる。
 ベイジアンディープラーニングは、学習時のみならず、推論時にもドロップアウトを利用することで、重みの分布からサンプリングをする。例えば、データ調整システム1は、モンテカルトドロップアウトの手法により、学習時のみならず、推論時にもドロップアウトを利用することで、重みの分布からサンプリングをすることができる。例えば、データ調整システム1は、同じ入力に対して、何回も推論を繰り返すことで、推論結果の不確実性を求めることがきる。ドロップアウトを用いて学習したネットワークは、一部のニューロンが欠損した構造になっている。そこで、データ調整システム1は、入力画像を入れて推論すると、ドロップアウトによって欠損したニューロンを通り、その重みによって特徴付けられた出力を得ることができる。更に、同じ画像を入力すると、ネットワーク内の異なる経路を通り出力するので、その重みづけられた出力はそれぞれ異なる。つまり、ドロップアウトによるネットワークは、同じ入力画像に対して、推論時の異なる出力の分布を得ることができる。出力の分散が大きいということは、モデルの不確実性が大きいということを意味する。複数回の推論による分布の平均は最終的な予測値を意味し、分散は予測値の不確実性を意味する。ベイジアンディープラーニングは、この推論時の出力の分散から不確定性を表す。データ調整システム1は、上述のようなベイジアンディープラーニングによりモデルの不確実性に関する推定(判断)を行うことができる。
[1-1-5.その他(GAN、Grad-CAM、LIME等)]
 データ調整システム1は、上述のInfluence functionやBayesian Deep Learningに限らず、種々の手法を用いてもよい。この点について以下記載する。
 データ調整システム1は、種々の手法を適宜用いて、学習に用いるデータ(学習データ)を自動で生成してもよい。例えば、データ調整システム1は、GANにより学習データの(自動)生成してもよい。
 なお、GANについては例えば下記の文献に開示されている。
 ・Generative Adversarial Networks, Ian J. Goodfellow et al. <https://arxiv.org/abs/1406.2661>
 データ調整システム1は、Influence functionsで影響度が高いと測定されたデータから、Ganにより、影響度が高いデータを生成してもよい。例えば、データ調整システム1は、影響度が高い画像を識別する識別器(Discriminator)と、影響度が高い画像を生成する生成器(Generator)とを含むGANのアーキテクチャにより、影響度が高いデータを生成してもよい。なお、データ調整システム1は、上記は一例であり、Ganの技術を適宜用いて影響度が高いデータを生成してもよい。
 データ調整システム1は、種々の手法を適宜用いて、モデルの出力(判断)に関する根拠を可視化してもよい。例えば、データ調整システム1は、Grad-CAMにより、画像の入力後のモデルの出力(判断)に関する根拠を可視化する根拠情報を生成する。データ調整システム1は、Grad-CAMにより、笑顔を検出するモデルM1が笑顔の有無を判断した根拠を示す根拠情報を生成する。例えば、データ調整システム1は、下記の文献に開示されるようなGrad-CAMに関する処理により、根拠情報を生成する。データ調整システム1は、CNNが含まれるネットワーク全般に適用可能な可視化手法であるGrad-CAMの技術を用いて、モデルM1の出力に関する根拠を示す根拠情報を生成する。例えば、データ調整システム1は、CNNの最終層から各チャンネルの重みを計算し重みを掛け合わせることで各クラスに影響する部分を可視化することができる。このように、データ調整システム1は、CNNを含むニューラルネットワークにおいて画像のどの部分に注目して判断がなされたかを可視化することができる。
 ・Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization <https://arxiv.org/abs/1610.02391>
 なお、Grad-CAMの技術についての説明は適宜省略するが、データ調整システム1は、Grad-CAM(上記文献参照)の手法により、根拠情報を生成する。例えば、データ調整システム1は、対象とする種別(クラス)を指定して、指定したクラスに対応する情報(画像)を生成する。例えば、データ調整システム1は、Grad-CAMの技術を用いて、逆誤差伝搬(Backpropagation)等の各種処理により、指定したクラスを対象に情報(画像)を生成する。例えば、データ調整システム1は、種別「笑顔」のクラスを指定して、種別「笑顔」に対応する根拠情報に関する画像を生成する。例えば、データ調整システム1は、種別「笑顔」の認識(分類)のために注視している範囲(領域)を、いわゆるヒートマップ(カラーマップ)の形式で示す画像を生成する。
 また、データ調整システム1は、入力となるデータ(画像)と、その判断結果の根拠を示す根拠情報とを対応付けて記憶部120(図4参照)にログ(履歴)として格納する。これにより、データ調整システム1がどのような入力に対する判断により、その後の動作を行ったのかを検証可能となる。また、例えば、データ調整システム1は、記憶部120に記憶された入力となるデータ(画像)と、その判断結果の根拠を示す根拠情報とのログを、種々の処理に利用してもよい。例えば、データ調整システム1は、入力となるデータ(画像)と、その判断結果の根拠を示す根拠情報とのログを用いて、データを生成してもよい。例えば、データ調整システム1は、根拠情報であるヒートマップが根拠として示す領域の画像を含むように、入力画像を変更した画像を生成してもよい。なお、上記は一例であり、データ調整システム1は、種々の手法を適宜用いて、ログからデータを生成してもよい。
 なお、データ調整システム1が生成する根拠情報は、ヒートマップのような画像に限らず、文字情報、音声情報などの種々の形式の情報であってもよい。また、データ調整システム1は、Grad-CAMに限らず、種々の手法を適宜用いて、モデルの出力(判断)に関する根拠を可視化してもよい。例えば、データ調整システム1は、LIMEやTCAV(Testing with Concept Activation Vectors)等の手法により、根拠情報を生成してもよい。
 例えば、データ調整システム1は、LIMEの技術を用いて、根拠情報を生成してもよい。例えば、データ調整システム1は、下記の文献に開示されるようなLIMEに関する処理により、根拠情報を生成してもよい。
 ・"Why Should I Trust You?": Explaining the Predictions of Any Classifier <https://arxiv.org/abs/1602.04938>
 なお、LIMEの技術についての説明は適宜省略するが、データ調整システム1は、LIME(上記文献参照)の手法により、根拠情報を生成する。例えば、データ調整システム1は、モデルがなぜそのような判断を下したのかを理由(根拠)を示すために局所近似する他のモデル(根拠用モデル)を生成する。データ調整システム1は、入力情報とその入力情報に対応する出力結果との組合せを対象に、局所的に近似する根拠用モデルを生成する。そして、データ調整システム1は、根拠用モデルを用いて、根拠情報を生成する。さらに、データ調整システム1は、下記の文献に開示されるようなTCAVと呼ばれる”Testing with Concept Activation Vectors”(概念を有効化させる方向性を加味したテスト)などの根拠情報の算出方法(生成方法)を用いてもよい。
 ・Interpretability Beyond Feature Attribution: Quantitative Testing with Concept Activation Vectors (TCAV) <https://arxiv.org/pdf/1711.11279.pdf>
 例えば、データ調整システム1は、画像等の基となる入力情報(対象入力情報)を複製したり、変更を加えたりした複数の入力情報を生成する。そして、データ調整システム1は、根拠情報の生成対象となるモデル(説明対象モデル)に、複数の入力情報の各々を入力し、各入力情報に対応する複数の出力情報を説明対象モデルから出力させる。そして、データ調整システム1は、複数の入力情報の各々と、対応する複数の出力情報の各々との組合せ(ペア)を学習用データとして、根拠用モデルを学習する。このように、データ調整システム1は、対象入力情報を対象として別の解釈可能なモデル(線形モデルとか)で局所近似する根拠用モデルを生成する。
 このように、データ調整システム1は、ある入力に対するモデルの出力を得た場合に、その出力の根拠(局所的な説明)を示すための根拠用モデルを生成する。例えば、データ調整システム1は、線形モデル等の解釈可能なモデルを根拠用モデルとして生成する。データ調整システム1は、線形モデル等の根拠用モデルの各パラメータなどの情報を基に根拠情報を生成する。例えば、データ調整システム1は、線形モデル等の根拠用モデルの特徴量のうち、重みが大きい特徴量の影響が大きいことを示す根拠情報を生成する。
 上述のように、データ調整システム1は、モデルの入力情報と出力結果とを用いて学習された根拠用モデルに基づいて、根拠情報を生成する。このように、データ調整システム1は、モデルへの入力情報の入力後のモデルの出力結果を含む状態情報に基づいて、根拠情報を生成してもよい。
[1-2.実施形態に係るデータ調整システムの構成]
 図3に示すデータ調整システム1について説明する。データ調整システム1は、学習データを調整する調整処理を実現する情報処理システムである。図3に示すように、データ調整システム1は、データ調整装置100と、複数の端末装置10a、10b、10c、10dとが含まれる。なお、端末装置10a、10b、10c、10d等を区別しない場合、端末装置10と記載する場合がある。また、図3では、4個の端末装置10a、10b、10c、10dを図示するが、データ調整システム1には、4個より多い数(例えば20個や100個以上)の端末装置10が含まれてもよい。端末装置10と、データ調整装置100とは所定の通信網(ネットワークN)を介して、有線または無線により通信可能に接続される。図3は、実施形態に係るデータ調整システムの構成例を示す図である。なお、図3に示したデータ調整システム1には、複数台のデータ調整装置100が含まれてもよい。
 データ調整装置100は、機械学習によるモデルの学習に用いられたデータセットに含まれるデータが前記学習に与えた影響度を測定し、その測定結果に基づいて、データセットを調整する情報処理装置(コンピュータ)である。また、データ調整装置100は、データセットを用いて学習処理を実行する。また、データ調整装置100は、データセットに追加するデータを、端末装置10に要求する。
 端末装置10は、データ調整装置100からの要求に応じてデータ調整装置100にデータを提供するコンピュータである。図3の例では、端末装置10aは、データを保有するデータサーバである。端末装置10aは、動画や画像や文字情報などのデータを保有するデータサーバであってもよい。例えば、端末装置10aは、テレビや映画や音楽などのコンテンツデータを保有するデータサーバであってもよい。
 また、図3の例では、端末装置10bは、撮像機能を有するカメラである。端末装置10bは、動画や画像を撮像し、撮像したデータを保有するカメラである。
 図3の例では、端末装置10cは、撮像機能を有するイメージセンサ(イメージャ)である。例えば、端末装置10cは、データ調整装置100と通信する機能を有し、撮像した画像や動画をデータ調整装置100に送信する機能を有する。例えば、端末装置10cは、データ調整装置100からの要求に応じて、画像や動画を撮像し、撮像した画像や動画をデータ調整装置100に送信する。
 図3の例では、端末装置10dは、ドローン等のUAVや自動車等の車両等の移動体である。例えば、端末装置10dは、データ調整装置100と通信する機能を有し、データ調整装置100からの要求に応じた移動を行ってもよい。端末装置10dは、イメージセンサ(イメージャ)等の撮像機能を有し、データ調整装置100からの要求に応じた位置まで移動し、その位置で画像や動画を撮像し、撮像した画像や動画をデータ調整装置100に送信する。
 なお、端末装置10は、実施形態における処理を実現可能であれば、どのような装置であってもよい。端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等の装置であってもよい。端末装置10は、ユーザが身に着けるウェアラブル端末(Wearable Device)等であってもよい。例えば、端末装置10は、腕時計型端末やメガネ型端末等であってもよい。また、端末装置10は、テレビや冷蔵庫等のいわゆる家電製品であってもよい。例えば、端末装置10は、スマートスピーカやエンタテインメントロボットや家庭用ロボットと称されるような、人間(ユーザ)と対話するロボットであってもよい。また、端末装置10は、デジタルサイネージ等の所定の位置に配置される装置であってもよい。
[1-3.実施形態に係るデータ調整装置の構成]
 次に、実施形態に係るデータ調整処理を実行するデータ調整装置の一例であるデータ調整装置100の構成について説明する。図4は、本開示の実施形態に係るデータ調整装置100の構成例を示す図である。
 図4に示すように、データ調整装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、データ調整装置100は、データ調整装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
 通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークN(図3参照)と有線または無線で接続され、端末装置10等の他の情報処理装置との間で情報の送受信を行う。また、通信部110は、端末装置10との間で情報の送受信を行ってもよい。
 記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図4に示すように、データ情報記憶部121と、モデル情報記憶部122と、閾値情報記憶部123と、知識情報記憶部125とを有する。
 実施形態に係るデータ情報記憶部121は、学習に用いるデータに関する各種情報を記憶する。データ情報記憶部121は、学習に用いるデータセットを記憶する。図5は、本開示の実施形態に係るデータ情報記憶部の一例を示す図である。例えば、データ情報記憶部121は、学習に用いる学習用データや精度評価(測定)に用いる評価用データ等の種々のデータに関する各種情報を記憶する。図5に、実施形態に係るデータ情報記憶部121の一例を示す。図5の例では、データ情報記憶部121は、「データセットID」、「データID」、「データ」といった項目が含まれる。
 「データセットID」は、データセットを識別するための識別情報を示す。「データID」は、オブジェクトを識別するための識別情報を示す。また、「データ」は、データIDにより識別されるオブジェクトに対応するデータを示す。すなわち、図5の例では、オブジェクトを識別するデータIDに対して、オブジェクトに対応するベクトルデータ(データ)が対応付けられて登録されている。
 図5の例では、データセットID「DS1」により識別されるデータセット(データセットDS1)には、データID「DID1」、「DID2」、「DID3」等により識別される複数のデータが含まれることを示す。例えば、データID「DID1」、「DID2」、「DID3」等により識別される各データ(学習用データ)は、笑顔検出のモデルの学習に用いられる画像情報等である。
 なお、データ情報記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。データ情報記憶部121は、各データに対応する正解情報(正解ラベル)を各データに対応付けて記憶する。例えば、データ情報記憶部121は、各データ(画像)に笑顔が含まれるか否かを示す正解情報(正解ラベル)を各データに対応付けて記憶する。
 また、データ情報記憶部121は、各データが学習用データであるか、評価用データであるか等を特定可能に記憶してもよい。例えば、データ情報記憶部121は、学習用データと評価用データとを区別可能に記憶する。データ情報記憶部121は、各データが学習用データや評価用データであるかを識別する情報を記憶してもよい。データ調整装置100は、学習用データとして用いられる各データと正解情報とに基づいて、モデルを学習する。データ調整装置100は、評価用データとして用いられる各データと正解情報とに基づいて、モデルの精度を測定する。データ調整装置100は、評価用データを入力した場合にモデルが出力する出力結果と、正解情報とを比較した結果を収集することにより、モデルの精度を測定する。
 実施形態に係るモデル情報記憶部122は、モデルに関する情報を記憶する。例えば、モデル情報記憶部122は、モデル(ネットワーク)の構造を示す情報(モデルデータ)を記憶する。図6は、本開示の実施形態に係るモデル情報記憶部の一例を示す図である。図6に、実施形態に係るモデル情報記憶部122の一例を示す。図6に示した例では、モデル情報記憶部122は、「モデルID」、「用途」、「モデルデータ」といった項目が含まれる。
 「モデルID」は、モデルを識別するための識別情報を示す。「用途」は、対応するモデルの用途を示す。「モデルデータ」は、モデルのデータを示す。図6では「モデルデータ」に「MDT1」といった概念的な情報が格納される例を示したが、実際には、モデルに含まれるネットワークに関する情報や関数等、そのモデルを構成する種々の情報が含まれる。
 図6に示す例では、モデルID「M1」により識別されるモデル(モデルM1)は、用途が「画像認識(笑顔検出)」であることを示す。モデルM1は、画像認識に用いられるモデルであり、笑顔検出に用いられることを示す。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。
 なお、モデル情報記憶部122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、モデル情報記憶部122は、学習処理により学習(生成)されたモデルのパラメータ情報を記憶する。
 実施形態に係る閾値情報記憶部123は、閾値に関する各種情報を記憶する。閾値情報記憶部123は、スコアとの比較に用いる閾値に関する各種情報を記憶する。図7は、実施形態に係る閾値情報記憶部の一例を示す図である。図7に示す閾値情報記憶部123には、「閾値ID」、「閾値」といった項目が含まれる。
 「閾値ID」は、閾値を識別するための識別情報を示す。また、「閾値」は、対応する閾値IDにより識別される閾値の具体的な値を示す。また、各閾値には、その用途を示す情報が対応付けて記憶される。
 図7の例では、閾値ID「TH1」により識別される閾値(第1閾値TH1)は、影響度が低いデータの判別に用いられることを示す情報が対応付けて記憶される。この場合、第1閾値TH1は、影響度が低いデータ、すなわち除外の対象となるデータを判別するために用いられる。また、第1閾値TH1の値は、「VL1」であることを示す。なお、図7の例では、「VL1」といった抽象的な符号で示すが、第1閾値TH1の値は具体的な数値(例えば0.3等)である。
 また、閾値ID「TH2」により識別される閾値(第2閾値TH2)は、影響度が高いデータの判別に用いられることを示す情報が対応付けて記憶される。この場合、第2閾値TH2は、影響度が高いデータ、すなわち新たなデータの追加の対象となるデータを判別するために用いられる。また、第2閾値TH2の値は、「VL2」であることを示す。なお、図7の例では、「VL2」といった抽象的な符号で示すが、第2閾値TH2の値は具体的な数値(例えば0.75等)である。
 なお、閾値情報記憶部123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
 図4に戻り、説明を続ける。制御部130は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、データ調整装置100内部に記憶されたプログラム(例えば、本開示に係るデータ調整処理プログラム等の情報処理プログラム)がRAM(Random Access Memory)等を作業領域として実行されることにより実現される。また、制御部130は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
 図4に示すように、制御部130は、取得部131と、学習部132と、測定部133と、調整部134と、送信部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、図4に示した接続関係に限られず、他の接続関係であってもよい。
 取得部131は、各種情報を取得する。取得部131は、外部の情報処理装置から各種情報を取得する。取得部131は、端末装置10から各種情報を取得する。
 取得部131は、記憶部120から各種情報を取得する。取得部131は、データ情報記憶部121やモデル情報記憶部122や閾値情報記憶部123から各種情報を取得する。
 取得部131は、学習部132が学習した各種情報を取得する。取得部131は、測定部133が測定した各種情報を取得する。取得部131は、調整部134が調整した各種情報を取得する。
 学習部132は、各種情報を学習する。学習部132は、外部の情報処理装置からの情報や記憶部120に記憶された情報に基づいて、各種情報を学習する。学習部132は、データ情報記憶部121に記憶された情報に基づいて、各種情報を学習する。学習部132は、学習により生成したモデルをモデル情報記憶部122に格納する。
 学習部132は、学習処理を行う。学習部132は、各種学習を行う。学習部132は、取得部131により取得された情報に基づいて、各種情報を学習する。学習部132は、モデルを学習(生成)する。学習部132は、モデル等の各種情報を学習する。学習部132は、学習によりモデルを生成する。学習部132は、種々の機械学習に関する技術を用いて、モデルを学習する。例えば、学習部132は、モデル(ネットワーク)のパラメータを学習する。学習部132は、種々の機械学習に関する技術を用いて、モデルを学習する。
 学習部132は、ネットワークのパラメータを学習する。例えば、学習部132は、モデルM1のネットワークのパラメータを学習する。学習部132は、モデルM1のネットワークのパラメータを学習する。
 学習部132は、データ情報記憶部121に記憶された学習用データ(教師データ)に基づいて、学習処理を行う。学習部132は、データ情報記憶部121に記憶された学習用データを用いて、学習処理を行うことにより、モデルM1を生成する。例えば、学習部132は、画像認識(笑顔検出)に用いられるモデルを生成する。学習部132は、モデルM1のネットワークのパラメータを学習することにより、モデルM1を生成する。
 学習部132による学習の手法は特に限定されないが、例えば、ラベル情報(笑顔有無等)と画像群とを紐づけた学習用データを用意し、その学習用データを多層ニューラルネットワークに基づいた計算モデルに入力して学習してもよい。また、例えばCNN(Convolutional Neural Network)、3D-CNN等のDNN(Deep Neural Network)に基づく手法が用いられてもよい。学習部132は、映像等の動画像(動画)のような時系列データを対象とする場合、再帰型ニューラルネットワーク(Recurrent Neural Network:RNN)やRNNを拡張したLSTM(Long Short-Term Memory units)に基づく手法を用いてもよい。
 学習部132は、データセットを用いて学習処理を実行する。学習部132は、調整部134による調整後のデータセットを用いて学習処理を実行する。学習部132は、調整部134による調整後のデータセットを用いて、学習処理を実行することにより、モデルを更新する。学習部132は、調整部134による調整後のデータセットを用いて、学習処理を実行することにより、モデルのパラメータを更新する。学習部132は、調整部134による調整後のデータセットを用いて、学習処理を実行することにより、モデルM1を更新する。
 測定部133は、各種処理を測定する。測定部133は、測定手段として機能する。測定部133は、ニューラルネットワークの学習に用いられた学習データが学習に与えた影響度を測定する測定手段として機能する。測定部133は、外部の情報処理装置からの情報に基づいて、各種処理を測定する。測定部133は、記憶部120に記憶された情報に基づいて、各種処理を測定する。測定部133は、データ情報記憶部121やモデル情報記憶部122や閾値情報記憶部123に記憶された情報に基づいて、各種処理を測定する。測定部133は、処理の測定により各種情報を生成する。
 測定部133は、取得部131により取得された各種情報に基づいて、各種処理を測定する。測定部133は、学習部132により学習された各種情報に基づいて、各種処理を測定する。測定部133は、取得部131により取得された各種情報に基づいて、各種情報を抽出する。測定部133は、学習部132により学習された各種情報に基づいて、各種情報を抽出する。測定部133は、調整部134により調整された情報に基づいて、各種情報を抽出する。
 測定部133は、各種情報を決定する。測定部133は、各種情報を判定する。測定部133は、各種情報を判別する。測定部133は、各データの影響度に基づいて、各データの要不要を判別する。
 測定部133は、機械学習によるモデルの学習に用いられた学習データが学習に与えた影響度を測定する。測定部133は、損失関数に基づいて影響度を測定する。測定部133は、影響度測定に利用可能な手法により影響度を測定する。測定部133は、Influence functionにより影響度を測定する。測定部133は、データセットの場合と、データセットから一のデータを除いた場合との差異に基づいて、一のデータの影響度を測定する。測定部133は、ニューラルネットワークの学習に用いられた学習データの影響度を測定する。
 調整部134は、各種情報を調整する。調整部134は、データセットを調整する調整手段として機能する。調整部134は、影響度が低いと測定されたデータをデータセットから除外し、影響度が高いと測定されたデータに対応する新たなデータである新規データを取得し、取得した新規データをデータセットに追加する調整手段として機能する。調整部134は、外部の情報処理装置からの情報や記憶部120に記憶された情報に基づいて、各種情報を調整する。調整部134は、端末装置10等の他の情報処理装置からの情報に基づいて、各種情報を調整する。調整部134は、データ情報記憶部121やモデル情報記憶部122や閾値情報記憶部123に記憶された情報に基づいて、各種情報を調整する。
 調整部134は、取得部131により取得された各種情報に基づいて、各種情報を調整する。調整部134は、学習部132により学習された各種情報に基づいて、各種情報を調整する。調整部134は、測定部133の処理測定により調整された各種情報に基づいて、各種情報を調整する。
 調整部134は、測定部133による測定結果に基づいて、データセットからデータを除外すること、またはデータセットに新たなデータを追加することにより、データセットを調整する。調整部134は、影響度が低い第1データをデータセットから除外する。調整部134は、影響度が第1閾値よりも低い第1データをデータセットから除外する。
 調整部134は、影響度が高い第2データに対応する新たなデータである新規データをデータセットに追加する。調整部134は、影響度が第2閾値よりも高い第2データに対応する新規データをデータセットに追加する。調整部134は、外部装置から取得された新規データをデータセットに追加する。調整部134は、データを格納する記憶部から取得された新規データをデータセットに追加する。
 調整部134は、新規データを生成し、生成した新規データをデータセットに追加する。調整部134は、第2データを用いて新規データを生成し、生成した新規データをデータセットに追加する。調整部134は、データ拡張(データオーグメンテーション)により新規データを生成し、生成した新規データをデータセットに追加する。調整部134は、第2データに類似する新規データを生成し、生成した新規データをデータセットに追加する。例えば、調整部134は、第2データを元データとして、その元データに類似する画像をデータ拡張(データオーグメンテーション)により生成する。例えば、調整部134は、第2データを元データとして、その元データを縮小したり、その元データの一部を拡大したり、左右に回転させたり、上下左右方向に移動させたりすることで、その元データに類似する画像を生成する。なお、上記は一例であり、調整部134は、種々の手法によりデータセットに追加する新規データを生成してもよい。例えば、調整部134は、上述したGAN等の手法によりデータセットに追加する新規データを生成してもよい。
 送信部135は、各種情報を送信する。送信部135は、外部の情報処理装置へ各種情報を送信する。送信部135は、外部の情報処理装置へ各種情報を提供する。例えば、送信部135は、端末装置10等の他の情報処理装置へ各種情報を送信する。送信部135は、記憶部120に記憶された情報を提供する。送信部135は、記憶部120に記憶された情報を送信する。
 送信部135は、端末装置10等の他の情報処理装置からの情報に基づいて、各種情報を提供する。送信部135は、記憶部120に記憶された情報に基づいて、各種情報を提供する。送信部135は、データ情報記憶部121やモデル情報記憶部122や閾値情報記憶部123に記憶された情報に基づいて、各種情報を提供する。
 送信部135は、新規データを要求する要求情報を外部装置へ送信する。送信部135は、新規データを要求する要求情報を端末装置10へ送信する。送信部135は、機械学習モデルにおける学習に対する影響度が所定の基準以上である学習データに類似するデータを要求する要求情報を端末装置10へ送信する。送信部135は、機械学習モデルにおける学習に対する影響度が所定の閾値以上である学習データに類似するデータを要求する要求情報を端末装置10へ送信する。
[1-3-1.モデル(ネットワーク)例]
 上述したように、データ調整装置100は、ディープニューラルネットワーク(DNN)等のニューラルネットワーク(NN)の形式のモデル(ネットワーク)を用いてもよい。なお、データ調整装置100は、ニューラルネットワークに限らず、SVM(Support Vector Machine)等の回帰モデルや等の種々の形式のモデル(関数)を用いてもよい。このように、データ調整装置100は、任意の形式のモデル(関数)を用いてもよい。データ調整装置100は、非線形の回帰モデルや線形の回帰モデル等、種々の回帰モデルを用いてもよい。
 この点について、図8を用いて、モデルのネットワーク構造の一例を説明する。図8は、モデルに対応するネットワークの一例を図である。図8に示すネットワークNW1は、入力層INLと出力層OUTLとの間に複数(多層)の中間層を含むニューラルネットワークを示す。図8に示すネットワークNW1は、図1中のニューラルネットワークNNに対応する。例えば、データ調整装置100は、図8に示すネットワークNW1のパラメータを学習してもよい。
 図8に示すネットワークNW1は、モデルM1のネットワークに対応し、画像認識に用いられるニューラルネットワーク(モデル)を示す概念的な図である。例えば、ネットワークNW1は、入力層INL側から例えば画像が入力された場合に、出力層OUTLからその認識結果を出力する。例えば、データ調整装置100は、ネットワークNW1中の入力層INLに情報を入力することにより、出力層OUTLから入力に対応する認識結果を出力させる。
 なお、図8では、モデル(ネットワーク)の一例としてネットワークNW1を示すが、ネットワークNW1は、用途等に応じて種々の形式であってもよい。例えば、データ調整装置100は、図8に示すネットワークNW1の構造を有するモデルM1のパラメータ(重み)を学習することにより、モデルM1を学習する。
[1-4.実施形態に係る端末装置の構成]
 次に、実施形態に係る情報処理を実行する端末装置の一例である端末装置10の構成について説明する。図9は、本開示の実施形態に係る端末装置の構成例を示す図である。
 図9に示すように、端末装置10は、通信部11と、入力部12と、出力部13と、記憶部14と、制御部15と、センサ部16とを有する。なお、端末装置10は、データを収集し、データ調整装置100へ提供可能な構成であれば、どのような装置構成であってもよい。例えば、端末装置10は、データ調整装置100と通信する通信部11と、データを収集する処理を行う制御部15とを有すれば、その他の構成は任意であってもよい。端末装置10の種別によっては、例えば、端末装置10は、入力部12や出力部13や記憶部14やセンサ部16のいずれかを有しなくてもよい。
 例えば、端末装置10がイメージセンサ(イメージャ)である場合、端末装置10は、通信部11と制御部15とセンサ部16のみを有する構成であってもよい。例えば、イメージセンサ(イメージャ)に用いられる撮像素子は、CMOS(Complementary Metal Oxide Semiconductor:相補型金属酸化膜半導体)である。なお、イメージセンサ(イメージャ)に用いられる撮像素子は、CMOSに限らず、CCD(Charge Coupled Device:電荷結合素子)等、種々の撮像素子であってもよい。また、例えば、端末装置10がデータサーバである場合、端末装置10は、通信部11と記憶部14と制御部15のみを有する構成であってもよい。また、例えば、端末装置10が移動体である場合、端末装置10は、駆動部(モータ)等の移動を実現するための機構を有する構成であってもよい。
 通信部11は、例えば、NICや通信回路等によって実現される。通信部11は、ネットワークN(インターネット等)と有線又は無線で接続され、ネットワークNを介して、データ調整装置100等の他の装置等との間で情報の送受信を行う。
 入力部12は、各種入力を受け付ける。入力部12は、ユーザの操作を受け付ける。入力部12は、ユーザが利用する端末装置10への操作(ユーザ操作)をユーザによる操作入力として受け付けてもよい。入力部12は、通信部11を介して、リモコン(リモートコントローラー:remote controller)を用いたユーザの操作に関する情報を受け付けてもよい。また、入力部12は、端末装置10に設けられたボタンや、端末装置10に接続されたキーボードやマウスを有してもよい。
 例えば、入力部12は、リモコンやキーボードやマウスと同等の機能を実現できるタッチパネルを有してもよい。この場合、入力部12は、ディスプレイ(出力部13)を介して各種情報が入力される。入力部12は、各種センサにより実現されるタッチパネルの機能により、表示画面を介してユーザから各種操作を受け付ける。すなわち、入力部12は、端末装置10のディスプレイ(出力部13)を介してユーザから各種操作を受け付ける。例えば、入力部12は、端末装置10のディスプレイ(出力部13)を介してユーザの操作を受け付ける。
 出力部13は、各種情報を出力する。出力部13は、情報を表示する機能を有する。出力部13は、端末装置10に設けられ各種情報を表示する。出力部13は、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等によって実現される。出力部13は、音声を出力する機能を有してもよい。例えば、出力部13は、音声を出力するスピーカーを有する。
 記憶部14は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部14は、情報の表示に用いる各種情報を記憶する。
 図9に戻り、説明を続ける。制御部15は、例えば、CPUやMPU等によって、端末装置10内部に記憶されたプログラム(例えば、本開示に係るデータ提供プログラム等の情報処理プログラム)がRAM等を作業領域として実行されることにより実現される。また、制御部15は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現されてもよい。
 図9に示すように、制御部15は、受信部151と、収集部152と、送信部153とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部15の内部構成は、図9に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
 受信部151は、各種情報を受信する。受信部151は、外部の情報処理装置から各種情報を受信する。受信部151は、データ調整装置100等の他の情報処理装置から各種情報を受信する。
 受信部151は、機械学習によるモデルの学習に用いられた学習データを有する外部装置が取得を要求するデータを示す要求情報を、外部装置から受信する。受信部151は、データ調整装置100が取得を要求するデータを示す要求情報を、データ調整装置100から受信する。受信部151は、機械学習モデルを有する外部装置(データ調整装置100等)より当該機械学習に用いられる学習データを要求する要求情報を受信する。受信部151は、機械学習モデルにおける学習に対する影響度が所定の基準以上である学習データに類似するデータを要求する要求情報を受信する。
 収集部152は、各種情報を収集する。収集部152は、各種情報の収集を決定する。収集部152は、外部の情報処理装置からの情報に基づいて、各種情報を収集する。収集部152は、データ調整装置100からの情報に基づいて、各種情報を収集する。収集部152は、データ調整装置100からの指示に応じて、各種情報を収集する。収集部152は、記憶部14に記憶された情報に基づいて、各種情報を収集する。
 収集部152は、受信部151により受信された要求情報に対応するデータを収集する。収集部152は、受信部151により受信された要求情報に対応するデータを、データ調整装置100に提供するデータ(提供用データ)として収集する。収集部152は、受信部151により受信された要求情報に対応するデータを記憶部14から抽出することにより、提供用データを収集する。収集部152は、受信部151により受信された要求情報に対応するデータをセンサ部16により検知することにより、提供用データを収集する。
 送信部153は、外部の情報処理装置へ各種情報を送信する。例えば、送信部153は、データ調整装置100等の他の情報処理装置へ各種情報を送信する。送信部153は、記憶部14に記憶された情報を送信する。
 送信部153は、データ調整装置100等の他の情報処理装置からの情報に基づいて、各種情報を送信する。送信部153は、記憶部14に記憶された情報に基づいて、各種情報を送信する。
 送信部153は、要求情報に対応するデータとして収集された提供用データを外部装置へ送信する。送信部153は、要求情報に対応するデータとして収集された提供用データをデータ調整装置100へ送信する。送信部153は、収集部152により収集された提供用データをデータ調整装置100へ送信する。
 例えば、端末装置10がセンサ部16を有する場合、送信部153は、センサ部16により検知されたセンサ情報をデータ調整装置100へ送信する。送信部153は、センサ部16の画像センサ(イメージセンサ)により検知された画像情報をデータ調整装置100へ送信する。
 センサ部16は、種々のセンサ情報を検知する。センサ部16は、画像を撮像する撮像部としての機能を有する。センサ部16は、画像センサの機能を有し、画像情報を検知する。センサ部16は、画像を入力として受け付ける画像入力部として機能する。
 なお、センサ部16は、上記に限らず、種々のセンサを有してもよい。センサ部16は、音センサ、位置センサ、加速度センサ、ジャイロセンサ、温度センサ、湿度センサ、照度センサ、圧力センサ、近接センサ、ニオイや汗や心拍や脈拍や脳波等の生体情報を受信のためのセンサ等の種々のセンサを有してもよい。また、センサ部16における上記の各種情報を検知するセンサは共通のセンサであってもよいし、各々異なるセンサにより実現されてもよい。
[1-5.実施形態に係る情報処理の手順]
 次に、図10及び図11を用いて、実施形態に係る各種情報処理の手順について説明する。
[1-5-1.データ調整装置に係る処理の手順]
 まず、図10を用いて、本開示の実施形態に係るデータ調整装置に係る処理の流れについて説明する。図10は、本開示の実施形態に係るデータ調整装置の処理を示すフローチャートである。具体的には、図10は、データ調整装置100による情報処理の手順を示すフローチャートである。
 図10に示すように、データ調整装置100は、機械学習によるモデルの学習に用いたデータセットに含まれる各データが学習に与えた寄与度を測定する(ステップS101)。そして、データ調整装置100は、測定結果に基づいて、データセットからデータを除外すること、またはデータセットに新たなデータを追加することにより、データセットを調整する(ステップS102)。
[1-5-2.データ調整システムに係る処理の手順]
 次に、図11を用いて、データ調整システムに係る具体的な処理の一例について説明する。図11は、本開示の実施形態に係るデータ調整システムの処理手順を示すシーケンス図である。
 図11に示すように、データ調整装置100は、学習における各データの寄与度を測定する(ステップS201)。例えば、データ調整装置100は、機械学習によるモデルの学習に用いられた学習データが学習に与えた寄与度を測定する。
 データ調整装置100は、寄与度が低いデータを除外する(ステップS202)。データ調整装置100は、学習における寄与度が寄与度低の判別用の閾値以下のデータをデータセットから除外する。
 データ調整装置100は、寄与度が高いデータに対応するデータを追加する(ステップS203)。データ調整装置100は、学習における寄与度が寄与度高の判別用の閾値以上のデータに対応するデータを追加する。
 図8の例では、データ調整装置100は、寄与度が高いデータに対応するデータを端末装置10に要求する(ステップS204)。例えば、データ調整装置100は、寄与度が高いデータに類似するデータを端末装置10に要求する。
 データが要求された端末装置10は、要求に対応するデータを収集する(ステップS205)。そして、端末装置10は、収集したデータをデータ調整装置100へ送信する(ステップS206)。
 端末装置10からデータを取得したデータ調整装置100は、取得したデータをデータセットに追加する(ステップS207)。
[1-6.影響度に基づくデータ調整例]
 ここで、影響度に基づくデータ調整の一例について前提について説明した後に説明する。機械学習においてディープニューラルネットワークへのデータの影響度を知ることは、ネットワークの改善にもつながる。具体的には、良い影響度を与えているデータを増やすことは、機械学習における特性の向上に役立つ。それらのデータを増やす方法として、データを水増しする方法としてデータオグメンテーション(例えば、画像を回転させたりして類似画像を増やす)によって、似たような画像を増やすことができる。また、良い影響を与えているデータに類似したデータをネットワーク上のデータから探し出し、データを増強することができる。それらデータを追加し、ディープニューラルネットワークを再学習することによって、より精度の高いディープニューラルネットワークを構築することができる。この点について、図12を用いて説明する。図12は、影響度に基づくデータ調整及び学習の処理の一例を示すフローチャートである。
 図12に示すように、データ調整装置100は、ニューラルネットワークの影響度を算出する(ステップS301)。例えば、データ調整装置100は、ニューラルネットワークの学習に用いられた学習データが学習に与えた影響度を測定する。
 そして、データ調整装置100は、良い影響度の高いデータを抽出する(ステップS302)。例えば、損失を減らす方向が良い影響であり、損失を増やす方向が悪い影響であり、損失を減らす方向への度合いが大きい程良い影響度が大きい。例えば、データ調整装置100は、良い影響度が所定の基準(閾値等)以上のデータを抽出する。
 そして、データ調整装置100は、データの追加する(ステップS303)。データ調整装置100は、良い影響度の高いデータに類似するデータを学習データに追加する。例えば、データ調整装置100は、データオグメンテーションにより、良い影響度の高いデータに類似するデータを生成し、生成したデータを学習データに追加してもよい。また、例えば、データ調整装置100は、ネットワーク上のデータのうち、良い影響度の高いデータに類似するデータを学習データに追加してもよい。
 そして、データ調整装置100は、データを追加して再学習を行う(ステップS304)。例えば、データ調整装置100は、ステップS303でデータを追加した学習データを用いてモデルの再学習を行う。
 そして、データ調整装置100は、再学習したモデルへアップデートする(ステップS305)。例えば、データ調整装置100は、再学習前のモデルを再学習後のモデルに更新する。例えば、データ調整装置100は、モデルのパラメータを再学習後のパラメータに更新する。
[1-6-1.調整の具体例]
 上述した図12の処理の具体的な例として、データ調整装置100がディープニューラルネットワークによる画像分類機能を搭載したカメラである場合を一例として説明する。この場合、まず、データ調整装置100は、良い影響度を与えているデータを算出する。そして、データ調整装置100は、そのデータに類似したデータをデータオグメンテーションにより生成し収集したり、ネットワーク上から収集したりする。データ調整装置100は、収集したそれらのデータを追加して、元のディープニューラルネットワークを再学習する。その結果、データ調整装置100は、カメラの画像分類機能の精度を向上させることができる。
 なお、データ増加において、良い影響を与えるデータを自律的に探し出すシステム(データ調整システム1)を構成してもよい。これにより、データ調整システム1は、人手を介することなくデータを探し出し、再学習を自動的に行うことができる。この場合、データ調整システム1は、ディープニューラルネットワークを自律的に進化させていく学習システムとなる。このデータ調整システム1によって、ディープニューラルネットワークは、自ら性能を進化させていくことができる。
[2.その他の実施形態]
 上述した各実施形態に係る処理は、上記各実施形態や変形例以外にも種々の異なる形態(変形例)にて実施されてよい。
[2-1.その他の構成例]
 なお、上記の例では、データ調整装置100と端末装置10とが別体である場合を示したが、これらの装置は一体であってもよい。例えば、データ調整装置100は、学習データを調整する機能とデータを収集する機能とを有する装置であってもよい。例えば、データ調整装置100は、影響度を基に新たな学習データを取得する情報処理装置である。この場合、データ調整装置100は、機械学習を用いた学習済みモデルと、機械学習に用いられた学習データの機械学習に対する影響度を測定する測定部と、影響度に基づいて新たな学習データを取得する制御部(取得部等)とを有する。データ調整装置100は、カメラ、スマホ、テレビ、自動車、ドローン、ロボット等であってもよい。このように、データ調整装置100は、自律的に影響度の高い学習データを収集する端末装置であってもよい。
[2-2.その他]
 また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
 また、上述してきた各実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
 また、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
[3.本開示に係る効果]
 上述のように、本開示に係るデータ調整システム(実施形態ではデータ調整システム1)は、測定部と、調整部とを備える情報処理装置(実施形態ではデータ調整装置100)と、端末装置(実施形態では端末装置10)とを有する。測定部は、ニューラルネットワークの学習に用いられた学習データが学習に与えた影響度を測定する。調整部は、影響度が低いと測定されたデータを除外し、影響度が高いと測定されたデータに対応する新たなデータである新規データを端末装置、またはデータベースから取得し、取得した新規データを追加することにより、学習データを調整する。
 このように、本開示に係るデータ調整システムは、学習データが学習に与えた影響度を用いて、データを除外したり、データを追加したりする。これにより、データ調整システムは、各データの影響度に応じてデータを増減させることで、学習データを調整することにより、学習に用いるデータを調整可能にすることができる。
 上述のように、本開示に係るデータ調整装置(実施形態ではデータ調整装置100)は、測定部(実施形態では測定部133)と、調整部(実施形態では調整部134)とを備える。測定部は、機械学習によるモデルの学習に用いられた学習データセットに含まれる各データが学習に与えた影響度を測定する。調整部は、測定部による測定結果に基づいて、学習データから所定のデータを除外すること、または、学習データに新たなデータを追加することにより、学習データを調整する。
 このように、本開示に係るデータ調整装置は、学習データが学習に与えた影響度を用いて、データを除外したり、データを追加したりする。これにより、データ調整システムは、各データの影響度に応じてデータを増減させることで、学習データを調整することにより、学習に用いるデータを調整可能にすることができる。
 また、測定部は、損失関数に基づいて影響度を測定する。このように、データ調整装置は、損失関数に基づいて影響度を測定することで、各データの影響度を精度よく測定することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、測定部は、影響度測定に利用可能な手法により影響度を測定する。このように、データ調整装置は、影響度測定に利用可能な手法により影響度を測定することで、各データの影響度を精度よく測定することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、測定部は、Influence functionにより影響度を測定する。このように、データ調整装置は、Influence functionにより影響度を測定することで、各データの影響度を精度よく測定することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、測定部は、学習データの場合と、学習データから所定のデータを除いた場合との差異に基づいて、所定のデータの影響度を測定する。このように、データ調整装置は、学習データからあるデータを除いた場合と除かなかった場合との差異を基に影響度を測定することで、そのデータの影響度を精度よく測定することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、影響度が低い第1データを学習データから除外する。このように、データ調整装置は、影響度が低い第1データを学習データから除外することで、学習に寄与しないデータを学習データから適切に取り除くことができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、影響度が第1閾値よりも低い第1データを学習データから除外する。このように、データ調整装置は、影響度が第1閾値よりも低い第1データを学習データから除外することで、学習に寄与しないデータを学習データから適切に取り除くことができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、影響度が高い第2データに対応する新たなデータである新規データを学習データに追加する。このように、データ調整装置は、影響度が高い第2データに対応する新規データを学習データに追加することで、学習に寄与するデータを学習データに適切に追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、影響度が第2閾値よりも高い第2データに対応する新規データを学習データに追加する。このように、データ調整装置は、影響度が第2閾値よりも高い第2データに対応する新規データを学習データに追加することで、学習に寄与するデータを学習データに適切に追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、本開示に係るデータ調整装置は、送信部(実施形態では送信部135)を備える。送信部は、新規データを要求する要求情報を外部装置(実施形態では、データサーバ、カメラ、イメージセンサ、移動体等の端末装置10)へ送信する。調整部は、外部装置から取得された新規データを学習データに追加する。このように、データ調整装置は、新規データを外部装置に要求し、外部装置から取得した新規データを学習データに追加することで、学習に寄与するデータを学習データに適切に追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、データを格納する記憶部から取得された新規データを学習データに追加する。このように、データ調整装置は、データを格納する記憶部から新規データを取得し、取得した新規データを学習データに追加することで、学習に寄与するデータを学習データに適切に追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、新規データを生成し、生成した新規データを学習データに追加する。このように、データ調整装置は、新規データを生成し、生成した新規データを学習データに追加することで、学習に寄与するデータを学習データに適切に追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、データ拡張により新規データを生成し、生成した新規データを学習データに追加する。このように、データ調整装置は、データ拡張により新規データを生成することで、寄与度が高い第2データのように寄与度が高い新規データを生成し学習データに追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、第2データを用いて新規データを生成し、生成した新規データを学習データに追加する。このように、データ調整装置は、第2データを用いて新規データを生成することで、寄与度が高い第2データのように寄与度が高い新規データを生成し学習データに追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、調整部は、第2データに類似する新規データを生成し、生成した新規データを学習データに追加する。このように、データ調整装置は、第2データに類似する新規データを生成することで、寄与度が高い第2データに類似し、寄与度が高い新規データを生成し学習データに追加することができる。したがって、データ調整装置は、学習に用いるデータを調整可能にすることができる。
 また、測定部は、ニューラルネットワークの学習に用いられた学習データの影響度を測定する。このように、データ調整装置は、ニューラルネットワークの学習に用いられた学習データからデータを除外したり、学習データにデータを追加したりする。これにより、データ調整システムは、各データの影響度に応じて学習データのデータを増減させることで、学習データを調整することにより、ニューラルネットワークの学習に用いるデータを調整可能にすることができる。
 また、本開示に係るデータ調整装置は、学習部(実施形態では学習部132)を備える。学習部は、調整部による調整後の学習データを用いて学習処理を実行する。このように、データ調整装置は、調整した学習データを用いて学習処理を実行することで、精度良いモデルが学習可能な学習データを用いて学習を行うことができる。データ調整装置は、学習データの調整処理と、調整した学習データを用いた学習処理とを繰り返すことで、より精度良いモデルが学習可能な学習データを用いてモデルを学習することができる。
 上述のように、本開示に係る端末装置(実施形態では、データサーバ、カメラ、イメージセンサ、移動体等の端末装置10)は、受信部(実施形態では受信部151)と、送信部(実施形態では送信部153)とを備える。受信部は、機械学習モデルを有する外部装置(実施形態ではデータ調整装置100)より当該機械学習に用いられる学習データを要求する要求情報を受信する。送信部は、要求情報に対応するデータとして収集されたデータを外部装置へ送信する。
 このように、本開示に係る端末装置は、機械学習によるモデルの学習に用いられた学習データを有する外部装置からの要求に応じて、その要求に対応するデータを外部装置へ提供する。これにより、学習データを有する外部装置は、端末装置から取得したデータを学習データに追加することで、学習データを調整することができる。したがって、端末装置は、学習に用いるデータを調整可能にすることができる。
 また、本開示に係る要求情報により要求される学習データは、機械学習モデルにおける学習に対する影響度が所定の基準以上である学習データに類似するデータである。このように、影響度が所定の基準以上である学習データに類似するデータを要求することにより、学習に有用なデータを収集し、そのデータを用いて学習処理を実行することで、精度良いモデルが学習可能な学習データを用いて学習を行うことができる。
 上述のように、本開示に係る情報処理装置(実施形態では、データ調整装置100)は、機械学習を用いた学習済みモデルと、機械学習に用いられた学習データの当該機械学習に対する影響度を測定する測定部と、影響度に基づいて新たな学習データを取得する制御部と、を備える。
 このように、本開示に係る情報処理装置は、学習の影響度を基に新たな学習データを取得することで、学習に有用なデータを収集し、効率的に学習データを調整することができる。したがって、情報処理装置は、学習に用いるデータを調整可能にすることができる。
[4.ハードウェア構成]
 上述してきた各実施形態や変形例に係るデータ調整装置100や端末装置10等の情報機器は、例えば図13に示すような構成のコンピュータ1000によって実現される。図13は、データ調整装置100や端末装置10等の情報処理装置の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。以下、実施形態に係るデータ調整装置100を例に挙げて説明する。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
 CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
 ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
 HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
 通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
 入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
 例えば、コンピュータ1000が実施形態に係るデータ調整装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされた情報処理プログラムを実行することにより、制御部130等の機能を実現する。また、HDD1400には、本開示に係る情報処理プログラムや、記憶部120内のデータが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
 なお、本技術は以下のような構成も取ることができる。
(1)
 ニューラルネットワークの学習に用いられた学習データが前記学習に与えた影響度を測定する測定部と、
 前記影響度が低いと測定されたデータを除外し、前記影響度が高いと測定されたデータに対応する新たなデータである新規データを取得し、取得した前記新規データを追加することにより、前記学習データを調整する調整部と、
 を有するデータ調整システム。
(2)
 機械学習によるモデルの学習に用いられた学習データが前記学習に与えた影響度を測定する測定部と、
 前記測定部による測定結果に基づいて、前記学習データからデータを除外すること、または前記学習データに新たなデータを追加することにより、前記学習データを調整する調整部と、
 を備えるデータ調整装置。
(3)
 前記測定部は、
 損失関数に基づいて前記影響度を測定する
 (2)に記載のデータ調整装置。
(4)
 前記測定部は、
 影響度測定に利用可能な手法により前記影響度を測定する
 (2)または(3)に記載のデータ調整装置。
(5)
 前記測定部は、
 Influence functionにより前記影響度を測定する
 (4)に記載のデータ調整装置。
(6)
 前記測定部は、
 前記学習データの場合と、前記学習データから所定のデータを除いた場合との差異に基づいて、前記所定のデータの前記影響度を測定する
 (2)~(5)のいずれか1つに記載のデータ調整装置。
(7)
 前記調整部は、
 前記影響度が低い第1データを前記学習データから除外する
 (2)~(6)のいずれか1つに記載のデータ調整装置。
(8)
 前記調整部は、
 前記影響度が第1閾値よりも低い前記第1データを前記学習データから除外する
 (7)に記載のデータ調整装置。
(9)
 前記調整部は、
 前記影響度が高い第2データに対応する新たなデータである新規データを前記学習データに追加する
 (2)~(8)のいずれか1つに記載のデータ調整装置。
(10)
 前記調整部は、
 前記影響度が第2閾値よりも高い前記第2データに対応する前記新規データを前記学習データに追加する
 (9)に記載のデータ調整装置。
(11)
 前記新規データを要求する要求情報を外部装置へ送信する送信部、
 をさらに備え、
 前記調整部は、
 前記外部装置から取得された前記新規データを前記学習データに追加する
 (9)または(10)に記載のデータ調整装置。
(12)
 前記調整部は、
 データを格納する記憶部から取得された前記新規データを前記学習データに追加する
 (9)~(11)のいずれか1つに記載のデータ調整装置。
(13)
 前記調整部は、
 前記新規データを生成し、生成した前記新規データを前記学習データに追加する
 (9)~(12)のいずれか1つに記載のデータ調整装置。
(14)
 前記調整部は、
 前記第2データを用いて前記新規データを生成し、生成した前記新規データを前記学習データに追加する
 (13)に記載のデータ調整装置。
(15)
 前記調整部は、
 データ拡張により前記新規データを生成し、生成した前記新規データを前記学習データに追加する
 (13)または(14)に記載のデータ調整装置。
(16)
 前記調整部は、
 前記第2データに類似する前記新規データを生成し、生成した前記新規データを前記学習データに追加する
 (13)~(15)のいずれか1つに記載のデータ調整装置。
(17)
 前記測定部は、
 ニューラルネットワークの学習に用いられた前記学習データの前記影響度を測定する
 (2)~(16)のいずれか1つに記載のデータ調整装置。
(18)
 前記調整部による調整後の前記学習データを用いて学習処理を実行する学習部、
 をさらに備える(2)~(17)のいずれか1つに記載のデータ調整装置。
(19)
 機械学習によるモデルの学習に用いられた学習データが前記学習に与えた影響度を測定し、
 測定結果に基づいて、前記学習データからデータを除外すること、または前記学習データに新たなデータを追加することにより、前記学習データを調整する、
 処理を実行するデータ調整方法。
(20)
 機械学習によるモデルの学習に用いられた学習データを有する外部装置が取得を要求するデータを示す要求情報を、前記外部装置から受信する受信部と、
 前記要求情報に対応するデータとして収集された提供用データを前記外部装置へ送信する送信部と、
 を備える端末装置。
(21)
 前記要求情報により要求される学習データは、前記機械学習モデルにおける学習に対する影響度が所定の基準以上である学習データに類似するデータであることを特徴とする(20)記載の端末装置。
(22)
 情報処理装置において、
 機械学習を用いた学習済みモデルと、
 前記機械学習に用いられた学習データの当該機械学習に対する影響度を測定する測定部と、
 前記影響度に基づいて新たな学習データを取得する制御部と、
 を備えることを特徴とする情報処理装置。
 1 データ調整システム
 100 データ調整装置(情報処理装置)
 110 通信部
 120 記憶部
 121 データ情報記憶部
 122 モデル情報記憶部
 123 閾値情報記憶部
 130 制御部
 131 取得部
 132 学習部
 133 測定部
 134 調整部
 135 送信部
 10 端末装置(データサーバ、カメラ、イメージセンサ、移動体)
 11 通信部
 12 入力部
 13 出力部
 14 記憶部
 15 制御部
 151 受信部
 152 収集部
 153 送信部
 16 センサ部

Claims (22)

  1.  情報処理装置と、端末装置とを有し、
     前記情報処理装置は、
     ニューラルネットワークの学習に用いられた学習データが前記学習に与えた影響度を測定する測定部と、
     前記影響度が低いと測定されたデータを除外し、又は、前記影響度が高いと測定されたデータに対応する新たなデータである新規データを端末装置、またはデータベースから取得し、取得した前記新規データを追加することにより、前記学習データを調整する調整部と、
     を備えるデータ調整システム。
  2.  機械学習によるモデルの学習に用いられた学習データが前記学習に与えた影響度を測定する測定部と、
     前記測定部による測定結果に基づいて、前記学習データから所定のデータを除外すること、または、前記学習データに新たなデータを追加することにより、前記学習データを調整する調整部と、
     を備えるデータ調整装置。
  3.  前記測定部は、
     損失関数に基づいて前記影響度を測定する
     請求項2に記載のデータ調整装置。
  4.  前記測定部は、
     影響度測定に利用可能な手法により前記影響度を測定する
     請求項2に記載のデータ調整装置。
  5.  前記測定部は、
     Influence functionにより前記影響度を測定する
     請求項4に記載のデータ調整装置。
  6.  前記測定部は、
     前記学習データの場合と、前記学習データから所定のデータを除いた場合との差異に基づいて、前記所定のデータの前記影響度を測定する
     請求項2に記載のデータ調整装置。
  7.  前記調整部は、
     前記影響度が低い第1データを前記学習データから除外する
     請求項2に記載のデータ調整装置。
  8.  前記調整部は、
     前記影響度が第1閾値よりも低い前記第1データを前記学習データから除外する
     請求項7に記載のデータ調整装置。
  9.  前記調整部は、
     前記影響度が高い第2データに対応する新たなデータである新規データを前記学習データに追加する
     請求項2に記載のデータ調整装置。
  10.  前記調整部は、
     前記影響度が第2閾値よりも高い前記第2データに対応する前記新規データを前記学習データに追加する
     請求項9に記載のデータ調整装置。
  11.  前記新規データを要求する要求情報を外部装置へ送信する送信部、
     をさらに備え、
     前記調整部は、
     前記外部装置から取得された前記新規データを前記学習データに追加する
     請求項9に記載のデータ調整装置。
  12.  前記調整部は、
     データを格納する記憶部から取得された前記新規データを前記学習データに追加する
     請求項9に記載のデータ調整装置。
  13.  前記調整部は、
     前記新規データを生成し、生成した前記新規データを前記学習データに追加する
     請求項9に記載のデータ調整装置。
  14.  前記調整部は、
     前記第2データを用いて前記新規データを生成し、生成した前記新規データを前記学習データに追加する
     請求項13に記載のデータ調整装置。
  15.  前記調整部は、
     データ拡張により前記新規データを生成し、生成した前記新規データを前記学習データに追加する
     請求項13に記載のデータ調整装置。
  16.  前記調整部は、
     前記第2データに類似する前記新規データを生成し、生成した前記新規データを前記学習データに追加する
     請求項13に記載のデータ調整装置。
  17.  前記測定部は、
     ニューラルネットワークの学習に用いられた前記学習データに含まれるデータの前記影響度を測定する
     請求項2に記載のデータ調整装置。
  18.  前記調整部による調整後の前記学習データを用いて学習処理を実行する学習部、
     をさらに備える請求項2に記載のデータ調整装置。
  19.  機械学習によるモデルの学習に用いられた学習データに含まれるデータが前記学習に与えた影響度を測定し、
     測定結果に基づいて、前記学習データからデータを除外すること、または、前記学習データに新たなデータを追加することにより、前記学習データを調整する、
     処理を実行するデータ調整方法。
  20.  機械学習モデルを有する外部装置より当該機械学習に用いられる学習データを要求する要求情報を受信する受信部と、
     前記要求情報に対応するデータとして収集されたデータを前記外部装置へ送信する送信部と、
     を備える端末装置。
  21.  前記要求情報により要求される学習データは、前記機械学習モデルにおける学習に対する影響度が所定の基準以上である学習データに類似するデータであることを特徴とする請求項20に記載の端末装置。
  22.  情報処理装置において、
     機械学習を用いた学習済みモデルと、
     前記機械学習に用いられた学習データの当該機械学習に対する影響度を測定する測定部と、
     前記影響度に基づいて新たな学習データを取得する制御部と、
     を備えることを特徴とする情報処理装置。
PCT/JP2021/011944 2020-03-31 2021-03-23 データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置 WO2021200392A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/913,856 US20230115987A1 (en) 2020-03-31 2021-03-23 Data adjustment system, data adjustment device, data adjustment method, terminal device, and information processing apparatus
JP2022511981A JPWO2021200392A1 (ja) 2020-03-31 2021-03-23

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-064522 2020-03-31
JP2020064522 2020-03-31

Publications (1)

Publication Number Publication Date
WO2021200392A1 true WO2021200392A1 (ja) 2021-10-07

Family

ID=77927761

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/011944 WO2021200392A1 (ja) 2020-03-31 2021-03-23 データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置

Country Status (3)

Country Link
US (1) US20230115987A1 (ja)
JP (1) JPWO2021200392A1 (ja)
WO (1) WO2021200392A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023079943A1 (ja) * 2021-11-04 2023-05-11 国立大学法人京都大学 情報処理装置、情報処理方法および情報処理プログラム
WO2024161561A1 (ja) * 2023-02-01 2024-08-08 富士通株式会社 情報出力プログラム、情報出力方法及び情報出力装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113223140A (zh) * 2020-01-20 2021-08-06 杭州朝厚信息科技有限公司 利用人工神经网络生成牙科正畸治疗效果的图像的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IGAI, MITSUYOSHI: "High performance Image Recognition solution with Deep Learning technology", AUTOMATIC RECOGNITION MONTHLY, vol. 33, no. 3, 10 March 2020 (2020-03-10), pages 33 - 38, ISSN: 0915-1060 *
KOH PANG WEI, LIANG PERCY: "Understanding Black-box Predictions via Influence Functions", 14 March 2017 (2017-03-14), pages 1 - 11, XP055878299, Retrieved from the Internet <URL:https://arxiv.org/pdf/1703.04730v2.pdf> [retrieved on 20220112] *
MICHAEL KUCHNIK; VIRGINIA SMITH: "Efficient Augmentation via Data Subsampling", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 11 October 2018 (2018-10-11), 201 Olin Library Cornell University Ithaca, NY 14853 , XP080931231 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023079943A1 (ja) * 2021-11-04 2023-05-11 国立大学法人京都大学 情報処理装置、情報処理方法および情報処理プログラム
WO2024161561A1 (ja) * 2023-02-01 2024-08-08 富士通株式会社 情報出力プログラム、情報出力方法及び情報出力装置

Also Published As

Publication number Publication date
JPWO2021200392A1 (ja) 2021-10-07
US20230115987A1 (en) 2023-04-13

Similar Documents

Publication Publication Date Title
WO2021200392A1 (ja) データ調整システム、データ調整装置、データ調整方法、端末装置及び情報処理装置
CN108182394B (zh) 卷积神经网络的训练方法、人脸识别方法及装置
CN106897738B (zh) 一种基于半监督学习的行人检测方法
US20180268292A1 (en) Learning efficient object detection models with knowledge distillation
US20230153622A1 (en) Method, Apparatus, and Computing Device for Updating AI Model, and Storage Medium
CN110637308A (zh) 用于虚拟化环境中的自学习代理的预训练系统
KR20190029083A (ko) 신경망 학습 방법 및 이를 적용한 장치
US20230419170A1 (en) System and method for efficient machine learning
CN114842343A (zh) 一种基于ViT的航空图像识别方法
WO2023167817A1 (en) Systems and methods of uncertainty-aware self-supervised-learning for malware and threat detection
CN113343123B (zh) 一种生成对抗多关系图网络的训练方法和检测方法
CN112529025A (zh) 一种数据处理方法及装置
CN106447691A (zh) 基于加权多示例学习的加权极限学习机视频目标跟踪方法
Omidshafiei et al. Hierarchical bayesian noise inference for robust real-time probabilistic object classification
Takahashi et al. A review of off-line mode dataset shifts
Wu et al. [Retracted] The Construction of Online Course Learning Model of Ideological and Political Education for College Students from the Perspective of Machine Learning
CN113065395A (zh) 一种基于生成对抗网络的雷达目标新类检测方法
US20230260259A1 (en) Method and device for training a neural network
US20230386164A1 (en) Method for training an object recognition model in a computing device
Li et al. Assessing and improving intelligent physical education approaches using modified cat swarm optimization algorithm
US20220044125A1 (en) Training in neural networks
Sravanthi et al. An efficient classifier using machine learning technique for individual action identification
Komoto et al. Consistency ensured bi-directional gan for anomaly detection
Komorniczak et al. Distance profile layer for binary classification and density estimation
Yang et al. Thinkback: Task-specificout-of-distribution detection

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022511981

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21780663

Country of ref document: EP

Kind code of ref document: A1