Inspection apparatus and method
Separate encoder and decoder models for product inspection reduce processing load by independently assessing abnormality and reconstructing images only when needed, optimizing resource utilization and user interaction.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- HITACHI IND EQUIP SYST CO LTD
- Filing Date
- 2022-07-29
- Publication Date
- 2026-04-13
AI Technical Summary
Existing machine learning models for product inspection face high processing loads due to all data being subjected to decoding processing, which is inefficient and burdensome.
The use of separate encoder and decoder models for product inspection, where the encoder assesses abnormality and the decoder reconstructs images only when necessary, reducing overall processing load.
This approach significantly reduces the processing load on machine learning models by independent learning and reconstruction of images only when abnormalities are detected, thereby optimizing resource utilization and user interaction.
Smart Images

Figure 0007844282000001 
Figure 0007844282000002 
Figure 0007844282000003
Abstract
Description
Technical Field
[0001] The present invention generally relates to the inspection of inspection objects such as products.
Background Art
[0002] For example, a method of inspecting a product using a machine learning model that takes data of an inspection object (for example, photographed image data) as an input and outputs an inspection result of the product is known (for example, Patent Document 1).
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] According to Patent Document 1, there are an encoder model and a decoder model, and all the data input to the encoder model is subject to decoding processing using the decoder model. Therefore, the processing load is large.
Means for Solving the Problems
[0005] An encoder model and a decoder model, which are each machine learning models, are used for the inspection of the inspection object. The encoder model is a model that takes data of the inspection object as an input and outputs the degree of abnormality of the inspection object. The decoder model takes as inputs a OK / NG value, which is a value indicating whether the inspection object is normal or abnormal, and a feature amount of the data of the inspection object, and outputs restored data of the inspection object based on the input feature amount when the input OK / NG value indicates an abnormality.
Effects of the Invention
[0006] According to the present invention, the processing load on the machine learning model used for testing the object being tested can be reduced. [Brief explanation of the drawing]
[0007] [Figure 1] An example of the overall system configuration including the inspection device according to the first embodiment is shown. [Figure 2] This outlines the inference process flow. [Figure 3] An example of the distribution of abnormality levels between normal and abnormal products is shown. [Figure 4] The processing flow of the determination unit is shown. [Figure 5] An example of the overall system configuration including the inspection device according to the second embodiment is shown. [Modes for carrying out the invention]
[0008] In the following explanation, "interface device" may refer to one or more interface devices. These one or more interface devices may be at least one of the following: An I / O interface device is one or more I / O (Input / Output) interface devices. The I / O interface device is an interface device to at least one of the following: an I / O device and a remote display computer. The I / O interface device to the display computer may be a communication interface device. The at least one I / O device may be either a user interface device, such as an input device like a keyboard and a pointing device, or an output device like a display device. A communication interface device which is one or more communication interface devices. One or more communication interface devices may be one or more identical communication interface devices (for example, one or more NICs (Network Interface Cards)) or two or more different communication interface devices (for example, a NIC and an HBA (Host Bus Adapter)).
[0009] Furthermore, in the following explanation, "memory" refers to one or more memory devices, which are typically main memory devices. At least one memory device in memory may be a volatile memory device or a non-volatile memory device.
[0010] Furthermore, in the following explanation, "persistent storage device" refers to one or more persistent storage devices. Persistent storage devices are typically non-volatile storage devices (e.g., auxiliary storage devices), specifically, for example, HDDs (Hard Disk Drives) or SSDs (Solid State Drives).
[0011] Furthermore, in the following explanation, "storage device" may refer to at least memory, including both memory and persistent storage.
[0012] Furthermore, in the following explanation, "processor" refers to one or more processor modules. At least one processor module is typically a microprocessor device such as a CPU (Central Processing Unit), but may be other types of processor devices such as a GPU (Graphics Processing Unit). At least one processor device may be single-core or multi-core. At least one processor module may be a processor core.
[0013] Furthermore, in the following explanation, the program may be used as the subject to describe the process. However, since a program is executed by a processor and performs defined processes using memory devices and / or interface devices as appropriate, the subject of the process may also be the processor (or a device such as a controller having that processor). A program may be installed from a program source into a device such as a computer. The program source may be, for example, a program distribution server or a computer-readable (e.g., non-temporary) recording medium. Also, in the following explanation, two or more programs may be implemented as a single program, or one program may be implemented as two or more programs.
[0014] Furthermore, in the following explanations, a function may be described as the subject of a process, but a function may be realized by the execution of one or more computer programs by a processor. When a function is realized by the execution of a program by a processor, the defined process is carried out using memory devices and / or interface devices as appropriate, so the function may be at least a part of the processor. A process described with a function as the subject may be a process performed by the processor or a device having that processor. Each function description is an example, and multiple functions may be combined into one function, or one function may be divided into multiple functions.
[0015] Furthermore, various objects or services can be designated as "objects for inspection," but in the following embodiment, the object for inspection is a product, as an example of an object.
[0016] Furthermore, the "data to be inspected" is typically multidimensional data, specifically, for example, image data or sound data. In the following embodiments, the "data to be inspected" is image data of the product, in particular image data of the product's appearance, and therefore, the inspection apparatus according to the following embodiments is an appearance inspection apparatus.
[0017] FIG. 1 shows a configuration example of an entire system including an inspection apparatus according to the first embodiment.
[0018] The inspection apparatus 110 includes an interface device 131, a storage device 132, and a processor 133 connected thereto. The inspection apparatus 110 may be a core device (e.g., a server device) capable of communicating with a plurality of edge devices (e.g., clients). (For example, a cloud computing system based on a cloud infrastructure may also be used.) However, in this embodiment, the inspection apparatus 110 is an edge device (e.g., an information processing terminal such as a personal computer). Since the load of the learning process is low, even if the inspection apparatus 110 is an edge device, in addition to the inference process including the inspection of products, the learning process of the machine learning model can also be performed by the edge device.
[0019] The interface device 131 receives image data of a product from the data source 101. The image data is stored in the storage device 132 by the processor 133. The data source 101 may be a camera in this embodiment, but may also be a microphone, or an information processing terminal to which a sensing device such as a camera or a microphone is connected.
[0020] The inspection apparatus 110 includes a display device 102 and an input device 103 (e.g., a keyboard and a pointing device), and those devices 102 and 103 are connected to the interface device 131.
[0021] The storage device 132 stores an encoder model 141 and a decoder model 142. Both the encoder model 141 and the decoder model 142 are machine learning models. The encoder model 141 and the decoder model 142 are, for example, both deep learning models, and specifically, neural networks (especially DNNs (Deep Neural Networks)).
[0022] Furthermore, the storage device 132 stores management data 143. The management data 143 may include various data related to learning and inference, for example, at least some of the following: Data representing one or more learning parameters used and the learning termination conditions for each of the encoder model 141 and decoder model 142. • Data representing a threshold. This threshold is used to determine whether the OK / NG value described later represents a normal product (OK) or a defective product (NG), and is compared to the product's degree of abnormality. - For each product inspected during the inference process (for example, for each product determined to be defective), the following are obtained: image data input to the encoder model 141, feature quantities output from the intermediate layer of the encoder model 141, abnormality score output from the encoder model 141, image data reconstructed by the decoder 203, and differential image data generated by the difference calculation unit 204.
[0023] The storage device 132 stores one or more computer programs. These computer programs are executed by the processor 133, realizing functions such as the learning unit 151, inference unit 152, encoder 201, determination unit 202, decoder 203, difference calculation unit 204, and visual inspection unit 205. The learning unit 151 performs learning processing, including learning the encoder model 141 and decoder model 142. The inference unit 152 performs inference processing using the learned encoder model 141 and decoder model 142. The encoder 201 performs encoding processing using the encoder model 141. The determination unit 202 determines whether the product is normal or abnormal based on the product's abnormality level. The decoder 203 performs decoding processing using the decoder model 142. The difference calculation unit 204 generates image data representing the difference between the input image data and the restored image data. The visual inspection unit 205 allows the user to perform visual inspection of the image represented by the data.
[0024] The encoder model 141 is a model that takes product image data (an example of data to be inspected) as input and outputs the abnormality level of the product. The decoder model 142 is a model that takes OK / NG values, which are values that indicate whether the product is normal or abnormal, and feature quantities of the product image data as input, and outputs the reconstructed data of the product based on the input feature quantities if the input OK / NG value indicates an abnormality. In this way, the learning of the encoder model 141 and the decoder model 142 can be performed independently and separately, and reconstruction is not performed for all image data input to the encoder model 141, so the processing load on the machine learning model used for product inspection can be reduced. The learning parameters include the learning rate, the learning rate decay for each update, the batch size, the number of epochs, and so on, and at least one of these is used during learning. The learning parameters of the encoder model 141 and the learning parameters of the decoder model 142 may be different. "Learning parameters" may be a set of parameter items and parameter values. Therefore, "different learning parameters" can mean different parameter items, the same parameter items but different parameter values, or a mixture of these.
[0025] Figure 2 shows an overview of the inference process flow.
[0026] The encoder model 141 comprises an input layer 211, two sequential intermediate layers 213A and 213B, and an output layer 215. The number of intermediate layers 213 may be more or less than two. The decoder model 142, although not shown, also comprises an input layer, one or more intermediate layers, and an output layer. Furthermore, in the inference process, for each product inspected in the inference process, the image data input to the encoder model 141, the feature quantities output from the intermediate layer 213 (intermediate layer 213B in this embodiment) of the encoder model 141, and the abnormality score output from the encoder model 141 may be included in the management data 143.
[0027] The inference unit 152 receives image data 210 of the product as input. The encoder 201 performs encoding processing using the encoder model 141. The encoding processing includes inputting the image data 210 to the input layer 211, calculating the feature quantities of the image data 210 in the intermediate layers 213A and 213B, and outputting the abnormality score of the product from the output layer 215 based on the feature quantities output from the final intermediate layer 213B.
[0028] The determination unit 202 determines whether the abnormality level output from the encoder 201 is equal to or greater than the threshold represented by the management data 143. The determination unit 202 outputs a value representing this determination result as an OK / NG value. If the abnormality level is equal to or greater than the threshold, the OK / NG value is "1" (indicating NG), and if the abnormality level is less than the threshold, the OK / NG value is "0" (indicating OK).
[0029] Decoder 203 performs decoding using decoder model 142. Decoding includes inputting OK / NG values to decoder model 142, inputting the feature quantities output from the final hidden layer 213B to decoder model 142, and, if the input OK / NG values represent NG, reconstructing the product image data based on the input feature quantities and outputting the reconstructed image data. Decoder 203 does not reconstruct the image data based on the input feature quantities if the OK / NG values input to decoder model 142 represent OK.
[0030] The difference calculation unit 204 generates difference image data (an example of difference data representing a difference) which is image data representing the difference between the input image data 210 and the restored image data (image data output from the decoder 203). For example, the image data is data of a photograph of the product's appearance, and the difference image data is image data in which abnormal parts such as scratches on the product are emphasized. Specifically, for example, the decoder model 142 is trained to restore image data of a normal product from the feature quantities of the image data of a defective product, so in the inference process, the image data restored based on the feature quantities of the image data of a defective product is image data similar to the image data of a normal product. Therefore, when comparing the input image data of a defective product with the restored image data, if there are abnormal parts such as scratches in the image represented by the input image data, these abnormal parts are detected as differences, and as a result, difference image data with the abnormal parts emphasized can be generated.
[0031] The visual inspection unit 205 displays the inspection result based on the difference image represented by the generated difference image data on the display device 102 and accepts a response from the user regarding the inspection result. For example, the visual inspection unit 205 displays a UI (User Interface) on the display device 102 that shows the inspection result and the acceptance of a response on whether the product is normal or not, and accepts a response on whether the product is normal or not via the UI. The displayed inspection result may include the difference image and may also include the input image (the image represented by the input image data). The user visually checks the displayed inspection result and inputs a response on whether the product is normal or not into the UI. If the response indicates that the product is normal, in the learning process after the inference process, the visual inspection unit 205 identifies the degree of abnormality corresponding to the product, for example from the management data 143. In the learning process after the inference process, the judgment unit 202 inputs the identified degree of abnormality (degree of abnormality for normal products) as a feedback value to the judgment unit 202.
[0032] The encoder model 141 is a neural network that includes multiple sequential hidden layers 213. The learning unit 151 performs the learning process, and in this learning process, the features input to the decoder model 142 are the features output from the final layer of the multiple hidden layers 213. Since the features from the final layer of the multiple hidden layers 213 are the features with the smallest data size, the learning load on the decoder model 142 can be reduced.
[0033] Furthermore, image data is restored only if the OK / NG value input to decoder model 142 represents NG. This reduces the load on the inference process. It also reduces the frequency with which the user has to visually check the image, and as a result, reduces the burden on the user.
[0034] An example of learning in this embodiment is as follows:
[0035] The encoder model 141 is trained using one or more DNNs. In the generation (training) of the encoder model 141, the data of each image from multiple images (for example, multiple normal images and multiple abnormal images (images that are not normal)) is used as training data for the training. One or more training parameters (parameter items and parameter values) for the training are determined by the user according to requirements such as obtaining sufficient accuracy and avoiding overfitting. For example, the parameter values for the number of epochs, learning rate, and learning rate decay for each update may differ depending on the requirements. The batch size may be determined according to the hardware specifications of the inspection device 110.
[0036] In the generation (training) of the decoder model 142, the features from the intermediate layer 213 of the encoder model 141 (the features of the training data input to the decoder model 142) are used as training data. The features used as training data may be the features of the normal image data input to the decoder model 142. The decoder model 142 for image reconstruction is generated (trained) from these features. The number of training data (number of feature data) used to train the decoder model 142 may be the same as or different from the number of training data used to train the encoder model 141. Also, similar to the encoder model 141, one or more training parameters of the decoder model 142 may be determined according to the requirements and the hardware specifications of the inspection device 110. Furthermore, since the encoder model 141 and the decoder model 142 can be trained independently, the training parameters for the training of these models 141 and 142 (for example, the parameter values of the learning rate and the number of epochs, or other training parameters) may be different.
[0037] Encoder model 141 is a model that outputs the abnormality level of a product, and decoder model 142 is a model that restores and outputs the image data of a product if the OK / NG value determined based on the abnormality level of the product indicates an abnormality. Therefore, the processing load is reduced compared to restoring all image data input to encoder model 141.
[0038] The degree of abnormality is input to the determination unit 202, and the OK / NG value based on the degree of abnormality is output from the determination unit 202. The relationship between the degree of abnormality and the OK / NG value depends on the threshold value compared to the degree of abnormality. In the learning process, the threshold value is determined as described with reference to Figures 3 and 4.
[0039] Figure 3 shows an example of the distribution of abnormality levels between normal and abnormal products. Figure 4 shows the processing flow of the determination unit 202.
[0040] In the learning process, multiple image data of normal products and multiple image data of defective products are input to the encoder model 141 as training data. The image data of normal products is an example of normal data, and the image data of defective products is an example of defective data. In the learning process, "defective products" are not limited to products with defects, but may also include objects other than products.
[0041] While the degree of abnormality varies among both normal and defective products, overall, normal products have a lower degree of abnormality than defective products.
[0042] The threshold for abnormality may be determined on an average basis as an example of the statistical value of abnormality for normal products, but in this embodiment, it is determined as follows.
[0043] In other words, during the learning process, the learning unit 151 includes statistics on the degree of abnormality and its frequency for each image data of a normal product in the management data 143.
[0044] In the learning process, the determination unit 202 calculates the median variance of the abnormality score for normal products based on the relationship between the abnormality score and frequency, and calculates DT, which is a value representing the distance from the median. DT is an example of a first distance, and is the maximum distance between the median abnormality score of normal products and the abnormality score of normal products. Based on DT, the determination unit 202 determines an abnormality threshold and includes this threshold in the management data 143.
[0045] In the inference process, the determination unit 202 outputs a value to the decoder model 142 (decoder 203) as an OK / NG value, indicating whether the abnormality level output from the encoder model 141 (encoder 201) is above a threshold.
[0046] Thus, the output value from the encoder model 141 (in this case, a high-dimensional feature such as anomaly score) does not directly become the input value for the decoder model 142. Instead, the output value from the encoder model 141 is converted into a scalar value that can be represented by 1 bit, such as an OK / NG value, and output to the decoder model 142. This contributes to reducing the load on the training process by training the encoder model 141 and the decoder model 142 separately.
[0047] Furthermore, during the learning process, the determination unit 202 calculates an index based on the variability of the degree of abnormality output from the encoder model 141 for each of the multiple image data of normal products, and determines the threshold for the degree of abnormality based on this index. Therefore, it is expected that the threshold will be an appropriate value.
[0048] If the threshold is not set (not learned), the OK / NG value will be an NG value (a value representing NG) if the abnormality level is zero or greater, and an OK value (a value representing OK) if the abnormality level is less than zero. In other words, the abnormality level of a normal product will be zero or less. In this embodiment, the index that forms the basis of the threshold is the maximum distance DT from the median of the variance of the abnormality levels of normal products to the abnormality level of normal products. This ensures that the threshold is set to an appropriate value depending on where the median of the distribution of normal values is located in the abnormality distribution. The minimum and / or maximum abnormality levels of normal products may be predefined values, or they may be values determined by the determination unit 202 based on the distribution of abnormalities (statistics of abnormalities) obtained in the learning process (the same may apply to the minimum and / or maximum abnormality levels of abnormal products).
[0049] In the inference process, for example, each time an OK / NG value representing NG is output from the determination unit 202, data representing the abnormality level compared with the threshold, the restored image data, and the visual inspection response (whether it is a normal product or an abnormal product) are included in the management data 143. In this embodiment, visual inspection is performed only when the OK / NG value represents NG, but as a result of the visual inspection, a response indicating that it is a normal product may be input. In the learning process after the inference process, as described above, the determination unit 202 identifies the abnormality level corresponding to the response that the product is a normal product from the management data 143, and inputs the identified abnormality level (abnormality level of a normal product) to the determination unit 202 as a feedback value. That is, the feedback value is the abnormality level of a normal product when the OK / NG value represents NG even though the image data input to the encoder model in the inference process is image data of a normal product. Based on this feedback value, the determination unit 202 calculates DT and updates the threshold based on the calculated DT. This makes it possible to set the threshold to a more appropriate value based on the feedback value in the inference process. Furthermore, the feedback value may be used to update the threshold itself, either in lieu of or in addition to the calculation of DT. In other words, the threshold may be updated directly based on the feedback value (updated without any metric like DT being calculated based on the feedback value) or indirectly (a metric like DT may be calculated based on the feedback value, and the threshold may be updated based on the calculated metric).
[0050] Further, in the learning process, the determination unit 202 may calculate the DF as an example of an index based on the variation in the abnormality degrees output from the encoder model 141 for each of the plurality of image data of abnormal products. The DF is an example of the second distance and is a value as the maximum distance from the median of the variance of the abnormality degrees for abnormal products. In the learning process, the learning unit 151 may adopt DT < DF (DT is smaller than DF) as the end condition for learning the encoder model 141. That the condition DT < DF is satisfied for the encoder model 141 means that the encoder model 141 has been correctly generated (learned). Therefore, in the learning process, it is expected that the output abnormality degrees are appropriate, and thus it is expected that appropriate threshold values are set. As a result, it is expected to reduce the frequency of misjudging abnormal products as normal products. Note that the determination as to whether DT < DF is satisfied may be made after learning using a predetermined number of image data.
[0051] Also, since the threshold value used by the determination unit 202 is learned as described above to be an appropriate value, the possibility that the OK / NG value erroneously represents NG in the inference process even though the inspection target is a normal product is reduced. Therefore, the possibility that the image data is restored by the decoder 203 is reduced, and as a result, it is expected to reduce the processing load. [Second Embodiment]
[0052] The second embodiment will be described. In so doing, the differences from the first embodiment will be mainly described, and the description of the common points with the first embodiment will be omitted or simplified.
[0053] FIG. 5 shows a configuration example of an entire system including an inspection apparatus according to the second embodiment.
[0054] The interface device 131 of the inspection apparatus 110 is connected to a control device 501 (interface device 511 of the control device 501) that controls one or more controlled devices. Communication between the inspection apparatus 110 and the control device 501 may be performed, for example, by TCP / IP.
[0055] The control device 501 includes an interface device 511, a storage device including a shared memory 512, and a processor 513 connected to the interface device 511 and the storage device. A product transport device (for example, a device that drives a transport belt 533) can be used as the device to be controlled.
[0056] An I / O (Input / Output) device 502 is connected to the interface device 511 of the control device 501. Peripheral devices, or other devices that are peripheral devices or other devices to be controlled, are connected to the I / O device 502. Input and output are made to these devices from the control device 501 via the I / O device 502. Peripheral devices may include a camera 531 for photographing the product 550 and optical sensors 532A and 532B for detecting the product 550. The inspection device 110 may be connected to the I / O device 502 instead of or in addition to the interface device 511 of the control device. The inspection device 110 may also be connected to the camera 531.
[0057] The processor 513 of the control device 501 executes the OS (Operating System) 563 and also executes the control program 561 and the information program 562 that run on the OS 563. The OS 563 may be a real-time general-purpose OS (an OS that is part of the general-purpose OS family for information processing but has real-time functions that can provide the necessary real-time performance), and the execution timing of the control program 561 and the information program 562 may be controlled by the real-time general-purpose OS. Alternatively, the execution timing of the control program 561 and the information program 562 may be controlled by runtime software.
[0058] The control program 561 is a program that performs a scan process, which is a real-time process for controlling the controlled device, at each control cycle defined for the control program 561. The information program 562 is a program that performs information processing defined for the information program 562.
[0059] The shared memory 512 is a shared memory for the control program 561 and the information program 562, and has a control area where data is written from the control program 561, and an information area where data is written from the information program 562. The information area is smaller than the control area.
[0060] In the second embodiment, for example, the following process is performed.
[0061] When the control program 561 detects a product 550 on the conveyor belt 533 through optical sensors 532A and 532B, it causes the camera 531 to take an image. This captures an image of the product 550 detected by the optical sensors 532A and 532B, and the data of this captured image is input from the camera 531 to the inspection device 110, either via or without the control device 501. The inference unit 152 of the inspection device 110 performs inference processing on the image data. In the inference processing, the determination unit 202 outputs OK / NG values to the decoder 203 as well as to the control device 501. The information program 562 receives the OK / NG values and writes them to the information area of the shared memory 512. Since the OK / NG values are small in size, there is no problem with the destination of the OK / NG values being an information area which is smaller in size than the control area. The control program 561 reads the OK / NG values from the information area and controls at least one controlled device based on the OK / NG values. For example, the controlled device may be an exclusion device that removes the photographed product 550 from the conveyor belt 533. The control program 561 instructs the exclusion device to remove the photographed product 550 from the conveyor belt 533 if the read OK / NG value indicates NG. As control based on the OK / NG value, other processing may be performed instead of removing the product 550.
[0062] The control device 501 may be an industrial control device. The controlled device may be industrial equipment such as an industrial motor or compressor. The control device 501 may be the main computing device of the control system, and the inspection device 110 may be a computing device acting as an extension device in the control system. By executing an information program in the computing device acting as an extension device, the functions described above, such as the learning unit 151, inference unit 152, encoder 201, determination unit 202, decoder 203, difference calculation unit 204, and visual confirmation unit 205, may be realized.
[0063] Although several embodiments have been described above, these are merely illustrative examples for explaining the present invention and are not intended to limit the scope of the invention to these embodiments only. The present invention can be implemented in various other forms. [Explanation of symbols]
[0064] 110...Inspection device, 131...Interface device, 132...Storage device, 133...Processor, 141...Encoder model, 142...Decoder model
Claims
1. An interface device that receives data to be inspected, A storage device containing the encoder model and decoder model, which are machine learning models, respectively, The interface device and the processor connected to the storage device Equipped with, The processor is configured to perform a learning process that includes learning the encoder model and the decoder model, and an inference process that includes performing the inspection of the object to be inspected using the learned encoder model and decoder model. The encoder model is a model that takes the data of the object to be inspected as input and outputs the degree of abnormality of the object to be inspected. The decoder model takes an OK / NG value, which represents whether the object being inspected is normal or abnormal and is determined based on the degree of abnormality, and a feature quantity of the data of the object being inspected as input. If the input OK / NG value indicates an abnormality, the model outputs the reconstructed data of the object being inspected based on the input feature quantity. Inspection device.
2. In the inference process, the processor outputs a value indicating whether the abnormality level output from the encoder model is above a threshold, as a value indicating whether the object being inspected is normal or abnormal. The inspection apparatus according to claim 1.
3. In the aforementioned learning process, Multiple normal data are input to the encoder model, Each of the aforementioned multiple normal data is data of a normal target, The processor determines an abnormality threshold based on an index derived from the variability of the abnormality level output from the encoder model for each of the plurality of normal data points. The determined threshold is the threshold in the inference process. The inspection apparatus according to claim 2.
4. The aforementioned index is the first distance, The first distance is the maximum distance from the median of the variance of the anomaly for normal data to the anomaly for normal data. The inspection apparatus according to claim 3.
5. In the learning process after the inference process, Based on the feedback value, the threshold is updated. The aforementioned feedback value is the degree of abnormality of the product corresponding to the normal data when, in the inference process, the data input to the encoder model is normal data, but the OK / NG value becomes a value indicating an abnormality. The inspection apparatus according to claim 3.
6. A display device is connected to the aforementioned interface device. In the inference process, when the recovered data is output from the encoder model, the processor calculates the difference between the recovered data and the data input to the encoder model corresponding to the recovered data, displays the inspection result based on the difference on the display device, and receives a response from the user regarding the inspection result. If the response indicates that the product is functioning normally, the feedback value is the degree of abnormality of the product corresponding to the input data. The inspection apparatus according to claim 5.
7. The data of the subject to inspection is the data of the captured image of the subject to inspection. The inspection apparatus according to claim 6.
8. The encoder model is a neural network including multiple sequential hidden layers, In the aforementioned learning process, the features input to the decoder model are the features output from the final layer among the multiple intermediate layers. The inspection apparatus according to claim 1.
9. The interface device is connected to a control device that controls one or more controlled devices. The control device executes a control program and an information program, and has a shared memory for the control program and the information program. The control program is a program that performs a scan process, which is a real-time process for controlling the controlled device, at each control cycle defined for the control program. The aforementioned information program is a program that performs information processing defined for the information program, The shared memory has a control area, which is an area where data is written from the control program, and an information area, which is an area where data is written from the information program. The aforementioned information area is smaller than the aforementioned control area. The processor outputs the OK / NG value to the control device through the interface device. In the aforementioned control device, The information program writes the OK / NG value to the information area. The control program reads the OK / NG value from the information area and controls at least one controlled device based on the OK / NG value. The inspection apparatus according to claim 1.
10. The learning parameters of the encoder model and the learning parameters of the decoder model are different. For each learning parameter, the learning parameter is a set of a parameter item and a parameter value. Different learning parameters mean that the parameter items are different, and / or that the parameter items are the same but the parameter values are different. The inspection apparatus according to claim 1.
11. The processor terminates the learning of the encoder model when the first distance is less than the second distance. The second distance is the maximum distance from the median of the variance of the anomaly scores for the anomaly data to the anomaly score for the anomaly data. The inspection apparatus according to claim 4.
12. This includes a learning process that involves training the encoder model and decoder model, which are machine learning models, respectively. An inference process that includes performing an inspection of the object to be inspected using a trained encoder model and decoder model. Perform The encoder model is a model that takes the data of the object to be inspected as input and outputs the degree of abnormality of the object to be inspected. The decoder model takes an OK / NG value, which represents whether the object being inspected is normal or abnormal and is determined based on the degree of abnormality, and a feature quantity of the data of the object being inspected as input. If the input OK / NG value indicates an abnormality, the model outputs the reconstructed data of the object being inspected based on the input feature quantity. Testing method.
Citation Information
Patent Citations
Road missing and scattering identification method and device based on anomaly detection model
CN113221759A
Information processing device
JP2021081814A
Program, method for creating learned model, information processing method and information processing device
JP2021140739A
Inspection device, inspection method, program, learning device, learning method, and trained dataset
JP2021143884A
Anomaly detection system, learning apparatus, anomaly detection program, learning program, anomaly detection method, and learning method
JP2022015575A