본문 바로가기

프로그래밍/AI:ML:DL

(25)
[번역|SO] 시계열데이터의 이상탐지를 위한 패키지 link : https://datascience.stackexchange.com/questions/32126/looking-for-good-package-for-anomaly-detection-in-time-series 질문 : 시계열데이터에서 이상탐지를 위한 좋은 패키지를 찾는다. 답변1: (2018년 10월) pyod 라는 파이썬 패키지가 있다. ( Pyod ) 이 패키지에는 다음과 같은 알고리즘이 들어있다. 선형모델 (PCA, vMCD, vOne-Class, SVM) 인접성기반 모델 (LOF, CBLOF, HBOS, KNN, AverageKNN, MedianKNN) 확률모델 (ABOD, FastABOD) 앙상블, 조합 프레임워크 (IsolationForest, FeatureBagging) 신경망, ..
[ML|번역] 랜덤포레스트의 기본 변수중요도에 주의하라 랜덤포레스트의 기본 변수중요도에 주의하라 / Beware Default Random Forest Importances link : https://explained.ai/rf-importance/ 요약 scikit-learn 랜덤포레스트의 변수중요도( feature importance) 또는 R의 기본 랜덤포레스트 변수중요도는 편향되어 있다. 파이썬에서 믿을만한 결과를 얻으려면, rfpimp 패키지에서 제공하는 퍼뮤테이션 중요도 (permutation importance)를 사용하라. R에서는 랜덤포레스트 생성시에 importance=T 를 사용하고, importance() 함수에서 type=1 인자를 주라. 더불어, 변수중요도는 모델이 적절한 하이퍼패러미터로 훈련되었을 때에만 믿을 수 있다. 이후 상세한..
[ML|SO번역] 머신러닝에서 Out-of-Fold (OOF) 란? src : https://stackoverflow.com/a/52396238/100093 (K-Fold 크로스 밸리데이션에서) 매 폴드마다 90%의 데이터로 훈련을 하고, 나머지 10%의 데이터에 대해서는 예측을 합니다. 이 10%로 에러 메트릭(예를 들어 RMSE라고 합시다.)을 계산합니다. 이 과정을 통해 결국 남는 것은, 10차례의 각 폴드마다 RMSE 값 하나와 각 10% 데이터셋에 대한 예측치입니다. 이 결과물을 2가지 방법으로 처리할 수 있습니다. 10개의 RMSE 값의 평균과 표준편자를 확인합니다. K폴드는 랜덤으로 데이터를 나누므로, 각 폴드에서 나온 에러값(RMSE)들은 서로 비슷해야 합니다. 만약, 값들이 서로 비슷하지 않다면, 이 때의 모델(피쳐와 하이퍼패러미터들)로는 테스트셋에서 안..
추천시스템 메모 2 1. Recommender Systems - Andrew Ng 1.1. Recommender Systems | Problem Formulation 1.2. Recommender Systems | Content Based Recommendations 알려진 특징들(로맨스, 액션, ...)이 있고, 각 영화에 대해 이 특징들에 대한 점수를 매겨서, 영화를 수치의 튜플로 표현할 수 있다. 사용자들이 이미 매긴 영화들 점수를 가지고, 각 사용자들이 영화의 특징(feature)에 대해 얼마나 선호하는지를 학습하여, 아직 점수를 매기지 않은 영화에 대한 알려진 특징점수와 사용자의 추측된 선호도를 연산하여, 그 영화에 대한 점수를 예측한다. For each user j, learn a parameter theta(j..
추천시스템 메모 추천시스템 Recommend System DEVIEW 2017 : 인공지능 추천 시스템 AiRS 개발기 : 모델링과 시스템 https://tv.naver.com/v/2297146 : 발표영상. https://www.slideshare.net/deview/airs-80886207 : 발표슬라이드. 최재호@네이버나의 필기 추천모델의 종류 stats based collaborative filtering deep learning 통계기반 개인화보다, 글로벌 추천 (10대남성 등등) Chi-Squared Cross-Entropy H(p,q) = - Sum p(x) log q(x) KL Divergence : 에 대한 설명 있는데 이해 못함. 협력필터 (collaborative filtering) - 가장 대표적인..
RMSLE 의 의미는 무엇일까? 아래내용은 개인적으로 의미를 생각해 본 것입니다. (정식으로 통계학 공부하면서 배운 내용이 아니에요.) 개념상 틀린 부분, 부정확한 부분이 있다면, 지적바랍니다. RMSLE 는 Root Mean Square Logarithmic Error 이고, 그 식은 다음과 같다. $ \sqrt{ \frac{1}{n} \sum_{i=1}^{n}{ (\log( p_i + 1) - \log(a_i + 1))^2} } $ $ = \sqrt{ \frac{1}{n} \sum_{i=1}^{n}{ (\log \frac {p_i + 1} {a_i + 1} )^2} } $ 이 값의 의미는 무엇일까? 이 의미를 이해하려면, 우선 RMSE, Root Mean Square Error 를 이해할 필요가 있다. RMSE 는 예측값과 실제값의..
따릉이 신규사용자 시계열 분석 ( 2018년 6월 70대이상 사용자수의 이상치)
[Colab] TPU 사용 훈련시 에러. ValueError: Operation 'tpu_140644740262992/VarIsInitializedOp' has been marked as not fetchable. google colab 을 이용하면, 비싼 GPU 머신을 구입하지 않고, 구글이 너그럽게 제공해 주는 GPU와 TPU를 이용하여 간단한 훈련을 할 수 있다. 간단한 이미지분류모델을 케라스로 작성하여, colab 에서 실행해 보았는데, 노트북에서 실행한다는 제약이 있지만, 아주 만족스러웠다. GPU로 실행하는 것은 코드 변경도 필요없이 실행환경 런타임에서 GPU만 선택하면 됐다. 하지만 실행환경을 TPU로 선택하는 것만으로 TPU를 활용할 수는 없었다. TPU를 사용하기 위해선 코드를 조금 변경하여야 한다. (자세한 내용을 변경될 수도 있고, colab에서 제공하는 예제 노트북에 너무 잘 나와있으므로 생략.) 환경변수를 확인하고, 만들어진 케라스모델을 keras_to_tpu_model 함수를 이용하여 tp..