Training Semi-Supervised Neural Networks for Uncertainty-Guided Image Classification
The semi-supervised learning method using soft-labeled images with uncertainty values addresses the challenge of labeled data scarcity in medical imaging, enhancing neural network training efficiency and accuracy.
Patent Information
- Application Number
- JP2022537678
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-01-09
- Filing Date
- 2021-01-04
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2041-01-04
AI Technical Summary
The scarcity of labeled data in medical imaging, particularly for tasks like biomedical anatomical segmentation using convolutional neural networks, makes supervised learning costly and time-consuming, necessitating more efficient semi-supervised learning methods.
A semi-supervised learning method using a teacher neural network to generate soft-labeled images with uncertainty values, which are then used to train a student neural network alongside labeled images, enhancing the training dataset with unlabeled data.
This approach improves the training efficiency and accuracy of neural networks for image classification by leveraging both labeled and unlabeled data, reducing the reliance on expert annotation and lowering costs.
Smart Images

Figure 0007597469000005 
Figure 0007597469000006 
Figure 0007597469000007
Abstract
Description
[Technical field]
[0001] The present invention relates generally to image detection using convolutional neural networks, and more specifically to training uncertainty-guided semi-supervised neural networks for image classification. [Background technology]
[0002] Convolutional Neural Networks are multi-layered deep learning algorithms. Deep learning is a type of machine learning that identifies features and their classification. Classification refers to labeling each pixel in a set of pixels of an image with one of a set of classifications that identify the feature. Deep learning algorithms are well suited for example to make diagnoses based on medical imaging, which requires identifying and classifying features within an image. Supervised learning refers to a neural network that is trained on a training dataset that contains a ground truth, meaning that the exact output corresponding to the input is known. Unsupervised learning refers to training a neural network with only the input.
[0003] Anatomical segmentation of biomedical images, such as optical coherence tomography (OCT) retinal scans, is of great therapeutic importance, especially for disease diagnosis, progression analysis, and treatment planning. For example, progressive thinning of the peripapillary retinal nerve fiber layer (cpRNFL) thickness measured by OCT can be used to predict vision loss in patients with glaucoma.
[0004] Methods based on convolutional neural networks (CNNs) have achieved remarkable performance gains in the segmentation of medical and natural images. For example, such networks have been used for the segmentation of retinal structures in fundus and OCT images. Such fully supervised segmentation algorithms require a huge number of annotated images to achieve reasonable robustness and accuracy. However, requiring pixel-wise ground truths can be time-consuming and cost-prohibitive in the medical imaging domain, where only experts can provide reliable annotations.
[0005] The scarcity of labeled data necessitates the need for effective semi-supervised learning methods that require limited supervision. This disclosure describes a novel semi-supervised learning method to address this problem by working with vast amounts of readily available unlabeled data together with limited labeled data.
[0006] Therefore, there is a need in the art for addressing the above-mentioned problems. Summary of the Invention
[0007] Viewed from one aspect, the invention provides a computer-implemented method including: training a teacher neural network with labeled images to obtain a trained teacher neural network, wherein each pixel of each of the labeled images is assigned a label indicative of one of a set of classifications; providing a set of unlabeled images to the trained teacher neural network to generate a set of soft-labeled images, wherein each pixel of each of the soft-labeled images is assigned to one of the set of classifications and a soft label indicative of an uncertainty value associated with the soft label; training a student neural network with the labeled images and the soft-labeled set to obtain a trained student neural network; and using the trained student neural network to obtain student-labeled images from the unlabeled images.
[0008] Viewed from a further aspect, the invention provides a system comprising: a memory having computer readable instructions; and one or more processors for executing the computer readable instructions, the computer readable instructions controlling the one or more processors to perform operations including: training a teacher neural network using labeled images to obtain a trained teacher neural network, wherein each pixel of each labeled image is assigned a label indicative of one of a set of classifications; providing a set of unlabeled images to the trained teacher neural network to generate a set of soft-labeled images, wherein each pixel of each soft-labeled image is assigned a soft label indicative of one of the set of classifications and an uncertainty value associated with the soft label; training a student neural network on a subset of the labeled images and the soft-labeled set to obtain a trained student neural network; and using the trained student neural network to obtain student-labeled images from the unlabeled images.
[0009] Viewed from a further aspect, the invention provides a computer program product including a computer readable storage medium having program instructions embodied therein, the program instructions executable by a processor to cause the processor to perform operations including: training a teacher neural network using labeled images to obtain a trained teacher neural network, wherein each pixel of each of the labeled images is assigned a label indicative of one of a set of classifications; providing a set of unlabeled images to the trained teacher neural network to generate a set of soft-labeled images, wherein each pixel of each of the soft-labeled images is assigned to one of the set of classifications and the soft label indicative of an uncertainty value associated with a soft label; training a student neural network on a subset of the labeled images and the soft-labeled set to obtain a trained student neural network; and using the trained student neural network to obtain student-labeled images from the unlabeled images.
[0010] Viewed from a further aspect, the present invention provides a computer program product for a neural network for image classification, said computer program product comprising a computer readable recording medium readable by a processing circuit and storing instructions for execution by said processing circuit to perform steps of the present invention.
[0011] Viewed from a further aspect, the present invention provides a computer program stored on a computer readable medium and loadable into an internal memory of a digital computer, the computer program comprising software code portions for performing the steps of the present invention when said program is run on the computer.
[0012] An embodiment of the present invention is directed to training an uncertainty-guided semi-supervised neural network. A non-limiting example of a computer-implemented method includes training a teacher neural network using labeled images to obtain a trained teacher neural network, where each pixel of each of the labeled images is assigned a label indicative of one of a set of classifications. The method also includes providing a set of unlabeled images to the trained teacher neural network to generate a set of soft-labeled images, where each pixel of each of the soft-labeled images is assigned a soft label indicative of one of the set of classifications and an uncertainty value associated with the soft label, and training a student neural network with a subset of the labeled images and the soft-labeled set to obtain a trained student neural network. Student-labeled images are obtained from the unlabeled images using the trained student neural network.
[0013] Other embodiments of the present invention implement features of the above-described methods in computer systems and computer program products.
[0014] Additional technical features and advantages are realized through the techniques of the present invention. Embodiments and aspects of the invention are described in detail herein and are considered part of the claimed subject matter. For a better understanding, reference is made to the detailed description and drawings.
[0015] The features of the exclusive rights described herein are particularly pointed out and individually claimed in the claims at the conclusion of the specification. The above-discussed and other features of embodiments of the present invention will become apparent from the following detailed description taken in conjunction with the accompanying drawings. [Brief description of the drawings]
[0016] [Figure 1] FIG. 1 illustrates a process flow of a method for performing uncertainty-guided semi-supervised neural network training for image classification in accordance with one or more embodiments of the present invention. [Diagram 2] FIG. 2 is a detailed description of the process of training a student neural network to perform uncertainty-guided semi-supervised neural network training for image classification in accordance with one or more embodiments of the present invention. [Diagram 3] FIG. 3 shows a block diagram of a processing system for implementing uncertainty-guided semi-supervised neural network training for image classification in accordance with one or more embodiments of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0017] The diagrams illustrated herein are exemplary. Many variations to the diagrams, or to the operations described within the diagrams, can exist without departing from the spirit of the invention. For example, operations can be performed in a different order, and operations can be added, deleted, or modified. Also, the term "coupled" and variations thereof describe having a communication path between two elements, and do not imply a direct connection between elements with no intervening elements / connections between them. All of these variations are considered part of this specification.
[0018] As mentioned above, deep learning neural networks can be used to identify features in images and classify the features. These neural networks can be trained to perform, for example, medical diagnoses based on classifying features in medical images. That is, features in medical images can be identified and labeled with one of a set of classifications. Supervised learning involves training the neural network using images that are already labeled and can produce better results. However, obtaining a sufficiently large training dataset for supervised learning can be time consuming and costly. In medical diagnostic applications, for example, only an expert can provide the pixel-wise ground truth of the image that is needed for supervised learning.
[0019] In a typical supervised learning scenario, a neural network is provided with an input set of already-classified images to generate a trained neural network. The larger the input set, the more accurate the resulting trained neural network is likely to be. However, as also mentioned above, obtaining a large set of already-classified images can be challenging. In medical diagnostic applications, for example, only an expert can determine the labels used to classify the input images.
[0020] One or more embodiments of the present invention relate to training an uncertainty-guided semi-supervised neural network for image classification. As will be described in more detail subsequently herein, the teacher neural network is supervised using an available set of classified images. The resulting trained teacher neural network then classifies additional images to provide soft labels. Because unclassified images are more easily used than classified images, the set of soft-labeled images that can be generated from unclassified images using the trained teacher neural network can be larger than the set of classified images. The classified and soft-labeled images are then used to train a student neural network. Thus, the student neural network benefits from the use of both classified and soft-labeled images.
[0021] According to an aspect of the invention, the student neural network benefits from an uncertainty map that indicates the confidence level associated with each label generated by the trained teacher neural network. Although optical coherence tomography (OCT) retinal scans are specifically discussed for purposes of example, one or more embodiments of the invention detailed herein apply to any biomedical or other image having features that can be classified into a particular category as well. Other exemplary images include magnetic resonance images (MRIs), and other exemplary diagnoses relate to lung nodules and retinal blood vessels. In the exemplary case of images obtained from OCT retinal scans, OCT scans measure the thickness of the peripapillary retinal nerve fiber layer (cpRNFL), and thus indicating thinning of the cpRNFL can be used to predict vision loss in patients with glaucoma.
[0022] FIG. 1 illustrates a process flow for a method 100 for performing uncertainty-guided semi-supervised neural network training for image classification according to one or more embodiments of the present invention. At block 110, a labeled image D l As mentioned above, each pixel in each labeled image is labeled according to the classification applied to the image. For example, a labeled image D of an OCT scan l For each pixel in each OCT scan, it is possible to label the pixel according to one of the eight anatomical features of the eye. The trained neural network then uses Bayesian deep learning to learn the labeled image D in block 120. l The result of the training in block 120 is a trained supervised neural network that can receive as input an unlabeled image and output soft labels for each pixel of that image in addition to the uncertainty map. The uncertainty map indicates the uncertainty of each soft label. The labels output by the trained supervised neural network are the image D, which is annotated by an expert and thus represents the ground truth. l For illustrative purposes, we refer to them as soft labels to distinguish them from the output of a teacher neural network that was trained from labels in
[0023] The processes of blocks 130-160 are then performed iteratively to obtain a trained student neural network in block 170. These processes are summarized here and described in further detail below. The number of iterations can be based on the convergence of a validation loss, which is determined in each iteration using a unique validation training set. In block 130, an unlabeled image D u A subset of x ^ u is obtained.^ u The number of unlabeled images in D can be the same for each iteration. In block 140, the soft-labeled images and uncertainty estimates are generated for the unlabeled images D by using a trained teacher neural network. u A subset of x ^ u is output in block 150. That is, for the subset x ^ u For each unlabeled image in, the trained teacher neural network provides a soft label for each pixel along with an indication of the uncertainty of each soft label. Thus, a vector of soft labels z and an estimate vector of uncertainty (i.e., an uncertainty map u) are stored in the subset x in block 150. ^ u For each image in the uncertainty map, u, a higher value may describe pixels with soft labels that are more likely to be inaccurate. These soft labels may then be correspondingly down-weighted in the training of the student neural network in block 160. At each iteration, a subset x with soft labels is selected. ^ u and the subset x of labeled images obtained in block 110 ^ l is used to train a student neural network in block 160. The process of training the student neural network in block 160 is described in more detail with reference to FIG.
[0024] 2 details the process of training a student neural network at block 160 (FIG. 1) by performing uncertainty-guided semi-supervised training of a student neural network for image classification in accordance with one or more embodiments of the present invention. Uncertainty-guided semi-supervised training refers to using the soft labels z and the uncertainty map u provided by the teacher neural network trained at block 150. As previously mentioned, the uncertainty map u is a representation of the uncertainty map u for the subset x ^ u It indicates the reliability of the soft labels generated by the trained teacher neural network for each pixel of the image and thus facilitates the weighting of the soft labels in the training of the student neural network.
[0025] Obtaining a normalized belief map ω in block 210 refers to transforming the uncertainty map u output by the trained teacher neural network.
[0026]
number
[0027] A positive scalar hyper-parameter α controls the information flow from the trained teacher neural network to the student neural network, and more specifically the use of the soft labels z. That is, if α is set to 0, all of the soft labels z will be weighted equally (i.e., ω=1), but for α>0, a probabilistic selection of the more reliable soft labels is made. The normalized confidence map ω∈[0,1] provides the pixel-wise quality of the soft labels z, so that higher uncertainty values produce lower quality scores (and lower probability that the soft labels will be used in training), and lower uncertainty values produce higher scores (and higher probability that the soft labels will be used in training). The value of α can be determined empirically. ^ u Let z be the soft labels of a subset of labeled images x ^ l The additional use of expert-annotated labels increases the training dataset used in training the student neural network. Additionally, weighting of the soft labels z based on the uncertainty map u obtained from the trained teacher neural network further improves the training of the student neural network.
[0028] In block 220, the output z t c Using the weighted soft label, we obtain the standard loss L lab is a subset of labeled images x ^ l is used to describe the loss associated with a subset x ^ u Related to Unlabelled Loss L unlabis formulated as the confidence-weighted cross entropy by:
[0029]
number
[0030] In the exemplary case of an image that is an OCT scan, the number of classes is 8 (i.e., C=8). c describes the pixel region of the c-th class in the soft label vector z, and ξ c is given by:
[0031]
number
[0032] According to Equation 3, if the effective number of pixels per class is ≦P, then ξ c = 0. This means that Z c It provides stabilization of the unlabeled loss when many of the pixels in are uncertain. The value of P is set empirically (e.g., P=50 in the exemplary case of images from OCT scans). The semi-supervised loss L semisup But, Unlabeled Loss L unlab and Labelled Ross L lab This is calculated in block 230 as the sum of:
[0033]
number
[0034] Semi-supervised Ross L semisup is used to update the parameters of the student neural network as part of the training process for each iteration in block 240.
[0035] Obtaining the output from the student neural network at block 220 and computing the semi-supervised loss at block 230 may be repeated for a particular training data set to determine whether further iterations of blocks 130-160 (FIG. 1) are necessary. A particular training data set, or validation images, includes unlabeled images and corresponding labeled images. The semi-supervised loss L described above may be semisup is the image subset x ^ u and x ^ l The semi-supervised loss L computed in block 230 using the validation image is used to update the parameters of the student neural network in block 240. semisup is used to determine convergence. semisup converges (e.g., the semi-supervised loss L from one iteration to the next). semisup is less than or equal to a threshold.) The iterations can be stopped. The iterations of the process of blocks 130-160 can be performed until convergence is achieved or a set number of iterations (e.g., 40,000) is reached.
[0036] It is understood that one or more embodiments of the present invention may be implemented in combination with any other type of computing environment now known or later developed. FIG. 3 is a block diagram of a processing system 300 for implementing the techniques described herein. In the embodiment shown in FIG. 3, the processing system 300 includes one or more central processing units (processors) 21a, 21b, 21c, etc. (collectively or generally referred to as processor(s) 21, or processing device(s), or both). According to one or more embodiments of the present invention, each processor 21 may include a reduced instruction set computer (RISC) microprocessor. The processors 21 are coupled to a system memory (e.g., random access memory (RAM) 24) and various other components. A read-only memory (ROM) 22 is coupled to a system bus 33 and may include a basic input / output system (BIOS), which controls certain basic functions of the processing system 300.
[0037] Also shown are an input / output (I / O) adapter 27 and a communications adapter 26 coupled to the system bus 33. The I / O adapter 27 may be a small computer system interface (SCSI) that communicates with a hard disk 23, or a tape storage drive 25, or both. The I / O adapter 27, the hard disk 23, and the tape storage device 25 are collectively referred to herein as mass storage 34. An operating system 40 for execution on the processing system 300 may be stored within the mass storage 34. The RAM 24, the ROM 22, and the mass storage 34 are examples of memory 19 of the processing system 300. The network adapter 26 interconnects the system bus 33 to an external network 36 enabling the processing system 300 to communicate with other such systems.
[0038] A display (e.g., a display monitor) 35 is connected to the system bus 33 by a display adapter 32, which includes a graphics adapter and a video controller to improve performance of graphics-intensive applications. According to one or more embodiments of the present invention, the adapters 26, 27, or 32, or a combination thereof, can be connected to one or more I / O buses that are connected to the system bus 33 through an intermediate bus bridge (not shown). Preferred I / O buses for connecting peripheral devices such as hard disk controllers, network adapters, and graphics adapters typically include a common protocol such as Peripheral Component Interconnect (PCI). Additional input / output devices are shown connected to the system bus 33 through a user interface adapter 28 and a display adapter 32. A keyboard 29, a mouse 30, and speakers 31 are interconnected to the system bus 33 through a user interface adapter 28, which can include, for example, a super I / O chip that integrates multiple device adapters into a single integrated circuit.
[0039] According to one or more embodiments of the present invention, the processing system 300 includes a graphics processing unit 37. The graphics processing unit 37 is a dedicated electronic circuit designed to manipulate and modify memory to accelerate the generation of images into a frame buffer intended for output to a display. In general, the graphics processing unit 37 has a highly parallel structure that makes it extremely efficient at handling computer graphics and image processing, and more effective than a general purpose CPU for algorithms that process large blocks of data in parallel.
[0040] Thus, as configured herein, processing system 300 includes processing capability in the form of processor 21, storage capabilities including system memory (e.g., RAM 24) and mass storage 34, input means such as keyboard 29 and mouse 30, and output capabilities including speaker 31 and display 35. In accordance with one or more embodiments of the present invention, portions of the system memory (e.g., RAM 24) and mass storage 34 collectively store an operating system, such as the AIX® operating system from IBM Corporation, to coordinate the functioning of the various components illustrated in processing system 300.
[0041] Various embodiments of the present invention have been described herein with reference to the associated drawings. Alternative embodiments of the present invention may be made without departing from the scope of the present invention. Various connections and positional relationships (e.g., above, below, adjacent, etc.) are disclosed between elements in the specification and in the drawings hereto. These connections, or positional relationships, or both, may be direct or indirect unless otherwise specified, and the present invention is not intended to be limited in these respects. Thus, coupling of entities may be direct or indirect coupling, and positional relationships between entities may be direct or indirect positional relationships. Additionally, various tasks and process steps described herein may be combined into a more comprehensive procedure or process having additional steps or functions not described herein.
[0042] One or more of the methods described herein may be implemented with any one or combination of the following technologies, each of which is well known in the art: discrete logic circuit(s) having logic gates for implementing logical functions in response to data signals, application specific integrated circuits (ASICs) having appropriate combinations of logic gates, programmable gate array(s) (PGAs), field programmable gate arrays (FPGAs), and the like.
[0043] For the sake of brevity, conventional techniques pertaining to making and using aspects of the present invention may or may not have been described in detail herein. In particular, various aspects of computing systems and specific computer programs for implementing various technical features described herein are well known. Thus, in the interest of brevity, many conventional implementation details have been briefly described herein or omitted entirely without providing well-known system or process details, or both.
[0044] In some embodiments, various functions or operations may occur at a given location, or connected to the operation of one or more devices or systems, or both. In some embodiments, a given function or operation may be performed at a first device or location, and the remainder of the function or operation may be performed at one or more additional devices or locations.
[0045] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. Furthermore, when the terms "comprise", "comprising", or both are used herein, they should be understood to specify the presence of the stated features, integers, steps, operations, elements, or components, or combinations thereof, but not to exclude the presence or addition of one or more other features, integers, steps, operations, elements, components or groups, or combinations thereof.
[0046] The corresponding structures, materials, acts, and all means or step-plus-function equivalents in the following claims are intended to include any structure, material, or act for performing a function in combination with other claim elements specifically recited in the claim. The present disclosure has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the precise form disclosed. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the present disclosure. The embodiments have been selected and described to explain the principles and practical application of the present disclosure and to enable others skilled in the art to understand the disclosure of various embodiments with various modifications as may be appropriate for the particular use envisaged.
[0047] The diagrams described herein are examples. Many variations to the diagrams or steps (or operations) described herein can exist without departing from the scope of the present disclosure. For example, operations can be performed in a different order, or operations can be added or modified. Also, the term "coupled" describes having a signal path between two elements, and does not imply a direct connection without an intervening element / connection between the elements. All of these variations are considered part of the present disclosure.
[0048] The following definitions and abbreviations should be used for interpretation of the claims and the specification. As used herein, the terms "comprise", "including ... "Having," "having," "including," or "comprising," or any variation thereof, is intended to include a non-exclusive inclusion. For example, a composition, mixture, process, method, product, or device that includes a list of elements need not be limited to only those elements, but can include other elements that are not expressly listed or that are essential to such composition, mixture, process, method, product, or device.
[0049] Additionally, as used herein, the term "exemplary" means "serving as an example." Any "exemplary" embodiment or design described herein is not necessarily to be construed as preferred or advantageous over other embodiments or designs. The terms "at least one" and "one or more" are understood to include any integer number equal to or greater than one, i.e., 1, 2, 3, 4, etc. The term "multiple" is understood to include any integer number greater than two, i.e., 2, 3, 4, 5, etc. The term "connected" can include both an indirect "connected" and a direct "connected."
[0050] The terms "about," "substantially," "approximately," and variations thereof are intended to include the degree of error associated with the measurement of a particular quality based on equipment available at the time of the filing of this application. For example, "about" can include a range of ±8%, 5%, or 2% of a given value.
[0051] The present invention may be a system, method, or computer program product, or any combination thereof, including a computer-readable storage medium (or media) having computer-readable program instructions thereon for causing a processor to perform features of the present disclosure.
[0052] A computer readable recording medium may be any tangible device capable of holding and storing a plurality of instructions for use by an instruction execution device. A computer readable medium may be, for example, but not limited to, an electrical recording device, a magnetic recording device, an optical recording device, an electro-magnetic recording device, a semiconductor recording device, or any suitable combination thereof. A non-exhaustive list of more specific examples of computer readable recording media includes the following: portable computer diskettes, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROMs or flash memories), static random access memories (SRAMs), portable compact disk read-only memories (CD-ROMs), digital versatile diskettes (DVDs), memory sticks, floppy disks, punch cards, or mechanically encoded devices having protruding structures within grooves that record instructions, and any suitable combination thereof. As used herein, a computer-readable recording medium is not to be construed as a transitory signal per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves such as wave guides or other communications media (e.g., light pulses passing through fiber optic cable), or electrical signals communicated through wires.
[0053] The computer program instructions described herein can be downloaded from a computer readable recording medium into each computing / processing device, or can be downloaded to an external computer or external recording device via a network, such as the Internet, a local area network, a wide area network, or a wireless network, and combinations thereof. The network can include copper cables, fiber optics, wireless networks, routers, firewalls, switches, gateway computers, and edge servers, and combinations thereof. A network adapter card or network interface in each computing / processing device receives the computer readable program instructions from the network and transfers the computer readable program instructions into a computer readable recording medium in each computing / processing device for storage.
[0054] The computer readable program instructions for carrying out the operations of the present invention may be either source code or object code written in any combination of programming languages, including assembler instructions, instruction set architecture (ISA) instructions, machine language instructions, machine dependent instructions, microcode, firmware instructions, state setting data, configuration data for an integrated circuit, or one or more conventional procedural programming languages, such as Smalltalk®, object oriented programming languages such as C++, the “C” programming language, or similar programming languages. The computer readable program instructions may be executed entirely on the user computer, partially on the user computer as a stand-alone software package, partially on the user computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user computer through any type of network, including a local area network (LAN), a wide area network (WAN), or the connection may be to an external computer (e.g., through an Internet service provider). In some embodiments, computer readable program instructions may be executed by electrical circuitry including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), and state information of the computer readable program instructions may be used to personalize the electrical circuitry to perform features of the present invention.
[0055] Aspects of the invention described herein have been described with reference to flowchart instructions and / or block diagrams of methods, apparatus (systems), and computer-readable storage media and computer program products according to embodiments of the invention. It will be understood that any combination of flowchart illustrations and / or block diagrams and / or blocks in flowchart illustrations and / or block diagrams can be implemented by computer-readable program instructions.
[0056] The computer-readable program instructions can be provided to a general purpose computer, a special purpose computer, or other processor or other programmable data processing device to produce a machine, which when executed by the processor of the computer or other programmable data processing device produces means for implementing the functions / operations specified in the block or blocks of the flowcharts and block diagrams, or a combination thereof. These computer-readable program instructions that direct a computer, programmable data processing device, and other device, or a combination thereof, to function in a particular manner can also be stored on a computer-readable recording medium, and the computer-readable recording medium having instructions stored therein constitutes an article of manufacture containing instructions that implement the functional / operational features specified in the block or blocks of the flowcharts and block diagrams, or a combination thereof.
[0057] The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device and cause a computer implemented process to perform a series of operational steps on the computer, other programmable apparatus, or other device to implement the functions / acts specified in the blocks of the flowcharts and block diagrams or in a combination thereof.
[0058] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and possible implementation operations of systems, methods, and computer programs according to various embodiments of the present invention. In this respect, the flowcharts or block diagrams may represent modules, segments, or portions of instructions, which include one or more executable instructions for implementing a particular logical function(s) (or functions). In some alternative implementations, the functions described in the blocks may be performed other than as illustrated. For example, two blocks shown in succession may be executed substantially simultaneously, or the blocks may be executed in reverse order, depending on the functionality involved. Also, the illustration of the blocks in the block diagrams and / or the illustration of the flowcharts or combinations thereof may be implemented by a system based on special purpose hardware that performs a particular function or operation or executes specific purpose hardware and computer instructions.
[0059] The description of various embodiments of the present disclosure has been presented for illustrative purposes, but is not intended to be exhaustive or limiting to the disclosed embodiments. Many modifications or variations will be obvious to those skilled in the art without departing from the scope and spirit of the present disclosure. The terms used in this specification are selected to best explain the principles of the present embodiments, practical applications, or technical improvements over the art found in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. 1. A computer-implemented method, comprising: training a teacher neural network using the labeled images to obtain a trained teacher neural network, wherein each pixel of each of the labeled images is assigned a label indicating one of a set of classifications; providing a set of unlabeled images to the trained teacher neural network to generate a set of soft-labeled images, each pixel of the generated soft-labeled images being given a soft label indicating one of a set of classifications and an uncertainty value indicating a confidence level of the soft label, the soft label being provided by the trained teacher neural network; training a student neural network using the subset of labeled images and the soft-labeled set based on a confidence map derived from the uncertainty values of the soft-labeled images to obtain a trained student neural network; and Obtaining student-labeled images from unlabeled images using the trained student neural network.
4. A computer-implemented method comprising:
2. The computer-implemented method of claim 1, wherein basing the confidence map on the weighting includes weighting each class according to a valid number of pixels per class based on the confidence map.
3. Further, iteratively training the student neural network by providing unlabeled images to the trained teacher neural network to generate different sets of soft-labeled images, using a different set of soft-labeled images and a different subset of the labeled images in each iteration.
3. The computer-implemented method of claim 1, comprising:
4. and training the student neural network further comprises calculating a loss value from an output of the student neural network at each iteration, and updating parameters of the student neural network at each iteration based on the loss value. The computer-implemented method of claim 3 , comprising:
5. The iterative training of the student neural network is performed until convergence of the loss value calculated for the student neural network at each iteration is achieved or until a predefined number of iterations is reached.
5. The computer-implemented method of claim 4.
6. and weighting the soft-labeled images generated by the trained teacher neural network based on the uncertainty value associated with the soft label assigned to each pixel. A computer implemented method according to any one of claims 1 to 5.
7. training the student neural network with the set of soft-labeled images includes filtering out soft labels of pixels based on weights determined from the weightings.
7. The computer-implemented method of claim 6.
8. the set of classifications being indicative of anatomical features of the eye, and the computer-implemented method further includes making an eye diagnosis based on the student-labeled images obtained by inputting an optical coherence tomography (OCT) retinal scan as the unlabeled image. A computer implemented method according to any preceding claim.
9. 1. A system comprising: a memory having computer readable instructions; and one or more processors for executing the computer readable instructions, the computer readable instructions controlling the one or more processors to: training a teacher neural network using the labeled images to obtain a trained teacher neural network, wherein each pixel of each of the labeled images is assigned a label indicating one of a set of classifications; providing a set of unlabeled images to the trained teacher neural network to generate a set of soft-labeled images, each pixel of the generated soft-labeled images being given a soft label indicating one of a set of classifications and an uncertainty value indicating a confidence level of the soft label, the soft label being provided by the trained teacher neural network; training a student neural network using the subset of labeled images and the soft-labeled set based on a confidence map derived from the uncertainty values of the soft-labeled images to obtain a trained student neural network; and Obtaining student-labeled images from unlabeled images using the trained student neural network. A system that performs operations including:
10. Further, iteratively training the student neural network by providing unlabeled images to the trained teacher neural network to generate different sets of soft-labeled images, using a different set of soft-labeled images and a different subset of the labeled images in each iteration. The system of claim 9 , comprising:
11. and training the student neural network further comprises calculating a loss value from an output of the student neural network at each iteration, and updating parameters of the student neural network at each iteration based on the loss value. The system of claim 10 , comprising:
12. The iterative training of the student neural network is performed until convergence of the loss value calculated for the student neural network at each iteration is achieved or until a predefined number of iterations is reached. The system of claim 11.
13. and weighting the soft-labeled images generated by the trained teacher neural network based on the uncertainty value associated with the soft label assigned to each pixel. A system according to any one of claims 9 to 12.
14. training the student neural network with the set of soft-labeled images includes filtering out soft labels of pixels based on weights determined from the weightings. The system of claim 13.
15. A computer program stored on a computer-readable medium and loadable into the internal memory of a digital computer, said program comprising software code portions for carrying out the method according to any one of claims 1 to 8 when said program is run on a computer. A computer program comprising:
Citation Information
Patent Citations
Information processing apparatus, method for producing machine learning data, and program
JP2019152977A
Deep learning-based diagnosis and referral of ophthalmic diseases and disorders
US20190110753A1
Leveraging unlabeled data with a probabilistic graphical model
US7937264B2
Methods and systems for interactive 3D image segmentation
US9317927B2
Machine learning device and method
WO2019167883A1
