맨위로가기

자기조직화 지도

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

자기조직화 지도(SOM)는 인공 신경망의 한 종류로, 고차원 데이터를 저차원 공간으로 매핑하여 시각화하고 데이터의 특징을 추출하는 데 사용된다. SOM은 뇌의 시각 피질의 자기 조직화 방식을 모방하여, 입력 데이터에 가장 가까운 뉴런을 찾아 해당 뉴런과 이웃 뉴런의 가중치를 조정하는 경쟁 학습 방식을 사용한다. 온라인 학습과 배치 학습 방식이 있으며, U-Matrix, 히트맵 등을 통해 SOM의 결과를 해석하고 시각화할 수 있다. SOM은 차원 축소, 군집화, 위상 보존 등의 특징을 가지며, 프로젝트 우선순위 결정, 지진 분석, 고장 모드 분석 등 다양한 분야에 활용된다. GTM, GSOM, 탄성 지도 등 다양한 확장 및 변형이 이루어졌다.

2. 역사적 배경

자기조직화 지도는 입력층과 경쟁층(출력층)으로 구성된 2층 구조의 비지도 학습 신경망이다. 입력은 수치 데이터이며, 출력은 경쟁층에 배치된 노드가 된다. 경쟁층의 노드 배치 차원은 자유롭게 설정할 수 있는데, 가장 기본적인 활용법은 2차원 위에 노드를 배치하고, 고차원 데이터를 학습시켜 고차원 데이터의 관계성을 시각화하는 것이다. 이처럼 자기조직화 지도는 고차원 데이터 간에 존재하는 비선형 관계를 간단하게 기하학적 관계를 갖는 이미지로 변환할 수 있다.[1]

현재 자기조직화 지도에는 다양한 변형이 있으며, 기존의 자기조직화 지도를 기본 SOM (Basic SOM, BSOM)이라고 부르기도 한다. 하지만 BSOM이라는 약칭은 배치 학습 SOM (Batch Learning SOM, BL-SOM)과 혼동될 수 있으므로 바람직하지 않다.[1]

2. 1. 초기 모델

자기조직화 지도는 대뇌 피질의 시각야가 기둥 구조를 가지며, 이 구조가 학습에 의해 얻어진다는 점을 모델화한 것이다. 1976년 Willshaw와 Von Der Malsburg에 의해 제안되었다.

2. 2. 코호넨의 공헌

1976년 Willshaw와 Von Der Malsburg는 대뇌 피질 시각야에서의 기둥 구조 자기 조직화를 모델화한 자기조직화 지도를 제안했다. 이 기둥 구조는 생득적인 것이 아니라 학습에 의해 얻어지는 것이다.

3. 알고리즘

자기 조직화 지도(SOM)는 훈련과 매핑이라는 두 가지 모드로 작동한다. 훈련은 입력 데이터 집합을 사용하여 입력 데이터의 저차원 표현(지도 공간)을 생성하고, 매핑은 생성된 지도를 사용하여 추가 입력 데이터를 분류한다.[5]

훈련의 목표는 ''p'' 차원의 입력 공간을 2차원의 지도 공간으로 표현하는 것이다. 지도 공간은 2차원의 육각형 또는 직사각형 그리드로 배열된 "노드" 또는 "뉴런"으로 구성된다.[5] 각 노드는 입력 공간에서 해당 노드의 위치를 나타내는 "가중치" 벡터와 연관되어 있다. 지도 공간의 노드는 고정되어 있지만, 훈련은 가중치 벡터를 입력 데이터 쪽으로 이동(예: 유클리드 거리 감소)시키는 방식으로 이루어진다.

훈련 후에는 가중치 벡터가 입력 공간 벡터에 가장 가까운 노드를 찾아 추가적인 입력 데이터를 분류할 수 있다.

SOM 알고리즘에는 온라인 학습 모델과 배치 학습 모델이 있다. 온라인 학습 모델은 데이터가 입력될 때마다 학습이 이루어지며, 최근에 입력된 데이터에 더 큰 가중치를 부여한다. 각 뉴런의 초기값은 무작위로 설정된다. 반면, 배치 학습 모델은 모든 데이터를 분류한 후 한 번에 학습을 진행한다.

SOM의 실제 학습 과정은 벡터 양자화를 참고한다.

3. 1. 학습 단계

자기조직화 지도(SOM)는 훈련과 매핑이라는 두 가지 모드로 작동한다. 훈련은 입력 데이터를 사용하여 저차원 표현(지도 공간)을 생성하고, 매핑은 생성된 지도를 사용하여 추가 입력 데이터를 분류한다.[5]

학습 목표는 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 하는 것이다. 이는 대뇌 피질에서 시각, 청각 등의 감각 정보가 별도 부분에서 처리되는 방식에서 부분적으로 영감을 받았다.[6]

자기 조직화 맵의 학습 그림. 파란색 덩어리는 학습 데이터의 분포이며, 작은 흰색 원반은 해당 분포에서 추출된 현재 학습 데이터이다. 처음에는 (왼쪽) SOM 노드가 데이터 공간에 임의로 배치된다. 학습 데이터에 가장 가까운 노드 (노란색으로 강조 표시됨)가 선택된다. 그리드의 이웃과 마찬가지로 학습 데이터를 향해 이동한다. 여러 반복 후에 그리드는 데이터 분포를 근사하는 경향이 있다 (오른쪽).


2차원 데이터 집합에 대한 SOM의 학습 과정


뉴런의 가중치는 작은 임의 값으로 초기화되거나, 두 개의 가장 큰 주성분 고유 벡터로 구성된 하위 공간에서 균등하게 샘플링된다. 후자의 경우 초기 가중치가 이미 SOM 가중치를 잘 근사하기 때문에 학습이 훨씬 빠르다.[7]

학습은 경쟁 학습을 활용한다. 학습 예제가 네트워크에 제공되면, 모든 가중치 벡터에 대한 유클리드 거리가 계산된다. 입력과 가중치 벡터가 가장 유사한 뉴런을 '''최적 적합 유닛'''(BMU)이라고 한다. SOM 그리드에서 BMU와 그 근처 뉴런의 가중치는 입력 벡터를 향해 조정된다. 변경 크기는 시간과 BMU로부터의 그리드 거리에 따라 감소한다.

가중치 벡터 '''Wv'''(s)를 가진 뉴런 v의 업데이트 공식은 다음과 같다.

:W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))

여기서,

  • ''s''는 단계 인덱스
  • ''t''는 학습 샘플의 인덱스
  • ''u''는 입력 벡터 '''D'''(''t'')에 대한 BMU의 인덱스
  • ''α''(''s'')는 단조 감소 학습 계수
  • ''θ''(''u'', ''v'', ''s'')는 뉴런 u와 단계 ''s''의 뉴런 ''v'' 사이의 거리를 제공하는 근방 함수이다.[8]


구현에 따라 학습 데이터 집합을 체계적으로 스캔하거나, 무작위로 추출하거나, 다른 샘플링 방법을 사용할 수 있다.

근방 함수 ''θ''(''u'', ''v'', ''s'')는 BMU (뉴런 ''u'')와 뉴런 ''v'' 사이의 그리드 거리에 따라 달라진다. 가장 간단한 형태는 BMU에 충분히 가까운 모든 뉴런에 대해 1이고 나머지는 0이지만, 가우스 함수 및 멕시코 모자 웨이블릿[9] 함수도 일반적인 선택이다. 근방 함수는 시간이 지남에 따라 축소된다.[6] 근방이 넓은 초기에 자기 조직화는 전역적인 규모로 발생하고, 근방이 몇 개의 뉴런으로 축소되면 가중치가 로컬 추정치로 수렴된다.

이 과정은 각 입력 벡터에 대해 반복된다. 네트워크는 결국 출력 노드를 입력 데이터 집합의 그룹 또는 패턴과 연결하며, 이러한 패턴의 이름을 지정할 수 있으면 훈련된 네트워크의 관련 노드에 이름을 첨부할 수 있다.

매핑하는 동안 입력 벡터에 가중치 벡터가 가장 가까운 단일 ''승리'' 뉴런이 존재하며, 이는 유클리드 거리 계산으로 결정된다.

SOM의 주요 설계 선택은 형태, 이웃 함수 및 학습률 스케줄이다. 이웃 함수의 아이디어는 BMU가 가장 많이 업데이트되도록 하고, 바로 옆의 이웃은 조금 덜 업데이트되도록 하는 것이다. 학습률 스케줄의 아이디어는 맵 업데이트가 처음에는 크고 점차 업데이트를 중지하도록 하는 것이다.

업데이트율은 유클리드 공간에서 점의 위치가 아닌 SOM 자체 내에서의 위치에 의존한다.

SOM의 알고리즘에는 온라인 학습 모델과 배치 학습 모델이 있다.

3. 1. 1. 온라인 학습 (Online Learning)

자기 조직화 지도(SOM)의 학습 목표는 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 만드는 것이다. 이는 대뇌 피질에서 시각, 청각 등의 감각 정보가 별도 부분에서 처리되는 방식에서 부분적으로 영감을 받았다.[6]

뉴런의 가중치는 작은 임의 값으로 초기화되거나, 두 개의 가장 큰 주성분 고유 벡터로 구성된 하위 공간에서 균등하게 샘플링된다. 후자의 경우 초기 가중치가 이미 SOM 가중치를 잘 근사하기 때문에 학습이 훨씬 빠르다.[7]

온라인 학습은 경쟁 학습을 활용한다. 학습 예제가 네트워크에 제공되면, 모든 가중치 벡터에 대한 유클리드 거리가 계산된다. 입력과 가중치 벡터가 가장 유사한 뉴런을 '''최적 적합 유닛'''(BMU)이라고 한다. SOM 그리드에서 BMU와 그 근처 뉴런의 가중치는 입력 벡터를 향해 조정된다. 변경 크기는 시간과 BMU로부터의 그리드 거리에 따라 감소한다. 가중치 벡터 '''Wv'''(s)를 가진 뉴런 v의 업데이트 공식은 다음과 같다.

:W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))

여기서,

  • ''s''는 단계 인덱스
  • ''t''는 학습 샘플의 인덱스
  • ''u''는 입력 벡터 '''D'''(''t'')에 대한 BMU의 인덱스
  • ''α''(''s'')는 단조 감소 학습 계수
  • ''θ''(''u'', ''v'', ''s'')는 뉴런 u와 단계 ''s''의 뉴런 ''v'' 사이의 거리를 제공하는 근방 함수[8]


구현에 따라 학습 데이터 집합을 체계적으로 스캔하거나, 무작위로 추출하거나, 다른 샘플링 방법을 사용할 수 있다.

근방 함수 ''θ''(''u'', ''v'', ''s'')는 BMU (뉴런 ''u'')와 뉴런 ''v'' 사이의 그리드 거리에 따라 달라진다. 가장 간단한 형태는 BMU에 충분히 가까운 모든 뉴런에 대해 1이고 나머지는 0이지만, 가우스 함수 및 멕시코 모자 웨이블릿[9] 함수도 일반적인 선택이다. 근방 함수는 시간이 지남에 따라 축소된다.[6] 근방이 넓은 초기에 자기 조직화는 전역적인 규모로 발생하고, 근방이 몇 개의 뉴런으로 축소되면 가중치가 로컬 추정치로 수렴된다.

이 과정은 각 입력 벡터에 대해 반복된다. 네트워크는 결국 출력 노드를 입력 데이터 집합의 그룹 또는 패턴과 연결하며, 이러한 패턴의 이름을 지정할 수 있으면 훈련된 네트워크의 관련 노드에 이름을 첨부할 수 있다.

매핑하는 동안 입력 벡터에 가중치 벡터가 가장 가까운 단일 ''승리'' 뉴런이 존재하며, 이는 유클리드 거리 계산으로 결정된다.

SOM의 알고리즘은 다음과 같이 요약할 수 있다.

1. 맵에서 노드 가중치 벡터를 무작위로 초기화한다.

2. 입력 벡터 {D}(t)를 무작위로 선택한다.

3. 맵에서 입력 벡터에 가장 가까운 노드(BMU)를 찾는다.

4. 각 노드 v에 대해, 입력 벡터에 가깝게 벡터를 업데이트한다: W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))

5. s를 증가시키면서 2-4단계를 반복한다.

SOM의 주요 설계 선택은 형태, 이웃 함수 및 학습률 스케줄이다. 이웃 함수의 아이디어는 BMU가 가장 많이 업데이트되도록 하고, 바로 옆의 이웃은 조금 덜 업데이트되도록 하는 것이다. 학습률 스케줄의 아이디어는 맵 업데이트가 처음에는 크고 점차 업데이트를 중지하도록 하는 것이다.

예를 들어, 사각형 그리드를 사용하고, (i, j)를 사용하여 인덱싱할 수 있으며 (i, j \in 1:N), 이웃 함수는 다음과 같이 만들 수 있다.

\theta((i, j), (i', j'), s) = \frac{1}{2^

} = \begin{cases}

1 & \text{if }i=i', j = j' \\

1/2 & \text{if }|i-i'| + |j-j'| = 1 \\

1/4 & \text{if }|i-i'| + |j-j'| = 2 \\

\cdots & \cdots

\end{cases}



그리고 간단한 선형 학습률 스케줄 \alpha(s) = 1-s/\lambda를 사용할 수 있다.

업데이트율은 유클리드 공간에서 점의 위치가 아닌 SOM 자체 내에서의 위치에 의존한다.

SOM의 알고리즘은 크게 두 가지가 있는데, 온라인 학습 모델은 데이터가 입력될 때마다 학습이 이루어지고, 나중에 입력된 데이터의 가중치가 높아지는 경향이 있다. 또한 각 뉴런의 초기값은 임의로 설정된다.

3. 1. 2. 배치 학습 (Batch Learning)

자기조직화 지도(SOM)의 학습 목표는 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 하는 것이다. 이는 대뇌 피질에서 시각, 청각 등의 감각 정보가 별도 부분에서 처리되는 방식과 유사하다.[6]

뉴런의 가중치는 초기에는 작은 임의의 값으로 설정되거나, 두 개의 가장 큰 주성분 고유벡터로 구성된 하위 공간에서 균등하게 샘플링된다. 후자의 경우 초기 가중치가 이미 SOM 가중치를 잘 근사하므로 학습이 더 빠르다.[7]

학습에는 경쟁 학습이 사용된다. 학습 예제가 네트워크에 주어지면, 모든 가중치 벡터에 대한 유클리드 거리가 계산된다. 입력과 가중치 벡터가 가장 유사한 뉴런을 '''최적 적합 유닛'''(BMU, Best Matching Unit)이라고 한다. SOM 그리드에서 BMU와 그 근처 뉴런의 가중치는 입력 벡터를 향해 조정된다. 변경 크기는 시간이 지남에 따라, 그리고 BMU로부터의 그리드 거리에 따라 감소한다. 뉴런 v의 가중치 벡터 '''Wv'''(s) 업데이트 공식은 다음과 같다.

:W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))

여기서,

  • ''s''는 단계 인덱스
  • ''t''는 학습 샘플의 인덱스
  • ''u''는 입력 벡터 '''D'''(''t'')에 대한 BMU의 인덱스
  • ''α''(''s'')는 단조 감소 학습 계수
  • ''θ''(''u'', ''v'', ''s'')는 뉴런 u와 단계 ''s''의 뉴런 ''v'' 사이의 거리를 나타내는 근방 함수이다.[8]


근방 함수 ''θ''(''u'', ''v'', ''s'')는 BMU (뉴런 ''u'')와 뉴런 ''v'' 사이의 그리드 거리에 따라 달라진다. 가장 간단한 형태는 BMU에 충분히 가까운 모든 뉴런에 대해 1, 나머지는 0이다. 가우스 함수 및 멕시코 모자 웨이블릿[9] 함수도 일반적으로 사용된다. 어떤 형식이든, 근방 함수는 시간이 지남에 따라 축소된다.[6] 초기에는 넓은 근방에서 전역적인 자기조직화가 발생하고, 근방이 몇 개의 뉴런으로 좁혀지면 가중치는 로컬 추정치로 수렴한다.

이 과정은 각 입력 벡터에 대해 여러 사이클(λ) 동안 반복된다. 네트워크는 결국 출력 노드를 입력 데이터 집합의 그룹 또는 패턴과 연결하며, 이러한 패턴의 이름을 지정하여 훈련된 네트워크의 관련 노드에 붙일 수 있다.

매핑 과정에서 입력 벡터에 가장 가까운 가중치 벡터를 가진 단일 ''승리'' 뉴런이 존재하며, 이는 유클리드 거리 계산으로 결정된다.

SOM의 알고리즘은 다음과 같다.

1. 지도에서 노드 가중치 벡터를 무작위로 초기화한다.

2. s = 0, 1, 2, ..., \lambda에 대해 반복한다.

  • 입력 벡터 {D}(t)를 무작위로 선택한다.
  • 지도에서 입력 벡터에 가장 가까운 노드(BMU)를 찾는다.
  • 각 노드 v에 대해, 입력 벡터에 가깝게 벡터를 업데이트한다: W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))


변수의 의미는 다음과 같다.

  • s: 현재 반복 횟수
  • \lambda: 반복 제한
  • t: 입력 데이터 집합 \mathbf{D}에서 대상 입력 데이터 벡터의 인덱스
  • {D}(t): 대상 입력 데이터 벡터
  • v: 지도 노드 인덱스
  • \mathbf{W}_v: 노드 v의 현재 가중치 벡터
  • u: 지도에서 최적 매칭 유닛(BMU)의 인덱스
  • \theta (u, v, s): 이웃 함수
  • \alpha (s): 학습률 스케줄


SOM 설계 시 형태, 이웃 함수, 학습률 스케줄이 중요하며, 업데이트율은 유클리드 공간이 아닌 SOM 내 위치에 의존한다.

SOM의 알고리즘에는 데이터 입력 시마다 학습하는 온라인 학습 모델과, 모든 데이터를 분류 후 동시에 학습하는 BL-SOM이 있다.

3. 2. 매핑 단계

자기조직화 지도(SOM)는 대부분의 인공 신경망과 마찬가지로 훈련과 매핑이라는 두 가지 모드로 작동한다. 먼저, 훈련은 입력 데이터 집합("입력 공간")을 사용하여 입력 데이터의 더 낮은 차원 표현("지도 공간")을 생성한다. 둘째, 매핑은 생성된 지도를 사용하여 추가 입력 데이터를 분류한다.

대부분의 경우 훈련의 목표는 ''p'' 차원의 입력 공간을 2차원의 지도 공간으로 표현하는 것이다. 구체적으로, ''p''개의 변수를 가진 입력 공간은 ''p''차원을 갖는다고 말한다. 지도 공간은 2차원의 육각형 또는 직사각형 그리드로 배열된 "노드" 또는 "뉴런"이라고 하는 구성 요소로 구성된다.[5]

지도 공간의 각 노드는 "가중치" 벡터와 연관되어 있으며, 이는 입력 공간에서 노드의 위치이다. 훈련 후, 지도는 입력 공간 벡터에 가장 가까운 가중치 벡터(최소 거리 메트릭)를 가진 노드를 찾아 입력 공간에 대한 추가 관측치를 분류하는 데 사용할 수 있다.

3. 3. 알고리즘 상세

자기 조직화 지도(SOM) 학습의 목표는 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 만드는 것이다. 이는 대뇌 피질에서 시각, 청각 등의 감각 정보가 별도 부분에서 처리되는 방식에서 부분적으로 영감을 받았다.[6]

뉴런의 가중치는 초기화 시 작은 임의 값으로 설정되거나, 두 개의 가장 큰 주성분 고유 벡터로 구성된 하위 공간에서 균등하게 샘플링된다. 후자의 경우 초기 가중치가 이미 SOM 가중치를 잘 근사하므로 학습이 더 빨라진다.[7]

학습 과정은 경쟁 학습을 기반으로 한다. 학습 예제가 네트워크에 주어지면, 모든 가중치 벡터와 유클리드 거리를 계산한다. 입력과 가장 유사한 가중치 벡터를 가진 뉴런을 '''최적 적합 유닛'''(BMU)이라고 한다. BMU와 그 근처 뉴런의 가중치는 입력 벡터 방향으로 조정된다. 변화량은 시간과 BMU로부터의 그리드 거리에 따라 감소한다. 뉴런 v의 가중치 벡터 '''Wv'''(s)의 업데이트 공식은 다음과 같다.

:W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))

여기서,

  • s는 단계 인덱스
  • t는 학습 샘플 인덱스
  • u는 입력 벡터 '''D'''(''t'')에 대한 BMU 인덱스
  • α(s)는 단조 감소하는 학습 계수
  • θ(''u'', ''v'', ''s'')는 뉴런 u와 뉴런 v 사이의 거리를 나타내는 근방 함수이다.[8]


근방 함수 θ(''u'', ''v'', ''s'')는 BMU(뉴런 ''u'')와 뉴런 ''v'' 사이의 그리드 거리에 따라 달라진다. 가장 간단한 형태는 BMU에 충분히 가까운 모든 뉴런에 대해 1, 나머지는 0이다. 가우스 함수나 멕시코 모자 웨이블릿[9] 함수도 사용된다. 어떤 형식이든, 근방 함수는 시간이 지남에 따라 축소된다.[6] 초기에는 넓은 근방에서 전역적인 자기 조직화가 일어나고, 근방이 축소되면 가중치는 로컬 추정치로 수렴한다.

이 과정은 각 입력 벡터에 대해 여러 번(λ) 반복된다. 네트워크는 결국 출력 노드를 입력 데이터 집합의 그룹 또는 패턴과 연결하며, 이러한 패턴에 이름을 붙일 수 있다.

매핑 과정에서 입력 벡터에 가장 가까운 가중치 벡터를 가진 단일 '승리' 뉴런이 존재하며, 이는 유클리드 거리 계산으로 결정된다.

자기조직화 지도는 벡터뿐만 아니라 디지털 표현, 적절한 거리 척도, 학습에 필요한 연산이 가능한 모든 종류의 개체에도 적용 가능하다.
알고리즘 요약:1. 맵에서 노드 가중치 벡터를 무작위로 초기화한다.

2. s = 0, 1, 2, ..., \lambda에 대해 반복:

  • 입력 벡터 {D}(t)를 무작위로 선택한다.
  • 입력 벡터에 가장 가까운 노드(BMU, u)를 찾는다.
  • 각 노드 v에 대해, W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s)) 를 통해 가중치를 업데이트한다.
  • s를 증가시킨다.

주요 설계 선택: SOM의 형태, 이웃 함수, 학습률 스케줄
예시: 사각형 그리드, 이웃 함수 \theta((i, j), (i', j'), s) = \frac{1}{2^

}, 선형 학습률 스케줄 \alpha(s) = 1-s/\lambda
주의: 업데이트율은 유클리드 공간이 아닌 SOM 내에서의 위치에 의존한다.
초기 가중치 선택: 무작위 초기화 또는 주성분 초기화가 사용될 수 있으며, 데이터 세트의 기하학적 구조에 따라 최적의 방법이 달라진다.[12]

실제 학습은 벡터 양자화를 참고한다.

4. 주요 특징

자기조직화 지도(SOM)는 학습을 통해 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 하는 특징을 갖는다. 이는 대뇌 피질에서 시각, 청각 등의 감각 정보가 별도 부분에서 처리되는 방식에서 부분적으로 착안되었다.[6]

뉴런의 가중치는 초기화될 때 작은 임의의 값으로 설정되거나, 두 개의 가장 큰 주성분 고유 벡터로 구성된 하위 공간에서 균등하게 샘플링된다. 후자의 방식을 사용하면 초기 가중치가 이미 SOM 가중치를 잘 근사하기 때문에 학습이 더 빨라진다.[7]

SOM의 학습은 경쟁 학습을 기반으로 한다. 학습 예제가 네트워크에 주어지면, 모든 가중치 벡터에 대한 유클리드 거리가 계산된다. 입력과 가중치 벡터가 가장 유사한 뉴런을 최적 적합 유닛(BMU)이라고 하며, SOM 그리드에서 BMU와 그 근처에 있는 뉴런의 가중치는 입력 벡터를 향해 조정된다. 이러한 변화의 크기는 시간이 지남에 따라, 그리고 BMU로부터의 그리드 거리에 따라 감소한다.

뉴런 v의 가중치 벡터 Wv(s)의 업데이트 공식은 다음과 같다.

:W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))

여기서 s는 단계 인덱스, t는 학습 샘플의 인덱스, u는 입력 벡터 D(''t'')에 대한 BMU의 인덱스, α(''s'')는 단조 감소하는 학습 계수이다. θ(''u'', ''v'', ''s'')는 뉴런 u와 단계 ''s''의 뉴런 ''v'' 사이의 거리를 나타내는 근방 함수이다.[8]

근방 함수 θ(''u'', ''v'', ''s'')는 BMU와 뉴런 ''v'' 사이의 그리드 거리에 따라 달라지며, 가장 간단한 형태로는 BMU에 충분히 가까운 모든 뉴런에 대해 1, 나머지는 0의 값을 가진다. 가우스 함수나 멕시코 모자 웨이블릿[9] 함수도 일반적으로 사용된다. 근방 함수의 형태와 관계없이, 이 함수는 시간이 지남에 따라 축소된다.[6] 초기에는 넓은 근방에서 전역적인 자기조직화가 발생하고, 근방이 몇 개의 뉴런으로 축소되면 가중치는 로컬 추정치로 수렴한다.

이러한 과정은 각 입력 벡터에 대해 여러 번 반복되며, 네트워크는 결국 출력 노드를 입력 데이터 집합의 그룹 또는 패턴과 연결한다.

4. 1. 차원 축소

자기조직화 지도(SOM)는 고차원 데이터를 저차원(주로 2차원)으로 차원 축소하여 시각화하는 데 사용되는 비지도 학습 신경망의 일종이다. 대부분의 경우, ''p''차원의 입력 공간을 2차원의 지도 공간으로 표현한다.[5] 지도 공간은 2차원의 육각형 또는 직사각형 그리드로 배열된 "노드" 또는 "뉴런"으로 구성된다.[5]

SOM은 입력층과 경쟁층(출력층)으로 구성된 2층 구조를 가진다. 입력층은 입력을 제공하고, 경쟁층의 노드들은 입력 데이터의 차원과 동일한 차원의 가중치 벡터를 가진다. 경쟁층의 노드 배치 차원은 자유롭게 설정할 수 있지만, 주로 2차원 또는 3차원으로 구성하여 고차원 데이터 간의 비선형 관계를 시각화한다.

SOM의 알고리즘은 입력 데이터에 가장 가까운 가중치 벡터를 가진 "승자" 뉴런을 찾고, 승자와 그 근방 뉴런의 가중치 벡터를 입력 벡터에 더 가깝게 수정하는 방식으로 학습한다. 이 과정을 반복하여 입력 데이터 세트의 패턴을 출력 노드에 연결한다.

SOM은 차원 축소 외에도, 생성적 토포그래픽 맵(GTM)과 같은 변형 모델이 존재한다. GTM은 확률 모델이며, EM 알고리즘을 사용하여 입력 데이터로부터 파라미터를 학습한다.

SOM은 주성분 분석과 같은 다른 차원 축소 기법과 비교하여 곡면 상에 분포하는 데이터를 더 효과적으로 축소할 수 있다는 장점이 있다.

4. 2. 위상 보존





자기 조직화 지도(SOM)에서 학습의 목표는 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 하는 것이다. 지도 공간의 노드는 고정되어 있지만, 훈련은 지도 공간에서 유도된 위상을 손상시키지 않으면서 가중치 벡터를 입력 데이터 쪽으로 이동(예: 유클리드 거리와 같은 거리 메트릭 감소)하는 것으로 구성된다. 이는 시각, 청각 또는 기타 감각 정보가 대뇌 피질의 별도 부분에서 처리되는 방식에 의해 부분적으로 동기 부여된다.[6]

뉴런의 가중치는 작은 임의 값으로 초기화되거나 두 개의 가장 큰 주성분 고유 벡터로 구성된 하위 공간에서 균등하게 샘플링된다. 후자의 대안을 사용하면 초기 가중치가 이미 SOM 가중치를 잘 근사하기 때문에 학습이 훨씬 빠르다.[7]

학습은 경쟁 학습을 활용한다. 학습 예제가 네트워크에 제공되면 모든 가중치 벡터에 대한 유클리드 거리가 계산된다. 입력과 가중치 벡터가 가장 유사한 뉴런을 '''최적 적합 유닛''' (BMU)이라고 한다. SOM 그리드에서 BMU 및 이에 가까운 뉴런의 가중치는 입력 벡터를 향해 조정된다. 변경의 크기는 시간과 BMU로부터의 그리드 거리에 따라 감소한다.

근방 함수는 BMU (뉴런 ''u'')와 뉴런 ''v'' 사이의 그리드 거리에 따라 달라진다. 가장 간단한 형태에서는 BMU에 충분히 가까운 모든 뉴런에 대해 1이고 나머지는 0이지만, 가우스 함수 및 멕시코 모자 웨이블릿[9] 함수도 일반적인 선택이다. 기능 형식에 관계없이 근방 함수는 시간이 지남에 따라 축소된다.[6] 근방이 넓은 초기에 자기 조직화는 전역적인 규모로 발생한다. 근방이 몇 개의 뉴런으로 축소되면 가중치가 로컬 추정치로 수렴된다.

SOM을 해석하는 데는 두 가지 방법이 있다.

  • 훈련 단계에서 전체 이웃의 가중치가 같은 방향으로 이동하기 때문에 유사한 항목은 인접한 뉴런을 흥분시키는 경향이 있다. 따라서 SOM은 유사한 샘플이 가깝게 매핑되고 유사하지 않은 샘플이 멀리 떨어져 있는 의미론적 지도를 형성한다. 이는 SOM의 U-Matrix(인접 셀의 가중치 벡터 간의 유클리드 거리)로 시각화될 수 있다.[14][15][16]
  • 다른 방법은 뉴런 가중치를 입력 공간에 대한 포인터로 생각하는 것이다. 그들은 훈련 샘플 분포의 이산 근사치를 형성한다. 더 많은 뉴런은 훈련 샘플 농도가 높은 영역을 가리키고 샘플이 부족한 곳에서는 더 적은 뉴런이 가리킨다.

4. 3. 군집화

Self-organizing maps영어(SOM)는 대부분의 인공 신경망과 마찬가지로 훈련과 매핑이라는 두 가지 모드로 작동한다. 훈련은 입력 데이터의 저차원 표현("지도 공간")을 생성하고, 매핑은 생성된 지도를 사용하여 추가 입력 데이터를 분류한다.

SOM의 학습 목표는 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 하는 것이다. 훈련 후, 지도는 입력 공간 벡터에 가장 가까운 가중치 벡터(최소 거리)를 가진 노드를 찾아 입력 공간에 대한 추가 관측치를 분류하는 데 사용할 수 있다.

학습은 경쟁 학습을 활용한다. 학습 예제가 네트워크에 제공되면 모든 가중치 벡터에 대한 유클리드 거리가 계산된다. 입력과 가중치 벡터가 가장 유사한 뉴런을 '''최적 적합 유닛'''(BMU)이라고 한다. SOM 그리드에서 BMU 및 이에 가까운 뉴런의 가중치는 입력 벡터를 향해 조정된다. 변경의 크기는 시간과 BMU로부터의 그리드 거리에 따라 감소한다.

이 프로세스는 각 입력 벡터에 대해 반복된다. 네트워크는 결국 출력 노드를 입력 데이터 집합의 그룹 또는 패턴과 연결한다.

매핑하는 동안 단일 '승리' 뉴런이 있는데, 이는 가중치 벡터가 입력 벡터에 가장 가까운 뉴런이다. 이는 입력 벡터와 가중치 벡터 사이의 유클리드 거리를 계산하여 간단하게 결정할 수 있다.

SOM을 해석하는 데는 두 가지 방법이 있다. 첫째, 훈련 단계에서 전체 이웃의 가중치가 같은 방향으로 이동하기 때문에 유사한 항목은 인접한 뉴런을 흥분시키는 경향이 있다. 따라서 SOM은 의미론적 지도를 형성한다. 둘째, 뉴런 가중치를 입력 공간에 대한 포인터로 생각하는 것이다. 더 많은 뉴런은 훈련 샘플 농도가 높은 영역을 가리키고 샘플이 부족한 곳에서는 더 적은 뉴런이 가리킨다.

SOM은 주성분 분석(PCA)의 비선형 일반화로 간주될 수 있다.[17]

5. 해석 및 시각화

자기조직화 지도(SOM)는 훈련 후, 입력 공간의 데이터를 저차원 지도 공간에 매핑하여 시각화한다. 이때 유사한 샘플은 지도 상에서 가깝게, 유사하지 않은 샘플은 멀리 떨어지도록 배치되어 의미론적 지도를 형성한다.

뉴런 가중치를 입력 공간에 대한 포인터로 간주하면, 훈련 샘플의 분포를 이산적으로 근사화한 것을 볼 수 있다. 즉, 훈련 샘플이 많은 영역에는 더 많은 뉴런이, 적은 영역에는 더 적은 뉴런이 할당된다.

이러한 특성 덕분에, SOM은 주성분 분석(PCA)의 비선형 일반화로 여겨지며, 기존의 특징 추출 방법보다 더 나은 결과를 보여주는 경우도 있다.[17]

5. 1. U-Matrix (Unified Distance Matrix)

훈련 단계에서 전체 이웃의 가중치가 같은 방향으로 이동하기 때문에, 유사한 항목은 인접한 뉴런을 흥분시키는 경향이 있다. 따라서 자기조직화 지도(SOM)는 유사한 샘플이 가깝게 매핑되고 유사하지 않은 샘플이 멀리 떨어져 있는 의미론적 지도를 형성한다. 이는 SOM의 U-Matrix(인접 셀의 가중치 벡터 간의 유클리드 거리)로 시각화할 수 있다.[14][15][16]

5. 2. 히트맵 (Heatmap)

SOM을 해석하는 데는 두 가지 방법이 있다. 훈련 단계에서 전체 이웃의 가중치가 같은 방향으로 이동하기 때문에, 유사한 항목은 인접한 뉴런을 흥분시키는 경향이 있다. 따라서 SOM은 유사한 샘플이 가깝게 매핑되고 유사하지 않은 샘플이 멀리 떨어져 있는 의미론적 지도를 형성한다. 이는 SOM의 U-Matrix(인접 셀의 가중치 벡터 간의 유클리드 거리)로 시각화할 수 있다.[14][15][16]

다른 방법은 뉴런 가중치를 입력 공간에 대한 포인터로 생각하는 것이다. 뉴런 가중치는 훈련 샘플 분포의 이산 근사치를 형성한다. 더 많은 뉴런은 훈련 샘플 농도가 높은 영역을 가리키고 샘플이 부족한 곳에서는 더 적은 뉴런이 가리킨다.

SOM은 주성분 분석(PCA)의 비선형 일반화로 간주될 수 있다.[17] 인공 및 실제 지구물리학적 데이터를 사용하여, SOM이 기존의 특징 추출 방법, 예를 들어 경험적 직교 함수(EOF) 또는 PCA보다 많은 장점을 가지고 있음이 입증되었다.[18][19]

6. 활용 분야


  • 프로젝트 우선순위 결정 및 선택[22]
  • 석유 및 가스 탐사를 위한 지진 facies 분석[23]
  • 고장 모드 및 영향 분석[24]
  • 대규모 데이터 세트에서 대표 데이터 찾기
  • * 생태 공동체를 위한 대표 종[25]
  • * 에너지 시스템 모델을 위한 대표 일[26]

7. 한계점 및 개선 방향

자기조직화 지도(Self-Organizing Map, SOM)를 포함한 인공신경망의 반복적 방법에서 초기 가중치를 어떻게 설정하는지는 최종 결과에 큰 영향을 미치는 중요한 문제이다. 코호넨은 초기에 가중치를 무작위로 설정하는 방법을 제안했다.[10] 최근에는 주성분 초기화 방법이 결과의 재현성이 높아 널리 사용되고 있다.[11]

하지만 1차원 맵에서 무작위 초기화와 주성분 초기화를 비교한 결과, 주성분 초기화의 장점이 항상 보장되는 것은 아니라는 사실이 밝혀졌다. 최적의 초기화 방법은 데이터 세트의 기하학적 구조에 따라 달라진다. 주성분 초기화는 주 곡선이 첫 번째 주성분에 단일 값으로 선형 투영될 수 있는 경우(준선형 세트)에 더 적합했다. 그러나 비선형 데이터 세트에서는 무작위 초기화가 더 나은 성능을 보였다.[12]

SOM을 해석하는 방법에는 크게 두 가지가 있다. 첫 번째는 훈련 단계에서 전체 이웃의 가중치가 같은 방향으로 이동하기 때문에 유사한 항목들이 인접한 뉴런을 흥분시키는 경향이 있다는 점을 이용하는 것이다. 이를 통해 SOM은 유사한 샘플은 가깝게, 유사하지 않은 샘플은 멀리 떨어져 있도록 배치하는 의미론적 지도를 형성한다. U-Matrix(인접 셀의 가중치 벡터 간의 유클리드 거리)를 통해 이를 시각화할 수 있다.[14][15][16]

두 번째 방법은 뉴런 가중치를 입력 공간에 대한 포인터로 간주하는 것이다. 이 관점에서 보면 뉴런 가중치는 훈련 샘플 분포의 이산 근사치를 형성한다. 더 많은 뉴런이 훈련 샘플의 농도가 높은 영역을 가리키고, 샘플이 부족한 곳에서는 더 적은 뉴런이 가리키게 된다.

SOM은 주성분 분석(PCA)의 비선형 일반화로 볼 수 있다.[17] 실제 지구물리학적 데이터를 이용한 연구에 따르면, SOM은 경험적 직교 함수(EOF) 또는 PCA와 같은 기존의 특징 추출 방법에 비해 여러 장점을 가진다.[18][19]

8. 확장 및 변형

자기 조직화 지도(SOM)는 네트워크의 서로 다른 부분이 특정 입력 패턴에 유사하게 반응하도록 학습시키는 것을 목표로 한다. 이는 대뇌 피질에서 시각, 청각 등 감각 정보가 별도 부분에서 처리되는 방식에서 부분적으로 영감을 받았다.[6]

SOM의 학습은 경쟁 학습을 활용한다. 학습 예제가 네트워크에 주어지면, 모든 가중치 벡터에 대한 유클리드 거리가 계산된다. 입력과 가중치 벡터가 가장 유사한 뉴런을 '''최적 적합 유닛'''(BMU)이라고 한다. SOM 그리드에서 BMU와 그 근처 뉴런의 가중치는 입력 벡터를 향해 조정된다. 변경 크기는 시간과 BMU로부터의 그리드 거리에 따라 감소한다. 뉴런 v의 가중치 벡터 '''Wv'''(s)의 업데이트 공식은 다음과 같다.

:W_{v}(s + 1) = W_{v}(s) + \theta(u, v, s) \cdot \alpha(s) \cdot (D(t) - W_{v}(s))

여기서 ''s''는 단계 인덱스, ''t''는 학습 샘플 인덱스, ''u''는 입력 벡터 '''D'''(''t'')에 대한 BMU 인덱스, ''α''(''s'')는 단조 감소 학습 계수, ''θ''(''u'', ''v'', ''s'')는 뉴런 u와 단계 ''s''의 뉴런 ''v'' 사이 거리를 나타내는 근방 함수이다.[8]

근방 함수 ''θ''(''u'', ''v'', ''s'')는 BMU와 뉴런 ''v'' 사이 그리드 거리에 따라 달라진다. 가장 간단한 형태는 BMU에 충분히 가까운 모든 뉴런에 대해 1, 나머지는 0이지만, 가우스 함수 및 멕시코 모자 웨이블릿[9] 함수도 자주 사용된다. 근방 함수는 시간이 지남에 따라 축소된다.[6]

이 과정은 각 입력 벡터에 대해 여러 번 반복된다. 네트워크는 결국 출력 노드를 입력 데이터 집합의 그룹 또는 패턴과 연결한다.

SOM의 확장 및 변형은 다음과 같다.


  • '''생성적 지형도'''(GTM): SOM의 잠재적 대안으로, 입력 공간에서 맵 공간으로의 부드럽고 연속적인 매핑을 요구한다.[27]
  • '''성장하는 자기 조직화 지도'''(GSOM): SOM의 성장형 변형으로, 적절한 맵 크기를 식별하는 문제를 해결하기 위해 개발되었다. 최소 노드 수로 시작하여 경계에 새로운 노드를 성장시킨다.[28]
  • '''등각 지도''': 등각 매핑을 사용하여 연속적인 표면의 그리드 노드 사이에서 각 훈련 샘플을 보간한다.
  • '''시간 적응형 자기 조직화 지도'''(TASOM): 적응형 학습률과 이웃 함수를 사용하며, 입력 공간의 스케일링, 변환 및 회전에 대해 불변하게 만드는 매개변수를 포함한다.[31]
  • '''이진 트리 TASOM'''(BTASOM): TASOM 네트워크로 구성된 노드를 가진 이진 자연 트리와 유사하며, 노드 수와 수준 수가 환경에 따라 적응적으로 변화한다.[32]
  • '''탄성 지도''': 스플라인 보간법에서 탄성 에너지 최소화 아이디어를 차용한다.[33]
  • '''방향성 및 확장 가능한 지도'''(OS-Map): 이웃 함수와 승자 선택을 일반화한다.[34]

참조

[1] 논문 Kohonen Network
[2] 논문 Self-Organized Formation of Topologically Correct Feature Maps
[3] 논문 Self-organization of orientation sensitive cells in the striate cortex
[4] 논문 The chemical basis of morphogenesis
[5] 웹사이트 Self-Organizing Map (SOM) http://users.ics.aal[...] 1996-03-09
[6] 서적 Neural networks - A comprehensive foundation Prentice-Hall
[7] 웹사이트 Intro to SOM http://www.cis.hut.f[...] 2006-06-18
[8] 논문 Kohonen network
[9] 서적 Artificial Neural Networks University of Limburg, Maastricht 2020-07-01
[10] 서적 Self-Organization and Associative Memory Springer
[11] 간행물 Clustering large, multi-level data sets: An approach based on Kohonen self organizing maps Springer 2000
[12] 논문 SOM: Stochastic initialization versus principal components https://www.research[...]
[13] 문서 Illustration is prepared using free software: Mirkes, Evgeny M.; [http://www.math.le.ac.uk/people/ag153/homepage/PCA_SOM/PCA_SOM.html ''Principal Component Analysis and Self-Organizing Maps: applet''], University of Leicester, 2011
[14] 간행물 Proceedings of the International Neural Network Conference (INNC-90), Paris, France, July 9–13, 1990 https://archive.org/[...] Kluwer
[15] 간행물 U*-Matrix: A tool to visualize clusters in high dimensional data http://www.uni-marbu[...] Department of Computer Science, University of Marburg
[16] 간행물 Application of self organizing map for knowledge discovery based in higher education data IEEE 2011
[17] 서적 Gorban, Kégl, Wunsch, Zinovyev (2008)
[18] 논문 Patterns of Ocean Current Variability on the West Florida Shelf Using the Self-Organizing Map
[19] 논문 Performance Evaluation of the Self-Organizing Map for Feature Extraction
[20] 서적 Kohonen Maps Elsevier 1999
[21] 서적 Principal Manifolds for Data Visualization and Dimension Reduction https://www.research[...] Springer 2008
[22] 논문 A Multidimensional Perceptual Map Approach to Project Prioritization and Selection http://www.slideshar[...] 2011
[23] 논문 SEG Technical Program Expanded Abstracts 2001
[24] 논문 Application of Self-Organizing Map to Failure Modes and Effects Analysis Methodology http://ir.unimas.my/[...] 2017-03
[25] 논문 Application of a self-organizing map to select representative species in multivariate analysis: A case study determining diatom distribution patterns across France https://www.scienced[...] 2006-11-01
[26] 논문 Reducing energy time series for energy system models via self-organizing maps https://www.degruyte[...] 2019-04-01
[27] 논문 Data Exploration Using Self-Organizing Maps Finnish Academy of Technology
[28] 논문 Dynamic Self Organizing Maps With Controlled Growth for Knowledge Discovery
[29] 논문 Conformality in the self-organization network 2000
[30] 논문 Conformal Self-organizing Map for a Genus Zero Manifold 2005
[31] 논문 TASOM: A New Time Adaptive Self-Organizing Map 2003-04
[32] 논문 Binary Tree Time Adaptive Self-Organizing Map 2011-05
[33] 논문 Principal manifolds and graphs in practice: from molecular biology to dynamical systems] 2010
[34] 논문 Image and geometry processing with Oriented and Scalable Map
[35] 논문 How patterned neural connections can be set up by self-organization https://pubmed.ncbi.[...] The Royal Society London
[36] 서적 자기 조직화 맵 슈프링거페어라크도쿄



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com