본문 바로가기

Research114

Residual connection 2019. 10. 22.
각종 Normalization technique • Batch Normalization: 각 feature에 대한 통계를 구한다.(mini-batch내의 모든 데이터와 모든 시공간 dimension을 across out) • Layer Normalization: 각 instance에 대한 통계를 구한다.(모든 feature와 모든 시공간 dimension을 across out) 특히 각 seq마다 input feature의 스케일이 다를때 유용하다. ex) 시끄러운 wav 파일, 조용한 wav 파일 • Instance Normalization: 각 instance에서, 각 feature의 통계를 구한다.(모든 시공간 dimension을 across out) 이것은 사실 통계라고 말하기 힘듦. 그냥 그 값 1개를 가져오는 것임 • Group Normal.. 2019. 10. 22.
물리학에 기반한 모델 # 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도를 만들어내기 위한 제어가 필요한.. 2018. 11. 13.
딥러닝에서 쓸만한 다양한 Ensemble Method # 앙상블- Soft voting: 각 Softmax확률의 평균을 낸다음 argmax- Hard voting: 각 softmax에서 argmax한 다음 아래와 같은 방법으로 voting* Unanimous voting: 만장일치일 때만 decision함* Majority voting: 다수결로 선택된 decision이 전체의 50%를 넘어야됨.* Plurality voting: 각각의 softmax에대해 argmax한다음 가장 다수의 의견을 따름.(50%를 넘지 않아도 됨)- Weighted voting: Soft 혹은 Hard voting에서 각 softmax에 임의의 weight를 주어서 사용.(확률에 대해선 weighted sum, Hard에 대해서는 2표를 행사할 수 있음)- Staking: 각각.. 2018. 11. 1.
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.
Natural Language Processing NLP 기초 # 용어 - consonant: 자음 - vowel: 모음 - morpheme: 형태소, 뜻을 갖는 최소 단위 - syntactic: 문법적인 - semantic: 의미적인 - delexicalization: 3시15분 -> [Time]으로 바꿈 # Beam search greedy 탐색 알고리즘(휴리스틱 탐색)이다. DP가 아니다. 적당히 쓸만한 solution을 구하는 것이다. 빔서치는 # IOB format: token classification(Slot filling)에서 New York과 같든 2개의 word로 된 녀석들을 처리하기 위한 것. - New: B-city - York: I-city 이런식으로 B가 등장하고, 같은 종류의 sub-slot에 해당하는 I slot이 연속해서 .. 2017. 8. 14.
Precision Recall AveragePrecision # 컨퓨전 매트릭스 - True/False: 모델이 잘 맞췄느냐 못맞췄느냐를 의미함. 즉 True이면 모델이 정답을 맞췄다는 의미이고, False이면 모델이 정답을 틀렸다는 의미이다. - Positive/Negative: 모델이 예측한 값이 True였나, False였나를 의미함. http://www.dataschool.io/simple-guide-to-confusion-matrix-terminology/ - TP: 정답을 맞췄고(T), 모델이 1이라고 예측(P)함. 즉, 실제 정답도 1임 - TN: 정답을 맞췄고(T), 모델이 0이라고 예측(N)함. 즉, 실제 정답은 0임 - FP: 정답을 틀렸고(F), 모델이 1이라고 예측(P)함. 즉, 실제 정답은 0임 - FN: 정답을 틀렸고(F), 모델이 0이라고.. 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에 따라서 값이 천차만별이기 때문에, 절대 값만 보고 바로 성능을 판단하기가 어려운 반면, 결정계수의 경우 상대적 성능이기 때문에 보다 직관적으로 알 수 있다.) 결정계수(R^2) 구하는 공식 ( 보통의 경우 0 2017. 5. 22.
Computer Vision Techniques Superpixel이미지 segmentation에서 사용되는 방법으로, 기계학습관점에서 직관적으로 설명하면 한마디로 RGB색상에 대해 K-means 클러스터링을 하는 것이라 말할 수 있다. 예를 들어 포토샾에서 영역선택 툴을 사용하는 것과 동일한 메커니즘으로, SLIC라는 방법에서는 K-means의 변형을 사용한다. 물론 이외에도 graph-based 기반의 superpixel 알고리즘도 존재한다. 각 superpixel 클러스터의 크기는 평균적으로 비슷하지만, 다를 수 있다.https://infoscience.epfl.ch/record/177415/files/Superpixel_PAMI2011-2.pdf Lab Color spaceLab Color space는 XYZ 색 공간보다 균일한 색 체계를 목표.. 2017. 3. 15.
Decision Tree 계열 알고리즘 Random ForestRandom Forest는 feature space를 랜덤하게 쪼갠다음, 쪼개진 sub feature space를 다시 디시전 트리를 이용해 격자 형태의 decision boundary를 갖도록 분류한다. 이렇게 학습한 N개의 디시전 트리를 앙상블하여 최종 inference에 사용한다. 즉 추론할 때에는 데이터를 모든 디시전 트리에 집어넣고 클래시피케이션한 각각의 분류 결과를 majority voting(다수결) 하는 방식으로 최종 결정을 한다. 이처럼 랜덤포리스트는 앙상블기반의 분류기이므로 이론적으로, 그리고 실질적으로 오버피팅 문제를 적게 격는다.(물론 decision tree의 개수가 너무 적거나, 개별적인 decision tree의 depth가 지나치게 복잡할 경우 오버피팅.. 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는 현재 학습하는 polic.. 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.
신경과학의 원리 1 수업 - Chapter 1. The Brain and Behavior Principles of Neural Science 5th Edition : Chapter 1. The Brain and Behavior - 현대의 신경과학은 뇌-마음-행동을 하나의 신경과학적인 방법으로 모두 설명하고자 하는 학문이다.- 신경과학은 여러 뉴런들이 복잡하게 연결되어 있음으로 구성된 것을 밝힌 것이 중요한 시작이었다. 이는 골지가 개발한 silver salt 방법을 이용해 최초로 neuron doctrine(각각의 개별 뉴런들이 모여 전체 신경계를 구성한다)을 알게 되었고, 추후 electron microscopy 방법을 통해 synapse를 관찰함으로 확실해졌다.- 현대의 신경과학에서 가장 중요한 발견은 먼저 뇌의 각 영역마다 특수한 기능을 수행한다는 발견이다. 초창기에는 Gall이 주장한.. 2016. 9. 19.
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.
미분의 체인 룰, 합성 함수 미분 # 체인룰 체인 룰이라 불리는 법칙은 사실은 합성 함수 미분의 원리를 말하는 것이다. 즉 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.
여러 Classifier 간의 특성 - 여러 데이터의 구조에서 각 알고리즘들이 경계선을 찾은 결과 http://scikit-learn.org/stable/auto_examples/classification/plot_classifier_comparison.html 참고로 scikit-learn 은 python 에서의 weka라고 생각될 정도로 매우 사용이 쉽고 다양한 알고리즘이 구현되어있다고한다. 단 2~3줄 만으로 학습 및 추론이 가능하다. - 아래와 같은 데이터를 분류해보자. (arff는 weka의 데이터 형식이다.) generated by 곽하녹 이 문제는 우선 2차원에서의 유클리드 거리정보가 매우 중요하다. 따라서 KNN알고리즘을 쓰면 쉽게 97%의 정확도에 도달할 수 있다. SVM으로 할 경우 gamma가 매우매우 성능에 민감한 영.. 2015. 9. 14.