EP4073704A1 - Process to learn new image classes without labels - Google Patents
Process to learn new image classes without labelsInfo
- Publication number
- EP4073704A1 EP4073704A1 EP20808575.3A EP20808575A EP4073704A1 EP 4073704 A1 EP4073704 A1 EP 4073704A1 EP 20808575 A EP20808575 A EP 20808575A EP 4073704 A1 EP4073704 A1 EP 4073704A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- source
- target data
- image components
- generating
- models
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2137—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on criteria of topology preservation, e.g. multidimensional scaling or self-organising maps
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0895—Weakly supervised learning, e.g. semi-supervised or self-supervised learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/091—Active learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/096—Transfer learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Definitions
- the present invention relates to a system for learning new image classes from new sensory input and, more particularly, to a system for learning new image classes from new sensory input without labels.
- the present invention relates to a system for learning new image classes from new sensory input and, more particularly, to a system for learning new image classes from new sensory input without labels.
- (2) Description of Related Art [0009] Existing methods for learning from few labeled samples use a deep neural network that is pre-trained on a different, but similar, dataset with many labeled samples. The existing methods then re-tune the final layer or layers of the network to classify the new target dataset. This approach has two weaknesses.
- the present invention relates to a system for learning new image classes from new sensory input and, more particularly, to a system for learning new image classes from new sensory input without labels.
- the system comprises one or more processors and a non-transitory computer-readable medium having executable instructions encoded thereon such that when executed, the one or more processors perform multiple operations.
- the system performs pseudo-task optimization to identify an optimal pseudo-task for each source model of one or more source models.
- An initial target network is trained with self-supervised learning using the optimal pseudo-task.
- a plurality of source image components is extracted from the one or more source models.
- An attribute dictionary of abstract attributes is generated from the plurality of source image components.
- a set of unlabeled target data is aligned with the one or more source models that are similar to the set of unlabeled target data.
- the set of unlabeled target data are mapped onto a plurality of abstract attributes in the attribute dictionary.
- a new target network is generated from the mapping. Using the new target network, an object label is assigned to an object in the unlabeled target data. The autonomous platform is controlled based on the assigned object label.
- the set of unlabeled target data is an input image
- mapping the unlabeled target data onto abstract attributes further comprises dissecting the input image into a plurality of target image components; comparing the plurality of target image components with the plurality of source image components; assigning the object label to the object based on the comparison; generating an executable control script appropriate for the object label; and causing the autonomous platform to execute the control script and perform an action corresponding to the control script.
- a source similarity graph is used to select the one or more source models that are similar to the set of unlabeled target data and performing pseudo-task optimization further comprises computing a similarity measure between the one or more source models; generating the source similarity graph based on the similarity measure; and using the source similarity graph, identifying one or more source models in the plurality of source models that are similar to the set of unlabeled target data.
- extracting the plurality of source image components and generating the attribute dictionary further comprises generating the plurality of source image components for each source model using unsupervised data decomposition; mapping the plurality of source image components and their corresponding labels onto the plurality of abstract attributes, resulting in clusters of abstract attributes; and generating the attribute dictionary from the clusters of abstract attributes.
- the autonomous platform is a vehicle, and the system causes the vehicle to perform a driving operation in accordance with the assigned object label.
- a source similarity graph between two or more source models is generated, pseudo-tasks for each source model are learned, a plurality of source image components is extracted from each source model, an attribute dictionary of abstract attributes is generated from the plurality of source image components, a set of target data from a new target domain is mapped onto the attribute dictionary, and a new target network is generated from the mapping.
- data from the new target network is collected, and object labels are propagated in a latent feature space, resulting in an improved dictionary of abstract attributes and a refined target network.
- the present invention also includes a computer program product and a computer implemented method.
- the computer program product includes computer-readable instructions stored on a non-transitory computer-readable medium that are executable by a computer having one or more processors, such that upon execution of the instructions, the one or more processors perform the operations listed herein.
- the computer implemented method includes an act of causing a computer to execute such instructions and perform the resulting operations.
- FIG.1 is a block diagram depicting the components of a system for learning new image classes without labels according to some embodiments of the present disclosure
- FIG.2 is an illustration of a computer program product according to some embodiments of the present disclosure
- FIG.3 is an illustration of key components of the system for learning new image classes without labels according to some embodiments of the present disclosure
- FIG.4 is a flow chart illustrating a process to leverage old data for learning from new data according to some embodiments of the present disclosure
- FIG.5A is an illustration of Steps 1 through 3 of a process that enables learning with a fraction of labels per class in a new target domain according to some embodiments of the present disclosure
- FIG.5B is an illustration of Steps 4 through
- the present invention relates to a system for learning new image classes without labels and, more particularly, to a system for learning new image classes without labels.
- the following description is presented to enable one of ordinary skill in the art to make and use the invention and to incorporate it in the context of particular applications. Various modifications, as well as a variety of uses in different applications will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to a wide range of aspects. Thus, the present invention is not intended to be limited to the aspects presented, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
- Various embodiments of the invention include three “principal” aspects.
- the first is a system for learning new image classes without labels.
- the system is typically in the form of a computer system operating software or in the form of a “hard-coded” instruction set. This system may be incorporated into a wide variety of devices that provide different functionalities.
- the second principal aspect is a method, typically in the form of software, operated using a data processing system (computer).
- the third principal aspect is a computer program product.
- the computer program product generally represents computer-readable instructions stored on a non-transitory computer-readable medium such as an optical storage device, e.g., a compact disc (CD) or digital versatile disc (DVD), or a magnetic storage device such as a floppy disk or magnetic tape.
- a non-transitory computer-readable medium such as an optical storage device, e.g., a compact disc (CD) or digital versatile disc (DVD), or a magnetic storage device such as a floppy disk or magnetic tape.
- Other, non- limiting examples of computer-readable media include hard disks, read-only memory (ROM), and flash-type memories. These aspects will be described in more detail below.
- FIG.1 A block diagram depicting an example of a system (i.e., computer system 100) of the present invention is provided in FIG.1.
- the computer system 100 is configured to perform calculations, processes, operations, and/or functions associated with a program or algorithm.
- certain processes and steps discussed herein are realized as a series of instructions (e.g., software program) that reside within computer readable memory units and are executed by one or more processors of the computer system 100. When executed, the instructions cause the computer system 100 to perform specific actions and exhibit specific behavior, such as described herein.
- the computer system 100 may include an address/data bus 102 that is configured to communicate information. Additionally, one or more data processing units, such as a processor 104 (or processors), are coupled with the address/data bus 102.
- the processor 104 is configured to process information and instructions. In an aspect, the processor 104 is a microprocessor.
- the processor 104 may be a different type of processor such as a parallel processor, application-specific integrated circuit (ASIC), programmable logic array (PLA), complex programmable logic device (CPLD), or a field programmable gate array (FPGA).
- ASIC application-specific integrated circuit
- PLA programmable logic array
- CPLD complex programmable logic device
- FPGA field programmable gate array
- the computer system 100 is configured to utilize one or more data storage units.
- the computer system 100 may include a volatile memory unit 106 (e.g., random access memory (“RAM”), static RAM, dynamic RAM, etc.) coupled with the address/data bus 102, wherein a volatile memory unit 106 is configured to store information and instructions for the processor 104.
- RAM random access memory
- static RAM static RAM
- dynamic RAM dynamic RAM
- the computer system 100 further may include a non-volatile memory unit 108 (e.g., read-only memory (“ROM”), programmable ROM (“PROM”), erasable programmable ROM (“EPROM”), electrically erasable programmable ROM “EEPROM”), flash memory, etc.) coupled with the address/data bus 102, wherein the non-volatile memory unit 108 is configured to store static information and instructions for the processor 104.
- the computer system 100 may execute instructions retrieved from an online data storage unit such as in “Cloud” computing.
- the computer system 100 also may include one or more interfaces, such as an interface 110, coupled with the address/data bus 102.
- the one or more interfaces are configured to enable the computer system 100 to interface with other electronic devices and computer systems.
- the communication interfaces implemented by the one or more interfaces may include wireline (e.g., serial cables, modems, network adaptors, etc.) and/or wireless (e.g., wireless modems, wireless network adaptors, etc.) communication technology.
- the computer system 100 may include an input device 112 coupled with the address/data bus 102, wherein the input device 112 is configured to communicate information and command selections to the processor 104.
- the input device 112 is an alphanumeric input device, such as a keyboard, that may include alphanumeric and/or function keys.
- the input device 112 may be an input device other than an alphanumeric input device.
- the computer system 100 may include a cursor control device 114 coupled with the address/data bus 102, wherein the cursor control device 114 is configured to communicate user input information and/or command selections to the processor 104.
- the cursor control device 114 is implemented using a device such as a mouse, a track-ball, a track- pad, an optical tracking device, or a touch screen. The foregoing notwithstanding, in an aspect, the cursor control device 114 is directed and/or activated via input from the input device 112, such as in response to the use of special keys and key sequence commands associated with the input device 112.
- the cursor control device 114 is configured to be directed or guided by voice commands.
- the computer system 100 further may include one or more optional computer usable data storage devices, such as a storage device 116, coupled with the address/data bus 102.
- the storage device 116 is configured to store information and/or computer executable instructions.
- the storage device 116 is a storage device such as a magnetic or optical disk drive (e.g., hard disk drive (“HDD”), floppy diskette, compact disk read only memory (“CD-ROM”), digital versatile disk (“DVD”)).
- a display device 118 is coupled with the address/data bus 102, wherein the display device 118 is configured to display video and/or graphics.
- the display device 118 may include a cathode ray tube ("CRT"), liquid crystal display (“LCD”), field emission display (“FED”), plasma display, or any other display device suitable for displaying video and/or graphic images and alphanumeric characters recognizable to a user.
- CTR cathode ray tube
- LCD liquid crystal display
- FED field emission display
- plasma display or any other display device suitable for displaying video and/or graphic images and alphanumeric characters recognizable to a user.
- the computer system 100 presented herein is an example computing environment in accordance with an aspect.
- the non-limiting example of the computer system 100 is not strictly limited to being a computer system.
- an aspect provides that the computer system 100 represents a type of data processing analysis that may be used in accordance with various aspects described herein.
- other computing systems may also be implemented. Indeed, the spirit and scope of the present technology is not limited to any single data processing environment.
- one or more operations of various aspects of the present technology are controlled or implemented using computer-executable instructions, such as program modules, being executed by a computer.
- program modules include routines, programs, objects, components and/or data structures that are configured to perform particular tasks or implement particular abstract data types.
- an aspect provides that one or more aspects of the present technology are implemented by utilizing one or more distributed computing environments, such as where tasks are performed by remote processing devices that are linked through a communications network, or such as where various program modules are located in both local and remote computer-storage media including memory- storage devices.
- FIG.2 An illustrative diagram of a computer program product embodying the present invention is depicted in FIG.2.
- the computer program product is depicted as floppy disk 200 or an optical disk 202 such as a CD or DVD.
- the computer program product generally represents computer-readable instructions stored on any compatible non-transitory computer-readable medium.
- the term “instructions” as used with respect to this invention generally indicates a set of operations to be performed on a computer, and may represent pieces of a whole program or individual, separable, software modules.
- Non-limiting examples of “instruction” include computer program code (source or object code) and “hard-coded” electronics (i.e. computer operations coded into a computer chip).
- the “instruction” is stored on any non-transitory computer-readable medium, such as in the memory of a computer or on a floppy disk, a CD-ROM, and a flash drive. In either event, the instructions are encoded on a non-transitory computer-readable medium.
- (3) Specific Details of Various Embodiments Described herein is a process that enables autonomous platforms (e.g., robots, vehicles) in the field to quickly learn object classes without any training labels or with only a small set of training labels.
- the invented process learns a new machine learning model based on novel (i.e., previously unseen) sensory input, where the input may be from an optical camera.
- This learning process leverages a dataset of prior trained models by finding structure in these models that enable learning, without labels, an object class within new sensory data.
- the system described herein automatically finds object components in the prior trained models as well as in the novel sensory data to automatically match the distribution of components between prior models and novel data. By matching the component distributions, even if they come from different sensors, new data can be identified by mapping component compositions to objects in a database.
- Non-limiting examples of “different sensors” include two (or more) cameras with different lenses, and a regular camera and an infrared camera.
- the method according to embodiments of the present disclosure is used to bootstrap the learning of new machine learning models.
- the system optimizes a pseudo, or surrogate, task for learning a new model.
- a pseudo task is, for example, taking away the color of an image and training a network to predict again the color for each pixel (this process is also called self-supervised learning).
- This pseudo task is not the actual task but trains the network in a way that makes it easier to learn the actual task. Finding the right pseudo task has been done manually in the prior art. In this invention, the pseudo task is found automatically, as will be described in detail below.
- FIG.3 shows the key elements of the invention.
- an autonomous platform e.g., robot (element 301)
- the robot processes the camera input (element 302), which are images of the object.
- a new object means that the robot (element 301) was not trained on the object for its mission, but the nature of the object is known to civilization, non-limiting examples of which include a traffic cone, a vehicle that is different than one the robot (element 301) has been trained on, an animal, etc.
- the invented process begins to automatically dissect the image (i.e., camera input (element 302) into its components (element 306).
- An example embodiment for such automatic dissection is described in Literature Reference No 3.
- the image components (element 306) are matched with components from a database (element 308).
- the identity of the object is revealed (i.e., identify new object based on components (element 310)) and assigned an object label (element 312).
- the system described herein is used to generate a control script to automate execution of a task (or action) to be performed by an autonomous platform, such as a robot (element 301).
- the autonomous platform executes the control script (element 314) that is appropriate for, or corresponds to, the labeled object (element 312), such as instructions to disassemble the object, and the autonomous platform performs the action (element 316) in accordance with the control script (element 314).
- the control script is a predefined control script that can be either manually written, learned from human observation, or automatically generated in an optimization process (e.g., using genetic algorithms). Learning from human observation is described in detail in Literature Reference No.9.
- the robot (element 301) trains a new machine learning model with the images of the object (i.e., camera input (element 302) and the corresponding label (i.e., object label (element 312).
- FIG.4 provides more details on identifying the object based on components (element 310), which includes identifying a new object based on components (FIG.3, element 310) matched with components in the database of object components (FIG.3, element 308).
- Both the components from the database (i.e., source or old data) as well as the components from the new data are mapped onto a feature space (element 400).
- the data points are clustered, revealing clusters of components (element 402).
- the clustering is carried out based solely on the components from the database.
- the components in feature space are aligned with the feature space representation of the components from the database (i.e., old data) (element 404).
- the components from the new data can be mapped onto corresponding attributes in the database to identify new data (element 406). Since each object in the database has a known composition of attributes, the object identity or label can be retrieved based on the attributes.
- Steps 1 to 4 are Steps 1 to 4 in the 6-step outline below and illustrated in FIGs.5A and 5B.
- FIG.5A depicts Steps 1 to 3 of the process described herein
- FIG.5B depicts Steps 4-6 of the process.
- Step 5 includes the alignment (element 404), and Step 6 is optional to improve the new machine learning model with a few auto-selected labels.
- the new six-step process consists of 1) creating a similarity graph between source models (element 500); 2) learning optimal pseudo tasks for each source model (element 502); 3) extracting components from source models (element 504); 4) building a dictionary of abstract attributes from the components (element 506); 5) aligning target data with model data to map the target data onto abstract attributes in the dictionary (element 508); and 6) active learning for data for which there is not a good match with existing attributes (element 510).
- the six steps are first outlined and then the entire system is described in detail below.
- Step 1 Source-Similarity-Graph (SSG) Creation (element 500)
- the SSG creation step leverages a multitude of pre- existing data sources from a database of models with training data (element 512), which include machine learning datasets and associated models.
- the system measures similarity between models (element 514) and, based on a similarity measure computed between the source models, the SSG (element 516) is created that links the models based on their nearest neighbors.
- the benefit of the SSG (element 516) is to quickly find a small set of models that are closest to the target data.
- Step 2 Pseudo-Tasks Optimization (element 502)
- Pseudo-task optimization for SSL is performed on all source models (element 518) to find the best pseudo task (element 520) for each source model.
- the optimization criterium is to create networks that allow a discriminative component extraction comparable to what is obtained from a network trained in a supervised way, since source labels are known.
- SSL self-supervised learning
- a network is trained for target data with SSL using pseudo tasks from the closest source models (element 524).
- Step 3 Unsupervised Data Decomposition (element 504)
- the process according to embodiments of the present disclosure automatically extracts salient components from input data (e.g., extracting the cropped image of a car tire) using unsupervised data decomposition (element 528), as described in detail in Literature Reference No.3.
- the end result is a set of components for each source model (element 530) in input space for each labeled source input.
- Step 4 Attribute-Dictionary Creation (element 506)
- components of all source models and corresponding labels (element 532) are mapped across input data and sources onto abstract attributes (element 534).
- This mapping can be carried out through unsupervised clustering of the abstract attributes (element 536), resulting in semantically meaningful clusters, such as a cluster of bike wheels (described in Literature Reference No.3).
- a dictionary of sets of abstract attributes is built (element 538), resulting in an attribute dictionary (element 540).
- the corresponding labels from the sources are obtained.
- a mapping from the attributes onto labels can be learned.
- Step 5 Zero-Shot Attribute Distillation (element 508)
- the unlabeled target data (element 522) needs to be processed so that the unlabeled target data (element 522) maps onto the right set of attributes (i.e., map target data onto abstract attributes (element 542).
- the closest source model or models is selected based on the SSG (element 516) and then a zero-shot attribute distillation method (element 544) is used to align the sources with the target.
- Distilled embedding refers to the set of representations (i.e., deep neural activations) of the unlabeled target data (element 602) that are already aligned with one or more source models.
- Update embedding refers to updating the target representations (via updating the target model) using the information provided by the oracle (element 616) through active learning (element 510) (through inquiry).
- Step 6 Active Learning (element 510)
- a good attribute representation may not be found, where goodness is, for instance, measured by having high values in the attribute probability distribution or high confidence in these values.
- an active learning method (element 548) is used.
- a trained model from the six-step process is used as a starting point, which becomes the new source model, which is input to the feature space (element 400) and part of the different source datasets (element 604).
- the invented process is described in more detail.
- a functional-level representation of the architecture for learning a target model is shown in FIG.6.
- the output of this process is a new target model that is generated by zero-shot attribute distillation (element 508) and used in the components (element 310) to identify a new object.
- the inputs (element 600) to the system described herein are the target dataset with no labels (element 602) and a set of annotated/labeled source datasets (element 604) that contain relevant and irrelevant datasets to the target dataset.
- Meta-learning on the source datasets is used to learn three things: the SSG (element 516) for different datasets, optimal pseudo-tasks (OPT) for source datasets (element 520), and a set of canonical attributes (element 608).
- the meta-learning module (element 606) utilizes source similarity graph generation (element 500), attribute generation (element 506), and meta learning of pseudo-tasks for SSL (element 502).
- the target data (element 602) is then placed on the SSG (element 516) in source dataset retrieval (element 610) to retrieve relevant source datasets.
- the optimal pseudo-tasks (OPT) (element 520) for relevant sources (i.e., K-NN sources (element 612)) are used to define a target pseudo-task and an SSL model is learned from scratch for the target dataset (i.e., SSL of target with optimal pseudo-tasks (element 524)).
- the relevant sources i.e., K-NN sources (element 612)
- their corresponding attributes i.e., canonical attributes (element 608) are used together with the target data (i.e., initial target model (element 526)) to tune the SSL trained model and perform zero-shot attribute distillation (element 508).
- Step 1 Source Similarity Graph (element 516)
- Transfer learning is a natural choice for learning a target dataset with few (or no) labels (element 602) in the presence of relevant source dataset(s) with abundant labeled data (element 604).
- Identifying the relevant source dataset(s) (i.e., K-NN sources (element 612)), however, remains to be a core challenge in transfer learning applications. This difficulty is due to a phenomenon known as ⁇ negative transfer’, which occurs when knowledge is transferred from irrelevant source domains and in which transfer learning degrades the learning performance instead of improving it.
- Current transfer learning methods often assume known relevant source domains, which are handpicked by a human expert.
- Obtaining a fully automated transfer learning system requires a quantitative notion of relevance between different datasets, so that a machine is capable of choosing the relevant source dataset(s) from a large pool of datasets to solve a task for the input target dataset. [00078]
- a unique similarity measure is computed between different datasets in the present invention.
- FIG.7 illustrates measuring similarity between datasets, X 1 (e.g., MNIST (Modified National Institute of Standards and Technology) (element 700) and X 2 e.g., USPS (U.S. Postal Service) or SVHN (Street View House Numbers) (element 702), where the similarity measures their distributional distance in a lower dimensional shared latent space (element 706).
- X 1 e.g., MNIST (Modified National Institute of Standards and Technology)
- X 2 e.g., USPS (U.S. Postal Service) or SVHN (Street View House Numbers) (element 702)
- SVHN String View House Numbers
- a shared encoder (element 708), is used for both datasets (elements 702), and the latent space (element 706) of the encoder (i.e., the output of the encoder) is required to be generative for both datasets in the sense that both domains can be recovered from the latent space (element 706) via decoders, (element 710) and (element 712).
- the process according to embodiments of the present disclosure compares the distributions in the latent space for two different datasets and generates a similarity graph. [00079] denote the samples from the i’th source dataset.
- a mapping e.g., a deep neural encoder
- a mapping that encodes the datasets into a shared latent space, while requiring this latent space to be generative for the two datasets, as described above.
- decoders ⁇ ⁇ ⁇ and ⁇ ⁇ ⁇ : ⁇ ⁇ ⁇ are learned alongside the shared encoder ⁇ such that ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ and ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ .
- the dissimilarity between the datasets is defined as a metric between the empirical distributions of the two datasets in the latent space.
- a possible metric is the sliced-Wasserstein metric, which has theoretical merits against classic information-theoretic dissimilarity metrics, such as KL-divergence (see Literature Reference Nos.4 and 5).
- K- NN K-Nearest Neighbors
- the system described herein utilizes an efficient approximation of a K-NN graph, e.g., the one proposed by Dong et al. (see Literature Reference No.6).
- a computationally efficient algorithm e.g., Literature Reference No.10 is used for proximity search on large graphs. The result is an automated way of obtaining the nearest (i.e., most relevant) source datasets to the target dataset, which leads to a seamless transfer learning with minimized negative transfer effect.
- FIG.8 depicts the Source Similarity Graph (SSG) (element 516) allowing efficient retrieval of relevant sources (element 612) when presenting a new target dataset (element 800).
- SSG Source Similarity Graph
- an SSG is formed, where each node (represented by a circle, e.g., element 802)) of the SSG (element 516) is a source dataset, and each edge’s (represented by a line, e.g., element 804) length/weight identifies the similarity between two datasets.
- an efficient proximity search is used on the SSG (element 516) to retrieve the most relevant source datasets (element 612).
- Step 2 Pseudo-Tasks Optimization (element 502)
- SSL Self-Supervised Learning
- the pseudo-tasks in current SSL methods are hand-designed such that they uncover relevant features of the data for a target task, while the performance of the network is easily measured for the pseudo-task.
- Non-limiting examples of common pseudo-tasks are 1) recovering the data from a lower dimensional embedding space, as in auto-encoders; 2) leaving out parts of the input data and requiring the network to reconstruct the missing data; and 3) permuting the information in the input data and requiring the network to recover the un-permuted data.
- the pseudo tasks are learned.
- FIG.9 depicts training of the meta pseudo-task generator for SSL, which enables SSL to generate attribute/component distributions similar to those learned by a model trained with full supervision.
- the pseudo task generator (element 900) is a function that is applied to the input image to discard some of the information in the input image (e.g., cut out part of the image, convert from color to grayscale).
- the neural encoder (element 902) and neural decoder (element 904) are deep convolutional neural networks with mirrored architectures.
- the neural encoder (element 902) squeezes the information of the pseudo-input image (i.e., input image that has gone through the pseudo task generator (element 900) into a low- dimensional vector space/latent space.
- the neural decoder (element 904) aims to recover the information of the original input image from this low-dimensional vector representation.
- the SSG module (element 516) described above provides the relevance of source datasets with the target dataset. The relevance is used for two things: 1) attribute distillation; and 2) providing a near optimal pseudo-task for the target data that enables one to learn a good initial model for the target dataset from scratch.
- an input data point e.g., an image
- a trained neural network model e.g., via SSL, as above.
- NMF Nonnegative Matrix Factorization
- CNN pre- trained convolutional neural network
- FIG. 10 the system according to embodiments of the present disclosure dissects an input image (element 302) into its image components (element 306), or visual words.
- the image components (element 306) have a higher chance of being shared among different source datasets.
- each unsupervised data decomposition module enables the use of the learned/trained models (element 1100) (e.g., an a priori trained model on a related dataset) and dissection of the input images into image components (element 306).
- Image components (element 306) extracted from all source models and datasets (element 604) are unified to provide groups of components, referred to as attributes, that cover all source datasets (element 604).
- Another challenge is to unify the extracted image components (element 306) from different source datasets (element 604) into a shared set of components, or attributes.
- a joint embedding, or attribute embedding is learned for all extracted image components (element 306) from source datasets (element 604) via a joint encoder ⁇ (joint model; element 1104).
- SSL is used to learn such neural encoder, ⁇ (element 1104) for all image components (element 306). Having a joint embedding on the image components (element 306), in the embedding space, clustering is performed (e.g., using Sliced-Wasserstein Gaussian Mixture Model (see Literature Reference No.7) to obtain machine learned attributes for source datasets (i.e., attribute embedding (element 1102)). [00089] As described above, the source datasets (element 604) are processed to obtain the attributes for each sample in each dataset.
- the input is dissected into its components (i.e., into textual or visual words) (element 306), then the image components (element 306) are embedded into the joint embedding via joint model ⁇ (element 1104), and the corresponding attributes for are obtained.
- the source datasets will have data, labels, and attributes, (which are collected into a dictionary. The mined attributes enable performance of zero-shot learning on the target dataset.
- Step 5 Zero-Shot Attribute Distillation (element 544)
- images from the source datasets (element 604) and the target dataset (element 602) both go through the shared neural encoder, ⁇ ⁇ (element 1200), and a latent representation (a vector) for each image from each dataset/domain is obtained.
- Images from the source datasets (element 604) have ground truth attributes, and the goal is to train the shared neural encoder, ⁇ ⁇ (element 1200) such that its output is representative of the attributes for the source datasets (element 604) (i.e., one should be able to recover the attributes of images from the source domain from this latent space).
- the target dataset doesn’t have ground truth attributes, so the output of ⁇ ⁇ (element 1200) must be made representative of the target domain for images from the target dataset (element 602).
- a neural decoder ⁇ (element 1202) that reconstructs the target images from the target dataset using the same latent representation as for the source data, resulting in a reconstructed target dataset (element 1204).
- the decoder ⁇ (element 1202) enforces the shared neural encoder, ⁇ ⁇ (element 1200) to maintain the critical information of the target dataset (element 602).
- the zero-shot attribute distillation module receives the target dataset (element 602), samples from relevant source datasets (K nearest neighbor sources), their corresponding mined attributes (i.e., canonical attributes (element 608)), and the SSL-trained target model (element 526).
- the attributes are different from the labels and are mined as described above. For instance, while the label for a sample is ⁇ car’, its attributes could be ‘has wheels’, ‘is metal’, etc.
- the twist is that since the attributes are mined by a machine there is no human labeling them (i.e., they are abstract, but still encode class-specific characteristics).
- the challenge is to map new target data onto the same attributes.
- Zero-shot attribute distillation uses a shared embedding to map the target dataset (element 602) onto mined attributes.
- the SSL trained model (element 526) for the target dataset (element 602) is jointly tuned on relevant source datasets (element 604), such that the latent space is predictive of the components/attributes for the source datasets, while the latent space should remain a generative space for the target domain.
- Step 6 Active Learning of Novel Classes and/or Attributes (element 548) [00096]
- the target samples first go through the zero-shot distillation pipeline (element 544), which predicts target attributes (element 1202).
- the target model (element 1100) is then used together with the unsupervised data decomposition (element 528) to dissect data into their components (element 306).
- the dissected components (element 306) are then fed to the joint component model, ⁇ (element 1104), and novel attributes are detected via cluster analysis in the latent space of ⁇ (element 1104). This process filters the samples that are ambiguous and require further clarification.
- active learning (element 548) is performed on these ambiguous samples such that the ambiguity is resolved based on minimal inquiries to a human user/operator.
- a non-limiting example is a combination of least confidence, margin sampling, and entropy sampling (see Literature Reference No.8) to select the top most informative/uncertain data points among samples that have the largest uncertainty.
- the invention meta-learns unsupervised learning algorithms by optimizing pseudo tasks for the source datasets. Moreover, it will generate machine-learned attributes from the source datasets that are leveraged to predict classes of the target dataset without requiring labels.
- the system described herein is capable of inquiring new attributes and learning new classes using its unsupervised component decomposition together with active learning.
- a shared latent space is used, and the old and new target datasets are embedded into this space.
- the models are then tuned to achieve three things: 1) solve an optimal pseudo task for the new target data; 2) remain discriminative for the old target dataset; and 3) be domain agnostic.
- the latent space By requiring the latent space to be domain agnostic, the latent distributions of the two datasets are enforced to be undistinguishable from one another.
- the pseudo-task optimization for the target dataset forces the model to carefully preserve information in the new target domain while, simultaneously, being discriminative for the old dataset.
- zero-shot attribute distillation is implemented, which recovers shared attributes between the source and target datasets.
- the target data could contain attributes that did not exist in the source datasets, and therefore, there are no corresponding attributes in the attribute dictionary.
- active learning is leveraged, where the system inquires class labels from a human labeler for samples that would disambiguate the uncertainty associated with the novel attributes. The feedback from the human is then used to further tune the network to achieve an optimal embedding. Finally, the newly identified attributes are added to the set of mined dictionary attributes for solving future tasks.
- the system and method according to embodiments of the present disclosure can be used in automatic control of an autonomous platform, such as a robot, autonomous self-driving ground vehicle, unmanned aerial vehicle (UAV).
- an autonomous platform such as a robot, autonomous self-driving ground vehicle, unmanned aerial vehicle (UAV).
- UAV unmanned aerial vehicle
- devices that can be controlled via the processor 104 include a motor vehicle or a motor vehicle component (electrical, non-electrical, mechanical), such as a brake, a steering mechanism, suspension, or safety device (e.g., airbags, seatbelt tensioners, etc.).
- the action to be performed can be a driving operation/maneuver (such as steering or another command) in line with driving parameters in accordance with the now labeled object.
- a driving operation/maneuver such as steering or another command
- the system described herein can cause a vehicle maneuver/operation to be performed to avoid a collision with the bicyclist or vehicle (or any other object that should be avoided while driving).
- the system can cause the autonomous vehicle to apply a functional movement response, which may be the task to be performed, such as a braking operation followed by a steering operation (etc.), to redirect vehicle away from the object, thereby avoiding a collision.
- Other appropriate actions may include one or more of a steering operation, a throttle operation to increase speed or to decrease speed, or a decision to maintain course and speed without change.
- the responses may be appropriate for avoiding a collision, improving travel speed, or improving efficiency.
- control of other device types is also possible.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Electromagnetism (AREA)
- Image Analysis (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962946277P | 2019-12-10 | 2019-12-10 | |
| PCT/US2020/057404 WO2021118697A1 (en) | 2019-12-10 | 2020-10-26 | Process to learn new image classes without labels |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4073704A1 true EP4073704A1 (en) | 2022-10-19 |
Family
ID=73476248
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP20808575.3A Pending EP4073704A1 (en) | 2019-12-10 | 2020-10-26 | Process to learn new image classes without labels |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP4073704A1 (en) |
| CN (1) | CN114600130A (en) |
| WO (1) | WO2021118697A1 (en) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11928505B2 (en) * | 2021-05-12 | 2024-03-12 | Lockheed Martin Corporation | Feature extraction from perception data for pilot assistance with high workload tasks |
| CN113591918B (en) * | 2021-06-29 | 2024-02-06 | 北京百度网讯科技有限公司 | Training method of image processing model, image processing method, device and equipment |
| CN113743516A (en) * | 2021-09-08 | 2021-12-03 | 未鲲(上海)科技服务有限公司 | Clustering algorithm-based product label generation method and device and computer equipment |
| US11972614B2 (en) * | 2021-11-09 | 2024-04-30 | Zoox, Inc. | Machine-learned architecture for efficient object attribute and/or intention classification |
| CN113792823B (en) * | 2021-11-17 | 2022-03-25 | 山东力聚机器人科技股份有限公司 | New image classification method and device |
| CN114187610B (en) * | 2021-12-02 | 2025-07-04 | 南京理工大学 | Low-cost person re-identification method based on deep active learning |
| CN115311844B (en) * | 2022-06-22 | 2023-05-16 | 东南大学 | Freeway traffic state estimation method based on self-supervised learning support vector machine |
| CN115658896A (en) * | 2022-10-21 | 2023-01-31 | 上海运柚科技有限公司 | Freight corpus clustering method, device, equipment and computer readable storage medium |
| WO2024100851A1 (en) * | 2022-11-10 | 2024-05-16 | 日本電信電話株式会社 | Model training device, model training method, and model training program |
| CN117011166B (en) * | 2023-06-25 | 2025-08-29 | 中国科学技术大学 | A multi-degraded image restoration method based on degradation correlation utilization |
| CN117671426B (en) * | 2023-12-07 | 2024-05-28 | 北京智源人工智能研究院 | A pre-training method and system for suggestible segmentation models based on concept distillation and CLIP |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190130220A1 (en) * | 2017-10-27 | 2019-05-02 | GM Global Technology Operations LLC | Domain adaptation via class-balanced self-training with spatial priors |
| CN107944874B (en) * | 2017-12-13 | 2021-07-20 | 创新先进技术有限公司 | Risk control method, device and system based on transfer learning |
| CN109034186B (en) * | 2018-06-11 | 2022-05-24 | 东北大学秦皇岛分校 | Handwriting data identification method based on DA-RBM classifier model |
| CN108984613A (en) * | 2018-06-12 | 2018-12-11 | 北京航空航天大学 | A kind of defect report spanned item mesh classification method based on transfer learning |
| CN109961089B (en) * | 2019-02-26 | 2023-04-07 | 中山大学 | Small sample and zero sample image classification method based on metric learning and meta learning |
-
2020
- 2020-10-26 CN CN202080075144.7A patent/CN114600130A/en active Pending
- 2020-10-26 EP EP20808575.3A patent/EP4073704A1/en active Pending
- 2020-10-26 WO PCT/US2020/057404 patent/WO2021118697A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| CN114600130A (en) | 2022-06-07 |
| WO2021118697A1 (en) | 2021-06-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11625557B2 (en) | Process to learn new image classes without labels | |
| EP4073704A1 (en) | Process to learn new image classes without labels | |
| US11288498B2 (en) | Learning actions with few labels in the embedded space | |
| Tsintotas et al. | The revisiting problem in simultaneous localization and mapping: A survey on visual loop closure detection | |
| Stewart et al. | End-to-end people detection in crowded scenes | |
| CN110569793B (en) | Target tracking method for unsupervised similarity discrimination learning | |
| US20190147602A1 (en) | Hybrid and self-aware long-term object tracking | |
| CN110073367B (en) | Multi-view Embedding with SOFT-MAX-based Compatibility Functions for Zero-Shot Learning | |
| US11176477B2 (en) | System and method for unsupervised domain adaptation via sliced-wasserstein distance | |
| JP2023156308A (en) | Systems and methods to enable memory-bounded continuous learning in artificial intelligence and deep learning that operate applications continuously across the network computational edge | |
| Charalampous et al. | On-line deep learning method for action recognition | |
| US11790646B2 (en) | Network for interacted object localization | |
| EP3711022A1 (en) | Spatio-temporal action and actor localization | |
| WO2019018022A2 (en) | Zero shot machine vision system via joint sparse representations | |
| CN114329031B (en) | A fine-grained bird image retrieval method based on graph neural network and deep hashing | |
| US10607111B2 (en) | Machine vision system for recognizing novel objects | |
| US20250005916A1 (en) | System and method for levarging multiple descriptive features for robust few-shot image learning | |
| JP2022150552A (en) | Data processing apparatus and method | |
| EP3918527A1 (en) | System and method for unsupervised domain adaptation via sliced-wasserstein distance | |
| Zhang et al. | R-CCF: region-aware continual contrastive fusion for weakly supervised object detection: Y. Zhang et al. | |
| Yuan et al. | Local positional graphs and attentive local features for a data and runtime-efficient hierarchical place recognition pipeline | |
| CN116206201A (en) | Monitoring target detection and identification method, device, equipment and storage medium | |
| Luo et al. | Lest: Large-scale lidar semantic segmentation with transformer | |
| Deschamps et al. | Reinforcement-based frugal learning for satellite image change detection | |
| Shakeri et al. | Online loop-closure detection via dynamic sparse representation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20220331 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| P01 | Opt-out of the competence of the unified patent court (upc) registered |
Effective date: 20230525 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
| 17Q | First examination report despatched |
Effective date: 20250901 |