본문 바로가기

Research/Machine Learning69

Bayesian Inference Machine Learning 에서 궁극적으로 추구하는 목표는 P(X'|X) 를 알아내는 것이다. (X' : 예측하고자 하는 데이터 , X : 기존에 관측된 사건의 데이터) 즉, 기존에 관측된 사건의 데이터 X를 이용해서 앞으로 일어날사건 X'에 대해 예측하는 것이다.만일, X 없이 그냥 P(X')를 계산한다는 것은 기존에 일어난 사건 데이터 전혀 고려하지 않고, 오직 수학적 모델만으로 확류를 계산하겠다는 의미이다. 이는 machine learning이라 부를 수 없고, 일반적으로 데이터 X를 고려할 때보다 훨씬 부정확한 확률 추론을 하게된다. 좀 더 직관적인 예를 들면, 두개의 박스 A와 B에서, A에는 빨간공이 99%, B에는 파란공이 99% 들어 있다고 하자. 이때 한 사람이 무작위로 두 박스중 하.. 2020. 1. 29.
Advanced Supervised Learning Advanced Supervised Learning Active LearningUnlabeled data에 대해 MC dropout을 inference를해서 confidence를 측정해서 낮은것부터 labeling한다.똑같은 방법으로 loss prediction을 해서 loss가 큰 것부터 labeling할 수도 있다. Online Service Data + Active Learning감독학습 모델의 실서비스를 하면서 계속해서 들어오는 input x에 대해, 모든 데이터를 전부 labeling할 수는 없다. 따라서 이 중에서 어떤 데이터를 labeling할 지 우선순위를 정해야하는데 이 때 active learning이 필요하다. Multi-task Learning에서 난이도에 따른 Overfitting.. 2020. 1. 28.
The Bitter Lesson 번역 The Introduction of Reinforcement Learning의 저자로 유명한 Richard Sutton의 2019년 5월 13일에 올라온 AI에 대한 글을 번역해보았다. (역자: 곽동현, 윤상웅) The Bitter Lesson 씁쓸한 교훈 70년간의 AI연구로부터 깨달을 수 있는 가장 큰 교훈은 바로 계산을 이용하는 일반적인 방법론이야말로 궁극적으로, 큰 격차를 두고도 가장 효율적이라는 것이다. 이에 대한 궁극적인 이유는 바로 무어의 법칙, 더 일반화해서는 유닛 당 계산 비용이 지수적으로, 꾸준히 감소하고 있기 때문이다. 대다수의 AI 연구는 agent가 사용가능한 계산자원이 일정하다는 조건에서 행해졌으나(이 경우 인간의 지식을 최대한 이용하는 것이 오직 유일한 성능 향상의 방법일 것이.. 2020. 1. 17.
음성인식 이해하기 # 기본 개념# Acoustic model 오디오 --> phoneme(혹은 grapheme 등)을 예측해주는 모델 # Phoneme Dictionary word -> phoneme가 기록된 정보 # G2P model 대규모 dictionary를 학습해서, 임의의 word에 대한 phoneme을 예측해주는 모델 (dictionary와의 차이점은, dictionary에 없는 word에 대한 phoneme 예측도 가능함) # Pitch: 음의 높낮이(진동수 Hz의 크고 작음과는 다르다) Pitch는 보다 추상적인 개념으로, 사람이 인지할 수 있는 Hz의 변화가 저주파일때 더 민감하고, 고주파로 갈수록 둔감해지는 just-noticeable differences에서 출발한 개념이다.즉 사람이 인지하는 음의 높.. 2019. 12. 29.
소리 합성 # 기본 개념 - Mono vs Stereo: 마이크 2개에서 녹음하고, 정확히 mono 2개의 정보를 저장하면 스테레오. - Sampling rate: data point의 x축 해상도. 즉 1초에 몇번이나 data point를 찍을지, - Bit depth: data point의 y축 해상도. 각 찍힌 점들이 구분될 수 있는 amplitude의 단계. 만약 2 bit rate이면 오직 4단계의 y축 해상도만 존재함. - Bit rate: Sampling rate * Bit depth, 위 두가지 measure를 동시에 고려하는것. 초당 bits전송량https://www.reddit.com/r/explainlikeimfive/comments/4d4krv/eli5_what_is_the_difference.. 2019. 12. 9.
물리학에 기반한 모델 # Ising Mode Ernst Ising에 의해 만들어진 모델로, 원자의 spin을 나타내는 수학적 통계 모형이다. 각각의 변수는 -1 or +1 의 값을 가지고, 일반적으로 격자 형태의 모양에 배열되어 있고, 인접한 이웃과만 서로 영향을 주고 받음 2019. 5. 15.
강화학습, Exponentially weighted average계산하기 https://gist.github.com/imcomking/b1acbb891ac4baa69f32d9eb4c221fb9 def exponentially_weighted_matrix(discount, mat_len): DisMat = np.triu(np.ones((mat_len, mat_len)) * discount, k=1) DisMat[DisMat==0] = 1 DisMat = np.cumprod(DisMat, axis=1) DisMat = np.triu(DisMat) return DisMat def exponentially_weighted_cumsum(discount, np_data): DisMat = exponentially_weighted_matrix(discount, np_data.shape[0.. 2019. 1. 22.
PID 제어 # PID Controller: 산업적으로 매우 넓게 사용되는 제어 시스템. 수학적이기보단 실용적인 목적으로 만들어져서 사용되는 공학의 영역이다.https://en.wikipedia.org/wiki/PID_controller#Proportional_term P, I, D 세가지 요소로 우리가 원하는 target value를 만들어내기 위해 최적의 제어 routine을 만들려는 것이다.예를 들어 에어컨을 틀어서 실내온도를 30도에서 20도로 만들려면 어떻게 해야할까? 너무 과하게 가동하면 자칫 온도가 18도까지 내려갈수도 있고, 너무 살살틀면 20도까지 가려면 한도끝도 없이 기다려야할 것이다.그래서 매우 빠르고 정확하게 20도를 만들어내기 위한 제어가 필요한데, 그럴 때 사용되는 것이 바로 PID 제어이다.. 2018. 11. 13.
Belief Propagation # Belief PropagationAcyclic PGM 모델을 학습하여 MLE나 MAP를 수행하기 위한 알고리즘이다. Cyclic PGM의 경우 수렴성이 보장되지 않고, 계속 확률분포가 진동하지만, Acyclic한 경우 수렴성이 이론적으로 증명되었다고 한다.어떤 임의의 parametric PGM모델을 Acyclic하게 만들고, 이것의 파라미터를 MLE나 MAP에 대해 최적화 하기 위해 각 그래프에서의 Node가 자기와 연결된 주변 Node로 Belief Propagation을 시키고, 이것들이 모여서 1번의 학습이 이뤄진다. 이러한 Belief Propagation을 계속해서 iteration하면서 학습을 수행하게 된다. 기본개념: https://en.wikipedia.org/wiki/Belief_pr.. 2018. 1. 5.
Thompson Sampling, Multi-armed bandit, Contextual bandit # Multi-armed bandit(=K-armed bandit) 여기서 armed는 action이고, K는 action의 개수를 의미함.- Multi-armed bandit = One-state MDP one-state MDP란 것은 state가 1가지로, 항상 고정된 상태를 의미함. 즉 state가 변하지 않기 때문에 이는 곧 state를 무시한다는 말과 동일함. 한마디로 state가 없는 MDP임 # Contextual bandit(=Associative Search) Multi-armed bandit에서 한발 나아가, context를 given condition으로 받아서 문제를 확장한것임. 이때 context는 state와 다른데, 원래의 MDP에서는 Transition probability에.. 2018. 1. 5.
Precision Recall AveragePrecision # 컨퓨전 매트릭스 - True/False: 모델이 잘했느냐 못했느냐를 의미함. 즉 True이면 모델이 정답을 맞췄다는 의미이고, False이면 모델이 정답을 틀렸다는 의미이다. - Positive/Negative: 모델이 예측한 값이 True였나, False였나를 의미함.http://www.dataschool.io/simple-guide-to-confusion-matrix-terminology/ - TP: 모델이 1이라고 예측(P)했고, 그 예측이 맞았음(True, 정답을 맞춤) 즉, 이 경우에 실제 정답도 1임 - TN: 모델이 0이라고 예측(N)했고, 그 예측이 맞았음(True, 정답을 맞춤) 즉, 이 경우엔 실제 정답이 0임 - FP: 모델이 1이라고 예측(P)했고, 그 예측이 틀렸음(False,.. 2017. 5. 31.
Coefficient of Determination(결정계수), R^2(R square) 결정계수 = Coefficient of Determination = R^2 = R squared - Regression model의 성능을 측정하기 위해 mean value로 예측하는 단순 모델(Zero-R 모델)과 비교, 상대적으로 얼마나 성능이 나오는지를 측정함. (다른 성능 지표인 RMSE나 MAE는 데이터의 scale에 따라서 값이 천차만별이기 때문에, 절대 값만 보고 바로 판단하기가 어려움.) ( 보통의 경우 0 2017. 5. 22.
Decision Tree 계열 알고리즘 - 랜덤포리스트는 feature space를 랜덤하게 쪼갠다음, 쪼개진 sub feature space를 다시 디시전 트리를 이용해 격자 형태로 분류한다. 학습이 끝나면, 학습된 디시전 트리를 앙상블하여 최종 inference에 사용한다.즉 추론할 때에는 데이터를 모든 디시전 트리에 집어넣고 클래시피케이션을 한다음, 각각의 분류 결과를 majority voting 하는 방식으로 최종 클래시피케이션. 랜덤포리스트는 앙상블기반의 분류기로, 여러 피처(ex) MFCC 피쳐 409개)중에서랜덤하게 몇개를 추출하여 디시전 트리로 학습한다. 학습은 이런 과정을 N번 반복한 뒤 추론할 때에는 디시전트리를 앙상블해서 한다.이러한 이유로 오버피팅이 적다. Gradient Boosting Tree Gradient Boos.. 2017. 2. 13.
On-policy와 Off-policy, Policy Gradient, Importance Sampling # On-policy : 학습하는 policy와 행동하는 policy가 반드시 같아야만 학습이 가능한 강화학습 알고리즘. ex) Sarsa on-policy의 경우 1번이라도 학습을 해서 policy improvement를 시킨 순간, 그 policy가 했던 과거의 experience들은 모두 사용이 불가능하다. 즉 매우 데이터 효율성이 떨어진다. 한 번 exploration해서 얻은 experience를 학습하고나면 그냥은 재사용이 불가능하다.(Importance sampling등을 해야 재사용가능 함.) # Off-policy : 학습하는 policy와 행동하는 policy가 반드시 같지 않아도 학습이 가능한 알고리즘. ex) Q-learning off-policy는 현재 학습하는 policy가 과거.. 2017. 1. 3.
옛날 인공지능 용어 / 최적화이론 관련 용어 옛날 인공지능 용어The Turk : 사람이 로봇인 척하고 체스를 두는 것. Amazon Mechanical Turk도 여기에서 나온 단어임.Automata : 어떠한 임의의 기능을 하는 로봇, 함수, 알고리즘을 의미. 매우 폭넓은 단어Learning Automata : Deterministic MDP에서의 RL알고리즘과 동치임. 구버전 RLAnticipatory System : Environment Dynamics에 대한 model을 가지고 있는 시스템. 즉 Model-based RL같은 느낌임. Cognitive Dynamic System : 인공지능 시스템의 초기 버전? 2006년에 레이더를 어떻게 지능적으로 만들지 제안하였음. ex) 레이더에 의해 포착된 비행체가 새인지 비행기인지 구분해서, 필요.. 2016. 12. 29.
Bagging, Boosting, Bootstrapping Bagging, Boosting, Bootstrapping의 세가지 용어가 기계학습에서 자주 사용되는데, 자주 개념이나 뜻이 헷갈려서 정리해본다. 1. Bagging : Bootstrap Aggregating의 줄임말이다. 그런데 이것의 의미는 먼저 원래 데이터에 대해서 여러개의 작은 데이터셋 N개를 샘플링해서 만든다음, 각각의 데이터를 작은 모델 N개로 학습을 시킨다. 그 다음 학습된 N개의 모델을 모두 하나로 합쳐서 최종적인 모델로 사용하는(bag에 담는 느낌) 방법론을 의미한다.(병렬적으로 데이터를 나누어 여러 개의 모델을 동시에 학습시킴)http://m.blog.naver.com/muzzincys/220201299384 2. Boosting : Boosting은 Bagging과 다르게 먼저 간단한.. 2016. 12. 29.
p Norm vector norm : 각각의 엘리먼트의 절대값을 p제곱한다음 루트p 따라서 L1 norm은 element 절대값의 합에 해당하고, L2 norm은 피타고라스의 정리처럼 유클리드 거리를 구한것에 해당한다. http://mathworld.wolfram.com/VectorNorm.html - 좀 더 보기 편한 수식https://rorasa.wordpress.com/2012/05/13/l0-norm-l1-norm-l2-norm-l-infinity-norm/ 2016. 9. 17.
Maximum Likelihood Estimation의 의미 MLE에서 확률(*)의 곱을 최대화하는 대신 확률의 합을 최대화하면 어떻게 될까? 보다 정확히, (*)는 모델이 주어졌을 때 IID데이터의 확률. 즉, p(x1|M)p(x2|M)...p(xn|M) 을 최대화하는 것이 아니라 p(x1|M)+...+p(xn|M)을 최대화 하는 모델 파라미터를 선택한다면? --> 확률곱 : iid 에서 교집합의 확률 확률합 : iid 에서 합집합의 확률교집합은 and, 동시에라는 조건이고 합집합은 or, 또는이라는 조건이라 곱셈이 훨씬 강력한 가정이다. 둘다 각각의 확률 엘리먼트가 최대화가 되긴하겠지만 곱셈은 1개의 엘리먼트만 0을 가져도 전체확률이 0이 되어 Log Loss 값이 무한대가 되지만, 확률 합은 그렇지 않아서 더 약한 조건이다. 그리고 exp 이 있는 확률모델이.. 2016. 9. 2.
Advanced Gradient Descent Method Advanced Gradient Descent Method (고급 경사 하강 법)출처 : http://imgur.com/a/Hqolp 위에서 소개된 그림은 특정한 landscape에서의 각각의 optimizer들의 학습 속도를 표현 한 것이다. 보기에는 Adadelta가 최고인가하고 생각 할 수 있겠지만, 문제 상황에 따라 잘하는 경우도 있고, 못하는 경우도 있으므로 문제 상황에 맞게 잘 선택해야한다. 출처 : http://imgur.com/a/Hqolp 위의 이미지는 특히 Rmsprop와 Adagrad가 좋은 성능을 보인다. 뉴럴넷의 W와 같은 고차원의 공간에서는 이러한 saddle point가 매우 많아 문제가 되는 것으로 알려져있다. 따라서 이 두가지 옵티마이저를 선택하는 것은 좋은 방법이다. 요즘.. 2015. 10. 24.
미분의 체인 룰, 합성 함수 미분 # 체인룰 체인 룰이라 불리는 법칙은 사실은 합성 함수 미분의 원리를 말하는 것이다. 즉 f(g(x))를 미분하면, f'(g(x)) * g'(x)이 되는데, 이것이 바로 체인룰이다. 그냥 겉미분*속미분 같은 공식으로는 설명이 불충분하고 비직관적이다.보다 직관적으로 설명하자면, g(x)=u 라고 먼저 정의를 하고, f(u)를 u로 미분한다음, u를 다시 x로 미분하게되면 f'(u) = df/du * du/dx = df/dx f'(u) = df/du = f'(u) * u' (단, u' = g'(x)) 이 되고, 이는 마치 곱셈과 나눗셈으로 du 를 약분하듯이 계산된다. 이것이 체인룰이다. (물론 df/dx가 정확히 분수는 아니나, 아래의 합성 함수 미분의 증명을 보면 의미적으로는 충분히 약분이 가능한 형태임.. 2015. 10. 11.