[데이터 분석] 17. 랜덤 포레스트 (Random Forest)
·
Data Science/데이터 분석 📊
1. 랜덤 포레스트 (Random Forest)랜덤 포레스트는 의사결정나무를 기반으로 배깅 앙상블 모형으로, 간단히 설명하자면, 여러 개의 의사결정나무의 평균을 낸 모형이라고 할 수 있다. 구체적으로는 2가지 방법을 사용해서 다양한 의사결정나무를 만든다. 첫 번째는 의사결정나무를 만들 때, 데이터의 일부를 복원추출로 꺼내고 해당 데이터에 대해서만 의사결정나무를 만드는 방법이다. 다른 하나는 노드 내 데이터를 자식 노드로 나누는 기준을 정할 때, 일부 변수만 대상으로 해서 가지를 나눌 기준을 찾는다. 만약 새로운 데이터에 대한 예측을 수행할 때는 여러 개의 의사결정나무가 내놓은 예측결과를 투표방식으로 합한다.각 나무별로 분산이 높다는 단점이 있지만, 앙상블 기법을 이용함으로써 견고한 모델을 만들고, 일반화..
[데이터 분석] 16. 앙상블 (Ensemble)
·
Data Science/데이터 분석 📊
1. 앙상블 기법 (Ensemble)일련의 예측기(분류, 회귀 모델)로부터 예측을 수집하여 가장 좋은 모델 하나보다 더 좋은 예측을 얻을 수 있는 일련의 예측기 혹은 학습 방법론이다. 별도의 노력 없이 더 좋은 모델을 만들 수 있으며, 주로 Feature Engineering을 사용할 수 없는 경우 혹은 Feature에 대한 정보가 없는 경우 사용한다. 사용되는 모델은 서로 차별성이 존재하는 모델을 선택하여 결합을 통한 효과를 높일 수 있다. 모델 간의 결합은 학습이 완료된 모델들로부터 얻어지는 결과를 각 모델의 특성을 고려하여 효과적으로 결합해야 한다. 앙상블 방식에 대해서는 크게 보팅(Voting), 배깅(Bagging), 부스팅(Boosting), 스태킹(Stacking)이 있다.2. 보팅 (Vot..
[데이터 분석] 15. 의사결정나무
·
Data Science/데이터 분석 📊
1. 의사결정나무트리 구조의 모델을 형성하며, 연결된 논리적인 결정을 통해 데이터를 분류하는 모델이다. 주로 설명이 중요한 경우에 사용되며, 분류, 회귀 및 다중출력 작업이 가능한 머신러닝 알고리즘이다. 해당 모델의 목표는 입력으로 받은 데이터를 보다 작고 동질적인 그룹으로 분할하는 것이다. 여기서의 동질적이란 "분기별 노드가 보다 순수한(동일한 클래스의 비율이 높은) 성격을 갖는 것"이다. 분류 문제에서의 순수도를 높이는 방법은 정확도를 높이거나 오분류를 낮추는 방법이 있다. 하지만 정확도를 이용하게 되면 하나의 클래스로 분류하는 방식으로 데이터를 분할하기보다는, 오분류를 최소화하는 방식으로 데이터를 분할하는 것에 초점을 두게 되므로 목적에 어긋날 수 있으니 주의하자. 모델의 형태는 아래의 그림과 유사..
[데이터 분석] 14. 서포트 벡터 머신 (SVM)
·
Data Science/데이터 분석 📊
1. 서포트 벡터 머신(SVM)1.1 선형 서포트 벡터1.1.1 서포트 벡터서포트 벡터를 설명하기에 앞서 마진(Margin) 에 대해서 먼저 알아보자. 마진(Margin) 이란 클래스를 구분하는 초평면(결정 경계)과 가장 가까운 훈련 샘플 사이의 거리를 의미한다. 아래 그림에서 점선부분이 이에 해당한다.서포트 벡터 머신에서는 마진을 최대화하는 방향으로 최적화를 진행한다. 이유인 즉슨, 마진이 클 수록 일반화 오차가 낮아지는 경향이 있기 때문이다. 반대로 마진이 작을 수록 모델은 과대적합되기 쉽다. 따라서 마진이 클 수록 좋은데 이때 마진에 걸치는 샘플들을 서포트 벡터라고 한다. 위의 내용을 토대로 보았을 때, 서포트 벡터 머신은 다음과 같이 정의할 수 있다.마진을 최대화 하는 분류 경계면을 찾는 기법위의..
[데이터 분석] 13. 최근접 이웃(k Nearest Neighbor)
·
Data Science/데이터 분석 📊
1. 분류본격적으로 분류와 관련된 알고리즘을 알아보기에 앞서 분류라는 것에 대한 정의를 간략하게 짚고 넘어가고자 한다. 분류란 새롭게 나타난 현상에 대해서 기존이 나눠둔, 혹은 정의된 집합에 배정하는 것을 의미한다. 주로 반응변수(종속변수)가 알려진 다변량 자료를 이용해 모형을 구축하고 이를 통해 새로운 자료에 대한 예측 및 분류를 수행하는 것이 목적이다. 반응 변수가 범주형인 경우에는 분류, 연속형인 경우에는 예측이라 한다. 대표적인 알고리즘으로는 앞쪽에서 살펴본 로지스틱 회귀 부터, 의사결정나무, 서포트벡터, 랜덤 포레스트 등이 있다. 로지스틱 회귀의 경우 회귀 부분에서 언급했기 때문에 이번에는 넘어가도록 하겠다.2. kNN(k Nearest Neighbor)이번 장에서는 분류와 관련된 머신러닝 알고..
[데이터 분석] 12. 회귀Ⅲ : 로지스틱 회귀
·
Data Science/데이터 분석 📊
1. 선형회귀로 분류도 가능할까?이전 장까지해서 회귀모델에 대해 알아봤다. 주로 수치형 변수들을 사용해 특정 목표 변수의 값을 예측하는 문제를 많이 풀어봤는데, 현실에서는 특정 수치를 예측하는 문제도 있지만, 어떤 분류에 속하냐와 같이 분류와 관련된 문제들도 존재한다. 그렇다면, 지금까지 배운 회귀모델을 사용해 분류에 대한 문제도 해결할 수 있을까?이를 위해 분류문제로 대표적인 아이리스 데이터 셋을 사용해 회귀모델을 사용해 분류해보자. 아는 사람들은 알겠지만 아이리스 데이터 셋은 꽃잎의 크기와 길이 등을 사용해 해당 꽃이 Setosa, Versicolor, Virginica 중 하나로 분류하는 것을 목표로 한다. 구체적인 데이터는 아래 예시를 통해서 살펴보자. import numpy as npimport..
[데이터 분석] 11. 회귀Ⅱ: 규제
·
Data Science/데이터 분석 📊
1. 규제 (Regularization)회귀모델에서의 규제란, 부가정보의 손실을 더해 과대적합 문제를 방지하는 방법이며, 복잡도에 대한 페널티를 유도해 모델 파라미터의 값을 감소시킨다. OLS (Ordinary Least Squares, 최소 제곱 회귀)라고 불리는 회귀모델의 일종이며, 과대적합과 부적합 사이의 균형 조정 파라미터로 볼 수 있다. 주로 유전정보나 텍스트 마이닝 같은 입력 파라미터가 너무 많은 문제에 적용되며, 가장 많은 이용방법은 릿지회귀(Ridge) 와 라쏘회귀(Lasso), 엘라스틱넷(ElasticNet)이 있다. 한편, 규제를 적용했을 때 다음과 같은 효과를 볼 수 있다.규제의 효과 - 모델 트레이닝 속도가 극단적으로 빠르다. - 변수 중요도 정보를 제공한다. - 평가가 극단적으로 ..
[데이터분석] 10. 회귀Ⅰ: 선형회귀
·
Data Science/데이터 분석 📊
1. 회귀 (Regression)영국의 유전학자 갈튼이 생각한 문제로, 출력 변수와 입력변수가 선형관계를 가정하는 단순한 통계 분석 기법으로 하나 이상의 특성과 연속적인 타깃 변수 사이의 관계를 선형일것이다는 가정하에 모델링 하는 것이다. 일반적으로 결과에 대한 충격을 추정하거나 미래를 추론하는 데이터 간의 복잡한 관계를 모델화하는 데 사용되며, 데이터에 대한 추정이 참/거짓인지를 판별할 때도 사용된다.회귀는 입력변수의 개수에 따라 단순선형회귀(단변량 회귀)와 다중선형회귀(다변량 회귀)로 종류를 나눠볼 수 있으며, 일반적인 머신러닝 문제들은 다변량 회귀(다항회귀)로 접근한다.1.1 단순선형회귀먼저 단순선형회귀에 대해 알아보자. 하나의 특성(설명변수) 과 연속적인 타겟(응답변수) 간의 관계를 모델링한다. ..
[데이터 분석] 9. 통계분석Ⅳ: 추정 & 가설검정 - 실습편
·
Data Science/데이터 분석 📊
0. 들어가면서위에서 설명했던 개념들을 이용해 어떻게 가설검정을 하고, 결과를 해석하는지를 알아보자. 우선 시작하기에 앞서 가설검증은 가설을 어떻게 설정하느냐에 따라 단측검정과 양측검정으로 나눠볼 수 있다. 단측검정은 기각역에 의해 왼쪽, 오른쪽으로 나눠지며, 한 쪽의 검정통계량을 이용해서 유의수준을 판단하는 검정방법이고, 양측검정은 귀무가설, 대립가설이 모두 존재하는 상황에서 양 끝단을 합쳐 유의수준을 판단하는 검정방법이다. 이를 토대로 아래 여러가지의 상황에 대한 가설검정을 어떻게 진행하는지를 살펴보도록 하자. 참고로 실습편인 만큼 예제와 코드가 많아 다른 글들보다 길이가 길며, 필요한 부분을 검색해서 보는 것도 추천한다.1. 단일집단에 대한 가설검정먼저 단일집단인 경우에 대한 가설검정 하는 방법을 ..
[데이터 분석] 8. 통계분석Ⅲ: 추정 & 가설검정 - 이론편
·
Data Science/데이터 분석 📊
1. 추정가설검정에 대해 설명하기 앞서, 먼저 가설을 세우기 위한 기초단계를 먼저 알아보도록 하자. 바로 추정이라는 것인데, 추정에 대한 사전적인 의미는 "입력된 자료가 불완전하거나 불확실하더라도 사용할 수 있는 계산 결과의 근삿값" 을 의미한다. 이를 통계에서는 "모집단을 대표할 수 있는 일부를 표본으로 추출하여 분석한 통계량을 통해 모집단의 특징(모수)을 예측하는 과정"이라고 할 수 있다. 이렇게 통계량을 통해 모집단의 특징을 예측하는 과정을 통계적 추론이라고 하며, 대표적으로 추정과 가설검정이 있다. 추정은 모수를 어떤 값으로 정의하는가에 따라 크게 점추정과 구간추정으로 나눌 수 있다. 점추정은 "모수들 중에 가장 알맞는(참인) 값이라 여겨지는 하나의 모수를 선택하는 것"이다. 쉽게 말해서, 모수를..
SLYK1D
'분류 전체보기' 카테고리의 글 목록 (3 Page)