논문리뷰

[논문리뷰]Interpretable stock price forecasting model using genetic algorithm-machinelearning regressions and best feature subset selection((1))

komizke 2024. 8. 20. 19:28

* 본글의 사진과 내용은 논문을 바탕으로 작성하였습니다.

논문 출처


1. Introduction

Interpretability 관점에서 ML과 DL 모델은 black-box structure를 나타낸다.

Black-box structure입력과 출력 사이의 관계를 예측할 수 있지만,

그 과정에서 중요한 역할을 한 요소에 대한 명확한 설명이 어려운 구조이다.

 

 

본 연구는 기존의 주식 시장에 대한 연구에서 간과했던

시계열 데이터의 특성 Time-dependency, Collective behavior of features 두 가지를 반영한다.

 

 

Interpretabilty를 향상하기 위해 Individual feature importance에 초점을 맞추는 것이 아니라

Collective behavior of featuers에 초점을 맞춘다.

 

 

Piecewise optimal curve fitting((POCF))을 사용하여

짧은 기간 동안의 주식 가격에 대한 유연한 local interpretability를 제공한다.

 


2. Literature Review

이전의 주가 예측 모델들은 학습 메커니즘에 대한 설명성이 부족하여

투자자들이 결과를 이해하기 어려운 black-box structure이다.

주가 예측 결과에 대한 근본적인 근거를 발견하여

투자자와 모델 개발자들이 투자 전략을 직접 계획 가능하도록

human-friendly interpretability를 목표로 한다.

 

 

효율적 시장 가설과 행동 경제학 측면에서 비합리적, 주관적 방법인 주가의 기술적 분석은

통찰력을 얻기 위해 human-friendly interpretability가 필요하다.

 

 

대표적인 Interpretability techniquesLIME, SHAP이다.

일반적으로 입력 기능과 모델의 출력 사이의 관계에 초점을 맞추어

features의 기여도를 정량화하고 시각화한다.

 

 

아래와 같은 LIME, SHAP의 문제점으로 인하여  features와 모델 사이의 관계를 해석할 수 없다.

 

1. Features 사이의 상관관계 여부에 따른 features 중요도 계산 문제 발생

 

2. Features는 상대적으로 결정되고 features의 중요도 점수는 선택된 features에 의해 결정

 

 

또 다른 방법인 Fuzzy system은 정보의 종류에 따라 두 가지 접근으로 나뉜다.

 

1. Expert-knowledge-based approach

전문가 의사 결정 과정을 모방하는 방식으로 파라미터와 네트워크 구조를 조정하여 전문가의 규칙을 찾는다.

 

2. Data-driven approach

데이터로부터 규칙과 네트워크 파라미터를 추출해 패턴과 지식을 발견한다.

 

 

더 나아가, 최적화 기술과 다양한 기술적 지표가 결합된 Neuro-fuzzy system

주식 가격 예측의 정확도를 올려주지만 모델의 interpretability를 감소시키다. 

 


3. Methodology

3.1 Markovian property of stock price forecasting

Classic Markov process에서는 현재 주식 가격 $X_{t}$는 이전 상태 $X_{t-1}$에 의해 영향받는다.

 

하지만 주식 가격 데이터 $X_{t}$는 과거의 데이터 $n$개에 영향받는다.

 


3.2 Generating separate input feature sets

EXXON MOBIL((XOM)) 주식에 대해 가격 예측Interpretability 분석 대상으로 선택한다.

 

 

'High', 'Low', 'Open', 'Volume'  등을 포함한 71개의 Technical indicators

Internal features로 구분하고 Target value'Close'로 설정한다.

 

 

Internal features는 주관적이며 과거 주가 기반이므로 미래 주가 예측에 대한 인과관계를 제공하지 못한다.

Human-friendly interpretability 향상을 위해, 사회적 환경과 밀접하게 관련된

‘세계 주식 시장 지수’, ‘같은 업종 내 경쟁 기업’, ‘유가’, ‘재생 에너지 업종내 경쟁 기업’에서

31개 데이터 종류 선택하고 이를 External features로 지정한다.

 

 

Feature selection 전에 정규화로 전처리 과정을 거친다.

((x: 과거 주식 가격 값,  x^{'}: 정규화된 값))

 


3.3 Two-stage feature selection

예측 모델 개발에 있어서 Curse of dimensionality를 방지해야 한다.

문제 해결 방법으로 'feature selection''feature extraction' 두 가지가 존재한다.

 

 

Feature selection은 중복되고 관련성 있는 features를 식별하는데 어려움이 존재한다.

Feature extraction은 원본을 결합하고 변형하여

새로운 features를 형성하기 때문에 기존의 형태와 interpretability를 잃는다.

 

 

Two-stage feature selection 방법으로 고차원 데이터 문제를 해결한다.

 

Stage1. Wrapper

GA와 하이브리드화된 5개의 트리구조 ML 회귀 알고리즘으로 Important Feature Subsets 선택

 

Stage2. Filter

Stage1에서 선택한 Important Feature Subsets에 대해 Importance Score Filtering을 사용하여

Optimal Feature Sets 선택

 


3.3.1 Selection of important features by GA-ML regression

Tree-structured ML의 경우 DL과 달리 Interpretability를 잃지 않는 특성이 있다.

 

Tree-structured ML regression algorithms 

- Decision Tree((DT))

- ExtraTrees((ET))

- RandomForest((RF))

- Extreme Gradient Boosting Regression((XGBoost))

- Light Gradient Boosting Regression((LightGBR))

 

 

GA는 선택, 교차, 돌연변이 등의 진화적 연산을 통해

다음 세대에서 더 나은 적합도 점수를 얻도록 염색체를 처리한다.

연산은 정해진 종료 조건에 도달할 때까지 반복되며,

각 염색체의 적합도는 평균 제곱근 오차((RMSE))로 측정

 

 

개체군은 8개의 염색체로 구성되며,

각각의 염색체는 Internal features유전자 71개  또는 External features의 유전자 31개로 구성한다.

 

 

유전자 값 1과 0은 각각 특성의 포함제외를 나타내며,

교차율 0.5, 돌연변이율 0.375, 세대수 30으로 설정한다.

 


3.3.2 Selection of optimal features by importance score filtering

Important feature sets에서 Importance Score Filtering((ISF))을 거쳐 Optimal Feature Sets 선택한다.

 


3.3.3 Global interpretation and forecasting using the best feature subset

Optimal Feature Sets으로부터 Non-empty power set 구성한다.

 

 

Non-empty power set의 각 부분집합에 대해  테스트 데이터로

다섯 개의 GA-ML 회귀 알고리즘사용하여 

RMSE 점수를 기준으로 Best Feature Subset((BFS))을 선별한다.

 


3.4 Local interpretability engineering

3.4.1 Savitzky-Golay smoothing for noise-reduction

주식 가격은 변동성이 크기 때문에 Savitzky-Golay((SG)) smoothing filter를 활용한다.

 

 

SG smoothing Gaussian-shaped spectral peaks의 모양과 높이를 유지하면서,

최소 제곱법을 사용해서 상당한 수준의 노이즈를 감소한다.

또한, 데이터를 불연속 모양에서 연속 모양으로 변환한다.

 

 

SG filter는 홀수 개의 데이터를 사용하여 smoothing을 수행한다.

 

$X$는 데이터를 담고 있는 벡터로 아래와 같이 표현한다.

 

$X = [X_{-M},...,X_{-1},X_{0},X_{1},...,X_{M}]^{T}$ 

 

위 데이터를 기반으로 다항식의 계수 $c_{0},c_{1},...,c_{k}$의 값을 찾고 smoothing 된 값을 계산한다.

 

$X^{'}_{m}$는 smoothing된 값을 나타내며, 아래와 같이 표현한다.

 

$X^{'}_{m} = \sum_{i=0}^{k} c_{i}m^{i} $ $(-M <= m <= M)$

 

오차를 최소화 하기 위해 계수 c에 대해 미분한 식을 0으로 설정하여 다항식 계수 벡터인 $c$를 계산한다.

 

$e = X - X' = X - Sc$

 

$\frac{d(e^{T}e)}{dc} = 0$

 

$S^{T}Sc = S^{T}X$

 

$c = (S^{T}S)^{-1}S^{T}X$

 


3.4.2 Piecewise optimal curve fitting and piecewise best feature subset selection

주가는 변동성이 크기 때문에 전체구간에 대해 다항식을 맞추는 일이 쉽지 않다.

Turning points을 기준으로 구간을 분할하여 구간별로 곡선을 정의한다.

 

 

local interpretability 위해, 본연구의 Global optimal feature sets를 사용하여

 piecewise optimal curves에 대해 ML 회귀 알고리즘으로 평가하여

Best feature subset을 찾는다. 

 


3.5 Performance evaluation metrics

주식 및 지수 가격 예측 모델의 회귀 알고리즘 성능을 효과적으로 측정할 수 있는

평균 제곱 오차((MSE)), 평균 제곱근 오차((RMSE)),

평균 절댓값 오차((MAE)), 결정 계수$R^{2}$모델의 성능을 측정한다.

 

$y_{i}$: i 일의 실제 종가

 

$y_{i}^{'}$: i 일의 예측 종가

 

$y_{i}^{*}$: $y_{i}$의 평균값

 

$n$: dataset에서 관찰 횟수

 

 

다음 장

https://michelangeloo.tistory.com/51?category=1196338

 

[논문리뷰] Interpretable stock price forecasting model using genetic algorithm-machine learning regressions and best feature

4. Experimental results and discussion4.1. Data description and experimental environmentInternal Features: 2010.01.04 ~ 2021.12.30 기간에 대해XOM 주식에 대해 ‘High’, ‘Low’, ‘Open’, ‘Close’, ‘Volume’을 가져온다. External

michelangeloo.tistory.com