Invariant Information Clustering for Unsupervised Image Classification and Segmentation

1807.06653v4.pdf

Invariant Information Clustering for Unsupervised Image Classification and Segmentation-ReadPaper论文阅读平台

GitHub - xu-ji/IIC: Invariant Information Clustering for Unsupervised Image Classification and Segmentation

Abstract

本文提出Invariant Information Clustering (IIC), 也是把无监督学习转化为了一个classification的问题, 可以用于图像级分类以及像素级分类. 在图像级分类中, 网络输出样本分类的概率值, 最大化正例图像之间分类的互信息. 在像素级分类中, 使用图像Patch预测像素的分类(即使用CNN), 最大化两个临近像素之间分类的互信息.

Untitled

Method

$x,x′$ 是成对的输入,神经网络 $Φ$ 进行表示学习,我们希望这个网络保留它们之间的共同之处,丢弃instance-specific的细节. 前者使用最大化网络输出的互信息 $\max _ { \Phi } I \left( \Phi ( \mathbf { x } ) , \Phi \left( \mathbf { x } ^ { \prime } \right) \right)$ 来实现, 就是最大化 $Φ(x )$ 与 $Φ(x')$ 之间的可预测性 , 后者可以是一个 "bottleneck", 强迫网络丢弃 instance-specific 信息, 这里使用软聚类方式实现, 即网络通过一个softmax, 得到每个类别的概率值 $P ( z = c \mid \mathbf { x } ) = \Phi _ { c } ( \mathbf { x } )$.

<aside> 💡 overclustering

trained to produce an result, which has same loss function but greater number of clusters than the ground truth.

</aside>

我们可以得到一批 Batch Size 为 $M$ 的数据的 joint probability 矩阵 $P$:

$$ \mathbf { P } = \frac { 1 } { M } \sum _ { i = 1 } ^ { M } \Phi \left( \mathbf { x } _ { i } \right) \cdot \Phi \left( \mathbf { x } _ { i } ^ { \prime } \right) ^ { \top } $$

为了矩阵的对称性, 我们使用的矩阵 $P$ 实际为 $\left( \mathbf { P } + \mathbf { P } ^ { \top } \right) / 2$.

目标函数就是最大化:

$$ I \left( z , z ^ { \prime } \right) = I ( \mathbf { P } ) = \sum _ { c = 1 } ^ { C } \sum _ { c ^ { \prime } = 1 } ^ { C } \mathbf { P } _ { c c ^ { \prime } } \cdot \ln \frac { \mathbf { P } _ { c ^ { \prime } } } { \mathbf { P } _ { c } \cdot \mathbf { P } _ { d ^ { \prime } } } \\ \mathbf { P } _ { c c ^ { \prime } } = P \left( z = c , z ^ { \prime } = c ^ { \prime } \right), \mathbf { P } _ { c } = P ( z = c ),\mathbf { P } _ { c' } = P ( z' = c' ) $$

<aside> 💡 互信息与条件熵:

概率论复习

</aside>

为了方便观察,我们先把 $I(z,z′)$ 写开:

$$ I \left( z , z ^ { \prime } \right) = H ( z ) - H \left( z \mid z ^ { \prime } \right) $$

这就体现了一个tradeoff,最大化前者,最小化后者。前者的最大化是 $\ln ⁡C$ ,当所有的clusters等概率地assign时,可取得。那后者什么时候取最小值0呢,就是当cluster assignment彼此之间可以准确地预测时,也就是它们俩的cluster assignment是一样的时候,换句话说,它们的representation在空间上的距离很近时.

<aside> 💡 与 Barlow Twins 不一致的是, Barlow Twins 优化的 joint probability 矩阵 $P$ 是图像级的, $P_{i,j}$ 是图像 $i$ 与 图像 $j$ 的相关性. 而 IIC 中的 $P_{i,j}$ 为图像 $x$ 预测类别 $C_i$ 的概率与图像 $x'$ 预测类别 $C_j$ 的概率.

Untitled

对比学习(Contrastive Learning): 研究进展精要

</aside>