WO2022113175A1 - 処理方法、処理システム及び処理プログラム - Google Patents

処理方法、処理システム及び処理プログラム Download PDF

Info

Publication number
WO2022113175A1
WO2022113175A1 PCT/JP2020/043686 JP2020043686W WO2022113175A1 WO 2022113175 A1 WO2022113175 A1 WO 2022113175A1 JP 2020043686 W JP2020043686 W JP 2020043686W WO 2022113175 A1 WO2022113175 A1 WO 2022113175A1
Authority
WO
WIPO (PCT)
Prior art keywords
inference
learning
dnn2
dnn1
model
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2020/043686
Other languages
English (en)
French (fr)
Inventor
旭 史
昇平 榎本
毅晴 江田
啓 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to US18/038,211 priority Critical patent/US20240095581A1/en
Priority to JP2022564857A priority patent/JP7586191B2/ja
Priority to PCT/JP2020/043686 priority patent/WO2022113175A1/ja
Publication of WO2022113175A1 publication Critical patent/WO2022113175A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00—Computing arrangements based on biological models
    • G06N3/02—Neural networks
    • G06N3/04—Architecture, e.g. interconnection topology
    • G06N3/045—Combinations of networks
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00—Machine learning
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00—Computing arrangements based on biological models
    • G06N3/02—Neural networks
    • G06N3/08—Learning methods
    • G06N3/098—Distributed learning, e.g. federated learning
    • G—PHYSICS
    • G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00—IoT characterised by the purpose of the information processing
    • G16Y40/30—Control

Definitions

  • the present invention relates to a processing method, a processing system and a processing program.
  • resources such as the calculation amount and memory of the device used in the edge device are referred to as a device other than the edge device (hereinafter, for convenience, cloud) which is physically and logically located farther from the user than the edge device. ), It is poor. For this reason, if a process with a large computational load is performed by an edge device, it may take a large amount of time to complete the process, or it may take a long time to complete other processes that do not have a large computational load. There is.
  • Non-Patent Document 1 proposes application of so-called adaptive learning to the edge cloud. That is, in the method described in Non-Patent Document 1, a trained model trained using general-purpose training data in the cloud is expanded on an edge device, and learning is performed in the cloud using the data acquired by the edge device. By re-learning the model for which the above was performed, the operation that takes advantage of the cloud and the edge device is realized.
  • the system administrator checks all the data acquired during operation, and which data is used and when to relearn the model for each model. It was necessary to perform a complicated process of determining the above and arranging the re-learning process of the model.
  • the present invention has been made in view of the above, and is a processing method, processing system and processing capable of appropriately retraining a model placed on an edge and a cloud and maintaining the accuracy of the model.
  • the purpose is to provide a program.
  • the processing method according to the present invention is a processing method executed by a processing system that performs the first inference in the edge device and the second inference in the server device. Whether or not the tendency of the target data group to be inferred has changed in at least one of the edge device and the server device based on the fluctuation of the load or the decrease in the inference accuracy in at least one of the edge device and the server device. At least one of the first model for making the first inference and the second model for making the second inference when it is determined in the determination step that the tendency of the target data group has changed in the determination step. It is characterized by having a re-learning step of performing one of the re-learning.
  • FIG. 1 is a diagram illustrating an outline of a processing method of the processing system according to the embodiment.
  • FIG. 2 is a diagram illustrating an example of DNN1 and DNN2.
  • FIG. 3 is a diagram schematically showing an example of the configuration of the processing system according to the embodiment.
  • FIG. 4 is a diagram showing the relationship between the offload rate and the overall accuracy.
  • FIG. 5 is a flowchart showing a processing procedure of the learning data generation processing in the embodiment.
  • FIG. 6 is a flowchart showing a processing procedure of the relearning determination process for DNN1 in the embodiment.
  • FIG. 7 is a flowchart showing a processing procedure of the relearning determination process for DNN2 in the embodiment.
  • FIG. 8 is a diagram showing an example of a computer in which an edge device and a server device are realized by executing a program.
  • FIG. 1 is a diagram illustrating an outline of a processing method of the processing system according to the embodiment.
  • the processing system of the embodiment constitutes a model cascade using a high-precision model and a lightweight model.
  • an edge device using a high-speed and low-precision lightweight model for example, DNN1 (first model)
  • a low-speed and high-precision high-precision model for example, DNN2 (second model)
  • a server device is a device that is physically and logically located far from the user.
  • the edge device is an IoT device and various terminal devices that are physically and logically close to the user, and has less resources than a server device.
  • DNN1 and DNN2 are models that output inference results based on the input processing target data.
  • DNN1 and DNN2 take an image as an input and infer the probability of each class of the object appearing in the image.
  • the two images shown in FIG. 1 are both the same image.
  • the processing system acquires the degree of certainty about the inference of the DNN1 classification for the object shown in the input image.
  • the degree of certainty is the degree of certainty that the result of subject recognition by DNN1 is correct.
  • the certainty may be the probability of the class of the object in the image output by DNN1, for example the probability of the highest class.
  • the inference result of DNN1 is adopted. That is, the inference result of the lightweight model is output as the final estimation result of the model cascade.
  • the certainty is less than a predetermined threshold value
  • the inference result obtained by inputting the same image into DNN2 is output as the final inference result.
  • the processing system selects the edge device or the server device based on the certainty as to whether the edge device or the server device should process the processing target data, and selects the processing target data. To process.
  • FIG. 2 is a diagram illustrating an example of DNN1 and DNN2.
  • the DNN has an input layer for inputting data, a plurality of intermediate layers for variously converting data input from the input layer, and an output layer for outputting so-called inferred results such as probability and likelihood.
  • the output value output from each layer may be irreversible if the input data needs to maintain anonymity.
  • the processing system may use independent DNN1 and DNN2, respectively.
  • DNN1 may be trained using the training data used in the training of DNN2.
  • DNN1 solves the same problem as DNN2 and is lighter than DNN2.
  • DNN1 has a first intermediate layer to a P (P ⁇ S) intermediate layer having fewer layers than the first intermediate layer to the S intermediate layer of DNN2.
  • DNN1 and DNN2 may be designed so that DNN2 has a deeper layer than DNN1.
  • darknet19 hereinafter referred to as YOLOv2
  • YOLOv3 darknet53
  • YOLOv3 darknet53
  • the same NN may be configured so that DNN1 and DNN2 have different depths. Any network may be used for DNN1 and DNN2, respectively.
  • CNN may be used.
  • the models placed on the edge and the cloud are appropriately re-learned, and the accuracy of the model is maintained. Can be planned.
  • FIG. 3 is a diagram schematically showing an example of the configuration of the processing system according to the embodiment.
  • the processing system 100 includes a server device 20 and an edge device 30. Further, the server device 20 and the edge device 30 are connected via the network N.
  • the network N is, for example, the Internet.
  • the server device 20 is a server provided in a cloud environment.
  • the edge device 30 is, for example, an IoT device and various terminal devices. In this embodiment, the case where the target data group to be processed in the server device 20 and the edge device 30 is an image group will be described as an example.
  • a predetermined program is read into a computer or the like including a ROM (Read Only Memory), a RAM (Random Access Memory), a CPU (Central Processing Unit), etc., and the CPU loads the predetermined program. It is realized by executing it.
  • so-called accelerators represented by GPUs, VPUs (Vision Processing Units), FPGAs (Field Programmable Gate Arrays), ASICs (Application Specific Integrated Circuits), and dedicated AI (Artificial Intelligence) chips are also used.
  • the server device 20 and the edge device 30 each have a NIC (Network Interface Card) or the like, and may communicate with other devices via a telecommunication line such as a LAN (Local Area Network) or the Internet. It is possible.
  • the server device 20 has an inference unit 21 that performs inference (second inference) using the trained high-precision model DNN2.
  • DNN2 contains information such as model parameters.
  • the inference unit 21 uses DNN2 to execute inference processing on the image output from the edge device 30.
  • the inference unit 21 uses the image output from the edge device 30 as the input of the DNN 2.
  • the inference unit 21 executes inference processing on the input image by using DNN2.
  • the inference unit 21 acquires an inference result (for example, a probability for each class of an object shown in an image) as an output of DNN2. It is assumed that the input image is an image whose label is unknown.
  • the inference result obtained by the inference unit 21 may be transmitted to the edge device 30 and returned to the user from the edge device 30.
  • the server device 20 and the edge device 30 form a model cascade. Therefore, the inference unit 21 does not always make inferences.
  • the reasoning unit 21 receives the input of the divided image determined to cause the server device 20 to execute the inference process in the edge device 30, and performs the inference by the DNN 2. Although it is described as an image here, it may be a feature amount extracted from the image instead of the image itself.
  • the edge device 30 has an inference unit 31 having a trained lightweight model DNN1 and a determination unit 32.
  • the inference unit 31 inputs an image to be processed into DNN1 and acquires an inference result.
  • the inference unit 31 executes inference processing (first inference) on the input image by using DNN1.
  • the inference unit 31 accepts the input of the image to be processed, processes the image to be processed, and outputs the inference result (for example, the probability for each class of the object appearing in the image).
  • the determination unit 32 determines whether to adopt the inference result of the edge device 30 or the server device 20 by comparing the certainty degree with a predetermined threshold value.
  • the edge device 30 determines whether or not the inference result inferred by the edge device 30 is adopted, and if it is determined not to adopt the inference result, the inference result of the server device 20 is adopted. It will be.
  • the determination unit 32 outputs the inference result inferred by the inference unit 31 when the certainty degree is equal to or higher than a predetermined threshold value. When the reliability is less than a predetermined threshold value, the determination unit 32 outputs the image to be processed to the server device 20, and determines that the inference process is executed by the DNN 2 arranged in the server device 20.
  • the processing system 100 provides, for example, a learning data generation unit 22, a learning data management unit 23, and a re-learning unit 24 in the server device 20 as functions related to the re-learning process for DNN1 and DNN2.
  • the learning data generation unit 22, the learning data management unit 23, and the re-learning unit 24 are not limited to the server device 20, but may be provided in another device capable of communicating with the server device 20 and the edge device 30. ..
  • the learning data generation unit 22 generates learning data to be used at the time of re-learning of DNN1 and DNN2 for each of DNN1 and DNN2.
  • the learning data generation unit 22 generates, as re-learning data, data having a large contribution to load fluctuation or reduction of inference accuracy among the image groups that have actually executed inference processing during operation.
  • the learning data generation unit 22 has a generation unit 221 and a correction unit 222.
  • the generation unit 221 associates the inference result of the image with the image inferred by the DNN2 as a label, and relearns the data for the edge of the edge device 30 with respect to the DNN1. Generate as. The label of this training data is given by automatic annotation.
  • the generation unit 221 may separately generate the learning data used at the time of re-learning of DNN1 and the data for testing. As the re-learning data of DNN1, all the data determined to be inferred on the server side may be targeted.
  • the correction unit 222 accepts the input of correction for the inference result by DNN2 of the input image.
  • This modification is a so-called manual annotation, and the administrator determines the image to be processed and corrects the inference result.
  • the modification is a process of modifying the inference result by executing an inference process using a mechanism different from DNN2.
  • the correction unit 222 transfers the data in which the corrected inference result (correct answer label) in which the inference result by the DNN2 of the image is modified is associated with the image in which the inference is executed in the DNN2 is associated with the data of the server device 20. Generated as cloud re-learning data for DNN2.
  • the correction unit 222 may separately generate the learning data used at the time of re-learning of DNN2 and the data for testing.
  • the learning data management unit 23 manages the learning data for re-learning of DNN1 and DNN2 generated by the learning data generation unit 22.
  • the learning data management unit 23 has a storage unit 231 and a selection unit 232.
  • the storage unit 231 stores the edge re-learning data for DNN1 generated by the learning data generation unit 22 in the edge re-learning data database (DB) 251. When there are a plurality of DNN1s, the storage unit 231 stores the edge re-learning data separately for each DNN1. The storage unit 231 stores the cloud relearning data for DNN2 generated by the learning data generation unit 22 in the cloud relearning data DB 252. When there are a plurality of DNN2s, the storage unit 231 stores the cloud re-learning data separately for each DNN2.
  • DB edge re-learning data database
  • the selection unit 232 extracts the re-learning data according to the request from the edge re-learning data DB 251 or the cloud re-learning data DB 252. Output to the re-learning unit 24.
  • the re-learning unit 24 executes re-learning of at least one of DNN1 and DNN2.
  • the re-learning unit 24 has a re-learning determination unit 241 (determination unit) for determining whether or not the re-learning of DNN1 or DNN2 can be executed, and a re-learning execution unit 242 (re-learning unit).
  • the relearning determination unit 241 performs inference in at least one of the edge device 30 and the server device 20 based on the fluctuation of the load or the decrease in the inference accuracy in at least one of the edge device 30 and the server device 20. Judge whether or not the tendency of has changed. Then, the re-learning determination unit 241 determines that the re-learning of DNN1 or DNN2 is executed when it is determined that the tendency of the image group has changed. The re-learning determination unit 241 relearns DNN1 or DNN2 depending on the change from the set value of the offload rate (processing rate in the server device 20), the decrease in inference accuracy, or the amount of training data held. Determine to execute.
  • the system administrator determines whether to perform re-learning based on the inference accuracy. This is because it is not always necessary to relearn DNN1 when the offload rate decreases. If the offload rate increases, it may be used as a trigger for re-learning DNN1.
  • the server device 20 instructs the execution of the re-learning according to the necessity of the re-learning determined in this way, and the re-learning determination unit 241 executes the re-learning of the DNN1 or the DNN2 according to the instruction.
  • DNN2 is often inferred for data offloaded from a plurality of DNN1, it is preferable to perform DNN2 based on a correction rate rather than an offload rate.
  • the re-learning execution unit 242 executes re-learning of at least one of DNN1 and DNN2.
  • the re-learning execution unit 242 executes re-learning of at least one of DNN1 and DNN2 by using the data having a large contribution to the fluctuation of the load or the decrease of the inference accuracy in the image group.
  • the re-learning execution unit 242 executes re-learning of DNN1 using the edge re-learning data as training data.
  • the re-learning execution unit 242 executes re-learning of DNN2 using the re-learning data for the cloud as learning data.
  • the re-learning execution unit 242 transmits the DNN1 that has been relearned from the DNN1 (or a model equivalent to the DNN1) to the edge device 30 and arranges it as a model on the edge side.
  • the re-learning execution unit 242 outputs the DNN2 that has been relearned from the DNN2 (or a model equivalent to the DNN2) to the inference unit 21 and arranges it as a model on the cloud side.
  • the DNN1 and DNN2 for use in relearning and the DNN1 and DNN2 after relearning are held in the server device 20 and held in another device capable of communicating with the edge device 30 and the server device 20. You may.
  • FIG. 4 is a diagram showing the relationship between the offload rate and the overall accuracy.
  • FIG. 4 is obtained by obtaining the change in the overall accuracy of the inference result due to the change in the offload rate based on the inference result during operation.
  • the threshold value is linked to the offload rate, and when the offload rate is lowered, the certainty threshold is raised.
  • “Offload rate 0” means that all data is processed by the edge device 30 and the accuracy (acc_origin) is low
  • “Offload rate 1” means that all data is processed by the server device 20.
  • the accuracy (acc_origin) is high.
  • the offload rate exceeds 0.4 (threshold value is 0.5)
  • the improvement in accuracy is small even if the offload rate is increased, that is, even if the threshold value of the certainty is lowered. Therefore, if the threshold of certainty is set to 0.5, it is considered that the offload rate (0.4) and the accuracy (0.75) are balanced. In other words, when the offload rate is 0.4, the certainty threshold is set to 0.5. In this way, by setting the threshold value according to the balance between the offload rate and the accuracy, it is possible to adjust the offload rate and the overall accuracy according to each use case.
  • the transmission amount transmitted from DNN1 to DNN2, that is, the transmission amount transmitted from the edge device 30 to the server device 20 may be used as an index value for obtaining the offload rate statistics. For example, if the inference process processed per unit time in the edge device 30, for example, inference of 5 frames per second is performed and the transmission amount corresponding to 2 frames is generated, the offload rate can be estimated to be 0.4. can. In this way, it is possible to obtain statistics on the offload rate and detect changes in the offload rate.
  • the re-learning determination unit 241 determines whether or not to perform re-learning of DNN1 or DNN2 based on the change from the set value of the offload rate, the decrease in inference accuracy, and the amount of learning data.
  • the re-learning determination unit 241 determines the execution of re-learning of the DNN 1 in the edge device 30 in the following cases.
  • the re-learning determination unit 241 determines the execution of re-learning of DNN1 when the offload rate changes from the set value. In this case, it is probable that the offload rate increased due to the change in the tendency of the image group to be inferred, and the number of processes in the server device 20 increased. That is, it is detected that the total calculation cost fluctuates as the number of processes in the server device 20 increases. In such a case, it is considered that the accuracy of DNN1 is lowered because the inference result in which the certainty of the inference result of DNN1 in the edge device 30 is lower than a predetermined threshold value increases.
  • the above setting value may be a setting range, and the execution of re-learning is determined in either case of a value above the setting range or a value below the setting range. May be good.
  • the re-learning determination unit 241 determines the execution of re-learning of DNN1 when the inference accuracy of DNN1 is lower than the predetermined accuracy. In this case, it is determined by the system administrator that the inference accuracy of DNN1 has deteriorated, and the execution of re-learning of DNN1 is instructed. Further, the re-learning determination unit 241 determines the execution of the re-learning of the DNN 1 when the edge re-learning data reaches the batch amount.
  • the re-learning determination unit 241 executes re-learning of DNN2 in the server device 20 in the following cases. Specifically, the re-learning determination unit 241 determines the execution of the re-learning of the DNN 2 when the inference accuracy of the DNN 2 is lower than the predetermined accuracy. In this case, it is determined by the system administrator that the inference accuracy of DNN2 has deteriorated, and the execution of re-learning of DNN2 is instructed.
  • the re-learning determination unit 241 determines the execution of the re-learning of the DNN 2 when the correction rate for the inference result of the DNN 2 by the correction unit 222 becomes a predetermined rate or more. This is because it is determined that the inference accuracy of DNN2 has deteriorated. Further, the re-learning determination unit 241 determines the execution of the re-learning of the DNN 2 when the re-learning data for the cloud reaches the batch amount.
  • FIG. 5 is a flowchart showing a processing procedure of the learning data generation processing in the embodiment.
  • the generation unit 221 acquires the inference result of DNN2 and the image in which the inference is executed in DNN2 (step S11). Subsequently, the generation unit 221 generates data in which the inference result by the DNN2 of the image is associated with the image executed in the DNN2 as a label as edge re-learning data (step S12), and the storage unit 231 generates the data. , Instructs storage in the edge re-learning data DB 251 (step S13).
  • the learning data generation unit 22 determines whether or not the input of the correction to the inference result of the DNN2 has been accepted (step S14). When the learning data generation unit 22 does not accept the input of the correction to the inference result by the DNN2 of the input image (step S14: No), the learning data generation unit 22 returns to the step S11.
  • the correction unit 222 corresponds the image in which the inference is executed in DNN2 with the corrected inference result (correct answer label) of the image.
  • the attached data is generated as cloud re-learning data for DNN2 of the server device 20 (step S15).
  • the correction unit 222 instructs the storage unit 231 to store this data in the cloud relearning data DB 252 (step S16).
  • FIG. 6 is a flowchart showing a processing procedure of the relearning determination process for DNN1 in the embodiment.
  • the re-learning determination unit 241 determines whether or not the offload rate has increased from the set value (step S21). When the offload rate has not increased from the set value (step S21: No), the re-learning determination unit 241 determines whether or not the inference accuracy of DNN1 is lower than the predetermined accuracy (step S22). When the inference accuracy of DNN1 is not lower than the predetermined accuracy (step S22: No), the re-learning determination unit 241 determines whether or not the edge re-learning data has reached the batch amount (step S23). When the edge re-learning data has not reached the batch amount (step S23: No), the re-learning determination unit 241 returns to step S21 and determines the change in the offload rate.
  • Step S21: Yes When the offload rate increases from the set value (step S21: Yes), or when the inference accuracy of DNN1 becomes lower than the predetermined accuracy (step S22: Yes), or the edge retraining data reaches the batch amount. (Step S23: Yes), the re-learning determination unit 241 determines the execution of the re-learning of the DNN 1 (step S24).
  • the re-learning execution unit 242 requests the selection unit 232 to output the edge re-learning data, so that the selection unit 232 selects the edge re-learning data (step S25) and the re-learning execution unit 242. Output to.
  • the re-learning execution unit 242 executes re-learning of DNN1 using this edge re-learning data as training data (step S26).
  • the re-learning execution unit 242 performs an accuracy test with the test data corresponding to DNN1 (step S27), and when the accuracy is improved (step S28: Yes), the offload rate and the certainty corresponding to the offload rate.
  • the threshold value of is set, and the relearned DNN1 is arranged as a model of the edge device 30 (step S29). If the accuracy of the relearned DNN1 is not improved (step S28: No), it is assumed that the inference accuracy of the DNN2 is also reduced. In such a case, the re-learning execution unit 242 returns to step S24 and relabels the heuristic, or uses data relabeled with a DNN different from DNN2 (for example, a higher load and higher precision DNN). DNN1 may be relearned. In such a case, DNN2 should be relearned in the same manner.
  • FIG. 7 is a flowchart showing a processing procedure of the relearning determination process for DNN2 in the embodiment.
  • the re-learning determination unit 241 determines whether or not the correction rate for the inference result of DNN2 by the correction unit 222 is equal to or higher than the predetermined rate (step S31). When the correction rate for the inference result of DNN2 by the correction unit 222 is not equal to or higher than the predetermined rate (step S31: No), the re-learning determination unit 241 determines whether or not the inference accuracy is lower than the predetermined accuracy. (Step S32). When the inference accuracy is not lower than the predetermined accuracy (step S32: No), the relearning determination unit 241 determines whether or not the cloud relearning data has reached the batch amount (step S33). When the cloud relearning data has not reached the batch amount (step S33: No), the relearning determination unit 241 returns to step S31 and makes a determination for the change in the offload rate.
  • step S31: Yes When the correction rate for the inference result of DNN2 by the correction unit 222 is equal to or higher than the predetermined rate (step S31: Yes), or when the inference accuracy is lower than the predetermined accuracy (step S32: Yes), or the cloud.
  • step S33: Yes When the re-learning data for use reaches the batch amount (step S33: Yes), the re-learning determination unit 241 determines the execution of re-learning of DNN2 (step S34).
  • the re-learning execution unit 242 requests the selection unit 232 to output the re-learning data for the cloud, so that the selection unit 232 selects the re-learning data for the cloud (step S35) and the re-learning execution unit 242. Output to.
  • the re-learning execution unit 242 executes re-learning of DNN2 using this cloud re-learning data as learning data (step S36).
  • the relearning execution unit 242 performs an accuracy test with the test data corresponding to the DNN2 (step S37), and when the accuracy is improved (step S38: Yes), the relearned DNN2 is arranged as a model of the server device 20. (Step S39). If the accuracy is not improved (step S38: No), the re-learning execution unit 242 proceeds to step S34 to execute re-learning.
  • At least one of the edge device 30 and the server device 20 is based on a load fluctuation or a decrease in inference accuracy in at least one of the edge device and the server device.
  • the processing system 100 relearns at least one of DNN1 and DNN2. Therefore, according to the processing system 100, the timing of re-learning can be determined for each of DNN1 and DNN2, and the re-learning of DNN1 and DNN2 can be automatically executed.
  • DNN1 and DNN2 are used among the image groups processed during the operation of the system, and at least one of DNN1 and DNN2 is used.
  • DNN1 and DNN2 are used in order to perform re-learning.
  • DNN1 and DNN2 by arranging these DNN1 and DNN2 in the edge device 30 and the server device 20, it is possible to maintain the accuracy of the models arranged in the edge and the cloud, respectively.
  • the image in which the inference processing is actually executed in DNN2 and the inference result by DNN2 of the image are used as training data to relearn DNN1.
  • an image that is actually inferred in DNN1 and is labeled with the inference result of DNN2 having higher accuracy than DNN1 is generated as edge re-learning data.
  • Re-learning of DNN1 is performed using this edge re-learning data. Therefore, the DNN 1 becomes a domain-specific model every time it is relearned, and the accuracy required for the edge device 30 can be appropriately maintained.
  • the image in which the inference processing is actually executed in DNN2 and the corrected inference result in which the inference result by DNN2 of the image is modified are added.
  • Re-learning of DNN2 is executed as learning data. That is, in DNN2, an image in which the inference performed in DNN2 was incorrect and an image with a correct answer label is generated as cloud re-learning data, and the cloud re-learning data is used to re-learn DNN2. Since learning is performed, the accuracy of DNN2 can be improved.
  • the models placed on the edge and the cloud are appropriately re-learned to maintain the accuracy of the model. Can be planned.
  • edge devices 30 or server devices 20 there may be a plurality of edge devices 30 or server devices 20, and there may be a plurality of edge devices 30 and server devices 20.
  • edge re-learning data is generated for each edge device 30
  • cloud re-learning data is generated for each server device 20, and each model is re-learned using the corresponding learning data. Run.
  • each component of each of the illustrated devices 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 them may be functionally or physically distributed / physically in arbitrary units according to various loads and usage conditions. Can be integrated and configured. Further, each processing function performed by each device may be realized by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware by wired logic.
  • FIG. 8 is a diagram showing an example of a computer in which the edge device 30 and the server device 20 are realized by executing a program.
  • the computer 1000 has, for example, a memory 1010 and a CPU 1020. Further, the accelerator described above may be provided to assist the calculation.
  • the computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. Each of these parts is connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012.
  • the ROM 1011 stores, for example, a boot program such as a BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 1030 is connected to the hard disk drive 1090.
  • the disk drive interface 1040 is connected to the disk drive 1100.
  • a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100.
  • the serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120.
  • the video adapter 1060 is connected to, for example, the display 1130.
  • the hard disk drive 1090 stores, for example, an OS (Operating System) 1091, an application program 1092, a program module 1093, and program data 1094. That is, the program that defines each process of the edge device 30 and the server device 20 is implemented as a program module 1093 in which a code that can be executed by a computer is described.
  • the program module 1093 is stored in, for example, the hard disk drive 1090.
  • the program module 1093 for executing the same processing as the functional configuration in the edge device 30 and the server device 20 is stored in the hard disk drive 1090.
  • the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
  • the setting data used in the processing of the above-described embodiment is stored as program data 1094 in, for example, a memory 1010 or a hard disk drive 1090. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 into the RAM 1012 and executes them as needed.
  • the program module 1093 and the program data 1094 are not limited to those stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). Then, the program module 1093 and the program data 1094 may be read from another computer by the CPU 1020 via the network interface 1070.
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

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

Abstract

処理システム(100)は、エッジ装置(30)において第1推論を行い、サーバ装置(20)において第2の推論を行う処理システムであって、エッジ装置(30)とサーバ装置(20)との少なくとも一方における、負荷の変動または推論精度の低下に基づいて、エッジ装置(30)とサーバ装置(20)との少なくとも一方において、推論を行う対象データ群の傾向が変化したか否かを判定する再学習判定部(241)と、再学習判定部(241)において対象データ群の傾向が変化したと判定された場合、第1の推論を行うDNN1と第2の推論を行うDNN2とのうち少なくともいずれか一方の再学習を実行する再学習実行部(242)と、を有する。

Description

処理方法、処理システム及び処理プログラム
 本発明は、処理方法、処理システム及び処理プログラムに関する。
 センサに代表されるIoTデバイスにより収集されたデータのデータ量は、膨大であるため、クラウドコンピューティングで収集されたデータを集約及び処理する際、膨大な通信量が発生する。このため、ユーザに近いエッジ装置でも、収集されたデータを処理するエッジコンピューティングに注目が集まっている。
 しかしながら、エッジ装置で用いられる装置の演算量やメモリ等のリソースは、エッジ装置よりもユーザから物理的及び論理的に遠くに配置されたエッジ装置以外の装置(以下、簡便のためクラウドと記載する)と比して、貧弱である。このため、演算負荷が大きい処理をエッジ装置で行うと、処理が完了するまでに多大な時間を要したり、演算量が大きくない他の処理が完了するまでにも時間を要したりする場合がある。
 ここで、演算量が大きい処理の一つに機械学習に係る処理が挙げられる。非特許文献1には、いわゆるアダプティブラーニングのエッジ・クラウドへの適用が提案されている。すなわち、非特許文献1に記載の方法は、クラウドで汎用的な学習データを用いて学習を行った学習済みモデルをエッジ装置に展開し、エッジ装置で取得されたデータを用いて、クラウドで学習を行ったモデルに対して再度学習を行うことでクラウドとエッジ装置との利点を活かした運用を実現している。
:大越他, "クラウド・エッジ連携によるDNNモデル運用方式の提案と評価", 第80回全国大会講演論文集 2018(1), 3-4, 2018-03-13.
 ここで、運用を続けていくと、時間の経過にともなって、モデルの精度が劣化する場合がある。このため、エッジ装置及びクラウドにそれぞれ配置されるモデルに再学習を実行させることで、必要な精度を維持する必要がある。しかしながら、モデルの再学習のためには、システムの管理者が、運用中に取得した全データを確認し、モデルごとに、どのデータを用いて、どのタイミングで、モデルの再学習を実行するかを判断し、モデルの再学習処理を手配するという、煩雑な処理を行う必要があった。
 本発明は、上記に鑑みてなされたものであって、エッジ及びクラウドにそれぞれ配置されるモデルの再学習を適切に実行し、モデルの精度の維持を図ることができる処理方法、処理システム及び処理プログラムを提供することを目的とする。
 上述した課題を解決し、目的を達成するために、本発明に係る処理方法は、エッジ装置において第1の推論を行い、サーバ装置において第2の推論を行う処理システムが実行する処理方法であって、エッジ装置とサーバ装置との少なくとも一方における、負荷の変動または推論精度の低下に基づいて、エッジ装置とサーバ装置との少なくとも一方において、推論を行う対象データ群の傾向が変化したか否かを判定する判定工程と、判定工程において対象データ群の傾向が変化したと判定された場合、第1の推論を行う第1のモデルと第2の推論を行う第2のモデルとのうち少なくともいずれか一方の再学習を実行する再学習工程と、を有することを特徴とする。
 本発明によれば、エッジ及びクラウドにそれぞれ配置されるモデルの再学習を適切に実行し、モデルの精度の維持を図ることができる。
図1は、実施の形態に係る処理システムの処理方法の概要を説明する図である。 図2は、DNN1及びDNN2の一例を説明する図である。 図3は、実施の形態に係る処理システムの構成の一例を模式的に示す図である。 図4は、オフロード率と全体精度との関係を示す図である。 図5は、実施の形態における学習データ生成処理の処理手順を示すフローチャートである。 図6は、実施の形態におけるDNN1に対する再学習判定処理の処理手順を示すフローチャートである。 図7は、実施の形態におけるDNN2に対する再学習判定処理の処理手順を示すフローチャートである。 図8は、プログラムが実行されることにより、エッジ装置及びサーバ装置が実現されるコンピュータの一例を示す図である。
 以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
[実施の形態]
[実施の形態の概要]
 本発明の実施の形態について説明する。本発明の実施の形態では、学習済みの高精度モデル及び軽量モデルを使って推論処理を行う処理システムについて説明する。なお、実施の形態の処理システムでは、推論処理において用いるモデルとして、DNN(Deep Neural Network)を用いた場合を例に説明する。実施の形態の処理システムでは、DNN以外のニューラルネットワークを用いてもよいし、学習済みモデルに代えて低演算量の信号処理と高演算量の信号処理を用いてもよい。
 図1は、実施の形態に係る処理システムの処理方法の概要を説明する図である。実施の形態の処理システムは、高精度モデル及び軽量モデルを用いたモデルカスケードを構成する。実施の形態の処理システムでは、高速かつ低精度な軽量モデル(例えば、DNN1(第1のモデル))を用いるエッジ装置と、低速かつ高精度な高精度モデル(例えば、DNN2(第2のモデル))を用いるクラウド(サーバ装置)とのいずれにおいて処理を実行するかを制御する。例えば、サーバ装置は、ユーザから物理的及び論理的に遠い場所に配置された装置である。エッジ装置は、ユーザから物理的及び論理的に近い場所に配置されたIoT機器及び各種端末装置であり、サーバ装置と比してリソースが少ない。
 DNN1及びDNN2は、入力された処理対象データを基に推論結果を出力するモデルである。図1の例では、DNN1及びDNN2は、画像を入力とし、当該画像に写る物体のクラスごとの確率を推論する。なお、図1に示す2つの画像は、いずれも同じ画像である。
 図1に示すように、処理システムでは、入力画像に写る物体に対するDNN1のクラス分類の推論についての確信度を取得する。確信度は、DNN1による被写体認識の結果が正解であることの確からしさの度合いである。例えば、確信度は、DNN1が出力した、画像に写る物体のクラスの確率、例えば最も高いクラスの確率であってもよい。
 そして、処理システムでは、取得した確信度が、例えば、所定の閾値以上である場合、DNN1の推論結果が採用される。つまり、軽量モデルの推論結果が、モデルカスケードの最終的な推定結果として出力される。一方で、処理システムでは、確信度が所定の閾値未満である場合、同一の画像をDNN2に入力して得られた推論結果が、最終的な推論結果として出力される。
 このように、実施の形態に係る処理システムは、エッジ装置とサーバ装置とのいずれにおいて処理対象データを処理すべきかを確信度を基に、エッジ装置またはサーバ装置を選択して、処理対象データを処理する。
[軽量モデル及び高精度モデル]
 次に、DNN1、DNN2について説明する。図2は、DNN1及びDNN2の一例を説明する図である。DNNは、データが入る入力層、入力層から入力されたデータを様々に変換する複数の中間層、確率や尤度など、いわゆる推論した結果を出力する出力層を有する。各層から出力される出力値は、入力されるデータが匿名性を保つ必要がある場合は非可逆としてもよい。
 図2に示すように、処理システムは、それぞれ独立したDNN1及びDNN2を用いてもよい。例えば、DNN2が既知の方法でトレーニングされた後、DNN1が、DNN2のトレーニングで使用された学習データを用いてトレーニングされてもよい。
 ここで、DNN1は、DNN2と同じ問題を解き、かつ、DNN2よりも軽量であればよい。例えば、図3の例の場合、DNN1は、DNN2の第1中間層~第S中間層よりも、層が少ない第1中間層~第P(P<S)中間層を有する。このように、DNN1及びDNN2は、DNN2が、DNN1よりも層が深くなるように設計してもよい。また、比較的軽量かつ高速であるYOLOv2のバックエンドモデルであるdarknet19(以下、YOLOv2と記載する。)をDNN1として選定し、比較的高精度であるYOLOv3のバックエンドモデルであるdarknet53(以下、YOLOv3と記載する。)をDNN2として選定してもよい。簡単な例では、同一のNNで、DNN1とDNN2とで深さが異なるように構成してもよい。DNN1とDNN2とはそれぞれどのようなネットワークを用いてもよい。例えばCNNを用いてもよい。
 本実施の形態では、DNN1もしくは/およびDNN2の再学習のタイミングを判定して、自動的にDNN1、DNN2の再学習を実行するシステムを提案する。そして、本実施の形態では、再学習用のデータを自動的に選択し、再学習を実行する。これによって、本実施の形態によれば、モデルの再学習処理に関する管理者の負担を低減しながら、エッジ及びクラウドにそれぞれ配置されるモデルの再学習を適切に実行し、モデルの精度の維持を図ることができる。
[処理システム]
 次に、処理システムの構成について説明する。図3は、実施の形態に係る処理システムの構成の一例を模式的に示す図である。
 実施の形態に係る処理システム100は、サーバ装置20及びエッジ装置30を有する。また、サーバ装置20及びエッジ装置30は、ネットワークNを介して接続される。ネットワークNは、例えばインターネットである。例えば、サーバ装置20は、クラウド環境に設けられたサーバである。また、エッジ装置30は、例えば、IoT機器及び各種端末装置である。なお、本実施の形態では、サーバ装置20及びエッジ装置30における処理対象の対象データ群が、画像群である場合を例に説明する。
 サーバ装置20及びエッジ装置30は、それぞれROM(Read Only Memory)、RAM(Random Access Memory)、CPU(Central Processing Unit)等を含むコンピュータ等に所定のプログラムが読み込まれて、CPUが所定のプログラムを実行することで実現される。また、GPUやVPU(Vision Processing Unit)、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)や専用のAI(Artificial Intelligence)チップに代表されるいわゆるアクセラレータも用いられる。サーバ装置20及びエッジ装置30は、それぞれ、NIC(Network Interface Card)等を有し、LAN(Local Area Network)やインターネットなどの電気通信回線を介した他の装置との間の通信を行うことも可能である。
 図3に示すように、サーバ装置20は、学習済みの高精度モデルであるDNN2を用いて推論(第2の推論)を行う推論部21を有する。DNN2は、モデルパラメータ等の情報を含む。
 推論部21は、DNN2を用いて、エッジ装置30から出力された画像に対する推論処理を実行する。推論部21は、エッジ装置30から出力された画像を、DNN2の入力とする。推論部21は、DNN2を用いて、入力画像に対する推論処理を実行する。推論部21は、DNN2の出力として推論結果(例えば、画像に写る物体のクラスごとの確率)を取得する。入力画像は、ラベルが未知の画像であるものとする。また、推論結果をユーザに返す場合、推論部21で得られた推論結果はエッジ装置30に伝送され、エッジ装置30からユーザに返してもよい。
 ここで、サーバ装置20及びエッジ装置30は、モデルカスケードを構成する。このため、推論部21は、常に推論を行うわけではない。推論部21は、エッジ装置30において、推論処理をサーバ装置20に実行させると判定された分割画像の入力を受け付けて、DNN2による推論を行う。ここでは画像と記載するが、画像そのものではなく画像から抽出された特徴量であってもよい。
 エッジ装置30は、学習済みの軽量モデルであるDNN1を有する推論部31と、判定部32とを有する。
 推論部31は、DNN1に、処理対象の画像を入力して推論結果を取得する。推論部31は、DNN1を用いて、入力画像に対する推論処理(第1の推論)を実行する。推論部31は、処理対象の画像の入力を受け付け、処理対象の画像を処理し、推論結果(例えば、画像に写る物体のクラスごとの確率)を出力する。
 判定部32は、エッジ装置30とサーバ装置20とのいずれの推論結果を採用するか否かを、確信度と所定の閾値とを比較することで判定する。本実施の形態では、エッジ装置30において、エッジ装置30が推論した推論結果を採用か否かを判定し、この推論結果を採用しないと判定した場合には、サーバ装置20の推論結果を採用することとなる。
 判定部32は、確信度が所定の閾値以上である場合、推論部31が推論した推論結果を出力する。判定部32は、信頼度が所定の閾値未満である場合、処理対象の画像をサーバ装置20に出力して、推論処理をサーバ装置20に配置されたDNN2に実行させることを判定する。
 そして、処理システム100は、DNN1、DNN2に対する再学習処理に関する機能として、例えば、サーバ装置20に、学習データ生成部22、学習データ管理部23及び再学習部24を設ける。なお、学習データ生成部22、学習データ管理部23及び再学習部24は、サーバ装置20内には限らず、サーバ装置20及びエッジ装置30と通信可能である他の装置内に設けてもよい。
 学習データ生成部22は、DNN1、DNN2の再学習時に使用する学習データをDNN1、DNN2ごとに生成する。学習データ生成部22は、運用中に実際に推論処理を実行した画像群のうち、負荷の変動または推論精度の低下への貢献度が大きいデータを、再学習データとして生成する。学習データ生成部22は、生成部221と修正部222とを有する。
 生成部221は、DNN2への入力画像のうち、DNN2において推論が実行された画像に、その画像のDNN2による推論結果をラベルとして対応付けたデータを、エッジ装置30のDNN1に対するエッジ用再学習データとして生成する。この学習データのラベルは、自動アノテーションにより付与されたものである。生成部221は、DNN1の再学習時に使用する学習データと、テスト用のデータとを分けて生成してもよい。DNN1の再学習用データとして、サーバ側で推論を行うと判定されたデータ全てを対象としてもよい。
 修正部222は、入力画像のDNN2による推論結果に対する、修正の入力を受け付ける。この修正は、いわゆる手動アノテーションであり、管理者が、処理対象の画像を判別して、推論結果を修正する。或いは、修正は、DNN2とは異なる別の機構を用いた推論処理の実行によって、推論結果を修正する処理である。
 そして、修正部222は、DNN2において推論が実行された画像に、該画像のDNN2による推論結果にラベル修正が加えられた修正済み推論結果(正解ラベル)を対応付けたデータを、サーバ装置20のDNN2に対するクラウド用再学習データとして生成する。修正部222は、DNN2の再学習時に使用する学習データと、テスト用のデータとを分けて生成してもよい。
 学習データ管理部23は、学習データ生成部22が生成したDNN1、DNN2の再学習用の学習用データを管理する。学習データ管理部23は、格納部231と選択部232とを有する。
 格納部231は、学習データ生成部22が生成したDNN1用のエッジ用再学習データを、エッジ用再学習データデータベース(DB)251に格納する。格納部231は、DNN1が複数ある場合に、DNN1ごとに分けてエッジ用再学習データを格納する。格納部231は、学習データ生成部22が生成したDNN2用のクラウド用再学習データを、クラウド用再学習データDB252に格納する。格納部231は、DNN2が複数ある場合に、DNN2ごとに分けてクラウド用再学習データを格納する。
 選択部232は、後述する再学習部24により再学習データの出力を要求された場合には、要求に応じた再学習データを、エッジ用再学習データDB251またはクラウド用再学習データDB252から取り出し、再学習部24に出力する。
 再学習部24は、DNN1とDNN2とのうち少なくともいずれか一方の再学習を実行する。再学習部24は、DNN1またはDNN2の再学習の実行の可否を判定する再学習判定部241(判定部)と、再学習実行部242(再学習部)とを有する。
 再学習判定部241は、エッジ装置30とサーバ装置20との少なくとも一方における、負荷の変動または推論精度の低下に基づいて、エッジ装置30とサーバ装置20との少なくとも一方において、推論を行う画像群の傾向が変化したか否かを判定する。そして、再学習判定部241は、画像群の傾向が変化したと判定した場合に、DNN1またはDNN2の再学習を実行することを判定する。再学習判定部241は、オフロード率(サーバ装置20における処理率)の設定値からの変化、推論精度の低下、または、保持されている学習データ量に応じて、DNN1またはDNN2の再学習を実行することを判定する。また、オフロード率が下がった際、システムの管理者が、再学習を行うかを推論精度に基づき判断する。これは、オフロード率が下がる場合は必ずしもDNN1を再学習する必要があるとは限らないためである。なお、オフロード率が上がる場合は、DNN1を再学習するトリガーとしてよい。サーバ装置20では、このように決定された再学習の要否に従って、再学習の実行を指示し、その指示にしたがって、再学習判定部241は、DNN1またはDNN2の再学習を実行する。なお、DNN2は、複数のDNN1からオフロードされたデータを対象として推論する場合が多くなるため、オフロード率ではなく修正率に基づいて行う方が好ましい。
 再学習実行部242は、再学習判定部241によって、画像群の傾向が変化したと判定された場合、DNN1とDNN2とのうち少なくともいずれか一方の再学習を実行する。再学習実行部242は、画像群のうち、負荷の変動または推論精度の低下への貢献度が大きいデータを用いて、DNN1またはDNN2とのうち少なくともいずれか一方の再学習を実行する。
 再学習実行部242は、エッジ用再学習データを学習データとして、DNN1の再学習を実行する。再学習実行部242は、クラウド用再学習データを学習データとして、DNN2の再学習を実行する。再学習実行部242は、DNN1(或いはDNN1と同等のモデル)を再学習したDNN1を、エッジ装置30に伝送し、エッジ側のモデルとして配置する。再学習実行部242は、DNN2(或いはDNN2と同等のモデル)を再学習したDNN2を、推論部21に出力し、クラウド側のモデルとして配置する。なお、再学習に用いるためのDNN1及びDNN2と、再学習後のDNN1及びDNN2とは、サーバ装置20内で保持するほか、エッジ装置30及びサーバ装置20と通信が可能である他の装置で保持してもよい。
[確信度の閾値とオフロード率]
 確信度の閾値の決め方と、オフロード率について説明する。図4は、オフロード率と全体精度との関係を示す図である。図4は、運用中の推論結果を基に、オフロード率の変動に伴う推論結果の全体精度の変動を求めることによって得られたものである。なお、閾値は、オフロード率に連動し、オフロード率を下げる場合には確信度の閾値を上げる。図4において、「Offload rate 0」は、全てのデータがエッジ装置30により処理され、精度(acc_origin)が低い状態であり、「Offload rate 1」は、すべてのデータがサーバ装置20により処理され、精度(acc_origin)が高い状態である。
 また、オフロード率が0.4(閾値が0.5)を超えると、オフロード率を上げても、すなわち、確信度の閾値を下げても、精度の向上が少なくなっている。このため、確信度の閾値を0.5に設定すると、オフロード率(0.4)と精度(0.75)のバランスが取れるものと考えられる。言い換えると、オフロード率を0.4とする際には、確信度の閾値を0.5に設定する。このように、オフロード率と精度とのバランスに応じて閾値を設定することで、それぞれのユースケースに応じたオフロード率や全体精度の調整が可能になる。
 そして、運用時におけるオフロード率は、統計を取ることが可能である。オフロード率の統計の取り方にはDNN1からDNN2、つまりエッジ装置30からサーバ装置20に伝送する伝送量を指標値として使ってもよい。例えば、エッジ装置30における単位時間当たりに処理する推論処理、例えば秒間5フレームの推論を行っており、2フレームに相当する伝送量が発生していた場合、オフロード率は0.4と推定することができる。このように、オフロード率の統計を取ったり、オフロード率の変化を検知したりすることが可能である。
[再学習判定部の処理]
 再学習判定部241は、オフロード率の設定値からの変化、推論精度の低下、学習データ量を基に、DNN1またはDNN2の再学習を実行するか否かを判定する。
[DNN1の再学習判定]
 再学習判定部241は、以下の場合に、エッジ装置30におけるDNN1の再学習の実行を判定する。
 まず、再学習判定部241は、オフロード率が設定値から変化した場合にDNN1の再学習の実行を判定する。この場合には、推論対象の画像群の傾向が変化したことでオフロード率が増加し、サーバ装置20での処理数が多くなったものと考えられる。すなわち、サーバ装置20での処理数が多くなることで、全体の計算コストが変動していることが検知される。このような場合、エッジ装置30におけるDNN1の推論結果の確信度が所定の閾値を下回る推論結果が多くなるため、DNN1の精度が低下したと考えられる。なお、上記設定値は設定範囲でもよく、設定範囲よりも上の値となった場合、設定範囲よりも下の場合となった場合、のいずれの場合でも再学習の実行を判定するようにしてもよい。
 また、再学習判定部241は、DNN1の推論精度が、所定精度よりも低下した場合にDNN1の再学習の実行を判定する。この場合には、システムの管理者によって、DNN1の推論精度が低下したと判断され、DNN1の再学習の実行が指示される。また、再学習判定部241は、エッジ用再学習データがバッチ量に達した場合にDNN1の再学習の実行を判定する。
 そして、再学習判定部241は、以下の場合に、サーバ装置20におけるDNN2の再学習を実行する。具体的には、再学習判定部241は、DNN2の推論精度が、所定精度よりも低下した場合にDNN2の再学習の実行を判定する。この場合には、システムの管理者によって、DNN2の推論精度が低下したと判断され、DNN2の再学習の実行が指示される。
 また、再学習判定部241は、修正部222によるDNN2の推論結果に対する修正率が、所定率以上となった場合に、DNN2の再学習の実行を判定する。DNN2の推論精度が低下したと判断されるためである。また、再学習判定部241は、クラウド用再学習データがバッチ量に達した場合にDNN2の再学習の実行を判定する。
[学習データ生成処理]
 次に、サーバ装置20における学習データ生成処理について説明する。図5は、実施の形態における学習データ生成処理の処理手順を示すフローチャートである。
 図5に示すように、サーバ装置20では、生成部221が、DNN2の推論結果及びDNN2において推論が実行された画像を取得する(ステップS11)。続いて、生成部221は、DNN2において推論が実行された画像に、その画像のDNN2による推論結果をラベルとして対応付けたデータをエッジ用再学習データとして生成し(ステップS12)、格納部231に、エッジ用再学習データDB251への格納を指示する(ステップS13)。
 そして、学習データ生成部22は、DNN2の推論結果への修正の入力を受け付けたか否かを判定する(ステップS14)。学習データ生成部22は、入力画像のDNN2による推論結果への修正の入力を受け付けていない場合(ステップS14:No)、ステップS11に戻る。
 入力画像のDNN2による推論結果への修正の入力を受け付けると(ステップS14:Yes)、修正部222は、DNN2において推論が実行された画像と、該画像の修正済み推論結果(正解ラベル)を対応付けたデータとを、サーバ装置20のDNN2に対するクラウド用再学習データとして生成する(ステップS15)。そして、修正部222は、格納部231に、このデータの、クラウド用再学習データDB252への格納を指示する(ステップS16)。
[DNN1の再学習判定処理]
 次に、DNN1に対する再学習判定処理について説明する。図6は、実施の形態におけるDNN1に対する再学習判定処理の処理手順を示すフローチャートである。
 図6に示すように、再学習判定部241は、オフロード率が設定値から増加したか否かを判定する(ステップS21)。オフロード率が設定値から増加していない場合(ステップS21:No)、再学習判定部241は、DNN1の推論精度が所定精度よりも低下したか否かを判定する(ステップS22)。DNN1の推論精度が所定精度よりも低下していない場合(ステップS22:No)、再学習判定部241は、エッジ用再学習データがバッチ量に達したか否かを判定する(ステップS23)。エッジ用再学習データがバッチ量に達していない場合(ステップS23:No)、再学習判定部241は、ステップS21に戻り、オフロード率の変化に対する判定を行う。
 オフロード率が設定値から増加した場合(ステップS21:Yes)、または、DNN1の推論精度が所定精度よりも低下した場合(ステップS22:Yes)、または、エッジ用再学習データがバッチ量に達した場合(ステップS23:Yes)、再学習判定部241は、DNN1の再学習の実行を判定する(ステップS24)。
 続いて、再学習実行部242は、エッジ用再学習データの出力を選択部232に要求することで、選択部232は、エッジ用再学習データを選択し(ステップS25)、再学習実行部242に出力する。再学習実行部242は、このエッジ用再学習データを学習データとして、DNN1の再学習を実行する(ステップS26)。
 再学習実行部242は、DNN1に対応するテストデータで精度テストを行い(ステップS27)、精度が向上した場合には(ステップS28:Yes)、オフロード率と該オフロード率に対応する確信度の閾値を設定し、再学習したDNN1を、エッジ装置30のモデルとして配置する(ステップS29)。なお、再学習したDNN1の精度が向上しなかった場合には(ステップS28:No)、DNN2の推論精度も低下していると想定される。このような場合、再学習実行部242は、ステップS24に戻り、ヒューリスティックにラベルを付けなおす、もしくはDNN2とは異なるDNN(例えば、さらに高負荷高精度なDNN)でラベルを付けなおしたデータを用いてDNN1を再学習させればよい。このような場合、DNN2についても同様に再学習をすべきである。
[DNN2の再学習判定処理]
 次に、DNN2に対する再学習判定処理について説明する。図7は、実施の形態におけるDNN2に対する再学習判定処理の処理手順を示すフローチャートである。
 図7に示すように、再学習判定部241は、修正部222によるDNN2の推論結果に対する修正率が、所定率以上となったか否かを判定する(ステップS31)。修正部222によるDNN2の推論結果に対する修正率が、所定率以上となっていない場合(ステップS31:No)、再学習判定部241は、推論精度が所定の精度よりも低下したか否かを判定する(ステップS32)。推論精度が所定の精度よりも低下していない場合(ステップS32:No)、再学習判定部241は、クラウド用再学習データがバッチ量に達したか否かを判定する(ステップS33)。クラウド用再学習データがバッチ量に達していない場合(ステップS33:No)、再学習判定部241は、ステップS31に戻り、オフロード率の変化に対する判定を行う。
 修正部222によるDNN2の推論結果に対する修正率が、所定率以上となった場合(ステップS31:Yes)、または、推論精度が所定の精度よりも低下した場合(ステップS32:Yes)、または、クラウド用再学習データがバッチ量に達した場合(ステップS33:Yes)、再学習判定部241は、DNN2の再学習の実行を判定する(ステップS34)。
 続いて、再学習実行部242は、クラウド用再学習データの出力を選択部232に要求することで、選択部232は、クラウド用再学習データを選択し(ステップS35)、再学習実行部242に出力する。再学習実行部242は、このクラウド用再学習データを学習データとして、DNN2の再学習を実行する(ステップS36)。再学習実行部242は、DNN2に対応するテストデータで精度テストを行い(ステップS37)、精度が向上した場合には(ステップS38:Yes)、再学習したDNN2を、サーバ装置20のモデルとして配置する(ステップS39)。再学習実行部242は、精度向上がなかった場合には(ステップS38:No)、ステップS34に進み、再学習の実行を行う。
[実施の形態の効果]
 このように、本実施の形態に係る処理システム100では、エッジ装置と前記サーバ装置との少なくとも一方における、負荷の変動または推論精度の低下に基づいて、エッジ装置30とサーバ装置20との少なくとも一方において、推論を行う画像群(対象データ群)の傾向が変化したか否かを判定する。そして、処理システム100では、画像群の傾向が変化したと判定された場合、DNN1とDNN2とのうち少なくともいずれか一方の再学習を実行する。したがって、処理システム100によれば、DNN1、DNN2ごとに再学習のタイミングを判定して、自動的にDNN1、DNN2の再学習を実行することができる。
 そして、処理システム100では、システムの運用中に処理された画像群のうち、負荷の変動または推論精度の低下への貢献度が大きいデータを用いて、DNN1とDNN2とのうち少なくともいずれか一方の再学習を実行するため、再学習によって、負荷の変動または推論精度の低下に対して対処することができるDNN1、DNN2を構築することができる。そして、処理システム100では、これらのDNN1、DNN2をエッジ装置30、サーバ装置20に配置することによって、エッジ及びクラウドにそれぞれ配置されるモデルの精度の維持を図ることができる。
 処理システム100では、システムの運用中に処理された画像群のうち、DNN2において実際に推論処理が実行された画像と、該画像のDNN2による推論結果とを、学習データとしてDNN1の再学習を実行する。言い換えると、処理システム100では、DNN1において実際に推論が行われた画像であって、DNN1よりも精度の高いDNN2の推論結果をラベルとして付された画像を、エッジ用再学習データとして生成し、このエッジ用再学習データを用いてDNN1の再学習を行う。このため、DNN1は、再学習する度にドメイン特化されたモデルとなり、エッジ装置30に要求される精度を適切に維持することができる。
 そして、処理システム100では、システムの運用中に処理された画像群のうち、DNN2において実際に推論処理が実行された画像と、該画像のDNN2による推論結果に修正が加えられた修正済み推論結果とを、学習用データとしてDNN2の再学習を実行する。すなわち、DNN2では、DNN2において行われた推論が誤っていた画像であって、正解ラベルが付された画像を、クラウド用再学習データとして生成し、このクラウド用再学習データを用いてDNN2の再学習を行うため、DNN2の精度向上を図ることができる。
 このように、処理システム100によれば、モデルの再学習処理に関する管理者の負担を低減しながら、エッジ及びクラウドにそれぞれ配置されるモデルの再学習を適切に実行し、モデルの精度の維持を図ることができる。
 なお、本実施の形態では、エッジ装置30またはサーバ装置20が複数であってもよく、また、エッジ装置30とサーバ装置20とがいずれも複数であってもよい。その際には、エッジ装置30ごとに、エッジ用再学習データを生成し、サーバ装置20ごとにクラウド用再学習データを生成して、それぞれ対応する学習データを用いて、各モデルの再学習を実行する。
[システム構成等]
 図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 図8は、プログラムが実行されることにより、エッジ装置30及びサーバ装置20が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、演算を補助するために前述したアクセラレータを備えてもよい。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、エッジ装置30及びサーバ装置20の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、エッジ装置30及びサーバ装置20における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
 また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
 20 サーバ装置
 21,31 推論部
 22 学習データ生成部
 23 学習データ管理部
 24 再学習部
 30 エッジ装置
 32 判定部
 100 処理システム
 221 生成部
 222 修正部
 231 格納部
 232 選択部
 241 再学習判定部
 242 再学習実行部
 251 エッジ用再学習データDB
 252 クラウド用再学習データDB

Claims (6)

  1.  エッジ装置において第1の推論を行い、サーバ装置において第2の推論を行う処理システムが実行する処理方法であって、
     前記エッジ装置と前記サーバ装置との少なくとも一方における、負荷の変動または推論精度の低下に基づいて、前記エッジ装置と前記サーバ装置との少なくとも一方において、推論を行う対象データ群の傾向が変化したか否かを判定する判定工程と、
     前記判定工程において前記対象データ群の傾向が変化したと判定された場合、前記第1の推論を行う第1のモデルと前記第2の推論を行う第2のモデルとのうち少なくともいずれか一方の再学習を実行する再学習工程と、
     を有することを特徴とする処理方法。
  2.  前記再学習工程は、前記対象データ群のうち、前記負荷の変動または前記推論精度の低下への貢献度が大きいデータを用いて、前記第1のモデルと前記第2のモデルとのうち少なくともいずれか一方の再学習を実行することを特徴とする請求項1に記載の処理方法。
  3.  前記再学習工程は、前記対象データ群のうち、前記第2の推論が実行された対象データと、該対象データの前記第2の推論における推論結果とを、学習データとし、前記第1のモデルの再学習を実行する請求項1または2に記載の処理方法。
  4.  前記再学習工程は、前記対象データ群のうち、前記第2の推論が実行された対象データと、該対象データの第2の推論における推論結果に修正が加えられた修正済み推論結果とを、学習データとし、前記第2のモデルの再学習を実行することを特徴とする請求項1~3のいずれか一つに記載の処理方法。
  5.  エッジ装置において第1の推論を行い、サーバ装置において第2の推論を行う処理システムであって、
     前記エッジ装置と前記サーバ装置との少なくとも一方における、負荷の変動または推論精度の低下に基づいて、前記エッジ装置と前記サーバ装置との少なくとも一方において、推論を行う対象データ群の傾向が変化したか否かを判定する判定部と、
     前記判定部において前記対象データ群の傾向が変化したと判定された場合、前記第1の推論を行う第1のモデルと前記第2の推論を行う第2のモデルとのうち少なくともいずれか一方の再学習を実行する再学習部と、
     を有することを特徴とする処理システム。
  6.  エッジ装置とサーバ装置との少なくとも一方における、負荷の変動または推論精度の低下に基づいて、前記エッジ装置と前記サーバ装置との少なくとも一方において、推論を行う対象データ群の傾向が変化したか否かを判定する判定ステップと、
     前記判定ステップにおいて前記対象データ群の傾向が変化したと判定された場合、前記エッジ装置において第1の推論を行う第1のモデルと前記サーバ装置において第2の推論を行う第2のモデルとのうち少なくともいずれか一方の再学習を実行する再学習ステップと、
     をコンピュータに実行させるための処理プログラム。
PCT/JP2020/043686 2020-11-24 2020-11-24 処理方法、処理システム及び処理プログラム Ceased WO2022113175A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US18/038,211 US20240095581A1 (en) 2020-11-24 2020-11-24 Processing method, processing system, and processing program
JP2022564857A JP7586191B2 (ja) 2020-11-24 2020-11-24 処理方法、処理システム及び処理プログラム
PCT/JP2020/043686 WO2022113175A1 (ja) 2020-11-24 2020-11-24 処理方法、処理システム及び処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/043686 WO2022113175A1 (ja) 2020-11-24 2020-11-24 処理方法、処理システム及び処理プログラム

Publications (1)

Publication Number Publication Date
WO2022113175A1 true WO2022113175A1 (ja) 2022-06-02

Family

ID=81754221

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/043686 Ceased WO2022113175A1 (ja) 2020-11-24 2020-11-24 処理方法、処理システム及び処理プログラム

Country Status (3)

Country Link
US (1) US20240095581A1 (ja)
JP (1) JP7586191B2 (ja)
WO (1) WO2022113175A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024057374A1 (ja) * 2022-09-12 2024-03-21 日本電信電話株式会社 抽出システム、抽出方法および抽出プログラム
WO2025069198A1 (ja) * 2023-09-26 2025-04-03 日本電信電話株式会社 設定補助装置、設定補助方法、および設定補助プログラム
JP2025105535A (ja) * 2023-12-28 2025-07-10 コリア アドバンスド インスティテュート オブ サイエンス アンド テクノロジー トランスフォーマーニューラルネットワークのための人工知能ニューラルネットワーク加速器及びその方法
WO2025158507A1 (ja) * 2024-01-22 2025-07-31 Ntt株式会社 推論装置、推論方法、プログラム、及び推論システム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230111874A1 (en) * 2021-10-12 2023-04-13 Oracle International Corporation Device emulations in a notebook session
CN116010069A (zh) * 2021-10-21 2023-04-25 伊姆西Ip控股有限责任公司 管理推理过程的方法、电子设备和计算机程序产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018010475A (ja) * 2016-07-13 2018-01-18 富士通株式会社 機械学習管理プログラム、機械学習管理装置および機械学習管理方法
JP2018045369A (ja) * 2016-09-13 2018-03-22 株式会社東芝 認識装置、認識システム、認識方法およびプログラム
JP2020024534A (ja) * 2018-08-07 2020-02-13 日本放送協会 画像分類装置及びプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190079898A1 (en) * 2017-09-12 2019-03-14 Actiontec Electronics, Inc. Distributed machine learning platform using fog computing
US12450523B2 (en) * 2018-07-23 2025-10-21 Kabushiki Kaisha Toshiba Device and method for optimising model performance
US20200272899A1 (en) * 2019-02-22 2020-08-27 Ubotica Technologies Limited Systems and Methods for Deploying and Updating Neural Networks at the Edge of a Network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018010475A (ja) * 2016-07-13 2018-01-18 富士通株式会社 機械学習管理プログラム、機械学習管理装置および機械学習管理方法
JP2018045369A (ja) * 2016-09-13 2018-03-22 株式会社東芝 認識装置、認識システム、認識方法およびプログラム
JP2020024534A (ja) * 2018-08-07 2020-02-13 日本放送協会 画像分類装置及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHOHEI ENOMOTO, TAKEHARU EDA: "Acceleration of Deep Learning Inference by Model Cascading", IEICE TECHNICAL REPORT, vol. 119, no. 481, March 2020 (2020-03-01), pages 203 - 208, XP009537454, ISSN: 2432-6380 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024057374A1 (ja) * 2022-09-12 2024-03-21 日本電信電話株式会社 抽出システム、抽出方法および抽出プログラム
WO2024057578A1 (ja) * 2022-09-12 2024-03-21 日本電信電話株式会社 抽出システム、抽出方法および抽出プログラム
JPWO2024057578A1 (ja) * 2022-09-12 2024-03-21
WO2025069198A1 (ja) * 2023-09-26 2025-04-03 日本電信電話株式会社 設定補助装置、設定補助方法、および設定補助プログラム
JP2025105535A (ja) * 2023-12-28 2025-07-10 コリア アドバンスド インスティテュート オブ サイエンス アンド テクノロジー トランスフォーマーニューラルネットワークのための人工知能ニューラルネットワーク加速器及びその方法
JP7849071B2 (ja) 2023-12-28 2026-04-21 コリア アドバンスド インスティテュート オブ サイエンス アンド テクノロジー トランスフォーマーニューラルネットワークのための人工知能ニューラルネットワーク加速器及びその方法
WO2025158507A1 (ja) * 2024-01-22 2025-07-31 Ntt株式会社 推論装置、推論方法、プログラム、及び推論システム

Also Published As

Publication number Publication date
JPWO2022113175A1 (ja) 2022-06-02
JP7586191B2 (ja) 2024-11-19
US20240095581A1 (en) 2024-03-21

Similar Documents

Publication Publication Date Title
JP7586191B2 (ja) 処理方法、処理システム及び処理プログラム
US11741361B2 (en) Machine learning-based network model building method and apparatus
CN111507993A (zh) 一种基于生成对抗网络的图像分割方法、装置及存储介质
WO2021089013A1 (zh) 空间图卷积网络的训练方法、电子设备及存储介质
US12536388B2 (en) Learning self-evaluation to improve selective prediction in LLMs
CN112651533A (zh) 整合移动平均自回归-反向传播神经网络预测方法
CN110008332B (zh) 通过强化学习提取主干词的方法及装置
KR20210066545A (ko) 반도체 소자의 시뮬레이션을 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체
US20220129708A1 (en) Segmenting an image using a neural network
EP4386657A1 (en) Image optimization method and apparatus, electronic device, medium, and program product
JP2025515554A (ja) 勾配要素を直接指定することによる機械訓練済みモデルの訓練
US20200250529A1 (en) Arithmetic device
CN114970879B (zh) 用于数据增强过程的系统、方法和计算机程序产品
CN120896677A (zh) 一种自适应通道压缩的通信分割学习系统及其方法、介质
CN117999560A (zh) 机器学习模型的硬件感知渐进训练
CN113712511B (zh) 一种脑成像融合特征的稳定模式判别方法
CN116029261A (zh) 中文文本语法纠错方法及相关设备
US12572785B2 (en) Methods and hardware for inter-layer data format conversion in neural networks
CN121303376A (zh) 一种量子线路转换方法、系统、电子设备和存储介质
CN113326832B (zh) 模型训练、图像处理方法、电子设备及存储介质
US20220277200A1 (en) Fast quantised training of trainable modules
CN116957058A (zh) 时空交通预测模型的对抗训练方法、装置、设备及介质
US20090222396A1 (en) Adaptive multi-levels dictionaries and singular value decomposition techniques for autonomic problem determination
CN115270935A (zh) 环状无中心联邦学习方法、系统、电子装置和存储介质
WO2022127603A1 (zh) 一种模型处理方法及相关装置

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022564857

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 18038211

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20963440

Country of ref document: EP

Kind code of ref document: A1