SYSTEMS AND METHODS FOR LEARNING RICH NEAREST NEIGHBOR REPRESENTATIONS FROM SELF-SUPERVISED ENSEMBLES
Embodiments described herein provide a system and method for extracting information. The system receives, via a communication interface, a dataset of a plurality of data samples. The system determines, in response to an input data sample from the dataset, a set of feature vectors via a plurality of pre-trained feature extractors, respectively. The system retrieves a set of memory bank vectors that correspond to the input data sample. The system, generates, via a plurality of Multi-Layer-Perceptrons (MLPs), a mapped set of representations in response to an input of the set of memory bank vectors, respectively. The system determines a loss objective between the set of feature vectors and the combination of the mapped set of representations and a network of layers in the MLP. The system updates, the parameters of the plurality of MLPs and the parameters of the memory bank vectors by minimizing the computed loss objective.
1 . A method for training a model for computing an ensemble vector representation of a plurality of pre-trained feature extractors comprising:
receiving, via a communication interface, a dataset of a plurality of data samples;
determining, in response to a sample from the dataset, a set of feature vectors via a plurality of pre-trained feature extractors, respectively;
retrieving a memory bank vector that is initialized corresponding to the plurality of data samples from the dataset;
mapping, via a plurality of Multi-Layer-Perceptron (MLPs), the memory bank vector into a plurality of mapped representations, respectively;
computing a loss objective between the set of feature vectors and the plurality of mapped representations; and
updating the plurality of MLPs and the memory bank vector based on the computed loss objective.
2 . The method of claim 1 , wherein the plurality of pre-trained feature extractors is selected from one or more of the pre-trained feature extractors that include different head architectures.
3 . The method of claim 1 , wherein the plurality of pre-trained feature extractors is selected from one or more of the pre-trained feature extractors that are trained on different objectives.
4 . The method of claim 1 , wherein the dataset includes a plurality of images.
5 . The method of claim 1 , wherein the dataset includes a plurality of text documents or a plurality of audio files.
6 . The method of claim 1 , wherein the dataset includes a plurality of point clouds or polygon meshes.
7 . The method of claim 1 , wherein the method further comprises:
freezing the parameters of the plurality of updated MLPs.
8 . A method for computing via a trained model an ensemble vector representation of a plurality of pre-trained feature vectors comprising:
receiving, via a communication interface, an interpretation data sample;
determining, in response to the interpretation data sample, a set of feature vectors via a plurality of pre-trained feature extractors, respectively;
determining an average of the set of feature vectors;
mapping, via a plurality of Multi-Layer-Perceptron (MLPs), the initialized memory bank vector into a plurality of mapped representations, respectively;
computing a loss objective between the set of feature vectors and the plurality of mapped representations; and
updating the initialized memory bank vector based on the computed loss objective while freezing the plurality of MLPs.
9 . The method of claim 8 , wherein the plurality of pre-trained feature extractors is selected from one or more of the pre-trained feature extractors that are trained on different objectives.
10 . The method of claim 8 , wherein the data sample includes a plurality of images.
11 . The method of claim 8 , wherein the data sample includes a plurality of text documents or a plurality of audio files.
12 . The method of claim 8 , wherein the data sample includes a plurality of point clouds or polygon meshes.
13 . A system for training a model for computing an ensemble of unsupervised vector representations, the system comprising:
a communication interface for receiving a query for information;
a memory storing a plurality of machine-readable instructions; and
a processor reading and executing the instructions from the memory to perform operations comprising:
receive, via a communication interface, a dataset of a plurality of data samples;
determine, in response to an input data sample from the dataset, a set of feature vectors via a plurality of pre-trained feature extractors, respectively;
retrieve a set of memory bank vectors that correspond to the input data sample;
generate, via a plurality of Multi-Layer-Perceptrons (MLPs), a mapped set of representations in response to an input of the set of memory bank vectors, respectively;
compute a loss objective between the set of feature vectors and the combination of the mapped set of representations and a network of layers in the MLP; and
update the plurality of MLPs and the memory bank vectors by minimizing the computed loss objective.
14 . The system of claim 11 , wherein the plurality of pre-trained feature extractors is selected from one or more of the pre-trained feature extractors that include different head architectures.
15 . The system of claim 11 , wherein the plurality of pre-trained feature extractors is selected from one or more of the pre-trained feature extractors that are trained on different objectives.
16 . The system of claim 12 , wherein the dataset includes a plurality of images.
17 . The system of claim 12 , wherein the dataset includes a plurality of text documents or a plurality of audio files.
18 . The system of claim 12 , wherein the dataset includes a plurality of point clouds or polygon meshes.
19 . The system of claim 12 , wherein the plurality of pre-trained feature extractors is selected from a plurality of convolutional neural network.
20 . The system of claim 11 , including further instructions to perform operations comprising:
freezing, the parameters of the plurality of updated MLPs;
receiving, via a communication interface, an interpretation data sample;
determining, in response to the interpretation data sample, a set of feature vectors via a plurality of pre-trained feature extractors, respectively;
updating the memory bank vector using an average of the set of feature vectors;
mapping, via a plurality of Multi-Layer-Perceptron (MLPs), the initialized memory bank vector into a plurality of mapped representations, respectively;
computing a loss objective between the set of feature vectors and the plurality of mapped representations; and
updating the initialized memory bank vector based on the computed loss objective while freezing the plurality of MLPs.