kwan's note

online learning , map reducing -온라인 학습, 병렬 학습 본문

ML and AI/Machine learning - Andrew Ng

online learning , map reducing -온라인 학습, 병렬 학습

kwan's note 2021. 2. 8. 00:09
반응형

출처: machine learning by andrew ng, stanford cousera lecture

수강일시: 2021.02.07

 

reminder-by-kwan.tistory.com/110

 

Mini batch gradient descent

출처: machine learning by andrew ng, stanford cousera lecture 수강일시: 2021.02.07 reminder-by-kwan.tistory.com/109 Stochastic gradient descent(SGD) -확률적 경사 하강법 출처: machine learning by and..

reminder-by-kwan.tistory.com

이번에도 데이터가 많은경우 처리방법에 대해 배워보도록 하겠습니다.

첫번째 주제는 online learning이고 두번째는 map reducing 입니다.

 

Online learning

 

online learning은 SGD와 매우 비슷한 방법입니다.

 

데이터가 실시간으로 계속 주어질때,

예를들어 온라인 쇼핑몰을 운영하는데 추천시스템을 만들고자 한다고 가정해보자.

어떤 소비자가 어떤 상품을 선택할지에 대해 학습하고 선택확률이 높은 아이템을 추천해주고자 할 때

새로운 소비자가 올때마다 새로운 데이터가 쌓이게 된다.

이런 많은 정보가 주어질때 사용하는 방식을 online learning이라고 한다.

 

따라서 온라인 학습에서는 데이터를 쌓아두지 않고 매 데이터가 들어올때마다 해당 x y에 대해서만 학습하고 버린다.

그럼에도 데이터가 계속 공급되므로 좋은 성능을 보이게 된다.

 

 

map reducing

 

다음으로는 맵 리듀싱에 대해 배워보도록 하겠습니다.

이는 병렬 연산의 방법입니다.

매우 많은 데이터가 있을경우 각 학습을 하나의 컴퓨터에서 전부 처리하는것이 아닌 n개의 컴퓨터로 나누어 처리하고 합치는 개념입니다.

4백만개의 데이터가 있을때 4개의 컴퓨터를 이용하면 각 컴퓨터가 백만개의 데이터를 처리해서 이에대한 tempj값을 얻어내고 이를 평균내서 기울기로 사용하는 방식입니다.

 

이제는 일반적인 컴퓨터도 여러개의 코어를 가지고 있으므로 한개의 컴퓨터 내에서도 다중코어를 이용해 연산하여 합칠 수 있습니다.

많은 라이브러리들이 이러한 병렬연산을 지원하고 있으므로 이를 이용해서 계산하는것이 데이터가 많은경우 효과적일 것 입니다.

반응형