WO2022088082A1 - 基于缺陷检测的任务处理方法、装置及设备及存储介质 - Google Patents
基于缺陷检测的任务处理方法、装置及设备及存储介质 Download PDFInfo
- Publication number
- WO2022088082A1 WO2022088082A1 PCT/CN2020/125439 CN2020125439W WO2022088082A1 WO 2022088082 A1 WO2022088082 A1 WO 2022088082A1 CN 2020125439 W CN2020125439 W CN 2020125439W WO 2022088082 A1 WO2022088082 A1 WO 2022088082A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- task
- training
- detection
- model
- target
- Prior art date
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 137
- 230000007547 defect Effects 0.000 title claims abstract description 76
- 238000003860 storage Methods 0.000 title claims abstract description 30
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000012549 training Methods 0.000 claims abstract description 181
- 238000000034 method Methods 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 38
- 238000004891 communication Methods 0.000 claims description 27
- 238000012360 testing method Methods 0.000 claims description 24
- 238000007781 pre-processing Methods 0.000 claims description 7
- 238000010200 validation analysis Methods 0.000 claims description 5
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 230000003247 decreasing effect Effects 0.000 claims description 2
- 238000004422 calculation algorithm Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 238000003062 neural network model Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 125000002015 acyclic group Chemical group 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
- G05B23/024—Quantitative history assessment, e.g. mathematical relationships between available data; Functions therefor; Principal component analysis [PCA]; Partial least square [PLS]; Statistical classifiers, e.g. Bayesian networks, linear regression or correlation analysis; Neural networks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/84—Systems specially adapted for particular applications
- G01N21/88—Investigating the presence of flaws or contamination
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/028—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using expert systems only
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0256—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults injecting test signals and analyzing monitored process response, e.g. injecting the test signal while interrupting the normal operation of the monitored system; superimposing the test signal onto a control signal during normal operation of the monitored system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2223/00—Indexing scheme associated with group G05B23/00
- G05B2223/02—Indirect monitoring, e.g. monitoring production to detect faults of a system
Definitions
- the present disclosure relates to the technical field of defect detection, and in particular, to a task processing method, apparatus, and device based on defect detection, and a computer non-volatile computer-readable storage medium.
- a task processing method based on defect detection including:
- the detection task is stored in the task queue
- the detection task of the target task type includes a reasoning task and a training task; performing the training task includes:
- the task type includes the target task type and a reference task type
- the processor directly executes the detection task.
- the performing the detection tasks in a preset order includes:
- the detection tasks are executed according to the sequence stored in the task queue.
- the modifying the configuration information according to the product information in the detection task according to a preset rule includes:
- the training image size, training times, testing times, defect threshold and learning rate decreasing strategy are set according to preset rules.
- the training task includes an address for obtaining training data and model data information; the obtaining training data and an initial model according to the product information includes:
- the initial model is acquired according to the model data information.
- the training data includes a label file and an image file, and before using the training data to train the initial model according to the configuration information to obtain a target model and storing it, the Methods also include:
- the preprocessing of the training data includes:
- the training data is divided into a training set, a verification set and a test set according to a preset ratio.
- the using the training data to train the initial model according to the configuration information to obtain a target model and storing includes:
- test set Using the test set and the number of tests to complete the test of the initial model after training to obtain the target model and store it.
- the detection task includes a task type label
- the determining the task type of the detection task includes:
- Identifying the task type label in the detection task determines the task type of the detection task.
- the performing the training task further includes:
- the training results include the precision rate, recall rate and F1 score of the target model.
- performing the reasoning task includes:
- the image information is input into the target model to obtain the defect location and defect type of the product.
- the reasoning task includes an address for obtaining image information
- the obtaining image information of the product according to the product information includes:
- the image information is downloaded according to the image information acquisition address.
- acquiring the target model according to the product information includes:
- the local repository downloads the target model corresponding to the product information according to the product information.
- the local repository includes a preset number of target models, and when the number of target models in the local repository is greater than the preset number, according to the target model The chronological order used updates the local repository so that the number of target models in the local repository remains at the preset number.
- performing the reasoning task further includes:
- the feedback signal is generated based on the defect location of the product and the defect type.
- a task processing device based on defect detection comprising:
- a communication node for receiving the detection task and identifying the task type of the detection task
- a task management node for storing the detection task in a task queue when the task type is a target task type; and for executing the detection task in a preset order and generating a feedback signal when the processor is idle .
- the apparatus further includes:
- the task agent node is configured to receive the feedback signal and send the feedback signal through the communication module.
- a task processing device based on defect detection comprising:
- a memory for storing one or more programs that, when executed by the one or more processors, cause the one or more processors to implement the Defect detection task processing method.
- the task type includes the target task type and the reference task type; the processor includes:
- the first processor includes at least one graphics processor for executing the inference task and the training task;
- a second processor where the second processor includes at least one graphics processor, and is configured to execute a detection task of a reference task type.
- a non-volatile computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, the task processing based on defect detection as described in any one of the above is implemented. method.
- FIG. 1 schematically shows a flowchart of a task processing method based on defect detection in an exemplary embodiment of the present disclosure
- FIG. 2 schematically shows a schematic diagram of a server in an exemplary embodiment of the present disclosure
- FIG. 3 schematically shows a flow chart of performing a training task in an exemplary embodiment of the present disclosure
- FIG. 4 schematically shows a multi-stage interaction diagram when a training task is performed in an exemplary embodiment of the present disclosure
- FIG. 5 schematically shows a flowchart of performing inference tasks in an exemplary embodiment of the present disclosure
- FIG. 6 schematically shows a schematic diagram of the interaction of multiple segments when performing a reasoning task in an exemplary embodiment of the present disclosure
- FIG. 7 schematically shows a schematic diagram of the architecture deployment of a server in an exemplary embodiment of the present disclosure
- FIG. 8 schematically shows a schematic diagram of task scheduling of a server in an exemplary embodiment of the present disclosure
- FIG. 9 schematically shows a schematic diagram of the system architecture of the interaction between the server and the background in an exemplary embodiment of the present disclosure
- FIG. 10 schematically shows the composition diagram of a task processing apparatus based on defect detection in an exemplary embodiment of the present disclosure
- FIG. 11 schematically shows a schematic composition diagram of another task processing apparatus based on defect detection in an exemplary embodiment of the present disclosure
- FIG. 12 schematically shows a schematic structural diagram of a computer system suitable for implementing the task processing device based on defect detection according to an exemplary embodiment of the present disclosure
- FIG. 13 schematically illustrates a schematic diagram of a computer-readable storage medium according to some embodiments of the present disclosure.
- Example embodiments will now be described more fully with reference to the accompanying drawings.
- Example embodiments can be embodied in various forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art.
- the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
- a task processing method based on defect detection is provided first, which can be applied to defect detection of a display screen.
- the above-mentioned task processing method based on defect detection may include the following steps:
- the detection task of the target task type includes a reasoning task and a training task; performing the training task includes:
- the task processing method based on defect detection compared with the prior art, by accepting the detection task and storing the detection task of the target task type in the task queue, the detection is processed when the processor is idle. task, complete the training task and the inference task to realize the detection of the product, use the computer training model and use the model for inference, without the need to manually complete the detection of the product, speed up the detection efficiency, prevent losses due to human errors, improve detection accuracy.
- step S110 a detection task is received, and the task type of the detection task is determined.
- the server receives a detection task
- the detection task may be sent by the background 210
- the task type of the detection task may include a target task type and a reference task type, wherein the target task Types of detection tasks can include training tasks, inference tasks, etc.
- the detection tasks of reference task types can include training status query tasks, early termination of training tasks, node information query tasks (queries the unique identification number and type of the current GPU node), task queues 202 Clear the task and the task status query task.
- the server may be a gpu server.
- the detection task includes a task type tag
- the server can determine the task type of the detection task according to the task type tag.
- the task format of the detection task consists of a task header and a task body.
- the task header can be used to distinguish the types of tasks.
- the real-time verification can include three types of task headers, namely transact (transaction request task), reply (transaction return task) and ack (answer task).
- a "type" key can be included in the task body of the Transact type to indicate the type of the detection task.
- the server can establish a socket network connection with the background 210 through the communication node 201, the background 210 can send detection tasks to the communication node 201 of the server through the tcp protocol, and the server receives the above-mentioned communication through the communication node 201. Detect the task, and determine the task type of the detection task through the above task type label.
- step S120 if the task type is the target task type, the detection task is stored in the task queue;
- the number of various detection tasks received by the communication node 201 may include multiple.
- the task type of the detection task is the target task type
- the target task type the target task type
- the detection tasks in such as training tasks and inference tasks, all take a long time to execute, so the above detection tasks can be stored in the task queue 202 .
- the above detection task is of the reference task type
- step S130 when the processor is idle, the detection task is performed according to a preset order and a feedback signal is generated;
- the server may try to detect the state of the processor, and after the processor completes all the tasks before the detection task, the processor executes the above detection task in a preset order.
- the above-mentioned preset order may be the order of storage to the task queue, or may be based on the execution difficulty of the task, which is not specifically limited in this exemplary implementation.
- Step S310 modifying the configuration information according to the preset rules according to the product information in the detection task;
- Step S320 obtaining training data and an initial model according to the product information
- Step S330 using the training data to train the initial model according to the configuration information to obtain a target model and store it.
- the above training tasks include the training data acquisition address, model data information, training model uploading address, training result uploading address, and the relevant configuration of the ftp server and other basic information required for training.
- step S401 is performed, the communication node 201 receives the training task from the background 210, and after the communication node receives the training task, step S402 is performed, and the training task is put into the task queue 202; the task management node 203 monitors the state of the processor, When the processor is idle, the training task will be extracted from the queue, the training data and the initial model will be acquired in sequence, and step S403 will be executed to execute the training task.
- steps S404 and S405 when acquiring training data, first, steps S404 and S405 may be performed, and a large batch of training data may be downloaded from the remote ftp server (FTP SERVER) 206 for training the initial model, and It needs to be stored in the format set by the algorithm. Due to the large amount of training data, which may include hundreds of thousands of images, the (FTP client) ftp client can be used to load the training data using the multi-threaded ftp protocol 205 . After the acquisition of the training data is completed, steps S406 and S407 are executed to start the training algorithm, and the training algorithm can be called from the training algorithm repository 208 to train the above-mentioned initial model by using the training data.
- FTP SERVER remote ftp server
- step S412 is executed to complete the above training task. Then execute step S408, step S409, step S410 and step S411, upload the trained model and training result details (such as training accuracy rate, recall rate, curve graph of loss value, defect confusion matrix, etc.) to the ftp server to specify directory, where the above directory can be extracted from the above training task.
- the final training results (accuracy rate, recall rate, f1 score, and md5 value of the model) can be packaged into a tcp message according to a specified format, and the training task ends.
- the processor will send the training result to the task proxy node 204, and then the task proxy node 204 will feed it back to the communication node 201, and the communication node 201 will finally send it to the background 210, and the whole training process ends.
- step S310 the configuration information is modified according to the preset rules according to the product information in the detection task
- SD_final site final site image
- intermediate site image mask site
- tdi grayscale image final site image
- the applied models are subcode model (subcode model) and maincode model (main code model)
- images of intermediate sites can apply subcode model (subcode model)
- tdi grayscale images can apply subcode model (subcode model).
- the final site image is divided into models according to product types, therefore, different products can be distinguished by different model names, and the naming format of the model adopted by the final site image can be product_product Name_date, the naming format of the main code model (maincode model) is maincode_product name_date; the naming of the model name can also be customized according to requirements, which is not specifically limited in this example implementation.
- the intermediate site image is divided into models by site, and the naming rule of the model name of the subcode model adopted by the intermediate site image can be mask_site name_date; wherein the naming of the model name can also be performed according to requirements Customization is not specifically limited in this example implementation.
- the tdi grayscale image is divided into models according to conventional and vehicle-mounted models, and the naming rule of the model used by the tdi grayscale image may be tdi_1/2_date, where 1 is used for the model of the conventional product, and 1 is used for the model of the vehicle-mounted product.
- Model uses 2. Since different model types will correspond to a different set of data processing (image size, image and label matching method, etc.), and different products, or different products of the same site will correspond to different training parameters, before calling the training algorithm, the service The terminal needs to explicitly train the model and product, or site information.
- the user before the training is started, the user can set the above parameters on the interface according to the training task to be submitted, and then the training system will write the interface parameters into the configuration file of the server. After the training algorithm is enabled, the server will read the corresponding configuration information according to the model type and product information of the training task.
- step S320 obtain training data and an initial model according to the product information
- Step S330 using the training data to train the initial model according to the configuration information to obtain a target model and store it.
- the server receives the training task sent by the training system, and parses the task.
- the "modelPath" model field
- "trainType” field product information field
- the server can specify the model type and site name and product name to be trained this time.
- the task contains the fields "modelPath”:/XXX/XXX/XXX/product_ak_20200422084814916" and "trainType”:"subCodeTraining".
- the processor on the server side will make it clear that the final site image is to be trained, ak Product's subcode model.
- the training data is the core of the training model.
- the training data can be manually uploaded to a specified address.
- the server Before executing the training algorithm, the server will download the data to the local server of the server through ftp from the specified address. file for subsequent data processing.
- the server before the training starts, can parse out the model data information in the training task, where the model data information can include model type, product name, site name and corresponding configuration information. And obtain the initial model according to the above model data information, after obtaining the training data and the initial model, the server calls and starts the training algorithm in the training algorithm repository, where the training algorithm may include preprocessing of the training data, training modules and testing module, where the training module is used to train the initial model, and the test module is used to test the initial model after training.
- the training algorithm may include preprocessing of the training data, training modules and testing module, where the training module is used to train the initial model, and the test module is used to test the initial model after training.
- the above training data may be allocated according to a preset ratio to obtain a training set, a validation set and a test set, where the preset ratio may be 8:1:1. It can also be 6:2:2, which is not specifically limited in this example implementation.
- a txt file can be generated, and the above data set can be divided into training set, validation set and test set according to 8:1:1, and written into three files train.txt, val.txt and test.txt respectively.
- train.txt, val.txt and test.txt correspond to the training set, validation set and test set respectively.
- the initial model is trained by using the above-mentioned training data to obtain the target model.
- image_scales in the configuration information
- the images of the training set will be modified to the corresponding size, and then sent to the constructed network to participate in the learning of the initial model network parameters.
- the “learningRate_stepSize” in the configuration information sets the learning rate reduction strategy, that is, after the initial model is trained to the specified number of rounds, the learning rate will be reduced to about 1/9 to 1/10 of the original, so that the initial model can converge as soon as possible.
- maximum_step sets the number of training times, that is, when the model is trained for the specified number of times, the training task ends.
- the server can use the test data set (test.txt file) to perform a preset number of models on the trained initial model according to "test_model_iter" in the configuration file Test, and get the model effect (precision, recall and F1score) for each number of tests. Users can select the best model as the target model for inference tasks according to the accuracy and recall of the test model.
- the server may store the target model to a specified address, that is, upload the target model to the above-mentioned ftp server (FTP SERVER) through the above-mentioned ftp client (FTP client) 205 )206.
- FTP SERVER above-mentioned ftp server
- FTP client ftp client
- a confusion matrix for the model is generated.
- the server uploads the confusion matrix file corresponding to the target model to the path specified in the message, that is, to the ftp server (FTP SERVER) 206 through the above-mentioned ftp client (FTP client) 205 .
- the server sends feedback information to the background 210 through the task proxy node 204 and the communication node to complete the training task.
- performing the reasoning task may include the following steps:
- Step S510 acquiring the target model and the image information of the product according to the product information
- Step S520 inputting the image information into the target model to obtain the defect location and defect type of the product.
- the above-mentioned target model can be used to perform real-time reasoning on the product and obtain the defect type of the product.
- the image information of the product can be obtained first, and the image information can be stored in an xml file, where the image information can include information such as site information, product model, and image storage address.
- the reasoning system sends the xml file address of the production line data set to the backend 210 in the form of a tcp message, and the backend 210 can obtain the xml file from the file address, parse the data set information in the xml file, and organize into an inference task, wherein the inference task includes information such as the inference data set loading address, the inference model loading address, the inference model md5 value, and the relevant configuration of the ftp server, and is sent to the communication node; then steps S501 and S502 can be performed, and the communication node 201 receives the inference task, and put the inference task into the task queue.
- the task management node 203 is idle, the inference task object will be obtained from the queue, and step S503 will be executed to start executing the inference task.
- steps S504, S505, S506, S507, and S508 may be performed first.
- the inference task needs to be loaded from the remote FTP server (FTP SERVER) 206 according to the product information.
- FTP SERVER remote FTP server
- image information, and load the target model matching the data set through the model loader 207 the model loading can be loaded from the locally cached model first, if the local loading fails, then from the remote ftp server through the ftp protocol (FTP clint) 205 Download the target model.
- step S509 may be executed, and a processor invokes an inference algorithm from the inference algorithm repository 209 to perform inference.
- step S510 is executed, the inference algorithm is exited, and the inference task is ended.
- step S511, step S512, and step S513 can be executed, and the inference result message (the maincode class of each inference image and the confidence level belonging to the maincode class, the subcode class and the confidence level belonging to the subcode class and the position of the defect frame, etc.) It is packaged into a tcp message according to the specified format, and the inference task ends; the task management node 203 will send the packaged message to the task proxy node 204, and then the task proxy node will feed it back to the communication node 201, and the communication node 201 will send it to the background 210. .
- different inference tasks may correspond to different product information, so each inference task may call a different target model. If each time a task is received, it will be very time-consuming to load the target model of the corresponding task, which may cause the task processing to time out. Therefore, in order to save inference time, after the server is started, it will first complete the loading of the target model in advance, and directly call the loaded target model for each received inference task.
- the video memory may overflow and the inference task cannot be completed. Therefore, when the server is started for the first time, only the target model corresponding to the commonly used product can be loaded into the video memory. When the target model corresponding to the product needs to be loaded later, it will be loaded accordingly.
- each time a target model is loaded the loading time is bound to each target model as a timestamp. And every time the target model is called, the timestamp will be changed to the calling time.
- the corresponding code list, general threshold and special threshold in the configuration information set before training the initial model will be bound to the target model. After the subsequent configuration information is modified, it will not affect the inference task.
- step S510 obtain the target model and the image information of the product according to the product information
- the server after receiving the inference task message, the server will first parse the inference task, and obtain the image list (absolute path of each image), the called subcode model, maincode model and tdi model and other information.
- the image information of this inference task is downloaded to the local server, and then the target model can be loaded. Whether the specified target model has already been loaded. If there is a target model corresponding to the image information in the loaded target model list, you can directly call the loaded target model to complete the inference; if the loaded target model list does not have a target model corresponding to the image information, it is judged that the loaded target model has been loaded. Whether the product name and site name in the specified model exist in the product information list.
- model is the target model to be updated, so it is necessary to reload the new target model and release the old model from the video memory; if it does not exist, the model is to be newly launched, and the new target needs to be loaded first.
- Model Newly loaded target models can be done online and will be added to the list of loaded target models.
- the number of models loaded into video memory reaches a preset number
- target models that have not been called for a long time will be deleted according to the above timestamp, and video memory will be released.
- the preset number may be 30, 40, etc., and may also be set according to the server configuration used by the user, which is not specifically limited in this example implementation.
- Step S520 inputting the image information into the target model to obtain the defect location and defect type of the product.
- the image information in the inference task will be sequentially read into the memory and sent to the prepared target model for inference. Based on the set threshold, each image will get the defect category, defect location and its confidence after passing through the model. After the image information in this task has obtained the defect category, defect location and its confidence, exit the inference algorithm and complete the inference task.
- the inference results of all images in the entire task are integrated, and then returned to the inference system through the task proxy node and the communication node.
- the server may be one or more devices capable of using GPU computing resources to perform inference tasks and training tasks.
- the reasoning task based on artificial intelligence can be a defect recognition task based on a target model, and the target model is mainly a neural network model based on deep learning.
- the target model may be based on a feedforward neural network.
- Feedforward networks can be implemented as acyclic graphs, where nodes are arranged in layers.
- a feedforward network topology includes an input layer and an output layer separated by at least one hidden layer.
- the hidden layer transforms the input received by the input layer into a representation useful for generating the output in the output layer.
- Network nodes are fully connected to nodes in adjacent layers via edges, but there are no edges between nodes within each layer.
- the output of the target model may take various forms, which are not limited by the present disclosure.
- the target model may also include other neural network models, for example, a convolutional neural network (CNN) model, a recurrent neural network (RNN) model, and a generative adversarial network (GAN) model, but is not limited to this, and those skilled in the art can also be used.
- CNN convolutional neural network
- RNN recurrent neural network
- GAN generative adversarial network
- the target model model usually needs to be obtained through training.
- Initially training with the training algorithm described above may include the steps of: selecting a network topology; using a set of training data representing the problem being modeled by the network; and adjusting the weights until the network model behaves as having the smallest value for all instances of the training data set error.
- the output produced by the network in response to an input representing an instance in a training dataset is compared to the "correct" labeled output of that instance; computing the output representing the an error signal from the difference between the labeled outputs; and adjusting the weights associated with the connections to minimize the error when propagating the error signal back through the layers of the network.
- this initial model is considered "trained" and defined as the target model, and can be used for AI inference tasks.
- GPUs In the inference and training process of neural network models, a large number of buffers of parameters, activation values, and gradient values are involved, each of which must be completely updated in each training iteration, which requires very high computing and throughput capacity.
- GPUs have strong parallelism and high memory bandwidth, making them extremely efficient at processing the computations associated with training deep neural networks. Therefore, using a GPU cluster integrated with multiple GPUs can effectively improve the training and inference speed of neural network models.
- the realization of identifying the product defect content in the product image through the target model is as follows: first, the product image is scaled to a fixed pixel size MxN (or no scaling is required), and then the MxN
- the image is sent to the target model (VGG/Resnet/MobileNet, etc.); the feature maps of the entire image are obtained through multi-layer convolution layers, activation layers, and pooling layers; the feature maps are input to the screening area network (ZF/ SSD/RPN, etc.), after calculation, a proposal region (proposal region) is obtained; then, operations such as convolution pooling are performed on the proposed region to obtain the regional feature map (proposal feature) of the proposed region, and then the regional feature map (proposal feature) is obtained.
- the method for identifying the content of product defects based on the defect model may adopt similar variations of the above-mentioned methods or other methods known to those skilled in the art, which are not limited in the present disclosure.
- the backend and the server may be a set of distributed system architectures, which are formed by interconnecting messages and communications through a network and coordinating their behaviors. Components interact with each other to achieve a common goal.
- the network can be the Internet of Things (Internet of Things) based on the Internet and/or a telecommunication network, which can be a wired network or a wireless network, for example, it can be a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN) ), cellular data communication networks and other electronic networks that can realize the function of information exchange.
- a distributed computing system may have software components such as software objects or other types of individually addressable isolated entities such as distributed objects, agents, actors, virtual components, and the like.
- each such component is individually addressable and has a unique identity (such as an integer, GUID, string, or opaque data structure, etc.) in the distributed system.
- applications can be deployed to reside in a cluster.
- Various systems, components, and network configurations exist that support distributed computing environments. For example, computing systems may be connected together by wired or wireless systems, by local networks or widely distributed networks. Currently, many networks are coupled to the Internet, which provides an infrastructure for widely distributed computing, and includes many different networks, although any network infrastructure may be used for system-prone communications such as those described in various examples.
- TMS system inference system
- server provide sharing of computer resources and services through communication exchanges between computing devices and systems.
- These resources and services include information exchange, cache storage, and disk storage for objects (eg, files).
- objects eg, files.
- These resources and services also include the sharing of processing power across multiple processing units for load balancing, resource scaling, specialization of processing, etc.
- the server 710 receives multiple inference tasks sent by the inference system 730 and multiple training tasks sent by the training system 740 , and assigns them to different processors 720 .
- Different nodes are used to process and complete the scheduling of tasks, which can ensure the timely execution of multiple inference tasks and training tasks.
- the first node, the second node, the third node, the fourth node, and the fifth node in the processor 720 , the sixth node and the seventh node are all used to perform inference tasks, then the first node, the second node, the third node, the fourth node, the fifth node, the sixth node and the seventh node can all access the inference algorithm storage. Library 209.
- the eighth node is used to perform the training task, and the eighth node may interact with the training algorithm repository 208 to enable the eighth node to complete the related training task.
- the first node, the second node, the third node, the fourth node, the fifth node, the sixth node, and the seventh node may all be GPU nodes, which are used to perform training tasks and inference tasks. .
- the server 710 can complete the scheduling of training tasks and inference tasks according to the type of nodes and the task volume of the nodes, wherein the nodes of the inference tasks can be obtained from the inference algorithm repository 209
- the training task can call the training algorithm from the training algorithm repository 208 .
- the inference system 730 and the training system 740 can communicate with the server 710 through the gateway 750 , and the reasoning task and the training task are sent to the slave server 710 , and the server 710 sends the inference task and the training task to the slave server 710 .
- the tasks are down and executed according to the state of each node in the processor 720 .
- the defect detection-based task processing apparatus 1000 includes: a communication node 1010 and a task management node 1020 .
- the communication node 1010 can be used to receive the detection task and identify the task type of the detection task; the task management node 1020 can be used to store the detection task in the target task type when the task type is the target task type a task queue; and when the processor is idle, executing the detection tasks in a preset order and generating a feedback signal.
- the above apparatus may further include a task proxy node 1030, and the task proxy node 1030 may be configured to receive the feedback signal and send the feedback signal through the communication module.
- each functional module of the defect detection-based task processing apparatus of the exemplary embodiment of the present disclosure corresponds to the steps of the above-mentioned exemplary embodiment of the defect detection-based task processing method, for details not disclosed in the apparatus embodiments of the present disclosure, please Refer to the above-mentioned embodiments of the task processing method based on defect detection in the present disclosure.
- modules or units of the apparatus for action performance are mentioned in the above detailed description, this division is not mandatory. Indeed, according to embodiments of the present disclosure, the features and functions of two or more modules or units described above may be embodied in one module or unit. Conversely, the features and functions of one module or unit described above may be further divided into multiple modules or units to be embodied.
- a defect detection-based task processing device capable of implementing the above-mentioned defect detection-based task processing is also provided.
- aspects of the present disclosure may be implemented as a system, method or program product. Therefore, various aspects of the present disclosure can be embodied in the following forms: a complete hardware embodiment, a complete software embodiment (including firmware, microcode, etc.), or a combination of hardware and software aspects, which may be collectively referred to herein as an embodiment "circuit", “module” or "system”.
- the defect detection-based task processing apparatus 1200 according to this embodiment of the present disclosure is described below with reference to FIG. 12 .
- the defect detection-based task processing device 1200 shown in FIG. 12 is only an example, and should not impose any limitations on the functions and scope of use of the embodiments of the present disclosure.
- the defect detection-based task processing device 1200 takes the form of a general-purpose computing device.
- the components of the defect detection-based task processing device 1200 may include, but are not limited to: the above-mentioned at least one processing unit 1210, the above-mentioned at least one storage unit 1220, a bus 1230 connecting different system components (including the storage unit 1220 and the processing unit 1210), and a display unit 1240.
- the storage unit stores program codes, and the program codes can be executed by the processing unit 1210, so that the processing unit 1210 executes various exemplary methods according to the present disclosure described in the above-mentioned “Exemplary Methods” section of this specification.
- the processing unit 1210 may perform step S120 as shown in FIG. 1 : receive a detection task, and determine the task type of the detection task; S120 : if the task type is a target task type, perform the detection task The task is stored in the task queue; S130 : when the processor is idle, execute the detection task according to a preset order and generate a feedback signal.
- the storage unit 1220 may include a readable medium in the form of a volatile storage unit, such as a random access storage unit (RAM) 1221 and/or a cache storage unit 1222 , and may further include a read only storage unit (ROM) 1223 .
- RAM random access storage unit
- ROM read only storage unit
- the storage unit 1220 may also include a program/utility 1224 having a set (at least one) of program modules 1225 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, An implementation of a network environment may be included in each or some combination of these examples.
- the bus 1230 may be representative of one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local area using any of a variety of bus structures bus.
- the defect detection-based task processing device 1200 may also communicate with one or more external devices 1270 (eg, keyboards, pointing devices, Bluetooth devices, etc.) 1200 interacts with the device, and/or with any device (eg, router, modem, etc.) that enables the defect detection-based task processing device 1200 to communicate with one or more other computing devices. Such communication may occur through input/output (I/O) interface 1250 . Also, the defect detection based task processing device 1200 may also communicate with one or more networks (eg, a local area network (LAN), a wide area network (WAN) and/or a public network such as the Internet) through a network adapter 1260 .
- networks eg, a local area network (LAN), a wide area network (WAN) and/or a public network such as the Internet
- network adapter 1260 communicates with other modules of defect detection based task processing device 1200 via bus 1230. It should be understood that, although not shown, other hardware and/or software modules may be used in conjunction with defect detection based task processing device 1200, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.
- the exemplary embodiments described herein may be implemented by software, or may be implemented by software combined with necessary hardware. Therefore, the technical solutions according to the embodiments of the present disclosure may be embodied in the form of software products, and the software products may be stored in a non-volatile storage medium (which may be CD-ROM, U disk, mobile hard disk, etc.) or on a network , including several instructions to cause a computing device (which may be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to an embodiment of the present disclosure.
- a computing device which may be a personal computer, a server, a terminal device, or a network device, etc.
- a computer-readable storage medium on which a program product capable of implementing the above-described method of the present specification is stored.
- various aspects of the present disclosure may also be implemented in the form of a program product including program code for causing the program product to run on a terminal device when the program product is run on a terminal device.
- the terminal device performs the steps according to various exemplary embodiments of the present disclosure described in the above-mentioned "Example Method" section of this specification.
- the above-mentioned processor may include a first processor and a second processor, wherein the first processor is used to perform the above-mentioned inference task and training task, and the first processor includes a plurality of nodes, which can be divided into inference tasks The task node and the training task node, the inference task node is used to execute the inference task, and the training task node is used to execute the training task.
- the second processor is used to perform the detection task of the reference task type, which may specifically be the training status query task, the early termination of the training task, the node information query task (queries the unique identification number and type type of the current GPU node), the task queue clearing task clear and Task status query tasks, etc. Yes, multiple tasks will not conflict with each other during execution, which can ensure the timeliness of task execution.
- each of the first processors may include at least one graphics processor.
- a program product 1300 for implementing the above-described method is described according to an embodiment of the present disclosure, which may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be stored in a terminal device, such as a personal run on the computer.
- CD-ROM portable compact disc read only memory
- the program product of the present disclosure is not limited thereto, and in this document, a readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
- the program product may employ any combination of one or more readable media.
- the readable medium may be a readable signal medium or a readable storage medium.
- the readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or a combination of any of the above. Examples (a non-exhaustive list) of body-readable storage media include: electrical connections with one or more wires, portable disks, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, portable compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
- a computer readable signal medium may include a propagated data signal in baseband or as part of a carrier wave with readable program code embodied thereon. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
- a readable signal medium can also be any readable medium, other than a readable storage medium, that can transmit, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- Program code embodied on a readable medium may be transmitted using any suitable medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
- Program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages—such as Java, C++, etc., as well as conventional procedural Programming Language - such as the "C" language or similar programming language.
- the program code may execute entirely on the user computing device, partly on the user device, as a stand-alone software package, partly on the user computing device and partly on a remote computing device, or entirely on the remote computing device or server execute on.
- the remote computing device may be connected to the user computing device through any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (eg, using an Internet service provider business via an Internet connection).
- LAN local area network
- WAN wide area network
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Analytical Chemistry (AREA)
- Pathology (AREA)
- Immunology (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Biochemistry (AREA)
- Chemical & Material Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
一种基于缺陷检测的任务处理方法及装置、计算机可读存储介质及基于缺陷检测的任务处理设备,方法包括:接收检测任务,并确定检测任务的任务类型(S110);若任务类型为目标任务类型,则将检测任务存储至任务队列(S120);当处理器空闲时,按照预设顺序执行检测任务并生成反馈信号(S130);其中,目标任务类型的检测任务包括推理任务和训练任务;执行训练任务包括:根据检测任务中的产品信息按照预设规则修改配置信息;根据产品信息获取训练数据以及初始模型;利用训练数据根据配置信息对初始模型进行训练得到目标模型并存储。
Description
本公开涉及缺陷检测技术领域,具体而言,涉及一种基于缺陷检测的任务处理方法、装置及设备、计算机非易失性计算机可读存储介质。
现有技术中对显示屏缺陷的检测是通过人工进行检测的,检测速度慢且容易由于人为的失误造成不必要的损失。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
根据本公开的第一方面,提供了一种基于缺陷检测的任务处理方法,包括:
接收检测任务,并确定所述检测任务的任务类型;
若所述任务类型为目标任务类型,则将所述检测任务存储至任务队列;
当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号;
所述目标任务类型的检测任务包括推理任务和训练任务;执行所述训练任务包括:
根据检测任务中的产品信息按照预设规则修改配置信息;
根据所述产品信息获取训练数据以及初始模型;
利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储。
在本公开的一种示例性实施例中,所述任务类型包括所述目标任务类型和参考任务类型;
若所述任务类型为参考任务类型,则处理器直接执行所述检测任务。
在本公开的一种示例性实施例中,所述按照预设顺序执行所述检测任务包括:
按照存储至所述任务队列的先后顺序执行所述检测任务。
在本公开的一种示例性实施例中,所述根据检测任务中的产品信息按照预设规则修改配置信息,包括:
提取所述检测任务中的产品信息字段以获取产品信息;
根据所述产品信息按照预设规则设置训练的图像尺寸、训练次数、测试次数、缺陷阈值以及学习率下降策略。
在本公开的一种示例性实施例中,所述训练任务中包括训练数据获取地址以及模型数据信息;所述根据所述产品信息获取训练数据以及初始模型,包括:
根据所述训练数据获取地址下载所述训练数据;
根据模型数据信息字段获取模型数据信息;
根据所述模型数据信息获取所述初始模型。
在本公开的一种示例性实施例中,所述训练数据包括标签文件以及图像文件,在利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储之前,所述方法还包括:
对所述训练数据进行预处理;
述对所述训练数据进行预处理包括:
删除图像文件中的异常图像;
删除无需匹配标签文件的图像文件;
将图像文件与标签文件进行匹配;
按照预设比例将所述训练数据分训练集、验证集以及测试集。
在本公开的一种示例性实施例中,所述利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储包括:
根据所述训练集、验证集以及所述训练次数训练所述初始模型;
利用所述测试集和所述测试次数完成对训练后初始模型的测试得到所述目标模型并存储。
在本公开的一种示例性实施例中,所述检测任务中包括任务类型标签,所述确定所述检测任务的任务类型,包括:
识别所述检测任务中的任务类型标签确定所述检测任务的任务类型。
在本公开的一种示例性实施例中,所述执行所述训练任务还包括:
将所述目标模型以及训练结果上传至预设地址;
述训练结果包括所述目标模型的准确率、召回率和F1分数。
在本公开的一种示例性实施例中,执行所述推理任务包括:
根据所述产品信息获取所述目标模型以及所述产品的图像信息;
将所述图像信息输入所述目标模型获取产品的缺陷位置以及缺陷类型。
在本公开的一种示例性实施例中,所述推理任务中包括图像信息获取地址,所述根据所述产品信息获取所述产品的图像信息包括:
根据所述图像信息获取地址下载所述图像信息。
在本公开的一种示例性实施例中,根据所述产品信息获取所述目标模型,包括:
检测本地存储库中是否存在与所述产品信息对应的目标模型;
若所述本地存储库中存在于所述与所述产品信息对应的目标模型。则在本地存储库中加载所述目标模型;
若所述本地存储库中不存在于所述与所述产品信息对应的目标模型,则所述本地存储库根据所述产品信息下载所述产品信息对应的目标模型。
在本公开的一种示例性实施例中,所述本地存储库中包括预设数量的目标模型,在所述本地存储库中的目标模型数量大于所述预设数量时,根据所述目标模型被使用的时间顺序更新所述本地存储库以使得所述本地存储库中的目标模型的数量保持在所述预设数量。
在本公开的一种示例性实施例中,所述执行推理任务还包括:
根据所述产品的所述缺陷位置以及所述缺陷类型生成所述反馈信号。
根据本公开的一个方面,提供一种基于缺陷检测的任务处理装置,包括:
通讯节点,用于接收检测任务并识别所述检测任务的任务类型;
任务管理节点,用于在所述任务类型为目标任务类型时,将所述检测任务存储至任务队列;以及用于在当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号。
在本公开的一种示例性实施例中,所述装置还包括:
任务代理节点,用于接收所述反馈信号并通过所述通讯模块发送所述反馈信号。
根据本公开的一个方面,提供一种基于缺陷检测的任务处理设备,包括:
处理器;以及
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述任意一项所述的基于缺陷检测的任务处理方法。
在本公开的一种示例性实施例中,所述任务类型包括所述目标任务类型和参考任务类型;所述处理器包括:
第一处理器,所述第一处理器包括至少一个图形处理器,用于执行所述推理任务和训练任务;
第二处理器,所述第二处理器包括至少一个图形处理器,用于执行参考任务类型的检测任务。
根据本公开的一个方面,提供一种非易失性计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述任意一项所述的基于缺陷检测的任务处理方法。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出本公开示例性实施例中基于缺陷检测的任务处理方法的流程图;
图2示意性示出本公开示例性实施例中服务端的示意图;
图3示意性示出本公开示例性实施例中执行训练任务的流程图;
图4示意性示出本公开示例性实施例中执行训练任务时多段的交互示意图;
图5示意性示出本公开示例性实施例中执行推理任务的流程图;
图6示意性示出本公开示例性实施例中执行推理任务时多段的交互示意图;
图7示意性示出本公开示例性实施例中服务端的架构部署示意图;
图8示意性示出本公开示例性实施例中服务端的任务调度的示意图;
图9示意性示出本公开示例性实施例中服务端与后台交互的***架构示意图;
图10示意性示出本公开示例性实施例中一种基于缺陷检测的任务处理装置的组成示意图;
图11示意性示出本公开示例性实施例中另一种基于缺陷检测的任务处理装置的组成示意图;
图12示意性示出了适于用来实现本公开示例性实施例的基于缺陷检测的任务处理设备的计算机***的结构示意图;
图13示意性示出了根据本公开的一些实施例的计算机可读存储介质的示意图。
现在将参照附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在本示例性实施例中,首先提供了一种基于缺陷检测的任务处理方法,可以应用于对显示屏的缺陷检测。参照图1中所示,上述的基于缺陷检测的任务处理方法可以包括以下步骤:
S110,接收检测任务,并确定所述检测任务的任务类型;
S120,若所述任务类型为目标任务类型,则将所述检测任务存储至任务队列;
S130,当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号;
其中,所述目标任务类型的检测任务包括推理任务和训练任务;执行所述训练任务包括:
根据检测任务中的产品信息按照预设规则修改配置信息;
根据所述产品信息获取训练数据以及初始模型;
利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储。
根据本示例性实施例中所提供的基于缺陷检测的任务处理方法中,相较于现有技术,通过接受检测任务并将目标任务类型的检测任务存储至任务队列,在处理器空闲时处理检测任务,完成训练任务以及推理任务来实现对产品的检测,采用计算机训练模型并利用模型来进行推理,无需人为完成对产品的检测,加快了检测效率,防止了由于人为失误而导致的损失,提升了检测精度。
下面,将结合附图及实施例对本示例性实施例中的基于缺陷检测的任务处理方法的各个步骤进行更详细的说明。
步骤S110,接收检测任务,并确定所述检测任务的任务类型。
在本公开的一种示例实施例中,参照图2所示,服务端接收检测任务,检测任务可以由后台210发出,检测任务的任务类型可以包括目标任务类型和参考任务类型,其中,目标任务类型的检测任务可以包括训练任务、推理任务等,参考任务类型的检测任务可以包括训练状态查询任务、提前终止训练任务、节点信息查询任务(查询当前GPU节点的唯一标识号以及类型)、任务队列202清除任务以及任务状态查询任务。在本示例实施方式中,所述服务端可以为gpu服务器。
在本示例实施方式中,上述检测任务中包括任务类型标签,服务端可以根据上述任务类型标签来确定上述检测任务的任务类型。其中检测任务的任务格式由任务头和任务体组成,其中任务头可用于区分任务的类型,在本示例实时方核实中可以包括三种类型的任务头,分别为transact(事务请求任务)、reply(事务返回任务)和ack(应答任务)。Transact类型的任务体中可以包括”type”键以指明该检测任务的类型。
在本示例实施方式中,服务端可以通过通讯节点201与后台210建立套接字网络连接,后台210可以通过tcp协议向服务端的通讯节点201发送检测任务,服务端通过上述通讯节点201来接收上述检测任务,并通过上述任务类型标签确定检测任务的任务类型。
在步骤S120中,若所述任务类型为目标任务类型,则将所述检测任务存储至任务队列;
在本公开的一种实施方式中,参照图2所示,上述通讯节点201接收到的各种检测任务的数量可以包括多个,在上述检测任务的任务类型为目标任务类型时,目标任务类型中的检测任务,如训练任务,推理任务均需要耗费较长的时间来执行,因此可将上述检测任务存储至任务队列202。
在本示例实施方式中,上述检测任务为参考任务类型时,由于参考任务类型的检测任务的执行时间相对较短,因此可以直接由处理器执行。
在步骤S130中,当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号;
在本示例实施方式中,服务端可以试试检测处理器的状态,当处理器在给检测任务之前的任务全部完成之后,按照预设顺序执行上述检测任务。其中,上述预设顺序可以是储存至任务队列的先后顺序,也可以是根据任务的执行难度,在本示例实施方式中不做具体限定。
具体而言,参照图3所示,当执行所述训练任务包括如下步骤:
步骤S310,根据检测任务中的产品信息按照预设规则修改配置信息;
步骤S320,根据所述产品信息获取训练数据以及初始模型;
步骤S330,利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储。
在本示例实施方式中,参照图4所示,上述训练任务包括训练数据获取地址、模型数据信息、训练模型上传地址、训练结果上传地址以及ftp服务端的相关配置等训练中需要的基本信息,可以首先执行步骤S401,由通信节点201从后台210接收训练任务,在通信节点在接收训练任务后,执行步骤S402,将训练任务放入任务队列202中;由任务管理节点203监测处理器的状态,等处理器空闲时,会从队列中提取训练任务,并依次获取训练数据以及初始模型,并开始执行步骤S403,执行训练任务。
在本示例实施方式中,在获取训练数据时,首先,可以执行步骤S404和步骤S405,可以从远程的ftp服务器(FTP SERVER)206上下载大批量的训练数据用于对初始模型的训练,并需按照算法所设格式来存放。由于训练数据的数据量较大,可能包括几十万张图像,因此可以采用(FTP client)ftp客户端利用多线程ftp协议205加载训练数据。在完成对训练数据的获取之后,执行步骤S406和步骤S407,开启训练算法,可以从训练算法存储库208调用训练算法,利用训练数据对上述初始模型进行训练。等达到预设训练次数或者达到训练准确率、召回率等指标要求,可退出训练算法,并执行步骤S412,完成上述训练任务。然后执行步骤S408、步骤S409、步骤S410以及步骤S411,将训练好的模型以及训练结果详情(如训练准确率、召回率、损失值的曲线图、缺陷混淆矩阵等图表)上传到ftp服务端指定目录中,其中上述目录可以从上述训练任务中提取。
然后,执行步骤S413和步骤S414,可以将最终训练结果(准确率、召回率、f1分数以及模型的md5值)按照指定格式打包成tcp消息,训练任务结束。然后,处理器会将训练结果发送给任务代理节点204节点,再由任务代理节点204节点反馈给上述通讯节点201,通讯节点201最终发送给后台210,整个训练流程结束。
下面对上述各个步骤进行详细说明。
在步骤S310中,根据检测任务中的产品信息按照预设规则修改配置信息;
在本示例实施方式中,根据实际的业务需求,可以涉及3种类型图像,分别可以为最终站点图像(SD_final站点)、中间站点图像(mask站点)和tdi灰度图;其中SD_final最终站点图像可以应用的模型为subcode模型(子代码模型)和maincode模型(主代码模型))、中间站点的图像可以应用子代码模型(subcode模型);tdi灰度图可以应用子代码模型(subcode模型)。
在本示例实施方式中,其中,最终站点图像是按产品种类来划分模型,因此,可以通过不同的模型名来进行区分不同的产品,其中最终站点图像采用的模型的命名格式可以为product_产品名_日期,主代码模型(maincode模型)的命名格式为maincode_产品名_日期;其中模型名的命名还可以根据需求进行自定义,在本示例实施方式中不做具体限定。
在本示例实施方式中,中间站点图像是按站点来划分模型,中间站点图像采用的子代码模型的模型名的命名规则可以为mask_站点名_日期;其中模型名的命名还可以根据需求进行自定义,在本示例实施方式中不做具体限定。
在本示例实施方式中,tdi灰度图是根据常规和车载来划分模型,tdi灰度图采用的模型的命名规则可以为tdi_1/2_日期,其中,常规产品的模型使用1,车载产品的模型使用2。由于不同的模型类型会对应一组不同的数据处理(图像尺寸、图像与标签匹配方式等),此外不同产品,或相同站点的不同产品会对应不同的训练参数,因此在调用训练算法前,服务端需要明确训练模型及产品,或站点信息。
在本示例实施方式中,由于不同产品,或相同站点的不同产品同种缺陷代码的发生率及背底形态差异较大,这会导致不同产品,或不同站点的相同产品相同缺陷代码的训练数据的数量及识别难易度不同。因此,需要针对单独的产品,或不同站点的相同产品设置不同的训练代码列表、特殊缺陷代码阈值、图像尺寸、学习率下降策略、训练次数、测试次数等配置信息。
在本示例实施方式中,在训练开启前,用户可在界面上根据即将提交的训练任务设置上述参数,然后训练***会将界面参数写入到服务端的的配置文件中。在开启训练算法后,服务端会根据训练任务的模型类型和产品信息去读取相应的配置信息。
在步骤S320,根据所述产品信息获取训练数据以及初始模型;
步骤S330,利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储。
在本公开的一种示例实施方式中,服务端接收训练***发送的训练任务,并对任务进行解析。为了通过训练任务来确定模型类型和产品名/站点名,训练任务中包含了"modelPath"(模型字段)和"trainType"字段(产品信息字段)。通过对这两个字段的解析,服务端能明确此次要训练的模型类型和站点名和产品名。例如,任务中包含"modelPath":/XXX/XXX/XXX/product_ak_20200422084814916"和"trainType":"subCodeTraining"字段,服务端的处理器通过解析这两个字段,会明确此次要训练最终站点图像,ak产品的子代码模型。
在本示例实施方式中,训练数据是训练模型的核心,训练数据可以是人为上传至以指定地址,服务端在执行训练算法前,会从指定的地址下通过ftp方式将数据下载到服务端的本地文件中,以便后续数据处理。
在本示例实施方式中,在训练开始前,服务端可以解析出此次训练任务中的模型数据信息,其中模型数据信息可以包括模型类型、产品名、站点名及对应的配置信息。并根据上述模型数据信息获取初始模型,在获取到训练数据和初始模型之后,服务端在训练算法存储库中调用并开启训练算法,其中训练算法可以包括对训练数据的预处理、训练模块以及测试模块,其中训练模块用于对初始模型进行训练,测试模块用于对训练后的初始模型进行测试。
在本示例实施方式中,在对训练数据进行预处理时,具体而言,首先,可以分别检查image和xml两个文件夹下,删除异常code文件夹,如other,unknown文件夹等,以及image和xml不匹配的文件夹;然后,删除不需要标签的code对应的xml文件夹,并将图像文件与标签文件进行匹配,删除不需要xml的code文件夹:根据具体训练数据类型,在xml文件夹下删除对应code文件夹。最后,将image和xml文件匹配:将图像image和标签xml文件夹下所有的图像和标签文件进行一一匹配,删除掉没有标签文件对应的图片,或者删掉没有图片对应的标签文件。其中image文件为图像文件,xml文件为标签文件。
在本示例实施方式中,可以对上述训练数据按照预设比例进行分配,得到训练集、验证集和测试集,其中预设比例可以是8:1:1。也可以是6:2:2,在本示例实施方式中不做具体限定,
具体而言,可以生成txt文件,并将上述数据集按8:1:1划分为训练集、验证集和测试集,并分别写入train.txt、val.txt和test.txt三个文件。其中,train.txt、val.txt和test.txt分别对应训练集、验证集和测试集,同时,在生成txt文件的过程中,可以对文件进行检查,删除有问题图像,不写入txt文件中。
在本示例实施方式中,在对训练数据完成预处理后,利用上述训练数据对初始模型进行训练以得到目标模型。根据配置信息中的"image_scales",训练集的图像会被修改到对应的尺寸,然后被送入构建好的网络中参与初始模型网络参数的学习。配置信息中 的"learningRate_stepSize"设定了学习率下降策略,即初始模型训练到指定轮数后,学习率会被下降到原来的约1/9至1/10,便于初始模型尽快收敛。"max_step"设定了训练次数,即等模型训练到指定次数,此次训练任务结束。
在本示例实施方式中,在对上述初始模型训练完成后,服务端可以根据配置文件中的"test_model_iter",使用测试数据集(test.txt文件)对训练后的初始模型进行预设次数的模型测试,并得到各个测试次数的模型效果(准确率、召回率和F1score)。用户可根据测试模型的准确率和召回率选择最佳的模型为目标模型用于推理任务。
在本示例实施方式中,在完成对初始模型的训练得到目标模型之后,服务端可以会将目标模型存储至指定地址,即通过上述ftp客户端(FTP client)205上传到上述ftp服务器(FTP SERVER)206。
在本示例实施方式中,在对模型进行测试时,会生成模型的混淆矩阵。服务端将目标模型对应的混淆矩阵文件上传到消息中指定的路径下,即通过上述ftp客户端(FTP client)205上传到上述ftp服务器(FTP SERVER)206。然后服务端通过任务代理节点204以及通讯及节点向后台210发送反馈信息,完成训练任务。
在本公开的一种示例实施方式中,参照图5所示,执行推理任务可以包括如下步骤:
步骤S510,根据所述产品信息获取所述目标模型以及所述产品的图像信息;
步骤S520,将所述图像信息输入所述目标模型获取产品的缺陷位置以及缺陷类型。
在本示例实施方式中,参照图6所示,可以使用上述目标模型对产品及进行实时推理来获取产品的缺陷种类。可以首先获取产品的图像信息,图像信息可以会存放在xml文件中,其中图像信息可以包括站点信息、产品型号、图像存放地址等信息。
在本示例实施方式中,推理***会将产线数据集的xml文件地址以tcp消息形式发送给后台210,后台210可以从根据文件地址获取xml文件,并解析xml文件中数据集的信息,整理成推理任务,其中推理任务包括推理数据集加载地址、推理模型加载地址、推理模型md5值以及ftp服务端的相关配置等信息,发送给通信节点;然后可以执行步骤S501和步骤S502,通讯节点201接收该推理任务,并将推理任务放入任务队列中。等任务管理节点203空闲时,会从队列中获取该推理任务对象,并执行步骤S503,开始执行推理任务。
在本示例实施方式中,对于推理任务,可以首先执行步骤S504步骤S505、步骤S506、步骤S507以及步骤S508,首先需要可以根据产品信息从远程ftp服务端(FTP SERVER)206上加载推理任务所需要的图像信息,以及通过模型加载器207加载与该数据集匹配的目标模型,模型加载可以首先从本地缓存的模型中加载,若本地加载失败,再从远程ftp服务端通过ftp协议(FTP clint)205下载目标模型。等图像信息和目标模型下载完成之后,可以执行步骤S509,有处理器从推理算法存储库209中调用推理算法进行推理。等图像信息中的所有图像推理完成后,执行步骤S510,退出推理算法,结束推理任务。最后可以执行步骤S511、步骤S512、步骤S513,将推理结果消息(每张推理图像的maincode类以及属于该maincode类的置信度、subcode类以及属于该subcode类的置信度和缺陷框的位置等)按照指定格式打包成tcp消息,到此推理任务结束;任务管理节点203会将打包好的消息发送给任务代理节点204,再由任务代理节点反馈给通讯节点201,通讯节点201再发送给后台210。
下面对上述步骤进行详细说明。
在本示例实施方式中,不同的推理任务可能会对应不同产品信息,因此每次推理任务可能调用不同得目标模型。若每次接收到任务后,再加载对应任务的目标模型会非常耗时,可能造成任务处理超时。因此,为了节省推理时间,服务端启动后,首先会提前完成对目标模型的加载,对每次接收到的推理任务,直接调用加载好的目标模型。
在本示例实施方式中,由于业务中涉及到的产品种类以及站点过多,以及每种产品 都可以对应不同的目标模型,若所有模型都被加载到显存,可能导致显存溢出而无法完成推理任务。因此,可以在首次启动服务端时,可以只将较为常用的产品对应的目标模型加载到显存中。后续有产品对应的目标模型需要加载时,在对应加载。
在本示例实施方式中,在每次加载目标模型时,会把加载时间当作时间戳绑定到每个目标模型。并且目标模型每次被调用后,会更改时间戳为调用时间。此外,还会把训练初始模型前设置的配置信息中对应的code列表、通用阈值和特殊阈值绑定到目标模型上。后续配置信息被修改后,不会影响推理任务。
在步骤S510,根据所述产品信息获取所述目标模型以及所述产品的图像信息;
在本示例实施方式中,在接收到推理任务消息后,服务端会先对推理任务进行解析,获取此次推理任务的图像列表(每张图像的绝对路径)、调用的subcode模型、maincode模型及tdi模型等信息。
在本示例实施方式中,根据推理任务消息中的图像信息获取地址,将此次推理任务的图像信息下载到服务端本地,然后可以加载目标模型,在加载目标模型时,可以首先判断推理任务中指定的目标模型是否已经被加载过。若已加载的目标模型列表中存在与图像信息对应的目标模型,直接调用加载好的目标模型完成推理即可;若已加载的目标模型列表不存在与图像信息对应的目标模型,则判断已加载产品信息列表中是否存在指定模型中的产品名以及站点名。如果存在,则该模型为待更新目标模型,这样就需重新加载新的目标模型,并把旧模型从显存中释放掉;如果不存在,该模型为待新上线模型,需先加载新的目标模型。新加载目标模型可在线完成,并会被添加到已加载目标模型列表中。
在本示例实施方式中,为了防止一直加载新模型导致显存溢出,当加载到显存中的模型达到预设数量后会根据上述时间戳把长时间不被调用的目标模型删除掉,并释放显存。其中预设数量可以是30个、40个等,也可以根据用户使用的服务器配置进行设置,在本示例实施方式中不做具体限定。
步骤S520,将所述图像信息输入所述目标模型获取产品的缺陷位置以及缺陷类型。
在本示例实施方式中,在上述目标模型加载完成后,推理任务中的图像信息会被依次读入内存并送入准备好的目标模型中进行推理。基于设置阈值,每张图像通过模型后会得到所属的缺陷类别、缺陷位置及其置信度。等此次任务中的图像信息都得到缺陷类别、缺陷位置及其置信度后,退出推理算法,完成推理任务。
在本示例实施方式中,在得到所有图像信息的缺陷类别、缺陷位置及其置信度后,将整个任务中所有图像的推理结果进行整合,然后通过任务代理节点以及通讯节点返回给推理***。
在本示例实施方式中,服务端可以是能够利用GPU计算资源执行推理任务和训练任务的一个或多个设备。基于人工智能进行的推理任务可以是基于目标模型的缺陷识别任务,该目标模型主要是基于深度学习的神经网络模型。例如,目标模型可以是基于前馈神经网络的。前馈网络可以被实现为无环图,其中节点布置在层中。通常,前馈网络拓扑包括输入层和输出层,输入层和输出层通过至少一个隐藏层分开。隐藏层将由输入层接收到的输入变换为对在输出层中生成输出有用的表示。网络节点经由边缘全连接至相邻层中的节点,但每个层内的节点之间不存在边缘。在前馈网络的输入层的节点处接收的数据经由激活函数被传播(即,“前馈”)至输出层的节点,所述激活函数基于系数(“权重”)来计算网络中的每个连续层的节点的状态,所述系数分别与连接这些层的边缘中的每一个相关联。目标模型的输出可以采用各种形式,本公开对此不作限制。目标模型还可以包括其他神经网络模型,例如,卷积神经网络(CNN)模型、循环神经网络(RNN)模型、生成式对抗网络(GAN)模型,但不限于此,也可以采用本领域技术人员公知的其他神经网络模型。
目标模型模型通常需要通过训练获得。在上述利用训练算法对初始进行训练可以包括如下步骤:选择网络拓扑;使用表示被网络建模的问题的一组训练数据;以及调节权重,直到网络模型针对训练数据集的所有实例表现为具有最小误差。例如,在用于神经网络的监督式学习训练过程期间,将由网络响应于表示训练数据集中的实例的输入所产生的输出与该实例的“正确”的已标记输出相比较;计算表示所述输出与已标记输出之间的差异的误差信号;以及当将误差信号向后传播穿过网络的层时,调节与所述连接相关联的权重以最小化该误差。当从训练数据集的实例中生成的每个输出的误差被最小化时,该初始模型被视为“已经过训练”并定义为目标模型,并可以用于人工智能推理任务。
神经网络模型的推理和训练过程中,涉及大量参数、激活值、梯度值的缓冲区,其每个值在每一次训练迭代中都要被完全更新,对计算和吞吐能力的需求非常高。而GPU具有强并行能力和高显存带宽,在处理与训练深度神经网络相关联的计算时极其高效。因此,使用多个GPU集成的GPU集群可以有效地提高神经网络模型的训练和推理速度。
在本公开的实施例中,基于所述推理任务,通过目标模型识别产品图像中的产品缺陷内容的实现方式如下,首先将产品图像缩放至固定像素大小MxN(也可不进行缩放),然后将MxN图像送入目标模型(VGG/Resnet/MobileNet等);通过多层卷积层、激活层、池化层,获得整个图像的特征图(feature maps);把特征图输入到筛选区域网络(ZF/SSD/RPN等),经过计算,获得建议区域(proposal region);然后,针对建议区域进行卷积池化等操作,获得建议区域的区域特征图(proposal feature),再将区域特征图(proposal feature)送入后续全连接和softmax网络作分类(classification即分类proposal到底是什么缺陷),获得最大概率的缺陷类别作为最后分类结果,记录类别和概率。另外建议区域(proposal region)的坐标和尺寸代表了缺陷的位置和大小。基于缺陷模型识别产品缺陷内容的方法可以采用上述方法的类似变形或者其他本领域技术人员公知的方法,本公开在此不做限定。
在本公开的一种示例实施方式中,后台与服务端可以是一组分布式***架构,通过网络相互连接传递消息与通信后并协调它们的行为而形成的***。组件之间彼此进行交互以实现一个共同的目标。网络可以是基于互联网和/或电信网的物联网(Internet of Things),其可以是有线网也可以是无线网,例如,其可以是局域网(LAN)、城域网(MAN)、广域网(WAN)、蜂窝数据通信网络等能实现信息交换功能的电子网络。分布式计算***可以具有软件组件,诸如软件对象或其他类型的个体可寻址的孤立实体,诸如分布式对象、代理、动作方(actor)、虚拟组件等。通常,每个这样的组件个体可寻址,并且在分布式***中具有唯一的身份(诸如整数、GUID、字符串或不透明数据结构等)。在允许地理分布的分布式***中,应用可以通过部署而被驻留在一个集群中。存在支持分布式计算环境的各种***、组件和网络配置。例如,计算***可以通过有线或无线***,通过本地网络或广泛分布式网络连接在一起。当前,很多网络耦合到因特网,其为广泛分布式计算提供基础设施,并且包括很多不同的网络,尽管任何网络基础设施可以用于例如在各种示例中描述的易发生于***的通信。
上述后台、TMS***(推理***)以及服务端通过计算设备和***之间的通信交换提供计算机资源和服务的共享。这些资源和服务包括针对对象(例如文件)的信息交换、高速缓存存储装置和磁盘存储装置。这些资源和服务还包括跨多个处理单元的处理能力的共享,用于负载平衡、资源扩展、处理的专业化等。
在本示例实施方式中,参照图7所示,服务端710接收推理***730发送的多个推理任务,以及由训练***740发送的多个训练任务,给将其分配给不同该处理器720的不同节点来处理,完成对任务的调度,能够保证及时的执行多个推理任务以及训练任务,例如,处理器720中的第一节点、第二节点、第三节点、第四节点、第五节点、第六节点以及第七节点均用于执行推理任务,那么第一节点、第二节点、第三节点、第四节点、 第五节点、第六节点以及第七节点则均能够访问推理算法存储库209。第八节点用于执行训练任务,则第八节点可以与训练算法存储库208进行交互以使得第八节点能够完成相关的训练任务。在本示例实施方式中,上述第一节点、第二节点、第三节点、第四节点、第五节点、第六节点以及第七节点则均可以是GPU节点,用于执行训练任务以及推理任务。
在本示例实施方式中,参照图8所示,服务端710可以根据节点的类型以及节点的任务量来完成对训练任务以及推理任调度,其中推理任务的节点均可以从推理算法存储库209中调用推理算法,训练任务均可以从训练算法存储库208中调用训练算法。
在本示例实施方式中,参照图9所示,可以根据推理***730以及训练***740可以通过网关750与服务端710进行通讯,将推理任务以及训练任务发送至从服务端710,由服务端710根据处理器720中的各个节点的状态将任务进行下并执行。
以下介绍本公开的装置实施例,可以用于执行本公开上述的基于缺陷检测的任务处理方法。此外,在本公开的示例性实施方式中,还提供了一种基于缺陷检测的任务处理装置。参照图10所示,所述基于缺陷检测的任务处理装置1000包括:通讯节点1010,任务管理节点1020。
其中,所述通讯节点1010可以用于接收检测任务并识别所述检测任务的任务类型;所述任务管理节点1020可以用于在所述任务类型为目标任务类型时,将所述检测任务存储至任务队列;以及当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号。
在本示例实施方式中,参照图11所示,上述装置还可以包括任务代理节点1030,任务代理节点1030可以用于接收所述反馈信号并通过所述通讯模块发送所述反馈信号。
由于本公开的示例实施例的基于缺陷检测的任务处理装置的各个功能模块与上述基于缺陷检测的任务处理方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的基于缺陷检测的任务处理方法的实施例。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述基于缺陷检测的任务处理的基于缺陷检测的任务处理设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为***、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“***”。
下面参照图12来描述根据本公开的这种实施例的基于缺陷检测的任务处理设备1200。图12显示的基于缺陷检测的任务处理设备1200仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图12所示,基于缺陷检测的任务处理设备1200以通用计算设备的形式表现。基于缺陷检测的任务处理设备1200的组件可以包括但不限于:上述至少一个处理单元1210、上述至少一个存储单元1220、连接不同***组件(包括存储单元1220和处理单元1210)的总线1230、显示单元1240。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1210执行,使得所述处理单元1210执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。例如,所述处理单元1210可以执行如图1中所示的步骤S120:接收检测任务,并确定所述检测任务的任务类型;S120:若所述任务类型为目标任务类 型,则将所述检测任务存储至任务队列;S130:当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号。
存储单元1220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)1221和/或高速缓存存储单元1222,还可以进一步包括只读存储单元(ROM)1223。
存储单元1220还可以包括具有一组(至少一个)程序模块1225的程序/实用工具1224,这样的程序模块1225包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
基于缺陷检测的任务处理设备1200也可以与一个或多个外部设备1270(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该基于缺陷检测的任务处理设备1200交互的设备通信,和/或与使得该基于缺陷检测的任务处理设备1200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1250进行。并且,基于缺陷检测的任务处理设备1200还可以通过网络适配器1260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1260通过总线1230与基于缺陷检测的任务处理设备1200的其它模块通信。应当明白,尽管图中未示出,可以结合基于缺陷检测的任务处理设备1200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。
在本示例实施方式中,上述处理器可以包括第一处理器以及第二处理器,其中第一处理器用于执行上述推理任务以及训练任务,且第一处理器包括多个节点,可以分为推理任务节点以及训练任务节点,推理任务节点用于执行推理任务,训练任务节点用于执行训练任务。第二处理器用于执行参考任务类型的检测任务,具体可以为训练状态查询任务、提前终止训练任务、节点信息查询任务(查询当前GPU节点的唯一标识号以及类型type)、任务队列清除任务clear以及任务状态查询任务等。是的多个任务执行过程中不会相互冲突,能够保证任务执行的及时性。其中各所述第一处理器可以包括至少一个图形处理器。
参照图13,描述了根据本公开的实施例的用于实现上述方法的程序产品1300,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的根据体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (19)
- 一种基于缺陷检测的任务处理方法,其中,包括:接收检测任务,并确定所述检测任务的任务类型;若所述任务类型为目标任务类型,则将所述检测任务存储至任务队列;当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号;其中,所述目标任务类型的检测任务包括推理任务和训练任务;执行所述训练任务包括:根据检测任务中的产品信息按照预设规则修改配置信息;根据所述产品信息获取训练数据以及初始模型;利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储。
- 根据权利要求1所述的方法,其中,所述任务类型包括所述目标任务类型和参考任务类型;若所述任务类型为参考任务类型,则处理器直接执行所述检测任务。
- 根据权利要求1所述的方法,其中,所述按照预设顺序执行所述检测任务包括:按照存储至所述任务队列的先后顺序执行所述检测任务。
- 根据权利要求1所述的方法,其中,所述根据检测任务中的产品信息按照预设规则修改配置信息,包括:提取所述检测任务中的产品信息字段以获取产品信息;根据所述产品信息按照预设规则设置训练的图像尺寸、训练次数、测试次数、缺陷阈值以及学习率下降策略。
- 根据权利要求4所述的方法,其中,所述训练任务中包括训练数据获取地址以及模型数据信息;所述根据所述产品信息获取训练数据以及初始模型,包括:根据所述训练数据获取地址下载所述训练数据;根据模型数据信息字段获取模型数据信息;根据所述模型数据信息获取所述初始模型。
- 根据权利要求4所述的方法,其中,所述训练数据包括标签文件以及图像文件,在利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储之前,所述方法还包括:对所述训练数据进行预处理;其中,所述对所述训练数据进行预处理包括:删除图像文件中的异常图像;删除无需匹配标签文件的图像文件;将图像文件与标签文件进行匹配;按照预设比例将所述训练数据分训练集、验证集以及测试集。
- 根据权利要求6所述的方法,其中,所述利用所述训练数据根据所述配置信息对所述初始模型进行训练得到目标模型并存储包括:根据所述训练集、验证集以及所述训练次数训练所述初始模型;利用所述测试集和所述测试次数完成对训练后初始模型的测试得到所述目标模型并存储。
- 根据权利要求1所述的方法,其中,所述检测任务中包括任务类型标签,所述确定所述检测任务的任务类型,包括:识别所述检测任务中的任务类型标签确定所述检测任务的任务类型。
- 根据权利要求1所述的方法,其中,所述执行所述训练任务还包括:将所述目标模型以及训练结果上传至预设地址;其中所述训练结果包括所述目标模型的准确率、召回率和F1分数。
- 根据权利要求1所述的方法,其中,执行所述推理任务包括:根据所述产品信息获取所述目标模型以及所述产品的图像信息;将所述图像信息输入所述目标模型获取产品的缺陷位置以及缺陷类型。
- 根据权利要求9所述的方法,其中,所述推理任务中包括图像信息获取地址,所述根据所述产品信息获取所述产品的图像信息包括:根据所述图像信息获取地址下载所述图像信息。
- 根据权利要求9所述的方法,其中,根据所述产品信息获取所述目标模型,包括:检测本地存储库中是否存在与所述产品信息对应的目标模型;若所述本地存储库中存在于所述与所述产品信息对应的目标模型,则在本地存储库中加载所述目标模型;若所述本地存储库中不存在于所述与所述产品信息对应的目标模型,则所述本地存储库根据所述产品信息下载所述产品信息对应的目标模型。
- 根据权利要求12所述的方法,其中,所述本地存储库中包括预设数量的目标模型,在所述本地存储库中的目标模型数量大于所述预设数量时,根据所述目标模型被使用的时间顺序更新所述本地存储库以使得所述本地存储库中的目标模型的数量保持在所述预设数量。
- 根据权利要求12所述的方法,其中,所述执行推理任务还包括:根据所述产品的所述缺陷位置以及所述缺陷类型生成所述反馈信号。
- 一种基于缺陷检测的任务处理装置,其中,包括:通讯节点,用于接收检测任务并识别所述检测任务的任务类型;任务管理节点,用于在所述任务类型为目标任务类型时,将所述检测任务存储至任务队列;以及用于在当处理器空闲时,按照预设顺序执行所述检测任务并生成反馈信号。
- 根据权利要求15所述的装置,其中,所述装置还包括:任务代理节点,用于接收所述反馈信号并通过所述通讯模块发送所述反馈信号。
- 一种基于缺陷检测的任务处理设备,其中,包括:处理器;以及存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-14中任一项所述的基于缺陷检测的任务处理方法。
- 根据权利要求17所述的基于缺陷检测的任务处理设备,其中,所述任务类型包括所述目标任务类型和参考任务类型;所述处理器包括:第一处理器,所述第一处理器包括至少一个图形处理器,用于执行所述推理任务和训练任务;第二处理器,用于执行参考任务类型的检测任务。
- 一种非易失性计算机可读存储介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-14任一项所述的基于缺陷检测的任务处理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/125439 WO2022088082A1 (zh) | 2020-10-30 | 2020-10-30 | 基于缺陷检测的任务处理方法、装置及设备及存储介质 |
CN202080002576.5A CN114945817A (zh) | 2020-10-30 | 2020-10-30 | 基于缺陷检测的任务处理方法、装置及设备及存储介质 |
US17/429,013 US11982999B2 (en) | 2020-10-30 | 2020-10-30 | Defect detection task processing method, device, apparatus and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/125439 WO2022088082A1 (zh) | 2020-10-30 | 2020-10-30 | 基于缺陷检测的任务处理方法、装置及设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022088082A1 true WO2022088082A1 (zh) | 2022-05-05 |
Family
ID=81381793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/125439 WO2022088082A1 (zh) | 2020-10-30 | 2020-10-30 | 基于缺陷检测的任务处理方法、装置及设备及存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11982999B2 (zh) |
CN (1) | CN114945817A (zh) |
WO (1) | WO2022088082A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114782445A (zh) * | 2022-06-22 | 2022-07-22 | 深圳思谋信息科技有限公司 | 对象缺陷检测方法、装置、计算机设备和存储介质 |
CN116633767A (zh) * | 2023-07-20 | 2023-08-22 | 科大讯飞股份有限公司 | 一种机间通信异常检测方法、装置、设备及存储介质 |
CN116990450A (zh) * | 2023-07-18 | 2023-11-03 | 欧几里德(苏州)医疗科技有限公司 | 一种角膜塑形镜的缺陷检测方法及*** |
CN117079182A (zh) * | 2023-07-31 | 2023-11-17 | 上海启呈信息科技有限公司 | 一种基于大数据分析的管网管理方法及*** |
CN117110636A (zh) * | 2023-10-19 | 2023-11-24 | 本溪钢铁(集团)信息自动化有限责任公司 | 煤炭样品电子称重检测的数据通信处理方法、装置及*** |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230016368A1 (en) * | 2021-07-15 | 2023-01-19 | International Business Machines Corporation | Accelerating inferences performed by ensemble models of base learners |
CN116170501B (zh) * | 2023-04-21 | 2023-07-11 | 广东中思拓大数据研究院有限公司 | 网络任务的处理方法、装置、服务器和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103458527A (zh) * | 2012-06-01 | 2013-12-18 | 中兴通讯股份有限公司 | 前导检测任务处理调度方法及装置 |
CN107274471A (zh) * | 2017-06-15 | 2017-10-20 | 深圳市彬讯科技有限公司 | 一种基于实时离线渲染并行的多优先级队列调度*** |
US20180331897A1 (en) * | 2016-01-30 | 2018-11-15 | Huawei Technologies Co.,Ltd. | Method and device for training model in distributed system |
CN109800137A (zh) * | 2018-12-06 | 2019-05-24 | 珠海西山居互动娱乐科技有限公司 | 一种服务器性能测试方法和*** |
CN110990132A (zh) * | 2019-11-01 | 2020-04-10 | 浙江大搜车软件技术有限公司 | 异步任务处理方法、装置、计算机设备和存储介质 |
CN111024708A (zh) * | 2019-09-06 | 2020-04-17 | 腾讯科技(深圳)有限公司 | 产品缺陷检测数据处理方法、装置、***和设备 |
CN111738156A (zh) * | 2020-06-23 | 2020-10-02 | 国网宁夏电力有限公司培训中心 | 一种高压开关设备状态智能巡检管理方法及*** |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481707A (en) * | 1991-05-19 | 1996-01-02 | Unisys Corporation | Dedicated processor for task I/O and memory management |
US7552016B2 (en) * | 2007-05-30 | 2009-06-23 | Allegro Microsystems, Inc. | Integrated circuit having a multi-purpose node configured to receive a threshold voltage and to provide a fault signal |
US8331650B2 (en) | 2010-07-29 | 2012-12-11 | Sharp Laboratories Of America, Inc. | Methods, systems and apparatus for defect detection |
CN104995603A (zh) * | 2013-11-14 | 2015-10-21 | 联发科技股份有限公司 | 至少部分基于共享相同数据及/或存取相同存储地址的任务分布的任务调度方法以及多核处理器***中用于分配任务的相关非暂时性计算机可读介质 |
US20160147883A1 (en) | 2015-12-29 | 2016-05-26 | Carterpillar Inc. | Method and system for determining defects per unit of a product |
JP6424874B2 (ja) * | 2016-10-12 | 2018-11-21 | オムロン株式会社 | 動作状態監視装置、学習データ生成装置、方法およびプログラム |
US10402688B2 (en) * | 2016-12-07 | 2019-09-03 | Kla-Tencor Corporation | Data augmentation for convolutional neural network-based defect inspection |
JP2018180875A (ja) | 2017-04-12 | 2018-11-15 | 富士通株式会社 | 判定装置、判定方法および判定プログラム |
US10604814B2 (en) * | 2017-09-27 | 2020-03-31 | International Business Machines Coporation | Manufacturing process control with deep learning-based predictive model for hot metal temperature of blast furnace |
US10831519B2 (en) * | 2017-11-22 | 2020-11-10 | Amazon Technologies, Inc. | Packaging and deploying algorithms for flexible machine learning |
CN108268892B (zh) | 2017-12-29 | 2019-02-19 | 英特尔产品(成都)有限公司 | 生产故障管理分析方法 |
US11263737B2 (en) | 2019-01-10 | 2022-03-01 | Lam Research Corporation | Defect classification and source analysis for semiconductor equipment |
JP7147615B2 (ja) * | 2019-02-15 | 2022-10-05 | 株式会社デンソー | タスク管理装置 |
CN110376220A (zh) | 2019-08-02 | 2019-10-25 | 中电九天智能科技有限公司 | 实现实时判定玻璃面板缺陷的装置及方法 |
KR20220047535A (ko) | 2019-08-19 | 2022-04-18 | 엘지전자 주식회사 | Ai 기반의 사전 훈련 모델 결정 시스템 및 이를 이용한 제품 생산 라인을 위한 ai 기반의 비전 검사 관리 시스템 |
US11144437B2 (en) | 2019-11-25 | 2021-10-12 | International Business Machines Corporation | Pre-populating continuous delivery test cases |
EP3859587A1 (en) * | 2020-01-29 | 2021-08-04 | Tata Consultancy Services Limited | Robotic task planning for complex task instructions in natural language |
US11494417B2 (en) * | 2020-08-07 | 2022-11-08 | Commvault Systems, Inc. | Automated email classification in an information management system |
-
2020
- 2020-10-30 CN CN202080002576.5A patent/CN114945817A/zh active Pending
- 2020-10-30 US US17/429,013 patent/US11982999B2/en active Active
- 2020-10-30 WO PCT/CN2020/125439 patent/WO2022088082A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103458527A (zh) * | 2012-06-01 | 2013-12-18 | 中兴通讯股份有限公司 | 前导检测任务处理调度方法及装置 |
US20180331897A1 (en) * | 2016-01-30 | 2018-11-15 | Huawei Technologies Co.,Ltd. | Method and device for training model in distributed system |
CN107274471A (zh) * | 2017-06-15 | 2017-10-20 | 深圳市彬讯科技有限公司 | 一种基于实时离线渲染并行的多优先级队列调度*** |
CN109800137A (zh) * | 2018-12-06 | 2019-05-24 | 珠海西山居互动娱乐科技有限公司 | 一种服务器性能测试方法和*** |
CN111024708A (zh) * | 2019-09-06 | 2020-04-17 | 腾讯科技(深圳)有限公司 | 产品缺陷检测数据处理方法、装置、***和设备 |
CN110990132A (zh) * | 2019-11-01 | 2020-04-10 | 浙江大搜车软件技术有限公司 | 异步任务处理方法、装置、计算机设备和存储介质 |
CN111738156A (zh) * | 2020-06-23 | 2020-10-02 | 国网宁夏电力有限公司培训中心 | 一种高压开关设备状态智能巡检管理方法及*** |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114782445A (zh) * | 2022-06-22 | 2022-07-22 | 深圳思谋信息科技有限公司 | 对象缺陷检测方法、装置、计算机设备和存储介质 |
CN114782445B (zh) * | 2022-06-22 | 2022-10-11 | 深圳思谋信息科技有限公司 | 对象缺陷检测方法、装置、计算机设备和存储介质 |
CN116990450A (zh) * | 2023-07-18 | 2023-11-03 | 欧几里德(苏州)医疗科技有限公司 | 一种角膜塑形镜的缺陷检测方法及*** |
CN116990450B (zh) * | 2023-07-18 | 2024-04-26 | 欧几里德(苏州)医疗科技有限公司 | 一种角膜塑形镜的缺陷检测方法及*** |
CN116633767A (zh) * | 2023-07-20 | 2023-08-22 | 科大讯飞股份有限公司 | 一种机间通信异常检测方法、装置、设备及存储介质 |
CN116633767B (zh) * | 2023-07-20 | 2023-12-01 | 科大讯飞股份有限公司 | 一种机间通信异常检测方法、装置、设备及存储介质 |
CN117079182A (zh) * | 2023-07-31 | 2023-11-17 | 上海启呈信息科技有限公司 | 一种基于大数据分析的管网管理方法及*** |
CN117079182B (zh) * | 2023-07-31 | 2024-02-23 | 上海启呈信息科技有限公司 | 一种基于大数据分析的管网管理方法及*** |
CN117110636A (zh) * | 2023-10-19 | 2023-11-24 | 本溪钢铁(集团)信息自动化有限责任公司 | 煤炭样品电子称重检测的数据通信处理方法、装置及*** |
CN117110636B (zh) * | 2023-10-19 | 2024-01-23 | 本溪钢铁(集团)信息自动化有限责任公司 | 煤炭样品电子称重检测的数据通信处理方法、装置及*** |
Also Published As
Publication number | Publication date |
---|---|
CN114945817A (zh) | 2022-08-26 |
US20230030296A1 (en) | 2023-02-02 |
US11982999B2 (en) | 2024-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022088082A1 (zh) | 基于缺陷检测的任务处理方法、装置及设备及存储介质 | |
KR102302609B1 (ko) | 신경망 아키텍처 최적화 | |
CN110807515A (zh) | 模型生成方法和装置 | |
CN108520220B (zh) | 模型生成方法和装置 | |
CN111523640B (zh) | 神经网络模型的训练方法和装置 | |
JP2021505993A (ja) | 深層学習アプリケーションのための堅牢な勾配重み圧縮方式 | |
CN109993298B (zh) | 用于压缩神经网络的方法和装置 | |
US20230206420A1 (en) | Method for detecting defect and method for training model | |
CN111368973B (zh) | 用于训练超网络的方法和装置 | |
CN111340220B (zh) | 用于训练预测模型的方法和装置 | |
CN111383100A (zh) | 基于风险模型的全生命周期管控方法和装置 | |
CN111353601A (zh) | 用于预测模型结构的延时的方法和装置 | |
WO2022188534A1 (zh) | 信息推送的方法和装置 | |
CN114662646A (zh) | 实现神经网络的方法和装置 | |
CN113657596B (zh) | 训练模型和图像识别的方法和装置 | |
CN111523639A (zh) | 用于训练超网络的方法和装置 | |
CN111353585A (zh) | 神经网络模型的结构搜索方法和装置 | |
CN112311842A (zh) | 用于信息交互的方法和装置 | |
CN116467178B (zh) | 数据库检测方法、装置、电子设备和计算机可读介质 | |
CN117636100B (zh) | 预训练任务模型调整处理方法、装置、电子设备和介质 | |
CN111310901B (zh) | 用于获取样本的方法及装置 | |
US20230409956A1 (en) | Machine learning prediction of additional steps of a computerized workflow | |
WO2022037689A1 (zh) | 一种基于数据形式的数据处理方法和应用机器学习的方法 | |
WO2024025623A1 (en) | Oneshot neural architecture and hardware architecture search | |
CN114022274A (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: 20959244 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 16/08/2023) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20959244 Country of ref document: EP Kind code of ref document: A1 |