MOOC/Machine Learning (python)
Week 10: Online Learning
JAYNUX
2017. 7. 20. 15:36
Week 10: Online Learning
Online Learning
을 사용하는 경우는 아래와 같다.
- 연산량이 너무 많을 때
- 데이터가 스트리밍 이여서 새로운 데이터 대해서 계속 해서 학습 해야할 때 또는 데이터가 사용자에 의해서 계속 생성 될 때
알고리즘
Repeat forever {
Get (x,y) corresponding to a user.
update $\theta$ using (x,y)
$\theta_{j}$ := $\theta_j$ -\alpha ($h_{\theta}$(x)-y)$x_j$ (j=0,...,n)
}
결국 fixed training
데이터를 사용하지 않게 된다.
또한 한번 training
에 사용 했던 데이터는 다시 쓰지 않는다.
p(y = 1|x; θ)
Probability that y =1, given x, parameterized by θ
사용 예
- shipping service를 사용자가 선택 할지 안할지에 대한 정보를 웹사이트 데이터로 구축해서 누적 한다.
- product search를 할 때 사용자가 선택한 옵션에 맞추어서 가장 인기있는 phone 10개를 보여주고 그것에대한 선호도를 선택하게 한다. 이러한 결과는 즉시 다시 학습에 사용 될 수 있다.