LLE (로컬 선형 임베딩) 데이터를 원래의 고차원 공간에서 저차원 표현으로 변환하는 동시에 기본 비선형 특징 구조의 필수 기하학적 특성을 유지하려고 노력하는 비지도 방식입니다. LLE는 몇 가지 주요 단계로 작동합니다.
- 첫째, 이러한 지역 관계를 포착하기 위해 가장 가까운 이웃 그래프를 구성합니다. 그런 다음 포인트를 이웃 요소의 선형 결합으로 표현할 때 재구성 오류를 최소화하는 것을 목표로 각 데이터 포인트의 가중치 값을 최적화합니다. 이 가중치 매트릭스는 점 간의 연결 강도를 반영합니다.
- 다음으로 LLE는 다음을 통해 데이터의 저차원 표현을 계산합니다. 고유벡터 가중치 행렬에서 파생된 행렬입니다. 이러한 고유벡터는 축소된 공간에서 가장 관련성이 높은 방향을 나타냅니다. 사용자는 출력 공간에 대해 원하는 차원을 지정할 수 있으며 LLE는 이에 따라 상위 고유 벡터를 선택합니다.
예를 들어, 스위스 롤 데이터 세트 , 이는 고차원 공간에서 본질적으로 비선형입니다. 이 경우 LLE는 이 복잡한 구조를 저차원 평면에 투영하여 변환 과정 전반에 걸쳐 독특한 기하학적 특성을 유지합니다.
내용의 테이블
LLE 알고리즘의 수학적 구현
LLE의 핵심 아이디어는 로컬로, 각 데이터 포인트 근처에서 데이터가 대략 선형 부분 공간에 있다는 것입니다. LLE는 이러한 로컬 선형 관계를 유지하면서 데이터를 펼치거나 펼치려고 시도합니다.
다음은 LLE 알고리즘의 수학적 개요입니다.
최소화: 
대상: 
어디:
- 엑스나i번째 데이터 포인트를 나타냅니다.
- ~ 안에ij데이터 포인트 x에 대한 재구성 오류를 최소화하는 가중치입니다.나이웃을 이용합니다.
로컬 관계를 유지하면서 데이터의 저차원 표현을 찾는 것을 목표로 합니다. LLE의 수학적 표현에는 각 데이터 포인트의 가중치 합으로 표현하여 각 데이터 포인트의 재구성 오류를 최소화하는 것이 포함됩니다. k 최근접이웃 ' 기여. 이 최적화에는 각 데이터 포인트에 대한 가중치의 합이 1이 되도록 보장하는 제약 조건이 적용됩니다. LLE(로컬 선형 임베딩)는 기계 학습 및 데이터 분석에 사용되는 차원 축소 기술입니다. 고차원 데이터를 저차원 공간에 매핑할 때 데이터 포인트 간의 로컬 관계를 유지하는 데 중점을 둡니다. 여기서는 LLE 알고리즘과 그 매개변수에 대해 설명하겠습니다.
국소 선형 임베딩 알고리즘
LLE 알고리즘은 여러 단계로 나눌 수 있습니다.
- 지역 선택: 고차원 공간의 각 데이터 포인트에 대해 LLE는 k-최근접 이웃을 식별합니다. LLE는 각 데이터 포인트가 이웃의 선형 결합에 의해 잘 근사화될 수 있다고 가정하기 때문에 이 단계는 매우 중요합니다.
- 중량 매트릭스 구성: LLE는 각 데이터 포인트에 대한 가중치 세트를 계산하여 이웃의 선형 조합으로 표현합니다. 이러한 가중치는 재구성 오류가 최소화되는 방식으로 결정됩니다. 선형 회귀는 종종 이러한 가중치를 찾는 데 사용됩니다.
- 전역 구조 보존: 가중치 행렬을 구성한 후 LLE는 로컬 선형 관계를 가장 잘 보존하는 데이터의 저차원 표현을 찾는 것을 목표로 합니다. 이는 비용 함수를 최소화하는 각 데이터 포인트에 대해 저차원 공간에서 일련의 좌표를 찾는 방식으로 수행됩니다. 이것 비용 함수 각 데이터 포인트가 이웃 데이터 포인트에 의해 얼마나 잘 표현될 수 있는지 평가합니다.
- 출력 임베딩: 최적화 프로세스가 완료되면 LLE는 데이터의 최종 저차원 표현을 제공합니다. 이 표현은 데이터의 차원을 줄이면서 데이터의 필수 구조를 포착합니다.
LLE 알고리즘의 매개변수
LLE에는 동작에 영향을 미치는 몇 가지 매개변수가 있습니다.
- k(이웃 수): 이 매개변수는 가중치 행렬을 구성할 때 고려되는 최근접 이웃의 수를 결정합니다. k가 클수록 더 많은 전역 관계를 포착하지만 노이즈가 발생할 수 있습니다. k가 작을수록 로컬 관계에 중점을 두지만 이상값에 민감할 수 있습니다. k에 대한 적절한 값을 선택하는 것은 알고리즘의 성공에 필수적입니다.
- 출력 공간의 차원성: 데이터가 매핑될 저차원 공간의 차원을 지정할 수 있습니다. 이는 문제의 요구 사항과 계산 복잡성과 정보 보존 간의 균형을 기반으로 선택되는 경우가 많습니다.
- 거리 측정법: LLE는 거리 측정법을 사용하여 데이터 포인트 간의 근접성을 정의합니다. 일반적인 선택에는 유클리드 거리, 맨해튼 거리 또는 사용자 정의 거리 함수가 포함됩니다. 거리 측정법의 선택은 결과에 영향을 미칠 수 있습니다.
- 정규화(선택 사항): 어떤 경우에는 과적합을 방지하기 위해 정규화 조건이 비용 함수에 추가됩니다. 정규화는 잡음이 있는 데이터를 처리하거나 이웃 수가 많을 때 유용할 수 있습니다.
- 최적화 알고리즘(선택 사항): LLE는 종종 다음과 같은 최적화 기술을 사용합니다. 특이값 분해 (SVD) 또는 고유벡터 방법을 사용하여 저차원 표현을 찾습니다. 이러한 최적화 방법에는 조정할 수 있는 자체 매개변수가 있을 수 있습니다.
LLE(로컬 선형 임베딩) 로컬 밀도 모델링과 같은 전통적인 밀도 모델링 기술을 능가하는 구조 분석의 상당한 발전을 나타냅니다. PCA 또는 요인 분석기의 혼합. 밀도 모델의 한계는 전체 구조적 다양체에 걸쳐 관찰 내용을 내장할 수 있는 일련의 전역 좌표를 일관되게 설정할 수 없다는 점입니다. 결과적으로 원본 데이터 세트의 저차원 투영 생성과 같은 작업에는 부적합한 것으로 판명되었습니다. 이러한 모델은 아래 이미지에 설명된 것처럼 선형 특징을 식별하는 데에만 탁월합니다. 그러나 LLE 고유의 기능인 복잡한 곡선 패턴을 캡처하는 데는 부족합니다.
LLE로 향상된 계산 효율성. LLE는 희소 행렬 처리로 인해 뛰어난 계산 효율성을 제공하며 다른 알고리즘보다 성능이 뛰어납니다.
국소 선형 임베딩 구현
라이브러리 가져오기
파이썬3
#importing Libraries> import> numpy as np> import> matplotlib.pyplot as plt> from> sklearn.datasets>import> make_swiss_roll> from> sklearn.manifold>import> LocallyLinearEmbedding> |
>
>
코드는 numpy를 포함하여 필요한 라이브러리를 가져오는 것으로 시작됩니다. matplotlib.pyplot , sklearn.datasets의 make_swiss_roll 및 LocallyLinearEmbedding의 sklearn.manifold .
합성 데이터 세트 생성(Swiss Roll)
파이썬3
# Code for Generating a synthetic dataset (Swiss Roll)> n_samples>=> 1000> # Define the number of neighbors for LLE> n_neighbors>=> 10> X, _>=> make_swiss_roll(n_samples>=>n_samples)> |
>
>
scikit-learn의 make_swiss_roll 함수를 사용하여 Swiss Roll과 유사한 합성 데이터세트를 생성합니다.
n_samples는 생성할 데이터 포인트 수를 지정합니다.
n_neighbors는 LLE 알고리즘에 사용되는 이웃 수를 정의합니다.
LLE(로컬 선형 임베딩) 적용
파이썬3
# Including Locally Linear Embedding> lle>=> LocallyLinearEmbedding(n_neighbors>=>n_neighbors, n_components>=>2>)> X_reduced>=> lle.fit_transform(X)> |
>
>
LLE 알고리즘의 인스턴스는 LocallyLinearEmbedding을 사용하여 생성됩니다. n_neighbors 매개변수는 임베딩 프로세스 중에 고려해야 할 이웃 수를 결정합니다.
그런 다음 LLE 알고리즘은 다음을 사용하여 원본 데이터 X에 맞춰집니다. 적합_변형 방법. 이 단계에서는 데이터 세트를 2차원(n_comComponents=2)으로 줄입니다.
원본 및 축소 데이터 시각화
파이썬3
# Code for Visualizing the original Versus reduced data> plt.figure(figsize>=>(>12>,>6>))> plt.subplot(>121>)> plt.scatter(X[:,>0>], X[:,>1>], c>=>X[:,>2>], cmap>=>plt.cm.Spectral)> plt.title(>'Original Data'>)> plt.xlabel(>'Feature 1'>)> plt.ylabel(>'Feature 2'>)> plt.subplot(>122>)> plt.scatter(X_reduced[:,>0>], X_reduced[:,>1>], c>=>X[:,>2>], cmap>=>plt.cm.Spectral)> plt.title(>'Reduced Data (LLE)'>)> plt.xlabel(>'Component 1'>)> plt.ylabel(>'Component 2'>)> plt.tight_layout()> plt.show()> |
>
>
산출:
로컬 선형 임베딩
안드로이드에서 차단된 번호 찾기
두 번째 서브플롯에서는 LLE(X_reduced)에서 얻은 축소된 데이터가 원본 데이터와 유사한 방식으로 시각화됩니다. 데이터 포인트의 색상은 여전히 원래 데이터의 세 번째 특징(X[:, 2])에 의해 결정됩니다. plt.tight_layout() 함수는 서브플롯 사이의 적절한 간격을 보장하는 데 사용됩니다.
LLE의 장점
LLE(로컬 선형 임베딩)로 알려진 차원 축소 방법은 데이터 처리 및 시각화에 많은 이점을 제공합니다. LLE의 주요 이점은 다음과 같습니다.
- 지역 구조 보존 : LLE는 데이터 내 로컬 관계나 구조를 유지하는 데 탁월합니다. 가까운 데이터 포인트 사이의 쌍별 거리를 유지하여 비선형 다양체의 고유한 형상을 성공적으로 포착합니다.
- 비선형성 처리 : LLE는 다음과 같은 선형 기술과 달리 데이터의 비선형 패턴과 구조를 캡처하는 기능이 있습니다. 주요 구성 요소 분석 (PCA). 복잡하거나 구부러지거나 뒤틀린 데이터 세트로 작업할 때 특히 유용합니다.
- 차원 축소 : LLE는 데이터의 기본 속성을 유지하면서 데이터의 차원성을 낮춥니다. 특히 고차원 데이터 세트로 작업할 때 이러한 감소로 인해 데이터 표시, 탐색 및 분석이 더 간단해집니다.
LLE의 단점
- 차원의 저주 : LLE가 체험할 수 있는 차원의 저주 다른 많은 차원 축소 접근법과 마찬가지로 매우 고차원 데이터와 함께 사용할 때. 차원이 증가함에 따라 로컬 상호 작용을 캡처하는 데 필요한 이웃 수가 증가하여 잠재적으로 접근 방식의 계산 비용이 증가합니다.
- 메모리 및 계산 요구 사항 : 대규모 데이터 세트의 경우 LLE의 일부로 가중치 인접 행렬을 생성하면 메모리 집약적일 수 있습니다. 고유값 분해 단계는 대규모 데이터 세트에 대해 계산적으로 부담을 줄 수도 있습니다.
- 특이치 및 노이즈 데이터 : LLE는 이상 현상과 불안한 데이터 포인트에 취약합니다. 임베딩 품질이 영향을 받을 수 있으며 로컬 선형 관계가 이상값으로 인해 왜곡될 수 있습니다.