기계 학습을 위한 상위 10가지 차원 축소 기법

게시 됨: 2020-08-07

매초 세계는 전례 없는 양의 데이터를 생성합니다. 데이터가 모든 산업에 걸쳐 비즈니스 및 조직의 중요한 구성 요소가 됨에 따라 대규모 데이터 세트에서 의미 있는 통찰력을 추출하기 위해 데이터를 적절하게 처리, 분석 및 시각화하는 것이 필수적입니다. 그러나 문제가 있습니다. 더 많다는 것이 항상 생산적이고 정확하다는 의미는 아닙니다. 매초 생성하는 데이터가 많을수록 유효한 추론을 도출하기 위해 데이터를 분석하고 시각화하는 것이 더 어려워집니다.

여기서 차원 축소 가 작동합니다.

목차

차원 축소란 무엇입니까?

간단히 말해서 차원 축소 는 데이터 기능 집합의 차원을 줄이는 기술을 말합니다. 일반적으로 기계 학습 데이터 세트(기능 세트)에는 수백 개의 열(예: 기능) 또는 포인트 배열이 포함되어 3차원 공간에 거대한 구를 생성합니다. 차원 축소 를 적용하면 열의 수를 수량화 가능한 개수로 줄이거나 줄여서 3차원 구를 2차원 개체(원)로 변환할 수 있습니다.

이제 질문이 나옵니다. ML 알고리즘에 직접 입력하고 모든 것을 자체적으로 해결할 수 있는데 데이터 세트의 열을 줄여야 하는 이유는 무엇입니까?

차원의 저주는 차원 축소 의 적용을 요구합니다.

차원의 저주

차원의 저주는 저차원 공간에 존재하지 않는 고차원 공간의 데이터로 작업(분석 및 시각화)할 때 발생하는 현상입니다.

저주 차원

원천

기능 세트의 기능 또는 요인(변수라고도 함)의 수가 많을수록 훈련 세트를 시각화하고 작업하기가 더 어려워집니다. 고려해야 할 또 다른 중요한 점은 대부분의 변수가 종종 상관 관계가 있다는 것입니다. 따라서 기능 세트 내의 모든 변수를 생각한다면 훈련 세트에 많은 중복 요소를 포함하게 됩니다.

또한, 변수가 많을수록 예제에서 가능한 모든 특성 값 조합을 나타내는 샘플 수가 많아집니다. 변수의 수가 증가하면 모델이 더 복잡해져서 과적합 가능성이 높아집니다. 많은 기능을 포함하는 대규모 데이터 세트에서 ML 모델을 훈련하면 훈련 데이터에 종속될 수밖에 없습니다. 이로 인해 실제 데이터에서 잘 수행되지 않는 과대적합된 모델이 생성됩니다.

차원 축소의 주요 목표는 과적합을 피하는 것입니다. 기능이 상당히 적은 훈련 데이터는 모델이 단순하게 유지되도록 보장합니다. 더 작은 가정을 할 것입니다.

이 외에도 차원 축소에는 다음과 같은 많은 다른 이점이 있습니다.

  • 소음과 중복 기능을 제거합니다.
  • 모델의 정확도와 성능을 향상시키는 데 도움이 됩니다.
  • 보다 실질적인 차원에 적합하지 않은 알고리즘의 사용을 용이하게 합니다.
  • 필요한 저장 공간의 양이 줄어듭니다(적은 데이터는 더 적은 저장 공간을 필요로 함).
  • 데이터를 압축하여 계산 시간을 줄이고 데이터를 더 빠르게 훈련할 수 있습니다.

읽기 : 선형 판별 분석 이란 무엇입니까?

차원 축소 기법

차원 축소 기술은 크게 두 가지 범주로 분류할 수 있습니다.

1. 기능 선택

기능 선택 방법은 원본 데이터 세트에서 가장 관련성이 높은 입력 변수의 하위 집합을 찾는 것을 목표로 합니다. 기능 선택에는 다음과 같은 세 가지 전략이 포함됩니다.

  • 필터 전략
  • 래퍼 전략
  • 임베디드 전략

2. 특징 추출

특징 추출(특징 투영이라고도 함)은 고차원 공간의 데이터를 더 작은 차원의 데이터로 변환합니다. 이 데이터 변환은 선형일 수도 있고 비선형일 수도 있습니다. 이 기술은 각각 입력 변수의 조합(입력 변수와 동일한 정보 포함)인 더 작은 새 변수 집합을 찾습니다.

더 이상 고민하지 않고 일반적으로 사용되는 몇 가지 차원 축소 기술에 대한 자세한 설명을 살펴보겠습니다!

1. 주성분 분석(PCA)

주성분 분석은 차원 축소의 선도적인 선형 기술 중 하나입니다. 이 방법은 저차원 표현에서 데이터의 분산을 최대화하는 방식으로 데이터를 저차원 공간에 직접 매핑합니다.

기본적으로 데이터 세트의 ' n' 좌표를 주성분이라고 하는 새로운 n 좌표 세트로 직교 변환하는 통계 절차입니다 . 이 변환으로 인해 최대 분산을 갖는 첫 번째 주성분이 생성됩니다. 각 후속 주성분은 선행 성분과 직교(상관되지 않음)라는 조건에서 가능한 가장 높은 분산을 가집니다.

PCA 변환은 원래 변수의 상대적 스케일링에 민감합니다. 따라서 PCA 방법을 구현하기 전에 먼저 데이터 열 범위를 정규화해야 합니다. 기억해야 할 또 다른 사항은 PCA 접근 방식을 사용하면 데이터 세트가 해석 가능성을 잃게 된다는 것입니다. 따라서 해석 가능성이 분석에 중요한 경우 PCA는 프로젝트에 적합한 차원 축소 방법이 아닙니다.

2. 비음수 행렬 분해(NMF)

NMF는 음이 아닌 행렬을 두 개의 음이 아닌 행렬의 곱으로 나눕니다. 이것이 NMF 방법을 주로 음이 아닌 신호(예: 천문학)와 관련된 영역에서 유용한 도구로 만드는 이유입니다. Lee & Seung의 곱셈 업데이트 규칙은 불확실성을 포함하여 누락 데이터 및 병렬 계산, 순차 구성을 고려하여 NMF 기법을 개선했습니다.

이러한 내포물은 NMF 접근 방식을 안정적이고 선형으로 만드는 데 기여했습니다. PCA와 달리 NMF는 행렬의 평균을 제거하지 않으므로 비물리적인 음이 아닌 플럭스가 생성됩니다. 따라서 NMF는 PCA 방법보다 더 많은 정보를 보존할 수 있습니다.

순차 NMF는 구성 중 안정적인 구성 요소 기반과 선형 모델링 프로세스가 특징입니다. 이것은 천문학에서 완벽한 도구가 됩니다. 순차 NMF는 외행성 감지 및 항성주위 디스크의 직접 이미징과 같은 천문학에서 항성주위 구조의 직접 이미징에서 플럭스를 보존할 수 있습니다.

3. 선형 판별 분석(LDA)

선형 판별 분석은 통계, 패턴 인식 및 기계 학습에 널리 적용되는 Fisher의 선형 판별 방법을 일반화한 것입니다. LDA 기술은 둘 이상의 객체 클래스를 특성화하거나 구별할 수 있는 기능의 선형 조합을 찾는 것을 목표로 합니다. LDA는 클래스 분리성을 최대화하는 방식으로 데이터를 나타냅니다. 동일한 클래스에 속하는 객체는 투영을 통해 병치되지만 다른 클래스의 객체는 멀리 떨어져 배열됩니다.

4. 일반화된 판별 분석(GDA)

일반화된 판별 분석은 커널 함수 연산자를 활용하는 비선형 판별 분석입니다. 기본 이론은 지원 벡터 머신(SVM)의 이론과 매우 밀접하게 일치하므로 GDA 기술은 입력 벡터를 고차원 기능 공간으로 매핑하는 데 도움이 됩니다. LDA 접근 방식과 마찬가지로 GDA는 클래스 내 분산에 대한 클래스 간 분산의 비율을 최대화하여 저차원 공간에서 변수에 대한 투영을 찾으려고 합니다.

5. 결측값 비율

주어진 데이터세트를 탐색할 때 데이터세트에 일부 누락된 값이 있음을 발견할 수 있습니다. 누락된 값을 처리하는 첫 번째 단계는 누락된 값의 원인을 식별하는 것입니다. 따라서 적절한 방법을 사용하여 누락된 값을 대치하거나 완전히 삭제할 수 있습니다. 이 접근 방식은 결측값이 몇 개 있는 상황에 적합합니다.

그러나 결측값이 너무 많으면(예: 50% 이상) 어떻게 해야 합니까? 이러한 상황에서 임계값을 설정하고 결측값 비율 방법을 사용할 수 있습니다. 임계값이 높을수록 차원 축소가 더 적극적입니다. 변수의 결측값 백분율이 임계값을 초과하면 변수를 삭제할 수 있습니다.

일반적으로 결측값이 많은 데이터 열에는 유용한 정보가 거의 포함되어 있지 않습니다. 따라서 설정된 임계값보다 높은 결측값이 있는 모든 데이터 열을 제거할 수 있습니다.

6. 저분산 필터

결측 변수에 결측값 비율 방법을 사용하는 것처럼 상수 변수의 경우 저분산 필터 기술이 있습니다. 데이터세트에 상수 변수가 있는 경우 모델의 성능을 향상시킬 수 없습니다. 왜요? 편차가 0이기 때문입니다.

이 방법에서도 임계값을 설정하여 모든 상수 변수를 제거할 수 있습니다. 따라서 임계값보다 낮은 분산을 갖는 모든 데이터 열이 제거됩니다. 그러나 저분산 필터 방법에 대해 기억해야 할 한 가지는 분산이 범위에 따라 다르다는 것입니다. 따라서 이 차원 축소 기술을 구현하기 전에 정규화를 수행해야 합니다.

7. 고상관 필터

데이터 세트가 유사한 패턴/트렌드가 많은 데이터 열로 구성된 경우 이러한 데이터 열은 동일한 정보를 포함할 가능성이 높습니다. 또한 더 높은 상관 관계를 나타내는 차원은 모델의 성능에 부정적인 영향을 미칠 수 있습니다. 이러한 경우, 이러한 변수 중 하나는 ML 모델을 제공하기에 충분합니다.

이러한 상황에서는 Pearson 상관 행렬을 사용하여 높은 상관 관계를 나타내는 변수를 식별하는 것이 가장 좋습니다. 일단 식별되면 VIF(Variance Inflation Factor)를 사용하여 그 중 하나를 선택할 수 있습니다. 더 높은 값( VIF > 5 )을 갖는 모든 변수를 제거할 수 있습니다. 이 접근 방식에서는 수치 열( Pearson의 제품 모멘트 계수 )과 명목 열( Pearson의 카이제곱 값 ) 간의 상관 계수를 계산해야 합니다. 여기서, 설정된 임계값보다 높은 상관 계수를 갖는 열 쌍은 모두 1로 줄어듭니다.

상관 관계는 규모에 민감하므로 열 정규화를 수행해야 합니다.

8. 역기능 제거

역방향 특징 제거 기법에서는 모든 'n' 차원으로 시작해야 합니다. 따라서 주어진 반복에서 특정 분류 알고리즘이 n개의 입력 기능에 대해 훈련되도록 훈련할 수 있습니다. 이제 한 번에 하나의 입력 기능을 제거하고 n-1개의 입력 변수 에 대해 동일한 모델을 n 번 훈련해야 합니다 . 그런 다음 제거 시 오류율이 가장 적게 증가하는 입력 변수를 제거하여 n-1개의 입력 기능 을 남깁니다 . 또한 n-2개의 기능 을 사용하여 분류를 반복하고 다른 변수를 제거할 수 없을 때까지 계속합니다.

각 반복( k) 은 오류율이 e(k) 인 nk개의 특징에 대해 훈련된 모델을 생성합니다 . 그 다음에는 주어진 ML 알고리즘으로 해당 분류 성능에 도달하는 데 필요한 최소 기능 수를 정의하기 위해 최대 견딜 수 있는 오류율을 선택해야 합니다.

더 읽어보기: 비즈니스에서 데이터 분석이 중요한 이유

9. 포워드 피처 구축

전방 특징 구성은 후방 특징 제거 방법의 반대입니다. 순방향 기능 구성 방법에서는 하나의 기능으로 시작하여 한 번에 하나의 기능을 추가하여 계속 진행합니다(성능이 가장 크게 향상되는 변수임).

순방향 기능 구성과 역방향 기능 제거는 모두 시간과 계산 집약적입니다. 이러한 방법은 이미 입력 열 수가 적은 데이터세트에 가장 적합합니다.

10. 랜덤 포레스트

랜덤 포레스트는 우수한 분류기일 뿐만 아니라 특징 선택에도 매우 유용합니다. 이 차원 축소 접근 방식에서는 대상 속성에 대해 광범위한 트리 네트워크를 신중하게 구성해야 합니다. 예를 들어, 얕은 나무의 큰 집합(예: 2000개)을 만들 수 있습니다(예: 두 개의 수준이 있음). 여기서 각 나무는 총 속성 수의 작은 부분(3)에 대해 훈련됩니다.

목표는 각 속성의 사용 통계를 사용하여 가장 유익한 기능 하위 집합을 식별하는 것입니다. 속성이 가장 잘 분할된 것으로 확인되면 일반적으로 고려할 가치가 있는 유익한 기능이 포함됩니다. 다른 속성과 관련하여 임의 포리스트의 속성 사용 통계 점수를 계산하면 가장 예측 가능한 속성을 얻을 수 있습니다.

결론

결론적으로 차원 축소와 관련하여 절대 최고의 기술은 없습니다. 각각의 특징과 장점이 있습니다. 따라서 차원 축소 기술을 구현하는 가장 좋은 방법은 체계적이고 통제된 실험을 사용하여 어떤 기술이 모델과 함께 작동하고 주어진 데이터 세트에서 최고의 성능을 제공하는지 파악하는 것입니다.

기계 학습에 대해 자세히 알아보려면 IIIT-B 및 upGrad의 기계 학습 및 AI PG 디플로마를 확인하세요. 이 PG 디플로마는 일하는 전문가를 위해 설계되었으며 450시간 이상의 엄격한 교육, 30개 이상의 사례 연구 및 과제, IIIT- B 동문 자격, 5개 이상의 실용적인 실습 캡스톤 프로젝트 및 최고의 기업과의 취업 지원.

차원 축소란 무엇입니까?

차원 축소는 데이터를 시각화하고 기존 방법을 사용하여 분명하지 않은 패턴을 찾기 위해 고차원 데이터를 저차원 표현으로 매핑하는 데이터 마이닝에서 사용되는 기술입니다. 데이터 시각화 및 패턴 찾기를 용이하게 하기 위해 데이터를 저차원 공간에 투영하기 위해 클러스터링 기술 또는 분류 기술과 함께 자주 사용됩니다.

차원을 줄이는 방법은 무엇입니까?

3차원 축소 기술은 대중적이고 널리 사용됩니다. 1. PCA(Principal Component Analysis): 데이터의 가장 큰 분산을 첫 번째 좌표로 설명하고 두 번째로 큰 분산을 설명하도록 데이터 집합을 새로운 좌표계로 변환하여 데이터 집합의 차원을 줄이는 방법입니다. 두 번째 좌표 등으로. 2. 요인 분석: 데이터 세트에서 독립 변수(요인이라고도 함)를 추출하는 통계적 기법입니다. 목적은 데이터 세트의 변수 수를 단순화하거나 줄이는 것입니다. 3. 대응 분석: 데이터 세트에서 범주형 변수와 연속형 변수를 동시에 고려할 수 있는 다목적 방법입니다.

차원 축소의 단점은 무엇입니까?

차원 축소의 주요 단점은 원본 데이터의 재구성을 보장하지 않는다는 것입니다. 예를 들어, PCA에서 입력 공간에서 서로 매우 가까운 두 데이터 포인트가 출력에서 ​​서로 매우 멀리 떨어져 있을 수 있습니다. 이로 인해 출력 데이터에서 입력 지점을 찾기가 어렵습니다. 또한 차원 축소 후에 데이터를 해석하기가 더 어려울 수 있습니다. 예를 들어 PCA에서는 여전히 첫 번째 구성 요소를 첫 번째 주요 구성 요소로 생각할 수 있지만 두 번째 구성 요소 이상에 의미를 부여하는 것은 쉽지 않습니다. 실용적인 관점에서 이러한 단점 때문에 차원 축소는 일반적으로 데이터 집합에 대해 k-means 클러스터링 또는 다른 차원 축소 기술을 수행합니다.