본문 바로가기

목록119

20. 경사하강법의 개선 - Momentum, RMSprop 지난 시간에 단순 경사하강법은 수렴 가능성이 생각보다 낮다는 것을 보여주었다. 이번 시간은 경사하강법을 개선하여 빠르게 수렴하면서 지역 최소점에 수렴하지 않도록 할 수 있는지 보여줄 것이다. 저번 포스트에서 처럼 아래와 같은 오차 함수에 대해 단순 경사하강법을 진행하였다. 단순 경사하강법(GD)로는 시작 위치 -8일 때 움직임은 다음과 같다. (1) learning rate = 1 이상부터 지역최소점 통과 (2) learning rate = 1.4 이상부터 전체 최소점 또는 지역 최소점 근처에서 진동하고 제대로 수렴하지 않는다. (3) learning rate = 2.2 이상부터 overflow, 튕겨버린다. 1. Momentum 일반적으로 물리에서 Momentum(모멘텀) 이라 함은 '운동량'을 뜻한다.. 2022. 2. 4.
19. 경사하강법과 단순 경사하강법의 문제점 경사하강법(Gradient descent)은 오차함수의 기울기를 구하고 기울기의 절대값이 낮은 쪽으로 계속 이동시켜 오차를 최소화하는 방법이다. 지금까지 사용한 경사하강법 방법은 아래와 같이 오차함수의 기울기를 구하고 Weight값과 Bias 값을 수정하였다. for i in range(Epochs): dL_dW1, dL_dB1, dL_dW2, dL_dB2, dL_dW3, dL_dB3 = loss_gradient(inputs, targets, W1, B1, W2, B2, W3, B3) W1 = W1 + -1*learning_rate * dL_dW1 B1 = B1 + -1*learning_rate * dL_dB1 W2 = W2 + -1*learning_rate * dL_dW2 B2 = B2 + -1*lea.. 2022. 1. 28.
지수가중이동평균(Exponentially Weighted Moving Average)-2 이번 시간에는 2017년 서울의 1년 평균 기온 그래프를 분석하고 numpy를 이용해 표현하는 방법을 알아볼 것이다. 이 글을 처음 읽는다면 지수가중이동평균(Exponentially Weighted Moving Average)-1 을 먼저 읽고 오길 바란다. (같이 보면서 읽는다면 더 좋다) 위 자료는 Daily Temperature of Major Cities 라는 자료에서 발췌한 것이다. 1. 데이터 확인 위 자료를 내려받고 임포트한 다음 matplotlib로 그려보자. 코드는 아래와 같다. import numpy as np import matplotlib.pyplot as plt from numpy import genfromtxt data = genfromtxt('2017_seoul_temperat.. 2022. 1. 24.
지수가중이동평균(Exponentially Weighted Moving Average)-1 외국에 사는 사람이 대한민국 서울에 놀러가기 위해 인터넷에 '서울의 평균 온도'를 검색했다고 하자. '기상청 날씨누리'에 따르면 서울의 연평균 온도는 12.8도이다. 외국인은 이 자료를 보고 서늘하다 생각해 두툼한 옷을 입고 '8월'에 휴가를 받고 입국했다. 공항에 내린 외국인은 무슨 생각을 했을까? 그림은 2021년 서울의 온도를 나타낸 것이다. 알다싶이 서울을 비롯한 우리나라는 연교차가 매우 크다. 일주일 간 서울로 휴가를 받았을 때 날씨를 확인한다면 어느 날짜의 날씨를 확인할까? 당연히 휴가 가는 날의 날씨를 확인하지 않을까? 데이터도 마찬가지다. 어떤 데이터를 어떤 시각에서 바라볼지 생각해 봐야 한다. 1. 평균(Average) 평균은 단순하게 전체 데이터 합을 데이터 갯수로 나눈 것이다. 수식으.. 2022. 1. 24.