WO2022024211A1 - 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法 - Google Patents

学習活用システム、活用装置、学習装置、プログラム及び学習活用方法 Download PDF

Info

Publication number
WO2022024211A1
WO2022024211A1 PCT/JP2020/028859 JP2020028859W WO2022024211A1 WO 2022024211 A1 WO2022024211 A1 WO 2022024211A1 JP 2020028859 W JP2020028859 W JP 2020028859W WO 2022024211 A1 WO2022024211 A1 WO 2022024211A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
network
inference
utilization
unit
Prior art date
Application number
PCT/JP2020/028859
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 US18/009,333 priority Critical patent/US20230260270A1/en
Priority to DE112020007472.2T priority patent/DE112020007472T5/de
Priority to JP2022539827A priority patent/JP7438365B2/ja
Priority to PCT/JP2020/028859 priority patent/WO2022024211A1/ja
Priority to CN202080104892.3A priority patent/CN116134447A/zh
Publication of WO2022024211A1 publication Critical patent/WO2022024211A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural 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
    • 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/08Learning methods
    • 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

Definitions

  • This disclosure relates to a learning utilization system, a utilization device, a learning device, a program, and a learning utilization method.
  • DNN Deep Neural Network
  • an advanced security system or the like will be realized by applying this to a remote device such as a surveillance camera.
  • DNN Deep Neural Network
  • an image recognition device learned using widely collected data may not exhibit the recognition accuracy expected in a specific installation environment.
  • Patent Document 1 the collected data is selected based on the classification certainty, and the neural network is retrained using only the learning data with low certainty. Technologies that reduce the time required for the learning process and the required memory size, and streamline the learning process are open to the public.
  • Patent Document 1 selects learning data input based on the certainty output by the image recognition device for one image recognition device, and improves the recognition accuracy.
  • one or more aspects of the present disclosure are intended to improve recognition accuracy by using data whose correct answer is unknown.
  • the learning utilization system is a learning utilization system including a utilization device and a learning device, and the utilization device is used for inference by a data acquisition unit for acquiring target data and the utilization device.
  • the utilization side storage unit that stores the utilization side inference network that is the neural network to be used, the utilization side inference unit that makes inferences from the target data using the utilization side inference network, and the inference result by the utilization side inference network.
  • a determination unit for determining whether or not the degree of certainty is lower than the predetermined standard, and when the degree is lower than the predetermined standard, the target data is transmitted to the learning device.
  • the learning device includes a utilization side transmission unit, and the learning device includes a learning side reception unit that receives the target data, a learning network that is a neural network that functions as a teacher model of the utilization side inference network, and the utilization side.
  • the learning side storage unit that stores the learning side inference network, which is a neural network having the same network structure as the inference network, and the learning network to perform inference from the target data, the target data and the above
  • the weight coefficient of the learning side inference network is updated.
  • the utilization device includes a learning unit that generates update weight coefficient information indicating the updated weight coefficient, and a learning side transmission unit that transmits the update weight coefficient information to the utilization device, and the utilization device has the update weight coefficient. It is characterized by further comprising a utilization side receiving unit for receiving information and an application unit for applying the updated weight coefficient indicated by the updated weighting coefficient information to the utilization side inference network.
  • the utilization device uses a data acquisition unit for acquiring target data, a utilization side storage unit for storing a utilization side inference network which is a neural network used for inference, and the utilization side inference network.
  • the utilization side inference unit that infers from the target data, the judgment unit that determines whether or not the degree of certainty of the inference result by the utilization side inference network is lower than the predetermined standard, and the above degree.
  • the utilization side transmitter that transmits the target data to the learning device and the learning network that is a neural network that functions as a teacher model of the utilization side inference network are used.
  • the learning side is a neural network having the same network structure as the utilization side inference network by using the learning data generated by inferring from the target data and including the target data and the inference result by the learning network.
  • the utilization side receiving unit that is generated by re-learning the inference network and updating the weighting coefficient of the learning side inference network and receives the updated weighting coefficient information indicating the updated weighting coefficient from the learning device. It is characterized by comprising an application unit for applying the updated weight coefficient indicated by the updated weight coefficient information to the utilization side inference network.
  • the learning device is a learning side receiving unit that receives target data to be inferred by the utilization device from the utilization device, and a neural network used for inference in the utilization device.
  • a learning network that is a neural network that functions as a teacher model of a side inference network, a learning side storage unit that stores a learning side inference network that is a neural network having the same network structure as the utilization side inference network, and a learning side storage unit for learning.
  • the learning side inference unit that generates learning data including the target data and the inference result by the learning network by performing inference from the target data using a network, and the learning data are used to describe the above.
  • the learning unit that updates the weighting coefficient of the learning-side inference network and generates the updated weighting coefficient information indicating the updated weighting coefficient, and the updated weighting coefficient information are utilized. It is characterized by including a learning side transmitting unit that transmits to the device.
  • the program according to one aspect of the present disclosure uses a computer as a data acquisition unit for acquiring target data, a utilization side storage unit for storing a utilization side inference network which is a neural network used for inference, and the utilization side inference network.
  • the utilization side inference unit that infers from the target data, the judgment unit that determines whether or not the degree of certainty of the inference result by the utilization side inference network is lower than the predetermined standard, and the above degree is the above.
  • the target data is lower than a predetermined standard
  • the target data is transmitted using a learning network, which is a neural network that functions as a teacher model of the utilization side transmission unit that transmits the target data to the learning device and the utilization side inference network.
  • a learning-side inference network which is a neural network having the same network structure as the utilization-side inference network, is generated by using the learning data including the target data and the inference result by the learning network, which is generated by inferring from the inference.
  • the utilization side receiving unit that receives the updated weight coefficient information indicating the updated weight coefficient generated by re-learning and updating the weight coefficient of the learning side inference network from the learning device, and the update. It is characterized in that the updated weight coefficient indicated by the weight coefficient information is made to function as an application unit applied to the utilization side inference network.
  • the program according to one aspect of the present disclosure is a learning side receiving unit that receives target data to be inferred by the utilization device from the utilization device, and a neural network that uses the computer for inference by the utilization device.
  • a learning network that stores a learning network that is a neural network that functions as a teacher model of a utilization-side inference network, and a learning-side inference network that is a neural network having the same network structure as the utilization-side inference network.
  • the learning side inference unit that generates learning data including the target data and the inference result by the learning network by performing inference from the target data using a network, and the learning using the learning data.
  • the learning unit that updates the weight coefficient of the learning side inference network and generates the update weight coefficient information indicating the updated weight coefficient, and the update weight coefficient information are utilized. It is characterized in that it functions as a learning side transmitter that transmits data to the device.
  • inference is performed from the target data by using the utilization side inference network which is a neural network used for inference by acquiring the target data, and the certainty of the result of the inference is performed.
  • Learning is a neural network that functions as a teacher model of the utilization side inference network when it is determined whether or not the degree of is lower than the predetermined standard and the degree is lower than the predetermined standard.
  • the weighting coefficient of the learning-side inference network is updated, and the updated weighting coefficient is applied to the utilization-side inference network. It is characterized by.
  • recognition accuracy can be improved by using data whose correct answer is unknown.
  • FIG. It is a block diagram which shows schematic structure of the learning utilization system which concerns on Embodiment 1.
  • FIG. It is a block diagram which shows schematic structure of the computer corresponding to a learning device.
  • (A) and (B) are graphs for explaining the conviction of the inference result. It is a graph which shows the object existence probability distribution.
  • FIG. 1 It is a flowchart which shows the application process of the update weighting coefficient on the utilization apparatus side in Embodiment 1.
  • FIG. It is a block diagram which shows schematic structure of the learning utilization system which concerns on Embodiment 2. It is a flowchart which shows the inference and the data selection process in the utilization apparatus in Embodiment 2. It is a flowchart which shows the relearning process of the 2nd network in the learning apparatus in Embodiment 2.
  • FIG. 1 is a block diagram schematically showing the configuration of the learning utilization system 100 according to the first embodiment.
  • the learning utilization system 100 is used as an image recognition system for image recognition will be described.
  • the learning utilization system 100 includes a learning device 110 and a utilization device 130.
  • the learning device 110 is a central device that acquires data from the utilization device 130 and uses the first network, which is a teacher model, to learn the second network.
  • the first network which is a teacher model, to learn the second network.
  • one learning device 110 is installed in the learning utilization system 100 for simple explanation, but a plurality of learning devices 110 may be installed.
  • the learning device 110 is a device that normally executes an application for which the learning utilization system 100 is installed, manages and integrates the inference results acquired from the utilization device 130, and presents them to the user. However, since such a function deviates from the scope of the first embodiment, the description thereof will be omitted.
  • the application for which the learning utilization system 100 is installed is hereinafter referred to as a normal application.
  • the utilization device 130 is a remote device installed at a place required for the purpose of installing the learning utilization system 100.
  • the utilization device 130 is a device that performs image recognition at the installation location thereof.
  • the utilization device 130 is an image recognition device, in other words, a surveillance camera having a built-in inference unit.
  • the utilization device 130 normally transmits the inference result to the learning device 110 for the execution of the application, and if the certainty calculated from the inference result is included in the predetermined range, the utilization device 130 is the target of the inference. A certain original target data is transmitted to the learning device 110 together with the inference result data indicating the inference result. The definition of conviction will be described later.
  • the utilization device 130 will be described assuming that it is an image recognition device, but the utilization device 130 is not limited to such an example.
  • the learning device 110 includes a learning side receiving unit 111, a data processing unit 112, a learning side storage unit 113, a learning side inference unit 114, a learning unit 115, and a learning side transmitting unit 116.
  • the learning side receiving unit 111 is a receiving unit that receives the data transmitted from the utilization device 130. The received data is given to the data processing unit 112.
  • the data processing unit 112 gives the received image data to the learning side inference unit 114. Further, the data processing unit 112 gives the inference result data included in the data given from the learning side receiving unit 111 to a normal application (not shown). The description of the processing in the normal application is omitted.
  • the learning side storage unit 113 is a storage unit that stores the learned first network and the learned learning side second network.
  • the first network is also referred to as a learning network
  • the learning side second network is also referred to as a learning side inference network.
  • the first network functions as a teacher model for the second network on the learning side.
  • the first network is a neural network that is usually designed according to the specifications required for the application and pre-trained using known training data.
  • the first network is usually required to have sufficiently higher generalization performance than the learning side second network.
  • the second network on the learning side is a student model for the first network, and is a neural network in which at least the shape of the input layer and the output layer match the first network.
  • the number of intermediate layers other than the input layer and the output layer and the number of weighting coefficients in the learning side second network are designed to be smaller than that of the first network which is a teacher model.
  • the learning-side second network is a neural network having the same network configuration as the utilization-side second network used in the utilization device 130.
  • the learning side inference unit 114 performs inference from the image data given by the data processing unit 112 using the trained first network, and generates learning data in which the inference result and the original image data are associated with each other. It is a reasoning unit or a learning data generation unit.
  • the training data is a pair of the image data to be inferred and the inference result, and is used for learning the second network on the learning side.
  • the inference result here may be an intermediate output as well as the final output of the first network, and may include an intermediate output.
  • the final output and intermediate output of the first network and the second network on the learning side differ depending on the content of the inference.
  • the inference content is image classification and the other is the case where the inference content is object detection.
  • "probability" is used as a term in the following, the range of the value is 0% to 100%, but the value may be in the range of 0 to 1.
  • the output normally required from the application is one identification code indicating the class to which the subject of the image represented by the image data belongs.
  • the neural network calculates the probability that the image to be inferred belongs to each class for each of a plurality of known classes as a distribution, and identifies the class having the highest probability among them. Select the code and use it as the output. Therefore, in the image classification problem, the identification code of the class having the maximum probability is defined as the final output, and the intermediate output is defined as the distribution of the probabilities calculated for each class.
  • the output normally requested from the application is the existence position and range of a plurality of objects on the image to be inferred, and the existence range.
  • the class of the object is the object detection problem.
  • the neural network calculates the distribution of the object existence probability on the target image and the distribution of the class to which the small region belongs at each position on the target image, and the distribution of the object existence probability is constant.
  • the range of the upper area and the object class in that range are output. Therefore, in the object detection problem, the area information having a certain existence probability or more and the object class are defined as the final output, and the intermediate output is defined as the object existence probability distribution and the class distribution.
  • the learning unit 115 updates the weighting coefficient of the learning side second network by relearning the learning side second network using the learning data obtained from the learning side reasoning unit 114, and obtains the updated weighting coefficient. Generates the update weighting factor information shown. For example, the learning unit 115 uses the learning data obtained from the learning side inference unit 114 to output the learning side second network for the image data included in the learning data and the inference result included in the learning data. The weight coefficient of the second network on the learning side is updated so that is the same as. Then, the learning unit 115 generates update weight coefficient information indicating the update weight coefficient, which is the updated weight coefficient. The generated update weight coefficient information is given to the learning side transmission unit 116.
  • the learning side transmission unit 116 is a transmission unit that transmits the update weight coefficient information of the learning side second network obtained from the learning unit 115 to the utilization device 130.
  • the learning device 110 described above can be realized by a computer 150 as shown in FIG.
  • FIG. 2 is a block diagram schematically showing the configuration of the computer 150.
  • the computer 150 includes a communication device 151, an auxiliary storage device 152, a memory 153, and a processor 154.
  • the communication device 151 communicates with the utilization device 130.
  • the communication device 151 can be realized by a NIC (Network Interface Card).
  • the auxiliary storage device 152 stores data and programs necessary for processing in the learning device 110.
  • the auxiliary storage device 152 can be realized by an HDD (Hard Disk Drive) or an SSD (Solid State Drive).
  • the memory 153 temporarily stores data or a program to provide a working area for the processor 154.
  • the memory 153 can be realized by a volatile memory or a non-volatile memory.
  • the processor 154 reads the program stored in the auxiliary storage device 152 into the memory 153 and executes the program to execute the process in the learning device 110.
  • the processor 154 can be realized by, for example, a CPU (Central Processing Unit).
  • the learning side receiving unit 111 and the learning side transmitting unit 116 can be realized by the communication device 151.
  • the learning side storage unit 113 can be realized by the auxiliary storage device 152.
  • the data processing unit 112, the learning side inference unit 114, and the learning unit 115 can be realized by the processor 154 reading the program stored in the auxiliary storage device 152 into the memory 153 and executing the program.
  • the utilization device 130 includes the utilization side receiving unit 131, the application unit 132, the utilization side storage unit 133, the input unit 134, the data acquisition unit 135, the utilization side inference unit 136, and the data selection unit. It is provided with 137 and a transmission unit 138 on the utilization side.
  • the utilization side receiving unit 131 is a receiving unit that receives update weight coefficient information from the learning device 110.
  • the received update weight coefficient information is given to the application unit 132.
  • the application unit 132 applies the update weight coefficient indicated by the received update weight coefficient information to the second network on the utilization side stored in the utilization side storage unit 133.
  • the utilization side second network is also called the utilization side inference network.
  • the utilization side storage unit 133 is a storage unit that stores the utilization side second network, which is a neural network used for inference in the utilization device 130.
  • the second network on the utilization side has the same network structure as the second network on the learning side.
  • the update weighting factor obtained by learning of the learning side second network is applied to the utilization side second network by the application unit 132.
  • the input unit 134 accepts the input of the target data, which is the target data to be inferred by the utilization device 130.
  • the input target data is given to the data acquisition unit 135.
  • the target data is image data.
  • image data is input from a surveillance camera which is an image pickup device connected to the utilization device 130, but the first embodiment is not limited to such an example.
  • the utilization device 130 may be configured as a surveillance camera.
  • the input unit 134 functions as an image pickup unit including an image sensor such as a CCD (Charge Coupled Device) or a CMOS (Complementary Metal-Oxide-Semiconductor).
  • the data acquisition unit 135 acquires the target data via the input unit 134.
  • the target data is the target of inference performed by the utilization device 130.
  • the target data is given to the utilization side inference unit 136 and the data selection unit 137.
  • the utilization side inference unit 136 is an inference unit that infers from the target data given from the data acquisition unit 135 using the utilization side second network stored in the utilization side storage unit 133.
  • the utilization side inference unit 136 performs image recognition from the image data which is the target data.
  • the inference result is given to the data selection unit 137.
  • the data selection unit 137 functions as a determination unit for determining whether or not the degree of certainty of the inference result by the second network on the utilization side is lower than a predetermined standard. For example, the data selection unit 137 associates the inference result of the inference unit 136 on the utilization side with the image data to be inferred, calculates the certainty of the image data to be inferred, and the certainty is within a predetermined range. In the case of, the inference result data indicating the inference result and the image data are given to the utilization side transmission unit 138.
  • the degree of certainty indicates the certainty of the inference result by the second network on the utilization side.
  • the predetermined range is a range including the minimum value of the certainty.
  • the data selection unit 137 gives only the inference result data indicating the inference result to the utilization side transmission unit 138.
  • the conviction calculated by the data selection unit 137 is also defined in two cases, that is, the case of image classification and the case of object detection, as described above.
  • the inference performed by the utilization side second network is image classification
  • the certainty of the intermediate output of the utilization side second network is qualitatively shown in FIG. 3 (A) at the intermediate output. It can be said that it is high when the probability is sufficiently high in a specific class and the probability of another class is low.
  • FIG. 3B when the probability in the class that maximizes the probability is low and the difference in probability between the classes is small, the second network on the utilization side It can be said that the certainty of the intermediate output is low.
  • the maximum value of the probability distribution can be defined as the conviction
  • the predetermined range of the conviction can be defined as 0% or more and N times or less of the value obtained by dividing 100% by the number of classes.
  • the value of N is arbitrarily determined by the user or experimentally in the installation environment of the system.
  • the difference between the highest probability value and the second highest probability value may be defined as the conviction, and the predetermined range of the conviction may be defined as 0% or more and x% or less.
  • the value of x is arbitrarily determined by the user or experimentally in the installation environment of the system.
  • the value of the statistical variance in the probability distribution which is an intermediate output, that is, the sum of the squares of the differences between the probability in each class and the mean value of the class probability is defined as the certainty, and the certainty is predetermined.
  • the range may be set to 0% or more and y% or less.
  • the value of y is arbitrarily determined by the user or experimentally in the installation environment of the system.
  • any measure that indicates a bias toward a specific class in the intermediate output can be a conviction.
  • the conviction of the result output by the utilization side second network can be defined from, for example, the value of the object existence probability distribution on the target image. As shown in FIG. 4, it can be determined that there is a high degree of certainty that the object does not exist at the locations AR1, AR2, and AR3 where the existence probability is close to 0% in the object existence probability distribution. On the contrary, in the place AR4 where the existence probability is close to 100%, it can be determined that the certainty that the object exists at that position is high. On the other hand, in the place AR5 where the existence probability is around 50%, the certainty that the object exists at that position and the certainty that it does not exist are half and half, in other words, it can be judged that the certainty that the object is low is low. can.
  • the minimum value of the absolute value obtained by subtracting 50% from the existence probability at each position of the object existence probability distribution is defined as the certainty of the inference result, and for example, the predetermined range of the certainty is z% or less.
  • the existence probability is (50-z)% or more (50 + z)% or less.
  • the value of z can be arbitrarily determined by the user or experimentally in the installation environment of the system.
  • the utilization side transmission unit 138 is a transmission unit that transmits the data passed from the data selection unit 137 to the learning device 110.
  • the utilization device 130 described above can be realized by a computer 160 as shown in FIG.
  • FIG. 5 is a block diagram schematically showing the configuration of the computer 160.
  • the computer 160 includes a communication device 161, an auxiliary storage device 162, a connection device 163, a memory 164, and a processor 165.
  • the communication device 161 communicates with the learning device 110.
  • the communication device 161 can be realized by the NIC.
  • the auxiliary storage device 162 stores data and programs necessary for processing in the utilization device 130.
  • the auxiliary storage device 162 can be realized by an HDD or an SSD.
  • the connection device 163 connects an image pickup device such as a camera, and transmits / receives data to / from the image pickup device.
  • the connection device 163 can be realized by a connection interface such as USB (Universal Serial Bus).
  • Memory 164 temporarily stores data or programs and provides a working area for processor 165.
  • the memory 164 can be realized by a volatile memory or a non-volatile memory.
  • the processor 165 reads the program stored in the auxiliary storage device 162 into the memory 164 and executes the program to execute the process in the learning device 110.
  • the processor 165 can be realized by, for example, a CPU.
  • the input unit 134 can be realized by the connection device 163.
  • the utilization side transmission unit 138 can be realized by the communication device 161.
  • the utilization side storage unit 133 can be realized by the auxiliary storage device 162.
  • the application unit 132, the utilization side inference unit 136, the data acquisition unit 135, and the data selection unit 137 are realized by the processor 165 reading the program stored in the auxiliary storage device 162 into the memory 164 and executing the program. be able to.
  • FIG. 5 shows an example in which the utilization device 130 is a computer 160, but the first embodiment is not limited to such an example.
  • the utilization device 130 can be realized by a camera instead of the computer 160.
  • the camera may be provided with an image pickup device including an image pickup device in place of the connection device 163 in the computer 160 shown in FIG.
  • FIG. 6 is a flowchart showing the initial processing of the learning utilization system 100 according to the first embodiment.
  • the first network and the learning-side second network designed to satisfy the requirements of the normal application are stored in the learning-side storage unit 113, and the learning-side inference unit 114 and the learning-side unit 115 are stored.
  • the first network and the second network on the learning side are learned using known learning data.
  • the utilization side second network designed to satisfy the requirements of the normal application is stored in the utilization side storage unit 133.
  • the known learning data is a pair of image data and correct information created so as to obtain a desired recognition result.
  • learning may be performed with a learning device prepared separately.
  • step S11 the learning unit 115 generates update weight coefficient information indicating the update weight coefficient, which is the updated weight coefficient in the learning side second network, and updates the update weight coefficient information via the learning side transmission unit 116.
  • the weighting coefficient information is transmitted to the utilization device 130.
  • the application unit 132 of the utilization device 130 acquires the update weight coefficient information via the utilization side reception unit 131, and the update weight coefficient received to the utilization side second network stored in the utilization side storage unit 133. Apply the update weighting factor indicated by the information.
  • the application unit 132 applies the update weight coefficient indicated by the update weight coefficient information to the second network on the utilization side, but the functional unit realized by executing a separately prepared program (for example). , Setting unit, etc.) may apply the update weighting coefficient indicated by the update weighting factor information to the second network on the utilization side.
  • step S12 the utilization device 130 is installed at an installation position determined according to a request for executing a normal application.
  • each of the first network and the second learning side network is independently learned using known learning data, but the first embodiment is not limited to such an example.
  • the first network may be learned using known learning data, and then the second network on the learning side may be learned using a known knowledge distillation technique.
  • the utilization device 130 is installed at each installation position after step S11, but the first embodiment is not limited to such an example.
  • the update weighting coefficient may be applied to the utilization side second network.
  • FIG. 7 is a flowchart showing inference and data selection processing in the utilization device 130.
  • the data acquisition unit 135 acquires image data to be inferred via the input unit 134 (S20).
  • the data acquisition unit 135 periodically acquires image data.
  • the cycle shall be determined according to the usage of the normal application.
  • the acquired image data is given to the utilization side inference unit 136 and the data selection unit 137.
  • the utilization side inference unit 136 infers the acquired image data using the utilization side second network (S21). After performing the inference, the inference unit 136 on the utilization side gives the final output and the intermediate output of the inference result to the data selection unit 137.
  • the data selection unit 137 calculates the conviction degree from the intermediate output of the inference result (S22). Then, the data selection unit 137 determines whether or not the calculated conviction is within a predetermined range (S23). If the calculated conviction is within the predetermined range (Yes in S23), the process proceeds to step S24, and if the calculated conviction is not within the predetermined range (No in S23). The process proceeds to step S25.
  • step S24 the data selection unit 137 sends the image data and the inference result data indicating the inference result to the learning device 110 via the utilization side transmission unit 138. If the conviction is within a predetermined range, the conviction is insufficient. Therefore, it can be considered that the second network on the utilization side does not make a sufficient judgment especially on the image data. Therefore, the data selection unit 137 provides the learning device 110 so that the image data to be inferred can be used for additional learning. At this time, the final output for normal application use is also sent. After transmission, the process returns to step S20, and a wait is performed until the data acquisition unit 135 acquires the next image data.
  • step S25 the data selection unit 137 sends the inference result data indicating the inference result to the learning device 110 via the utilization side transmission unit 138. If the conviction is not within a predetermined range, the conviction is sufficient. Therefore, it can be considered that the second network on the utilization side can make a sufficient judgment on the image data. Therefore, the data selection unit 137 gives only the final output to the learning device 110.
  • FIG. 8 is a flowchart showing the relearning process of the second network in the learning device 110.
  • the learning side receiving unit 111 receives the data from the utilization device 130 (S30). The received data is given to the data processing unit 112. Then, the data processing unit 112 gives the inference result data included in the data given from the learning side receiving unit 111 to the normal application, and the normal application executes the process using the inference result data (S31). ..
  • the data processing unit 112 determines whether or not the data given from the learning side receiving unit 111 includes image data (S32). If the image data is included (Yes in S32), the process proceeds to step S33, and if the image data is not included (No in S32), the process returns to step S30.
  • step S33 the data processing unit 112 gives the image data included in the data given from the learning side receiving unit 111 to the learning side inference unit 114, and the learning side inference unit 114 receives the image data based on the image data. Inference is executed using the first network stored in the learning side storage unit 113. The learning side inference unit 114 gives a pair of the inference result and the image data to the learning unit 115 as learning data.
  • the training data here may be an intermediate output of inference, or may include an intermediate output of inference.
  • the learning unit 115 relearns the second network on the learning side using the learning data given from the inference unit 114 on the learning side (S34).
  • the learning unit 115 may update the weighting coefficient of the second network on the learning side with the intermediate output as a target. This corresponds to learning by known knowledge distillation.
  • the learning unit 115 takes out the updated weight coefficient from the second network on the learning side, generates update weight coefficient information indicating the extracted weight coefficient, and transmits the update weight coefficient information to the learning side transmission unit 116. It is sent to the utilization device 130 via (S35). After that, the standby is performed until the learning side receiving unit 111 receives the data again.
  • the processes from step S33 to step S35 are performed every time the image data is received, but the first embodiment is not limited to such an example.
  • the processes from step S33 to step S35 may be performed after a certain number or a certain amount of image data is stored. In such a case, when the second network on the learning side is relearned, there is an effect that the learning process can be made more efficient by carrying out the learning data in a batch.
  • FIG. 9 is a flowchart showing the application process of the update weighting coefficient on the utilization device 130 side.
  • the utilization side receiving unit 131 receives the update weighting coefficient information from the learning device 110 (S40).
  • the received update weight coefficient information is given to the application unit 132.
  • the application unit 132 is an update weight coefficient indicated by the update weight coefficient information given from the utilization side reception unit 131, and is a weight coefficient of the corresponding portion of the utilization side second network stored in the utilization side storage unit 133. Is replaced with to apply the update weighting factor to the second network (S41). After application, the standby is performed until the utilization side receiving unit 131 receives the next update weight coefficient information.
  • FIG. 10 is a block diagram schematically showing the configuration of the learning utilization system 200 according to the second embodiment. Also in the second embodiment, an example in which the learning utilization system 200 is used as an image recognition system for image recognition will be described.
  • the learning utilization system 200 includes a learning device 210 and a plurality of utilization devices 230.
  • a configuration in which a plurality of utilization devices 230 are provided for one learning device 210 will be described.
  • the learning device 210 manages the second learning network for each utilization device 230 and also manages the received data for each utilization device 230.
  • the data sent from the utilization device 230 to the learning device 210 includes an identification code which is utilization device identification information for identifying the utilization device 230 that generated the data. It is assumed that the plurality of utilization devices 230 are configured in the same manner.
  • the learning device 210 includes a learning side receiving unit 111, a data processing unit 112, a learning side storage unit 213, a learning side inference unit 114, a learning unit 215, and a learning side transmitting unit 216.
  • the learning side receiving unit 111, the data processing unit 112, and the learning side inference unit 114 of the learning device 210 in the second embodiment are the learning side receiving unit 111, the data processing unit 112, and the learning side inference unit of the learning device 110 in the first embodiment. It is the same as the part 114.
  • the learning side storage unit 213 stores the learned first network and the learned learning side second network.
  • the first network is also referred to as a learning network
  • the learning side second network is also referred to as a learning side inference network.
  • the learning side storage unit 213 stores the learning side second network for each utilization device 230.
  • the learning side second network is stored in association with the identification code of the utilization device 230.
  • the learning unit 215 uses the learning data obtained from the learning side inference unit 114 to input the image data into the learning side second network corresponding to the utilization device 230 of the transmission source of the image data included in the learning data.
  • the weighting coefficient of the second network on the learning side is updated so that the output obtained and the inference result included in the learning data match.
  • the learning unit 215 since the image data includes the identification code of the transmission source utilization device 230, the learning unit 215 uses the learning side second network associated with the identification code. Then, the learning unit 215 generates the update weight coefficient information indicating the update weight coefficient which is the updated weight coefficient.
  • the learning unit 215 gives the generated update weight coefficient information to the learning side transmission unit 216 together with the information indicating the transmission destination.
  • the transmission destination is the utilization device 230 of the transmission source of the image data used for the re-learning of the second network on the learning side.
  • the learning unit 215 gives the identification code of such a utilization device 230 to the learning side transmission unit 216.
  • the learning side transmission unit 216 transmits the update weight coefficient information of the learning side second network given by the learning unit 215 to the utilization device 230 which is the transmission destination instructed by the learning unit 215.
  • the utilization device 230 includes the utilization side receiving unit 131, the application unit 132, the utilization side storage unit 133, the input unit 134, the data acquisition unit 135, the utilization side inference unit 136, the data selection unit 237, and the utilization side.
  • a transmission unit 138 is provided.
  • the utilization side receiving unit 131, the application unit 132, the utilization side storage unit 133, the input unit 134, the data acquisition unit 135, the utilization side inference unit 136, and the utilization side transmission unit 138 of the utilization device 230 in the second embodiment are embodiments. It is the same as the utilization side receiving unit 131, the application unit 132, the utilization side storage unit 133, the input unit 134, the data acquisition unit 135, the utilization side inference unit 136, and the utilization side transmission unit 138 of the utilization device 130 in 1.
  • the data selection unit 237 associates the inference result of the inference unit 136 on the utilization side with the image data to be inferred, calculates the certainty of the image data to be inferred, and the certainty is within a predetermined range.
  • the inference result data indicating the inference result and the image data are given to the utilization side transmission unit 138.
  • the predetermined range is a range including the minimum value of the certainty. If the conviction is not within a predetermined range, the data selection unit 237 gives only the inference result data indicating the inference result to the utilization side transmission unit 138.
  • the data selection unit 237 adds the identification code of the utilization device 230 to the image data and the inference result data.
  • the initial processing before starting the learning processing is the same as the processing content shown in FIG. However, the same processing is performed in all of the plurality of utilization devices 230.
  • FIG. 11 is a flowchart showing the inference and data selection processing in the utilization device 230 according to the second embodiment.
  • the step which performs the same processing as the step included in the flowchart shown in FIG. 7 is the flowchart shown in FIG. 7. It is given the same code as the steps contained in.
  • steps S20 to S23 of FIG. 11 is the same as the process of steps S20 to S23 of FIG. However, in FIG. 11, when the calculated conviction is within the predetermined range in step S23 (Yes in S23), the process proceeds to step S54, and the calculated conviction is predetermined. If it is not within the range (No in S23), the process proceeds to step S55.
  • step S54 the data selection unit 237 adds the identification code of the utilization device 230 to the image data and the inference result data indicating the inference result. Then, the process proceeds to step S24, and the data selection unit 237 sends the image data and the inference result data to the learning device 210 via the utilization side transmission unit 138.
  • step S55 the data selection unit 237 adds the identification code of the utilization device 230 to the inference result data indicating the inference result. Then, the process proceeds to step S25, and the data selection unit 237 sends the inference result data to the learning device 210 via the utilization side transmission unit 138.
  • FIG. 12 is a flowchart showing a re-learning process of the second network in the learning device 210 according to the second embodiment.
  • the step which performs the same processing as the step included in the flowchart shown in FIG. 8 is the flowchart shown in FIG. It is given the same code as the steps contained in.
  • steps S30 to S33 in FIG. 12 is the same as the process of steps S30 to S33 of FIG. However, in FIG. 12, after step S33, the process proceeds to step S64.
  • step S64 the learning unit 215 identifies the identification code added to the image data included in the learning data given by the learning side inference unit 114, and thereby uses the utilization device 230 of the transmission source of the image data. Identify.
  • the learning unit 215 relearns the learning side second network of the specified utilization device 230 using the learning data given from the learning side inference unit 114 (S65).
  • the learning unit 215 extracts the updated weighting coefficient from the learning side second network, generates update weighting coefficient information indicating the extracted weighting coefficient, and transmits the updated weighting coefficient information to the learning side transmitting unit 116. It is sent to the specified utilization device 230 via (S66). After that, the standby is performed until the learning side receiving unit 111 receives the data again.
  • the utilization side inference unit 136 of each utilization device 230 is a reasoning unit specialized for the installation location. Therefore, the recognition rate of the utilization device 230 becomes higher.
  • the target data is image data
  • the utilization side second network, the first network, and the learning side second network are trained models for performing image recognition from the image data.
  • the utilization side second network, the first network and the learning side second network recognize the image from the image data, and the trained model for classifying the recognized image, or the image from the image data.
  • An example is shown which is a trained model for recognizing and detecting an object from the recognized image.
  • the first or second embodiment is not limited to such an example, and may be configured to make other inferences.
  • 100,200 learning utilization system 110,210 learning device, 111 learning side receiving unit, 112 data processing unit, 113,213 learning side storage unit, 114 learning side inference unit, 115,215 learning unit, 116,216 learning side transmission Unit, 130, 230 utilization device, 131 utilization side reception unit, 132 application unit, 133 utilization side storage unit, 134 input unit, 135 data acquisition unit, 136 utilization side inference unit, 137, 237 data selection unit, 138 utilization side transmission Department.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

活用装置(130)は、活用側推論ネットワークを使用して、対象データから推論を行う活用側推論部(136)と、活用側推論ネットワークによる推論結果の確からしさの度合いが予め定められた基準よりも低い場合に、対象データを学習装置(110)に送信する活用側送信部(138)とを備える。学習装置(110)は、活用側推論ネットワークの教師モデルとして機能する学習用ネットワークを使用して、受信された対象データから推論を行うことで学習データを生成する学習側推論部(114)と、学習データを用いて、活用側推論ネットワークと同じネットワーク構成の学習側推論ネットワークを再学習することで更新された重み係数を示す更新重み係数情報を生成する学習部(115)と、活用装置(130)で活用側推論ネットワークを更新するために、更新重み係数情報を活用装置(130)に送信する学習側送信部(116)とを備える。

Description

学習活用システム、活用装置、学習装置、プログラム及び学習活用方法
 本開示は、学習活用システム、活用装置、学習装置、プログラム及び学習活用方法に関する。
 近年の画像認識技術は、多層ニューラルネットワーク(DNN:Deep Neural Network)により高精度化が著しく、監視カメラ等の遠隔装置にこれを応用することで高度なセキュリティシステム等の実現が期待されている。
 一方、DNNでは、無作為に収集したデータで十分な精度が得られるまで学習を行うためには大量の学習データを用いる必要があり、学習プロセスにおいても非常に時間がかかる。また、DNNは、広く収集したデータを用いて学習した画像認識装置が特定の設置環境で期待された認識精度を発揮しない場合がある。
 これらの問題の対策として、特許文献1には、収集されたデータに対して、分類確信度を基準に選別を行い、確信度の低い学習データのみを用いてニューラルネットワークを再学習させることで、学習プロセスにかかる時間及び必要なメモリサイズを削減し、学習プロセスを効率化する技術が公開されている。
国際公開第2017/145960号公報
 しかしながら、特許文献1に記載されている技術は、一つの画像認識装置に対して、その画像認識装置の出力する確信度をもとに入力された学習データを選別し、認識精度を向上させることが可能だが、正解が未知のデータを利用することができない。
 そこで、本開示の一又は複数の態様は、正解が未知のデータを用いて、認識精度を向上できるようにすることを目的とする。
 本開示の一態様に係る学習活用システムは、活用装置と、学習装置とを備える学習活用システムであって、前記活用装置は、対象データを取得するデータ取得部と、前記活用装置での推論に使用するニューラルネットワークである活用側推論ネットワークを記憶する活用側記憶部と、前記活用側推論ネットワークを使用して、前記対象データから推論を行う活用側推論部と、前記活用側推論ネットワークによる推論結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断する判断部と、前記度合いが前記予め定められた基準よりも低い場合に、前記対象データを前記学習装置に送信する活用側送信部と、を備え、前記学習装置は、前記対象データを受信する学習側受信部と、前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワーク、及び、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを記憶する学習側記憶部と、前記学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成する学習側推論部と、前記学習データを用いて、前記学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、前記更新された重み係数を示す更新重み係数情報を生成する学習部と、前記更新重み係数情報を前記活用装置に送信する学習側送信部と、を備え、前記活用装置は、前記更新重み係数情報を受信する活用側受信部と、前記更新重み係数情報で示される前記更新された重み係数を、前記活用側推論ネットワークに適用する適用部と、をさらに備えることを特徴とする。
 本開示の一態様に係る活用装置は、対象データを取得するデータ取得部と、推論に使用するニューラルネットワークである活用側推論ネットワークを記憶する活用側記憶部と、前記活用側推論ネットワークを使用して、前記対象データから推論を行う活用側推論部と、前記活用側推論ネットワークによる推論結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断する判断部と、前記度合いが前記予め定められた基準よりも低い場合に、前記対象データを学習装置に送信する活用側送信部と、前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワークを使用して前記対象データから推論を行うことで生成され、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを用いて、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを再学習して、前記学習側推論ネットワークの重み係数を更新することで生成され、前記更新された重み係数を示す更新重み係数情報を、前記学習装置から受信する活用側受信部と、前記更新重み係数情報で示される前記更新された重み係数を、前記活用側推論ネットワークに適用する適用部と、を備えることを特徴とする。
 本開示の一態様に係る学習装置は、活用装置から、前記活用装置での推論の対象となる対象データを受信する学習側受信部と、前記活用装置での推論に使用するニューラルネットワークである活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワーク、及び、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを記憶する学習側記憶部と、前記学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成する学習側推論部と、前記学習データを用いて、前記学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、前記更新された重み係数を示す更新重み係数情報を生成する学習部と、前記更新重み係数情報を前記活用装置に送信する学習側送信部と、を備えることを特徴とする。
 本開示の一態様に係るプログラムは、コンピュータを、対象データを取得するデータ取得部、推論に使用するニューラルネットワークである活用側推論ネットワークを記憶する活用側記憶部、前記活用側推論ネットワークを使用して、前記対象データから推論を行う活用側推論部、前記活用側推論ネットワークによる推論結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断する判断部、前記度合いが前記予め定められた基準よりも低い場合に、前記対象データを学習装置に送信する活用側送信部、前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワークを使用して前記対象データから推論を行うことで生成され、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを用いて、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを再学習して、前記学習側推論ネットワークの重み係数を更新することで生成され、前記更新された重み係数を示す更新重み係数情報を、前記学習装置から受信する活用側受信部、及び、前記更新重み係数情報で示される前記更新された重み係数を、前記活用側推論ネットワークに適用する適用部、として機能させることを特徴とする。
 本開示の一態様に係るプログラムは、コンピュータを、活用装置から、前記活用装置での推論の対象となる対象データを受信する学習側受信部、前記活用装置での推論に使用するニューラルネットワークである活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワーク、及び、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを記憶する学習側記憶部、前記学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成する学習側推論部、前記学習データを用いて、前記学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、前記更新された重み係数を示す更新重み係数情報を生成する学習部、及び、前記更新重み係数情報を前記活用装置に送信する学習側送信部、として機能させることを特徴とする。
 本開示の一態様に係る学習活用方法は、対象データを取得し、推論に使用するニューラルネットワークである活用側推論ネットワークを使用して、前記対象データから推論を行い、前記推論の結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断し、前記度合いが前記予め定められた基準よりも低い場合に、前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成し、前記学習データを用いて、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、前記更新された重み係数を、前記活用側推論ネットワークに適用することを特徴とする。
 本開示の一又は複数の態様によれば、正解が未知のデータを用いて、認識精度を向上することができる。
実施の形態1に係る学習活用システムの構成を概略的に示すブロック図である。 学習装置に対応するコンピュータの構成を概略的に示すブロック図である。 (A)及び(B)は、推論結果の確信度を説明するためのグラフである。 物体存在確率分布を示すグラフである。 活用装置に対応するコンピュータの構成を概略的に示すブロック図である。 実施の形態1に係る学習活用システムの初期処理を示すフローチャートである。 実施の形態1における活用装置での推論及びデータ選別処理を示すフローチャートである。 実施の形態1における学習装置での第二ネットワークの再学習処理を示すフローチャートである。 実施の形態1における活用装置側での更新重み係数の適用処理を示すフローチャートである。 実施の形態2に係る学習活用システムの構成を概略的に示すブロック図である。 実施の形態2における活用装置での推論及びデータ選別処理を示すフローチャートである。 実施の形態2における学習装置での第二ネットワークの再学習処理を示すフローチャートである。
実施の形態1.
 図1は、実施の形態1に係る学習活用システム100の構成を概略的に示すブロック図である。
 実施の形態1では、学習活用システム100が画像認識を行う画像認識システムとして使用される例を説明する。
 学習活用システム100は、学習装置110と、活用装置130とを備える。
 学習装置110は、活用装置130からデータを取得し、教師モデルである第一ネットワークを用いて、第二ネットワークの学習を実施する中央装置である。
 実施の形態1では、簡単に説明を行うため学習活用システム100内に一つの学習装置110が設置されているが、複数の学習装置110が設置されていてもよい。
 また、学習装置110は、通常、学習活用システム100の設置目的であるアプリケーションを実行し、活用装置130から取得した推論結果を管理統合してユーザに提示する装置である。しかしながら、このような機能は、実施の形態1の範囲から逸脱するため、説明を省略する。なお、学習活用システム100の設置目的であるアプリケーションを以下では通常アプリと称する。
 活用装置130は、学習活用システム100の設置目的上必要とされる場所に設置される遠隔装置である。実施の形態1では、例えば、活用装置130は、その設置場所にて画像認識を行う装置である。具体例としては、活用装置130は、画像認識装置、言い換えると、推論部を内蔵した監視カメラである。
 活用装置130は、通常アプリの実行のため推論結果を学習装置110へ送信するとともに、推論結果から算出される確信度が予め定められた範囲内に含まれている場合には、推論の対象である元の対象データを、推論結果を示す推論結果データとともに学習装置110へ送信する。確信度の定義については後述する。
 以下では、活用装置130が画像認識装置であるものとして、説明を行うが、活用装置130は、このような例に限定されるものではない。
 学習装置110は、学習側受信部111と、データ処理部112と、学習側記憶部113と、学習側推論部114と、学習部115と、学習側送信部116とを備える。
 学習側受信部111は、活用装置130から送信されたデータを受信する受信部である。受信されたデータは、データ処理部112に与えられる。
 データ処理部112は、学習側受信部111から与えられたデータに対象データとしての画像データが含まれている場合、受信された画像データを学習側推論部114に与える。
 また、データ処理部112は、学習側受信部111から与えられたデータに含まれている推論結果データを図示しない通常アプリに与える。通常アプリでの処理については、説明を省略する。
 学習側記憶部113は、学習済の第一ネットワーク及び学習済の学習側第二ネットワークを記憶する記憶部である。ここで、第一ネットワークを学習用ネットワークともいい、学習側第二ネットワークを学習側推論ネットワークともいう。
 第一ネットワークは、学習側第二ネットワークの教師モデルとして機能する。第一ネットワークは、通常アプリに要求される仕様に応じて設計され、既知の学習データを用いて事前に学習されたニューラルネットワークである。第一ネットワークは、通常、学習側第二ネットワークよりも十分に高い汎化性能を持つことが要求される。
 学習側第二ネットワークは、第一ネットワークに対する生徒モデルであり、少なくとも入力層と、出力層との形が第一ネットワークと一致するニューラルネットワークである。通常、学習側第二ネットワークにおける入力層と出力層以外の中間層の数及び重み係数の数は、教師モデルである第一ネットワークより少なく設計される。但し、このような設計は、必須ではない。ここで、学習側第二ネットワークは、活用装置130で使用される活用側第二ネットワークと同じネットワーク構成を有するニューラルネットワークである。
 学習側推論部114は、データ処理部112から与えられた画像データから、学習済みの第一ネットワークを用いて推論を実施し、その推論結果と元の画像データとを対応付けた学習データを生成する推論部又は学習データ生成部である。学習データは、推論対象の画像データと推論結果とのペアであり、学習側第二ネットワークの学習に使用される。なお、ここでの推論結果は、第一ネットワークの最終的な出力のみならず、中間出力であってもよく、中間出力を含んでいてもよい。
 第一ネットワーク及び学習側第二ネットワークの最終的な出力及び中間出力は、推論の内容によって異なる。実施の形態1では、推論内容が画像分類である場合と、物体検出である場合の二通りの場合について定義する。なお、以下で用語として「確率」を用いる場合には、その値の範囲は0%から100%の値をとるものとするが、0から1の範囲の値であってもよい。
 第一ネットワーク及び学習側第二ネットワークで行う推論が画像分類である場合には、通常アプリから要求される出力は、画像データで示される画像の被写体が属するクラスを示す一つの識別符号である。
 一方、一般的には画像分類問題では、ニューラルネットワークは、複数の既知のクラス毎に、推論対象の画像が各クラスに属する確率を分布として算出し、その中で最大の確率を持つクラスの識別符号を選定して出力とする。
 従って、画像分類問題においては、この確率最大となるクラスの識別符号を最終的な出力と定義し、中間出力は、クラス毎に算出される確率の分布として定義される。
 また、第一ネットワーク及び学習側第二ネットワークで行う推論が物体検出である場合には、通常アプリから要求される出力は、推論対象の画像上における複数の物体の存在位置及び存在範囲、並びに、その物体のクラスである。
 一般的には物体検出問題では、ニューラルネットワークは、対象画像上の物体存在確率の分布、及び、対象画像上の各位置における小領域が属するクラスの分布を算出し、物体存在確率の分布が一定上の領域の範囲と、その範囲における物体クラスとを出力する。
 従って、物体検出問題においては、この存在確率一定以上の領域情報と、物体クラスとを最終的な出力と定義し、中間出力は、物体存在確率分布及びクラス分布として定義される。
 学習部115は、学習側推論部114から得られた学習データを用いて、学習側第二ネットワークを再学習することで、学習側第二ネットワークの重み係数を更新し、更新された重み係数を示す更新重み係数情報を生成する。
 例えば、学習部115は、学習側推論部114から得られた学習データを用いて、学習データに含まれている画像データに対する学習側第二ネットワークの出力と、学習データに含まれている推論結果とが一致するように、学習側第二ネットワークの持つ重み係数を更新する。そして、学習部115は、更新された重み係数である更新重み係数を示す更新重み係数情報を生成する。生成された更新重み係数情報は、学習側送信部116に与えられる。
 学習側送信部116は、学習部115から得られた学習側第二ネットワークの更新重み係数情報を活用装置130に送信する送信部である。
 以上に記載された学習装置110は、図2に示されているようなコンピュータ150により実現することができる。
 図2は、コンピュータ150の構成を概略的に示すブロック図である。
 コンピュータ150は、通信装置151と、補助記憶装置152と、メモリ153と、プロセッサ154とを備える。
 通信装置151は、活用装置130との間で通信を行う。例えば、学習装置110と、活用装置130とがネットワークに接続されている場合には、通信装置151は、NIC(Network Interface Card)により実現することができる。
 補助記憶装置152は、学習装置110での処理に必要なデータ及びプログラムを記憶する。例えば、補助記憶装置152は、HDD(Hard Disc Drive)又はSSD(Solid State Drive)により実現することができる。
 メモリ153は、データ又はプログラムを一時的に記憶して、プロセッサ154の作業領域を提供する。メモリ153は、揮発性メモリ又は不揮発性メモリで実現することができる。
 プロセッサ154は、補助記憶装置152に記憶されているプログラムをメモリ153に読み出して、そのプログラムを実行することで、学習装置110での処理を実行する。プロセッサ154は、例えば、CPU(Central Processing Unit)により実現することができる。
 例えば、学習側受信部111及び学習側送信部116は、通信装置151により実現することができる。
 学習側記憶部113は、補助記憶装置152により実現することができる。
 データ処理部112、学習側推論部114及び学習部115は、プロセッサ154が補助記憶装置152に記憶されているプログラムをメモリ153に読み出して、そのプログラムを実行することにより実現することができる。
 図1に戻り、活用装置130は、活用側受信部131と、適用部132と、活用側記憶部133と、入力部134と、データ取得部135と、活用側推論部136と、データ選択部137と、活用側送信部138とを備える。
 活用側受信部131は、学習装置110からの更新重み係数情報を受信する受信部である。受信された更新重み係数情報は、適用部132に与えられる。
 適用部132は、受信された更新重み係数情報で示される更新重み係数を、活用側記憶部133に記憶されている活用側第二ネットワークに適用する。活用側第二ネットワークは、活用側推論ネットワークともいう。
 活用側記憶部133は、活用装置130での推論に使用するニューラルネットワークである活用側第二ネットワークを記憶する記憶部である。
 活用側第二ネットワークは、学習側第二ネットワークと同じネットワーク構造を持つ。学習側第二ネットワークの学習によって得られた更新重み係数は、適用部132によって活用側第二ネットワークに適用される。
 入力部134は、活用装置130で推論を行う対象となるデータである対象データの入力を受け付ける。入力された対象データは、データ取得部135に与えられる。実施の形態1では、対象データは、画像データであるものとする。ここでは、活用装置130に接続されている撮像装置である監視カメラから画像データが入力されるものとするが、実施の形態1は、このような例に限定されない。例えば、活用装置130が監視カメラとして構成されていてもよい。このような場合、入力部134は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal-Oxide-Semiconductor)等のイメージセンサを備える撮像部として機能する。
 データ取得部135は、入力部134を介して、対象データを取得する。対象データは、活用装置130が行う推論の対象となる。対象データは、活用側推論部136及びデータ選択部137に与えられる。
 活用側推論部136は、データ取得部135から与えられる対象データから、活用側記憶部133に記憶されている活用側第二ネットワークを用いて推論を行う推論部である。ここでは、活用側推論部136は、対象データである画像データから画像認識を行う。推論結果は、データ選択部137に与えられる。
 データ選択部137は、活用側第二ネットワークによる推論結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断する判断部として機能する。
 例えば、データ選択部137は、活用側推論部136の推論結果と、推論対象の画像データとを対応付け、推論対象の画像データに対する確信度を算出するとともに、確信度が予め定められた範囲内にある場合には、推論結果を示す推論結果データと、画像データとを活用側送信部138に与える。ここで、確信度は、活用側第二ネットワークによる推論結果の確からしさを示す。そして、予め定められた範囲は、確信度の最低値を含む範囲である。このため、確信度が予め定められた範囲内にある場合には、推論結果の確からしさの度合いが予め定められた基準よりも低いことになる。
 なお、確信度が予め定められた範囲内でなければ、データ選択部137は、推論結果を示す推論結果データのみを活用側送信部138に与える。
 ここで、データ選択部137が算出する確信度についても、上記と同様に画像分類の場合と、物体検出の場合との二通りの場合について定義する。
 活用側第二ネットワークで行う推論が画像分類である場合には、活用側第二ネットワークの中間出力の確信度は、定性的には図3(A)に示されているように、中間出力において特定のクラスで確率が十分に高く、他のクラスの確率が低い場合に高いといえる。
 逆に、図3(B)に示されているように、確率最大となるようなクラスでの確率が低く、かつ、クラス間での確率の差が少ない場合には、活用側第二ネットワークの中間出力の確信度は、低いと言える。
 言い換えると、中間出力において特定クラスへの偏りが大きい場合に、ニューラルネットワークの出力の確信度が高く、逆に偏りが少ない場合に確信度が低いといえる。
 従って、例えば、確率分布の最大値を確信度として定義し、確信度の予め定められた範囲を、0%以上、100%をクラス数で割った値のN倍以下、と定めることができる。Nの値は、ユーザによって任意に、又は、システムの設置環境において実験的に定められる。
 または、例えば、確率の最高値と、二番目に高い確率の値との差を確信度として定義し、確信度の予め定められた範囲を0%以上、x%以下と定めてもよい。xの値は、ユーザによって任意に、又は、システムの設置環境において実験的に定められる。
 さらに、例えば、中間出力である確率分布における統計分散の値、即ち、各クラスにおける確率と、クラス確率平均値との差分の2乗の合計値を確信度と定義し、確信度の予め定められた範囲を0%以上、y%以下と定めてもよい。yの値は、ユーザによって任意に、又は、システムの設置環境において実験的に定められる。
 以上の他、中間出力において特定クラスへの偏りを示す尺度は、全て確信度となり得る。
 活用側第二ネットワークで行う推論が物体検出である場合には、活用側第二ネットワークが出力する結果の確信度は、例えば、対象画像上の物体存在確率分布の値から定義できる。図4に示されているように、物体存在確率分布において存在確率が0%に近い箇所AR1、AR2、AR3では、物体が存在しない確信度が高いと判断できる。逆に、存在確率が100%に近い箇所AR4では、物体がその位置に存在する確信度が高いと判断できる。一方、存在確率が50%付近である箇所AR5では、その位置に物体が存在する確信度と、存在しない確信度とが半々である、言い換えると、物体である確信度が低いと判断することができる。
 従って、物体存在確率分布の各位置における存在確率から50%を引いた値の絶対値の最小値を推論結果の確信度として定義し、例えば、確信度の予め定められた範囲をz%以下、言い換えると、すなわち、存在確率が(50-z)%以上(50+z)%以下と、定めることができる。zの値は、ユーザによって任意に、又は、システムの設置環境において実験的に定めることができる。
 図1に戻り、活用側送信部138は、データ選択部137から渡されたデータを学習装置110へ送信する送信部である。
 以上に記載された活用装置130は、図5に示されているようなコンピュータ160により実現することができる。
 図5は、コンピュータ160の構成を概略的に示すブロック図である。
 コンピュータ160は、通信装置161と、補助記憶装置162と、接続装置163と、メモリ164と、プロセッサ165とを備える。
 通信装置161は、学習装置110との間で通信を行う。例えば、学習装置110と、活用装置130とがネットワークに接続されている場合には、通信装置161は、NICにより実現することができる。
 補助記憶装置162は、活用装置130での処理に必要なデータ及びプログラムを記憶する。例えば、補助記憶装置162は、HDD又はSSDにより実現することができる。
 接続装置163は、カメラ等の撮像装置を接続し、その撮像装置との間でデータを送受信する。接続装置163は、USB(Universal Serial Bus)等の接続インターフェースにより実現することができる。
 メモリ164は、データ又はプログラムを一時的に記憶して、プロセッサ165の作業領域を提供する。メモリ164は、揮発性メモリ又は不揮発性メモリで実現することができる。
 プロセッサ165は、補助記憶装置162に記憶されているプログラムをメモリ164に読み出して、そのプログラムを実行することで、学習装置110での処理を実行する。プロセッサ165は、例えば、CPUにより実現することができる。
 例えば、入力部134は、接続装置163により実現することができる。
 活用側送信部138は、通信装置161により実現することができる。
 活用側記憶部133は、補助記憶装置162により実現することができる。
 適用部132、活用側推論部136、データ取得部135及びデータ選択部137は、プロセッサ165が補助記憶装置162に記憶されているプログラムをメモリ164に読み出して、そのプログラムを実行することにより実現することができる。
 図5では、活用装置130がコンピュータ160である例を示したが、実施の形態1はこのような例に限定されない。例えば、入力部134が撮像部として機能する場合には、活用装置130は、コンピュータ160の代わりにカメラにより実現することができる。カメラは、図5に示されているコンピュータ160において、接続装置163の代わりに、撮像素子を備える撮像装置が備えられていればよい。
 続いて、システム全体の処理の流れについて説明する。
 基本的な処理の流れに入る前に、システム上必要な初期処理を、図6を用いて説明する。
 図6は、実施の形態1に係る学習活用システム100の初期処理を示すフローチャートである。
 まず、ステップS10では、学習装置110において、通常アプリの要件を満たすように設計された第一ネットワーク及び学習側第二ネットワークが学習側記憶部113に記憶され、学習側推論部114及び学習部115が、既知の学習データを用いて、第一ネットワーク及び学習側第二ネットワークを学習する。また、活用装置130においても、通常アプリの要件を満たすように設計された活用側第二ネットワークが活用側記憶部133に記憶される。
 既知の学習データは、所望の認識結果が得られるように作成された、画像データと正解となる情報とのペアである。
 なお、ここでは、学習装置110において学習する例を示したが、別途用意された学習装置で学習が行われてもよい。
 次に、ステップS11では、学習部115は、学習側第二ネットワークにおいて更新された重み係数である更新重み係数を示す更新重み係数情報を生成して、学習側送信部116を介して、その更新重み係数情報を活用装置130に送信する。活用装置130の適用部132は、活用側受信部131を介して、更新重み係数情報を取得して、活用側記憶部133に記憶されている活用側第二ネットワークへ、受信された更新重み係数情報で示される更新重み係数を適用する。
 ここでは、適用部132が、更新重み係数情報で示される更新重み係数を活用側第二ネットワークに適用する例を示したが、別途用意されたプログラムを実行することで実現される機能部(例えば、設定部等)が、更新重み係数情報で示される更新重み係数を活用側第二ネットワークに適用してもよい。
 次に、ステップS12では、活用装置130が、通常アプリを実行する要求に従って決められた設置位置に設置される。
 以上が初期処理の流れである。
 なお、ステップS10では、第一ネットワーク及び学習側第二ネットワークのそれぞれが、既知の学習データを用いて独立に学習されているが、実施の形態1は、このような例に限定されない。例えば、まず、既知の学習データを用いて第一ネットワークが学習され、次に、公知の知識蒸留の技術を用いて学習側第二ネットワークが学習されてもよい。
 また、図6ではステップS11の後に、活用装置130がそれぞれの設置位置に設置されるとしたが、実施の形態1は、このような例に限定されない。例えば、活用装置130をそれぞれの設置位置に設置した後に、活用側第二ネットワークに更新重み係数が適用されてもよい。
 図7は、活用装置130での推論及びデータ選別処理を示すフローチャートである。
 まず、データ取得部135は、入力部134を介して、推論対象となる画像データを取得する(S20)。ここでは、データ取得部135は、画像データを周期的に取得するものとする。なお、その周期は、通常アプリの用途に応じて定められるものとする。取得された画像データは、活用側推論部136及びデータ選択部137に与えられる。
 次に、活用側推論部136は、取得された画像データに対して、活用側第二ネットワークを用いて推論を実施する(S21)。活用側推論部136は、推論を実施した後、その推論結果の最終出力と中間出力とをデータ選択部137に与える。
 次に、データ選択部137は、推論結果の中間出力から確信度を算出する(S22)。
 そして、データ選択部137は、算出された確信度が予め定められた範囲内であるか否かを判断する(S23)。算出された確信度が予め定められた範囲内である場合(S23でYes)には、処理はステップS24に進み、算出された確信度が予め定められた範囲内ではない場合(S23でNo)には、処理はステップS25に進む。
 ステップS24では、データ選択部137は、活用側送信部138を介して、画像データ及び推論結果を示す推論結果データを学習装置110に送る。
 確信度が予め定められた範囲内にある場合には、確信度が不十分である。このため、活用側第二ネットワークは、特にその画像データに対して十分な判断を下させていないとみなすことができる。従って、データ選択部137は、推論対象の画像データを追加学習用に使用できるよう、学習装置110に与える。この際、通常アプリで使用するための最終出力も送信される。送信後、処理はステップS20に戻り、データ取得部135が次の画像データを取得するまで、待機が行われる。
 一方、ステップS25では、データ選択部137は、活用側送信部138を介して、推論結果を示す推論結果データを学習装置110に送る。
 確信度が予め定められた範囲内にない場合、確信度が十分である。このため、活用側第二ネットワークは、画像データに対して十分な判断を下せているとみなすことができる。従って、データ選択部137は、最終出力のみを学習装置110に与える。
 図8は、学習装置110での第二ネットワークの再学習処理を示すフローチャートである。
 まず、学習側受信部111は、活用装置130からのデータを受信する(S30)。受信されたデータは、データ処理部112に与えられる。
 そして、データ処理部112は、学習側受信部111から与えられたデータに含まれている推論結果データを通常アプリに与え、通常アプリは、その推論結果データを用いて処理を実行する(S31)。
 次に、データ処理部112は、学習側受信部111から与えられたデータに画像データが含まれているか否かを判断する(S32)。画像データが含まれている場合(S32でYes)には、処理はステップS33に進み、画像データが含まれていない場合(S32でNo)には、処理はステップS30に戻る。
 ステップS33では、データ処理部112は、学習側受信部111から与えられたデータに含まれている画像データを学習側推論部114に与え、学習側推論部114は、その画像データに基づいて、学習側記憶部113に記憶されている第一ネットワークを用いて推論を実行する。学習側推論部114は、その推論結果と、画像データとのペアを学習データとして、学習部115に与える。ここでの学習データは、推論の中間出力であってもよく、また、推論の中間出力が含まれていてもよい。
 次に、学習部115は、学習側推論部114から与えられる学習データを用いて、学習側第二ネットワークを再学習する(S34)。なお、学習データに中間出力が含まれている場合には、学習部115は、その中間出力をターゲットとして学習側第二ネットワークの重み係数を更新してもよい。これは、公知の知識蒸留による学習に該当する。
 次に、学習部115は、更新後の重み係数を学習側第二ネットワークから取り出し、取り出された重み係数を示す更新重み係数情報を生成し、その更新重み係数情報を、学習側送信部116を介して、活用装置130へ送る(S35)。
 その後、再度、学習側受信部111がデータを受信するまで、待機が行われる。
 なお、図8に示されているフローチャートでは、ステップS33からステップS35までの処理は、画像データ受信時に毎回行われるようになっているが、実施の形態1はこのような例に限定されない。例えば、受信された画像データを蓄積するデータ蓄積部を設けておくことで、画像データが一定数又は一定量蓄積されてから、ステップS33からステップS35までの処理が行われてもよい。このような場合には、学習側第二ネットワークを再学習する際に、学習データをバッチにまとめる形で実施することで学習処理を効率化できる効果がある。
 図9は、活用装置130側での更新重み係数の適用処理を示すフローチャートである。
 活用側受信部131は、学習装置110からの更新重み係数情報を受信する(S40)。受信された更新重み係数情報は、適用部132に与えられる。
 次に、適用部132は、活用側受信部131から与えられた更新重み係数情報で示される更新重み係数で、活用側記憶部133に記憶されている活用側第二ネットワークの対応箇所の重み係数を置き換えることで、更新重み係数を第二ネットワークへ適用する(S41)。
 適用後、活用側受信部131が次の更新重み係数情報を受信するまで、待機が行われる。
 以上が実施の形態1における、活用装置130を高精度化する流れである。
 なお、前述した確信度の定義及び中間出力の定義については、あくまでも一例である。
実施の形態2.
 図10は、実施の形態2に係る学習活用システム200の構成を概略的に示すブロック図である。
 実施の形態2でも、学習活用システム200が画像認識を行う画像認識システムとして使用される例を説明する。
 学習活用システム200は、学習装置210と、複数の活用装置230とを備える。
 実施の形態2では、一つの学習装置210に対して、複数の活用装置230が設けられている構成を説明する。このような場合、学習装置210は、活用装置230毎に学習用第二ネットワークを管理し、受信されるデータも活用装置230毎に管理することが望ましい。なお、活用装置230から学習装置210に送るデータには、そのデータを生成した活用装置230を識別するための活用装置識別情報である識別符号が含まれているものとする。なお、複数の活用装置230は、同様に構成されているものとする。
 学習装置210は、学習側受信部111と、データ処理部112と、学習側記憶部213と、学習側推論部114と、学習部215と、学習側送信部216とを備える。
 実施の形態2における学習装置210の学習側受信部111、データ処理部112及び学習側推論部114は、実施の形態1における学習装置110の学習側受信部111、データ処理部112及び学習側推論部114と同様である。
 学習側記憶部213は、学習済の第一ネットワーク及び学習済の学習側第二ネットワークを記憶する。ここで、第一ネットワークを学習用ネットワークともいい、学習側第二ネットワークを学習側推論ネットワークともいう。
 実施の形態2においては、学習側記憶部213は、活用装置230毎に学習側第二ネットワークを記憶する。例えば、活用装置230の識別符号に対応付けて学習側第二ネットワークが記憶されている。
 学習部215は、学習側推論部114から得られた学習データを用いて、学習データに含まれている画像データの送信元の活用装置230に対応する学習側第二ネットワークにその画像データを入力した出力と、その学習データに含まれている推論結果とが一致するように、その学習側第二ネットワークの持つ重み係数を更新する。ここでは、画像データに送信元の活用装置230の識別符号が含まれているため、学習部215は、その識別符号に対応付けられている学習側第二ネットワークを使用する。そして、学習部215は、更新された重み係数である更新重み係数を示す更新重み係数情報を生成する。
 学習部215は、生成された更新重み係数情報を、その送信先を示す情報とともに学習側送信部216に与える。送信先は、学習側第二ネットワークの再学習に用いられた画像データの送信元の活用装置230である。例えば、学習部215は、そのような活用装置230の識別符号を学習側送信部216に与える。
 学習側送信部216は、学習部215から与えられた学習側第二ネットワークの更新重み係数情報を、学習部215から指示された送信先である活用装置230に送信する。
 活用装置230は、活用側受信部131と、適用部132と、活用側記憶部133と、入力部134と、データ取得部135と、活用側推論部136と、データ選択部237と、活用側送信部138とを備える。
 実施の形態2における活用装置230の活用側受信部131、適用部132、活用側記憶部133、入力部134、データ取得部135、活用側推論部136及び活用側送信部138は、実施の形態1における活用装置130の活用側受信部131、適用部132、活用側記憶部133、入力部134、データ取得部135、活用側推論部136及び活用側送信部138と同様である。
 データ選択部237は、活用側推論部136の推論結果と、推論対象の画像データとを対応付け、推論対象の画像データに対する確信度を算出するとともに、確信度が予め定められた範囲内にある場合には、推論結果を示す推論結果データと、画像データとを活用側送信部138に与える。ここで、予め定められた範囲は、確信度の最低値を含む範囲である。
 なお、確信度が予め定められた範囲内でなければ、データ選択部237は、推論結果を示す推論結果データのみを活用側送信部138に与える。
 ここで、データ選択部237は、画像データ及び推論結果データに、活用装置230の識別符号を追加する。
 次に、実施の形態2での動作について説明する。
 なお、学習処理を開始する前の初期処理については、図6に示されている処理内容と同様である。但し、複数の活用装置230の全てにおいて、同様の処理が行われる。
 図11は、実施の形態2における活用装置230での推論及びデータ選別処理を示すフローチャートである。
 なお、図11に示されているフローチャートに含まれているステップにおいて、図7に示されているフローチャートに含まれているステップと同一の処理を行うステップについては、図7に示されているフローチャートに含まれているステップと同一の符号を付す。
 図11のステップS20~S23までの処理は、図7のステップS20~S23までの処理と同様である。
 但し、図11においては、ステップS23において、算出された確信度が予め定められた範囲内である場合(S23でYes)には、処理はステップS54に進み、算出された確信度が予め定められた範囲内ではない場合(S23でNo)には、処理はステップS55に進む。
 ステップS54では、データ選択部237は、画像データ及び推論結果示す推論結果データに活用装置230の識別符号を追加する。
 そして、処理はステップS24に進み、データ選択部237は、活用側送信部138を介して、画像データ及び推論結果データを学習装置210に送る。
 一方、ステップS55では、データ選択部237は、推論結果示す推論結果データに活用装置230の識別符号を追加する。
 そして、処理はステップS25に進み、データ選択部237は、活用側送信部138を介して、推論結果データを学習装置210に送る。
 図12は、実施の形態2における学習装置210での第二ネットワークの再学習処理を示すフローチャートである。
 なお、図12に示されているフローチャートに含まれているステップにおいて、図8に示されているフローチャートに含まれているステップと同一の処理を行うステップについては、図8に示されているフローチャートに含まれているステップと同一の符号を付す。
 図12のステップS30~S33までの処理は、図8のステップS30~S33までの処理と同様である。
 但し、図12においては、ステップS33の後に、処理はステップS64に進む。
 ステップS64では、学習部215は、学習側推論部114から与えられる学習データに含まれている画像データに追加されている識別符号を特定することで、その画像データの送信元の活用装置230を特定する。
 次に、学習部215は、学習側推論部114から与えられる学習データを用いて、特定された活用装置230の学習側第二ネットワークを再学習する(S65)。
 次に、学習部215は、更新後の重み係数を学習側第二ネットワークから取り出し、取り出された重み係数を示す更新重み係数情報を生成し、その更新重み係数情報を、学習側送信部116を介して、特定された活用装置230へ送る(S66)。
 その後、再度、学習側受信部111がデータを受信するまで、待機が行われる。
 以上が実施の形態2における、複数の活用装置230を高精度化する流れである。
 実施の形態2で説明した構成により、各活用装置230が各設置場所で取得したデータを学習していくことで、各活用装置230の活用側推論部136が設置場所に特化された推論部として成長するため、活用装置230の認識率がより高精度になる。
 なお、以上の実施の形態1及び2では、対象データは、画像データであり、活用側第二ネットワーク、第一ネットワーク及び学習側第二ネットワークは、画像データから画像認識を行うための学習済モデルとして説明した。
 具体的には、活用側第二ネットワーク、第一ネットワーク及び学習側第二ネットワークは、画像データから画像を認識し、認識された画像を分類するための学習済モデル、又は、画像データから画像を認識し、認識された画像から物体を検出するための学習済モデルである例を示した。しかしながら、実施の形態1又は2は、このような例に限定されず、他の推論を行うように構成されていてもよい。
 100,200 学習活用システム、 110,210 学習装置、 111 学習側受信部、 112 データ処理部、 113,213 学習側記憶部、 114 学習側推論部、 115,215 学習部、 116,216 学習側送信部、 130,230 活用装置、 131 活用側受信部、 132 適用部、 133 活用側記憶部、 134 入力部、 135 データ取得部、 136 活用側推論部、 137,237 データ選択部、 138 活用側送信部。

Claims (12)

  1.  活用装置と、学習装置とを備える学習活用システムであって、
     前記活用装置は、
     対象データを取得するデータ取得部と、
     前記活用装置での推論に使用するニューラルネットワークである活用側推論ネットワークを記憶する活用側記憶部と、
     前記活用側推論ネットワークを使用して、前記対象データから推論を行う活用側推論部と、
     前記活用側推論ネットワークによる推論結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断する判断部と、
     前記度合いが前記予め定められた基準よりも低い場合に、前記対象データを前記学習装置に送信する活用側送信部と、を備え、
     前記学習装置は、
     前記対象データを受信する学習側受信部と、
     前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワーク、及び、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを記憶する学習側記憶部と、
     前記学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成する学習側推論部と、
     前記学習データを用いて、前記学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、前記更新された重み係数を示す更新重み係数情報を生成する学習部と、
     前記更新重み係数情報を前記活用装置に送信する学習側送信部と、を備え、
     前記活用装置は、
     前記更新重み係数情報を受信する活用側受信部と、
     前記更新重み係数情報で示される前記更新された重み係数を、前記活用側推論ネットワークに適用する適用部と、をさらに備えること
     を特徴とする学習活用システム。
  2.  前記判断部は、前記度合いを示す確信度を算出し、前記確信度が予め定められた範囲内にある場合に、前記度合いが前記基準よりも低いと判断すること
     を特徴とする請求項1に記載の学習活用システム。
  3.  前記学習用ネットワークの中間層及び重み係数の数は、前記活用側推論ネットワークの中間層及び重み係数の数よりも多いこと
     を特徴とする請求項1又は2に記載の学習活用システム。
  4.  前記対象データは、画像データであり、前記活用側推論ネットワーク、前記学習用ネットワーク及び前記学習側推論ネットワークは、前記画像データから画像認識を行うための学習済モデルであること
     を特徴とする請求項1から3の何れか一項に記載の学習活用システム。
  5.  前記対象データは、画像データであり、前記活用側推論ネットワーク、前記学習用ネットワーク及び前記学習側推論ネットワークは、前記画像データから画像を認識し、前記認識された画像を分類するための学習済モデルであること
     を特徴とする請求項1から3の何れか一項に記載の学習活用システム。
  6.  前記対象データは、画像データであり、前記活用側推論ネットワーク、前記学習用ネットワーク及び前記学習側推論ネットワークは、前記画像データから画像を認識し、前記認識された画像から物体を検出するための学習済モデルであること
     を特徴とする請求項1から3の何れか一項に記載の学習活用システム。
  7.  複数の前記活用装置を備え、
     前記学習側記憶部は、前記複数の活用装置の各々に対応する複数の前記学習側推論ネットワークを記憶し、
     前記学習側受信部が、前記複数の活用装置に含まれる一つの活用装置から前記対象データを受信した場合に、前記学習部は、前記複数の学習側推論ネットワークの内、前記一つの活用装置に対応する学習側推論ネットワークを再学習することで、前記更新重み係数情報を生成し、前記学習側送信部は、前記一つの活用装置に前記更新重み係数情報を送信すること
     を特徴とする請求項1から6の何れか一項に記載の学習活用システム。
  8.  対象データを取得するデータ取得部と、
     推論に使用するニューラルネットワークである活用側推論ネットワークを記憶する活用側記憶部と、
     前記活用側推論ネットワークを使用して、前記対象データから推論を行う活用側推論部と、
     前記活用側推論ネットワークによる推論結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断する判断部と、
     前記度合いが前記予め定められた基準よりも低い場合に、前記対象データを学習装置に送信する活用側送信部と、
     前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワークを使用して前記対象データから推論を行うことで生成され、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを用いて、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを再学習して、前記学習側推論ネットワークの重み係数を更新することで生成され、前記更新された重み係数を示す更新重み係数情報を、前記学習装置から受信する活用側受信部と、
     前記更新重み係数情報で示される前記更新された重み係数を、前記活用側推論ネットワークに適用する適用部と、を備えること
     を特徴とする活用装置。
  9.  活用装置から、前記活用装置での推論の対象となる対象データを受信する学習側受信部と、
     前記活用装置での推論に使用するニューラルネットワークである活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワーク、及び、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを記憶する学習側記憶部と、
     前記学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成する学習側推論部と、
     前記学習データを用いて、前記学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、前記更新された重み係数を示す更新重み係数情報を生成する学習部と、
     前記更新重み係数情報を前記活用装置に送信する学習側送信部と、を備えること
     を特徴とする学習装置。
  10.  コンピュータを、
     対象データを取得するデータ取得部、
     推論に使用するニューラルネットワークである活用側推論ネットワークを記憶する活用側記憶部、
     前記活用側推論ネットワークを使用して、前記対象データから推論を行う活用側推論部、
     前記活用側推論ネットワークによる推論結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断する判断部、
     前記度合いが前記予め定められた基準よりも低い場合に、前記対象データを学習装置に送信する活用側送信部、
     前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワークを使用して前記対象データから推論を行うことで生成され、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを用いて、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを再学習して、前記学習側推論ネットワークの重み係数を更新することで生成され、前記更新された重み係数を示す更新重み係数情報を、前記学習装置から受信する活用側受信部、及び、
     前記更新重み係数情報で示される前記更新された重み係数を、前記活用側推論ネットワークに適用する適用部、として機能させること
     を特徴とするプログラム。
  11.  コンピュータを、
     活用装置から、前記活用装置での推論の対象となる対象データを受信する学習側受信部、
     前記活用装置での推論に使用するニューラルネットワークである活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワーク、及び、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを記憶する学習側記憶部、
     前記学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成する学習側推論部、
     前記学習データを用いて、前記学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、前記更新された重み係数を示す更新重み係数情報を生成する学習部、及び、
     前記更新重み係数情報を前記活用装置に送信する学習側送信部、として機能させること
     を特徴とするプログラム。
  12.  対象データを取得し、
     推論に使用するニューラルネットワークである活用側推論ネットワークを使用して、前記対象データから推論を行い、
     前記推論の結果の確からしさの度合いが、予め定められた基準よりも低いか否かを判断し、
     前記度合いが前記予め定められた基準よりも低い場合に、前記活用側推論ネットワークの教師モデルとして機能するニューラルネットワークである学習用ネットワークを使用して、前記対象データから推論を行うことで、前記対象データと、前記学習用ネットワークによる推論結果とを含む学習データを生成し、
     前記学習データを用いて、前記活用側推論ネットワークと同じネットワーク構造を有するニューラルネットワークである学習側推論ネットワークを再学習することで、前記学習側推論ネットワークの重み係数を更新し、
     前記更新された重み係数を、前記活用側推論ネットワークに適用すること
     を特徴とする学習活用方法。
PCT/JP2020/028859 2020-07-28 2020-07-28 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法 WO2022024211A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US18/009,333 US20230260270A1 (en) 2020-07-28 2020-07-28 Learning utilization system, utilizing device, learning device, non-transitory computer-readable medium, and learning utilization method
DE112020007472.2T DE112020007472T5 (de) 2020-07-28 2020-07-28 Lernnutzungssystem, nutzungsvorrichtung, lernvorrichtung, programm und lernnutzungsverfahren
JP2022539827A JP7438365B2 (ja) 2020-07-28 2020-07-28 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法
PCT/JP2020/028859 WO2022024211A1 (ja) 2020-07-28 2020-07-28 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法
CN202080104892.3A CN116134447A (zh) 2020-07-28 2020-07-28 学习活用系统、活用装置、学习装置、程序和学习活用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/028859 WO2022024211A1 (ja) 2020-07-28 2020-07-28 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法

Publications (1)

Publication Number Publication Date
WO2022024211A1 true WO2022024211A1 (ja) 2022-02-03

Family

ID=80037792

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/028859 WO2022024211A1 (ja) 2020-07-28 2020-07-28 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法

Country Status (5)

Country Link
US (1) US20230260270A1 (ja)
JP (1) JP7438365B2 (ja)
CN (1) CN116134447A (ja)
DE (1) DE112020007472T5 (ja)
WO (1) WO2022024211A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023199437A1 (ja) * 2022-04-13 2023-10-19 株式会社Nttドコモ 端末、無線通信方法及び基地局

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220237414A1 (en) * 2021-01-26 2022-07-28 Nvidia Corporation Confidence generation using a neural network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019152948A (ja) * 2018-03-01 2019-09-12 日本電気株式会社 画像判定システム、モデル更新方法およびモデル更新プログラム
WO2019229977A1 (ja) * 2018-06-01 2019-12-05 株式会社 東芝 推定システム、推定方法及び推定プログラム
JP2020086738A (ja) * 2018-11-21 2020-06-04 沖電気工業株式会社 情報処理装置および情報処理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017145960A1 (ja) 2016-02-24 2017-08-31 日本電気株式会社 学習装置、学習方法および記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019152948A (ja) * 2018-03-01 2019-09-12 日本電気株式会社 画像判定システム、モデル更新方法およびモデル更新プログラム
WO2019229977A1 (ja) * 2018-06-01 2019-12-05 株式会社 東芝 推定システム、推定方法及び推定プログラム
JP2020086738A (ja) * 2018-11-21 2020-06-04 沖電気工業株式会社 情報処理装置および情報処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YOSHISAKU, KIYOHIKO ET AL.: "ALATA : An Active Learning-based Annotation Tool for Activity Recognition Systems.", IEICE TECHNICAL REPORT FY2011 (2), 15 August 2011 (2011-08-15) *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023199437A1 (ja) * 2022-04-13 2023-10-19 株式会社Nttドコモ 端末、無線通信方法及び基地局

Also Published As

Publication number Publication date
JPWO2022024211A1 (ja) 2022-02-03
US20230260270A1 (en) 2023-08-17
CN116134447A (zh) 2023-05-16
DE112020007472T5 (de) 2023-05-11
JP7438365B2 (ja) 2024-02-26

Similar Documents

Publication Publication Date Title
AU2015215826B2 (en) A machine-learning system to optimise the performance of a biometric system
US8428310B2 (en) Pattern classification system and method for collective learning
US11087167B2 (en) First-person camera based visual context aware system
US20150092054A1 (en) Cascading video object classification
KR101876051B1 (ko) 기계 학습 시스템 및 그의 사용자 제어 패턴 학습 방법
US20210243226A1 (en) Lifelong learning based intelligent, diverse, agile, and robust system for network attack detection
CN114450700A (zh) 用于检测异常的方法和设备、相应的计算机程序产品和非暂时性计算机可读载体介质
WO2022024211A1 (ja) 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法
CN110414376B (zh) 更新人脸识别模型的方法、人脸识别相机及服务器
CN112202726B (zh) 一种基于上下文感知的系统异常检测方法
CN113328908B (zh) 异常数据的检测方法、装置、计算机设备和存储介质
CN110162939B (zh) 人机识别方法、设备和介质
US20220129758A1 (en) Clustering autoencoder
US20220129712A1 (en) Deep neural network hardener
CN116958769A (zh) 基于融合特征的翻越行为检测方法及相关装置
CN116502705A (zh) 兼用域内外数据集的知识蒸馏方法和计算机设备
US20220230028A1 (en) Determination method, non-transitory computer-readable storage medium, and information processing device
CN112651467B (zh) 卷积神经网络的训练方法和系统以及预测方法和系统
KR100621883B1 (ko) 학습에 기반을 둔 적응형 실시간 얼굴검출방법
WO2021033288A1 (ja) 認識システム、モデル処理装置、モデル処理方法、及び、記録媒体
JP2022066957A (ja) 異常検知方法、異常検知装置、及びプログラム
CN116366359B (zh) 一种工业控制网络的智能协同自进化防御方法及系统
CN115761396A (zh) 节点性质判断的方法及装置
CN117642778A (zh) 在传感器中产生基于数据的模型副本的计算机实施的方法、计算机程序和设备
KR20220073539A (ko) 온라인 학습 정책을 위한 강화학습 방법 및 장치

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022539827

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 20947611

Country of ref document: EP

Kind code of ref document: A1