기계 학습에 사용되는 척도를 정리한 ① (Abs, Norm, Coding)

0. 개요



기계 학습에서는 활성화 함수나 손실 함수로 계산 처리를 할 때에 1차 처리로서 변수를 다양한 척도(절대값 등)로 변환하는 경우가 많다. 이번에는 그 변환 방법의 일부를 정리했다.

다른 기사:
기계 학습에서 사용하는 행렬의 단어를 정리한 ①(고유값, 직행 행렬, 정규 직교 기저 등)
기계 학습에서 사용하는 행렬의 단어를 정리한 ② (분산 공분산 행렬, 상관 행렬)

1. Absolute



definition



실수 x의 절대 값은 부호를 무시하여 얻은 음이 아닌 값을 나타냅니다. ABS라고도합니다.
|x|

example


+x = |x| = -x \\
|3| = 3 \\
|-3| = 3 \\
|0| = 0 \\

2. Norm



definition



평면 또는 공간에서 기하학적 벡터의 길이를 일반화합니다. 약해지는 곳, 길이.
경우에 따라서는 절대치나 부가치(부가치, 부가치)라고 불리기도 한다.
||v||

총화 규범 (L1 Norm)



각 차원/변수의 값의 절대 값의 합입니다. 즉, 맨해튼 거리.
||x||_{1} := \left| x_{1}\right|+\ldots +\left| x_{n}\right|

유클리드 놈 (L2 Norm)



유클리드 거리이며, 피타고라스의 정리에 의해 주어진다. 피타고라스 경량이라고도 한다.
||x||_{2} := \sqrt {\left| x_{1}\right| ^{2}+\ldots +\left| x_{n}\right| ^{2}}

유클리드 규범 (직적 공간)



거리 공간, 즉 표준 공간 $ (X, |\bullet | _x) $ 및 $ (Y, |\bullet | _y) $가 주어지면 직적 집합 $ X\times Y $는 다음과 같습니다.
||(x, y)|| := \sqrt {||x||_{X}^{2}+\ldots +||y||_{Y}^{2}} \quad \quad (x\in X, y\in Y)

최대값 규범 (L∞ Norm)


\left\| x\right\| _{\infty } := {\rm max}({\left| x_{1}\right|, \ldots ,\left| x_{n}\right|})

p차 평균 규범


\left\| x\right\| _{p} :=
\left( \sum ^{n}_{i=1}\left| x_{i}\right| ^{p}\right) ^{\dfrac {1}{p}}
= \sqrt [p]{\left| x_{1}\right| ^{p}+\ldots +\left| x_{n}\right| ^{p}}
\quad \quad \{p, \quad {\rm if}(1 \leq p < \inf)

Super script 및 Subscript



위 첨자와 아래 첨자의 차이는 다음과 같습니다.
  • Subscript
  • \left\| x\right\| _{p} :=
    \left( \sum ^{n}_{i=1}\left| x_{i}\right| ^{p}\right) ^{\dfrac {1}{p}}
    
  • Super script 및 Subscript
  • \left\| x\right\|^{p}_{p} := \sum ^{n}_{i=1}\left| x_{i}\right|^{p}
    

    처럼 $p=2$의 경우는 루트를 취할 필요가 없어진다.

    3. Coding



    definition



    부호화, 양자화 등을 이용하여 국소 특징량을 추출하여 적은 특징으로부터 원래의 입력을 재구성하는 코딩에 대하여 설명한다.
    이쪽도 중요한 특징과 중요하지 않은 특징을 어느 척도에 다시 두고 있다고 생각된다.

    Sparse coding



    스파스 코딩은 관측 신호 $x$를 사전이라고 하는 $m$개의 기본 벡터 $\bf{D}=\left[ d_{1}, d_{2},\ldots, d_{m}\right] $ 및 희소 한 가중치 $\bf {W} $를 사용하여 선형 결합하여 복원하는 인코딩 방법입니다.
    y \simeq \bf{DW} 
    

    사전 $D$는 데이터로부터 최적화 계산을 통해 구축한다. 학습 데이터의 수를 $n$, 학습 데이터를 $\bf{X}=\left[ x_{1}, x_{2},\ldots, x_{n}\right]$, 희소한 가중치를 $\bf{W}=\left[ w_{1}, w_{2},\ldots, w_{n}\right]$로 했을 때, 손실 함수는 다음과 같이 된다.
    \bf{W}_{t} = {\rm arg} \min_{\bf{W}} \dfrac{1}{2} ||\bf{x}-\bf{D_{t-1}W}||^{2}_{2} + \lambda||W||_{1}
    

    이것은 $\bf{W}$ 의 갱신식이며, 통상, 이 후에 $\bf{D}_{t}$ 의 최적화도 행해진다. 오른쪽 항은 희소 한계입니다.
    제약항이므로, 오캄의 면도적인 일을 하고 있다. 즉, 보다 적은 가공($\bf{W}$)으로 최적화를 행할 수 있다는 제약이다.

    Hard-assignment coding



    하드 때문에 가중 계수는 One-hot vector가 된다.
    변수는 Sparse coding 설명과 동일합니다.
    w_{ij} = 
    \begin{cases}
    1 \quad {\rm if} \quad j = {\rm arg} \min_{j=1, \ldots, n} || x_i - d_j ||^{2}_{2} {\rm ,}\\
    0 \quad {\rm otherwise}.
    \end{cases}
    

    Soft-assignment coding



    하드라고 One-hot이 되어 버리기 때문에, 특징이 선명해지지만, 애매한 특징을 놓쳐 버린다. 그래서 Soft-assignment의 차례이다.

    변수는 Sparse coding 설명과 동일합니다.
    w_{ij} = 
    \dfrac
    {{\rm exp}(-\beta ||x_i - d_j||^2_2)}
    {\sum^{n}_{k=1} {\rm exp}(-\beta ||x_i - d_k||^2_2)}
    

    $\beta$는 평활화의 정도이다.
    따라서 오차를 합계로 나누면 오차 비율을 계산할 수 있습니다.
    다시 말해, 어떤 $x_i$에 대해, 어느 $d_k$가 가장 관련도가 강한가의 계산이 된다.

    example



    $x_1 = 6$, $\bf{D}=\left[5, 10, 15\right]$, $\beta=0.01$의 조건으로 계산하면 다음과 같다.


    또한, $w_{11}$는 다음과 같이 계산된다.
    w_{11} = 
    \dfrac
    {{\rm exp}(-\beta ||x_i - d_j||^2_2)}
    {\sum^{n}_{k=1} {\rm exp}(-\beta ||x_i - d_k||^2_2)}
    =
    \dfrac
    {{\rm exp}(-0.01 ||6 - 5||^2_2)}
    {{\rm exp}(-0.01 ||6 - 5||^2_2) + {\rm exp}(-0.01 ||6 - 10||^2_2) + {\rm exp}(-0.01 ||6 - 15||^2_2)}
    

    $\beta=0.1$로 하면 평활화가 약해지고 이하와 같다.


    $x_1 = 6$는 $w_{11}$에서 $d_1$가 가장 관련도가 높다는 것이다.

    좋은 웹페이지 즐겨찾기