인프런 커뮤니티 질문&답변
threshold
작성
·
269
0
강의를 보다보면
lasso 모델(?)을 통해 만들어진 lasso라는 변수를 통해 feature importance를 구하는데요. 이렇게 만들어진 feature importance 가 높은 상위 3개를 뽑는다는 것 까지는 알겠는데 뒤에 0.01을 더하는 이유는 무엇인가요?
threshold = np.sort(importance)[-3] + 0.01
상위 3개중에 꼴찌인 bmi를 포함시키지 않기 위해서인가요...(??)
그리고 sfm 에서의 median은 뭐에 대한 메디안인지도 안정해졌는데 어떻게 계산이되는걸까요..(?)
퀴즈
결정 트리(Decision Tree) 모델이 데이터를 분할(Split)할 때 사용하는 주요 기준 지표로 가장 적절한 것은 무엇일까요?
평균 제곱 오차 (Mean Squared Error)
정보 이득 (Information Gain) 또는 지니 계수 (Gini Coefficient)
회귀 계수 (Regression Coefficient)
주성분 (Principal Component)
답변 1
1
안녕하십니까,
1. threshold = np.sort(importance)[-3] + 0.01
상위 3개중에 꼴찌인 bmi를 포함시키지 않기 위해서인가요...(??)
=> 네, 맞습니다. 해당 threshold 기준으로는 bmi가 나오지 않습니다
2. 그리고 sfm 에서의 median은 뭐에 대한 메디안인지도 안정해졌는데 어떻게 계산이되는걸까요..(?)
=> SelectFromModel(,, threshold=)의 threshold인자가 보통은 숫자형을 받는데, 문자열을 받을 수가 있습니다. threshold = 'median' 이면 모델이 Lasso와 같은 선형 회귀에는 회귀계수값 즉 model.coef_ 값의 median 값을 자동으로 threshold로 지정합니다.
트리 모델의 경우는 model.feature_importance값의 median값을 자동으로 지정합니다.
감사합니다.





