목록머신러닝 (6)
데이터분석 공부하기
-머신러닝 완벽가이드- [분류; Classification] -지도학습의 대표적인 유형으로 레이블값(결정 값, 클레스 값)을 ML알고리즘으로 학습해 모델 생성 -> 미지의 레이블 값 예측 -다양한 ML알고리즘으로 구현가능 : 나이브 베이즈, 로지스틱 회귀,결정 트리, SVM, 최소 근접, 신경망, 앙상블 1. 결정트리 (Decision Tree): -트리(tree) 기반으로 if/else를 자동으로 찾아내 예측을 위한 규칙을 만드는 알고리즘(스무고개와 유사) -구성 : 규칙 노드(Decision Node: 규칙 조건), 리프 노드(Leaf Node: 결정된 class 값), 서브 트리(Sub Tree: 새 규칙 조건마다 생성) -특징 : -장점: 1) 쉽고/직관, 2)시각화 표현 가능(graphvis),..
머신러닝의 개념: -어플리케이션을 수정하지 않고 데이터를 기반으로 패턴을 하긋ㅂ하고 결과를 에측하는 알고리즘 기법 -복잡한 조건/규칙, 데이터 분석(예측 분석), 개발 복잡도(영상, 음석, 자연어, 데이터마이닝 등)에 활용 1) 머신러닝의 종류: 지도학습(분류, 회귀, 추천 시스템, 시각/음석감지/인지, 텍스트분석/NLP); 비지도학습(군집, 차원축소, 강화학습) 2) ML의 단점- 데이터에 매우 의존적(Garbage In, Garbage Out); 데이터 이해, 가공, 처리, 추출이 알고리즘/모델보다 더 중요 3) Python vs R: -R: 통계전용 프로그램 언어; 전통적 통계 및 마이닝 패키지(SPSS, SAS, MATLAB)의 고비용 개선을 위해 만들어짐 -Python: 다양한 영역에서 사용되는..
성능 평가 지표(Evaluation Metric) : -회귀 : 실제값과 예측값의 오차 평균값(1)절대값을 씌운 오차 평균, 2) 제롭 값에 루트를 씌운 평균 오차) -분류: 정확도(Accuracy), 오차행렬(Confusion Matrix), 정밀도(Precision), 재현율(Recall), F1 스코어, ROC AUC -분류의 결정 클래스 값의 종류 : 이진 분류(긍정/부정), 멀티 분류 -상위 분류지표는 모든 분류에 적용되지만, 특히 이진 분류에서 매우 중요하게 강조됨 [분류의 평가 지표] 1. 정확도(accuracy_score())= (예측결과가 동일한 데이터 건수)/ (전체 예측 데이터 건수) -분균형한 레이블 값 분포에 활용하면 안됨. ex) 타이타닉 생존자 예측에서 단순 성별로만 생존자로 ..
1. 사이킷런이란(scikit-learn): -파이썬 머신러닝 라이브러리 중 가장 많이 사용; 다양한 알고리즘과 개발을 위한 편리한 프래임워크/API제공 2. 사이킷런 기반 프레임워크 익히기 -지도학습 estimator : 지도학습의 모든 알고리즘을 구현한 클래스를 통칭 (ex. Classifier, Regressor); fit(), predict() 내부 구현 fit(): 훈련데이터로 기계학습 predict(): 예측 -비지도학습 & 피처 추출 fit(): 입력 데이터의 형태에 맞춰 데이터를 변화한기 위한 사전 구조를 맞추는 작업 transform() : 실제 작업 진행 fit_transform() 3. 데이터 전처리(p.118) 1. 처리할 데이터 : 1) 결손값(Null, NaN) : 대체, 드롭 ..
[머신러닝 프로젝트 가이드/체크리스트] Define problem & Draw big picture Data Collection EDA Preprocessing : 데이터의 내제 패턴을 ML알고리즘에 잘 드러나도록 데이터 준비 Model Selection : 여러 모델을 시험 -> 가장 좋은 몇 개 선택 모델 튜닝, 최적 솔루션 생성 솔루션 출시 시스템 론칭, 모니터링, 유지 보수 [실제 데이터로 프로젝트 수행해보기] -캘리포니아 인구조사 데이터를 사용해 주택 가격 모델 생성 -데이터 : 블록 그룹마다 인구, median 소득, median 주택 가격 등 포함 -> 새로운 데이터(블록)의 median 주택 가격 예측 1. 문제 정의 : 1) Big Picture : "비즈니스의 목적이 무엇인가?", "현..
머신러닝 : 머신러닝은 데이터에서부터 '학습'하도록 컴퓨터를 프로그래밍하는 과학(or 예술) 연구 분야. -traning set : 시스템이 학습하는 데 사용하는 샘플 -traning instance: 각 훈련 데이터 -accuracy : 성능 측정 (직접 정의, ex> 스팸 필터의 성능 측정 : 정확히 분류된 메일의 비율) 왜 머신러닝을 사용하는가? -기존 솔루션으로 많은 수동 조정/규칙이 필요할 경우 -전통적이 방식으로는 해결 방법이 없는 복잡한 문제 -유동적인 환경 (새 데이터 적응) -복잡한 문제와 대량의 데이터에서 통찰 찾기 *Data Mining : ML기술을 적용하여 대용량의 데이터를 분석하여 패턴을 발견하는 것. (ML 알고리즘이 학습한 것을 배우는 것) 머신러닝 시스템의 종류(NOT mu..