Format
- Batch Size :
가중치를 업데이트하기 이전에 신경망이 얼마나 많은 input 샘플들을 보기를 원하는지를 말함
input dataset에 100개의 샘플을 가지고 있다고하자. 신경망이 하나의 input을 확인할 때마다
가중치를 업데이트 하기를 원한다. 이 경우에 batch size는 1이 될 것이며, batches의 수는 100개가 될 것이다.
마찬가지로 신경망이 모든 샘플을 보고 가중치를 업데이트 하기를 원한다면, batch size는 100이고 batches는
1이 될 것이다.
매우 작은 batch size를 사용하는 것은 학습 속도를 느리게 만들며 반대로 너무 큰 batch size를 사용하는 것은
다른 데이터에 일반화하는 모델의 능력을 감소시킨다. 또한 더 많은 메모리를 필요로 한다. 그러나 그것은
objective function의 최소값을 찾는데 더 적은 steps가 필요하다.
따라서 이에 대해 다양한 값을 시도해볼 필요가 있으며 최적의 값을 찾아야한다. 이것은 꽤 중요한 주제이다.
우리는 다음 article에서 이것에 대한 좋은 방법을 학습할 것이다.
- Time Steps :
신경망이 한 번에 얼마나 많은 단위를 되돌아가기 원하는가?
예를 들어 훈련을 위한 text corpus를 가진 문자 예측(character prediction) 문제를 생각해보자. 신경망이
한 번에 6개의 문자를 학습하길 원한다. 그렇다면 time step은 6이다. 우리의 경우 time step으로서 60을
사용할 것이다. 즉 우리는 가격예측을 위해 2달을 볼 것이다.
- Features :
각 단계를 나타내기위해 사용된 특성들의 수(the number of attributes)이다. character problem 예시를
다시 생각해보자. 각 문자(character)를 표현하기 위해 size가 100인 one-hot encoded vector를 사용한다고
가정하자. feature size는 여기서 100이다.
출처 : https://towardsdatascience.com/predicting-stock-price-with-lstm-13af86a74944
'분석 > 머신러닝' 카테고리의 다른 글
[jupyter notebook] 설치했으나 run 결과 출력이 안되는 오류 (1) | 2019.07.20 |
---|---|
머신러닝에서 평가 메트릭(continuous) (0) | 2019.03.28 |
XGBoost에 관한 이해 (0) | 2019.03.07 |