결과 해석하기
예측에 가장 큰 영향을 주는 특성이 무엇인지 파악하는 일은 거의 항상 중요합니다. 직관에 어긋난 결과에서 통찰을 얻을 수도 있고, 소수의 특성만으로도 모델 정확도의 대부분을 설명한다면 다른 특성에 시간을 들여 수집하거나 가공하지 않아도 될 수 있어요.
이 예제에서는 LISTPRICE 정보 없이 학습된 모델을 살펴보겠습니다. 그 정보가 없을 때, 가격에 가장 큰 영향을 주는 것은 무엇일까요?
- 참고: 특성 중요도 배열
importances는 이미model.featureImportances.toArray()에서 생성되어 제공됩니다.
이 연습은 강의의 일부입니다
PySpark로 하는 Feature Engineering
연습 안내
importances의 값으로pandas데이터프레임을 만들고, 매개변수columns를 설정해 열 이름을importance로 지정하세요.- 가져온 특성 이름 목록
feature_cols를pd.Series()로 감싸 새pandas.Series를 만들고, 이를 열fi_df['feature']에 할당하세요. sort_values()로 데이터프레임을 정렬하되,by매개변수를importance열로 설정하고ascending을False로 지정해 내림차순으로 정렬하세요. 결과를 확인하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Convert feature importances to a pandas column
fi_df = pd.DataFrame(____, columns=[____])
# Convert list of feature names to pandas column
fi_df['feature'] = pd.____(____)
# Sort the data based on feature importance
fi_df.____(by=[____], ascending=____, inplace=True)
# Inspect Results
fi_df.head(10)