<텐서플로>
- 텐서(tensor) : 행렬로 표현할 수 있는 2차원 형태의 배열을 높은 차원으로 확장한 다차원 배열
- 텐서플로의 계산은 데이터 흐름(dataflow graph)로 이루어진다.
- 즉 텐서 형태의 데이터들이 딥러닝 모델을 구성하는 연산들의 그래프를 따라 연산이 일어나기 때문에 텐서플로라는 이름이 붙은 것
* 텐서플로의 기능
- 사전학습 모델 제공
- 고수준(High-level) API 제공 : 텐서보드 및 Keras 와 같은 추상화 라이브러리 제공
* 하이퍼 파라미터 소개
- 은닉층의 수와 유닛 수
: 보통 각 은닉층의 뉴런은 정규화 기술이 적용되어 모델의 정확도를 높이는데 기여
: 뉴런의 개수와 레이어의 깊이는 오버피팅 혹은 언더피팅에 영향을 주므로 적절한 수의 층이 필요하다.
- 가중치 초기화(initialization)
: 가장 이상적인 방법은 각 층에서 사용되는 Activation Function 에 따라서 적절한 Weight 초기화 기법을 사용하는 것이 좋다.
: ReLU, Leaky ReLU 등을 이용한다면 He 초기화(He initialization)을 사용
: 초기화시 사용되는 난수는 uniform distribution 을 주로 사용한다.
- 학습률 (Learning rate)
: 딥러닝의 학습은 모델로부터 얻은 예측값(Output 또는 y_hat)과 기댓값(Desired output 또는 label) 과의 차이를 계산하여 얻은 비용(Cost) - 가중치(weight, W)간의 gradient를 이용하여 기존 Weight 를 업데이트 하는 방식으로 이루어진다.
: 이 때 Gradient를 얼만큼 이동할지를 정하는 것이 학습율(Eps) 하이퍼 파라미터
-> 고정된 값을 이용할 수도 있고 학습을 진행하면서 값을 변화시킬 수도 있다.('learning rate decay')
: 학습율은 학습의 속도와 학습성과에 영향을 주기 때문에 적절한 설정이 필요하다.
-> 너무 크다면 global minimum(또는 원하는 극값)에 도달하지 못할 수 있으며, 너무 작으면 학습시간이 오래 걸릴 수 있기 때문.
- 모멘텀(momentum)
: gradient descent에 대한 최적화 기법 중 하나로 global minimum 값에 도달하기 위해 학습하는 과정에서 가중치(W)를 업데이트하는데에 가속도를 주어 weight가 감소하거나 증가하는 방향으로 더 많은 변화를 주는 것이다.
: 모멘텀을 적용하는 이유는 학습횟수를 줄이고 효율화하기 위함.
- 에폭(Epoch)
: 학습을 반복하는 횟수
: 모델이 전체 데이터 셋에 대하여 feed forward 와 backpropagation을 거친 것을 의미한다.
: 즉 에폭을 한번 가졌으면 학습을 한번 완료했다는 뜻.
- 배치 사이즈(batch size)
: 한번의 batch 마다 주는 데이터 샘플 사이즈
'ML&DL' 카테고리의 다른 글
batch normalization , early stopping (0) | 2023.02.28 |
---|---|
과대적합(overfitting)의 극복 (0) | 2023.02.26 |
CNN 의 차원 (1d, 2d, 3d) (0) | 2023.02.21 |
CNN 기본 개념 (0) | 2023.02.21 |
CNN(합성곱 신경망) (0) | 2023.02.21 |