- 2018년 6월 15일 오후 1:00
- 조회수: 4543
INFORMATION
- 2018년 6월 15일
- 오후 1시 ~
- 고려대학교 신공학관 218호

TOPIC
OVERVIEW
발표자 후기

오늘 세미나에서는 Online learning의 기본 개념과 대표적인
방법들에 대해서 소개를 했다. Online learning의
Offline learning과 반대되는 개념으로, 데이터가 순차적으로 들어오는 환경에서
모델링을 의미한다. Online learning의 목적은 크게 두 가지로써, (1) 방 대한 데이터를 효과적으로부터 효율적으로 모델링하는 것과, (2) 데이터의
패턴이 변화하는 것을 반영해서 과거의 모델을 업데이트 효과적으로 업데이트 시키는 것 이다. Perceptron,
Passive-Aggressive, Online Convex Gradient Descent, Online Learning with
Regularization, Online Learning with Expert Advice, Online Learning with Neural
network, Kernelized Online Learning까지 총 7가지 학습전략에
대해서 간략히 소개하였지만, Expert Advice 방법 외에 나머지 방법들의 기본 골자는 유사하다. 새로운 데이터로부터 계산되는 Loss의 gradient를 활용해서 얼마나 효과적으로 과거의 모델을 학습시키는 것.
Online learning은 Supervised learning 외에, Multi-task learning, Transfer learning 등 다양한 응용분야에서 현재 적용 및
개발되고 있다. 본 세미나에서 다뤘던 내용이 연구실원들의 Online
learning 연구 초석에 도움 되길 기대한다.
청취자 후기

여태까지 관행적으로 하던(Offline Learning) 접근이 아닌, “Online Learning” 이라는 것을 성호 선배가 설명해주었다. 핵심은
새로운 데이터가 들어올 때의 UPDATE 이다. 정답지와의
차이가 있으면 Update를 한다는 점. 지도학습에서 Loss 발생시(가정) 부호가
다르면 정답지와의 에러를 내뱉어 준다는 수식에 대한 설명 그리고 차이가 발생한 패턴을 탐지하는 방법도 소개해 주었다.
이전모델 + Norm 에서 Norm이
양의 방향으로 변화할 때의 상황을 법선벡터를 통해 이해할 수 있었다. Perceptron에서는 에러를
자기 자신의 input 값으로 나눠주어 에러가 크면 더 많이 업데이트 해주고, 작을 경우 조금만 업데이트를 하자는 것이다. Gradient Descent에서는
Projection Function 을 어떻게 설정할 지에 대해 소개해 주었다. 더욱 흥미로웠던 것은 expert device(사람 or 모델)의 Online
Learning 방법이었다. Experts 자체도 업데이트를 해주어야 하고 여기에 적용하기
좋은 알고리즘은 RF라는 성호의 견해를 배우게 되었다. 세미나
말미에 교수님과 연구원들은 열띤 토의를 했다. 관리도 측면,
Transfer Learning, Multi-view Learning에 관해서 Online
Learning이 어떻게 반영이 될 지에 대해 생각해보는 시간을 가졌다. 처음 접해본 Online Learning을 성호가 알기 쉽게 구체적으로 세미나를 진행해주어 감사하다. Online Learning 연구에 기초와 응용을 어떻게 할 것인지에 대해 가이드라인을 잡아주어 큰 도움이
되었다.

금일 발표 매우 흥미롭게 들었습니다. Online learning이라는건
강화학습에서도 자주 보던 컨셉이 일반 머신러닝에 녹아든게 신기했습니다. 그리고 개인적으로 하고 있는
프로젝트에서도 주식 단타를 학습하는 강화학습 에이전트를 통해 학습을 하는데 같이 협력하고 있는 팀에서도 전문가의
tranjectories를 가져와서 IRL을 통해 새로운
Policy based 모델을 만드는 부분이 있었는데 전문가가 여러개를 두고 나서 다수결의 법칙을 통해서 참고할 Expert를 정하는 부분을 보고 인사이트를 얻었습니다. 그런데 질문이
나와서 얘기되었던 expert를 학습하는 것까지는 academic한
부분에서는 적용하는 application domain
영역이라 논외로 봐야하지 않을까 생각이 들었습니다. 학습할 범위는 majority가 되었던 expert 집단중 학습할 exper를 택하는 부분까지만 학습이 되면 된다는 생각을 했습니다. 그리고 Recursive, Time varying, Online Learning이든 아니면 Tranfer learning, Immitation Learning, Inverse Reinforcement
Learning이 되었던 다 비슷한 얘기인듯한데 시간이 되면 더 깊게 공부해서 차이점 아님 장단점을 머리속에서 명확히 정리를 해야겠다는
생각도 들었습니다. 발표 잘 들었습니다. 감사합니다.

금일 세미나는 Online Learning의 필요성과 기본 개념에
대해 소개하는 자리였다. Off-line learning에서는 새로운 데이터가 들어올 때마다 패턴을
효과적으로 반영하기 위해 모델을 다시 학습시켜야 한다. 이 때, 학습
속도는 물론이고 새로운 데이터에 대한 분석과 예측을 진행하는 것은 costly하다. 오늘 발표자가 소개한 Online learning이란 앞서 말한
문제 상황을 해결하기 위해 데이터에 대해 전체 분포 가정을 하지 않고 새로운 데이터가 들어올 때마다 실시간으로 모델 파라미터를 변경하여 예측을
가능하게 하는 학습 방식이다. Online Learning 학습 방식은 여러 분야에 적용해 볼 수 있는데
그 중 Weighted Majority Algorithm에서 적용한
Online Learning 방식이 offline supervised learning 알고리즘
중 Ensemble method에서 파라미터를 업데이트 시키는 것과 유사하다. 이와 같이 데이터 자체의 패턴에 대한 학습 관점으로도 볼 수 있지만, 여러
모델을 통합하여 학습 시킬 때 각 모델에 대한 파라미터 업데이트를 효과적으로 하는 있는 학습 방식인 것으로 보인다. 데이터 패턴이 급변하는 주가 시장, 부동산 시장 등에서 실시간으로
바로 다음 단계의 예측을 가능하게 할 수 있다는 점이 앞으로 발전 가능성과 의미가 있는 연구분야라는 생각이 들었다.

이번주 금요일에는 성호 형이 ‘Online Learning: A Comprehensive Review’에 대해서 발표해 주셨다. Online Learning에서도 다양한 Task가 있는데 오늘은 Supervised Online Learning에 대해 설명하였다. Online Learning이란 그렇게 어려운 주제가 아니 였다. 처음에는 굉장히 어렵다고 느껴졌지만 세미나를 들으면서 궁금증을 해결할 수 있었다. 간략하게 Online Learning이 무엇인지 이야기 해보면 미래의 데이터가 어떻게 변할지 모르기 때문에 모델을 미래의 데이터에 맞게 다시 구축하는 것이다. 현재 하이닉스 프로젝트를 진행하는 것도 Online Learning 중 하나 였다. 새로운 데이터에 대해서 모델을 업데이트할 때 조금 유의해야 할 것은 새로운 데이터가 Outlier와 같은 경우이다. Outlier에 맞춰 모델이 피팅 되게 된다면 그것은 잘못된 모델이다. 따라서, 이러한 경우를 대비하여 그 전 모델과 많이 차이 나지 않게 하는 penalty term을 주는 방법과 차이를 적게 나게 하기 위해서 Normalization을 해주는 방법이 있었다. Online Learning은 거의 모든 알고리즘에서 사용이 된다. 왜냐하면 미래의 데이터는 모든 알고리즘이 모르기 때문이다. 성호 형이 마지막에 Online Learning과 Deep Learning을 같이 사용하는 것에 대해 간략히 설명해 주셨는데 Model Cost는 굉장히 많이 요구 되나 해보면 아주 재미있는 연구가 될 것같다.

일반적으로대부분의 연구도 시간을 들여 충분한 데이터를 가지고 있는, 즉, offline learning에 대해 가정을 하고 진행을 한다. 그러나 현실적으로 생각해봤을때, 그만큼
충분한 데이터를 수집하고 분석하는데 들어가는 computational cost는 상당히 비싼것이 현실이다. 따라서 오늘 세미나에서 다룬 online learning에 대한
개념은 직접 연구하지 않더라도 반드시 필요한 개념이라 생각한다. 실시간을 데이터가 수집되는 환경에서
모델을 재구축 하지 않고 모델의 parameter을 업데이트 한다는 것이 online learning의 근본이고 이러한 컨셉은 모든 offline
learning에 적용이 가능할 것으로도 보인다. 오늘 세미나 시간에도 다룬 다양한 online learning에 대해서도 보면 기존 offline
learning의 컨셉을 하나하나 도입하는 것과 같이 느껴졌다. SVM의 margin의 개념을 그대로 옮겨넣은 것도 있었고, boosting 개념을
녹여서 만드는 online learning 방법이 있었다. 이와
같이 현재 offline 연구에서 진행되는 다양한 개념들은
online 학습에 녹일 수 있다면 그것또한 하나의 좋은 연구분야 이고 더 나아가 개인적으로는 반도체를 비롯한 다양한 제조공정에서
더 필요한 연구분야가 아닐까하는 생각이 들었다.

오늘은 Online-Learning 방법론에 대한 설명을 들을 수
있었다. 기본적인 Learning 방법들은 학습데이터와 검증데이터의
분포가 크게 변하지 않는다는 가정을 가지고서 학습이 된다. 하지만 실제 문제들을 해결하다보면 검증데이터의
분포가 학습데이터의 분포와 달라지는 상황들이 발생하게 되고 이럴 때는 알고리즘의 성능이 크게 하락하게 된다. 이러한
문제점을 해결하기 위해서는 모델의 파라미터들을 업데이트해야 하는데 많은 데이터가 이미 있는 상황에서 새로운 데이터가 들어올 때마다 다시 학습을
하는 것은 많은 비효율을 야기한다. 따라서 우리는 새로운 데이터의 정보만을 이용해서 기존 모델의 파라미터를
업데이트할 수 있는 방법을 찾아야 한다. 이를 해결하는 방법이
Online Learning이라고 할 수 있다. Online Learning은 파라미터를
업데이트 하는 과정에서 신규 데이터가 기존 파라미터 업데이트에 영향을 주는 정도를 어떻게 계산하느냐에 따라 다양한 방법이 나눠진다. 기본적으로 Gradient Descent를 할 때 신규 데이터의 Gradient 정보를 계산해서 실제 업데이트를 할 때는 이 정보만 사용하는 방식으로 업데이트가 된다. 굉장히 다양한 방법들이 있는 것 같은데 파라미터를 업데이트할 때 기존에 학습이 되었던 부분은 유지를 하면서
새로운 데이터의 패턴도 잘 예측할 수 있는 방법은 없는지 궁금했다. 이 부분은 찾아서 공부를 해봐야겠다.

오늘 전체세미나는 'Online Learning'이라는 주제로 성호형이
진행하였다.
먼저 Online learning은 머신러닝 방법중 하나로, 데이터를 구분 짓는 알고리즘적 차이가 있는 것이 아닌 학습을 어떻게 수행하는지 차이를 보이는 방법이다. 그 목적은 데이터가 순차적으로 이루어져 있고 미래의 데이터 좀 더 잘 예측하기 위한 predictor 성능을 향상시키는 데
있으며 효율적인 업데이트방법을 제안하고 있다. 우리가 흔히 알고있는 학습 방식은 Batch learning(Offline learning) 기법으로
Online learning과 상반되는 개념이다. 즉,
Batch learning은 학습데이터를 가장 잘 설명하는 predictor를 만들어 놓는
반면, Online learning은 관측치를 하나씩 모델에 적용하며 파라미터를 업데이트 하는 방식으로
이루어진다. 이러한 특성으로 대용량 데이터를 학습시키는데 용이한 학습 방법이고 알고리즘이 데이터 내 새로운 패턴에 동적으로
학습할 필요가 있거나 데이터 그 자체가 시간의 함수로서 생성될 때 (주가 예측 등) 이용될 수 있는 것이다.
여러 알고리즘에 이 학습방법을 적용할 수 있으며 오늘 소개해준 방법론은 다음과 같다.Perceptron, Normalized Perceptron, Passive-Aggressive Learning,
Variants of Passive-Aggressive Learning, Online Gradient Descent, Online
Learning with Regularization, Online Learning with Expert Advice, Convex
gradient descent등이 있으며 여기에 Kernel 함수를 적용한 것도 있다. Online Learning이라는 학습방법을 연구에 어떻게 응용할 지 생각해 보고싶다. 예를들어 불량을 탐지할 수 있는 학습된 모델이 있지만 제조공정에서는 주기적으로 혹은 간헐적으로 공정튜닝이 이루어
지는 특성을 갖고 있기 때문에 데이터가 확보되는대로 모델에 적용할 필요가 있다. 이런 분야에 적용할
수 있을 것으로 생각하고, 실시간 예측, 적응형 모델과 차이점을
좀더 살펴볼 필요가 있을 것으로 보인다. 전반적인 Online
learning의 컨셉과 알고리즘을 알 수 있던 유익한 세미나였다.

금일 세미나는 Online Learning 에 대한 주제로 진행 되었다. 시간이 변함에 따라 데이터의 특성이 변하게 될 때 기존의 Data 로
구성한 Model 로는 새로운 관측치를 정확히 예측하기는 힘들다. 이런
상황에서 새로운 관측치를 이용하여 기존에 구성된 Model 을
update 해 줄 필요가 있는데 이를 Online Learning 이라고 한다. 금일 세미나에서는 Supervised learning 중 5가지 주요한 방법론에 대한 설명이 진행 되었다. Perceptron,
Passive-aggressive Learning, Online Learning with Regularization, Online
Learning with Expert Advice 에 대한 개념을 살펴 보았으며, 조금씩
다르긴 하지만 현시점 Data 와 예측한 Data 를 비교하여
차이가 많을 경우에는 Loss 가 크게 되어 Model 에
반영한다는 것은 동일 하다. 이중에서 Expert advice 방법론은
여러 분야에서 응용이 가능할 것 같아 특히 관심있게 보았다. 많은 공정 Data 가 실제로 시간에 따라 특성이 바뀌는 형태를 가지고 있어 기존의 방법으로 이를 예측하기는 쉽지가 않다. 이런 시간 변화에 따른 특성까지도 포함 할 수 있는 예측 모델이 만들어 진다면 좋은 예측력을 가질 수 있다고
생각한다.

오늘 세미나는 online learning에 대한 전반적인 내용과
대표적인 알고리즘 설명을 들을 수 있었다. 시간이 흘러가면서 데이터의 패턴이 달라지게 되면 기존에 offline learning에서는 새로운 모델을 활용하여 다시 학습해야되는 단점이 존재했다. 따라서 학습비용이 굉장히 크기에 online learning은 기존에
학습된 모델을 그대로 사용하되 새로운 데이터에 따라서 모델이 update가 된다. 이 안에서 다양한 정책들에 따라 알고리즘이 여러 종류가 있다. 새로운
데이터의 정보의 반영정도와 어떻게 반영할지를 learning rate등으로 조절하는 면에서 나는 이것이 deep learning에서 사용되는 optimizer이 종류들과
비슷하다고 느껴졌다. 또한 update를 어떻게 진행하는가
보다 나는 새로운 관측치들 가운데서 해당 관측치가 update를 진행해야 할 관측치인가 아닌가를 구분하는
것에 흥미가 생겼다. 새로운 관측치가 기존에 데이터의 변화 패턴에 부합하는가 파악한뒤 기존의 패턴과
전혀 다른 데이터가 나온다면 그 데이터를 사용해 모델을 update한다면 그것이 과연 online learning의 목적과 부합할 것인가 생각이 들었다. 세미나
내용을 통해 여러가지 고민과 생각을 해볼 수 있다는 점에서 매우 유익한 시간이었다.

금주 참석한 세미나는 ‘Online Lerning: A
Comprehensive Review’라는 주제로 진행되었다. 기존에는 주어진 Data set에서 Train set, Test set을 split하고, Train set을 통해 모델을 구축한 뒤 Test set으로 예측 정합성을 판단하는 방법론이 사용되어왔다. 이러한
방법론은 Data set을 가장 잘 학습하는 Offline
Learning이라 한다. 하지만 Data가 sequential하게 수집 되어지고, 패턴을 띄는 경우 모델의 모양을
결정하는 파라미터를 업데이트해주게 되면 새로운 값에 대한 예측을 더 잘하는 모델이 구축될 것이다. 이러한
방법론을 새로운 data instance가 추가될 때마다 모델(파라미터)를 업데이트시켜주는 Online Learning이라 한다. Online Learning의 개략적인 학습 과정은 다음과 같다. 구축한
모델의 예측값과 실제값이 차이가 생기는 경우 파라미터를 새로운 값으로 업데이트시켜주게 되고, 차이가
없는 경우 이전의 파라미터를 유지하는 것으로 업데이트시켜주게 된다. 파라미터를 업데이트해주는 방법론도
다양한데, 기본적으로 Gradient descent개념을 baseline으로 Perceptron에 적용되었으며 새로운 데이터에
대해 파라미터를 업데이트시키면서 발생하는 과거 데이터에 대해 예측력이 떨어질 수 있다는 한계점들을 보완한 업데이트 크기를 조절해주는 Normalized Perceptron등을 소개해주셨다. 특히 Expert Advice모델의 경우 가정이 흥미로우면서 간단하기 때문에 인상 깊게 들을 수 있었고, 이외에도 주기성을 띄는 패턴의 경우 업데이트에 반영하지 않도록 하는 필터링을 적용시키는 방법론이라던가 이미
유의성이 떨어진 초기데이터의 경우 어느 정도로 반영해야 하는가에 대해 연구실 선배들과 같이 고민해볼 수 있어서 좋았다. 어떤 도메인에 활용하는가, 어떤 모델을 사용하는가에 따라 충분히
확장 시켜 적용해볼 수 있는 주제에 대해 소개해주신 것 같아 유익한 시간이었고, 간단한 변환을 통해
패턴변화가 있는 공정데이터에 효과적으로 예측할 수 있을 것 같아 앞으로 주어진 연구에 대해서도 적용시켜 보고 싶다는 생각이 들었다.

오늘 세미나에서는 Online learning을 다루었다. Online learning은 실시간으로 업데이트되는 특징을 가지고 있다는 점에서 Offline learning과는 차이가 있다. Offline learning이란
우리가 평소에 사용하는 기법으로, 기존 데이터를 Training
set, Testing set으로 나누어 Training set을 기반으로 모델을 만들고 Testing set으로 검증을 하는 방법이다. 그런데 이 방법은
새로운 데이터의 패턴을 반영하지 못하고 고정적이라는 점에서 한계가 있다. 그래서 나온 컨셉이 Online learning이고 다양한 분야에서 활용되고 있다. 세미나에서는
이 Online learning의 개념에 대해서 예시를 들어 간단하고 이해하기 쉽게 소개한 뒤, Supervised online learning 방법론 중 대표적인 것들에 대해서 소개하였다. Perceptron, Passive-aggressive, Online gradient, Expert advice,
Kernelized online learning은 모두 Gradient descent 방식으로
업데이트 되지만 Learning rate를 정의하는 방식과 그 특징이 모두 다르다. 세미나 마지막쯤에 발표자가 Online learning 방법론이
어떤 다른 분야에 적용되고 있는지 소개를 해주었는데 무척 흥미로웠다. Offline learning보다
효율적인 방법론인만큼 실제 문제에 잘 적용한다면 좋은 결과를 얻을 수 있을 것 같다.

금일 세미나에서는 online learning 알고리즘 중 분류모델에
대한 모델업데이트 방법론들을 살펴보았다. 온라인 학습의 기본 가정은 새 관측치가 기존 학습데이터와 다른
패턴을 갖고 있다는 것이다. 그래서 이를 학습하기 위한 다양한 알고리즘이 존재한다. 일부 알고리즘은 이상치 여부를 판단하여 선별적으로 학습하기도 하지만, 궁극적으로
새 관측치가 갖는 고유의 특성을 추가로 학습하는데 주목하고 있다. 발표자가 소개해준 온라인 학습기법의
분류체계를 보면 다양한 분야에서 연구가 진행중임을 알 수 있다. 특히,
이러한 문제는 제조공정의 데이터에서도 자주 찾아볼 수 있다. 공정이력 데이터에 미세하게
시변하는 데이터들은 온라인 학습 모델의 주요한 관심 대상이 될 것이다. 기존 알고리즘의 특성을 잘 정리하여
설명해준 성호에게 감사의 인사를 전하며 개인 연구에도 큰 발전이 있기를 바란다.

오늘 세미나에서는 Online learning을 주제로 다루었다. 실제로 우리가 시계열모델이 아닌 경우에서는 모델을 만들 때 기본적으로 과거의 데이터가 미래를 설명할 수 있다는 가정하에 만든다. 즉, 과거 데이터의 분포가 미래에도 변하지 않는다는 것인데, 실제 현실에서는 이러한 타이트한 가정을 만족하는 경우는 많지 않다. 시간에 따라 데이터의 분포는 여러가지 요인에 의해 변할 수 있으며, 이러한 현상을 반영하기 위해 모델의 파라미터를 지속적으로 업데이트 해주는 방법을 Online learning 이라 할 수 있다. 시간이라는 변수가 들어가면서부터 효율성에 대해서도 많이 고려를 해야하며 데이터 모델링 분야 중에서 쉽지 않은 분야이다. 그러나 반대로 생각하면 아직 도전할 부분이 많은 분야라 할 수 있다. 이번 세미나는 Online learning의 전반적인 개요에 대해 잘 정리가 된 세미나였다.