Metric Learning 1
๋ณธ ๊ธ์ 2020-2ํ๊ธฐ โ์ปดํจํฐ ๋น์ โ ์์ ์ ๋ด์ฉ์ ๊ฐ์ธ์ ์ผ๋ก ์ ๋ฆฌํ ๊ฒ์ ๋๋ค. ์ง์ ์ ์ธ์ ๋ ํ์์ ๋๋ค :)
keywords
- Metric
- semantic distance
- Mahalanobis Distance
- Metric Learinng: a fist approach
- LMNN
What is a Metric
?
Metric์ ์งํฉ ์์ ์๋ ๋ชจ๋ ์์ ์ฌ์ด์ ๊ฑฐ๋ฆฌdistance๋ฅผ ์์นํํ๋ ํจ์function์ด๋ค.
์ผ๋ฐ์ ์ผ๋ก Euclid distance, Manhattan distance, cosine similarity ๋ฑ์ด Metric function์ผ๋ก ์ฐ์ธ๋ค.
Metric ๋ ๋์ ์ฌ์ด์ distance๋ฅผ ์ธก์ ํ๋ ๊ฒ์ด์ง๋ง, ๋ฐ๋๋ก ์๊ฐํ๋ฉด ๋ ๋์ ์ฌ์ด์ ์ ์ฌ๋similarity๋ฅผ ๋ฐ์ง๋ ๋ฐ์๋ ์ฌ์ฉํ ์ ์๋ค!
์ผ๋ฐ์ ์ธ Metric์ด ๋ ๋์ ์ฌ์ด์ ๊ธฐํํ์ ํน์ง์ ์ด์ฉํด ๊ฑฐ๋ฆฌ๋ฅผ ๋ถ์ฌํ๋ค๋ฉด, ์ปดํจํฐ ๋น์ , ๊ทธ ์ค์์๋ Metric Learning์ ๋ ๋์ ์ฌ์ด์ semantic distance์ ์ฃผ๋ชฉํ๋ค!
Pairwise vs. Triplet
Metric์ ํ์ต ๋ฐฉ๋ฒ์๋ ํฌ๊ฒ ๋ ๊ฐ์ง ์ ๊ทผ์ด ์๋ค.
Pairwise
๋ ผ์์ ํธ์๋ฅผ ์ํด ๋์ $\{ x_1, x_2, x_3 \}$์ ๋ํ Metric์ ํ์ตํ๋ค๊ณ ๊ฐ์ ํ์.
์ฐ๋ฆฌ์ ๋ชฉํ๋ ๋ ํจ์ $D$์ $f$๋ฅผ ํ์ตํ๋ ๊ฒ์ด๋ค.
ํจ์ $D$๋ ๋ ์ ๋ ฅ์ ๋ฐ์ ๋ ์ ๋ ฅ ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ฐํํ๋ค.
\[D(x, y) = \textrm{distance btw two objects}\]ํจ์ $f$๋ ๋์์์ feature๋ฅผ ์ถ์ถํ๋ feature extractor์ด๋ค.
\[f(x) = \textrm{feature vector}\]์ด์ ๋ ํจ์ $D$, $f$๋ฅผ ์ ์กฐํฉํด ๋ค์์ Pairwise relation์ ํ์ต์ํจ๋ค๊ณ ํ์.
\[D(f(x_1), f(x_2)) \downarrow \quad D(f(x_1), f(x_3)) \uparrow\]์ฆ, Metric Learning๊ฐ ๋ ๋์์ extracted feature์ ๊ฐ์ ์ต๋ํ ๋ฎ์ถ๋ ๊ฒ์ ๋ชฉํ๋ก ํ๋ค๋ ๋ง์ด๋ค.
Loss minimization๊ณผ ๋น์ทํ ๋งฅ๋ฝ์ด๋ค.
Triplet
๋ฐ๋ฉด์ Triplet์ ์๋์ ๊ฐ์ relation์ ํ์ต์ํจ๋ค.
\[D(f(x_1), f(x_2)) < D(f(x_1), f(x_3))\]์ฆ, ๋์ ์ฌ์ด์ ์์นํ๋ ๊ฑฐ๋ฆฌ๊ฐ์ ์ค์ด๊ฑฐ๋ ๋๋ฆฌ๋ ๊ฒ์ด ์๋๋ผ, ๊ฑฐ๋ฆฌ๊ฐ์ ๋์ ๊ด๊ณ๋ฅผ ํ์ตํ๋ ๊ฒ์ ๋ชฉํ๋ก ํ๋ค.
Triplet relation์ ํ์ต์ํค๋ ๊ฒ์ ๋จ์ํ ๋ค์ ๊ด๊ณ๋ง ๋ง์กฑ์ํค๋ฉด ๋๊ธฐ ๋๋ฌธ์ Pairwise relation์ ํ์ต์ํค๋ ๊ฒ๋ณด๋ค ๋ ์ ์ฐflexibleํ๋ค๊ณ ํ๋ค.
์ข ํฉํ์๋ฉด, Metric Learning์ ์ฃผ์ด์ง ๋ฐ์ดํฐ์ ์์ ํจ์ $D$, $f$๊ฐ pairwise relation ๋๋ triplet relation์ ์ ์ถ๋ ฅํ๋๋ก ํ์ต์ํค๋ ๋ถ์ผ๋ค.
Classical Metric Learning
Deep Learning ์ด์ ์ Metric Learning์ ๋ํ ๋ถ๋ถ์ด๋ค.
์ค์ ์ฐ๊ตฌ์์๋ ์ ์ฐ๊ฒ ์ง๋ง, ๊ณ ์ ์ ์ธ ๋ฐฉ๋ฒ์ ์ง๊ธ์ DL ๊ธฐ๋ฐ ๋ฐฉ๋ฒ๋ค์ ์ด๋์ด๋ด๋ ๋๊ธฐ๋ฅผ ๋ถ์ฌํ๊ณ , DL ๊ธฐ๋ฐ ์ ๊ทผ์ ์๊ฐ์ ์ค๋ค.
Mahalanobis Distance
๋ ์ ์ ๋ํ Euclidean metric $D_E$๋ ์๋์ ๊ฐ์ด ์ ์ํ๋ค.
\[D_E(\mathbf{x}, \mathbf{y}) = \sqrt{(\mathbf{x}-\mathbf{y})^T (\mathbf{x}-\mathbf{y})}\]์ด๋, Mahalanobis distance $D_M$์ ์๋์ ๊ฐ์ด ์ ์ํ๋ค.
\[D_M(\mathbf{x}, \mathbf{y}) = \sqrt{(\mathbf{x}-\mathbf{y})^T M (\mathbf{x}-\mathbf{y})}\]์๋ฃ๋ฅผ ๋ ์ฐพ์๋ณด๋, Mahalanobis distance๋ multi-variate distribution์์ ๊ฑฐ๋ฆฌ๋ฅผ ์ฌ๋ ์ข์ ๋๊ตฌ๋ผ๊ณ ํ๋ค.
multi-variate distribution ์์ ํ ์ ์ $\mathbf{x}$๋ผ๊ณ ํ๊ณ , distribution์ ํ๊ท ์ $\mu$, ๋ถ์ฐ์ $\Sigma$๋ผ๊ณ ํ์ ๋ Mahalanobis distance๋ ์๋์ ๊ฐ๋ค.
\[D_{\Sigma}(\mathbf{x}, \mu) = \sqrt{(\mathbf{x}-\mu)^T \, {\Sigma^{-1}} \, (\mathbf{x}-\mu)}\]ํฅ๋ฏธ๋ก์ด ์ ์ multi-variate normal distribution $\mathcal{N}(\mathbf{x})$์๋ Mahalanobis distance๊ฐ ๋ฑ์ฅํ๋ค.
\[\begin{aligned} \mathcal{N}(\mathbf{x}) &= \frac{1}{\sqrt{(2\pi)^k \lvert \Sigma \rvert}} \exp{\left( - \frac{1}{2} (\mathbf{x}-\mu)^T \, {\Sigma^{-1}} \, (\mathbf{x}-\mu) \right)} \\ &= \frac{1}{\sqrt{(2\pi)^k \lvert \Sigma \rvert}} \exp{\left( - \frac{1}{2} {\left(D_{\Sigma}\right)}^2 \right)} \end{aligned}\]Mahalanobis distance $D_M$์์ ์ฃผ๋ชฉํ ์ ์ ํ๋ ฌ $M$์ ํ์ต์ํฌ ์ ์๋คlearnable๋ ๊ฒ์ด๋ค!
์ฐ๋ฆฌ๋ ์ฃผ์ด์ง ๋ฐ์ดํฐ์ ์ผ๋ก๋ถํฐ $M$์ ํ์ต์ํค๊ฒ ๋๋๋ฐ,1 ๊ฐ์ฅ ์ง๊ด์ ์ด๊ณ unsupervised ๋ฐฉ๋ฒ์ ๋ฐ์ดํฐ์ ์ covariance matrix $\Sigma$๋ฅผ ๊ตฌํด ๊ทธ๊ฒ์ ์ญํ๋ ฌ์ $M$์ผ๋ก ์ผ๋ ๊ฒ์ด๋ค. $M={\Sigma}^{-1}$
์์ ์์๋ Mahalanobis distance์ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ์๋ค.
- A first approach to distance metric learning
- Large Margin Nearest Neighbor(LMNN)
A first approach to distance metric learning
๋ฐ์ดํฐ์ ์์ pair๋ฅผ ๋ฐํ์ผ๋ก ๋ ์งํฉ $S^{+}$, $S^{-}$๋ฅผ ๋ง๋ ๋ค.
\[\begin{aligned} S^{+} &= \textrm{The set of similar pairs} \\ S^{-} &= \textrm{The set of disimilar pairs} \end{aligned}\]๊ทธ๋ฆฌ๊ณ ์๋์ ๊ฐ์ด ์ต์ ํ ๋ฌธ์ ๋ฅผ ๊ตฌ์ฑํ๋ค.
\[M^{*} = \underset{M}{\textrm{argmin}} \sum_{\left(\mathbf{x}_i, \mathbf{x}_j\right) \in S^{+}} (\mathbf{x}_i - \mathbf{x}_j)^{T} \, M \, (\mathbf{x}_i - \mathbf{x}_j)\]๋น์ฐํ $S^{+}$์ ์ํ๋ pair $(\mathbf{x}_i, \mathbf{x}_j)$์ ๋ํ ๊ฑฐ๋ฆฌ๊ฐ์ ์์์ผ ํ๋ค.
์ด๋, ์์ ์ต์ ํ ๋ฌธ์ ์์ $S^{-}$๋ฅผ ๊ณ ๋ คํ constraint๋ฅผ ์ถ๊ฐํด์ค๋ค!
\[\begin{aligned} M^{*} &= \underset{M}{\textrm{argmin}} \sum_{\left(\mathbf{x}_i, \mathbf{x}_j\right) \in S^{+}} (\mathbf{x}_i - \mathbf{x}_j)^{T} \, M \, (\mathbf{x}_i - \mathbf{x}_j) \\ & \textrm{s.t.} \; \sum_{\left(\mathbf{x}_i, \mathbf{x}_j\right) \in S^{-}} (\mathbf{x}_i - \mathbf{x}_j)^{T} \, M \, (\mathbf{x}_i - \mathbf{x}_j) \ge 1 \end{aligned}\]์ฆ, $S^{-}$์ ์ํ๋ pair $(\mathbf{x}_i, \mathbf{x}_j)$์ ๋ํ ๊ฑฐ๋ฆฌ๊ฐ์ ์ด๋ ์ ๋ -Margin- ๋งํผ์ ๋ณด์ฅ๋์ด์ผ ํ๋ค๋ ๊ฒ์ด๋ค.
์ด ๋ฐฉ์์ผ๋ก ์ต์ ํ ๋ฌธ์ ๋ฅผ ํ์ด์ $M^{*}$์ ๊ตฌํ๋ค๋ฉด, Mahalanobis distance๋ ๋ฐ์ดํฐ์ ์ ์๋์ ๊ฐ์ด ์ ๋ถํ ํ๊ฒ ๋๋ค.
"Distance metric learning with application to clustering with side-information", NIPS 2002
Large Margin Nearest Neighbor
Large Margin Nearest Neighbor, ์ค์ฌ์ LMNN์ ๊ฒฝ์ฐ ์ข๋ ๋ณต์กํ ํํ์ Objective function์ ์ฑ์ฉํ๋ค. ํ๋ฒ ์ดํด๋ณด์!
๋จผ์ $S^{+}$์ ๋ํ ๋ถ๋ถ์ ์ดํด๋ณด์. LMNN๋ ๋ง์ฐฌ๊ฐ์ง๋ก positive pair์ ๊ฑฐ๋ฆฌํฉ์ด ์ต์๊ฐ ๋๋ ๊ฒ์ ๋ชฉํ๋ก ํ๋ค.
\[\begin{aligned} M^{*} &= \underset{M}{\textrm{argmin}} \sum_{i, j} \eta_{ij} \cdot {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 \\ & \textrm{where} \\ & \eta_{ij} = \begin{cases} 1, \quad (\mathbf{x}_i, \mathbf{x}_j) \in S^{+}\\ 0, \quad (\mathbf{x}_i, \mathbf{x}_j) \in S^{-} \end{cases} \end{aligned}\]$\eta_{ij}$๋ผ๋ indicator variable์ ๋์ ํด positive pair์ ๊ฑฐ๋ฆฌํฉ์ ์ต์ํํ๋๋ก ๋์์ธ ํ๋ค.
์ฌ๊ธฐ์ ๋๋๋๊ฒ ์๋๋ผ $S^{-}$์ ๋ํ ๋ถ๋ถ๋ ๊ณ ๋ คํ ํ ์ ์ถ๊ฐํด์ค๋ค. ํด๋น ํ ๋ง ๋ฐ๋ก ์์ฑํด๋ณด๋ฉด ์๋์ ๊ฐ๋ค.
\[\sum_{i, j, k} \eta_{ij}(1-\eta_{ij}) \cdot h\left[ 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 - {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \right]\]์ ํ ์ ์ธ ์ $\{\mathbf{x}_i, \mathbf{x}_j, \mathbf{x}_k\}$์ ๋ํ Triplet relation์ ๊ณ ๋ คํ๋ ํ ์ผ๋ก $(\mathbf{x}_i, \mathbf{x}_j) \in S^{+}$์ด๊ณ , $(\mathbf{x}_i, \mathbf{x}_k) \in S^{-}$์ผ ๋๋ฅผ ๊ณ ๋ คํ๋ค.
์ด๋, $h\left[ 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 - {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \right]$๋ hinge function์ผ๋ก ์๋์ ๊ฐ๋ค.
\[h\left[ 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 - {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \right] \\ = \max \left(0, 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 - {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \right)\]์ด hinge function์ ๊ฐ์ ์ต์ํํ๋ ค๋ฉด $1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 - {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \le 0$ ์ด ๋์ด์ผ ํ๋ค. ๊ทธ๋์ผ hinge function์ ๊ฐ์ด 0์ด ๋๊ธฐ ๋๋ฌธ์ด๋ค.
์ด๊ฒ์ ๋ค์ ์ฐ๋ฉด
\[\begin{aligned} 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 - {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 & \le 0 \\ 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 & \le {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \end{aligned}\]์ ์กฐ๊ฑด์ ๋ง์กฑํด์ผ ํ๋ ๊ฒ์ด ๋๋ค.
์ด๊ฒ์ negative-pair dist๊ฐ positive-pair dist๋ณด๋ค Margin $1$ ๋งํผ ๋ ๋ฉ๋ฆฌ์๋๋ก ๋ง๋ ๋ค. ์ฆ,
\[\begin{aligned} 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 & \le {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \\ \textrm{Margin} + \left(\textrm{positive-pair dist}\right)^2 & \le \left(\textrm{negative-pair dist}\right)^2 \end{aligned}\]์ด์ Pairwise ํ ๊ณผ Triplet ํ ์ ์ข ํฉํ๋ฉด ์๋์ ๊ฐ๋ค.
\[M^{*} = \underset{M}{\textrm{argmin}} \left\{ \sum_{i, j} \eta_{ij} \cdot {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 \right\} + c \left\{ \sum_{i, j, k} \eta_{ij}(1-\eta_{ij}) \cdot h\left[ 1 + {D_M\left(\mathbf{x}_i, \mathbf{x}_j\right)}^2 - {D_M\left(\mathbf{x}_i, \mathbf{x}_k\right)}^2 \right] \right\}\]์ฆ,
1. pair $(\mathbf{x}_i, \mathbf{x}_j)$๊ฐ positive-pair๋ผ๋ฉด, ๋ ์ ์ ๊ฑฐ๋ฆฌ๊ฐ์ ์ค์ฌ ์๋ก ๊ฐ๊น์์ง๋๋ก ๋์ด๋น๊ธด๋ค; Pull
2. pair $(\mathbf{x}_i, \mathbf{x}_k)$๊ฐ negative-pair๋ผ๋ฉด, ๋ ์ ์ ๊ฑฐ๋ฆฌ๊ฐ์ positive-pair์ ๊ฐ์ฅ ํฐ ๊ฑฐ๋ฆฌ๊ฐ๋ณด๋ค 1 ๋งํผ์ ์ฌ์ Margin๋ฅผ ๋๊ณ ๋ฉ์ด์ง๋๋ก ๋ฐ์ด๋ธ๋ค; Push
์ฒ์์ ์๋์ ๋น๊ตํ์ ๋, LMNN๋ ์ข๋ ๋์ ์ด๋ผ๊ณ ๋งํ ์ ์๋ค.
์์ ์๋์์ negative-pair์ ๋ํด ๊ฑฐ๋ฆฌ๊ฐ์ด $1$์ด๋ผ๋ ์ง์ ๋ ๊ฐ๋ณด๋ค ํฌ๊ธฐ๋ง ํ๋ฉด ์ถฉ๋ถํ๋ค. ๊ทธ๋ฌ๋ ์ด๋ฐ ์ ๊ทผ์ ํ์ ์ด ์๋๋ฐ, positive-pair์ ๊ฑฐ๋ฆฌ๊ฐ์ด ๋์ ํ 1๋ณด๋ค ์ขํ์ง์ง ์์ ์๋ ์๋ค๋ ๊ฒ์ด๋ค; positive-pair์ ๋ํด์ constraint๋ฅผ ๋ง์กฑํ๋ฉด์ ๊ฑฐ๋ฆฌํฉ์ด ์ค์ด๋ค๊ธฐ๋ง ํ๋ฉด ๋๋ค๋ ์ ์ ์๊ธฐํ๋ผ.
๊ทธ๋์ negative-pair๊ฐ positive-pair๋ณด๋ค ๋ ๊ฐ๊น์ด ์์นํ๋ ์ํฉ์ด ์ถฉ๋ถํ ๊ฐ๋ฅํ๋ค๋ ์ ์ด ํ์ ์ผ๋ก ์ง์ ๋ฐ๋๋ค.
LMNN์์ ์ด๊ฒ์ ๊ทน๋ณตํด negative-pair๊ฐ positive-pair๋ณด๋ค Margin $1$๋งํผ ๋จ์ด์ง๋๋ก ์ต์ ํํ๋ค.
์ด๋, negative-pair์ ๊ฑฐ๋ฆฌ๊ฐ์ ๊ธฐ์ค์ด ๋๋ positive-pair์ ๊ฑฐ๋ฆฌ๊ฐ์ด ๊ณ ์ ๋ ๊ฒ์ด ์๋๋ผ ๋์ ์ผ๋ก ๋ณํ๊ธฐ ๋๋ฌธ์ LMNN์ ๋ ๋์ ์ผ๋ก ์๋ํ๋ค๊ณ ํ๊ฐํ๋ค.
Metric Learning + DL
\[D_M (\mathbf{x}_i, \mathbf{x}_j) = \sqrt{(\mathbf{x}_i - \mathbf{x}_j)^T M (\mathbf{x}_i - \mathbf{x}_j)}\]๊ณ ์ ์ ์ธ Metric Learning์์ Mahalanobis distance์ $M$ ๊ฐ์ ๊ตฌํ๋ ์ต์ ํ ๋ฌธ์ ์ ์ง์คํ๋ค.
\[D\left(f(\mathbf{x}_i), f(\mathbf{x}_j)\right)\]๊ณ ์ ์ ์ธ ๋ฐฉ๋ฒ์์๋ feataure extractor $f$๋ฅผ ์ฌ์ฉํ๊ธฐ๋ ํ์ง๋ง, ์ด๋ฏธ์ง ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํ๊ฑฐ๋, ์ง์ ๋์์ธํ Image descriptor๋ฅผ ์ฌ์ฉํ๋ค.
Metric Learning์์ DL์ด ๋์ ๋๊ณ ๋ถํฐ๋ distance metric์ ํ์ตํ๋ ๊ฒ ์๋๋ผ, feature extractor $f$๋ฅผ ํ์ต์ํค๋ ๋ฐฉํฅ์ผ๋ก ๋ฐ์ ํด์๋ค.
๋ค์ ํฌ์คํธ์์ DL์ ๋ฐํ์ผ๋ก ํ๋ Metric Learning์ ๋ํด ์ ๋ฆฌํ๋ค.
-
์ ์ํ ์ ์ $M$๋ positive semi-definite matrix์ฌ์ผ ํ๋ค๋ ์ ์ด๋ค. ์ด ์กฐ๊ฑด์ ๋ง์กฑํ์ง ์๋๋ค๋ฉด, ๋ณต์์์ธ Mahalanobis dist๋ฅผ ์ป๋๋คโฆย ↩