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

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

Info

Publication number
WO2022123905A1
WO2022123905A1 PCT/JP2021/038140 JP2021038140W WO2022123905A1 WO 2022123905 A1 WO2022123905 A1 WO 2022123905A1 JP 2021038140 W JP2021038140 W JP 2021038140W WO 2022123905 A1 WO2022123905 A1 WO 2022123905A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
label
identification
learning
unit
Prior art date
Application number
PCT/JP2021/038140
Other languages
English (en)
French (fr)
Inventor
ジェッフリー フェルナンド
裕也 菅澤
久治 村田
吉宣 佐藤
恒 相川
Original Assignee
パナソニックIpマネジメント株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Priority to JP2022568080A priority Critical patent/JP7496567B2/ja
Priority to CN202180079976.0A priority patent/CN116635876A/zh
Priority to US18/255,034 priority patent/US20240054397A1/en
Publication of WO2022123905A1 publication Critical patent/WO2022123905A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Definitions

  • This disclosure generally relates to processing systems, learning processing systems, processing methods, and programs. More specifically, the present disclosure relates to a processing system for labeled data, a learning processing system including the processing system, a processing method, and a program.
  • Patent Document 1 discloses a data analysis device.
  • the data analysis device divides the labeled teacher data into model construction data and model verification data, constructs a machine learning model using the model construction data, and applies the machine learning model to the model verification data. A series of processes of identifying a sample is repeated a specified number of times.
  • the data analysis device obtains for each sample the number of misidentifications in which the label that is the identification result and the label originally attached to the data do not match, and the sample is based on the number of misidentifications or the probability of the misidentification. Determines if is in a mislabeled state. As a result, it is possible to detect a sample contained in the teacher data that is likely to be in a mislabeled state with high accuracy.
  • the present disclosure is made in view of the above reasons, and an object of the present disclosure is to provide a processing system, a learning processing system, a processing method, and a program capable of reducing the time required for identifying an erroneous label.
  • the processing system of one aspect of the present disclosure includes a first acquisition unit, a second acquisition unit, a third acquisition unit, an identification unit, and an extraction unit.
  • the first acquisition unit acquires a plurality of learning data with labels.
  • the second acquisition unit acquires a trained model generated based on the plurality of training data.
  • the third acquisition unit acquires the identification data to which the label is attached.
  • the identification unit identifies the identification data using the trained model.
  • the extraction unit is based on an index regarding the degree of similarity between the identification data applied in the trained model and each of the plurality of training data, and one or more learnings similar to the identification data from the plurality of training data. Extract the data.
  • the learning processing system of one aspect of the present disclosure includes the above processing system and a learning system that generates the trained model.
  • the processing method of one aspect of the present disclosure includes a first acquisition step, a second acquisition step, a third acquisition step, an identification step, and an extraction step.
  • a plurality of learning data with labels are acquired.
  • a trained model generated based on the plurality of training data is acquired.
  • identification data with a label is acquired.
  • the trained model is used to identify the identification data.
  • one or more learnings similar to the identification data are learned from the plurality of training data based on an index regarding the similarity between the identification data applied in the trained model and each of the plurality of training data. Extract the data.
  • the program of one aspect of the present disclosure is a program for causing one or more processors to execute the above processing method.
  • FIG. 1 is a schematic block configuration diagram of the entire learning processing system including the processing system according to the embodiment.
  • 2A and 2B are explanatory views for explaining an operation example 1 and an operation example 2 in the same processing system.
  • FIG. 3 is a flowchart for explaining the operation of the learning processing system of the above.
  • FIG. 4 is an explanatory diagram for explaining an operation example 3 in the same processing system.
  • FIG. 5 is an explanatory diagram for explaining an operation example 4 in the same processing system.
  • FIG. 6 is an explanatory diagram for explaining an operation example 5 in the same processing system.
  • the processing system 1 includes a first acquisition unit 11, a second acquisition unit 12, a third acquisition unit 13, an identification unit 14, and an extraction unit 15.
  • the first acquisition unit 11 acquires a plurality of learning data D2 with labels.
  • the second acquisition unit 12 acquires the trained model M1 generated based on the plurality of training data D2.
  • the learning data D2 referred to here is image data as an example.
  • the learning data D2 is, for example, image data captured by the image pickup device 4 (see FIG. 1).
  • the image data may be processed data such as CG.
  • the image data is assumed to be a still image here, it may be moving image or frame-by-frame data for each frame.
  • the training data D2 is data for generating a trained model M1 regarding an object 5 (see FIGS. 2A and 2B: subject) reflected in the image data. That is, the learning data D2 is learning data used for machine learning the model.
  • the “model” referred to in the present disclosure is a program that estimates the state of the identification target and outputs the estimation result (identification result) when the input data regarding the identification target (object 5) is input. ..
  • the “trained model” refers to a model for which machine learning using training data has been completed.
  • the “learning data (set)” is a data set in which the input data (image data) input to the model and the label attached to the input data are combined, and is so-called teacher data. That is, in the present embodiment, the trained model M1 is a model in which machine learning by supervised learning is completed.
  • the "object 5 reflected in the image data” includes the meaning of "object 5 reflected in the image represented by the image data”.
  • the trained model M1 is a model generated based on a plurality of learning data D2 by applying deep learning.
  • the object 5 to be identified is a battery as shown in FIGS. 2A and 2B. That is, the learning data D2 is an image (image data) of the battery. Therefore, the trained model M1 estimates the appearance of the battery and outputs the estimation result. Specifically, the trained model M1 outputs, as an estimation result, whether the appearance of the battery is good (OK) or bad (NG), in other words, it is used for the appearance inspection of the battery. ..
  • the type of "label” referred to in the present disclosure is not limited to two types, "OK” and "NG”. For example, a label indicating more detailed contents (type of defect, etc.) may be attached to "NG".
  • the processing system 1 estimates the appearance of the battery using the trained model M1 and outputs the estimation result. Specifically, the processing system 1 uses the trained model M1 to output whether the appearance of the battery is good (OK) or bad (NG) as an estimation result.
  • the third acquisition unit 13 of the present embodiment acquires the identification data D1 to which the label is attached.
  • the identification data D1 is image data as an example, like the training data D2, and the object 5 reflected in the image data is a battery.
  • the identification data D1 is teacher data newly obtained for re-learning, for example, when updating the trained model M1 for which machine learning has been completed. More specifically, the identification data D1 is data to be newly added learning data separately from the existing learning data, or data to be used for updating the existing learning data.
  • the identification data D1 may be given "OK" or "NG” as in the case of the plurality of learning data D2.
  • a person labels the teacher data (identification data D1 and learning data D2) (labeling).
  • identity data D1 and learning data D2 labeling
  • labeled teacher data may contain data with inappropriate labels (mislabels).
  • the erroneous label can be present in both the newly obtained identification data D1 and the training data D2 used to generate the trained model M1.
  • the erroneous label means a label attached to the data and is not appropriate.
  • the erroneous label means, for example, an NG label actually given to the data to be given an OK label, and an OK label actually given to the data to be given an NG label.
  • the identification unit 14 identifies the identification data D1 using the trained model M1.
  • the extraction unit 15 has one or more training data D2 similar to the identification data D1 from the plurality of training data D2 based on the index regarding the similarity between the identification data D1 applied in the trained model M1 and the plurality of training data D2.
  • the "index related to the similarity applied in the trained model M1" here is, for example, an index in the fully connected layer immediately before the output layer in deep learning, and in this embodiment, the Euclidean distance is used. That is, the "distance" is obtained from the feature amount such as the pixel value obtained from the two images to be compared, and the closeness of the two images is estimated.
  • the “distance”, which is an index of similarity, is inversely proportional to the similarity.
  • the "distance" as an index of similarity may be the Maharanobis distance, the Manhattan distance, the Chebyshev distance, or the Minkowski distance.
  • the index is not limited to the distance, and may be a similarity, a (correlation) coefficient, or the like, for example, an n-dimensional vector similarity, a cosine similarity, a Pearson correlation coefficient, a deviation pattern similarity, a Jaccard coefficient, or a die. It may be a coefficient or a Simpson coefficient.
  • one or more similar training data D2s are extracted based on the similarity index used when the trained model M1 classifies the input data (identification data D1).
  • the extraction unit 15 extracts a plurality of (for example, the top three) learning data D2 having a high degree of similarity to the identification data D1.
  • the learning processing system 100 includes a processing system 1 and a learning system 2 that generates a trained model M1. Therefore, it is possible to provide a learning processing system 100 capable of reducing the time required for identifying an erroneous label.
  • the processing method includes a first acquisition step, a second acquisition step, a third acquisition step, an identification step, and an extraction step.
  • a plurality of training data D2 with labels are acquired.
  • the trained model M1 generated based on the plurality of training data D2 is acquired.
  • the identification data D1 to which the label is attached is acquired.
  • the discriminant data D1 is identified using the trained model M1.
  • one or more training data similar to the identification data D1 are obtained from the plurality of training data D2 based on the index regarding the similarity between the identification data D1 applied in the trained model M1 and each of the plurality of training data D2. Extract D2.
  • This processing method is used on a computer system (processing system 1). That is, this processing method can also be embodied in a program.
  • the program according to the present embodiment is a program for causing one or more processors to execute the processing method according to the present embodiment.
  • the learning processing system 100 including the processing system 1 according to the present embodiment and the entire system including the peripheral configuration thereof will be described in detail with reference to FIG.
  • at least a part of the peripheral configuration may be included in the configuration of the learning processing system 100.
  • the learning processing system 100 includes a processing system 1 and a learning system 2. Further, as a peripheral configuration of the learning processing system 100, an estimation system 3 and one or a plurality of image pickup devices 4 (only one is shown in FIG. 1) are provided.
  • processing system 1, the learning system 2, and the estimation system 3 are constructed from a server or the like.
  • the "server” here is assumed to be composed of one server device. That is, it is assumed that the main functions of the processing system 1, the learning system 2, and the estimation system 3 are provided in one server device.
  • the "server” may be composed of a plurality of server devices. Specifically, the functions of the processing system 1, the learning system 2, and the estimation system 3 may be provided in individual server devices, or two of these systems may be provided in one server device. You may. Further, such a server device may construct, for example, a cloud (cloud computing).
  • cloud cloud computing
  • the server device may be installed in the factory where the appearance inspection of the battery is carried out, or may be installed outside the factory (for example, the business headquarters).
  • the functions of the processing system 1, the learning system 2, and the estimation system 3 are provided in the individual server devices, it is desirable that each server device is communicably connected to another server device.
  • the learning system 2 is configured to generate a trained model M1 for the object 5.
  • the learning system 2 generates a trained model M1 based on a plurality of labeled training data D2 (image data).
  • the trained model M1 referred to here includes, for example, a model using a neural network or a model generated by deep learning using a multi-layer neural network.
  • the neural network may include, for example, a CNN (Convolutional Neural Network) or a BNN (Bayesian Neural Network).
  • the trained model M1 is realized by mounting a trained neural network on an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array).
  • the trained model M1 is not limited to the model generated by deep learning.
  • the trained model M1 may be a model generated by a support vector machine, a decision tree, or the like.
  • Each of the plurality of learning data D2s is generated by assigning a label indicating "OK (good product)” or "NG (defective product)" to the image data.
  • the work (labeling) related to the labeling is performed by the user on the learning processing system 100 via the user interface such as the operation unit 19.
  • the learning system 2 generates a trained model M1 by machine learning a good product and a defective product of a battery using a plurality of labeled training data D2.
  • the learning system 2 can improve the performance of the trained model M1 by performing re-learning using the newly acquired labeled learning data as the identification data D1. For example, if a new kind of defect is found in the object 5, it is possible to have the learning system 2 relearn about the new defect.
  • the trained model M1 generated by the learning system 2 is stored (stored) in the storage unit.
  • the storage unit for storing the trained model M1 includes a rewritable non-volatile memory such as an EEPROM (Electrically Erasable Programmable Read-Only Memory).
  • the processing system 1 executes an extraction process for extracting learning data D2 similar to the identification data D1 to facilitate confirmation of whether or not the teacher data (identification data D1 and training data D2) has an erroneous label. It has a function.
  • a person who uses the learning processing system 100 including the processing system 1 may be simply referred to as a "user".
  • the user may correspond to, for example, an operator who monitors the manufacturing process of the battery (object 5) in the factory, a manager, or the like.
  • the processing system 1 includes a processing unit 10, a presentation unit 17, a communication unit 18, and an operation unit 19.
  • the processing system 1 further includes a storage unit.
  • the processing system 1 may be distributedly provided in information terminals capable of communicating with the server.
  • the "information terminal” referred to in the present disclosure may include a personal computer (a notebook computer or a stationary personal computer), a portable terminal such as a smartphone or a tablet terminal, and the like.
  • the functions of the presentation unit 17 and the operation unit 19 are provided in the information terminal used by the user.
  • Dedicated application software for communicating with the server is installed in the information terminal in advance.
  • the processing unit 10 can be realized by a computer system including one or more processors (microprocessors) and one or more memories. That is, one or more processors execute one or more programs (applications) stored in one or more memories, thereby functioning as the processing unit 10.
  • the program is recorded in advance in the memory of the processing unit 10 here, it may be recorded and provided through a telecommunication line such as the Internet or on a non-temporary recording medium such as a memory card.
  • the processing unit 10 executes control processing related to the presentation unit 17, the communication unit 18, the operation unit 19, and the like. It is assumed that the function of the processing unit 10 is in the server. Further, the processing unit 10 has a function of executing identification processing, extraction processing, and determination processing, and as shown in FIG. 1, the first acquisition unit 11, the second acquisition unit 12, and the third acquisition unit 13 It has an identification unit 14, an extraction unit 15, and a determination unit 16. Details of the first acquisition unit 11, the second acquisition unit 12, the third acquisition unit 13, the identification unit 14, the extraction unit 15, and the determination unit 16 will be described in the next column.
  • the presentation unit 17 constitutes a liquid crystal display or an organic EL (Electro-Luminescence) display. As described above, the presentation unit 17 is provided in the information terminal.
  • the presentation unit 17 may be a touch panel type display.
  • the presentation unit 17 presents information (presentation information D4) regarding the determination result by the determination unit 16 described later to the outside.
  • the presentation unit 17 may display various information such as the estimation result of the estimation system 3 in addition to the presentation information D4.
  • the communication unit 18 is a communication interface for directly communicating with one or a plurality of image pickup devices 4 or indirectly via another server having a function of a user's information terminal or a production control system.
  • the function of the communication unit 18 is assumed to be on the same server as the processing unit 10, but may be provided in, for example, an information terminal.
  • the communication unit 18 receives the identification data D1 and the learning data D2 from the image pickup apparatus 4, another server, or the like.
  • Both the identification data D1 and the learning data D2 are data in which a label (here, “OK” or “NG”) is attached to the image data captured by the image pickup device 4 as an example, and the image data includes the object 5. Includes the indicated pixel area. Further, the object 5 is a battery as described above, and the identification data D1 and the learning data D2 are both data including a pixel region indicating the appearance of the battery.
  • the image pickup apparatus 4 includes, for example, a line sensor camera.
  • the selection of the image data to be applied to the teacher data (learning data D2) from the large amount of image data related to the object 5 captured by the image pickup device 4 is performed, for example, according to an instruction from the user.
  • the learning processing system 100 is provided with a function of supporting image data selection work and labeling of image data.
  • the learning processing system 100 includes a user interface (for example, an operation unit 19) that receives instructions regarding selection and labeling.
  • the operation unit 19 includes a mouse, a keyboard, a pointing device, and the like. As described above, the operation unit 19 is provided in, for example, an information terminal used by a user. When the presentation unit 17 is a touch panel type display of an information terminal, it may also serve as the function of the operation unit 19.
  • the estimation system 3 estimates the input target image data D3 using the trained model M1 generated by the learning system 2 (inference phase).
  • the estimation system 3 is configured to be able to communicate directly with one or a plurality of image pickup devices 4 or indirectly via a user's information terminal or another server having a function of a production control system.
  • the estimation system 3 receives the target image data D3 captured by the image pickup apparatus 4 of the battery (product or semi-finished product) that has actually undergone the manufacturing process, and executes a visual inspection of the battery.
  • the estimation system 3 uses the trained model M1 to estimate whether the object 5 reflected in the target image data D3 is a "good product” or a "defective product”.
  • the estimation system 3 outputs the identification result (estimation result) for the target image data D3 to the information terminal used by the user, the production control system, or the like.
  • the user can confirm the estimation result through the information terminal.
  • the production control system may control the equipment so that the battery, which is estimated to be a "defective product" by acquiring the estimation result, is discarded before being transported to the next process.
  • the function of the identification unit 14 of the processing system 1 described later is substantially the same as the function of the estimation system 3.
  • Mislabel detection processing unit 10 has a function of executing identification processing, extraction processing, and determination processing to detect an erroneous label. Specifically, as shown in FIG. 1, the processing unit 10 includes a first acquisition unit 11, a second acquisition unit 12, a third acquisition unit 13, an identification unit 14, an extraction unit 15, and a determination unit 16.
  • the first acquisition unit 11 is configured to acquire a plurality of labeled learning data D2.
  • the first acquisition unit 11 stores, for example, a plurality of labeled training data D2 used for generating the trained model M1 in response to the operation input executed by the user via the operation unit 19. Obtained from the storage unit.
  • the presentation unit 17 can display the learning data D2 with the label acquired by the first acquisition unit 11 on the screen so that the user can view it.
  • the second acquisition unit 12 is configured to acquire the trained model M1 generated by the learning system 2 based on the plurality of learning data D2.
  • the second acquisition unit 12 acquires the trained model M1 from, for example, a storage unit that stores the trained model M1 in response to the operation input executed by the user via the operation unit 19.
  • the third acquisition unit 13 is configured to acquire the labeled identification data D1.
  • the third acquisition unit 13 acquires the newly prepared labeled identification data D1 from, for example, a storage unit that stores the newly prepared identification data D1 in response to the operation input executed by the user via the operation unit 19.
  • the presentation unit 17 can display the labeled identification data D1 acquired by the third acquisition unit 13 on the screen so that the user can view it.
  • the identification unit 14 is configured to identify the identification data D1 using the trained model M1 (identification process).
  • the identification unit 14 uses the learned model M1 acquired by the second acquisition unit 12 to identify whether the object 5 (battery) shown in the identification data D1 is OK or NG. That is, the identification unit 14 causes the trained model M1 to classify (identify) whether the identification data D1 is OK or NG, as in the target image data D3 (input data) in the estimation system 3. As will be described later, the result of the identification process is compared with the label actually attached to the identification data D1.
  • the extraction unit 15 has one or more training data D2 similar to the identification data D1 from the plurality of training data D2 based on the index regarding the similarity between the identification data D1 applied in the trained model M1 and the plurality of training data D2. Is configured to be extracted (extraction process).
  • the extracted one or more learning data D2 may be referred to as “similar data D21”.
  • the extraction unit 15 extracts similar data D21 (learning data D2) based on the information of the fully connected layer immediately before the output layer in deep learning.
  • the extraction unit 15 obtains an index of similarity (Euclidean distance as an example) from the feature amount related to the pixel value or the like obtained from the image of the identification data D1 and the feature amount related to the pixel value or the like obtained from the image of each learning data D2. It is obtained, and the closeness between the images is estimated by this. In the following, the index of similarity is simply referred to as "distance”. The extraction unit 15 obtains the above index and estimates the degree of similarity between the identification data D1 and each learning data D2.
  • index of similarity Euclidean distance as an example
  • the trained model M1 compares the distance between the feature amount obtained from the input data and the feature amount obtained from each training data D2 in the fully connected layer. That is, the extraction unit 15 uses the trained model M1 to compare the distance between the feature amount obtained from the input data and the feature amount obtained from each training data D2 in the fully connected layer of the trained model M1. As a result, the input data is likely to be a good product (OK) or a defective product (NG) based on the label of the training data D2 having a small distance from the input data according to the trained model M1. The classification result is output from the output layer.
  • the extraction unit 15 extracts similar data D21 having high similarity to the identification data D1 from the plurality of learning data D2 based on the distance between the identification data D1 and each learning data D2. For example, the extraction unit 15 extracts the learning data D2 whose distance is equal to or less than a predetermined specific threshold value as the similar data D21. Alternatively, the extraction unit 15 may extract N upper learning data D2 (N is a natural number) having a high degree of similarity (small distance) from the plurality of learning data D2 as the similar data D21.
  • the specific threshold value and N pieces (number) can be arbitrarily set by the user.
  • the processing system 1 is configured to be able to receive setting information regarding a specific threshold value and N pieces (number) by the user via the operation unit 19.
  • the setting information is stored in the memory of the processing unit 10 or the like. In the following, it is assumed that the top three similar data D21 having a small distance to the identification data D1 are extracted.
  • the determination unit 16 is configured to determine the presence or absence of an erroneous label based on the identification data D1 and the learning data D2 of 1 or more (judgment process).
  • the processing unit 10 causes the determination unit 16 to execute the determination process when a specific condition is satisfied.
  • the specific condition is that the identification result by the identification process and the label of the identification data D1 do not match.
  • the determination unit 16 determines whether or not there is an erroneous label when the identification result of the identification data D1 by the identification unit 14 and the label given to the identification data D1 do not match. Since the judgment process is performed only when the specific conditions are satisfied as described above, the possibility that the judgment process is performed unnecessarily is reduced, and the processing load can be reduced. As a result, the time required to identify the erroneous label data can be further reduced.
  • the processing load can be further reduced.
  • the determination unit 16 erroneously labels the label given to the identification data D1 and the label given to the one or more similar data D21 based on the identification data D1 and one or more similar data D21 (learning data D2). Judge the presence or absence of.
  • the "label of the identification data D1" means the label given to the identification data D1
  • the "label of the learning data D2" means the label given to the learning data D2.
  • the determination unit 16 does not determine whether or not there is an erroneous label.
  • the determination unit 16 resembles the label of the identification data D1, the label of one or more similar data D21 (learning data D2), and the similarity of one or more similar data D21 (learning data D2) to the identification data D1.
  • Both the operation examples 1 and 2 are examples in the case where the identification data D1 has an erroneous label. Further, in the present embodiment, the determination unit 16 further has a function for identifying that the learning data D2 has an erroneous label, and will be described in the operation example 3 of “(2.3) Operation” in the next column. ..
  • the determination unit 16 has a label given to the identification data D1, a label given to one or more similar data D21 (learning data D2), and one or more similar data D21 (learning data D2) with the identification data D1.
  • the presence or absence of mislabeling is determined based on at least one of the indicators related to the degree of similarity with.
  • the storage unit of the processing system 1 stores various information. More specifically, the storage unit includes the plurality of learning data D2 acquired by the first acquisition unit 11, the trained model M1 acquired by the second acquisition unit 12, and the identification acquired by the third acquisition unit 13. The data D1 and the data D1 are stored. Further, the storage unit stores one or more similar data D21 extracted by the extraction unit 15. Further, the storage unit stores the determination result by the determination unit 16.
  • the processing unit 10 of the processing system 1 acquires a plurality of labeled training data D2, a trained model M1, and a labeled identification data D1 in the first acquisition unit 11 to the third acquisition unit 13, respectively.
  • FIG. 3 S1 to S3, first to third acquisition steps). There is no fixed order for acquiring these data.
  • operation example 1 it is assumed that the identification data D1 is labeled with "NG" (see FIG. 2A).
  • the processing unit 10 identifies the identification data D1 using the trained model M1 in the identification unit 14 (FIG. 3: S4, identification step).
  • the identification result is "OK” (see FIG. 2A).
  • the processing unit 10 compares the identification result with the label of the identification data D1, and if they do not match (FIG. 3: Yes in S5), the process proceeds to the extraction process and the determination process.
  • the processing unit 10 does not proceed to the extraction process and the determination process, and the presentation unit 17 says, for example, "no error". Present the message and finish the process.
  • the identification result is "OK" and the label is "NG"
  • the process proceeds to the extraction process and the determination process.
  • the processing unit 10 extracts similar data D21 from a plurality of learning data D2 in the extraction unit 15 (FIG. 3: S7, extraction step).
  • the top three similar data D21s with smaller distances are extracted (see FIGS. 2A and 2B).
  • the distances (distances between the identification data D1 and the similar data D21) of the three similar data D21s are 0.79, 0.81, 0.83 in order from the left, and the distances are 0. The closer the image is to (zero), the closer the image is to the identification data D1, and the image is identified by the trained model M1.
  • the labels of the three similar data D21s are all "OK".
  • the processing unit 10 determines in the determination unit 16 whether or not there is an erroneous label based on the identification data D1 and the three similar data D21 (FIG. 3: S8).
  • the determination unit 16 calculates the degree of erroneous labeling, and if the degree of erroneous labeling is high (for example, if it is 90% or more), it is determined that there is a high possibility that the identification data D1 has erroneous labeling.
  • the determination unit 16 determines that the label of the identification data D1 and the label of one or more similar data D21 (learning data D2) do not match each other (degree of mislabeling). It is configured to determine the presence or absence.
  • learning data D2 learning data D2
  • the label of the identification data D1 is "NG", while all the labels of the three similar data D21 are "OK". As a result, the discrepancy rate is 100%. Therefore, in this operation example, the determination unit 16 determines that the teacher data has an erroneous label, and particularly determines that there is a high possibility that the identification data D1 has an erroneous label. The case where the mismatch ratio is less than 90% will be described in Operation Example 5 described later.
  • the processing unit 10 presents the presentation information D4 including the judgment result of the judgment unit 16 from the presentation unit 17 (FIG. 3: S9).
  • the identification data D1 determined to have a high possibility of having an erroneous label superimposes the character data "erroneous label" on the image, and the periphery of the image is framed.
  • the presentation unit 17 presents information indicating whether the identification data D1 or the one or more similar data D21 (learning data D2) has the erroneous label. ..
  • the presence or absence of an erroneous label is determined based on the label, that is, based on the label mismatch ratio as the degree of erroneous label.
  • the determination unit 16 has the label of the identification data D1, the label of one or more similar data D21 (learning data D2), and the similarity of one or more similar data D21 (learning data D2). Determine if there is a mislabel based on both indicators of degree. That is, the determination method of this operation example is different from the determination method exemplified in the operation example 1.
  • the determination unit 16 calculates the degree of mislabeling F from the following equation (1).
  • Pi is set to 0 (zero) when the label of the similar data i and the label of the identification data D1 match, and is calculated from the following equation (2) when they do not match.
  • K 0.001.
  • the Pi of the equation (2) becomes a value closer to 1 as the distance i (Li) becomes smaller.
  • the fact that Pi in the equation (2) has a value close to 1 means that the similar data i and the identification data D1 have a high degree of similarity between the images even though the labels do not match each other. Therefore, as the degree of mislabeling F ⁇ 100 (probability) approaches 100%, the determination unit 16 determines that there is a mislabeling, and in particular, there is a high possibility that the identification data D1 has a mislabeling.
  • the distances of the three similar data D21s are 0.79, 0.81, and 0.83 in order from the left, and all of these labels do not match the labels of the identification data D1. Therefore, the Pi of the similar data i is calculated from the equation (2).
  • F ⁇ 100 is actually obtained by substituting each distance in Eq. (2), the probability that the identification data D1 has an erroneous label is ⁇ (0.99921 + 0.99919 + 0.99917) / 3 ⁇ ⁇ 100 ⁇ 99.9%. Will be.
  • the processing system 1 is a judgment method based on the "label ratio" of the operation example 1 and the judgment method based on "both the label and the index of similarity" of the operation example by the operation input from the user to the operation unit 19 and the like. It may be configured so that either one can be selected.
  • FIG. 2B referred to in the explanation of the operation examples 1 and 2, an example in which the identification data D1 has an erroneous label is shown.
  • operation example 3 an example in which the learning data D2 has an erroneous label will be described.
  • the processing unit 10 of the processing system 1 acquires a plurality of labeled training data D2, a trained model M1, and labeled identification data D1 (FIGS. 3: S1 to S3).
  • the identification data D1 is labeled with "OK” (see FIG. 4).
  • the processing unit 10 identifies the identification data D1 using the trained model M1 (FIG. 3: S4). Here, it is assumed that the identification result is "NG” (see FIG. 4).
  • the processing unit 10 compares the identification result with the label of the identification data D1 (FIG. 3: S5). In this operation example, since the identification result is "NG” and the label is "OK", the process proceeds to the extraction process and the determination process.
  • the processing unit 10 extracts similar data D21 from a plurality of learning data D2 (FIG. 3: S7).
  • the distances of the three similar data D21s are 0 (zero), 1.82, 1.95 in order from the left.
  • the labels of the three similar data D21s are "NG”, "OK", and "OK” in order from the left.
  • the processing unit 10 determines the presence or absence of an erroneous label based on the identification data D1 and the three similar data D21 (FIG. 3: S8).
  • the determination unit 16 of the present embodiment further has a function for identifying that the learning data D2 has an erroneous label.
  • the determination unit 16 uses one or more similar data D21 (learning data D2) to specify specific learning data D22 that is similar to the identification data D1 so that the index related to the similarity satisfies a predetermined condition (to the extent that it satisfies the predetermined condition).
  • the label of the specific training data D22 does not match the label of the identification data D1
  • the label of the training data D23 other than the specific training data D22 in one or more similar data D21 is the label of the identification data D1. If it matches with, it is determined that there is a higher possibility that the specific training data D22 has an erroneous label than the identification data D1.
  • the determination unit 16 since the index related to the similarity is "distance", the determination unit 16 specifies the specific learning data D22 that satisfies the predetermined condition that "the distance is equal to or less than a predetermined distance (threshold value)".
  • a predetermined distance is set to 0.001, but the predetermined distance is not particularly limited.
  • the index related to the similarity is the similarity of the n-dimensional vector or the "similarity” such as the cosine similarity
  • the determination unit 16 satisfies the predetermined condition that "the similarity is equal to or higher than the predetermined similarity (threshold value)".
  • the specific training data D22 is specified.
  • a predetermined distance (threshold value) and a predetermined degree of similarity (threshold value) can be arbitrarily set by the user.
  • the processing system 1 is configured to be able to receive setting information regarding a predetermined distance (threshold value) and a predetermined degree of similarity (threshold value) by the user via the operation unit 19.
  • the setting information is stored in the memory of the processing unit 10 or the like.
  • the determination unit 16 determines that the leftmost similar data D21 is the same. It is determined that the data corresponds to the specific training data D22, which is very similar to the identification data D1.
  • the label (NG) of the specific training data D22 does not match the label (OK) of the identification data D1
  • the label (OK) of the two training data D23 other than the specific training data D22 is the identification data D1. Matches the label (OK) of. Therefore, the determination unit 16 determines that the specific learning data D22 is more likely to have an erroneous label than the identification data D1.
  • the processing unit 10 presents the presentation information D4 including the judgment result of the judgment unit 16 from the presentation unit 17 (FIG. 3: S9).
  • the specific training data D22 which is determined to have a high possibility of having an erroneous label, superimposes the character data "erroneous label" on the image and surrounds the image.
  • the information on the label of the identification data D1 the identification result, the information on the label of the similar data D21, and the information on the distance are also presented together with the image. Therefore, if the user confirms the information presented to the presentation unit 17, it can be easily understood that the "NG" label given to the specific learning data D22 is incorrect and the correct label is "OK". ..
  • the determination unit 16 determines that there is no erroneous label.
  • the processing unit 10 causes the presentation unit 17 to present an image of the identification data D1 and an image of three similar data D21 together with a message such as "Please check visually.”
  • the presentation unit 17 presents both the identification data D1 and one or more similar data D21 (learning data D2). That is, when it is difficult for the processing system 1 to automatically determine the presence or absence of an erroneous label, the user is urged to visually confirm.
  • the identification result is "OK” and the label is "NG" for the identification data D1.
  • the distances of the three similar data D21s are 0 (zero), 1.82, 1.95 in order from the left, as in FIG.
  • the labels of the three similar data D21 are all "OK”.
  • the determination unit 16 identifies the identification data D1 from one or more similar data D21 (learning data D2) so that the index related to the similarity satisfies a predetermined condition (here, the distance is equal to or less than a predetermined distance (threshold)).
  • a predetermined condition here, the distance is equal to or less than a predetermined distance (threshold)
  • Specific training data D22 similar to is specified.
  • the label of the specific training data D22 does not match the label of the identification data D1
  • the label of the training data D23 other than the specific training data D22 in one or more similar data D21 is specific. If it matches the label of the training data D22, it is determined that the identification data D1 is more likely to have an erroneous label than the specific training data D22.
  • the determination unit 16 determines that the leftmost similar data D21 is used. It is determined that the data corresponds to the specific training data D22, which is very similar to the identification data D1.
  • the label (OK) of the specific learning data D22 does not match the label (NG) of the identification data D1
  • the label (OK) of the two training data D23 other than the specific learning data D22 is the specific learning. It matches the label (OK) of the data D22. Therefore, the determination unit 16 determines that the identification data D1 is more likely to have an erroneous label than the specific learning data D22.
  • the determination unit 16 moves toward the identification data D1.
  • the identification data D1 judges that there is a high possibility that there is an erroneous label.
  • the identification data D1 It is judged that there is a high possibility that there is an erroneous label.
  • the identification data D1 determined to have a high possibility of having an erroneous label superimposes the character data "erroneous label" on the image, and the periphery of the image is framed. Presented to surround. Further, the information on the label of the identification data D1, the identification result, the information on the label of each similar data D21, and the information on the distance are also presented together with the image. Therefore, if the user confirms the information presented to the presentation unit 17, it can be easily understood that the "NG" label given to the identification data D1 is incorrect and the correct label is "OK".
  • the determination unit 16 determines that there is no erroneous label.
  • the processing unit 10 causes the presentation unit 17 to present an image of the identification data D1 and an image of three similar data D21 together with a message such as "Please check visually.”
  • the presentation unit 17 presents both the identification data D1 and one or more similar data D21 (learning data D2). That is, when it is difficult for the processing system 1 to automatically determine the presence or absence of an erroneous label, the user is urged to visually confirm.
  • FIG. 2B referred to in the explanation of the operation examples 1 and 2
  • the labels of the three extracted similar data D21 are all OK.
  • FIG. 6 showing an example in which OK and NG are mixed in the labels of the three extracted similar data D21s is used. I will explain.
  • FIG. 6 there is no similar data D21 having a distance of a predetermined distance (0.001) or less, which is very similar to the identification data D1.
  • the processing unit 10 of the processing system 1 acquires a plurality of labeled training data D2, a trained model M1, and labeled identification data D1 (FIGS. 3: S1 to S3).
  • the identification data D1 is labeled with "NG" (see FIG. 6).
  • the processing unit 10 identifies the identification data D1 using the trained model M1 (FIG. 3: S4). Here, it is assumed that the identification result is "OK” (see FIG. 6).
  • the processing unit 10 compares the identification result with the label of the identification data D1 (FIG. 3: S5). In this operation example, since the identification result is "OK” and the label is "NG", the process proceeds to the extraction process and the determination process.
  • the processing unit 10 extracts similar data D21 from a plurality of learning data D2 (FIG. 3: S7).
  • the distances of the three similar data D21s are 1.86, 1.93, and 2.01 in order from the left.
  • the labels of the three similar data D21s are "OK", "OK", and "NG” in order from the left.
  • the labels of OK and NG are mixed.
  • the processing unit 10 determines the presence or absence of an erroneous label based on the identification data D1 and the three similar data D21 (FIG. 3: S8).
  • the determination unit 16 has a presence / absence of an erroneous label based on the ratio of the mismatch between the label of the identification data D1 and the label of the three similar data D21 (degree of erroneous labeling). Is configured to judge.
  • the label of the identification data D1 is "NG"
  • the labels of the three similar data D21 are two mismatched labels.
  • the disagreement rate (degree of mislabeling) is about 67%. Therefore, in this operation example, the determination unit 16 determines that there is no erroneous label because the degree of erroneous labeling is less than the threshold value (for example, 90%).
  • the processing unit 10 includes a message such as "A OK image and an NG image are mixed in the similar data. Please visually check.”, And the image of the identification data D1 and the image of the three similar data D21. Is presented to the presentation unit 17.
  • the presentation unit 17 presents both the identification data D1 and one or more similar data D21 (learning data D2). That is, as in the operation example 3, when it is difficult for the processing system 1 to automatically determine the presence or absence of an erroneous label, the user is urged to visually confirm.
  • the teacher data identification data D1 and learning data D2.
  • the image to be labeled with OK and the image to be labeled with NG may look similar to those at first glance by a person with low skill level.
  • the labeled teacher data may contain mislabeled data.
  • an NG label may be attached as an erroneous label to an image to which an OK label should be attached, or an OK label may be attached as an erroneous label to an image to which an NG label should be attached.
  • the erroneous label can be present in both the newly obtained identification data D1 and in the large number of training data D2 used to generate the trained model M1.
  • one or more similar data D21 similar to the identification data D1 is (automatically) extracted.
  • the presence or absence of an erroneous label can be easily identified only by the user visually confirming the identification data D1 and the similar data D21 through the presentation unit 17 even once. Therefore, the processing system 1 can support the work related to the identification of the erroneous label. As a result, the time required to identify the erroneous label can be reduced. Further, since the learning is performed using the teacher data in which the erroneous label is eliminated, the accuracy of the inference phase using the trained model M1 is also improved.
  • the processing system 1 is provided with a function for automatically detecting an erroneous label, that is, a determination unit 16 for determining the presence or absence of an erroneous label, but the determination unit 16 is not an essential component of the processing system 1. However, since the determination unit 16 is provided as in the present embodiment, the time required for identifying the erroneous label can be further reduced.
  • the processing system 1 is provided with the presentation unit 17 that presents the information (presentation information D4) regarding the judgment result by the judgment unit 16 to the outside, the visual confirmation by the user becomes easier.
  • the presentation unit 17 presents information indicating whether the identification data D1 or the similar data D21 has the erroneous label. Therefore, the user can easily visually confirm which data has the erroneous label.
  • the presentation unit 17 presents both the identification data D1 and the similar data D21. Therefore, it becomes easy for the user to visually confirm both the identification data D1 and the similar data D21, and as a result, it becomes easy to find the erroneous label when either data actually has an erroneous label. It also makes it easier to find if there is a defect other than the erroneous label (for example, under-learning or over-learning).
  • the user confirms the presentation unit 17 if the higher-order similar data D21 having a high degree of similarity (small distance) is not very similar to the identification data D1, the user has insufficient learning of the trained model M1. It can be judged that the possibility is high.
  • the processing unit 10 of the processing system 1 may automatically determine whether or not learning is insufficient from the distance of the extracted higher-level similar data D21.
  • the distance of each of the extracted similar data D21 is checked, and if the distance is equal to or more than a certain value, it is determined that learning is insufficient, and the next determination process (S8) is performed.
  • the process may be completed by presenting the message of "insufficient learning" from the presentation unit 17 without proceeding.
  • the above embodiment is only one of the various embodiments of the present disclosure.
  • the above embodiment can be variously modified according to the design and the like as long as the object of the present disclosure can be achieved.
  • the same function as that of the processing system 1 according to the above embodiment may be embodied by a processing method, a computer program, a non-temporary recording medium on which a computer program is recorded, or the like.
  • the processing system 1 in the present disclosure includes a computer system.
  • the computer system mainly consists of a processor and a memory as hardware.
  • the processor executes the program recorded in the memory of the computer system, the function as the processing system 1 in the present disclosure is realized.
  • the program may be pre-recorded in the memory of the computer system, may be provided through a telecommunications line, and may be recorded on a non-temporary recording medium such as a memory card, optical disk, hard disk drive, etc. that can be read by the computer system. May be provided.
  • the processor of a computer system is composed of one or more electronic circuits including a semiconductor integrated circuit (IC) or a large scale integrated circuit (LSI).
  • IC semiconductor integrated circuit
  • LSI large scale integrated circuit
  • the integrated circuit such as IC or LSI referred to here has a different name depending on the degree of integration, and includes an integrated circuit called a system LSI, VLSI (Very Large Scale Integration), or ULSI (Ultra Large Scale Integration). Further, an FPGA (Field-Programmable Gate Array) programmed after the LSI is manufactured, or a logical device capable of reconfiguring the junction relationship inside the LSI or reconfiguring the circuit partition inside the LSI should also be adopted as a processor. Can be done.
  • a plurality of electronic circuits may be integrated on one chip, or may be distributed on a plurality of chips. A plurality of chips may be integrated in one device, or may be distributed in a plurality of devices.
  • the computer system referred to here includes a microcontroller having one or more processors and one or more memories. Therefore, the microcontroller is also composed of one or a plurality of electronic circuits including a semiconductor integrated circuit or a large-scale integrated circuit.
  • a plurality of functions in the processing system 1 are integrated in one housing.
  • the components of the processing system 1 may be distributed in a plurality of housings.
  • a plurality of functions in the processing system 1 may be integrated in one housing. Further, at least a part of the functions of the processing system 1, for example, a part of the functions of the processing system 1 may be realized by a cloud (cloud computing) or the like.
  • the identification data D1 is the teacher data newly obtained for re-learning.
  • the identification data D1 may be the training data D2 used to generate the trained model M1.
  • the accuracy of the trained model M1 may not be 100%.
  • a part or all of the training data D2 used for generating the trained model M1 is used as the identification data D1 in the processing system 1. You may enter in.
  • the identification data D1 may be a part of a plurality of teacher data prepared when performing machine learning of a model. That is, the plurality of teacher data prepared when training the model is divided into the plurality of training data D2 and the identification data D1.
  • the processing system 1 divides a plurality of teacher data and performs cross-validation to evaluate the trained model M1, and is assigned to each of the label assigned to the identification data D1 and the plurality of training data D2. It is possible to detect the presence or absence of erroneous labels for labels.
  • the processing system 1 performs division of the learning data D2 and the identification data D1 a plurality of times for a plurality of teacher data, performs k-validation cross-validation, and further, a label attached to the identification data D1 and a plurality of. The presence or absence of an erroneous label may be detected for the label given to each of the training data D2 of the above.
  • the presentation unit 17 presents both the identification data D1 and the similar data D21. However, the presentation unit 17 may present only the data determined to have an erroneous label.
  • the image pickup device 4 is not limited to the line sensor camera, and may include an area sensor camera.
  • the teacher data is data to which a label is attached to the image data.
  • the teacher data is not limited to the image data, and may be text data or data in which a label is attached to the voice data.
  • the trained model M1 is not limited to image identification (image recognition), and may be applied to, for example, text identification (text recognition) or voice identification (speech recognition).
  • the trained model M1 generated by the learning system 2 is a model generated by deep learning.
  • the trained model M1 is not limited to deep learning.
  • the trained model M1 may be implemented as any type of artificial intelligence or system.
  • the machine learning algorithm is a neural network (including deep learning).
  • the machine learning algorithm is not limited to the neural network, and may be another supervised learning algorithm.
  • Machine learning algorithms include, for example, LinearRegression, LogisticRegression, SupportVectorMachine (SVM), Decision Tree, RandomForest, and gradient boosting. (Gradient Boosting), Naive Bayes classifier, or k-Nearest Neighbors (k-NN) may be used.
  • the processing system (1) includes the first acquisition unit (11), the second acquisition unit (12), the third acquisition unit (13), and the third acquisition unit (13). It includes an identification unit (14) and an extraction unit (15).
  • the first acquisition unit (11) acquires a plurality of learning data (D2) with labels.
  • the second acquisition unit (12) acquires the trained model (M1) generated based on the plurality of training data (D2).
  • the third acquisition unit (13) acquires the identification data (D1) to which the label is attached.
  • the identification unit (14) identifies the identification data (D1) using the trained model (M1).
  • the extraction unit (15) has one or more similar to the identification data (D1) from the plurality of training data (D2) based on the index regarding the similarity between the identification data (D1) and each of the plurality of training data (D2). (Similar data D21) is extracted.
  • the above index is an index applied in the trained model (M1).
  • the identification data (D1) and one or more training data similar to the identification data (D1) are extracted, the identification data (D1) and one or more training data similar to the identification data (D1) (similar).
  • the presence or absence of an erroneous label can be identified only by checking the data D21) (for example, once). As a result, the time required to identify the erroneous label can be reduced.
  • the processing system (1) is a determination unit (1) for determining the presence or absence of an erroneous label based on the identification data (D1) and one or more learning data (similar data D21) in the first aspect. 16) is further provided.
  • the presence or absence of an erroneous label is automatically determined, so that the time required to identify the erroneous label can be further reduced.
  • the processing system (1) according to the third aspect further includes a presentation unit (17) that presents information regarding the determination result by the determination unit (16) to the outside in the second aspect.
  • the presentation unit (17) has the identification data (D1) and one or more learning data. Information indicating which of (similar data D21) has an erroneous label is presented.
  • the presenting unit (17) when the determination result indicates that there is no erroneous label in the third or fourth aspect, the presenting unit (17) has the identification data (D1) and one or more. Both with the training data (similar data D21) of.
  • the determination unit (16) identifies the identification data (D1) by the identification unit (14). When the label assigned to the data (D1) does not match, it is determined whether or not there is an erroneous label.
  • the processing load can be reduced.
  • the time required to identify the erroneous label can be further reduced.
  • the determination unit (16) has a label attached to the identification data (D1) and one or more training data.
  • the presence or absence of an erroneous label is determined based on at least one of the label given to (similar data D21) and the index related to the degree of similarity between the identification data (D1) and one or more training data (similar data D21).
  • the determination unit (16) is attached to the label attached to the identification data (D1) and one or more learning data (similar data D21). The presence or absence of an erroneous label is determined based on the percentage of discrepancies with the label.
  • the reliability regarding the determination of erroneous label is easily improved.
  • the determination unit (16) is attached to the label attached to the identification data (D1) and one or more learning data (similar data D21).
  • the presence or absence of an erroneous label is determined based on both the label and the index related to the similarity of one or more training data (similar data D21).
  • the reliability regarding the judgment of erroneous label is further improved.
  • the extraction unit (15) has two or more learning data (similar data D21) from the plurality of learning data (D2).
  • the training data (similar data D21) is extracted.
  • the determination unit (16) identifies specific learning data (D22) that is so similar to the identification data (D1) that the index related to the similarity satisfies a predetermined condition from the two or more learning data (similar data D21).
  • the label given to the specific learning data (D22) does not match the label given to the identification data (D1), and the specific learning data (similar data D21) has a specific label.
  • the specific training data (D22) is directed to the identification data (D1) rather than the identification data (D1).
  • the reliability regarding the judgment of erroneous label is further improved.
  • the extraction unit (15) has two or more learning data (similar data D21) from the plurality of learning data (D2).
  • the training data (similar data D21) is extracted.
  • the determination unit (16) identifies specific learning data (D22) that is so similar to the identification data (D1) that the index related to the similarity satisfies a predetermined condition from the two or more learning data (similar data D21).
  • the label given to the specific learning data (D22) does not match the label given to the identification data (D1), and the specific learning data (similar data D21) has a specific label.
  • the identification data (D1) is more than the specific training data (D22). It is judged that there is a high possibility that there is an erroneous label on the side.
  • the reliability regarding the judgment of erroneous label is further improved.
  • the trained model (M1) is based on a plurality of training data (D2) by applying deep learning.
  • the generated model is based on a plurality of training data (D2) by applying deep learning.
  • the reliability of the trained model (M1) and the reliability of the determination of erroneous label are further improved.
  • the learning processing system (100) includes a processing system (1) in any one of the first to twelfth aspects, a learning system (2) for generating a trained model (M1), and a learning system (2). To prepare for.
  • the processing method includes a first acquisition step, a second acquisition step, a third acquisition step, an identification step, and an extraction step.
  • a plurality of learning data (D2) with labels are acquired.
  • the trained model (M1) generated based on the plurality of training data (D2) is acquired.
  • the identification data (D1) to which the label is attached is acquired.
  • the discriminant data (D1) is identified using the trained model (M1).
  • the identification data (D2) from the plurality of training data (D2) is based on the index regarding the similarity between the identification data (D1) applied in the trained model (M1) and each of the plurality of training data (D2).
  • One or more learning data (similar data D21) similar to D1) is extracted.
  • the program according to the fifteenth aspect is a program for causing one or more processors to execute the processing method according to the fourteenth aspect.
  • the extraction unit (15) has the identification result of the identification data (D1) by the identification unit (14) and the identification result.
  • the label assigned to the identification data (D1) does not match, one or more training data (similar data D21) is extracted from the plurality of training data (D2).
  • the configurations according to the second to twelfth aspects are not essential configurations for the processing system (1) and can be omitted as appropriate.
  • the configuration according to the sixteenth aspect is not an essential configuration for the processing system (1) and can be omitted as appropriate.

Landscapes

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

Abstract

本発明の課題は、誤ラベルの特定に要する時間の削減を図ることである。処理システム(1)は、第1取得部(11)と、第2取得部(12)と、第3取得部(13)と、識別部(14)と、抽出部(15)と、を備える。第1取得部(11)は、ラベルが付与された複数の学習データ(D2)を取得する。第2取得部(12)は、複数の学習データ(D2)に基づき生成された学習済みモデル(M1)を取得する。第3取得部(13)は、ラベルが付与された識別データ(D1)を取得する。識別部(14)は、学習済みモデル(M1)を用いて識別データ(D1)を識別する。抽出部(15)は、学習済みモデル(M1)で適用される識別データ(D1)と複数の学習データ(D2)の各々との類似度に関する指標に基づき、複数の学習データ(D2)から、識別データ(D1)と類似する1以上の学習データ(D2)を抽出する。

Description

処理システム、学習処理システム、処理方法、及びプログラム
 本開示は、一般に、処理システム、学習処理システム、処理方法、及びプログラムに関する。より詳細には本開示は、ラベルが付与されたデータに関する処理システム、当該処理システムを備える学習処理システム、処理方法、及びプログラムに関する。
 特許文献1には、データ解析装置が開示されている。データ解析装置は、ラベル付き教師データをモデル構築用データとモデル検証用データとに分割し、モデル構築用データを用いて機械学習モデルを構築し、機械学習モデルをモデル検証用データに適用してサンプルを識別するという一連の処理を規定回数繰り返す。データ解析装置は、その識別結果であるラベルと元々データに付されていたラベルとが不一致であった誤識別の回数をサンプル毎に求め、その誤識別回数又はその誤識別の確率に基づいてサンプルがミスラベル状態であるか否かを判定する。これにより、教師データに含まれる、ミスラベル状態である可能性が高いサンプルを高い確度で検出することができる。
 特許文献1のデータ解析装置では、上記の一連の処理を規定回数繰り返す必要があり、ミスラベル(誤ラベル)の特定に長時間を要する可能性がある。
特開2018-155522号公報
 本開示は上記事由に鑑みてなされ、誤ラベルの特定に要する時間の削減を図ることができる、処理システム、学習処理システム、処理方法、及びプログラムを提供することを目的とする。
 本開示の一態様の処理システムは、第1取得部と、第2取得部と、第3取得部と、識別部と、抽出部と、を備える。前記第1取得部は、ラベルが付与された複数の学習データを取得する。前記第2取得部は、前記複数の学習データに基づき生成された学習済みモデルを取得する。前記第3取得部は、ラベルが付与された識別データを取得する。前記識別部は、前記学習済みモデルを用いて前記識別データを識別する。前記抽出部は、前記学習済みモデルで適用される前記識別データと前記複数の学習データの各々との類似度に関する指標に基づき、前記複数の学習データから、前記識別データと類似する1以上の学習データを抽出する。
 本開示の一態様の学習処理システムは、上記の処理システムと、前記学習済みモデルを生成する学習システムと、を備える。
 本開示の一態様の処理方法は、第1取得ステップと、第2取得ステップと、第3取得ステップと、識別ステップと、抽出ステップと、を含む。前記第1取得ステップでは、ラベルが付与された複数の学習データを取得する。前記第2取得ステップでは、前記複数の学習データに基づき生成された学習済みモデルを取得する。前記第3取得ステップでは、ラベルが付与された識別データを取得する。前記識別ステップでは、前記学習済みモデルを用いて前記識別データを識別する。前記抽出ステップでは、前記学習済みモデルで適用される前記識別データと前記複数の学習データの各々との類似度に関する指標に基づき、前記複数の学習データから、前記識別データと類似する1以上の学習データを抽出する。
 本開示の一態様のプログラムは、1以上のプロセッサに、上記の処理方法を実行させるためのプログラムである。
図1は、一実施形態に係る処理システムを備える学習処理システム全体の概略ブロック構成図である。 図2A及び図2Bは、同上の処理システムにおける動作例1及び動作例2を説明するための説明図である。 図3は、同上の学習処理システムの動作を説明するためのフローチャートである。 図4は、同上の処理システムにおける動作例3を説明するための説明図である。 図5は、同上の処理システムにおける動作例4を説明するための説明図である。 図6は、同上の処理システムにおける動作例5を説明するための説明図である。
 (1)概要
 以下の実施形態において説明する各図は、模式的な図であり、各図中の各構成要素の大きさ及び厚さそれぞれの比が、必ずしも実際の寸法比を反映しているとは限らない。
 本実施形態に係る処理システム1は、図1に示すように、第1取得部11と、第2取得部12と、第3取得部13と、識別部14と、抽出部15とを備える。
 第1取得部11は、ラベルが付与された複数の学習データD2を取得する。第2取得部12は、複数の学習データD2に基づき生成された学習済みモデルM1を取得する。
 ここでいう学習データD2は、一例として画像データである。学習データD2は、例えば撮像装置4(図1参照)で撮像された画像データである。しかし、画像データは、CG等の加工されたデータでもよい。またここでは画像データは、静止画であることを想定するが、動画又はコマ送りの1コマ1コマのデータでもよい。学習データD2は、その画像データ内に写るオブジェクト5(図2A及び図2B参照:被写体)に関する学習済みモデルM1を生成するためのデータである。つまり、学習データD2は、モデルを機械学習するために用いられる学習用データである。本開示でいう「モデル」は、識別対象(オブジェクト5)に関する入力データが入力されると、識別対象がどのような状態にあるかを推定し、推定結果(識別結果)を出力するプログラムである。「学習済みモデル」は、学習用データを用いた機械学習が完了したモデルをいう。また「学習データ(セット)」は、モデルに入力される入力データ(画像データ)と、入力データに付与されたラベルと、を組み合わせたデータセットであり、いわゆる教師データである。つまり、本実施形態では、学習済みモデルM1は、教師あり学習による機械学習が完了したモデルである。
 なお、本開示において、「画像データ内に写るオブジェクト5」とは、「画像データによって表される画像内に写るオブジェクト5」という意味を含む。
 本実施形態では一例として、学習済みモデルM1は、深層学習(ディープラーニング)を適用して複数の学習データD2に基づき生成されたモデルである。
 本実施形態では一例として、識別対象であるオブジェクト5は、図2A及び図2Bに示すように、電池である。つまり、学習データD2は、電池の画像(画像データ)である。したがって、学習済みモデルM1は、電池の外観の様子を推定し、推定結果を出力する。具体的には、学習済みモデルM1は、推定結果として、電池の外観が、良(OK)であるか不良(NG)であるかを出力する、言い換えれば、電池の外観検査のために用いられる。以下では、説明を分かりやすくするために、複数の学習データD2の各々に付与されるラベルは、「OK」又は「NG」の二種類だけである場合を想定する。しかし、本開示でいう「ラベル」の種類は、「OK」、「NG」の二種類に限定されない。例えば「NG」について、より詳細な内容(不良の種類等)を示すラベルが付与されてよい。
 上記の内容を言い換えると、処理システム1は、学習済みモデルM1を用いて、電池の外観の様子を推定し、推定結果を出力する。具体的には、処理システム1は、学習済みモデルM1を用いて、推定結果として、電池の外観が、良(OK)であるか不良(NG)であるかを出力する。
 本実施形態の第3取得部13は、ラベルが付与された識別データD1を取得する。本実施形態では、識別データD1は、学習データD2と同様に、一例として画像データであり、その画像データ内に写るオブジェクト5は電池である。識別データD1は、例えば機械学習が完了した学習済みモデルM1を更新する際に、再学習するために新たに入手された教師データである。より具体的には、識別データD1は、現存の学習データとは別に新しく追加する学習データ、又は現存の学習データを更新するために用いられる学習データとなる予定のデータである。識別データD1には、複数の学習データD2と同様に、「OK」又は「NG」が付与され得る。
 ところで、モデルの機械学習を行うためには、教師データ(識別データD1及び学習データD2)に対して、人がラベルを付ける作業(ラベリング)が発生する。しかし、人がラベルを付ける際には、単純な作業ミス、又は人による基準の曖昧さが発生し得る。その結果、ラベル付きの教師データには、適切ではないラベル(誤ラベル)が付与されたデータが含まれている可能性がある。誤ラベルは、新たに入手された識別データD1にも、学習済みモデルM1の生成に用いた学習データD2にも存在し得る。
 本開示において、誤ラベルとは、データに付与されたラベルであって、適切ではないラベルをいう。誤ラベルは、例えば、OKラベルが付与されるべきデータに実際に付与されたNGラベル、NGラベルが付与されるべきデータに実際に付与されたOKラベルをいう。
 本実施形態の処理システム1では、識別部14は、学習済みモデルM1を用いて識別データD1を識別する。抽出部15は、学習済みモデルM1で適用される識別データD1と複数の学習データD2との類似度に関する指標に基づき、複数の学習データD2から、識別データD1と類似する1以上の学習データD2を抽出する。ここでいう「学習済みモデルM1で適用される類似度に関する指標」は、例えば、深層学習における出力層の直前の全結合層における指標であり、本実施形態では、ユークリッド距離を用いている。つまり、比較する2つの画像から得られる画素値等の特徴量から「距離」が求められ、2つの画像の近さが推定される。類似度の指標となる「距離」は、類似度とは反比例となる。類似度の指標となる「距離」は、ユークリッド距離以外にも、マハラノビス距離、マンハッタン距離、チェビシェフ距離、又はミンコフスキー距離でもよい。また指標は、距離に限定されず、類似度、又は(相関)係数等でもよく、例えばn次元ベクトルの類似度、コサイン類似度、ピアソンの相関係数、偏差パターン類似度、ジャッカード係数、ダイス係数、又はシンプソン係数でもよい。
 要するに、類似する1以上の学習データD2は、学習済みモデルM1が入力データ(識別データD1)を分類する際に用いられる類似度の指標に基づき抽出される。抽出部15は、識別データD1と類似度が高い複数(例えば上位3個)の学習データD2を抽出する。
 このように類似する1以上の学習データD2が抽出されるので、識別データD1と類似する1以上の学習データD2とを1回でも確認するだけで、誤ラベルの有無を特定し得る。結果的に、誤ラベルの特定に要する時間の削減を図ることができる。
 また本実施形態に係る学習処理システム100は、図1に示すように、処理システム1と、学習済みモデルM1を生成する学習システム2とを備える。したがって、誤ラベルの特定に要する時間の削減を図ることが可能な学習処理システム100を提供できる。
 また本実施形態に係る処理方法は、第1取得ステップと、第2取得ステップと、第3取得ステップと、識別ステップと、抽出ステップと、を含む。第1取得ステップでは、ラベルが付与された複数の学習データD2を取得する。第2取得ステップでは、複数の学習データD2に基づき生成された学習済みモデルM1を取得する。第3取得ステップでは、ラベルが付与された識別データD1を取得する。識別ステップでは、学習済みモデルM1を用いて識別データD1を識別する。抽出ステップでは、学習済みモデルM1で適用される識別データD1と複数の学習データD2の各々との類似度に関する指標に基づき、複数の学習データD2から、識別データD1と類似する1以上の学習データD2を抽出する。この構成によれば、誤ラベルの特定に要する時間の削減を図ることが可能な処理方法を提供できる。この処理方法は、コンピュータシステム(処理システム1)上で用いられる。つまり、この処理方法は、プログラムでも具現化可能である。本実施形態に係るプログラムは、本実施形態に係る処理方法を、1以上のプロセッサに実行させるためのプログラムである。
 (2)詳細
 以下、本実施形態に係る処理システム1を備えた学習処理システム100、及びその周辺構成を含んだ全体のシステムについて、図1を参照しながら詳しく説明する。なお、周辺構成の少なくとも一部が、学習処理システム100の構成に含まれてもよい。
 (2.1)全体構成
 学習処理システム100は、図1に示すように、処理システム1と、学習システム2とを備える。また学習処理システム100の周辺構成として、推定システム3と、1又は複数台の撮像装置4(図1では1台のみ図示)とが設けられている。
 処理システム1、学習システム2、及び推定システム3は、サーバ等から構築されることを想定する。ここでいう「サーバ」は、1台のサーバ装置から構成されることを想定する。つまり、処理システム1、学習システム2、及び推定システム3の主な機能が、1台のサーバ装置に設けられていることを想定する。
 ただし、「サーバ」は、複数台のサーバ装置から構成されてもよい。具体的には、処理システム1、学習システム2、及び推定システム3の機能が、それぞれ個別のサーバ装置に設けられてもよいし、これらのうちの2つのシステムが1台のサーバ装置に設けられてもよい。またそのようなサーバ装置が、例えばクラウド(クラウドコンピューティング)を構築してもよい。
 またサーバ装置は、電池の外観検査を実施する工場内に設置されてもよいし、工場の外部(例えば事業本部)に設置されてもよい。処理システム1、学習システム2、及び推定システム3の機能がそれぞれ個別のサーバ装置に設けられている場合、各サーバ装置は、他のサーバ装置と通信可能に接続されていることが望ましい。
 学習システム2は、オブジェクト5に関する学習済みモデルM1を生成するように構成される。学習システム2は、ラベル付きの複数の学習データD2(画像データ)に基づき学習済みモデルM1を生成する。ここでいう学習済みモデルM1は、例えばニューラルネットワークを用いたモデル、又は多層ニューラルネットワークを用いた深層学習(ディープラーニング)により生成されるモデルを含むことを想定する。ニューラルネットワークは、例えばCNN(Convolutional Neural Network:畳み込みニューラルネットワーク)、又はBNN(Bayesian Neural Network:ベイズニューラルネットワーク)等を含み得る。学習済みモデルM1は、ASIC(Application Specific Integrated Circuit)又はFPGA(Field-Programmable Gate Array)等の集積回路に、学習済みのニューラルネットワークを実装することで実現されている。学習済みモデルM1は、ディープラーニングにより生成されるモデルに限定されない。学習済みモデルM1は、サポートベクターマシン、又は決定木等により生成されるモデルでもよい。
 複数の学習データD2の各々は、画像データに対して「OK(良品)」又は「NG(不良品)」を示すラベルを付与することで生成される。ラベルの付与に関する作業(ラベリング)は、ユーザによって操作部19等のユーザインタフェースを介して学習処理システム100に対して行われる。学習システム2は、ラベル付きの複数の学習データD2を用いて、電池の良品、及び不良品を機械学習することにより、学習済みモデルM1を生成する。
 また学習システム2は、新たに取得したラベル付きの学習データを識別データD1として用いて再学習を行うことで、学習済みモデルM1の性能の向上を図ることができる。例えばオブジェクト5に新しい種類の不良が見つかれば、学習システム2に、新しい不良に関する再学習を行わせることが可能である。
 学習システム2で生成された学習済みモデルM1は、格納部に格納(記憶)される。学習済みモデルM1を格納する格納部は、EEPROM(Electrically Erasable Programmable Read-Only Memory)のような書き換え可能な不揮発性メモリを含む。
 処理システム1は、識別データD1と類似する学習データD2を抽出する抽出処理を実行して、教師データ(識別データD1及び学習データD2)に誤ラベルが存在するか否かの確認を行いやすくする機能を有している。以下では、処理システム1を備えた学習処理システム100を利用する者を単に「ユーザ」と呼ぶことがある。ユーザは、例えば、工場内で電池(オブジェクト5)の製造工程を監視するオペレータ、又は管理責任者等に相当し得る。
 処理システム1は、図1に示すように、処理部10と、提示部17と、通信部18と、操作部19とを備える。処理システム1は、記憶部を更に備える。
 処理システム1の一部の機能は、サーバと通信可能な情報端末に分散的に設けられてもよい。本開示でいう「情報端末」は、パーソナルコンピュータ(ノートパソコン又は据置型のパソコン)、スマートフォンやタブレット端末等の携帯型の端末等を含み得る。ここでは、提示部17及び操作部19の機能が、ユーザが使用する情報端末に設けられている。情報端末には、サーバと通信するための専用のアプリケーションソフトが予めインストールされる。
 処理部10は、1以上のプロセッサ(マイクロプロセッサ)と1以上のメモリとを含むコンピュータシステムにより実現され得る。つまり、1以上のプロセッサが1以上のメモリに記憶された1以上のプログラム(アプリケーション)を実行することで、処理部10として機能する。プログラムは、ここでは処理部10のメモリに予め記録されているが、インターネット等の電気通信回線を通じて、又はメモリカード等の非一時的な記録媒体に記録されて提供されてもよい。
 処理部10は、提示部17、通信部18、及び操作部19等に関する制御処理を実行する。処理部10の機能はサーバにあることを想定する。また処理部10は、識別処理、抽出処理、及び判断処理を実行する機能を有しており、図1に示すように、第1取得部11、第2取得部12、第3取得部13、識別部14、抽出部15、及び判断部16を有する。第1取得部11、第2取得部12、第3取得部13、識別部14、抽出部15、及び判断部16の詳細については、次の欄で説明する。
 提示部17は、液晶ディスプレイ又は有機EL(Electro-Luminescence)ディスプレイを構成する。提示部17は、上述の通り、情報端末に設けられている。提示部17は、タッチパネル式のディスプレイでもよい。提示部17は、後述する判断部16による判断結果に関する情報(提示情報D4)を外部に提示する。提示部17は、提示情報D4以外にも、推定システム3の推定結果等の種々の情報を表示し得る。
 通信部18は、1又は複数台の撮像装置4と直接的に、或いはユーザの情報端末又は生産管理システムの機能を有した別サーバ等を介して間接的に通信するための通信インタフェースである。通信部18の機能は、処理部10と同じサーバにあることを想定するが、例えば情報端末に設けられてもよい。通信部18は、撮像装置4又は別サーバ等から、識別データD1及び学習データD2を受信する。
 識別データD1及び学習データD2はいずれも、一例として撮像装置4で撮像された画像データにラベル(ここでは「OK」又は「NG」)が付与されたデータであり、画像データは、オブジェクト5を示す画素領域を含む。またオブジェクト5は、上述の通り電池であり、識別データD1及び学習データD2はいずれも電池の外観を示す画素領域を含むデータである。撮像装置4は、例えばラインセンサカメラを含む。
 撮像装置4で撮像されたオブジェクト5に関する大量の画像データの中からの、教師データ(学習データD2)に適用する画像データの選別は、例えば、ユーザからの指示に応じて行われる。画像データの選別作業、及び画像データへのラベリングを支援する機能が、学習処理システム100に設けられている。例えば、学習処理システム100は、選別及びラベリングに関する指示を受け付けるユーザインタフェース(例えば操作部19)を備える。
 操作部19は、マウス、キーボード、及びポインティングデバイス等を含む。操作部19は、上述の通り、例えばユーザが使用する情報端末に設けられている。提示部17が、情報端末のタッチパネル式のディスプレイである場合、操作部19の機能を兼ねてもよい。
 推定システム3は、学習システム2で生成された学習済みモデルM1を用いて、入力される対象画像データD3に関する推定を行う(推論フェーズ)。推定システム3は、1又は複数台の撮像装置4と直接的に、或いはユーザの情報端末又は生産管理システムの機能を有した別サーバ等を介して間接的に通信可能に構成される。推定システム3は、実際に製造工程を経た電池(製品又は半製品)が撮像装置4で撮像された対象画像データD3を受信して、電池の外観検査を実行する。
 推定システム3は、学習済みモデルM1を用いて、対象画像データD3に写るオブジェクト5が「良品」又は「不良品」のどちらであるかを推定する。推定システム3は、対象画像データD3に対する識別結果(推定結果)を、ユーザが利用する情報端末、又は生産管理システム等に出力する。ユーザは、情報端末を通じて、推定結果を確認できる。また生産管理システムが、推定結果を取得して、「不良品」と推定された電池については、次の工程に搬送される前に、破棄するように設備を制御してもよい。
 後述する処理システム1の識別部14の機能は、推定システム3の機能と実質的に同等である。
 (2.2)誤ラベル検知
 処理部10は、識別処理、抽出処理、及び判断処理を実行して誤ラベルを検知する機能を有する。具体的には、処理部10は、図1に示すように、第1取得部11、第2取得部12、第3取得部13、識別部14、抽出部15、及び判断部16を有する。
 第1取得部11は、ラベル付きの複数の学習データD2を取得するように構成される。第1取得部11は、ユーザにより操作部19を介して実行された操作入力に応じて、学習済みモデルM1の生成に用いられた全てのラベル付きの複数の学習データD2を、例えばこれらを格納する格納部から取得する。提示部17は、第1取得部11が取得したラベル付きの学習データD2をユーザが閲覧できるように、画面表示可能である。
 第2取得部12は、複数の学習データD2に基づき学習システム2で生成された学習済みモデルM1を取得するように構成される。第2取得部12は、ユーザにより操作部19を介して実行された操作入力に応じて、学習済みモデルM1を、例えばこれを格納する格納部から取得する。
 第3取得部13は、ラベル付きの識別データD1を取得するように構成される。第3取得部13は、ユーザにより操作部19を介して実行された操作入力に応じて、新たに用意されたラベル付きの識別データD1を、例えばこれを格納する格納部から取得する。提示部17は、第3取得部13が取得したラベル付きの識別データD1をユーザが閲覧できるように、画面表示可能である。
 識別部14は、学習済みモデルM1を用いて識別データD1を識別するように構成される(識別処理)。識別部14は、第2取得部12が取得した学習済みモデルM1を用いて、識別データD1内に写るオブジェクト5(電池)が、OK又はNGのいずれであるかの識別を行わせる。つまり、識別部14は、推定システム3で言えば対象画像データD3(入力データ)のように、学習済みモデルM1に、識別データD1がOKかNGかを分類(識別)させる。後述の通り、識別処理による結果は、識別データD1に実際付与されていたラベルと比較される。
 抽出部15は、学習済みモデルM1で適用される識別データD1と複数の学習データD2との類似度に関する指標に基づき、複数の学習データD2から、識別データD1と類似する1以上の学習データD2を抽出するように構成される(抽出処理)。以下では、抽出した1以上の学習データD2を、「類似データD21」と呼ぶことがある。ここでは、抽出部15は、深層学習における出力層の直前の全結合層の情報に基づき、類似データD21(学習データD2)を抽出する。抽出部15は、識別データD1の画像から得られる画素値等に関する特徴量と、各学習データD2の画像から得られる画素値等に関する特徴量とから、類似度の指標(一例としてユークリッド距離)を求め、これにより画像同士の近さを推定する。以下では、類似度の指標を、単に「距離」と呼ぶ。抽出部15は、上記指標を求めて、識別データD1と各学習データD2との類似度を推定する。
 識別データD1に対する類似データD21の距離が小さいほど、その類似データD21が識別データD1に近い画像であることを意味する。言い換えると、学習済みモデルM1は、全結合層において、入力データから得られる特徴量と各学習データD2から得られる特徴量との距離を比較する。つまり、抽出部15は、学習済みモデルM1を用いて、学習済みモデルM1の全結合層において、入力データから得られる特徴量と各学習データD2から得られる特徴量との距離を比較する。その結果、入力データは、学習済みモデルM1により、入力データと距離の小さい学習データD2のラベルに基づき、良品(OK)である可能性が高い、又は不良品(NG)である可能性が高いという結果に分類され、その分類結果が出力層より出力される。
 このように、抽出部15は、識別データD1と各学習データD2との距離に基づき、複数の学習データD2から、識別データD1と類似性の高い類似データD21を抽出する。例えば、抽出部15は、上記距離が、予め定められた特定の閾値以下である学習データD2を、類似データD21として抽出する。或いは、抽出部15は、複数の学習データD2から、類似度の高い(距離が小さい)上位のN個(Nは自然数)の学習データD2を、類似データD21として抽出してもよい。特定の閾値やN個(個数)は、ユーザにより任意に設定可能である。本実施形態では、処理システム1は、特定の閾値やN個(個数)に関する設定情報を、ユーザにより操作部19を介して受け付け可能に構成される。設定情報は、処理部10のメモリ等に保存される。以下では、識別データD1に対する距離が小さい上位3個の類似データD21が抽出されるものとする。
 判断部16は、識別データD1、及び1以上の学習データD2に基づいて、誤ラベルの有無を判断するように構成される(判断処理)。本実施形態では、処理部10は、特定の条件を満たしたときに、判断部16に判断処理を実行させる。特定の条件は、識別処理による識別結果と識別データD1のラベルとが不一致であること、である。言い換えると、判断部16は、識別部14による識別データD1の識別結果と、識別データD1に付与されたラベルとが不一致の場合に、誤ラベルの有無の判断を実行する。このように特定の条件を満たす場合だけ、判断処理が実施されるため、無用に判断処理が実施される可能性が低減され、処理負荷の低減を図れる。また結果的に、誤ラベルのデータ特定に要する時間を更に削減できる。ここでは、上述した抽出処理も、上記特定の条件が満たされた場合に実行されるため、処理負荷をより低減できる。
 要するに、判断部16は、識別データD1、及び1以上の類似データD21(学習データD2)に基づいて、識別データD1に付与されたラベル及び1以上の類似データD21に付与されたラベルについて誤ラベルの有無を判断する。なお、本開示において、「識別データD1のラベル」とは、識別データD1に付与されたラベルといい、「学習データD2のラベル」とは、学習データD2に付与されたラベルをいう。
 なお、判断部16は、識別部14による識別データD1の識別結果と、識別データD1に付与されたラベルとが一致の場合、誤ラベルの有無の判断を実行しない。
 また本実施形態では、判断部16は、識別データD1のラベルと1以上の類似データD21(学習データD2)のラベル、及び、識別データD1に対する1以上の類似データD21(学習データD2)の類似度に関する指標の、少なくとも一方に基づき、誤ラベルの有無を判断する。次の欄の「(2.3)動作」では、動作例1で「ラベル」に基づき誤ラベルの有無を判断するケースを説明し、動作例2で「ラベル」と「類似度の指標」の両方に基づき誤ラベルの有無を判断するケースを説明する。動作例1及び2ではいずれも、誤ラベルが識別データD1に有る場合の例である。また本実施形態では、判断部16は、学習データD2に誤ラベルが有ることを特定するための機能を更に有し、次の欄の「(2.3)動作」の動作例3で説明する。
 要するに、判断部16は、識別データD1に付与されたラベルと1以上の類似データD21(学習データD2)に付与されたラベル、及び、識別データD1と1以上の類似データD21(学習データD2)との類似度に関する指標、の少なくとも一方に基づき、誤ラベルの有無を判断する。
 処理システム1の記憶部は、種々の情報を記憶する。より詳細には、記憶部は、第1取得部11で取得された複数の学習データD2と、第2取得部12で取得された学習済みモデルM1と、第3取得部13で取得された識別データD1とを記憶する。また、記憶部は、抽出部15で抽出された1以上の類似データD21を記憶する。さらに、記憶部は、判断部16による判断結果を記憶する。
 (2.3)動作
 以下、処理システム1に関する動作について、動作例1~5にて説明する。各動作例における動作の順序は単なる一例であり、特に限定されない。
 <動作例1:識別データに誤ラベル有り>
 以下、動作例1について、図2A、図2B、及び図3を参照して説明する。
 処理システム1の処理部10は、第1取得部11~第3取得部13にて、それぞれ、ラベル付きの複数の学習データD2、学習済みモデルM1、及びラベル付きの識別データD1を取得する(図3:S1~S3、第1~第3取得ステップ)。これらのデータの取得順に決まりはない。本動作例(動作例1)では、識別データD1には、「NG」のラベルが付与されていたとする(図2A参照)。
 次に、処理部10は、識別部14にて、学習済みモデルM1を用いて識別データD1を識別する(図3:S4、識別ステップ)。ここでは、識別結果が「OK」だったとする(図2A参照)。処理部10は、識別結果と識別データD1のラベルとを比較し、不一致であれば(図3:S5のYes)、抽出処理及び判断処理に進む。一方、識別結果と識別データD1のラベルとが一致すれば(図3:S5のNo)、処理部10は、抽出処理及び判断処理に進まずに、提示部17から、例えば「エラーなし」といったメッセージを提示させて、処理を終える。本動作例では、識別結果が「OK」で、ラベルが「NG」のため、抽出処理及び判断処理に進む。
 処理部10は、抽出部15にて、複数の学習データD2から類似データD21を抽出する(図3:S7、抽出ステップ)。この例では、距離の小さい上位3個の類似データD21が抽出されている(図2A及び図2B参照)。またこの例では、3個の類似データD21の距離(識別データD1と類似データD21との間の距離)は、左から順に、0.79、0.81、0.83であり、距離が0(ゼロ)に近いほど識別データD1に近い画像であると、学習済みモデルM1により識別される。またこの例では、3個の類似データD21のラベルは、全て「OK」である。
 次に処理部10は、判断部16にて、識別データD1と3個の類似データD21とに基づいて、誤ラベルの有無を判断する(図3:S8)。本開示では、判断部16は、誤ラベル度合いを計算し、誤ラベル度合いが高ければ(例えば90%以上であれば)、識別データD1に誤ラベルが有る可能性が高いと判断する。具体的には、本動作例では、判断部16が、識別データD1のラベルと1以上の類似データD21(学習データD2)のラベルとが不一致な割合(誤ラベル度合い)に基づき、誤ラベルの有無を判断するように構成される。図2Aの例では、識別データD1のラベルが「NG」に対して、3個の類似データD21の全てのラベルが「OK」である。その結果、不一致割合は、100%である。したがって、本動作例では、判断部16は、教師データに誤ラベルが有ると判断し、特に、識別データD1に誤ラベルが有る可能性が高いと判断する。なお、不一致割合が90%未満のケースについては、後述する動作例5で説明する。
 処理部10は、提示部17から、判断部16の判断結果を含む提示情報D4を提示する(図3:S9)。本動作例では、図2Bに示すように、誤ラベルが有る可能性が高いと判断された識別データD1は、その画像上に「誤ラベル」という文字データを重ね、その画像の周囲を枠で囲むように提示される。つまり、判断結果が誤ラベルの有ることを示す場合、提示部17は、識別データD1と、1以上の類似データD21(学習データD2)とのどちらに誤ラベルが有るかを示す情報を提示する。ここでは提示部17の同じ画面上に、識別データD1の画像とセットで、3個の類似データD21も参考用に提示される(図2B参照)。また識別データD1のラベルの情報と識別結果、類似データD21のラベルの情報と距離の情報も、画像と共に提示される。したがって、ユーザは、提示部17に提示された情報を確認すれば、識別データD1に付与されていた「NG」ラベルは誤りで、正しいラベルは「OK」であることを容易に理解できる。
 <動作例2:識別データに誤ラベル有り>
 以下、動作例2について、動作例1の図2Bを参照しながら説明する。上述した動作例1と実質的に共通する動作については、詳細な説明を省略する場合がある。
 動作例1では、図3のS8の判断処理にて、ラベルに基づき、つまり誤ラベル度合いとしてラベルの不一致割合に基づき、誤ラベルの有無が判断される。本動作例(動作例2)では、判断部16は、識別データD1のラベルと1以上の類似データD21(学習データD2)のラベル、及び、1以上の類似データD21(学習データD2)の類似度に関する指標の両方に基づき、誤ラベルの有無を判断する。つまり、本動作例の判断方法は、動作例1で例示した判断方法と異なる。
 具体的には、判断部16は、誤ラベル度合いをFとすると、以下の式(1)から、誤ラベル度合いFを計算する。
Figure JPOXMLDOC01-appb-M000001
 式(1)中のNは、類似データD21の個数(ここではN=3)である。Piは、類似データiのラベルと識別データD1のラベルとが一致する場合、0(ゼロ)とし、不一致の場合、以下の式(2)から計算される。ここではK=0.001とする。
Figure JPOXMLDOC01-appb-M000002
 式(2)のPiは、距離i(Li)が小さいほど、1に近づく値となる。式(2)のPiが1に近い値ということは、類似データiと識別データD1は、ラベルが互いに不一致にも関わらず、それらの画像の類似度が高いことを意味する。したがって、誤ラベル度合いF×100(確率)は、100%に近くなるほど、判断部16は、誤ラベルが有り、特に、識別データD1に誤ラベルが有る可能性が高いと判断する。
 図2Bの例で言えば、3個の類似データD21の距離は、左から順に、0.79、0.81、0.83であり、これらのラベルは全て識別データD1のラベルと不一致であるため、式(2)から、類似データiのPiが計算される。実際に各距離を式(2)代入してF×100を求めると、識別データD1に誤ラベルが有る確率は、{(0.99921+0.99919+0.99917)/3}×100≒99.9%となる。
 処理システム1は、ユーザからの操作部19等への操作入力によって、動作例1の「ラベルの割合」による判断方法、及び本動作例の「ラベルと類似度の指標の両方」による判断方法のいずれかを選択できるように構成されてもよい。
 本動作例で説明したように、ラベル及び類似度の指標の両方に基づき、誤ラベルの有無を判断することで、動作例1のように不一致割合により誤ラベルの有無を判断する場合に比べて、誤ラベルの判断に関する信頼性が容易に向上する。特に、抽出された類似データD21間で距離のばらつきが大きい場合に、動作例1の不一致割合に比べて、精度がより高くなり得る。
 <動作例3:学習データに誤ラベル有り>
 以下、動作例3について、図3及び図4を参照しながら説明する。上述した動作例1と実質的に共通する動作については、詳細な説明を省略する場合がある。
 動作例1及び2の説明で参照した図2Bでは、識別データD1に誤ラベルが有る一例を示していた。本動作例(動作例3)では、学習データD2に誤ラベルが有る一例について説明する。
 処理システム1の処理部10は、ラベル付きの複数の学習データD2、学習済みモデルM1、及びラベル付きの識別データD1を取得する(図3:S1~S3)。本動作例では、識別データD1には、「OK」のラベルが付与されている(図4参照)。
 次に、処理部10は、学習済みモデルM1を用いて識別データD1を識別する(図3:S4)。ここでは、識別結果が「NG」だったとする(図4参照)。処理部10は、識別結果と識別データD1のラベルとを比較する(図3:S5)。本動作例では、識別結果が「NG」で、ラベルが「OK」のため、抽出処理及び判断処理に進む。
 処理部10は、複数の学習データD2から類似データD21を抽出する(図3:S7)。この例では、3個の類似データD21の距離は、左から順に、0(ゼロ)、1.82、1.95である。またこの例では、3個の類似データD21のラベルは、左から順に、「NG」、「OK」、「OK」である。
 次に処理部10は、識別データD1と3個の類似データD21とに基づいて、誤ラベルの有無を判断する(図3:S8)。
 ここで本実施形態の判断部16は、上述の通り、学習データD2に誤ラベルが有ることを特定するための機能を更に有している。具体的には、判断部16は、1以上の類似データD21(学習データD2)から、類似度に関する指標が所定条件を満たすほどに(満たす程度に)識別データD1に類似する特定の学習データD22を特定する。判断部16は、特定の学習データD22のラベルが識別データD1のラベルと不一致であり、かつ、1以上の類似データD21における特定の学習データD22以外の学習データD23のラベルが識別データD1のラベルと一致する場合、識別データD1よりも特定の学習データD22の方に誤ラベルが有る可能性が高いと判断する。
 本実施形態では、類似度に関する指標が「距離」であるため、判断部16は、「距離が所定の距離(閾値)以下」という所定条件を満たす特定の学習データD22を特定する。ここでは一例として、所定の距離(閾値)を0.001とするが、所定の距離は特に限定されない。類似度に関する指標が、n次元ベクトルの類似度、又はコサイン類似度等の「類似度」である場合、判断部16は、「類似度が所定の類似度(閾値)以上」という所定条件を満たす特定の学習データD22を特定する。所定の距離(閾値)や所定の類似度(閾値)は、ユーザにより任意に設定可能である。処理システム1は、所定の距離(閾値)や所定の類似度(閾値)に関する設定情報を、ユーザにより操作部19を介して受け付け可能に構成される。設定情報は、処理部10のメモリ等に保存される。
 図4の例では、3個の類似データD21のうち左端の類似データD21の「距離」が所定の距離(0.001)以下であることから、判断部16は、左端の類似データD21が、識別データD1に非常に似ている特定の学習データD22に該当すると判定する。この特定の学習データD22のラベル(NG)は、識別データD1のラベル(OK)と不一致であり、また特定の学習データD22以外の2個の学習データD23のラベル(OK)は、識別データD1のラベル(OK)と一致する。そのため、判断部16は、識別データD1よりも、この特定の学習データD22の方に誤ラベルが有る可能性が高いと判断する。
 ここでは特定の学習データD22の数が、特定の学習データD22以外の、識別データD1のラベルと一致する学習データD23の数の1/2以下である場合に、判断部16は、この特定の学習データD22の方に誤ラベルが有る可能性が高いと判断する。図4の例では、特定の学習データD22の数が1個で、学習データD23の数(2個)の1/2=1個であるため、特定の学習データD22に誤ラベルが有る可能性が高いと判断される。
 処理部10は、提示部17から、判断部16の判断結果を含む提示情報D4を提示する(図3:S9)。本動作例では、図4に示すように、誤ラベルが有る可能性が高いと判断された特定の学習データD22は、その画像上に「誤ラベル」という文字データを重ね、その画像の周囲を枠で囲むように提示される。また識別データD1のラベルの情報と識別結果、類似データD21のラベルの情報と距離の情報も、画像と共に提示される。したがって、ユーザは、提示部17に提示された情報を確認すれば、特定の学習データD22に付与されていた「NG」ラベルは誤りで、正しいラベルは「OK」であることを容易に理解できる。
 特定の学習データD22の数が学習データD23の数の1/2より大きい場合、判断部16は、誤ラベルは無いと判断する。処理部10は、例えば「目視確認してください。」といったメッセージと共に、識別データD1の画像と3個の類似データD21の画像を、提示部17に提示させる。言い換えると、判断結果が誤ラベルの無いことを示す場合、提示部17は、識別データD1と、1以上の類似データD21(学習データD2)の両方を提示する。つまり、誤ラベルの有無について処理システム1で自動判断しにくい場合には、ユーザの目視確認を促す。
 <動作例4:動作例3の派生>
 以下、動作例4について、図5を参照しながら説明する。上述した動作例1と実質的に共通する動作については、詳細な説明を省略する場合がある。
 本動作例(動作例4)では、上述した動作例3の派生であり、動作例3と同様に識別データD1に非常に似ている特定の学習データD22が存在する一方で、識別データD1に誤ラベルが有る点で動作例3と相違する。
 図5の例では、識別データD1について、識別結果が「OK」で、ラベルが「NG」である。図5の例では、図4と同様に、3個の類似データD21の距離は、左から順に、0(ゼロ)、1.82、1.95である。ただし、図5の例では、図4と異なり、3個の類似データD21のラベルは全て「OK」である。
 本変形例でも、判断部16は、1以上の類似データD21(学習データD2)から、類似度に関する指標が所定条件(ここでは距離が所定の距離(閾値)以下)を満たすほどに識別データD1に類似する特定の学習データD22を特定する。ここで、判断部16は、特定の学習データD22のラベルが識別データD1のラベルと不一致であり、かつ、1以上の類似データD21における特定の学習データD22以外の学習データD23のラベルが特定の学習データD22のラベルと一致する場合、特定の学習データD22よりも識別データD1の方に誤ラベルが有る可能性が高いと判断する。
 図5の例では、3個の類似データD21のうち左端の類似データD21の「距離」が所定の距離(0.001)以下であることから、判断部16は、左端の類似データD21が、識別データD1に非常に似ている特定の学習データD22に該当すると判定する。この特定の学習データD22のラベル(OK)は、識別データD1のラベル(NG)と不一致であり、また特定の学習データD22以外の2個の学習データD23のラベル(OK)は、特定の学習データD22のラベル(OK)と一致する。そのため、判断部16は、この特定の学習データD22よりも、識別データD1の方に誤ラベルが有る可能性が高いと判断する。
 ここでは特定の学習データD22のラベルと一致する学習データD23の数が、特定の学習データD22のラベルと不一致の学習データD23の数より大きい場合に、判断部16は、識別データD1の方に誤ラベルが有る可能性が高いと判断する。図5の例では、特定の学習データD22のラベルと一致する学習データD23が2個で、特定の学習データD22のラベルと不一致の学習データD23の数(0個)より大きいため、識別データD1に誤ラベルが有る可能性が高いと判断される。
 本動作例では、図5に示すように、誤ラベルが有る可能性が高いと判断された識別データD1は、その画像上に「誤ラベル」という文字データを重ね、その画像の周囲を枠で囲むように提示される。また識別データD1のラベルの情報と識別結果、各類似データD21のラベルの情報と距離の情報も、画像と共に提示される。したがって、ユーザは、提示部17に提示された情報を確認すれば、識別データD1に付与されていた「NG」ラベルは誤りで、正しいラベルは「OK」であることを容易に理解できる。
 特定の学習データD22のラベルと一致する学習データD23の数が、特定の学習データD22のラベルと不一致の学習データD23の数以下の場合、判断部16は、誤ラベルは無いと判断する。処理部10は、例えば「目視確認してください。」といったメッセージと共に、識別データD1の画像と3個の類似データD21の画像を、提示部17に提示させる。言い換えると、判断結果が誤ラベルの無いことを示す場合、提示部17は、識別データD1と、1以上の類似データD21(学習データD2)の両方を提示する。つまり、誤ラベルの有無について処理システム1で自動判断しにくい場合には、ユーザの目視確認を促す。
 <動作例5:類似データにOK、NG混在>
 以下、動作例5について、図6を参照しながら説明する。上述した動作例1と実質的に共通する動作については、詳細な説明を省略する場合がある。
 動作例1及び2の説明で参照した図2Bでは、抽出された3個の類似データD21のラベルが全てOKである。本動作例(動作例5)では、動作例3の説明で参照した図4と同様に、抽出された3個の類似データD21のラベルに、OKとNGが混在した一例を示す図6を用いて説明する。ただし、動作例3の説明で参照した図4とは違って、図6では、距離が所定の距離(0.001)以下の、識別データD1に非常に似た類似データD21は無い。
 処理システム1の処理部10は、ラベル付きの複数の学習データD2、学習済みモデルM1、及びラベル付きの識別データD1を取得する(図3:S1~S3)。本動作例では、識別データD1には、「NG」のラベルが付与されている(図6参照)。
 次に、処理部10は、学習済みモデルM1を用いて識別データD1を識別する(図3:S4)。ここでは、識別結果が「OK」だったとする(図6参照)。処理部10は、識別結果と識別データD1のラベルとを比較する(図3:S5)。本動作例では、識別結果が「OK」で、ラベルが「NG」のため、抽出処理及び判断処理に進む。
 処理部10は、複数の学習データD2から類似データD21を抽出する(図3:S7)。この例では、3個の類似データD21の距離は、左から順に、1.86、1.93、2.01である。またこの例では、3個の類似データD21のラベルは、左から順に、「OK」、「OK」、「NG」である。要するに、図6の3個の類似データD21では、識別データD1に対する距離が互いに概ね同じにも関わらず、OKとNGのラベルが混在している。
 次に処理部10は、識別データD1と3個の類似データD21とに基づいて、誤ラベルの有無を判断する(図3:S8)。
 本動作例では、動作例1と同様に、例えば、判断部16が、識別データD1のラベルと3個の類似データD21のラベルとが不一致な割合(誤ラベル度合い)に基づき、誤ラベルの有無を判断するように構成される。図6の例では、識別データD1のラベルが「NG」に対して、3個の類似データD21のラベル中、不一致のラベルは2個である。その結果、不一致割合(誤ラベル度合い)は、約67%である。したがって、本動作例では、判断部16は、誤ラベル度合いが閾値(例えば90%)未満であるため、誤ラベルは無いと判断する。
 この場合、処理部10は、例えば「類似データにOKの画像とNGの画像とが混在。目視確認してください。」といったメッセージと共に、識別データD1の画像と3個の類似データD21の画像とを、提示部17に提示させる。言い換えると、判断結果が誤ラベルの無いことを示す場合、提示部17は、識別データD1と、1以上の類似データD21(学習データD2)との両方を提示する。つまり、動作例3と同様に、誤ラベルの有無について処理システム1で自動判断しにくい場合には、ユーザの目視確認を促す。
 <利点>
 モデルの機械学習を行うためには、教師データ(識別データD1及び学習データD2)に対して、人によるラベリングが発生する。しかし、人がラベルを付ける際には、単純な作業ミス、又は人による基準の曖昧さが発生し得る。特にオブジェクト5の種類によっては、OKラベルを付けるべき画像とNGラベルを付けるべき画像とで、熟練度が低い人が一見するだけだと同じような画像に見える可能性がある。その結果、ラベル付きの教師データには、誤ラベルのデータが含まれている可能性がある。例えば、OKラベルを付けるべき画像にNGラベルが誤ラベルとして付けられたり、NGラベルを付けるべき画像にOKラベルが誤ラベルとして付けられたりする。誤ラベルは、新たに入手された識別データD1にも、学習済みモデルM1の生成に用いた多数の学習データD2にも存在し得る。
 動作例1~5で説明したように、本実施形態に係る処理システム1では、識別データD1と類似する1以上の類似データD21が(自動的に)抽出される。識別データD1と類似データD21とを、ユーザが提示部17を通じて1回でも目視確認するだけで、誤ラベルの有無を特定しやすい。したがって、処理システム1は、誤ラベルの特定に関する作業を支援できる。結果的に、誤ラベルの特定に要する時間の削減を図ることができる。また誤ラベルが解消された教師データを用いて学習を行うので、学習済みモデルM1を用いた推論フェーズの精度も向上する。
 処理システム1には、誤ラベルを自動的に検知する機能、つまり誤ラベルの有無を判断する判断部16が設けられているが、判断部16は、処理システム1の必須の構成要素ではない。ただし、本実施形態のように、判断部16が設けられていることで、誤ラベルの特定に要する時間を更に削減できる。
 また処理システム1には、判断部16による判断結果に関する情報(提示情報D4)を外部に提示する提示部17が設けられているため、ユーザによる目視確認がより容易となる。
 さらに判断部16による判断結果が誤ラベルの有ることを示す場合、提示部17は、識別データD1と、類似データD21とのどちらに誤ラベルが有るかを示す情報を提示する。そのため、ユーザは、どちらのデータに誤ラベルが有るかを容易に目視確認できる。
 特に、判断結果が誤ラベルの無いことを示す場合、提示部17は、識別データD1と、類似データD21の両方を提示する。そのため、ユーザが、識別データD1と類似データD21の両方の目視確認を行いやすくなり、結果的に、実際にはどちらかのデータに誤ラベルが有る場合にその誤ラベルを見つけやすくなる。また誤ラベルとは別の不具合(例えば、学習不足又は過学習等)が有る場合も見つけやすくなる。
 例えばユーザが提示部17を確認すると、類似度が高い(距離が小さい)上位の類似データD21が、識別データD1とあまり類似していない場合には、ユーザは、学習済みモデルM1の学習不足の可能性が高いと判断できる。
 なお、処理システム1の処理部10が、抽出した上位の類似データD21の距離から、学習不足か否かを自動的に判断してもよい。図3で言えば、例えば抽出処理(S7)の後に、抽出した各類似データD21の距離をチェックし、距離が一定値以上であれば、学習不足と判断し、次の判断処理(S8)に進まずに、「学習不足」のメッセージを提示部17から提示して処理を終えてもよい。
 (3)変形例
 上記実施形態は、本開示の様々な実施形態の一つに過ぎない。上記実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、上記実施形態に係る処理システム1と同様の機能は、処理方法、コンピュータプログラム、又はコンピュータプログラムを記録した非一時的記録媒体等で具現化されてもよい。
 以下、上記実施形態の変形例を列挙する。以下に説明する変形例は、適宜組み合わせて適用可能である。以下では、上記実施形態を「基本例」と呼ぶこともある。
 本開示における処理システム1は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における処理システム1としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC)又は大規模集積回路(LSI)を含む1ないし複数の電子回路で構成される。ここでいうIC又はLSI等の集積回路は、集積の度合いによって呼び方が異なっており、システムLSI、VLSI(Very Large Scale Integration)、又はULSI(Ultra Large Scale Integration)と呼ばれる集積回路を含む。さらに、LSIの製造後にプログラムされる、FPGA(Field-Programmable Gate Array)、又はLSI内部の接合関係の再構成若しくはLSI内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、1以上のプロセッサ及び1以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む1ないし複数の電子回路で構成される。
 また、処理システム1における複数の機能が、1つのハウジング内に集約されていることは必須の構成ではない。例えば、処理システム1の構成要素は、複数のハウジングに分散して設けられていてもよい。
 反対に、処理システム1における複数の機能が、1つのハウジング内に集約されてもよい。さらに、処理システム1の少なくとも一部の機能、例えば、処理システム1の一部の機能がクラウド(クラウドコンピューティング)等によって実現されてもよい。
 基本例では、識別データD1は、再学習するために新たに入手された教師データである。しかし、識別データD1は、学習済みモデルM1の生成に使用した学習データD2でもよい。例えば学習済みモデルM1を生成した後に、学習済みモデルM1の精度が100%とは言えない場合がある。そのような場合には、学習済みモデルM1の正確性を確認、評価するために、学習済みモデルM1の生成に用いた学習データD2の一部、又は全部を、識別データD1として、処理システム1に入力してもよい。
 識別データD1は、モデルの機械学習を行う際に用意される複数の教師データの一部であってもよい。つまり、モデルを学習する際に用意される複数の教師データは、複数の学習データD2と識別データD1とに分割される。この場合、処理システム1は、複数の教師データを分割して学習済みモデルM1を評価する交差検証を行うと共に、識別データD1に付与されたラベル、及び複数の学習データD2の各々に付与されたラベルについて誤ラベルの有無を検知することが可能である。
 また、処理システム1は、複数の教師データに対して学習データD2と識別データD1との分割を複数回行い、k-分割交差検証を行い、さらに、識別データD1に付与されたラベル、及び複数の学習データD2の各々に付与されたラベルについて誤ラベルの有無を検知してもよい。
 基本例では、誤ラベルが識別データD1(又は類似データD21)に有ると判断された場合であっても、提示部17は、識別データD1と類似データD21との両方を提示する。しかし、提示部17は、誤ラベルが有ると判断されたデータのみを提示してもよい。
 撮像装置4は、ラインセンサカメラに限定されず、エリアセンサカメラを含んでもよい。
 基本例では、教師データ(識別データD1及び学習データD2)は、画像データにラベルが付与されたデータである。しかし、教師データは、画像データに限定されず、テキストデータ、又は音声データにラベルが付与されたデータでもよい。つまり、学習済みモデルM1は、画像の識別(画像認識)に限定されず、例えばテキストの識別(テキスト認識)、又は音声の識別(音声認識)に適用されてもよい。
 基本例では、学習システム2で生成される学習済みモデルM1は、ディープラーニングにより生成されるモデルである。ただし、学習済みモデルM1は、ディープラーニングに限定されない。学習済みモデルM1は、いかなるタイプの人工知能又はシステムとして実装されてもよい。
 基本例では、機械学習のアルゴリズムは、ニューラルネットワーク(ディープラーニングを含む)である。ただし、機械学習のアルゴリズムは、ニューラルネットワークに限定されず、他の教師あり学習のアルゴリズムであってもよい。機械学習のアルゴリズムは、例えば、線形回帰(Linear Regression)、ロジスティック回帰(Logistic Regression)、サポートベクターマシン(Support Vector Machine:SVM)、決定木(Decision Tree)、ランダムフォレスト(Random Forest)、勾配ブースティング(Gradient Boosting)、ナイーブベイズ(Naive Bayes)分類器、又はk近傍法(k-Nearest Neighbors:k-NN)であってもよい。
 (4)まとめ
 以上説明したように、第1の態様に係る処理システム(1)は、第1取得部(11)と、第2取得部(12)と、第3取得部(13)と、識別部(14)と、抽出部(15)と、を備える。第1取得部(11)は、ラベルが付与された複数の学習データ(D2)を取得する。第2取得部(12)は、複数の学習データ(D2)に基づき生成された学習済みモデル(M1)を取得する。第3取得部(13)は、ラベルが付与された識別データ(D1)を取得する。識別部(14)は、学習済みモデル(M1)を用いて識別データ(D1)を識別する。抽出部(15)は、識別データ(D1)と複数の学習データ(D2)の各々との類似度に関する指標に基づき、複数の学習データ(D2)から、識別データ(D1)と類似する1以上の学習データ(類似データD21)を抽出する。上記指標は、学習済みモデル(M1)で適用される指標である。
 この態様によれば、識別データ(D1)と類似する1以上の学習データ(D2)が抽出されるので、識別データ(D1)と、識別データ(D1)と類似する1以上の学習データ(類似データD21)とを(例えば1回)確認するだけで、誤ラベルの有無を特定し得る。結果的に、誤ラベルの特定に要する時間の削減を図ることができる。
 第2の態様に係る処理システム(1)は、第1の態様において、識別データ(D1)、及び1以上の学習データ(類似データD21)に基づいて、誤ラベルの有無を判断する判断部(16)を更に備える。
 この態様によれば、誤ラベルの有無が自動的に判断されるので、誤ラベルの特定に要する時間を更に削減できる。
 第3の態様に係る処理システム(1)は、第2の態様において、判断部(16)による判断結果に関する情報を外部に提示する提示部(17)を更に備える。
 この態様によれば、判断部(16)による判断結果に関する情報が提示されるので、ユーザによる目視確認が容易となる。
 第4の態様に係る処理システム(1)に関して、第3の態様において、判断結果が誤ラベルの有ることを示す場合、提示部(17)は、識別データ(D1)と、1以上の学習データ(類似データD21)とのいずれに誤ラベルが有るかを示す情報を提示する。
 この態様によれば、識別データ(D1)と1以上の学習データ(類似データD21)とのどちらに誤ラベルが有るかを容易に目視確認できる。
 第5の態様に係る処理システム(1)に関して、第3又は第4の態様において、判断結果が誤ラベルの無いことを示す場合、提示部(17)は、識別データ(D1)と、1以上の学習データ(類似データD21)との両方を提示する。
 この態様によれば、ユーザが識別データ(D1)と1以上の学習データ(類似データD21)との両方の目視確認を行いやすくなり、結果的に、実際にはどちらかのデータに誤ラベルが有る場合にその誤ラベルを見つけやすくなる。また誤ラベルとは別の不具合が有る場合も見つけやすくなる。
 第6の態様に係る処理システム(1)に関して、第2~第5の態様のいずれか1つにおいて、判断部(16)は、識別部(14)による識別データ(D1)の識別結果と識別データ(D1)に付与されたラベルとが不一致の場合に、誤ラベルの有無の判断を実行する。
 この態様によれば、処理負荷の低減を図れる。また誤ラベルの特定に要する時間を更に削減できる。
 第7の態様に係る処理システム(1)に関して、第2~第6の態様のいずれか1つにおいて、判断部(16)は、識別データ(D1)に付与されたラベルと1以上の学習データ(類似データD21)に付与されたラベル、及び、識別データ(D1)と1以上の学習データ(類似データD21)との類似度に関する指標、の少なくとも一方に基づき、誤ラベルの有無を判断する。
 この態様によれば、誤ラベルの判断に関する信頼性が向上する。
 第8の態様に係る処理システム(1)に関して、第7の態様において、判断部(16)は、識別データ(D1)に付与されたラベルと1以上の学習データ(類似データD21)に付与されたラベルとが不一致な割合に基づき、誤ラベルの有無を判断する。
 この態様によれば、誤ラベルの判断に関する信頼性が容易に向上する。
 第9の態様に係る処理システム(1)に関して、第7の態様において、判断部(16)は、識別データ(D1)に付与されたラベルと1以上の学習データ(類似データD21)に付与されたラベル、及び、1以上の学習データ(類似データD21)の類似度に関する指標の両方に基づき、誤ラベルの有無を判断する。
 この態様によれば、誤ラベルの判断に関する信頼性が更に向上する。
 第10の態様に係る処理システム(1)に関して、第9の態様において、抽出部(15)は、複数の学習データ(D2)から、1以上の学習データ(類似データD21)として、2以上の学習データ(類似データD21)を抽出する。判断部(16)は、2以上の学習データ(類似データD21)から、類似度に関する指標が所定条件を満たすほどに識別データ(D1)に類似する特定の学習データ(D22)を特定する。判断部(16)は、特定の学習データ(D22)に付与されたラベルが識別データ(D1)に付与されたラベルと不一致であり、かつ、2以上の学習データ(類似データD21)における特定の学習データ(D22)以外の学習データ(D23)に付与されたラベルが識別データ(D1)に付与されたラベルと一致する場合、識別データ(D1)よりも特定の学習データ(D22)の方に誤ラベルが有る可能性が高いと判断する。
 この態様によれば、誤ラベルの判断に関する信頼性が更に向上する。
 第11の態様に係る処理システム(1)に関して、第9の態様において、抽出部(15)は、複数の学習データ(D2)から、1以上の学習データ(類似データD21)として、2以上の学習データ(類似データD21)を抽出する。判断部(16)は、2以上の学習データ(類似データD21)から、類似度に関する指標が所定条件を満たすほどに識別データ(D1)に類似する特定の学習データ(D22)を特定する。判断部(16)は、特定の学習データ(D22)に付与されたラベルが識別データ(D1)に付与されたラベルと不一致であり、かつ、2以上の学習データ(類似データD21)における特定の学習データ(D22)以外の学習データ(D23)に付与されたラベルが特定の学習データ(D22)に付与されたラベルと一致する場合、特定の学習データ(D22)よりも識別データ(D1)の方に誤ラベルが有る可能性が高いと判断する。
 この態様によれば、誤ラベルの判断に関する信頼性が更に向上する。
 第12の態様に係る処理システム(1)に関して、第1~第11の態様のいずれか1つにおいて、学習済みモデル(M1)は、深層学習を適用して複数の学習データ(D2)に基づき生成されたモデルである。
 この態様によれば、学習済みモデル(M1)の信頼性、及び誤ラベルの判断に関する信頼性が更に向上する。
 第13の態様に係る学習処理システム(100)は、第1~第12の態様のいずれか1つにおける処理システム(1)と、学習済みモデル(M1)を生成する学習システム(2)と、を備える。
 この態様によれば、誤ラベルの特定に要する時間の削減を図ることが可能な学習処理システム(100)を提供できる。
 第14の態様に係る処理方法は、第1取得ステップと、第2取得ステップと、第3取得ステップと、識別ステップと、抽出ステップと、を含む。第1取得ステップでは、ラベルが付与された複数の学習データ(D2)を取得する。第2取得ステップでは、複数の学習データ(D2)に基づき生成された学習済みモデル(M1)を取得する。第3取得ステップでは、ラベルが付与された識別データ(D1)を取得する。識別ステップでは、学習済みモデル(M1)を用いて識別データ(D1)を識別する。抽出ステップでは、学習済みモデル(M1)で適用される識別データ(D1)と複数の学習データ(D2)の各々との類似度に関する指標に基づき、複数の学習データ(D2)から、識別データ(D1)と類似する1以上の学習データ(類似データD21)を抽出する。
 この態様によれば、誤ラベルの特定に要する時間の削減を図ることが可能な処理方法を提供できる。
 第15の態様に係るプログラムは、1以上のプロセッサに、第14の態様における処理方法を実行させるためのプログラムである。
 この態様によれば、誤ラベルの特定に要する時間の削減を図ることが可能な機能を提供できる。
 第16の態様に係る処理システム(1)に関して、第1~第12の態様のいずれか1つにおいて、抽出部(15)は、識別部(14)による識別データ(D1)の識別結果と、識別データ(D1)に付与されたラベルとが不一致の場合に、複数の学習データ(D2)から1以上の学習データ(類似データD21)を抽出する。
 第2~12の態様に係る構成については、処理システム(1)に必須の構成ではなく、適宜省略可能である。同様に、第16の態様に係る構成についても、処理システム(1)に必須の構成ではなく、適宜省略可能である。
 100 学習処理システム
 1 処理システム
 11 第1取得部
 12 第2取得部
 13 第3取得部
 14 識別部
 15 抽出部
 16 判断部
 17 提示部
 2 学習システム
 D1 識別データ
 D2 学習データ
 D21 1以上の類似データ(1以上の学習データ)
 D22 特定の学習データ
 M1 学習済みモデル

Claims (15)

  1.  ラベルが付与された複数の学習データを取得する第1取得部と、
     前記複数の学習データに基づき生成された学習済みモデルを取得する第2取得部と、
     ラベルが付与された識別データを取得する第3取得部と、
     前記学習済みモデルを用いて前記識別データを識別する識別部と、
     前記学習済みモデルで適用される前記識別データと前記複数の学習データの各々との類似度に関する指標に基づき、前記複数の学習データから、前記識別データと類似する1以上の学習データを抽出する抽出部と、
    を備える、
     処理システム。
  2.  前記識別データ、及び前記1以上の学習データに基づいて、誤ラベルの有無を判断する判断部を更に備える、
     請求項1に記載の処理システム。
  3.  前記判断部による判断結果に関する情報を外部に提示する提示部を更に備える、
     請求項2に記載の処理システム。
  4.  前記判断結果が前記誤ラベルの有ることを示す場合、前記提示部は、前記識別データと、前記1以上の学習データとのいずれに前記誤ラベルが有るかを示す情報を提示する、
     請求項3に記載の処理システム。
  5.  前記判断結果が前記誤ラベルの無いことを示す場合、前記提示部は、前記識別データと、前記1以上の学習データとの両方を提示する、
     請求項3又は4に記載の処理システム。
  6.  前記判断部は、前記識別部による前記識別データの識別結果と、前記識別データに付与された前記ラベルとが不一致の場合に、前記誤ラベルの有無の判断を実行する、
     請求項2~5のいずれか1項に記載の処理システム。
  7.  前記判断部は、前記識別データに付与された前記ラベルと前記1以上の学習データに付与された前記ラベル、及び、前記識別データと前記1以上の学習データとの前記類似度に関する指標、の少なくとも一方に基づき、前記誤ラベルの有無を判断する、
     請求項2~6のいずれか1項に記載の処理システム。
  8.  前記判断部は、前記識別データに付与された前記ラベルと前記1以上の学習データに付与された前記ラベルとが不一致な割合に基づき、前記誤ラベルの有無を判断する、
     請求項7に記載の処理システム。
  9.  前記判断部は、前記識別データに付与された前記ラベルと前記1以上の学習データに付与された前記ラベル、及び、前記1以上の学習データの前記類似度に関する指標の両方に基づき、前記誤ラベルの有無を判断する、
     請求項7に記載の処理システム。
  10.  前記抽出部は、前記複数の学習データから、前記1以上の学習データとして、2以上の学習データを抽出し、
     前記判断部は、
      前記2以上の学習データから、前記類似度に関する指標が所定条件を満たすほどに前記識別データに類似する特定の学習データを特定し、
      前記特定の学習データに付与された前記ラベルが前記識別データに付与された前記ラベルと不一致であり、かつ、前記2以上の学習データにおける前記特定の学習データ以外の学習データに付与された前記ラベルが前記識別データに付与された前記ラベルと一致する場合、前記識別データよりも前記特定の学習データの方に前記誤ラベルが有る可能性が高いと判断する、
     請求項9に記載の処理システム。
  11.  前記抽出部は、前記複数の学習データから、前記1以上の学習データとして、2以上の学習データを抽出し、
     前記判断部は、
      前記2以上の学習データから、前記類似度に関する指標が所定条件を満たすほどに前記識別データに類似する特定の学習データを特定し、
      前記特定の学習データに付与された前記ラベルが前記識別データに付与された前記ラベルと不一致であり、かつ、前記2以上の学習データにおける前記特定の学習データ以外の学習データに付与された前記ラベルが前記特定の学習データに付与された前記ラベルと一致する場合、前記特定の学習データよりも前記識別データの方に前記誤ラベルが有る可能性が高いと判断する、
     請求項9に記載の処理システム。
  12.  前記学習済みモデルは、深層学習を適用して前記複数の学習データに基づき生成されたモデルである、
     請求項1~11のいずれか1項に記載の処理システム。
  13.  請求項1~12のいずれか1項に記載の処理システムと、
     前記学習済みモデルを生成する学習システムと、
    を備える、
     学習処理システム。
  14.  ラベルが付与された複数の学習データを取得する第1取得ステップと、
     前記複数の学習データに基づき生成された学習済みモデルを取得する第2取得ステップと、
     ラベルが付与された識別データを取得する第3取得ステップと、
     前記学習済みモデルを用いて前記識別データを識別する識別ステップと、
     前記学習済みモデルで適用される前記識別データと前記複数の学習データの各々との類似度に関する指標に基づき、前記複数の学習データから、前記識別データと類似する1以上の学習データを抽出する抽出ステップと、
    を含む、
     処理方法。
  15.  1以上のプロセッサに、請求項14に記載の処理方法を実行させるためのプログラム。
PCT/JP2021/038140 2020-12-07 2021-10-14 処理システム、学習処理システム、処理方法、及びプログラム WO2022123905A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022568080A JP7496567B2 (ja) 2020-12-07 2021-10-14 処理システム、学習処理システム、処理方法、及びプログラム
CN202180079976.0A CN116635876A (zh) 2020-12-07 2021-10-14 处理系统、学习处理系统、处理方法和程序
US18/255,034 US20240054397A1 (en) 2020-12-07 2021-10-14 Processing system, learning processing system, processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-202864 2020-12-07
JP2020202864 2020-12-07

Publications (1)

Publication Number Publication Date
WO2022123905A1 true WO2022123905A1 (ja) 2022-06-16

Family

ID=81973533

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/038140 WO2022123905A1 (ja) 2020-12-07 2021-10-14 処理システム、学習処理システム、処理方法、及びプログラム

Country Status (3)

Country Link
US (1) US20240054397A1 (ja)
CN (1) CN116635876A (ja)
WO (1) WO2022123905A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282686A (ja) * 2008-05-21 2009-12-03 Toshiba Corp 分類モデル学習装置および分類モデル学習方法
JP2018106662A (ja) * 2016-12-22 2018-07-05 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP2020030692A (ja) * 2018-08-23 2020-02-27 ファナック株式会社 判別装置及び機械学習方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282686A (ja) * 2008-05-21 2009-12-03 Toshiba Corp 分類モデル学習装置および分類モデル学習方法
JP2018106662A (ja) * 2016-12-22 2018-07-05 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP2020030692A (ja) * 2018-08-23 2020-02-27 ファナック株式会社 判別装置及び機械学習方法

Also Published As

Publication number Publication date
CN116635876A (zh) 2023-08-22
US20240054397A1 (en) 2024-02-15
JPWO2022123905A1 (ja) 2022-06-16

Similar Documents

Publication Publication Date Title
CN108256479B (zh) 人脸跟踪方法和装置
US11392792B2 (en) Method and apparatus for generating vehicle damage information
US10853937B2 (en) Unsupervised image-based anomaly detection using multi-scale context-dependent deep autoencoding gaussian mixture model
US20210150264A1 (en) Semi-supervised iterative keypoint and viewpoint invariant feature learning for visual recognition
CN108830329B (zh) 图片处理方法和装置
CN109285105B (zh) 水印检测方法、装置、计算机设备和存储介质
US11182899B2 (en) Systems and methods for processing electronic images to detect contamination
CN111860565A (zh) 用于训练用于测量技术中的质量检查的分类器的工作流程
US10824915B2 (en) Artificial intelligence system for inspecting image reliability
CN113361593B (zh) 生成图像分类模型的方法、路侧设备及云控平台
US20230169554A1 (en) System and method for automated electronic catalogue management and electronic image quality assessment
KR20240001241A (ko) 객체의 머신 학습 분석에 기반한 이미지 기반 이상 검출
WO2022160040A1 (en) System and method for manufacturing quality control using automated visual inspection
US11423262B2 (en) Automatically filtering out objects based on user preferences
WO2020097461A1 (en) Convolutional neural networks with reduced attention overlap
CN113128448B (zh) 基于肢体识别的视频匹配方法、装置、设备及存储介质
CN113128565B (zh) 面向预训练标注数据不可知的图像自动标注系统和装置
WO2022123905A1 (ja) 処理システム、学習処理システム、処理方法、及びプログラム
JP7496567B2 (ja) 処理システム、学習処理システム、処理方法、及びプログラム
EP4105893A1 (en) Dynamic artifical intelligence camera model update
CN113867608A (zh) 一种业务处理模型的组建方法与装置
US20230230352A1 (en) Methods and systems for contextual smart computer vision with action(s)
CN114118449B (zh) 基于偏标记学习模型的图片标签识别方法、介质及设备
US20240005099A1 (en) Integrated synthetic labeling optimization for machine learning
US11545253B2 (en) Systems and methods to process electronic images to categorize intra-slide specimen tissue type

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022568080

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 202180079976.0

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 18255034

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21903009

Country of ref document: EP

Kind code of ref document: A1