9. SGD, mini-batch GD
• Batch 그래디언트 디센트
• 전체 훈련 데이터를 사용
• 가장 좋은 방법, 대규모 데이터 셋에 적용하기 힘
듬
• SGD(Stochastic Gradient Descent):
• 훈련 데이터 하나씩 사용
• 빠른 학습 가능, 노이즈 데이터로 인해 변동이 큼
• mini-batch GD
• 훈련 데이터를 조금씩 나누어 사용
• Batch 와 SGD의 절충안으로 일정 개수의 데이터
를 이용하여 학습
9
26. 텐서플로우 패딩 계산
• 패딩크기를 직접 지정, tf.pad()
• 패딩 타입(same/valid), 스트라이드 크기 à 패딩 크기 자동 결정
• same
• 출력크기=입력크기/스트라이드
• tf.layer.conv2d(.., padding=‘same’, ..)
• 패딩 크기가 필터의 절반 정도라 하프 패딩이라고도 부름
• valid
• 패딩을 넣지 않음
• tf.layer.conv2d(.., padding=‘valid’, ..)
W = tf.Variable(tf.truncated_normal([3, 3, 1, 10], stddev=0.1))
b = tf.Variable(tf.constant(0.1, shape=[10]))
conv = tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding=‘SAME’) + b
27. ReLU
• Rectified Linear Unit
• -∞~+∞입력에 대해 0~+∞ 사이의 값을
출력합니다.
𝑦< = max (0, 𝑧)
W = tf.Variable(tf.truncated_normal([3, 3, 1, 10], stddev=0.1))
b = tf.Variable(tf.constant(0.1, shape=[10]))
conv = tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding=‘SAME’) + b
acti = tf.nn.relu(conv)