기계학습 30

분포 정리

가끔씩 다시 보면 생각이 잘 안난다. 맨날 까먹네. 공부가 부족한가보다. [데이터 사이언스에 많이 사용되는 확률밀도함수들] - Bernoulli 동전의 앞/뒤처럼 이벤트가 0 또는 1밖에 일어나지 않는 분포를 말합니다. 동전은 확률이 0.5/0.5 겠지만 다른 경우도 있을 수 있겠죠 - Uniform 주사위처럼 모든 결과에 대한 확률이 동일한 확률분포입니다. - Binomial 동전을 n번 던졌을 때 p번만큼 앞면이 나올 확률은? Binomial은 이렇게 0 또는 1이 나오는 이벤트(각각이 Bernoulli확률을 갖는 이벤트)에 대해 1이 발생활 횟수에 대한 확률입니다. - Poisson 1시간에 평균 10번의 전화통화가 온다고 해봅시다. 그렇다면 한시간에 12번 전화통화가 올 확률은? 이것이 바로 po..

서포트 벡터 머신(SVM, Support vector machine)을 이해하기 위한 자료들

지난 대학원 강의 과제가 SVM을 계산 라이브러리를 사용하지 않고 구현하는 것이었다. 사실 이런 구현 과제는 구글과 깃헙에서 5분 내로 차고 넘치게 구할 수 있다. 그런데 그런 copy & paste가 대체 무슨 의미가 있을까 scikit learn에서 SVC() 한번이면 끝나는 알고리즘 안에 이렇게 깊은 내용이 있는지 몰랐다. 반성하면서 2주 정도 공부하며 시간을 보냈던 것 같다. 사실, 아직까지 그 의미를 정확히 수식으로 풀어내진 못한다. 그래도 그냥 SVM의 핵심 아이디어는 어떤 것인지, 그를 지탱하는 수식의 의미는 어떤 것인지 그 키워드들을 말할 수 있는 정도의 수준은 된 것 같다. 그런 느낌만 파악하기 위해 수집한 자료들을 정리하였다. 1. CS229 강의노트 (기본 강의자료) - 강의에 활용되..

기계학습 2022.05.19

conjugate gradients 엄청난 설명 자료

https://joonleesky.github.io/posts/Conjugate_Gradient/ [Math] Conjugate Gradients 이 포스팅에서는 \(Ax = b\)의 해를 찾아내는 과정을, 최적화 문제로 환원하여 해결하는 conjugate gradients method를 살펴봅니다. Justin Solomon 교수님의 CS 205a: Mathematical Methods for Robotics, Vision, and Graphics joonleesky.github.io 완-벽 이번에 사내에서 분석하는 어떤 건에서, probit 모델을 추천받아 활용해보았다. 그런데 newton method 중 hessian matrix를 계산하는 과정에서 문제가 생겨 수렴이 되지 않아 결과를 확인할 수 ..

기계학습 2022.04.16

2. 편향-분산 트레이드 오프 (Bias-Variance trade off)

안녕하십니까 허브솔트입니다. 지난 시간에는 앙상블의 알고리즘들에 대해 알아보았는데요, 오늘은 편향 분산 트레이드 오프에 대해 공부해 볼께요! 편향 분산 트레이드 오프는 비단 앙상블에만 적용되는 것이 아니라 지도학습에 전반에서 매우 중요한 내용입니다. 따라서 다루고 넘어가보도록 할게요. 편향과 분산의 관계를 알기 전에, 이것들이 뭔지 우선 알아야겠죠. 위키피디아에서는 아래와 같이 정의합니다. The bias is error from erroneous assumptions in the learning algorithm. High bias can cause an algorithm to miss the relevant relations between features and target outputs (under..

기계학습 2022.04.15

1. 앙상블(Ensemble) 기법과 배깅(Bagging), 부스팅(Boosting), 스태킹(Stacking)

안녕하세요, 허브솔트에요. 저희 데이터맛집의 허브솔트 첫 글 주제로 앙상블이 당첨됐네요...! 요새 캐글의 상위권 메달을 휩쓸고 있는 대세 알고리즘이 앙상블 기법을 사용한 알고리즘의 한 종류인 XGBoost라죠? 머신러닝의 성능을 극대화하고 보완하는 앙상블은 그만큼 중요하고 의미가 있습니다. XGBoost도 추후에 다뤄보도록 할게요. 우선 큰 갈래를 잡고 시리즈로 연재를 해보도록 하겠습니다. 그럼 달려봅시다 빠샹 가. 앙상블(Ensemble)이란? - 백지장도 맞들면 낫다. 머신러닝 또한! - 말 그대로 앙상블입니다. 머신러닝을 위한 다양한 학습 알고리즘들을 결합하여 학습시키는 것으로, 예측력의 보완은 물론, 각각의 알고리즘을 single로 사용할 경우 나타나는 단점들을 보완하죠. 위키피디아에서는 앙상블..

기계학습 2022.04.15

Chapter 3 - MCMC(Tensorflow Probability)

PyMC3 -> Tensorflow Probability로 변경¶ pymc3가 활용하는 theano가 거의 죽어버려서,tensorflow를 활용하는 tensorflow probability로 급하게 선회하여 진행하였다. 공식 github에도 2.0 이상의 버전을 지원하지 않아 엄청난 삽질의 연속이었다. In [1]: import numpy as np import os #@markdown This sets the styles of the plotting (default is styled like plots from [FiveThirtyeight.com](https://fivethirtyeight.com/) matplotlib_style = 'fivethirtyeight' #@param [&#..

Chapter 2.1 - PyMC3 소개

In [1]: %config Completer.use_jedi = False 2.1 서론¶2.1.1. Model Context¶ pymc3 에서는, Model 객체 내에서 원하는 모든 변수를 처리함. In [2]: import pymc3 as pm WARNING (theano.configdefaults): g++ not available, if using conda: `conda install m2w64-toolchain` WARNING (theano.configdefaults): g++ not detected ! Theano will be unable to execute optimized C-implementations (for both CPU and GPU) and will default to Pyt..