목록머신러닝 (89)
꿈 많은 사람의 이야기
포스팅 개요 이번 포스팅은 머신러닝과 딥러닝에서 많이 사용하는 데이터 이상치 탐지(outlier detection)에 대해서 작성합니다. 또한, 지난 포스팅인 캐글의 신용카드 사기 탐지 대회 데이터셋(kaggle credit card fraud detection data)을 이용하며 신용카드 사기 탐지 3편입니다. 참조한 자료는 kaggle의 커널(https://www.kaggle.com/janiobachmann/credit-fraud-dealing-with-imbalanced-datasets) 입니다. 그 외의 참조 자료는 구글링 자료입니다. 코드는 아래 github에 존재합니다. https://github.com/lsjsj92/machine_learning_basic lsjsj92/machine_le..
포스팅 주제 더보기 이번 포스팅은 지난 포스팅에 이어서 캐글의 신용카드 사기 탐지(kaggle credit card fraud detection) 데이터를 활용합니다. 또한, kaggle credit card fraud detection의 커널 중 https://www.kaggle.com/janiobachmann/credit-fraud-dealing-with-imbalanced-datasets 커널을 참조하여 공부하고 정리하였습니다. 이번 글은 지난 글에서 진행한 신용카드 사기 탐지 데이터의 데이터 스케일(data scale)을 변경시켜보려고 합니다. 그리고 이렇게 데이터 스케일이 변경되었을 때 머신러닝 모델 성능이 어떻게 변화되는지 살펴보겠습니다. 지난 포스팅에서는 데이터 원본을 그대로 사용하여 단순히..
이번 포스팅은 머신러닝으로 신용카드 사기를 탐지하는 모델을 만들어보려고 합니다. 해당 포스팅의 데이터는 kaggle에서 제공해준 kaggle credit card fraud를 사용했습니다. 또한, 한 커널을 필사하면서 진행하며 참고했는데요. 커널은 아래와 같습니다. (https://www.kaggle.com/janiobachmann/credit-fraud-dealing-with-imbalanced-datasets) 머신러닝의 기본적인 내용을 공부하면서 이것을 어떻게 적용할 수 있을까?를 정말 많이 고민하게 됩니다. 단순히 캐글에서 제공해주는 타이타닉으로 해본다? 좀 뭔가 현설직이지는 않습니다. 개인적으로는 이 신용카드 사기 탐지가 머신러닝 기본기를 다지기도 좋고 재밌기도 하더군요! 그래서 머신러닝으로 신..
지난 포스팅까지 머신러닝 앙상블에 대해서 계속 올리고 있습니다. 머신러닝 앙상블(machine learning ensemble)에서는 대표적으로 배깅(bagging)과 부스팅(boosting)이 있습니다. 그 중 앙상블 부스팅(ensemble boosting)에 대해서 지속적으로 보고 있습니다. 머신러닝 부스팅 알고리즘은 틀린 부분에 가중치를 더하면서 진행하는 알고리즘인데요. Gradient Boosting Machine(GBM)은 그 가중치를 경사하강법(gradint boosting)으로 진행하였습니다. 그리고 지난 포스팅에서 소개한 ensemble xgboost는 기존의 gradient boosting 알고리즘의 단점을 조금이라도 보완한 알고리즘이라고 했습니다. 그렇게 강력한 성능을 제공하는 xgbo..
머신러닝에서는 앙상블(ensemble) 모델을 빼놓을 수가 없습니다. 이 앙상블에는 배깅(bagging)과 부스팅(boosting) 그리고 보팅(voting) 방법이 있습니다. 크게 보면 말이죠 이 중 ensemble bagging에 대해서는 지난 포스팅에서 random forest(랜덤 포레스트)로 설명을 했습니다. 그리고 ensemble boosting 또한 지난 포스팅에서 Gradient Boosting Machine와 Adaboost를 예시로 들면서 포스팅을 올렸습니다. 하지만 이런 GBM에는 문제점이 있습니다. Gradient Boosting의 문제점 머신러닝에서 앙상블 모델 중 부스팅(boosting)은 정말 강력합니다. 하지만 단점이 없는 것은 아닙니다. 특히 gradient boosting..
xgboost는 앙상블(ensemble) 부스팅(boosting)에서 많이 사용하는 알고리즘 중 하나입니다. 이 xgboost는 파이썬 사이킷런(python scikit learn)에서 그냥 제공되지는 않는데요. 즉, 따로 설치를 해주어야 합니다. 사이킷런을 설치했다고해서 xgboost가 install되어 있지 않습니다. 그래서 xgboost를 따로 설치해주어야 합니다. 이번 포스팅은 윈도우 10 환경에서 앙상블 xgboost(ensemble xgboost)를 설치해보는 포스팅입니다. 1. 파이썬 아나콘다를 이용한 xgboost 설치 (python anaconda3 xgboost install) 이 방법은 굉장히 간단합니다. anaconda3가 제공해주는 강력한 패키징 기능으로 xgboost를 간단하게 ..
최근 머신러닝 기초반 스터디를 진행하면서 느끼는 점이 있습니다. 또한, 이메일로 질문 받는 것중 적지 않는 질문이기도 합니다. 그 질문은 아래와 같습니다. 왜 머신러닝(machine learning), 딥러닝(deep learning)에서는 데이터를 나누나요? 도대체 X, y는 뭐고 feature는 뭐죠? X_train, X_test, y_train, y_test는 뭐죠? 정말 원초적인 질문이지만, 당연히 궁금해 할 질문입니다. data science가 이제 인기를 끌면서 많은 분들이 Python을 배우시고 Python을 활용한 데이터 분석과 머신러닝, 딥러닝을 하고 있습니다. 하지만, 너무 급하게 너무 빠르게 배우느라 기본적인 것들을 놓치는 것 같습니다. 그래서 이러한 질문이 계속 오기 때문에 머신러닝..
이전 포스팅에서 머신러닝의 앙상블 그 중 부스팅(ensemble boosting)에 대해서 포스팅을 했었습니다. https://lsjsj92.tistory.com/543 머신러닝 앙상블 부스팅이란? - ensemble boosting 머신러닝에서는 앙상블(ensemble)을 정말 많이 사용합니다. 그 효과가 매우매우 강력하기 때문인데요. 이 앙상블에는 배깅(bagging), 부스팅(boosting) 등의 종류가 나뉘어져 있습니다. 지난 포스팅 때는 ensemble.. lsjsj92.tistory.com 이번 글은 앙상블 부스팅(ensemble boosting) 중 Adaboost와 Gradient Boosting에 대해서 알아보려고 합니다. ensemble boosting - Adaboost Adaboo..
머신러닝에서는 앙상블(ensemble)을 정말 많이 사용합니다. 그 효과가 매우매우 강력하기 때문인데요. 이 앙상블에는 배깅(bagging), 부스팅(boosting) 등의 종류가 나뉘어져 있습니다. 지난 포스팅 때는 ensemble bagging에 대해서 설명했었고 random forest에 대해서도 설명했습니다. https://lsjsj92.tistory.com/542 머신러닝 bagging 앙상블 랜덤 포레스트(random forest)란? 머신러닝 앙상블에는 배깅(bagging), 보팅(voting), 부스팅(boosting)이 있습니다. 그 중 앙상블 bagging에 속한 랜덤 포레스트를 이번 포스팅에서 소개할까합니다. 이 random forest는 빠른 속도와 높은 예측 성.. lsjsj92...
머신러닝 앙상블에는 배깅(bagging), 보팅(voting), 부스팅(boosting)이 있습니다. 그 중 앙상블 bagging에 속한 랜덤 포레스트를 이번 포스팅에서 소개할까합니다. 이 random forest는 빠른 속도와 높은 예측 성능을 보이는 알고리즘입니다. 본문에 나와있는 코드는 아래 github에서 확인할 수 있습니다 github.com/lsjsj92/machine_learning_basic lsjsj92/machine_learning_basic Repo for everyone who wants a machine learning basic - lsjsj92/machine_learning_basic github.com 랜덤 포레스트(random forest)란? 랜덤 포레스트(random f..