본문 바로가기 주메뉴 바로가기

채널콘

CHANNELCON

데이콘 아카데미

데이콘인피니티의 데이터, AI, Web3, 클라우드 전문가들에게 전문적이고 신뢰할 수 있는 지식을 배울 수 있는 데이콘아카데미 입니다.

[Feature Engineering]

관리자 2022-11-28 조회수 185
004.jpg

Feature Engineering란?

◉ Feature Engineering 즉 특성공학은 머신러닝 알고리즘을 작동하기 위해 데이터에 대한 도메인 지식을 활용하여 특징을 만들어내는 과정


Feature가 중요한 이유

◉ 머신러닝은 입력 데이터의 함수이며 선형 또는 비선형의 형태를 가질 수 있는데, 우리는 훈련 데이터를 사용해서 이 함수를 학습하지만, 매번 학습이 잘되어 결과가 나타나지 않음. 내가 가지고 있는 데이터가 방대해도 그 데이터를 모두 결과를 도출하는데 쓰면 정확히 나타날 듯하지만 오히려 결과를 잘못되게 도출하는 경우가 많음. 통계분석에서 선형 함수의 독립변수가 많다고 해서 종속변수의 기댓값이 정확도가 무조건 올라가지 않는 이유. 즉 머신 러닝의 성능은 어떤 데이터를 입력하는지가 굉장히 의존적이기에 가장 적절한 방법은 먼저 충분한 데이터를 먼저 모으고 어떤 feature가 유용한지 아닌지 확인하는 과정을 거치게 됨.


Dimension Reduction(차원 감소)

◉ 차원 감소는 feature extraction 다시 말해 특징 추출이라는 말로도 불리며 만약 하나의 종속변수를 설명하는 독립변수 3개를 가지고 있을 때 우리는 3개의 feature모두가 필요한 것은 아니게 됨. 몇몇의 feature는 다른 특징들의 조합으로 표현가능할 수도있고 어떤 feature는 특정 feature의 완벽히 상반될 수 있기 때문. 이것을 다른 말로 관찰 대상들을 잘 설명할 수 있는 잠재 공간(latent space)은 실제 관찰 공간(observation space)보다 작을 수 있다고 하고 이렇게 관찰 공간 위의 샘플들에 기반으로 잠재 공간을 파악하는 것을 차원 축소(dimensionality reduction technique) 라고함.


Feature Selection(특징 선택)

◉ 특징 랭킹(Feature Ranking) 또는 특징 중요도(Feature Importance)라고도 하며 목적은 모든 특징의 부분 집합을 선택하거나, 불필요한 특징을 제거하여 간결한 특징 집합을 만드는 것. 특징선택은 분석자가 사전의 배경 지식 을 이용해서 진행 할 수도 있지만, 자동 특징 선택 (automatic feature selection methods)을 사용할 수도 있음. 해당 방법들은 특징 중 몇 개를 없애보고 개선된다면 성능을 확인해보는 방법이며 이것은 대부분의 특징 선택 알고리즘의 기본 동작방식임.


Feature Extraction(특징 추출)

◉ 특징 추출이 특징 선택과 다른 점은 원본 특징 들의 조합으로 새로운 특징을 생성하는 것이며, 차원의 원본 feature 공간을 저차원의 새로운 feature 공간으로 투영시킨다. 새롭게 구성된 feature 공간은 보통은 원본 feature 공간의 선형 또는 비선형 결합임. 가장 대표적인 알고리즘에 PCA(Principle Component Analysis)가 있으며, 간단히 설명하면 각 변수(Feature)를 하나의 축으로 투영시켰을 때 분산이 가장 큰 축을 첫번째 주성분으로 선택하고 그 다음 큰 축을 두번째 주성분으로 선택하고 데이터를 선형 변환하여 다차원을 축소하는 방법.


다음글
[Data Preprocessing]
이전글
[EDA]