반응형

Machine Learning 23

XGBoost: A Scalable Tree Boosting System

XGBoost: A Scalable Tree Boosting System 1. Introduction Gradient Boosting에 extreme한 요소들을 얹으면 XGBoost가 된다 Scalability를 얻기 위해 두가지 Innovation이 있음 이것은 알고리즘적 그리고 시스템적으로 나눠지는데 알고리즘적으로는 tree boosting , split finding algorithm -> 알고리즘적으로는 regularized gradient boosting 으로 크게 변화한 부분이 없지만 시스템 적으로는 많이 변화함 -> 이 논문에서는 알고리즘 적으로 많이 살펴볼 예정 2. TREE BOOSTING IN A NUTSHELL y햇은 파이에 x를 인풋으로 넣었을 때 나오는 값인데 여기서 파이는(세타)..

Machine Learning 2022.08.16

검증지표 개념 이해하기

- 검증지표 문제해결 검증지표와 알고리즘 검증지표 단계로 나눠서 생각해봐야함 - 1.문제 해결 검증지표 -> 문제를 잘 풀었는지 평가하기 위한 기준 - 입력 : ~무한대 ~ 무한대 범위의 연속형 값 - 출력 : 이론적으론 0 ~ 무한대 범위의 연속형 값 Regression : MSE ,MSPE,RMSLE,MAE,MPE,R^2,adjusted R^2 classification : logloss, crossentropy, roc ,auc ,gini ranking : gain ,lift,mrr,dcg,ndcg NLP Metrics :perplexity,BLEU score 현실문제 : 어떤 메트릭을 써야할지 지표를 만들어야하는 경우가 더 많음 2. 알고리즘 검증지표 -> 어떤 알고리즘이 더 성능이 좋은지 평가하..

Machine Learning 2022.03.29

지니 계수 (Gini Coefficient)

지니 계수 * 어떤값의 분배 상태를 표현하기 위해 로렌츠 곡선을 이용하여 값의 분배 정도를 수치화 하는 방법 -> 보통 경제적 불평등을 계수화 한 것이라 표현 -> 머신러닝에서는 Decision Tree model의 성능 평가를 하는데 사용 Gini index =A/(A+B) 코드 구현의 예시 def gini(list_of_values): sorted_list = sorted(list_of_values) height, area = 0, 0 for value in sorted_list: height += value area += height - value / 2. fair_area = height * len(list_of_values) / 2. return (fair_area - area) / fair_a..

Machine Learning 2021.06.04

Cost sensitve model (cutoff 설정)

위음성 비용: 긍정 클래스를 부정 클래스로 오 분류할 때 발생하는 비용 위양성 비용: 부정 클래스를 긍정 클래스로 오 분류할 때 발생하는 비용 위 두 개의 비용을 다르게 설정하는 모델이 비용 민감 모델로 보통 위음성 비용보다 위양성 비용을 크게 설정 W가 커지면 커질수록 정확도가 떨어짐 부정 클래스가 다수이므로 부정 클래스로 분류했을 때 성능이 나쁘지 않음 W가 커진다는것은 긍정 클래스에 신경 쓰는 것이니까 정확도는 떨어지게 됨 로지스틱 회귀, 나이브베이즈 등의 확률 모델들은 Cut-Off value, C를 조정하는 방식으로 비용 민감 모델 구현 가능 정확한 확률 추정은 불가능 하지만 KNN,NN,Decision tree, ensemble 에도 적용 가능 C= cutoff value로 조정 가능한 대상 ..

Machine Learning 2021.04.01

빈발 패턴 탐색

* 연관 규칙이란 -> 'A가 발생하면 B도 발생하더라' 라는 형태의 규칙으로, 트랜잭션 데이터를 탐색하는 곳에 사용 A : 부모 아이템 집합 B : 자식 아이템 집합 A와 B는 모두 공집합이 아닌 집합이고 둘의 교집합은 공집합을 만족함 * 연관 규칙 탐색이란? -> 거래 데이터에서 의미있는 연관규칙을 효율적으로 탐색하는 작업 * 실제로 wall mart에서 연관규칙으로 매출 향상 ex) * 연관 규칙의 평가 척도 * 지지도에 대한 Apori 원리 * AB가 빈발하지 않다면 ABC , ABD , ABCD 도 빈발하지 않으므로 탐색 할 필요가 없음 * 지지도에 대한 Apriori 원리 : 후보 규칙 생성 * 신뢰도에 대한 Apriori 원리 * 신뢰도에 대한 Apriori 원리 적용 * 구현 가능 모듈 =..

Machine Learning 2021.01.01

계층적 군집화

기본 개념 * 개별 샘플을 군집으로 간주하여. 거리가 가장 가까운 두 군집을 순차적으로 묶는 방식으로 큰 군집을 생성 군집 간 거리 측정 법 1. 최단 연결 법 (가장 가까운 샘플간의 거리를 군집간의 거리로 보는 법) 2. 최장 연결 법 (가장 먼 샘플간의 거리를 군집간의 거리로 보는 법) 3. 평균 연결 법 (전체 거리에 대한 평균 거리를 군집간의 거리로 보는 법) 4. 중심 연결 법 (각 군집에 대해 중심을 구하고 중심간의 거리 계산) 5. 와드 연결법 (c1,c2를 하나의 군집으로 보았을 때의 중심과 각 중심과의 거리를 구하는 방식) -군집끼리 합쳐졌을 때 어떤 효과가 있는지 까지 측정 가능하여 sckit learn 계층 군집화의 default로 많이 쓰임 6. 덴드로그램 -> 샘플 수 가 많으면 ..

Machine Learning 2020.12.28

군집화 (Clustering )

* 군집화 : 하나 이상의 특징을 바탕으로 유사한 샘플을 하나의 그룹으로 묶는 작업 - 군집화의 목적 * 군집화의 필수 개념 - 거리와 유사도는 완벽하게 반대 개념 * 유사도 척도 1. 유클리디안 거리 2. 맨하탄 거리 (리커트 척도란 설문조사 같은 데이터를 말함,ex)매우만족,만족,불 만족 ) 3. 코사인 유사도 4. 매칭유사도 (이진형 데이터만 사용) 5. 자카드 유사도(희소한 이진형 데이터에 자주 사용)

Machine Learning 2020.12.28

Permutation Feature Importance

* Permutation Feature Importnace 1. 특정 모델에 특화된 방법이 아닌 , 어느 모델이든(model-agnostic) 학습 후 적용(post-hoc) 하는 방법. 2. Black-box 모델에 대하여, 특정 feature를 안 썼을 때, 이것이 성능 손실에 얼마만큼의 영향을 주는지를 통해 그 feature의 중요도를 파악하는 방법 * 주요 특징 1. 재학습 시킬 필요가 없음 (특정 feature의 값들을 무작위로 섞어서(permutation) 그 feature를 노이즈로 만드는 것) 1-1. 무작위로 섞게 되면, 목표 변수와 어떠한 연결고리를 끊게 되는 것이므로, 그 feature를 안 쓴다고 할 수 있음 1-2. 이렇게 섞었을 때 예측값이 실제 값보다 얼마나 차이가 더 생겼는지..

Machine Learning 2020.12.15

Featrue Importance(변수 중요도) - 트리 기반 모델

* Decision Tree 1. 의사결정나무(Decision Tree)는 그 시각적인 구조 덕분에 depth가 크지 않는 한 해석이 용이한, 간단한(simple) 모델에 해당합니다. 다른 간단 모델인 Linear Regression, Logistic Regression은 feature와 target이 선형적 관계일 때 통하는 방법인 반면, 의사결정나무는 비선형적인 관계에서도 통하는 방법, 앙상블이 의사결정나무 기반 2. 목적이 분류(Classification)일 때에는 불순도 지표로 Gini 계수 및 엔트로피를 이용하고, 목적이 회귀(Regression)일 때에는 MSE(Mean Square Error) 등을 이용해서 분산을 감소시키는 방향으로 노드를 째게 됩니다. 이 과정에서, 불순도를 가장 크게 감..

Machine Learning 2020.12.15

Interpretable Machine learning

* 특정 데이터셋의 모델링을 진행할 때 우리는 보통 다중 공선성 , 상관관계 등을 보거나 Shap value , Feature importance 등의 지표들을 통해 유의미한 결과 값을 내는데 특히 실무에서는 그 모델이 어떤 이유 때문에 높은 정확도가 나오는지에 대한 질문을 받습니다. 결국 이런 단순한 모델링 결과 metric 즉 Accuracy 나 R2 값 등을 보는 것보다 정확도가 나오게 된 경위를 알아야 하는 것이 더 중요할 때가 많습니다. 그것이 우리가 보통 말하는 Insight인데 Insight를 볼 수 있는 방법은 아래와 같은 방법들이 있습니다. 1. 모델 해석 방법의 분류 Intrinsic vs Post-hoc 먼저 모델 자체로 해석이 가능한지의 여부로 해석 방법을 분류할 수 있습니다. 먼저..

Machine Learning 2020.12.14
반응형
반응형