ML(머신러닝)(52)
-
차원 축소에 대한 10가지 팁(Ten quick tips for effective dimensionality reduction)
https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1006907 Ten quick tips for effective dimensionality reduction Citation: Nguyen LH, Holmes S (2019) Ten quick tips for effective dimensionality reduction. PLoS Comput Biol 15(6): e1006907. https://doi.org/10.1371/journal.pcbi.1006907 Editor: Francis Ouellette, University of Toronto, CANADA Published: June 20, 2019 Cop journals..
2019.08.11 -
[Python] Lightgbm Bayesian Optimization
이전에는 catboost였지만, 여기선 Lightgbm을 Bayesian Optimization을 해봤다. 일단 성능은 둘 다 잘 나오는데, 개인적으로 쭉 살펴보면 오히려 lightgbm 알고리즘이 f1 score가 더 잘 나온다. 암튼 둘 다 좋은 알고리즘이니 파리 미터 튜닝을 자주 할 테니 이렇게 베이지안 최적화를 연습해본다. from bayes_opt import BayesianOptimization def learning_rate_005_decay_power_099(current_iter): base_learning_rate = 0.05 lr = base_learning_rate * np.power(.99, current_iter) return lr if lr > 1e-3 else 1e-3 def..
2019.06.01 -
[Python] Catboost Bayesian Optimization
최근에 Tree based 모델을 좀 보고 있는데, Python에서 categorical 변수를 One-hot을 하지 않고 하는 알고리즘은 현재, lightgbm과 catboost인 것 같다. 개인적으로 원핫을 안 좋아해서 인지, xgboost는 별로 하기가 싫다. 물론 tree-based model이라서 다차원으로 갔을 때의 고민이 좀 없겠지만, 현재 데이터중에 날짜 데이터도 있는데.. 이것을 onehot 하면 너무 Sparse하지 않겠는가............... 그래서 나는 여기선 catboost를 parameter tuning을 해보려고 한다. https://data-newbie.tistory.com/131 이전에 간략하게 논문리뷰를 해봤다. CatBoost란? unbiased boosting ..
2019.06.01 -
sklearn - skopt Bayesian Optimization
https://scikit-optimize.github.io/notebooks/hyperparameter-optimization.html skopt API documentation Tuning a scikit-learn estimator with skopt Gilles Louppe, July 2016 Katie Malone, August 2016 If you are looking for a GridSearchCV replacement checkout the BayesSearchCV example instead. %matplotlib inline import numpy as np import matplotlib.pyplot as pl scikit-optimize.github.io https://medium..
2019.05.31 -
Binary Classification 중 주의해야 할 것과 팁
흔하게 우리는 여러 가지 분류 문제에 대해서 경험을 하게 된다. 멀티 클래스를 분류해야 하는 경우도 있지만, 흔하게는 이진 분류를 많이 한다. 암이 있는지?없는지? 사기꾼인지? 아닌지? 와 같이 것이 하나의 예다. 분류 문제를 생각하게 된다면, 가장 많이 보는 것이 Confusion matrix 이다. 특정 Cut off를 이용해 2가지 중 하나로 분류해주고, 다음에 쉽게 눈으로 결과의 성능을 보는 역할을 한다. 보통 평가 메트릭으로는 accuracy를 본다. 말 그래도 정확도이기 때문에 많이들 보지만, 여기에는 문제가 있다. 바로 Imbalanced dataset 같은 경우에 문제가 된다. 예를 들어 사기범을 찾고 싶은 모델을 만들고 싶을 때, 사기범은 데이터 중에 얼마나 있을까? 아마 일반인에 비해서..
2019.05.30 -
CatBoost란? unbiased boosting with categorical features - 2
1편 https://data-newbie.tistory.com/manage/newpost/131?type=post&returnURL=https%3A%2F%2Fdata-newbie.tistory.com%2Fmanage%2Fposts TISTORY 나를 표현하는 블로그를 만들어보세요. www.tistory.com 2편입니다. 4 Prediction shift and ordered boosting 4.1 Prediction shift 왜 Gradient Boosting에 Prediction Shift가 발생하는지 설명하는 장입니다. Prediction shift는 특별한 종류의 target leakage에 의해서 발생합니다. Our solution is called ordered boosting and res..
2019.05.21 -
CatBoost란? unbiased boosting with categorical features - 1
논문 및 Document https://arxiv.org/abs/1706.09516 https://catboost.ai/docs/concepts/python-reference_catboostclassifier_fit.html 현재 Xgboost , lightgbm , gbm 계열인 Gradient Boosting 은 weak learner를 loss function 상에서 Gradient Desecnet를 최적화 기법으로 기울기가 가장 큰 방향으로 tree들을 결합하는 방법입니다. 논문에선 catboost를 새로운 Gradient Descent 방법이라 합니다. catboost는 다른 gbm알고리즘보다 더 좋은 성능을 낼 수 있는 것은 ordering-principle 개념을 대입하여 기존의 Data 누..
2019.05.21 -
Bayesian 가우시안 기저 모형을 활용한 Linear 예측(R)
베이지안 예제 가우시안 기저 모형 이성령 Prior \(p(w|\alpha) = N(w|0 , \alpha^{-1}I)\) Likelihood \(p(t|X,w,\beta) = \prod_{i=1}^N N(t_i | w^{T}\phi(x_i), \beta^{-1})\) \(p(t|w,\beta) = p(t|x,w,\beta)\) Posterior \(p(w|t,\alpha , \beta) = \frac{p(t|w,\beta)p(w|\alpha)}{p(t|\alpha,\beta)}\) \(= \frac{p(t|x,w,\beta)p(w|\alpha)}{p(t|\alpha,\beta)}\) \(p(w|t,\alpha , \beta) = N(w | m_N , S_N)\) \(m_{N} = \beta S_N \p..
2019.03.26 -
계절형 자기회귀 이동평균모형(SARIMA)
보통 SARIMA 형식은 으로 되어 있다. 승법 계절 모형이라고도 한다. sas에서 estimate 설정해 줄 때 형식으로 넣어준다 앞에 있는 ( ) 에는 불규칙 성분을 뒤에 있는 ( )에는 계절 불규칙을 넣어준다. sas output 중에서 autocorrelation check for white noise 부분에서는 자기 상관성을 따지는 부분인데 이 부분에 p-value가 기각을 해야 분석하는 사람들 입장에서는 좋은 것이다. 왜냐하면 상관성이 있어야 분석할 게 있다는 뜻이기 때문이다. 그리고 저번에 말한 만약에 확률적 추세가 있다면 -> adf에서 single mean을 고려해야 하고 차분을 결정한다. 만약에 결정적추세가 있다면 -> regression OR 차분을 해야 한다. 그래서 만약에 ARIM..
2018.04.09 -
ARIMA 모형의 적합
모형 적합 절차에서 ARMA 모형 적합 절차라고 하는 것은 ARMA(P, Q)에서 P, Q를 잘 선택해 가장 적절한 모형을 찾는 것이다 앞에서 배운 비정상(계절성 제외)하고 다 처리를 한 후에 ARMA 모형에 FITTING 시키고 모형 진단에서 잔차 분석 후 옳지 않으면 다시 새로운 P, Q에다가 FITTING 시키고 다시 모형진단 하는 것 반복한다. 모형의 식별에서 P,Q 를 간결의 원칙으로 인해 P 안정화 시켜줘야한다 (Log 이용) 분산이 일정해도 그 수준이 변하면 -> 적절한 차분 을 해야한다. 차분을 너무 많이 하면 앞에서 말한 듯이 분산이 너무 커져서 -> 쓸모없는 모형 예측이 나온다. 언제까지 차분을 하나면 -> 차분을 해도 1. 추세가 계절성이 존재한다. 2. SACF가 천천히 감소한다. ..
2018.03.25 -
단위근과 단위근 검정
도움이 되셨다면, 광고 한번만 눌러주세요. 블로그 관리에 큰 힘이 됩니다 ^^ 단위근 검정은 MA 모형과는 상관이 없고 AR이 포함된 모형 과 연관이 있다. 이러한 AR 모형이 있으면 AR모형은 정상성조건을 만족시켜야 하는데, 의 모든 근의 절대 값이 1보다 커야 한다. 만약 이 근이 1보다 크지 않은 근이 존재하면 -> 비정상 확률과정 이라고 한다. 만약 이 근중에서 크기가 1인 근이 있으면 그 근을 단위근(unit root) 라고 한다. 단위근의 존재는 그림으로 확인하기가 어렵다 ARIMA(1 ,1, 1,) 와 ARMA(1,1) 를 구별하기 어렵다 -> 그래서 단위근검정을 통해서 검정을 통해 -> 차분을 하여 정상성조건을 만족시켜서 - > 정상성을 만족하는 확률과정으로 바꾼다. -> 단위근 검정 통계..
2018.03.25 -
비정상 자기회귀 이동평균 과정
비정상 시계열의 특징시계열의 수준이 시간대에 따라 다름시계열이 추세글 갖음( +, - )시계열이 계절성을 띔시게열의 분산이 시간대에 따라 변함 비정상결정적 추세(deterministic trend)추세가 결정적이고 동시에 영원히 지속된다면, 결정적 추세결정적 추세 갖고 분산 달라지는 형태는 그림으로 판단 가능확률적 추세(stochastic trend)강한 양의 상관관계로 인한 추세가 있는 것 처럼 보임경제, 경영 자료에 추세때문에 비정상 많음확률적 추세의 경우 그림만으로 판단(x) -> SACF 매우 느리게 감소하는 경향이 있다. 비정상 처리 순서분산 일정하게추세, 계절성 불규칙성 처리하기 # 분산이 일정하지 않은 경우-> 일정하게 로그변환 해준다.-> 해석이 어려워지는 단점이 있다. # 수준이 일정하지..
2018.03.20