반응형

Machine Learning 75

[Machine Learning] Pattern Recognition (패턴인식)

Pattern Recognition (패턴 인식) 컴퓨터가 어떤 대상을 인식하는 문제를 다루는 인지과학과 인공지능의 한 분야 모든 대상의 특징들을 가지고 어떤 대상임을 파악하는 것 인지과학(Cognitive Science) 지능과 인식문제를 다루는 포괄적인 과학 분야 인공지능(Artificial Intelligence) 인간의 학습능력과 추론능력을 인공적으로 모델링하여 외부 대상을 지각하는 능력을 컴퓨터로 구현하는 기술 패턴 인식 분야 문자 인식 일반적으로 스캐터로 받아들인 텍스트 이미지를 컴퓨터에서 편집 가능한 코드화된 문자로 변환 자동 우편물 분류기, 필기체 문자 인식, 수표 및 지폐 인식, 차량 번호판 인식 생체 인식과 인간 행동 패턴 분석 음성인식, 지문, 홍채, 얼굴 인식, DNA 매핑, 보행 ..

[Supervised Learning][Ensemble][Boosting] XGBoost (eXtream Gradient Boosting)

XGBoost(eXtream Gradient Boosting) Gradient Boosting 알고리즘을 분산환경에서도 실행할 수 있도록 구현해놓은 라이브러리 Gradient Boosting 알고리즘에 overfitting 방지를 위한 기법이 추가된 알고리즘 Regression, Classification 문제를 모두 지원하며, 성능과 자원 효율이 좋아서, 인기 있는 알고리즘 중 하나 Tree Boosting 기법을 활용한 모델 tree boosting 방식에 경사 하강법을 통해 최적화하는 방법 연산량을 줄이기 위해 의사결정 트리를 구성할 때 병렬 처리를 사용해 빠른 시간에 학습 가능 XGBoost 장점과 단점 장점 GBM (Gradient Boosting Machine) 대비 빠른 수행시간 병렬 처..

[Supervised Learning][Ensemble][Bagging] Extra Tree / Extremely Randomized Tree

Extra Tree(엑스트라 트리) / Extremely Randomized Tree (익스트림 랜덤 트리) Random Forest bootstrap 샘플과 랜덤한 후보 특성들을 사용해 여러 개의 결정 트리(decision tree)을 앙상블 훈련 데이터에 overfitting을 막아주고 모델의 일반화 성능이 항상 단일 트리보다 높다 Random Forest와 매우 비슷하게 동작하는데, 기본적으로 100개의 decision tree를 훈련시킴 전체 특성 중에 일부 특성을 랜덤하게 선택하여 노드를 분할하기 위해 사용 Random Forest와 달리 bootstrap 샘플(중복된 훈련 샘플)을 사용하지 않는다 즉, 각 결정 트리를 만들어낼 때 전체 훈련 세트를 사용하는 것으로, 이는 분할할 때 가장 좋은 ..

[Supervised Learning][Ensemble][Boosting] LGBM (Light Gradient Boosting Machine)

LGBM (Light Gradient Boosting Machine) Light는 "가볍다"라는 의미로 빠른 속도를 나타낸다는 장점이 있다 트리 기반의 학습 알고리즘인 gradient boosting 방식의 프레임워크 performance 및 scalability를 목적으로 마이크로소프트사에서 개발 다른 tree 알고리즘이 tree을 수평으로 확장(level-wise)하는 반면 LGBM은 tree를 수직으로 확장(leaf-wise) Level-wise tree growth (수평 확장, 균형 트리분할) 최대한 균형 잡힌 트리를 유지하며 분할하여 트리의 깊이를 최소화하여 overfitting에 강한 구조이지만 균형을 맞추기 위한 시간 필요 Leaf-wise tree growth (수직 확장, 리프중심 트리..

[Supervised Learning][Regression] Regression Tree(회귀 트리)

[Supervised Learning] Decision Tree [Supervised Learning] Decision Tree Decision Tree (결정 트리) 분류와 회귀 문제에 널리 사용하는 모델 결정에 다다르기 위해 예/아니오 질문을 이어 나가면서 학습 결정 트리의 학습은 정답에 가장 빨리 도달하는 예/아니오 질문(테스 yumdata.tistory.com Regression Tree 회귀 함수를 기반으로 하지 않고 결정 트리와 같이 트리를 기반으로 한 회귀 방식 모델 회귀를 위한 트리를 생성하고 이를 기반으로 회귀 예측을 하는 것 vs Classification Tree 리프 노드에서 예측 결정값을 만드는 과정이 다름 분류 트리가 특정 클래스 레이블을 결정하는 것과는 달리 회귀 트리는 리프 ..

[Machine Learning] Machine Learning Algorithms

Machine Learning Algorithms Supervised Learning - Regression Linear Regression [Supervised Learning][Regression] Linear Regression 알고리즘 장점 단점 Linear Regression 수집된 데이터를 통해 새롭게 관측된 데이터의 예측값(수치값)을 구할 수 있다 데이터 특징들이 선형 관계에 있다는 가설하에 작동함으로써 데이터 특징이 가설과 다를 경우 정확도가 낮아진다 Decision Tree Regression [Supervised Learning][Regression] Regression Tree(회귀 트리) 알고리즘 장점 단점 Decision Tree 모델의 추론 과정을 시각화하기 쉽다 데이터에서 중요..

[Supervised Learning][Ensemble][Boosting] Gradient Boosting

Boosting 동일한 알고리즘의 분류기를 순차적으로 학습해서 여러 개의 분류기를 만든 후, 테스트할 때 가중 투표를 통해 예측값을 결정 분류기 A, B, C가 있고, 각각이 0.3정도의 accuracy를 보여준다면 A, B, C를 결합하여 더 높은 정확도, 예를 들어 0.7 정확도를 얻는 게 앙상블 알고리즘의 기본 원리 가중치를 활용하여 약 분류기를 강 분류기로 만드는 방법 처음 모델이 예측을 하면 그 예측 결과에 따라 데이터에 가중치가 부여되고, 부여된 가중치가 다음 모델에 영향을 줌 잘못 분류된 데이터에 집중하여 새로운 분류 규칙을 만드는 단계 반복 Gradient Boosting(GBM, Gradient Boosting Machine) 얕은 깊이의 트리를 사용하여 이전 트리의 오차를 보완하는 방식..

[Supervised Learning][Ensemble][Bagging] Random Forest

Bagging(Bootstrap Aggregation) 여러 개의 학습 알고리즘, 모델을 통해 각각 결과를 예측하고 모든 결과를 동등하게 보고 취합해서 결과를 얻는 방식 한 가지 분류 모델을 여러 개 만들어서 서로 다른 학습 데이터로 학습시킨 후(bootstrap), 동일한 테스트 데이터에 대한 서로 다른 예측값들을 투표를 통해(aggregation) 가장 높은 예측값으로 최종 결론을 내리는 앙상블 기법 기본 요소로 결정 트리 사용 샘플을 여러 번 뽑아(Bootstrap) 각 모델을 학습시켜 결과물을 집계(Aggregration) 하는 방법 무작위로 훈련 데이터 셋을 잘게 나눈 후 나누어진 훈련 데이터 셋을 여러 개의 모델에 할당하여 학습 중복을 허용하며 훈련 데이터 셋을 나누는데 통계학에서는 이 방법을..

Machine Learning Valuation Metrics (머신러닝 모델 성능 평가)

Machine Learning Valuation Metrics Loss Function (손실함수) Loss Function (손실 함수) 손실 함수(Loss Function)는 지도학습(Supervised Learning) 시 알고리즘이 예측한 값과 실제 정답의 차이를 비교하기 위한 함수 즉, '학습 중에 알고리즘이 얼마나 잘못 예측하는 정도'를 확인하기 위한 함수로써 최적화(Optimization)를 위해 최소화하는 것이 목적인 함수 손실 함수를 목적 함수(Objective Function), 비용 함수(Cost Function), 에너지 함수(Energy Function) 등으로 다양하게 부른다. 손실 함수를 통해 모델 학습 중에 손실(loss)이 커질수록 학습이 잘 안 되고 있다고 해석할 수 있고..

[Unsupervised Learning] [Clustering] Agglomerative Clustering(병합 군집)

Agglomerative Clustering(병합 군집) 시작할 때 각 포인트를 하나의 클러스터로 지정하고, 종료 조건을 만족할 때까지 가장 비슷한 두 클러스터를 합침 종료 조건: 클러스터 갯수, 지정된 갯수의 클러스터가 남을 때까지 비슷한 클러스터를 합침 Hierarchical Clustering(계층적 군집) 계층적 트리 모형을 이용하여 개별 데이터 포인트들을 순차적, 계층적으로 유사한 클러스터로 통합하여 군집화를 수행하는 알고리즘 Agglomerative Clustering(병합 군집) 개개의 포인트를 순차적으로 병합하는 상향식 군집 Divisive Clustering(분할 군집) 전체를 하나의 클러스터로 하여 그것을 분할해 나가는 하향식 군집 이미 병합된 클러스터와 합쳐야 되는 경우 linkage..

[Unsupervised Learning] Clustering

Clustering 비슷한 샘플을 구별해 하나의 cluster 또는 비슷한 샘플의 그룹으로 할당하는 작업 Clustering 활용 고객 분류 고객을 구매 이력이나 웹사이트 내 행동을 기반으로 분류 고객 맞춤 제품 추천이나 마케팅 전략을 다르게 적용하여 추천 시스템(recommender system)을 만들 수 있다 데이터 분석 새로운 데이터셋을 분석할 때 clustering 알고리즘을 실행하고 각 클러스터를 따로 분석하면 도움이 된다. 차원 축소 기법 한 데이터셋에 clustering 알고리즘을 적용하면 각 클러스터에 대한 샘플의 친화성(affinity)을 측정할 수 있다. * 친화성은 샘플리 클러스터에 얼마나 잘 맞는지를 측정 각 샘플의 특성 벡터 x는 클러스터 친화성의 벡터로 바꿀 수 있다. k개의 ..

[Unsupervised Leaerning][Clustering] HDBSCAN(Hierarchical DBSCAN)

HDBSCAN(Hierarchical Density-Based Spatial Clustering) https://hdbscan.readthedocs.io/en/latest/index.html The hdbscan Clustering Library — hdbscan 0.8.1 documentation © Copyright 2016, Leland McInnes, John Healy, Steve Astels Revision 109797c7. hdbscan.readthedocs.io DBSCAN DBSCAN은 하이퍼파라미터로 최소 클러스터 사이즈(MinPts)와 밀도 거리인 threshold epsilon(ε)을 지정해야 한다. DBSCAN의 결과는 모델의 hyper-parameter인 ε과 MinPts에 따라..

[Unsupervised Learning][Clustering] Mean Shift (평균 이동)

Mean Shift (평균 이동) K-means와 유사하지만 K-means는 중심에 소속된 데이터의 평균 거리 중심으로 이동하는데 반해, Mean Shift는 중심을 데이터가 모여있는 밀도가 가장 높은 곳으로 이동시킴 평균 이동 알고리즘은 특정 대역폭을 가지고 최초의 확률 밀도 중심 내에서 데이터의 확률 밀도 중심이 더 높은 곳으로 중심을 이동 평균 이동은 데이터의 분포도를 이용해 군집 중심점을 찾음 확률 밀도 함수(PDF, Probability Density Function)를 이용, 가장 집중적으로 데이터가 모여 있어 확률 밀도 함수가 피크인 점을 군집 중심점으로 선정 KDE(Kernel Density Estimation)로 확률 밀도 함수를 찾음 KDE를 이용하여 데이터 포인트들이 데이터 분포가 높..

[Machine Learning][Regression Metrics] R-squared(결정계수)

Regression Metrics R (상관계수) 독립변수와 종속변수간의 선형적인 관계를 나타내는 척도 상관계수는 -1부터 1까지의 값을 갖는다. 1에 가까울 수록 양의 상관관계를 의미하고, -1에 가까울수록 음의 상관관계를 의미한다. 반대로 0에 가까울수록 두 변수 간에 선형적인 관계가 없다고 볼 수 있다. 상관계수는 두 변수 간에 단순 관련성이 아닌 선형적인 관계를 나타내기 때문에 상관계수 값이 0에 가까운 값이더라도 두 변수 간에 비선형적인 관계가 있을 수 있다. R-squared (Coefficient of Determination, 결정계수) 회귀분석에서 나오는 개념으로 모형(즉 독립변수들)이 종속변수를 얼마나 설명하냐를 보여주는 계수 회귀직선의 적합도(goodness-of-fit)를 평가하거나..

[Machine Learning][Regression Loss Function] MAE, MSE, RMSE MSLE, RMSLE

Regression Metrics / Regression Loss Function 회귀 타입에 사용되는 손실 함수는 대표적으로 평균 오차 계산법이 있음 평균 오차를 계산하는 방식(공식)에 따라 MAE, MSE, RMSE 등으로 구분 MAE (Mean Absolute Error, 평균 절대 오차) L1 Loss로도 불린다. 예측한 값과 실제 값의 차이에 절대값을 취해 모두 더해주고 나서 계산한 샘플 갯수(n)으로 나눠서 구한다. MAE의 스케일(scale)은 예측 대상인 타켓 변수와 같은 스케일이기 때문에 값이 내포하는 의미를 직관적으로 이해하기에 좋다. 모델의 예측값과 실제값의 차이의 절대값의 평균 예측 결과와 정답 결과가 떨어진 정도의 절대값을 취하기 때문에 가장 직관적으로 알 수 있는 지표. 절대값을..

728x90
반응형