Mini-batch

📝 Data Mining

[Data Mining] Gradient Descent (경사 하강법)

Gradient Descent (경사 하강법)경사 하강법(Gradient Descent)은 최적화 알고리즘 중 하나로, 주어진 함수의 최소값을 찾는 방법입니다.이 알고리즘은 머신 러닝과 딥 러닝 모델의 학습 과정에서 주로 사용됩니다.경사하강법의 아이디어 (The Idea Behind Gradient Descent)우리는 종종 함수 𝑓를 최대화(또는 최소화)해야 할 필요가 있을 것입니다.즉, 우리는 가능한 가장 작은(또는 가장 큰) 값을 생성하는 입력 v를 찾아야 합니다.그리고 이때, 함수 𝑓를 최대화(또는 최소화)해야 합니다. 즉, 가능한 가장 작은(또는 가장 큰) 값을 만드는 입력 𝑣를 찾아야 합니다.이것은 많은 문제에서 발생하는 일입니다. 예를 들어, 비용 함수(cost function)를 최소..

🖥️ Deep Learning

[DL] Batch Normalization - 배치 정규화

Batch Normalization - 배치 정규화Batch Normalization (배치 정규화)의 개념은 2015년에 제안된 방법입니다.일단, Batch Normalization(배치 정규화)가 주목받는 이유는 다음의 이유들과 같습니다.Training(학습)을 빨리 할 수 있습니다. 즉, Training(학습) 속도를 개선하는 효과가 있습니다.초깃값에 크게 의존하지 않는다는 특징이 있습니다.그리고 Overiftting을 억제하는 특징이 있습니다. 즉, Dropout등의 필요성이 감소합니다.Batch Normalization(배치 정규화)의 기본 아이디어는 앞에서 말했듯이 각 Layer(층)에서의 Activation Value(활성화 값)이 적당히 분포가 되도록 조정하는 것입니다. 한번 예시를 보겠습..

🖥️ Deep Learning

[DL] Gradient (기울기), Training Algorithm(학습 알고리즘)

Gradient (기울기) 만약에 x0, x1의 편미분을 동시에 계산하고 싶다면 어떻게 할까요? 그러면 모든 편미분을 벡터로 정리를 해야 하는데, 그 정리한것을 Grdient(기울기)라고 합니다. 예를 들어서 아래의 코드와 같이 구현할 수 있습니다. def numerical_gradient(f, x): h = 1e-4 grad = np.zeros_like(x) # x와 형상이 같은 배열을 생성 for idx in range(x.size): tmp_val = x[idx] # f(x+h) 계산 x[idx] = tmp_val + h fxh1 = f(x) # f(x-h) 계산 x[idx] = tmp_val - h fxh2 = f(x) grad[idx] = (fxh1 - fxh2) / (2*h) x[idx] = ..

🖥️ Deep Learning

[DL] Neural Network Training (신경망 학습)

이번에는 Neural Network(신경망) 학습에 대하여 설명하고 Pyhon에서 Mnist Dataset의 손글씨 숫자를 학습하는 코드를 구현해 보겠습니다. Data 주도 학습 Machine Learning(ML)의 중심에는 Data(데이터)가 존재합니다. 데이터가 이끄는 접근 방식 덕에 사람 중심 접근에서 벗어날 수 있습니다. 근데, 보통 문제를 해결하려고 하면 패턴을 찾아내기 위하여 사람은 생각을 하고 결론을 도출합니다. 다만 Machine Learning(기계 학습)에서는 사람의 개입을 최소화하고, 수집한 데이터의 패턴을 찾으려고 시도합니다. 그리고 Neural Network(신경망) & DL(딥러닝)은 기존 Machine Learning(기계 학습)에서 사용하던 방법보다 사람의 개입을 배제할 수..

Bigbread1129
'Mini-batch' 태그의 글 목록