728x90
반응형

경사하강법 6

강화학습 - (23) 몬테카를로 가치 근사

강화학습 몬테카를로 가치 근사 가치 예측 (Value Estimation) 가치함수의 예측은 지도학습과 비슷한 점이 있다. 몬테카를로 예측에서는 상태 $S_i$를 받아 반환값 $G_i$를 예측하는 것을 지도학습과 비슷하다고 볼 수 있고, 시간차학습에서는 상태 $S_i$를 받아 보상과 미래가치 $R_{i+1} + \gamma v_{i+1}$를 예측하는 것을 비슷하다고 볼 수 있다. 여기서 $v$를 함수 근사로 표현하면 $\hat{v}(S_{i+1}, w)$로 표현할 수 있다. 하지만 강화학습에서는 지도학습과는 다른점이 존재한다. 지도학습은 어떠한 정답(ground truth label)이 존재한다. 하지만 강화학습은 에이전트의 자체적은 다음 상태에 대한 예측값이 사용된다. (몬테카를로에서는 $G_i$, T..

추천시스템 18 - 경사하강법

추천시스템 본 포스팅은 Minnesota대학교의 Intro to Recommender Systems코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/collaborative-filtering?specialization=recommender-systems SVD의 문제점 SVD는 좋은 테크닉이지만 아래와 같은 문제가 있다: SVD를 계산하는것은 매우 느리다. SVD는 채워지지 않은 데이터에 대해 어떠한 조치를 취해주어야 한다. 따라서 이러한 문제들을 해결하기 위해 경사하강법을 적용해보고자 한다. 접근법 경사하강법을 적용하고자 하는 인사이트는, SVD를 사용해 추천을 계산할때의 에러를 직시하는것이다. 선형대수적으로는 SVD를 구한 다음, k만큼의 값을 자르는것이, ra..

머신러닝 공부 7 - 정규방정식

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 정규방정식 정규방정식 이란 특정 선형 문제에서 파라미터값인 θ를 더 쉽게 풀 수 있게 만들어주는 방법이다. 지금까지의 경사하강법에서는, Global Minimum을 찾기 위해 많은 스텝들을 밟아야 했다. 하지만 정규방정식은 이것을 분석적으로 풀 수 있게 해준다. 경사하강법의 많은 반복을 하기보다, 분석적으로 θ값의 해를 구하면 한번에 구할 수 있다는 말이다. 예제) 변수가 많지 않은 아래 2차 방정식 수식을 보자. 위의 수식을 minimize하려면 미분 값을 구한 다음, =0을 하고 θ로 풀면 된다. 하지만 많은..

머신러닝 공부 6 - 경사하강법 트릭

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 경사하강법이 더 좋은 성능을 내기 위해서 취하는 몇가지 트릭이 있다. 특성 스케일링 특성 스케일링이란, 여러 특성이 있는 문제에서, 여러 특성들이 비슷한 스케일에 있게 만들어 주는 기술이다. 여러 특성을 비슷한 스케일로 맞춰준다면, 경사하강법이 더 빠르게 끝날 수 있다. 예제) 특성 $x_{1}$과 $x_{2}$가 있다. $x_{1}$ = 집의 크기 (0 - 2000 feet^2) $x_{2}$ = 방의 수 (1 - 5) 이전 강의에서 위와 같은 그래프를 기억할것이다. 만약 특성1과 특성2의 스케일이 차이가 많이..

머신러닝 공부 5 - 다중 선형 회귀

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 다중 선형 회귀 기존의 선형회귀에서는 하나의 입력 x값과 예측값 y값이 존재했다. 집값 예측 예제로 다시 돌아가보자. 현실 세계의 문제에서는 집의 크기만이 집값을 결정하지 않는다. 아래의 표를 보면, 집값은 크기 외에도, 방의 숫자, 층의 숫자, 연식 등의 정보들이 모두 가격에 영향을 줄 수 있다는 것을 보여준다. 앞선 포스팅에서 이야기 하였듯이, 이런 여러 변수들을 $x_{1}, x_{2}, x_{3}$와 같은 방식으로 표기하도록 하겠다. 몇가지 변수들을 더 정의해보면: n은 특성의 갯수를 의미한다. 위의 예제..

머신러닝 공부 4 - 경사하강법

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 문제설정 J라는 함수가 있다고 하자, 우리는 이 함수를 minimize하는 알고리즘을 만들고자 한다. 먼저 θ0 과 θ1에 초기값 을 설정한다 그리고 θ0 과 θ1 가 minimum에 닿을 때 까지 J( θ0, θ1)를 감소시키고, θ0 과 θ1값을 갱신한다. 경사하강법 과정 설명 이 함수를 minimize하고자 한다고 하자. 먼저 θ0 과 θ1에 초기값 을 설정하고 시작한다. 가장 위의 그래프의 점이 θ0 과 θ1 의초기값이고, 내가 거기에 서있다고 가정해보자. 여러 방향을 살핀 뒤 한발을 밑으로 딛고 내려간다..

728x90
반응형