2017-12-18 5 views
0

나는 기본적인 SOM 초기화에 대해 연구했고이 과정 인 PCI가 맵에서 무게 벡터를 초기화하는 방법을 정확히 이해하려고했다. 필자는 2 차원 맵의 경우이 초기화 메소드가 데이터 행렬의 두 가장 큰 고유 값에 대한 고유 벡터를 조사한 다음 이러한 고유 벡터에 걸친 부분 공간을 사용하여 맵을 초기화한다는 점을 이해합니다. 즉, 초기지도 가중치를 얻으려면이 메소드가지도 가중치를 생성하기 위해 가장 큰 두 고유 벡터의 임의의 선형 조합을 사용합니까? 구덩이가 있니?자가 구성 맵에서지도 벡터의 가중치를 결정할 때 주 구성 요소 초기화가 어떻게 작동합니까?

예를 들어,지도상의 40 개의 입력 데이터 벡터에 대해 선형 초기화 방법은 다음과 같은 조합을 취합니다. a1 * [e1] + a2 * [e2] 여기서 [e1]과 [e2]는 두 개의 가장 큰 고유 벡터이고 a1과 a2는 -3에서 3 사이의 임의의 정수입니다. 아니면 다른 메커니즘이 있습니까? 나는 lininit이 입력 데이터 행렬의 두 개의 가장 큰 고유 벡터를 어떻게 사용 하는지를 정확히 알고 그 값을 사용하여 맵의 초기 웨이트 벡터를 구성하는 방법을 찾고있었습니다.

답변

0

주체 구성 요소은 부분적으로 https://en.wikipedia.org/wiki/Principal_component_analysis을 가리 킵니다.

여기에 아이디어가 있습니다. 많은 기본 요소 벡터에 배치 된 데이터 포인트로 시작합니다. 그러나 그들은 당신의 데이터에서 상관 될 수 있습니다. 예를 들어 신장, 체중, 혈압 등을 측정하는 경우 키가 큰 사람의 체중이 더 커질 것으로 예상됩니다. 그러나 당신이하고 싶은 것은 이것을 당신의 데이터에서 서로 상관되지 않는 요소의 벡터로 대체하는 것입니다.

따라서 주 구성 요소는 데이터 집합의 변형과 가능한 한 강하게 상관되는 길이 1 인 벡터입니다.

보조 구성 요소는 데이터 세트의 나머지 유사 콘텐츠와 가능한 한 강력한 상관 관계가있는 첫 번째 요소와 직각을 이루는 길이가 1 인 벡터입니다.

귀하의 3 차 구성 요소는 데이터 세트의 나머지 유사 콘텐츠와 가능한 한 강하게 상관 관계가있는 처음 두 개에 직각 인 길이 1의 벡터입니다.

등등.

실제로 많은 요소로 시작할 수 있지만 대부분의 정보는 처음 몇 개에서만 캡처됩니다. 예를 들어 인텔리전스 테스팅의 결과에서 첫 번째 구성 요소는 IQ이고 두 번째 구성 요소는 구두 및 양적 추론 방법의 차이입니다.

이것은 SOM 초기화에 어떻게 적용되는지는 PCA 분석으로 만들어진 간단한 선형 모델이 찾고있는 답변에 대한 좋은 추측이므로 거기에서 시작하면 점점 완료하기 위해해야하는 작업이 줄어 듭니다. 대답.

0

SOM은 주변 노드 간의 인접 관계가있는 맵을 작성합니다. 무작위 초기화는 노드가 무작위로 시작하기 때문에이 프로세스에 도움이되지 않습니다. 따라서 PCA 초기화를 사용하는 아이디어는지도를 최종 상태에 더 가깝게 만드는 바로 가기입니다. 이렇게하면 많은 계산을 절약 할 수 있습니다.

어떻게 작동하나요? 처음 두 가지 주요 구성 요소 (PC)가 사용됩니다. 초기 무게를 PC의 선형 조합으로 설정하십시오. 무작위 a1a2을 사용하는 대신 가중치는 주 구성 요소의 눈금에 해당하는 범위로 설정됩니다.

예를 들어, 5x3 맵의 경우 a1a2은 관련 요소 수와 함께 (-1, 1) 범위에있을 수 있습니다. 즉, 5x3 맵의 경우 a1 = [-1.0 -0.5 0.0 0.5 1.0]a2 = [-1.0 0.0 1.0]이며 노드가 5 개이고 노드가 각각 3 개입니다.

그런 다음 각 노드의 가중치를 설정하십시오. 직사각형 SOM의 경우 각 노드에는 인덱스 [m, n]이 있습니다. a1[m]a2[n]의 값을 사용하십시오. 따라서, m = [1 2 3 4 5]n = [1 2 3] 모든 :

주요 구성 요소를 사용하여 가중치를 초기화하는 방법입니다

weight[m, n] = a1[m] * e1 + a2[n] * e2

. 이렇게하면 초기 상태가 전체적으로 정렬되므로 SOM 알고리즘을 사용하여 로컬 순서를 만들 수 있습니다.

관련 문제