앙상블에서 나올 수 있는 4가지 구조로 진행. 다:1, 다:다, 1:다 형태로 모델을 만들 것이다.
모델들끼리 앙상블되는 구조들을 주의해서 확인하자!
전체 데이터들은 train과 test로 분리하고, 각 데이터의 train은 각 7개, test는 각 3개, predict용 데이터는 각 3개를 이용한다. (train_test_split을 이용한 데이터 자르는 작업, 전처리 작업은 생략. test, validation은 test셋으로 함께 진행)
1. Sequential 모델
1) Sequential 1:1 모델
코드 내용은 깃허브 주석 참고!
🚀 트러블 슈팅 🚀
30번 라인에서
TypeError: array() takes from 1 to 2 positional arguments but 3 were given
오류가 발생해서 기존 코드에서 배열 형식으로 변경하니까 해결되었다!
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_1.py
2) Sequential 다:다 모델
입력과 출력에 컬럼이 2개 이상인 데이터를 사용하는 Sequential 모델 생성하기.
1~7까지의 데이터와 11~17데이터로 훈련을 시킨 다음, 8,9,10과 18,19,20을 이용해 평가, 그리고 21,22,23과 31,32,33이 잘 예측되는 지 확인하는 모델 만들기
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_2.py
3) Sequential 다:1 모델
여러 개의 컬럼이 입력되어 1개의 값이 출력되는 Sequential 모델 생성하기.
일반적으로 가장 많이 나오는 모델!
1~7까지의 데이터와 11~17데이터로 훈련을 시킨 다음, 8,9,10과 18,19,20을 이용해 평가, 그리고 21,22,23과 31,32,33이 잘 예측되는 지 확인하는 모델 만들기
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_3.py
4) Sequential 1:다 모델
한 개의 컬럼이 입력되어 여러 개의 값이 출력되는 Sequential 모델 생성하기.
(자주 나오는 모델은 아님)
1~7까지의 데이터와 11~17데이터로 훈련을 시킨 다음, 8,9,10과 18,19,20을 이용해 평가, 그리고 21,22,23과 31,32,33이 잘 예측되는 지 확인하는 모델 만들기
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_4.py
2. 함수형 모델
1) 함수형 1:1 모델
함수형 모델로 모델 생성하기
1~7까지의 데이터를 머신에게 훈련을 시킨 다음, 8,9,10로 평가하고,11,12,13으로 잘 훈련이 되었는지 예측하는 모델 만들기
원데이터 11,12,13과 비교해서 거의 정확하게 맞아 떨어진 것을 볼 수 있다.
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_5.py
2) 함수형 다:다 모델
입력과 출력에 2개 이상인 데이터를 사용하는 함수형 모델 만들기 (편의상 컬럼은 2개로 구성)
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_6.py
3) 함수형 다:1 모델
여러개의 칼럼이 입력되어 1개의 값이 출력되는 모델 만들기
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_7.py
4) 함수형 1:다 모델
1개의 칼럼이 입력되어 여러개의 값이 출력되는 모델 만들기 (자주 나오는 모델은 아님)
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_8.py
3. 앙상블 및 기타 모델(분기 모델)
1) 앙상블 다:다 모델 [1]
2개의 모델이 합쳐져서 2개의 모델로 출력되는(다:다) 모델 구현 (앙상블은 여러 모델을 합티는 모델로 1:1모델은 없음)
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_9.py
2) 앙상블 다:다 모델 [2]
2개의 앙상블이 입력되어 3개의 모델이 출력되는 앙상블 2:3 모델 구현
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_10.py
3) 앙상블 다:1 모델
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_11.py
+) 분기모델
1개의 모델이 입력되어 여러 개의 모델로 나뉘어지는 분기 모델
concatenate 사용하지 않고 분기만 사용하면 됨
https://github.com/yenyen31/Artificial-Intelligence-in-Finance/blob/main/CH06/ch06_12.py
'DeepLearning' 카테고리의 다른 글
딥러닝으로 걷는 시계열 예측 [CH08] 케라스 모델의 파라미터들과 기타 기법들 (0) | 2023.06.20 |
---|---|
딥러닝으로 걷는 시계열 예측 [CH07] RNN (0) | 2023.05.31 |
딥러닝으로 걷는 시계열 예측 [CH05] 앙상블 (0) | 2023.05.23 |
딥러닝으로 걷는 시계열 예측 [CH04] 회귀 모델의 판별식 (0) | 2023.05.20 |
딥러닝으로 걷는 시계열 예측 [CH03] 회귀 모델 (0) | 2023.05.20 |