목록머신러닝 (38)
안 쓰던 블로그
인터넷 영화 데이터베이스로부터 생성된 양극단의 리뷰 50,000개로 이루어진 IMDB 데이터셋을 사용하여 이진 분류를 실습해 보겠다. 이 데이터셋은 훈련 데이터 25,000개와 테스트 데이터 25,000개로 나뉘어 있고 각각 50%는 부정, 50%는 긍정 리뷰로 구성되어 있다. MNIST 데이터셋처럼 IMDB 데이터셋도 케라스에 포함되어 있다. 또한 전처리되어 있어 각 리뷰(단어 시퀀스)가 숫자 시퀀스로 되어 있다. 각 숫자는 사전에 있는 고유한 단어를 나타낸다. 케라스 버전 2.4.3와 코랩을 이용하여 실습하였고, 케라스 창시자에게 배우는 딥러닝 책을 참고하였다. 데이터셋 준비 from keras.datasets import imdb (train_data, train_labels), (test_data..
타이타닉 생존자 예측 with 결정 트리 foxtrotin.tistory.com/401 사이킷런 - 타이타닉 생존자 ML 예측 구현하기 www.kaggle.com/c/titanic Titanic: Machine Learning from Disaster Start here! Predict survival on the Titanic and get familiar with ML basics www.kaggle.com 캐글에서 머신러닝 입문자에게 제공하는 타이.. foxtrotin.tistory.com 이 글에서 했던 과정을 살짝 축소시키고, 결정 트리만 사용하여 제출한 노트북을 공유합니다 https://www.kaggle.com/yuujinleee/titanic-with-decisiontreeclassifie..
문제 www.kaggle.com/c/santander-customer-satisfaction Santander Customer Satisfaction Which customers are happy customers? www.kaggle.com 고객 만족도는 기업에게 중요한 수치이다. 불만족스러운 고객이 있다면 그런 불만족한 점을 해결하도록 노력해야 한다. 산탄데르 은행은 불만족스러운 고객을 초기에 식별할 수 있도록 도와달라고 요청했다. 너무 늦기 전에 고객의 불만족을 개선하기 위한 사전 조치를 취할 수 있도록 해야 한다. 수백 개의 익명 피처가 주어질 때 고객이 은행 업무 경험에 만족하는지 또는 불만족하는지 예측한다. 성능 평가는 area under the ROC curve 로 한다. 풀이-xgboost..
Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source conda install -c anaconda py-xgboost 로 설치했는데 뜨는 문제 방법 1. 업데이트 후 재설치 conda update --all 방법 2. pip으로 설치 pip install xgboost pip으로 설치해도 정상 동작했다
XGBoost eXtra Gradient Boost의 약자 GBM대비 빠른 수행 시간(CPU 병렬 처리, GPU 지원) 다양한 성능 향상-규제, Tree Pruning 다양한 편의 기능-조기 중단, 자체 내장 교차 검증, 결손값 자체 처리 XGBoost 파이썬 래퍼(Wrapper)와 사이킷런 래퍼가 있는데, 둘이 좀 차이가 있다 학습 API 함수(train()이냐 XGBClassifier.fit()이냐)나 학습/테스트 데이터 세트(파이썬 객체 별도 생성, 사이킷런 넘파이나 판다스 이용) 등에서.. 아나콘다 프롬포트-> 명령어 conda install -c anaconda py-xgboost 로 설치 LightGBM XGBoost에서 단점 개선-더 빠른 학습, 적은 메모리 사용량 -리프 중심 트리 분할 방..
부스팅Boosting 여러 개의 약한 학습기weak learner를 순차적으로 학습, 예측하면서 잘못 예측한 데이터에 가중치 부여를 통해 오류를 개선해 나가는 학습 방식 대표적으로 아래와 같은 알고리즘들이 있다 -AdaBoost(Adaptive boosting) -Gradient Booting Machine(GBM) -XGBoost -LightGBM -CatBoost AdaBoost 1. 피처 데이터 셋에서 +와 -를 기준의 왼쪽 오른쪽으로 나누려고 한다 2. 처음에 왼쪽에 두 +를 잡을 수 있게 분류 기준을 나눔. 그랬더니 오른쪽에 +가 세 개가 빠져나오게 되었다(오류) 3. 다음 라운드에서 전에 오류였던 +세 개에 가중치를 주어 다시 기준을 나누었더니 +세 개에 +두 개까지 전부 잡아서 기준을 잡음...
배깅Bagging -Bootstrap Aggregating의 약자 1) 동일한 알고리즘을 사용하는 일정 수의 분류기를 생성 2) 각각의 분류기에 부트스트래핑Bootstrapping 분할 방식으로 생성된 샘플데이터를 학습 3) 최종적으로 각각의 결과를 보팅을 통해 예측 결정한다 랜덤 포레스트 -배깅의 대표적인 알고리즘은 랜덤 포레스트Random Forest -여러 개의 결정 트리 분류기가 전체 데이터에서 배깅 방식으로 각자의 데이터를 샘플링하여 개별적으로 학습 수행, 최종적으로 모든 분류기가 보팅을 통해 예측 결정을 한다 -개별 분류기의 기반 알고리즘은 결정 트리, 개별 트리가 학습하는 데이터 세트는 부트스트래핑 분할 방식이 적용된 데이터 세트 -부트스트래핑 분할 방식: 전체 데이터에서 여러 개의 데이터 ..