Matching networks are yet another simple and efficient one-shot learning algorithm published by Google's DeepMind. It can even produce labels for the unobserved class in the dataset. Let's say we have a support set, ,containing
examples as
. When given a query point (new unseen example),
, the matching network predicts the class of
by comparing it with the support set.
We can define this as , where
is the parameterized neural network,
is the predicted class for query point
, and
is the support set.
will return the probability of
belonging to each class in the support set. Then we select the class of
as the one that has the highest probability. But how does this work, exactly? How is this probability computed? Let's see that now. The class,
,of the query point,
,can be predicted as follows:

Let's decipher this equation. Here and...