피처 엔지니어링

Python으로 배우는 금융 분야 Machine Learning

Nathan George

Data Science Professor

비선형 피처 상관관계

Python으로 배우는 금융 분야 Machine Learning

선형 모델의 한계

# add non-linear interaction term for a linear model
SMAxRSI = amd_df['14-day SMA'] * amd_df['14-day RSI']

상호작용 피처를 수동으로 생성하지 않아도 되는 모델:

트리 기반 모델

  • 랜덤 포레스트
  • 그래디언트 부스팅

기타

  • 신경망
Python으로 배우는 금융 분야 Machine Learning

거래량 대 가격 변화

Python으로 배우는 금융 분야 Machine Learning

가격 및 거래량

Python으로 배우는 금융 분야 Machine Learning

거래량 피처

amd_df['Adj_Volume_1d_change'] = amd_df['Adj_Volume'].pct_change()

one_day_change = amd_df['Adj_Volume_1d_change'].values amd_df['Adj_Volume_1d_change_SMA'] = talib.SMA(one_day_change, timeperiod=10)
Python으로 배우는 금융 분야 Machine Learning

날짜/시간 피처 엔지니어링

날짜/시간에서 요일, 월, 연도로 화살표가 표시된 그래픽

Python으로 배우는 금융 분야 Machine Learning

요일 추출

print(amd_df.index.dayofweek)
Int64Index([2, 3, 4, 0, 1, 2, 3, 4, 0, 1,
            ...
            1, 2, 3, 4, 0, 1, 2, 3, 4, 0],
           dtype='int64', name='Date', length=4807)
Python으로 배우는 금융 분야 Machine Learning

더미 변수

days_of_week = pd.get_dummies(amd_df.index.dayofweek,
                                prefix='weekday',
                                drop_first=True)

print(days_of_week.head())
            weekday_1  weekday_2  weekday_3  weekday_4
Date
2018-04-10          1          0          0          0
2018-04-11          0          1          0          0
2018-04-12          0          0          1          0
2018-04-13          0          0          0          1
2018-04-16          0          0          0          0
Python으로 배우는 금융 분야 Machine Learning

새 피처의 상관관계 플롯

Python으로 배우는 금융 분야 Machine Learning

피처를 직접 만들어 보세요!

Python으로 배우는 금융 분야 Machine Learning

Preparing Video For Download...