som 알고리즘 예제

avatar
| Uncategorized

원래 SOM은 최적화 문제에 대한 해결책으로 공식화되지 않았습니다. 그럼에도 불구하고 SOM의 정의를 수정하고 유사한 결과를 제공하는 최적화 문제를 공식화하려는 여러 시도가 있었습니다. [20] 예를 들어, 탄성 맵은 탄성의 기계적 은유를 사용하여 주요 매니폴드를 근사화합니다:[21] 비유는 탄성 멤브레인및 플레이트입니다. `자체 조직지도`라는 용어는 알고리즘이 실제로 작동하는 방식에 대한 다소 적절한 비유인 지도에서 우발적인 데이터 포인트로 행진하는 데이터 포인트의 군사적 이미지를 연상시킬 수 있습니다. 네트워크는 매핑 중에 예상되는 벡터 종류를 가능한 한 가깝게 나타내는 많은 수의 예제 벡터를 공급해야 합니다. 예제는 일반적으로 반복으로 여러 번 관리됩니다. 결과 해석 자체 조직지도의 결과의 예는 아래에 나와 있습니다. 두 개 이상의 차원을 가진 데이터 형식의 한 예는 색상입니다. 색상에는 일반적으로 RGB(빨간색, 녹색, 파란색) 값으로 표시되는 세 가지 차원이 있습니다. 이 예제에서는 SOM이 두 색상 클러스터를 구별하는 방법을 살펴보겠습니다.

SOM을 적용하기 전에 주의해야 할 한 가지: 서로 다른 단위로 측정된 변수는 분석의 속도와 정확성을 방해할 수 있습니다. 예를 들어 센티미터단위로 측정된 변수는 미터단위로 측정된 값보다 100배 더 큰 값을 갖습니다. 변수가 다른 변수를 압도하는 것을 방지하기 위해 모든 변수를 표준화해야합니다. 표준화는 백분위수 측면에서 각 변수를 표현하는 것과 유사하며, 이는 동일한 측정 단위가 되도록 균일한 표준 스케일로 이동하는 것을 의미합니다. 몇 백 번의 반복 후에 그리드의 모양이 안정화되는 것을 볼 수 있습니다. 알고리즘이 수렴되었는지 확인하기 위해 처음에는 SOM 에너지의 진화를 플롯할 수 있지만 데이터의 대략적인 모양에 도달하면 변화 속도가 느려집니다. 대부분의 인공 신경망과 마찬가지로 SOM은 교육 및 매핑의 두 가지 모드로 작동합니다. “교육”은 입력 예제(벡터 양자화라고도 하는 경쟁 프로세스)를 사용하여 맵을 빌드하고 “매핑”은 새 입력 벡터를 자동으로 분류합니다.

SOM의 작동 방식에 대한 시각적 예를 살펴보겠습니다. R의 함께 제공되는 SOM 코드는 GitHub 페이지에 있습니다. 이 교육은 경쟁력 있는 학습을 활용합니다. 교육 예제가 네트워크에 공급되면 모든 가중치 벡터에 대한 유클리드 거리가 계산됩니다.