Python 튜토리얼

기초

  • moneyIcon 상금 : 교육
  • 9,999명 D-100719

 

Lv4 전처리 3/9 python 파이썬 다중공선성 해결 - PCA (1)

2021.08.11 15:50 3,394 조회

다중공선성 해결


안녕하세요. 이전 시간에 말했듯이, 다중공선성을 해결하는 방법은 크게 세가지가 있습니다 .

  1. 변수 정규화
  2. 변수 제거
  3. PCA(주성분 분석)


변수 정규화 방법은 수치형 데이터들을 Min-Max scaling이나 Z-Score scaling 등의 기법으로 정규화 시켜주는 방법이고

변수 제거 방법은 변수의 VIF(분산팽창요인) 계수가 10이상인 변수를 제거하는 방법 이였습니다.


마지막 세번째 방법은 PCA 를 통한 해결 방법 입니다. PCA를 이해하기 위해서는 먼저 차원축소의 개념을 이해하셔야 합니다.

이번 시간에는 차원축소란 무엇인지 알아보도록 하겠습니다.



차원 축소란 ❔❔


차원 축소는 많은 피처로 구성된 다차원 데이터 셋의 차원을 축소해 새로운 차원의 데이터 셋을 생성하는 것 입니다.  

일반적으로 차원이 증가할수록 데이터 포인트 간의 거리가 기하급수적으로 멀어지게 되고, 희소(sparse)한 구조를 가지게 됩니다.  

수백 개 이상의 피처로 구성된 데이터 셋의 경우 상대적으로 적은 차원에서 학습된 모델보다 예측 신뢰도가 떨어집니다.

또한 피처가 많은 경우 개별 피처 간의 상관관계가 높을 가능성이 큽니다.  



선형 회귀와 같은 선형 모델에서는 입력 변수 간의 상관관계가 높을 경우, 이로 인한 다중 공선성 문제로 모델의 예측 성능이 떨어집니다.

그리고 수십 개 이상의 피처가 있는 데이터의 경우 이를 시각적으로 표현해 데이터의 특성을 파악하기는 불가능 합니다.  


이 경우 3차원 이하의 차원 축소를 통해서 시각적으로 데이터를 압축해서 표현할 수 있습니다.

또한 차원 축소를 할 경우 학습 데이터의 크기가 줄어들어서 학습에 필요한 처리 능력도 향상 시킬 수 있습니다.  


일반적으로 차원 축소는feature selection feature extraction으로 나눌 수 잇습니다.  

feature selection 은 말 그대로 특정 피처에 종속성이 강한 불필요한 피처는 아예 제거하고, 데이터의 특징을 잘 나타내는 주요 피처만 선택하는 것이다.

feature extraction은 기존 피처를 저 차원의 중요 피처로 압축해서 추출하는 것이다.

새롭게 추출된 중요 특성은 기존의 피처가 압축된 것이므로 기존의 피처와는 완전히 다른 값이 된다.


다중공선성을 해결하는 방법 중 하나 인 PCA의 경우 feature extraction의 기법 중 하나 입니다.


feature extraction🥁


기존 피처를 단순 압축이 아닌, 함축적으로 더 잘 설명할 수 있는 또 다른 공간으로 매핑 해 추출하는 것입니다.

학생을 평가하는 다양한 요소로 모의고사 성적, 종합 내신 성적 , 수능성적 등 관련된 여러 가지 피처로 되어있는 데이터 셋이라면 이를 학업 성취도커뮤니케이션 능력,문제 해결력과 같은 더 함축적인 요약 특성으로 추출할 수 있습니다.

이번 시간에는 PCA의 상위 개념인 차원 축소와 feature extraction에 대해 알아보았습니다. 다음 시간에는 PCA의 개념에 대해 알아 보도록 하겠습니다.


감사합니다.🧓👴

로그인이 필요합니다
0 / 1000
그린티
2021.09.12 12:49

done

다욤
2021.09.19 18:18

done

Holte
2021.10.06 21:44

왼쪽눈썹왁싱
2021.11.01 17:38

changhyeon
2021.12.29 14:57

done

moran
2022.01.03 16:14

dbnoid
2022.01.18 20:46

hijihyo
2022.01.25 15:53

호랭이띠
2022.01.31 22:16

done

acebed
2022.03.10 21:07

done

하랴랴
2022.03.15 16:01

done

kimgugu
2022.03.27 14:21

Kdata
2022.05.02 14:26

krooner
2022.05.19 21:26

dirno
2022.07.11 15:02

카르루알룰
2023.01.09 11:48

done

highllight
2023.02.02 13:56

김시옷
2023.05.25 00:56

done+

이전 글
인덱싱을 위한 Pandas .iloc .loc 사용 방법 데이터 분석 및 조작을위한
대회 - Python 튜토리얼
좋아요 4
조회 1,710
댓글 0
일 년 전
현재 글
Lv4 전처리 3/9 python 파이썬 다중공선성 해결 - PCA (1)
대회 - Python 튜토리얼
좋아요 11
조회 3,394
댓글 18
3년 전
다음 글
다음 글이 존재하지 않습니다.