용어정리

P(C) : C가 발생할 확률

P(C|E) : 'E가 있을 확률' 또는 'E 조건 하에서 C가 발생할 확률' → 조건부 확률

결합학률 : 확률 p(A)와 p(B)를 알고 있을 때, A와 B 사건 모두 일어날 확률 → P(AB)

사후확률 : 증거를 확인한 후의 확률


 


베이즈규칙


위 식에서 B는 가설(Hypothesis) A는 증거(Evidence)라고 하면


분류에 사용하는 베이즈 규칙


p(C=c) : 계층의 사전 확률로서 어떤 증거를 확인하기 전에 계층에 할당하는 확률

p(E|C=c) : 표본을 c 계층으로 분류한 후에 증거 E의 특징을 볼 수 있는 가능성

p(E) : 증거가 나타날 가능성


E를  특징벡터로 생각 후 바로 적용하기 위해서는 를 계산하여 P(E|c)를 알아내야 합니다.


조건부 독립과 나이브 베이즈


A와 B가 C에 대해 조건부 독립적이라고 가정하면 (무조건 독립을 가정하는 경우보다 약한 가정)

분류에 사용하는 베이즈 규칙을 가져와서 생각해보면 나이브 베이즈 방정식을 생성할 수 있습니다.


여기서 P(E)는 계산할 필요가 없는 경우가 많습니다.


분류문제인 경우, 모든 c 계층 중에서 어느 계층에 대한 P(C|E)가 가장 큰지만 알면 되기 때문입니다. 이 경우에는 E는 모든 계층에 동일하므로 어느 계층의 분자가 큰지만 알면 됩니다.

또한, 실제 확률을 추정할 경우, E는 , 둘 중에 하나만 속하며 이므로 위 식을 베이즈 방정식에 대입하면


나이브 베이즈의 장점


나이브 베이즈는 간단한 분류자이기도 하지만 증거를 나타내는 특징 벡터를 계산에 모두 포함시킬 수 있기 때문에 저장 공간과 계산 시간 측면에서 매우 효율적입니다. 또한 독립성 가정이 잘못된 경우에도 분류 성능이 크게 떨어지지 않습니다. 마지막으로 점진자 학습자로서 새로운 훈련 데이터를 추가될 때 과거에 학습했던 사례는 다시 학습할 필요가 없습니다.


향상도 모델


향상도를 

라 정의하면

로 나타낼 수 있습니다.


2017/06/17 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.9 좋은 모델은 무엇인가?(비용과 효과)

2017/06/12 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.8 좋은 모델은 무엇인가?(기댓값)

2017/06/10 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.7 좋은 모델은 무엇인가?(분류자평가)

2017/06/07 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.6 유사도

2017/06/03 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.5 과적합화

2017/05/28 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.4 데이터에 대한 모델 적합화(수학 함수를 이용한 회귀분석과 로지스틱 회귀분석)

2017/05/27 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.3 데이터에 대한 모델 적합화(수학 함수를 통한 분류)

2017/05/24 - [Cyong's 마케팅/Data Science] - [Data Science] Ch2. 트리구조모델

2017/03/25 - [Cyong's 마케팅/Data Science] - [Data Science] Ch1. 예측모델링_정보전달하는 속성 찾아내기


수학함수를 이용한 회귀분석


회귀분석 : 두 변수 사이의 관계에 '가장 근접한' 선형 관계를 찾아내는 것.

선형회귀분석 모델의 구조는 선형판별함수와 동일합니다.

(표준)선형회귀분석 : 모델을 데이터에 맞추기 위한 방법(오차를 줄여나가는 방법)

최소제곱회귀분석 : 오찻값의 제곱의 합계나 평균값을 최소화. 계산편리성으로 널리 사용됩니다. 하지만 민감하게 반응한다는 단점이 있습니다. 외곽의 데이터 객체가 선형함수를 상당히 왜곡시킬 수 있기 때문입니다. 최소제곱법, 또는 최소자승법, 최소제곱근사법, 최소자승근사법(method of least squares, least squares approximation)은 어떤 계의 해방정식을 근사적으로 구하는 방법으로, 근사적으로 구하려는 해와 실제 해의 오차의 제곱의 합이 최소가 되는 해를 구하는 방법으로  값을 정확하게 측정할 수 없는 경우에 유용하게 사용될 수 있으며, 특히 그 계의 방정식이 어떤 형태인지를 알고 있을 때 방정식의 상수 값들을 추정하는 데에 사용됩니다.


계층 확률 추정과 로지스틱 회귀분석


계층확률 추정 : 새로운 객체가 어떤 계층에 속할 확률을 추정하는 것입니다. 예를들어 금융, 통신 등의 분야에서의 사기사건 탐지하는 것으로 선형판별식으로 사기 당한 계좌나 거래를 찾습니다.

위험에 처할 가능성이 높은 확률을 추정할 수 있어야 함

로지스틱회귀분석 : 다른 목적함수를 선택해 계층 확률을 정확히 추정하는 모델을 만드는 절차

승산 : 사건이 일어날 가능성을 표현하는 또 다른 방법으로 선형함수 f(x)가 사건이 일어날 로그승산을 측정하는 도구로 사용됩니다.

ex ) 모델은 특징 벡터 x로 표현한 고객이 만료 후에 서비스를 해지할 것인지에 대한 로그 승산을 추정할 수 있습니다.

확률 추정에 있어 로지스틱 회귀 분석은 분류하기 위한 선형판별식이나 수치형 타겟값을 추정하기 위한 선형 회귀분석과 동일한 선형 모델 사용

로지스틱 회귀모델이 계산한 값은 계층에 속할 로그 승산입니다. 로그승산은 계층에 속할 확률로 변환할 수 있으므로, 로지스틱 회귀분석을 계층에 속할 확률모델과 똑같이 생각할 수 있습니다.


로지스틱 회귀분석 : 수학적 세부사항


사건이 발생할 확률 추정치 : 

사건이 발생하지 않을 확률 추정치 : 

g함수는 객체 x에 대한 특징이 주어졌을 때 모델 x의 실제 계층을 추정할 수 있는 확률 계산 일렬의 가중치(w)가 파라미터가 됩니다.

최고유망모델 : 합계값이 가장 높은 모델로 평균적으로 양성 데이터일 때 가장 높은 가능성을 가지고, 음성데이터일 때 가장 낮은 가능성을 가집니다.


사례 : 로지스틱 회귀분석과 트리유도 비교


공통점

분류트리와 선형 분류자 : 모두 선형 결정 경계 사용

차이점

분류트리 : 객체공간 축에 직교하는 선으로 나타나는 결정 경계를 사용, 하나의 속성만 선택 객체공간을 반복해서 분할해, 객체를 매우 작은 영역까지 잘라낼 수 있습니다.

선형분류자 : 결정 경계는 방향 제한이 없음. 전체 속성에 대한 가중치 조합 사용합니다. 단 하나의 결정 경계로 경계의 방향은 자유롭짖만 두개의 세그먼트로 분할해야 합니다.

특징의 차이로 주어진 데이터 세트에 어느 모델이 더 잘 맞는지는 사전에 판단하기 어렵습니다.


비선형 함수, 지원벡터기계(SVM), 신경망


함수에 더 복잡한 특징을 추가하면 실제로 선형함수로 비선형모델 표현이 가능합니다. 파라미터를 복잡한 비선형 함수에 맞추는 바업에 기반한 기술은 비선형 지원 벡터기계와 신경망 계열에 주로 사용됩니다.

비선형지원벡터기계 : 본질적으로 복잡한 항목을 추가해 선형모델을 데이터에 맞출 수 있게 해주는 기법을 체계화 한 것으로 다항식 커널로 비선형 지원벡터기계를 구현 할 수 있습니다.

커널함수 : SVM에 원래의 특징을 다른 특징 공간에 대응 시키는 함수입니다.

신경망 : 모델을 스택구조로 층층이 쌓는 방법입니다. 일반적으로 최상위 계층에서만 타겟 변숫값 사용합니다.

가장 아래 계층은 로지스틱회귀분석을 주로 사용하고 윗 계층은 아래계층에 대한 계산결과로 다른 모델 만듭니다.

적합화 함수에 기반해 목적함수 결정하고 최적화 절차를 통해 거대하고 복잡한 함수에 가장 적합한 파라미터를 알아낼 수 있습니다.

다만 범용적으로 적용하기 보다는 특정 훈련 데이터 세트에만 잘 맞게 됨



데이터에 대한 모델 적합화 요약


함수 적합화는 파라메트릭 함수 모델링을 뜻하며, 데이터 마이닝으로 적합화할 파라미터가 데이터 속성들의 가중치가 됩니다. 함수를 적합화를 위해 주로 동일한 선형모델 구조, 즉 속성값들의 가중치 합을 사용하며 선형모델링 기법에는 SVM, 로지스틱 회귀분석, 선형 회귀분석과 같은 선형 판별식을 사용합니다. 그러나 각 기법은 서로 다른 함수를 사용하기 때문에 차이가 날 수 있습니다.


데이터 모델링에 있어 상당히 다른 두 가치 기법 : 트리유도와 함수 적합화

모델을 평가할 수 있는 두 가지 기준 : 모델의 예측 성능과 정보성


동일한 데이터 세트에 대해 여러 모델을 만들어 보면 데이터에 대한 통찰력을 얻을 수 있습니다. 다만 모델을 데이터에 맞추다 보면 데이터 세트에 우연히 들어간 구조를 발견하게 되는 데 이를 과적합화라고 부릅니다.


2017/05/27 - [Cyong's 마케팅/Data Science] - [Data Science] Ch.3 데이터에 대한 모델 적합화(수학 함수를 통한 분류)

2017/05/24 - [Cyong's 마케팅/Data Science] - [Data Science] Ch2. 트리구조모델

2017/03/25 - [Cyong's 마케팅/Data Science] - [Data Science] Ch1. 예측모델링_정보전달하는 속성 찾아내기


Review


전체 데이터 집합을 세분화하여 더욱 정확한 정보를 전달하는 속성을 찾아가면서 감독 세분화 모델을 만듭니다.


[용어정리]


모델 : 목적 달성을 위해 실 세계를 명확화, 단순화하여 일정한 규칙으로 표현하는 것.

모델링 : 데이터에서 발견된 특정한 규칙에 의해 모델의 종류나 패턴을 생성하는 데 그것을 발견하는 행위.

예측 : 발생할 일이나, 모르는 값을 추정하는 것.

예측모델 : 어떤 값을 예측하기 위해 일정한 규칙으로 표현한 공식.

예측모델링 : 데이터 과학에서 타겟 값(미래의 행동 또는 변화의 결과)을 예측하는 것.

데이터 마이닝 : 모델이 가능한 한 데이터에 잘 맞도록 파라미터를 튜닝하는 것.

파라미터 : 전달자

파라미터 학습(Parametric modeling) : 파라미터를 수정하여 모델의 정확성을 높이는 방법


파라미터 학습에 대한 주요 가정


1. 2개의 결과값만 고려(어떤 사건이 발생한다,  안한다)합니다.

2. 속성은 수치형 속성(즉, 숫자로 표기된 속성)만 고려합니다.

3. 수치형 데이터는 표준화하지 않습니다.(예를 들어, 나이, 소득 등의 단위가 다른 데이터를 공통단위로 표준화하지 않습니다.)


수학 함수를 통한 분류


선형 판별 함수


모델을 데이터에 적합화하려 할 때 모델을 수학적으로 표현하면 도움이 됩니다.

이를 선형 판별식이라 하며, 결정 경계를 나타내는 함수는 속성들의 선형 조합(가중치의 합)입니다.

속성의 가중치 합으로 모델을 표현할 수 있으며, 이 선형모델이 일종의 다변형 감독 세분화입니다.

여러 속성을 한꺼번에 고려하기 위해 속성을 변수로 사용해 수학함수로 만듭니다.

선형함수의 가중치가 기울기입니다. 올바른 가중치는 특정데이터 세트에 맞도록 만들어야 합니다. 데이터 학습 후 알아낸 가주이는 각 특징의 중요도를 나타내는데, 특정 가중치가 크면 타겟을 분류하는 데 더 중요한 특징으로 생각되며, 특정 가중치가 0에 가까울 수록 그 특징은 무시됩니다.

하지만 계층을 잘 나누는 선을 고르는 일은 쉽지 않습니다. 그렇기 때문에 각각의 판별식은 데이터 모델을 나타내며, 훈련 데이터 세트를 완벽히 구분하는 선은 무한히 많음에도 불구하고 어떤 선을 골라야 할지의 선택이 문제가 됩니다.


목적함수의 최적화


데이터 마이닝하는 진정한 목표에 맞는 목적 함수를 만드는 일은 거의 불가능 합니다. 하지만 목적함수를 만드는 효율적인 방법들이 있으며, 가장 효율적인 방법은 <지원벡터기계(Support Vector Machine(SVM))>가 있고, 데이터 마이닝 기법 중 선형모델을 적용해 계층 확률을 추정하는 <로지스틱 회귀 분석(Logistic regression)>이 있습니다. SVM과 로지스틱회귀분석에 대해서 나중에 좀 더 자세히 다루도록 하고, 아래의 예를 통해 SVM과 로지스틱 회귀분석에 대해서 간략하게 알아보도록 하겠습니다.


ex) 아이리스(나무)의 여러 종에 대한 데이터 세트

아이리스 세토사 / 아이리스 베르시컬로 2종류를 분류하여 x축: 꽃잎 너비, y축 : 꽃받침 너비의 측정값으로 둡니다.

로지스틱 회귀분석 : 두 계층을 완전히 분할 / 선 왼쪽 - 베르시 컬로, 선 오른쪽 - 세토사로 분류

SVM : 두 덩어리의 거의 한 가운데 있으나, 별모양을 분리해내지는 못합니다.


객체를 점수화하고 순위매기는 선형판별함수


어느 객체가 어느 계층에 속하는 지가 아닌, 속할 확률이 어느 정도인지 알고 싶은 경우 사용합니다. 예를 들어, 어떤 고객이 프로모션에 응할 가능성이 높은 지, 어느 고객이 계약 만료 후 해지할 가능성이 높은지 알아볼 때 선형판별함수로 객체가 어떤 계층에 속할 확률에 따라 순서를 매기고 결정경계에 있는 사람들은 어느 계층에 속할 지 가장 불확실하고 멀어질수록 확률이 높다 판단할 수 있습니다.


지원벡터기계(SVM) 개요


SVM은선형판별식으로써 특징에 대한 선형 함수에 기반해 객체를 분류합니다.

SVM의 목적함수 : 아직 분석하지 않은 데이터를 쉽게 분류하기 위해 선형판별식 주위의 폭을 최대로 만드는 것이 목적입니다.

(앞서 말한대로, 목적함수는 계층 두개를 분할하는 무수한 선형판별식 중 어떤 선이 가장 좋을 지 선택합니다.)

경첩손실함수 : 분류가 불가능한 데이터 처리방법으로 잘못 분류한 데이터에 벌점을 적용하여 가장 잘 맞는 함수만 사용할 수 있도록 하는 함수입니다.(분할경계에서 멀리 떨어질수록 더 많은 벌점을 부여함)



2017/03/25 - [Cyong's 마케팅/Data Science] - [Data Science] Ch1. 예측모델링_정보전달하는 속성 찾아내기

2017/05/24 - [Cyong's 마케팅/Data Science] - [Data Science] Ch2. 트리구조모델

모델, 유도, 예측


모델이란 목적을 달성하기 위해 실세계를 명확하, 단순화하여 일정한 규칙으로 표현 한 것입니다. 즉, 확률함수로서 특징을 입력받아 타겟 변수값을 추정하는 것입니다. 쉽게 설명하지면 경제학에서의 '수요공급곡선'은 수요와 공급에 대한 관계를 단순하게 표현하기 위해 만들어진 모델입니다. 


모델링이란 속성 또는 특징와 같은 일련의 변수와 타겟 변수라고 불리는 사전에 정의한 변수간의 관계를 보여주는 모델을 만드는 행위를 말합니다. 


예측이란 발생할 일이나 모르는 값을 추정하는 것인데 , 예측 모델(어떤 값을 예측하기 위해 일정한 규칙으로 표현한 공식), 예측 모델링을 통해 예측을 합니다.


감독 세분화 (Supervised Approach)


감독방법으로 데이터에서 패턴을 만드는 방법에 대해 생각해보면 타겟변수를 기준으로 전체 데이터를 유사한 값을 가진 세그먼트로 분할하는 방법이 있다. 타겟값은 모르지만 알려진 변숫값으로 분할 한다면 이 세그먼트는 타겟 변숫값을 예측하는데 사용될 수 있다. 그리고 두드러진 세그먼트를 자동으로 뽑아내기 위해서는 정보를 전달하는 속성을 알아보고 이 기법을 반복 적용해 어떻게 감독 세분화하는지를 알아야 한다.


정보를 전달하는 속성의 선택


2진 분류인 타겟 변수값(yes 또는 no)을 생각해봅시다. 사람들 중 대손상각 여부와 여러 속성을 데이터로 하면 어느 세그먼트에 속한 그룹원이 다른 세그먼트 그룹원보다 상각률이 높은지 낮은지 예측할 수 있습니다.


그러나 기술적으로 복잡한 문제가 많습니다.


a. 그룹을 완전히 분리하는 속성은 거의 없다.

b. 3개 이상의 값을 가진 속성도 많다.

c. 수치값을 가지는 속성들도 많다.


이러한 문제를 해결하기 위해 순도에 기반한 여러 공식들이 존재합니다.


가장 널리 사용되는 분할 기준은 정보증가량(IG)이라고 부릅니다.


정보증가량(Information Gain, IG)와 엔트로피(entropy)


정보증가량은 엔트로피라고 불리는 순도에 기반합니다. 엔트로피는 어떤 집합에 적용해 무질서의 정도를 측정하는 것입니다. 뒤죽박죽 섞인 정보일수록 엔트로피가 높습니다.


정보의 엔트로피를 구하는 공식은 아래와 같습니다.

                         

위 식에서 각 는 i 번째 속성의 확률을 의미합니다.

즉, 인 경우 100%의 확률로 모든 원소가 i번째 속성을 가지는 것을 의미하고 인 경우에는 i번째 속성을 가진 원소가 하나도 존재하지 않는 것을 의미합니다.

엔트로피는 0일 경우 무질서 정도가 최소이고 1일 경우 무질서 정도가 최대라 할 수 있다.


분할, 분류를 통해 엔트로피가 많이 줄어들 수록 좋은 분할이라고 말할 수 있을 겁니다. 어떤 속성에 따라 분류하면 전체그룹의 엔트로피가 개선되는지 추정할 수 있도록 나타내주는 수치가 IG입니다.


정보증가량를 구하는 공식은 아래와 같습니다.


위 식에서 는 분할 전 집합이고 는 분할 후 i번째 집합을 의미합니다.


정보증가량으로 판단할 때에는 분할 후 집합이 완전히 순수할 필요는 없으며, 분할한 후의 집합의 개수에 상관없이 적용할 수 있습니다. 또한 분할 후 집합의 크기를 고려해 가중치를 조절할 수도 있습니다.


하지만 기술적으로 너무 다양한 값을 가질 수 있는 속성에 대해서는 문제가 발생할 수 도 있습니다. 같은 속성을 기준으로 세분화하면 IG는 상당히 늘어나지만 예측이 난해해지는 과적합화(Over-fitting)가 발생할 수 도 있습니다.


타겟변수가 수치형일 경우에는 수치형값의 불순도를 측정하는 방법인 분산을 이용합니다. 즉, 수치형 타겟값을 세분화하려면 가중치 평균의 분산이 가장 많이 줄어드는 값을 선택하면 됩니다.


IG을 증가시키는 속성선택


구체적인 데이터 마이닝을 위해선 속성과 타겟변수를 가진 객체가 담겨있는 데이터세트를 분석해 타겟변수를 추정하는데 필요한 정보를 가장 많이 전달하는 속성을 결정해야 합니다. 그리고 과적합화를 피하기 위해 데이터 세트에서 타겟변수를 예측할 때에는 데이터마이닝 해야 할 속성이 너무 많은 것은 아닌지 전혀 쓸모 없는 것이 있는 것은 아닌지 의심해봐야 합니다.

+ Recent posts