컴퓨터공학/그 외 모델들

자기조직화지도(SOM, Self-Organizing Map)

airoot 2024. 9. 12. 11:42

자기조직화지도(SOM, Self-Organizing Map)는 인공신경망(Artificial Neural Network)의 한 종류로, 비지도 학습을 통해 입력 데이터를 시각적으로 표현하고, 그 데이터의 특성에 따라 유사한 패턴을 그룹화하는 데 사용된다. 이 기법은 주로 데이터의 차원을 축소하거나, 데이터를 클러스터링할 때 활용된다. 이를 처음 제안한 사람은 핀란드의 코호넨(Teuvo Kohonen) 교수이며, SOM을 '코호넨 지도(Kohonen Map)'라고 부르기도 한다.

논문: Self-Organized Formation of Topologically Correct Feature Maps

주요 특징 및 원리:

  1. 비지도 학습: SOM은 입력 데이터에 대한 레이블이 없을 때 사용된다. 즉, 지도 학습처럼 정답을 알려주지 않고, 데이터의 내재된 구조를 스스로 발견하는 방식이다.
  2. 차원 축소: SOM은 고차원의 데이터를 저차원의 격자로 변환하여 시각화한다. 이는 데이터를 쉽게 해석할 수 있도록 돕는다. 일반적으로 2차원 격자에 매핑되며, 데이터 간의 유사성을 지도 상에서 가깝게 배치한다.
  3. 격자 구조(그리드): SOM은 2차원 혹은 3차원 격자 구조를 사용하여 뉴런을 배치한다. 각 뉴런은 특정 가중치 벡터를 가지며, 입력 데이터와의 유사성을 계산하여 가장 유사한 뉴런(BMU, Best Matching Unit)을 선택한다.
  4. BMU(Best Matching Unit): SOM 학습 과정에서 주어진 입력 데이터와 가장 유사한 뉴런(BMU)을 찾고, 그 주변의 뉴런들도 함께 갱신된다. 이렇게 유사한 데이터는 같은 뉴런 또는 근처 뉴런에 할당되며, 학습이 진행됨에 따라 데이터의 군집이 자연스럽게 형성된다.
  5. 경계 학습: SOM의 중요한 부분은 BMU뿐만 아니라 그 주변 뉴런들도 일정 범위 내에서 가중치를 갱신하는 점이다. 학습이 진행됨에 따라, 이 주변 범위는 점차 줄어든다.
  6. 가중치 갱신: 학습 과정에서는 입력 데이터와 BMU의 가중치 차이를 기준으로 가중치를 조금씩 수정한다. 이때, 학습률과 주변 범위가 점차적으로 감소하면서 학습이 완료된다.

SOM의 학습 단계:

  1. 초기화: SOM 격자의 각 뉴런에 대한 가중치 벡터를 무작위로 초기화한다.
  2. BMU 계산: 입력 데이터가 주어지면, 해당 데이터와 가장 가까운 가중치 벡터를 가진 뉴런(BMU)을 찾는다.
  3. 가중치 갱신: BMU와 그 주변 뉴런들의 가중치를 입력 데이터와 더 유사하게 조정한다. 이때 학습률과 주변 범위는 시간이 지남에 따라 감소한다.
  4. 반복: 이 과정을 주어진 학습 반복 횟수 또는 수렴할 때까지 계속한다.

활용 분야:

  • 데이터 시각화: 고차원 데이터를 저차원으로 변환하여 시각적으로 표현할 수 있다.
  • 클러스터링: 비지도 학습을 통해 유사한 데이터를 클러스터링할 수 있다.
  • 특징 추출: 고차원 데이터의 내재된 패턴을 발견하여 중요한 특징을 추출하는 데 사용된다.
  • 패턴 인식 및 분류: 다양한 패턴 인식 및 분류 문제에서 사용할 수 있다.

SOM은 특히 고차원의 데이터를 처리하고, 그 데이터 사이의 관계를 시각적으로 나타낼 때 매우 유용하다.

SOM은 역전파를 사용하지 않는다는 점에서 인간의 뇌의 방식에 좀더 가깝다고 할 수 있다. 특히 BMU 주변을 활성화시킨다는 점에서 뇌가 학습에 의해 뉴련의 연결이 강화되는 것과 유사성이 있어 참고할 만한 논문이 될 것 같다.