1. 연관규칙

  • 항목들 간의 '조건-결과' 식으로 표현되는 유용한 패턴

  • 이러한 패턴, 규칙을 발견해내는 것을 연관분석이라 함 -> 장바구니분석이라고도 함

  • 측정지표

    • 지지도

      • 전체 거래항목 중 상품 A 와 상품 B를 동시에 포함하여 거래하는 비율을 의미

      • P ( A ∩ B ) : A와 B가 동시에 포함된 거래수 / 전체 거래 수

    • 신뢰도

      • 상품 A를 포함하는 거래 중 A와 B와 동시에 거래되는 비중

      • P ( A ∩ B ) / P ( A ) : A와 B가 동시에 포함된 거래 수 / A가 포함된 거래 수

    • 향상도

      • 상품 A의 거래 중 항목 B가 포함된 거래의 비율 / 전체 상품 거래 중 상품 B가 거래된 비율

      • A가 주어지지않았을 때 B의 확률대비 A가 주어졌을 때 B의 확률증가 비율

      • P ( A ∩ B ) / P(A) * P(B) = P(B|A) / P(B)
        A와 B가 동시에 일어난 횟수 / A,B가 독립사건일 때 A,B가 동시에 일어날 확률

  • 상호관계가 없으면(독립) 향상도는 1 , 향상도가 1보다 높아질 수록 연관성이 높다고 할 수 있음

    • 향상도가 1 이면 품목간에 연관성이 없다

    • 향상도가 음 이면 서로 음의 상관관계를 의미

  • Process ( Apriori 알고리즘 : 데이터들에 대한 발생 빈도를 기반으로 각 데이터 간의 연관관계를 밝힘)

    • 최소 지지도를 설정

    • 개별 품목 중에서 최소 지지도를 넘는 모든 품목을 찾는다

    • 2에서 찾은 개별 품목만을 이용하여 최소 지지도를 넘는 두가지 품목 집합을 찾는다.

    • 위의 두 절차에서 찾은 품목 집합을 결합하여 최소 지지도를 넘는 세 가지 품목 집합을 찾는다.

    • 반복적으로 수행해 최소 지지도가 넘는 빈발품목 집합을 찾는다.

  • 장점

    • 조건반응( if - then )으로 표현되는 연관분석의 결과를 이해하기 쉬움

    • 강력한 비목적성 분석 기법

    • 사용이 편리한 데이터 분석

    • 분석계산이 간편

  • 단점

    • 분석 품목 수가 증가하면 분석 계산이 기하급수적으로 증가

    • 너무 세부화된 품목을 가지고 연관규칙을 찾으려면 의미 없는 분석 결과가 도출

    • 상대적으로 거래량이 적으면 규칙 발견 시 제외되기 쉽다

'ADSP > 3강) 데이터 분석' 카테고리의 다른 글

[11] 군집분석  (0) 2020.02.19
[10] 모형평가  (0) 2020.02.17
[9] 앙상블 모형  (0) 2020.02.16
[8] 신경망 모형  (0) 2020.02.15
[7] 데이터마이닝  (0) 2020.02.14

1. 군집분석

  • 각 개체에 대해 관측된 여러 개의 변숫값들로부터 N개의 개체를 유사한 성격을 가지는 몇개의 군집으로 집단화하고 형성된 군집들의 특성을 파악 하여 군집들 사이의 관계를 분석하는 다변량분석기법이다.

  • 실루엣 : 거리가 가까울수록 높고 멀수록 낮은 지표 , 완벽히 분리된 경우 1이 되는 지표

  • 계층적 군집

    • 가장 유사한 개체를 묶어나가는 과정을 반복하여 원하는 개수의 군집을 형성하는 방법

    • 계통도 , 덴드로그램의 형태로 결과가 주어지며, 각 개체는 하나의 군집에만 속하게된다.

    • 군집 간의 연결법에 따라 결과가 달라진다

      • 단일 연결법 : 한 군집의 점과 다른 군집의 점 사이의 가장 짧은 거리 ( 사슬모양 )

      • 완전 연결법 : 두 군집 사이의 거리를 각 군집에서 하나씩 관측값을 뽑았을 때 나타날 수 있는 거리의 최댓값을 측정

      • 평균 열결법 : 모든 항목에 대한 거리평균을 구하면서 군집화 -> 계산이 불필요하게 많아짐

      • 중심 연결법 : 두 군집의 중심간의 거리를 측정, 두 군집이 결합할 때 새로운 군집의 평균은 가중평균을 통해 구해짐

      • 와드 연결법 : 군집 내의 오차제곱합에 기초하여 군집을 수행

    • 두 개체의 간의 거리에 기반하므로 거리측정 대한 정의가 필요

      • 수학적 거리 

        • 유클리드

          • 두 점 사이의 거리를 계산 ( 방향성 고려 X )

        • 맨해튼 거리

          • 두 점 좌표 간의 절댓값 차이를 구하는 것

        • 민코프스키 거리

          • 가장 일반적으로 사용되는 minkowski 거리의 차수는 1, 2 ,∞ 이다.

          • q가 1이면 맨해튼 거리, q가 2이면 유클리디안 거리

      • 표준화 거리 ( 통계적 거리 )

        • 각 변수를 해당 변수의 표준편차로 척도 변환한 후 유클리드 거리를 계산한 거리

        • 마할라노비스

          • 변수의 표준화와 함께 변수 간의 상관성을 동시에 고려

             

             

      • 계층적 군집에 사용하는 함수

        • 병합적 : agnes() , mclust()

        • 분할적 : diana() , mona()

    • 계층적 군집 특징

      • 매 단계에서 지역적(local) 최적화를 수행해나가는 방법

  • 비계층적 군집

    • k-평균 군집 ( k - mean clustering )

      • 원하는 군집 수 만큼 초기값을 지정 -> 가까운 초기값을 할당하여 군집을 형성

      • 군집의 평균을 재계산하여 초기값을 갱신

      • Process

        1. 초기 군집 중심(centroid)으로 k개의 객체를 임의로 선택

        2. 각 자료를 가장 가까운 군집 중심에 할당, 즉 자료들의 군집의 중심점으로부터 오차제곱합이 최소가 되도록 각 자료를 할당

        3. 각 군집 내의 자료들의 평균을 계싼하여 군집의 중심을 갱신

        4. 군집 중심의 변화가 없을 때까지 단계 2와 단계 3을 반복

      • 장점

        • 알고리즘이 단순, 계층적 군집보다 많은 양의 데이터를 처리

        • 관찰치 간의 거리 데이터형태, 거의 모든 형태의 데이터에 적용이 가능

        • 내부 구조에 대한 사전적 정보 없이 의미 있는 자료로 분석 가능

      • 단점

        • 잡음이나 이상값에 영향을 받기 쉬움, 평균 대신 중앙값을 사용하는 k-medoids 군집을 사용 가능

        • 사전에 군집의 수를 정해주어야함 (Nbclust 패키지)

  • 혼합분포군집

    • 모형-기반의 군집방법

    • 데이터가 k개의 모수적모형의 가중합으로 표현되는 모집단 모형으로부터 나왔다는 가정하, 모수와 함께 가중치를 자료로 부터 추정하는 방법

    • k개의 각 모형은 군집을 의미

    • 혼합모형에서의 모수와 가중치의 추정(최대가능도추정)에는 EM알고리즘이 사용

    • EM 알고리즘

      • 혼합분포에서 잠재변수를 추정할 때 사용

      • 분석 데이터가 불완전하거나 결측치가 있고, 숨겨진 잠재변수가 있을 때 MLE추정치를 알아냄

      • 순서

        • 무작위로 k개의 클러스터를 초기화

        • 포인트가 클러스터에 포함될 확률 계산

        • MSL이 최대화하기 위한 분포의 파라미터를 계산

      • 단점 : 초기 클러스터의 개수를 정해주어야함

    • k-means vs 혼합분포군집

      • k-means는 클러스터의 중심거리 / EM은 MSL 로 거리를 측정

      • 클러스터를 늘릴수록 중심에서의 평균거리가 짧아짐 / EM은 우도가 커짐

      • EM 알고리즘을 이용한 모수 추정에서 데이터가 커지면 수렴하는데 시간이 소요 , 군집의 크기가 너무 작으면 추정의 정도가 떨어짐

      • 둘 다 이상값 자료에 민감

  • SOM ( 자기조직화지도)

    • 인공신경망의 한 종류

    • 차원 축소군집화를 동시에 수행하는 기법

    • 입력 벡터를 훈련집합에서는 match가 되도록 가중치를 조정하는 인공 신경세포 격자에 기초한 자율학습의 한 방법

    • 기능

      • Find Structures in data( 구조 탐색 ) : 데이터의 특징을 파악하여 유사데이터를 Clustering 함.

        고차원 데이터셋을 저차원 맵( 2D 그리드에 매핑 )에 표현하는 것, 이를 통해 입력 데이터를 유사한 그룹으로 분류

      • Dimension Reduction ( 차원 축소 ) & Visualization ( 시각화 ) : 차원을 축소하여 통상 2차원 그리드에 매핑하여 인간이 시각적으로 인식할 수 있게 한다.

    • Process

      • SOM 맵의 노드에 대한 연결 강도로 초기화

      • 입력벡터와 경쟁층 노드간의 유클리드 거리를 계산하여 입력벡터와 가장 짧은 노드를 선택

      • 선택된 노드와 이웃 노드의 가중치(연결강도)를 수정

      • 단계 2로 가서 반복, 연결강도는 입력 패턴과 가장 유사한 경쟁층 뉴런이 승자가 됨

        경쟁층에는 승자 뉴런만이 남아 있음, 신경망은 역전파 알고리즘이지만

        SOM은 전방패스를 사용하여 속도가 매우 빠름

    • 장점

      • 고차원의 데이터저차원의 지도 형태로 형상화

      • 입력변수의 위치 관계를 그대로 보존

    • SOM vs 신경망 모형 비교

      • 신경망 모형은 연속적인 Layer로 구성 / SOM은 2차원 그리드로 구성

      • 신경망 모형은 에러를 수정 / SOM은 경쟁학습을 실시

      • SOM은 비지도학습 이다.

'ADSP > 3강) 데이터 분석' 카테고리의 다른 글

[12] 연관분석  (0) 2020.02.19
[10] 모형평가  (0) 2020.02.17
[9] 앙상블 모형  (0) 2020.02.16
[8] 신경망 모형  (0) 2020.02.15
[7] 데이터마이닝  (0) 2020.02.14

1. 신경망 모형

  • 인공신경망

    • 분류(classifcation) , 군집화(clustering)를 할 수 있음

    • Input Layer -> Hidden Layer -> Output Layer

    • 지도학습의 한 방법

      • 역전파 알고리즘

        • 인공신경망을 학습시키기 위한 가장 기본적이고 일반적인 알고리즘

        • 역전파 : 오차(에러)가 본래 진행 방향과 반대 방향으로 전파된다 하여 붙여진 이름

      • 예측분석에 사용

    • neuralnet / nnet R 패키지 활용

  • 신경망학습 -> 가중치(weight)의 조절 작업

    • 입력값을 입력층에 넣음 -> 모델의 출력값이 원하는 출력값과 같은지 확인 -> 같지 않다면 가중치 조절

    • output = f(w_0 + w_1 input_1 + w_2 input_2 + w_3 input_3)

    • f () : 활성함수, 결과의 범위를 제한, 계산의 편의성을 제공 

      • 시그모이드 함수(미분)

      • 부호 함수

      • 소프트맥스 함수

    • 신경망의 은닉층 및 은닉 노드 수를 정할 때 고려해야 할 사항

      • 다층신경망은 단층신경망에 비해 훈련이 어렵다

      • 노드가 많을수록 복잡성을 잡아내기 쉽지만, 과적합의 가능성도 높아짐

      • 은닉층 노드가 너무 적으면 복잡한 의사결정 경계를 만들 수 없음

      • 시그모이드 활성함수를 가지는 2개 층의 네트워크는 임의의 의사 결정 경계를 모형화 할 수 있음

      • 출력층 노드의 수는 출력 범주의 수 로 결정, 입력의 수는 입력 차원의 수로 결정

    • 신경망 모형의 장점

      • 변수의 수가 많거나 입력 , 출력변수 간이 복잡한 비선형 관계에 유용

      • 잡음에 대해서도 민감하게 반응하지 않음

      • 입력변수와 결과변수가 연속형이나 이산형인 경우 모두 처리가 가능

    • 신경망 모형의 단점

      • 결과에 대한 해석이 쉽지 않음

      • 최적의 모형을 도출하는 것이 상대적으로 어려움

      • 데이터 정규화를 하지 않으면 지역해 에 빠질 위험이 있음

      • 모형이 복잡하면 훈련 과정에 시간이 많이 소요됨

2. 의사결정나무 모형

 

  • 의사결정나무

    • 분석과정이 직관적이고 이해하기 쉬움

    • 분류(classification), 예측(prediction)

    • 구성요소

      • 뿌리마디(root node) : 시작되는 마디로 전체 자료를 포함

      • 자식마디(child node) : 하나의 마디로부터 분리되어 나간 2개 이상의 마디들

      • 부모마디(parent node) : 주어진 마디의 상위 마디

      • 최종마디(terminal node) : 자식마디가 없는 마디

      • 중간마디(internal node) : 부모마디와 자식마디가 모두 있는 마디

      • 가지(branch) : 뿌리마디로부터 최종마디까지 연결된 마디들

      • 깊이(depth) : 뿌라마디로부터 최종마디까지의 중간 마디들의 수

    • 분석 패키지

      • tree 패키지 : binary recursive partitioning

      • repart 패키지 : CART(classification and regression trees) 방법론

        • 지니 지수를 기준으로 가지치기를 할 변수를 결정하기 때문에 상대적으로 연산속도는 빠름 But 과적합화의 위험성이 존재함

      • party 패키지 : Unbiased recursive partitioning based on permutation tests 방법론

        • p-test를 거친 Significance를 기준으로 가지치기 할 변수를 결정 -> 위험성이 낮음 But 변수제한이 31개로 됨 

    • 데이터 분할과 과대적합

      • Training set 가 정확한 결과를 보여주기 위해 복잡하게 모델을 만드는 것을 과대적합

        • 높은 정확도 But 새로운 데이터가 입력되면 잘못된 결과를 예측할 수 있음

      • 모델이 너무 간단하여 정확도가 낮은 모델을 과소적합

        • 간단함 But, training data 조차도 정확한 결과가 나오지 않을 수 있음

    • 의사결정나무 구분

      • 분류나무

        • 목표변수가 이산형

        • 상위 노드에서 가지분할을 수행할 때 분류변수와 분류 기준값의 선택방법

        • 카이제곱통계량의 p값, 지니지수, 엔트로피 지수

          • 카이제곱통계량의 p값이 작을수록, 지니지수와 엔트로피지수는 값이 클수록 자식노드내에 이질성이 큼

      • 회귀나무

        • 목표변수가 연속형

        • F통계량의 p값, 분산의 감소량

          • F통계량 : 일원배치법에서의 검정 통계량, 값이 클수록 오차의 변동에 비해 처리의 변동이 크다는 것을 의미

      • 정지규칙 : 더 이상 분리가 일어나지 않음

        • 최대 나무의 깊이, 자식마디의 최소 관측치 수, 카이제곱통계량 , 지니 지수, 엔트로피 지수

      • 가지치기 : 최종마디가 너무 많으면 모형이 과대적합된 상태 -> 현실 문제에 적용할 수 있는 규칙이 안나옴

        • MSE(Mean Squared Error) 등을 고려하여 수준의 가지치기 규칙을 제공해야함

      • 의사결정나무 분석

        • 데이터 준비 -> 의사결정나무 만들기 -> 가지치기 -> 예측및 모델의 평가

      • rpart() 를 사용한 예측 predict()를 통해 수행하고 confusionMatrix() 함수를 이용해 정확성을 평가

      • 의사결정나무 장점

        • 구조가 단순, 해석에 용이

        • 유용한 입력변수의 파악과 예측변수 간의 상호작용 및 비선형성을 고려

        • 선형성, 정규성, 등분산성 등의 수학적 가정이 불필요한 비모수적 모형

        • 계산비용이 낮아 대규모의 데이터셋에서도 비교적 빠르게 연산이 가능

        • 수치형/범주형 변수를 모두 사용할 수 있음

      • 의사결정나무 단점

        • 분류 기준값의 경계선 부근의 자료값에 대해서는 오차가 크다 (비연속성)

        • 로지스틱회귀와 같이 각 예측변수의 효과를 파악하기 어렵다

        • 새로운 자료에 대한 에측이 불안정할 수 있다.

      • 활용분야 : 고객 타켓팅, 고객들의 신용점수화, 캠페인 반응분석, 고객행동예측, 고객 세분화

  이산형 목표변수 연속형 목표변수
CHAID 카이제곱통계량 ANOVA F통계량
CART 지니 지수 분산 감소량
C4.5 엔트로피 지수  

 

'ADSP > 3강) 데이터 분석' 카테고리의 다른 글

[10] 모형평가  (0) 2020.02.17
[9] 앙상블 모형  (0) 2020.02.16
[7] 데이터마이닝  (0) 2020.02.14
[6] 시계열 예측  (0) 2020.02.13
[5] 기초 통계분석(2)  (0) 2020.02.12

1. 시계열

  • 시계열(Time Series) 데이터

    • 관측치가 시간적 순서를 가지게 됨

    • 일정 시점에 조사된 데이터는 횡단 자료라 함

      • ex) 소비자물가지수

    • 미래 값을 예측하는 것

    • 시계열 데이터의 특성을 파악 - 경향,주기,계절성,불규칙성

  • 정상성

    • 시계열의 수준과 분산에 체계적인 변화가 없고, 주기적 변동이 없다는 것 -> 미래는 확률적으로 과거와 동일하다는 것을 뜻함

    • 조건

      1. 평균값은 시간 t에 관계없이 일정하다.

      2. 분산값은 시간 t에 관계없이 일정하다

      3. 공분산은 시간 t에 의존하지 않고 오직 시차에만 의존한다.

  • 비정상시계열을 정상시계열로 전환하는 방법

    1. 시계열의 평균이 일정하지 않은 경우에는 원시계열의 차분하면 정상 시계열이 됌

    2. 계절성을 갖는 비정상시계열은 정상시계열로 바꿀 때 계절차분을 사용

    3. 분산이 일정하지 않는 경우에는 원계열에 자연로그를 취하면 정상시계열이 된다

  • 백색잡음 과정 : 시계열 et의 평균이 0 분산이 일정한 값 2σ이고 자기 공분산이 0 인 경우

  • 자기상관은 시점 t와 (t-1) 간의 상관관계를 의미하며 한동안 증가하거나 감소하는 경우 양의 자기상관이 존재

    • 시점마다 증감이 반복되는 경우 음의 자기상관

  • 시계열 모형

    • 자기회귀모형 : 자신의 과거 값을 사용 (Autoregressive)

      • 현시점의 시계열 자료에 몇 번째 전 자료까지 영향을 주는지 알아내는데 있음

      • 현시점의 자료에 과거 1시점 이전의 자료만 영향을 준다면, 이를 1차 자기회귀모형 ( AR(1) 모형 ) 이라함

      • Y_t = α_1Y_1 + ... α_pY_p + ε_t

      • 자기상관함수가 시차가 증가함에 따라 점차적으로 감소, 부분자기상관함수는 시차 이후 급격히 감소하여 절단된 형태를 취함

    • 이동평균모형 : 최근 데이터의 평균(혹은 중앙치)을 예측치로 사용하는 방법

      • Y_t = ε_t - β_1ε_t - ... - β_qε_(t-q)

    • 자기회귀누적이동 모형 (ARIMA)

      • 비정상시계열모형

        • 차분이나 변환을 통해 AR,MA,ARMA 모형으로 정상화할 수 있음

        • AR : 과거시점의 관측자료의 선형결합으로 표현하는 것 - 자기회귀

        • MR : 과거 시점의 백색잡음 선형결합으로 표현하는 것 - 이동평균

        • ARMA : AR,MR 모형을 둘다 합친 것 - 자기회귀이동평균

    • 분해시계열

      • 시계열에 영향을 주는 일반적인 요인을 시계열에서 분리해 분석하는 방법

        • 추세요인 : 자료가 어떤 특정한 형태를 취할 때

        • 계절요인 : 계절에 따라 고정된 주기에 따라 자료가 변화할 경우

        • 순환요인 : 알려지지 않은 주기를 가지고 자료가 변화할 때

        • 불규칙요인 : 위 세가지로 설명할 수 없을 때

      • decompose() - 시계열 자료를 4가지 요인으로 분해할 수 있음

      • diff() - 차분을 하는 함수

    • ARIMA 모델 적합 및 결정

      • acf() - 자기상관함수

      • pacf() - 부분자기상관함수

      • auto.arima() - 시계열 자료에 적절한 모형 제시

      • forecast() - arima 모형을 가지고 예측

 

'ADSP > 3강) 데이터 분석' 카테고리의 다른 글

[8] 신경망 모형  (0) 2020.02.15
[7] 데이터마이닝  (0) 2020.02.14
[5] 기초 통계분석(2)  (0) 2020.02.12
[4] 기초 통계분석  (0) 2020.02.08
[3] 통계분석  (0) 2020.02.07

1. 회귀분석(★)

  • 단수회귀와 중귀회분석의 개념

    • 회귀분석 : 변수와 변수 사이의 관계를 알아보기 위한 통계적 분석 방법, 독립변수의 값에 의하여 종속변수의 값을 예측하기 위함

      • 독립변수 : 종속변수에 영향을 미치는 변수

      • 종속변수 : 분석의 대상이 되는 변수

  • 선형회귀모형

    • X와 Y가 1차식으로 나타날 때 선형회귀모형이 됨, 전제조건이 있음

      1. 독립변수 X의 각 값에 대한 Y의 확률분포가 존재

      2. Y의 확률분포의 평균은 X값의 변함에 따라 일정한 추세를 따라 움직임

단순회귀모형 식

  • 단순회귀모형

    • Y_i : i 번째 종속변수의 값

    • X_i : i 번째 독립변수의 값

    • β_0 : 선형회귀식의 절편

    • β_1 : 선형회귀식의 기울기

    • ε_i : 오차항 , 독립저이며 N(0,δ^2)의 분포를 이룸

  • 회귀모형 대한 가정

    1. 선형성 - 독립변수의 변화에 따라 종속변수도 변화하는 선형(Linear)인 모형

    2. 독립성 - 잔차와 독립변수의 값이 서로 독립

    3. 등분산성 - 오차항들의 분포는 동일한 분산

    4. 비상관성 - 잔차들끼리 상관이 없음

    5. 정상성 - 잔차항이 정규분포를 이뤄야함

  • 회귀분석 모형에서 확인해야 할 사항

    • 모형이 통계적으로 유의미한가? -> F분포값유의확률(p-value)로 확인

    • 회귀계수들이 유의미한가? -> 회귀계수의 t값유의확률(p-value)로 확인

    • 모형이 얼마나 설명력을 갖는가? -> 결정 계수를 확인

    • 모형이 데이터를 잘 적합하고 있는가? -> 잔차통계량을 확인하고 회귀진단 실행

  • 모델 진단 그래프

    • Residuals vs Fitted : y축은 잔차. 선형 회귀에서 오차는 평균이 0 이고 분산이 일정한 정규분포를 가정 -> y값은 기울기가 0 인 직선이 이상적

    • Normal Q-Q : 잔차가 정규분포를 잘 따르고 있는지를 확인하는 그래프(잔차들이 선상에 있어야 이상적)

    • Scale-Location : y축은 표준화 잔차. 기울기 0이 이상적, 0에서 멀리 떨어진 값 : 이상치일 가능성 높음

    • Cook's Distance : 1값이 넘어가면 관측치를 영향점으로 판별

  • 다중공선성

    • 모형의 일부 예측변수가 다른 예측변수와 상관되어 있을 때 발생하는 조건

    • VIF 값이 4가 넘으면 다중공선성 존재

      • 해결방안 : 높은 상관관계가 있는 예측변수를 모형에서 제거 (R-Square 감소)

  • 최적 회귀방정식의 선택 : 설명변수의 선택

    • y에 영향을 미칠 수 있는 모든 설명변수 x들은 y의 값을 예측하는 데참여

    • 가능한 범위내에서 적은 수 의 설명변수를 포함시켜야함

  • 설명 변수를 선택하는 방법

    • 모든 가능한 조합의 회귀분석

      • AIC , BIC

        • 적합성을 측정해주는 지표. AIC,BIC 값이 작은 것이 좋음

    • 단계별 변수선택

      • 단계별 선택

        • 통계치에서 가장 도움이 안되는 변수를 삭제, 기준 통계치를 가장 개선시키는 변수 추가

      • 후진 제거법

        • 기준 통계치에서 가장 도움이 되지 않는 변수를 하나씩 제거

      • 전진 선택법

        • 절편만 있는 모델에서 기준 통계치를 많이 개선 시키는 변수를 차례로 추가

      • step() 함수로 수행

> x1<-c(7,1,11,11,7,11,3,1,2,21,1,11,10)
> x2<-c(26,29,56,31,52,55,71,31,54,47,40,66,68)
> x3<-c(6,15,8,8,6,9,17,22,18,4,23,9,8)
> x4<-c(60,52,20,47,33,22,6,44,22,26,34,12,12)
> y<-c(78.5,74.3,104.3,87.6,95.9,109.2,102.7,72.5,93.1,115.9,83.8,113.3,109.4)
> df<-data.frame(x1,x2,x3,x4,y)
####변수 설정####
> head(df)
  x1 x2 x3 x4     y
1  7 26  6 60  78.5
2  1 29 15 52  74.3
3 11 56  8 20 104.3
4 11 31  8 47  87.6
5  7 52  6 33  95.9
6 11 55  9 22 109.2
#### 후진제거법 ####
> a<-lm(y~x1+x2+x3+x4,data=df)
> a

Call:
lm(formula = y ~ x1 + x2 + x3 + x4, data = df)

Coefficients:
(Intercept)           x1           x2           x3           x4  
    62.4054       1.5511       0.5102       0.1019      -0.1441  

> summary(a)

Call:
lm(formula = y ~ x1 + x2 + x3 + x4, data = df)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1750 -1.6709  0.2508  1.3783  3.9254 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)  
(Intercept)  62.4054    70.0710   0.891   0.3991  
x1            1.5511     0.7448   2.083   0.0708 .
x2            0.5102     0.7238   0.705   0.5009  
x3            0.1019     0.7547   0.135   0.8959  
x4           -0.1441     0.7091  -0.203   0.8441  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.446 on 8 degrees of freedom
Multiple R-squared:  0.9824,	Adjusted R-squared:  0.9736 
F-statistic: 111.5 on 4 and 8 DF,  p-value: 4.756e-07
## Pr(>|t|) (유의확률(P-value))가 가장 높은 x3 제거
> a<-lm(y~x1+x2+x4,data=df)
> a

Call:
lm(formula = y ~ x1 + x2 + x4, data = df)

Coefficients:
(Intercept)           x1           x2           x4  
    71.6483       1.4519       0.4161      -0.2365  

> summary(a)

Call:
lm(formula = y ~ x1 + x2 + x4, data = df)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.0919 -1.8016  0.2562  1.2818  3.8982 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  71.6483    14.1424   5.066 0.000675 ***
x1            1.4519     0.1170  12.410 5.78e-07 ***
x2            0.4161     0.1856   2.242 0.051687 .  
x4           -0.2365     0.1733  -1.365 0.205395    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.309 on 9 degrees of freedom
Multiple R-squared:  0.9823,	Adjusted R-squared:  0.9764 
F-statistic: 166.8 on 3 and 9 DF,  p-value: 3.323e-08
## 유의확률이 가장 높은 x4 제거
> a<-lm(y~x1+x2,data=df)
> summary(a)

Call:
lm(formula = y ~ x1 + x2, data = df)

Residuals:
   Min     1Q Median     3Q    Max 
-2.893 -1.574 -1.302  1.363  4.048 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 52.57735    2.28617   23.00 5.46e-10 ***
x1           1.46831    0.12130   12.11 2.69e-07 ***
x2           0.66225    0.04585   14.44 5.03e-08 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.406 on 10 degrees of freedom
Multiple R-squared:  0.9787,	Adjusted R-squared:  0.9744 
F-statistic: 229.5 on 2 and 10 DF,  p-value: 4.407e-09

####전진 선택법####
> step(lm(y~1,df),scope=list(lower=~1,upper=~x1+x2+x3+x4),direction="forward")
Start:  AIC=71.44
y ~ 1

       Df Sum of Sq     RSS    AIC
+ x4    1   1831.90  883.87 58.852
+ x2    1   1809.43  906.34 59.178
+ x1    1   1450.08 1265.69 63.519
+ x3    1    776.36 1939.40 69.067
<none>              2715.76 71.444

Step:  AIC=58.85
y ~ x4

       Df Sum of Sq    RSS    AIC
+ x1    1    809.10  74.76 28.742
+ x3    1    708.13 175.74 39.853
<none>              883.87 58.852
+ x2    1     14.99 868.88 60.629

Step:  AIC=28.74
y ~ x4 + x1

       Df Sum of Sq    RSS    AIC
+ x2    1    26.789 47.973 24.974
+ x3    1    23.926 50.836 25.728
<none>              74.762 28.742

Step:  AIC=24.97
y ~ x4 + x1 + x2

       Df Sum of Sq    RSS    AIC
<none>              47.973 24.974
+ x3    1   0.10909 47.864 26.944

Call:
lm(formula = y ~ x4 + x1 + x2, data = df)

Coefficients:
(Intercept)           x4           x1           x2  
    71.6483      -0.2365       1.4519       0.4161  
  • AIC : Step() 함수이용

  • BIC : leaps 패키지의 redsubsets() 함수 이용

 

  • 정규화 선형회귀

    • 선형회귀계수에 대한 제약 조건을 추가 ( 과적합을 막는 방법 )

      • 딥러닝에서의 과적합 막는 방법

        • 더 많은 데이터 사용

        • Cross Validation

        • 정규화(Regularization) - Ridge 회귀모형, Lasso 회귀모형 , Elastic Net 회귀모형

    • Lidge (릿지) 회귀

      • 평균제곱오차(MSE)를 최소화하면서 회귀계수 벡터 β 의 L2 norm 을 최소화 하는 기법

      • cost = ∑(e_i)^2 + λ∑(ω_i)^2

      • λ는 기존 잔차 제곱합과 추가적 제약 조건의 비중을 조절하기위한 하이퍼모수

        • 클수록 정규화 정도가 커지고 가중치 값들이 작아짐 -> 0이 되면 선형회귀모형

      • Norm은 벡터의 길이 혹은 크기를 측정하는 방법(함수)

        • L1 Norm(라소회귀) - 각 요소 절댓값 크기의 합

        • L2 Norm(릿지회귀) - 해당 차원의 좌표평면에서 원점에서 백터 좌표까지의 최단 거리

    • Lasso (라소) 회귀

      • L1 Norm을 제약함 ( 가중치의 절댓값의 합을 최소화 )

      • cost = ∑(e_i)^2 + λ∑|ω_i|

    • Elastic Net (엘라스틱넷) 회귀 모형

      • 제약식에 Norm 모두를 쓰는 기법

'ADSP > 3강) 데이터 분석' 카테고리의 다른 글

[6] 시계열 예측  (0) 2020.02.13
[5] 기초 통계분석(2)  (0) 2020.02.12
[3] 통계분석  (0) 2020.02.07
[2] 데이터 마트  (0) 2020.02.06
[1] R 기초  (0) 2020.02.06

1. 분석 기획 방향성 도출

  • 분석 기획의 특징

    • 분석을 수행할 과제의 정의 및 의도했던 결과를 도출할 수 있도록 이를 적절하게 관리할 수 있는 방안을 사전에 계획 하는 작업

  • 데이터 사이언스 역량

데이터 사이언스 역량

  • 분석 주제 유형
    1. Optimazation(최적화) - 분석 대상 및 분석 방법을 이해

    2. Solution(솔루션) - 분석 과제는 수행, 분석 방법을 알지 못할 때 수행

    3. Insight(통찰) - 분석 대상이 불분명, 분석 방법을 알고 있을 때 도출

    4. Discovery(발견) - 분석 대상, 방법 모두 모를 때 분석 대상 자체를 새롭게 도출

  분석 대상
분석 방법   Known Unknown
Known 최적화(Optimazation) 통찰(Insight)
Unknown 솔루션(Solution) 발견(Discovery)
  • 목표 시점별 분석 기획 방안

    • 과제 중심적인 접근 방식

      • 1차목표 - Speed & Test

      • 과제의 유형 - Quick - Win (과제를 단기로 달성, 추진)

      • 접근 방식 - Problem Solving

    • 장기적인 마스터플랜 방식

      • 1차목표 - Accuracy & Deploy

      • 과제의 유형 - Long term view

      • 접근 방식 - Problem Definition

  • 분석 기획 시 고려 사항

    1. 가용한 데이터 - 분석을 위한 데이터 확보가 필수적임

    2. 적절한 유스케이스 - 유사 분석 시나리오 및 솔루션 있다면 최대한 활용

    3. 장애 요소들에 대한 사전 계획 수립 필요 - 충분하고 계속적인 교육 및 활용 방안 등의 변화관리가 고려

2. 분석 방법론

일반적으로 방법론은 계층적 프로세스 모델의 형태로 구성

  • KDD 분석 방법론

    • 데이터 마이닝 프로세스

    • 분석 절차

      1. 분석대상 이해와 프로젝트 목표 정확하게 설정

      2. 데이터셋 선택(Selection)

      3. 데이터 전처리(Preprocessing) - 잡음(Noise) , 이상값(Outlier) , 결측치 (Missing value) 식별, 필요시 제거

      4. 데이터 변환 (Transformation) - 데이터 마이닝을 효율적으로 적용할 수 있도록 데이터 셋 변경

      5. 데이터 마이닝 (Data Mining) - 분석 목적에 맞는 기법 ,알고리즘 선택 > 패턴발견 및 데이터 분류 또는 예측

      6. 마이닝 결과 평가(Interpretation/Evaluation) - 분석 결과에 대한 해석과 평가 그리고 활용

    • Selection -> Preprocessing -> Transformation -> Data Mining -> Interpretation / Evaluation

  • CRISP-DM 분석 방법론

    • 계층적 프로세스 모델 ( 4개 레벨로 구성 , 단계 간 피드백 )

    • 분석 절차

      1. 업무 이해 - 도메인 지식을 데이터 분석을 위한 문제정의로 변경

      2. 데이터 이해 - 데이터 수집,데이터 속성을 이해, 데이터 품질 문제점 식별, 숨겨져 있는 인사이트 발견

        • 초기 데이터 수집, 데이터 기술 분석, 데이터 탐색, 데이터 품질 확인

      3. 데이터 준비 - 분석 기법에 적합한 데이터셋을 편성

        • 분석용 데이터셋 선택, 데이터 정제, 데이터 통합, 데이터 포맷팅

      4. 모델링 - 모델링 기법과 알고리즘 선택, 모델링 과정에 사용되는 파라미터를 최적화, 모델 과적합 해결 

        • 모델 과적합 - 전체 모집단은 가지고 있지않고 훈련데이터 집합만 가지고 있는 특징까지 기계학습 해버려서 불필요한 것 까지 배우는 것

      5. 평가 - 분석 결과 평가, 모델링 과정 평가, 모델 적용성 평가

      6. 전개 - 전개 계획 수립, 모니터링과 유지보수 계획 수립, 프로젝트 종료 보고서 작성, 프로젝트 리뷰

    • KDD와 CRISP-DM 비교

      KDD

      CRSIP - DM

      분석 대상 비즈니스 이해

      업무 이해

      데이터셋 선택 

      데이터 이해

      데이터 전처리

      데이터 변환

      데이터 준비

      데이터 마이닝

      모델링

      데이터 마이닝 결과 평가

      평가

      데이터 마이닝 활용

      전개

    • 빅데이터 분석 방법론

      1. 분석 기획 - 문제점 인식 , 분석 계획 및 프로젝트 수행계획 수립

        • SOW ( Statement of Work )를 작성

        • 프로젝트 목표 및 KPI ( 핵심성과지표 ) ,목표수준 구체화

        • WBS (전체 업무를 분류하여 구성요소로 만든 후 각 요소를 평가하고 일정별로 계획하며 그것을 완수 할 수 있는 사람에게 할당해주는 역할) 작성

      2. 데이터 준비 - 데이터 분석에 필요한 원천 데이터를 정의하고 준비 

        1. 필요 데이터 정의

          • ERD(데이터들의 관계를 표현한 도식화된 그림), 메타데이터 정의서 등, 데이터 정의서를 작성

        2. 데이터 스토어 설계 

          • 정형 데이터 스토어 설계 - 일반적으로 RDBMS를 사용

          • 비정형 데이터 스토어 설계 - NoSQL, 하둡을 사용 

        3. 데이터 수집 및 정합성 점검

          • API , ETL , 크롤링 등을 이용해 데이터를 수집, 스토어에 저장

            • ETL - 데이터 추출, 변환 , 적재의 약자. BI 구현을 위한 기본 구성 요소 가운데 하나

            • API - 응용 프로그램에서 사용 할 수 있도록  운영체제나 프로그래밍 언어가 기능을 제어할 수 있게 만든 인터페이스

            • 크롤링 - 웹페이지를 그대로 가져와 데이터를 추출하는 것

      3. 데이터 분석 - 데이터셋 편성, 분석 기법과 알고리즘을 이용

        1. 분석용 데이터 준비

        2. 텍스트 분석

          • 텍스트로부터 분석 목적에 맞는 적절한 모델을 구축

        3. 탐색적 분석(EDA)

          • 다양한 관점별로 기초 통계량을 산출

          • 데이터 특성 및 데이터 통계적 특성을 이해

        4. 모델링 - 데이터 분류, 예측, 군집 등의 기능을 수행하는 모델을 만듦

          1. 데이터 분할 - 훈련용과 테스트용으로 분할 ( 과적합 방지 )

          2. 데이터 모델링 - 모델을 만들어 가동 중인 운영 시스템에 적용

          3. 모델 적용 및 운영 방안 - 모델에 대한 상세한 알고리즘 작성

        5. 모델 평가 및 검증

      4. 시스템 구현

        • 설계 및 구현

      5. 평가 및 전개

        1. 모델 발전 계획 수립 - 모델의 계속성을 확보

        2. 프로젝트 평가 보고

  1. 데이터의 정의
    • 데이터는 '객관적 사실' 이라는 존재적 특성을 가짐
      • 개별데이터 자체로는 의미가 중요하지 않은 객관적인 사실
    • 추론, 예측, 전망, 추정을 위한 근거로 기능하는 당위적 특성을 가짐
  2. 데이터의 유형
정성적 데이터 언어, 문자 등 비정형 데이터
정량적 데이터 수치, 도형, 기호 등 정형 데이터
  • '정량적'자료를 수치화하는 것
    • 과거의 수치를 토대로 분석
  • '정성적'자료의 성질,특징을 자세히 풀어쓰는 방식 (ex. 만족도, 선호도...그 외 숫자로 환산불가능 한 것
    • 응답자의 주관적인 견해와 판단을 근거로 분석

3. 지식경영 핵심 이슈

  • 암묵지
    • 학습과 체험을 통하여 개인에게 습득 (ex. 관찰, 현장작업 등등.. 경험)
  • 형식지
    • 암묵지를 문서 , 매뉴얼 처럼 외부로 표출 (ex. 책 , 설계도 등등.. 체계화된 자료)

  • 경험을 공유하여 암묵지를 체득하는 공동화 
  • 구체화된 암묵지를 명시지로 표출화
  • 표출된 명시지를 쳬게화하는 연결화
  • 표출화와 연결화로 공유된 형식지를 습득하는 내면화

4. 데이터와 정보의 관계

  • DIKW 피라미드

  • Data -> Information -> Knowledge -> Wisdom
    • Data : 다른 데이터와 상관관계가 없는 순수한 수치나 기호
    • Information : 상관관계를 이해, 패턴을 인식하고 의미를 부여
    • Knowledge : 상호 연결된 정보 패턴을 이해하여 이를 토대로 예측한 결과물
    • Wisdom : 근본 원리에 대한 깊은 이해를 바탕으로 도출되는 아이디어

Data를 가지고 패턴인식 후 그를 토대로 결과물을 만들어냄 -> 그 결과물을 가지고 아이디어를 도출

+ Recent posts