머신러닝/데이터분석

피처 중요도 확인

su0a 2024. 3. 30. 10:44

1. 점 이연 상관관계 이용

각 컬럼이 연속변수면서 예측하고자 하는 값이 이진 변수일때 사용한다. 각 피처와 타겟 변수 사이의 상관관계 수치를 구할 수 있고 낮은 상관관계에 있는 특성들은 제거할 수 있다. 

사용법

# pointbiserialr 함수를 사용하면 상관관계 수치와 p-value 값을 알 수 있다.

from scipy.stats pointbiserialr

feature_list = 타겟변수와의 상관관계를 알아보고 싶은 컬럼들을 리스트로 표현한 것

for feature in feature_list:

      correlation_org, p_value_org = pointbiserialr(train[feature], train['Outcome'])

 

 

2. RandomForest 모델 이용

랜덤 포레스트 모델을 사용하여 train데이터를 훈련시키고 각 feature의 중요도를 확인

사용법

from sklearn.ensemble import RandomForestClassifier

RF_model = RandomForestClassifier()

RF_model.fit(train_x , train_y)

importances = RF_model.feature_importances_

feature_names = RF_model.feature_names_in_

 

 

3. LogisticRegression 모델 이용

로지스틱 회귀 모델을 사용하여 train데이터를 훈련시키고 모델의 계수를 사용하여 feature의 중요도를 확인

사용법

from sklearn.linear_model import LogisticRegression

LR_model = LogisticRegression()

LR_model.fit(train_x , train_y)

importances = list(np.abs(LR_model.coef_[0]))