반응형

Basis(기저)

  • 벡터 공간 𝑽의 기저는 𝑽를 채울 수 있는 선형독립인 벡터들(Span의 역개념)
  • 좌표평면(2차원)을 구성하는 기저벡터는 2개(차원 = 기저 벡터의 개수)

 

Rank

  • 행렬의 열을 이루는 벡터로 만들 수 있는 공간(span)의 차원
  • 선형 독립인 행 또는 열의 최대 개수
  • 행 또는 열을 이루는 벡터들이 선형관계

 

Vector Transformation

  • 데이터를 변환하기 위한 단계
  • 벡터의 변환은 벡터의 행렬 𝑻의 곱으로 이루어짐
  • 임의의 벡터 [𝒙₁, 𝒙₂]는 함수(행렬) 𝑓에 의해 [𝒙₁', 𝒙₂']로 변환

 

Eigenstuff

  • Eigenvector(고유벡터)
    • 주어진 transformation에 의해 크기만 변하고 방향은 변하지 않는 벡터
    • Eigenvalue와 한 쌍
    • 행렬이 벡터의 변화에 작용하는 축의 방향을 나타냄
    • 공분산 행렬의 고유벡터는 데이터가 어떤 방향으로 분산되어 있는지 알려줌
  • Eigenvalue(고유값)
    • Eigenvector의 변화한 크기(얼마나 벡터 공간이 늘려지는가를 의미)
    • Eigenvalue가 큰 순서대로 Eigenvector 정렬 -> 중요한 순서대로 주성분을 구성
    • 행렬의 column 수만큼 존재
    • 𝑻(𝑣) = 𝜆𝑣 (𝜆 : eigenvalue, 𝑣 : eigenvector)

 

분산(Variance)

  • 데이터가 흩어진 정도를 하나의 값으로 나타낸 것(편차 제곱의 평균)
  • 데이터가 서로 멀리 떨어져 있을수록 분산의 값이 커짐

 

표준편차(Standard Deviation)

  • 분산의 스케일을 조정하는 효과(분산의 제곱근)

 

공분산(Covariance)

  • 두 변수에 대해 한 변수가 변화할 때, 다른 변수가 어떤 연관성을 갖고 변하는지를 나타내는 값
  • 두 변수의 연관성이 클수록 공분산 값도 커짐
  • 양수, 음수 모두 가질 수 있으며, 데이터의 스케일에 큰 영향을 받음
  • 분산-공분산 행렬(variance-covariance matrix)
    • 모든 변수에 대해 분산과 공분산 값을 나타내는 정사각행렬
    • 주 대각선 성분은 자기 자신의 분산값을나타냄
    • 주 대각선 이외의 성분은 가능한 두 변수의 공분산 값을 나타냄

 

상관계수(Correlation Coefficient)

  • 공분산을 두 변수의 표준편차로 나눠준 값 -> 공분산의 스케일을 조정하는 효과
  • 공분산과 상관계수의 차이 : scaling
    • 연관성이 유사해도 변수들의 스케일이 크면 공분산 값이 큼
    • 변수의 스케일에 영향을 받지 않음
  • -1 ~ 1 사이의 값
    • 상관계수 1 = 양의 선형관계
    • 상관계수 -1 = 음의 선형관계

 

 

** 수정이 필요하다면 댓글을 부탁드립니다. 

반응형
반응형

스칼라(Scalar)

  • 하나의 숫자(실수) - 양수 & 음수
  • 변수에 저장하여 표기 가능
  • 벡터 혹은 매트릭스에 곱하는 경우, 해당 값을 각 성분에 곱한 값으로 계산

 

벡터(Vector)

  • 순서를 갖는 1차원 형태의 배열로 list 또는 array로 나타남
  • 공간에서의 한 점으로 원점으로부터 상대적 위치를 표현
  • 성분의 개수 = 벡터의 차원
  • 기본적으로는 열(column) 벡터의 형태
  • 벡터의 컴포넌트 순서가 다른 경우, 두 벡터는 다른 벡터
  • 벡터의 크기(Norm)
    • 원점으로부터의 거리(양수)
    • Norm = Length = Magnitude
    • L₁ = ∑|xi| ( Robust 학습 / Lasso 회귀 )
    • L₂ = √∑|xi|² ( Laplace 근사 / Ridge 회귀 )
  • 단위 벡터(Unit Vector)
    • 길이가 1인 벡터(단위 unit = 1)
    • 모든 벡터는 단위 벡터의 선형 결합으로 표기 가능
    • 선형 결합(Linear Combination) : 벡터의 스칼라 곱과 합으로 나타낸 것
      v = [2, 5] = 2[1, 0] + 5[0, 1] = 2i + 5j
  • 벡터의 내적(Dot Product)
    • 정사영(orthogonal projection)된 벡터의 길이(두 데이터의 유사도 확인)
      -> 정사영의 길이를 벡터 y의 길이 ||y||(L2norm)만큼 조정한 값
    • 두 벡터에 대해 서로 대응하는 각각의 성분을 곱한 뒤 모두 합하여 구함 -> 두 벡터의 차원이 같아야 함
    • 벡터를 내적한 값은 스칼라
      v₁ = [a₁, a₂, a₃, ... ]     //   v₂ = [b₁, b₂, b₃, ... ]
      v₁∙v₂ = a₁b₁ + a₂b₂ + a₃b₃ + ...
    • 내적 교환 법칙 및 분배 법칙 적용

 

Matrix

  • 수 또는 변수를 ()안에 행과 열로 배열한 것 -> DataFrame과 유사한 형태
  • 2차원 형태의 array 또는 list로 나타냄 -> 벡터들로 구성
  • 행과 열의 개수는 매트릭스의 차원을 의미
  • 두 매트릭스가 일치하려면 차원과 성분이 동일해야 함
  • 행렬의 𝓧𝒾𝒿는 𝒾번째 데이터의 𝒿번째 변수의 값
  • 벡터공간에서 사용되는 연산자(operator)
    -> 행렬곱을 통해 벡터를 다른 차원의 공간으로 보낼 수 있음
    -> 행렬곱을 통해 패턴추출과 데이터 압축이 가능

 

행렬의 연산

  • 행렬의 전치(Transpose)
    > 행과 열을 바꾸어 나타내는 것(𝐀ᵀ) 
    > 전치의 전치는 자기자신
  • 행렬곱(Matrix Multiplication)
    > 두 행렬의 차원이 M * L, L * N이라면 행렬끼리 곱할 수 있음 -> M * N(교환법칙 성립 X)
  • 단위행렬(Identity Matrix)
    > 대각행렬 중에서 대각선 성분이 모두 1인 매트릭스
    > 𝐀𝑰 = 𝐀
  • 역행렬(Inverse)
    > 임의의 정사각행렬에 대해 곱했을 때, 단위 행렬이 되도록 하는 행렬
    > 𝐀𝐀ᵀ = 𝑰
  • 유사역행렬(Pseudo-inverse) 또는 무어-펜로즈(Moore-Penrose) 역행렬
    > 역행렬은 행과 열 숫자가 같고 행렬식이 0이 아닌 경우에만 가능하기 때문에 역행렬을 계산할 수 없는 경우에 유사역행렬 또는 무어-펜로즈 역행렬 A⁺ 사용
  • 행렬식(Determinant)
    > 정사각 행렬 𝐀에 대해 det(𝐀) 또는 |𝐀|로 표기(정사각 행렬에서만 정의)
    > 주어진 행렬을 숫자 1개로 표현하겠다 -> Determinant
    > 행렬의 행과 열이 선형관계일 경우, det(𝐀) = 0

 

Span

  • 주어진 두 벡터의 조합으로 만들 수 있는 모든 가능한 벡터의 집합
  • 선형관계의 벡터(Linearly Dependent Vectors)
    • 두 개의 벡터가 선형관계 : 벡터들이 같은 선상에 있음
    • 두 벡터를 조합 -> 선 외부의 새로운 벡터 생성 X
    • 두 개 이상의 벡터가 선형 종속 -> 벡터 중 적어도 하나는 다른 벡터의 선형조합으로 나타낼 수 있음
    • 선형관계 벡터들이 만들어 내는 span -> 벡터의 수보다 적은 차원을 갖음
  • 선형관계가 없는 벡터(Linearly Independent Vectors)
    • 두 개의 벡터가 선형 독립 : 벡터들이 같은 선상에 있지 않음
    • 선형 독립인 벡터가 만들어내는 Span -> 차원의 수 = 벡터의 수

 

 

 

** 수정이 필요하다면 댓글을 부탁드립니다. 

반응형
반응형

T검정

  • 단일 표본 검정(One Sample T-Test)
    • 하나의 집단에 대한 표본평균과 새롭게 수집된 데이터의 예측된 평균이 같은지 여부를 검정
    • 하나의 데이터 집단 평균 vs. 비교하고자 하는 관측치 -> 차이 검정
    • 데이터 집단 평균과 관측치의 거리가 멀수록 p-value 값이 떨어짐
  • 독립 표본 검정(Independent Samples T-Test)
    • 정규분포를 따르며, 분산이 동일한 두 데이터 집단을 비교하여 검정
    • 귀무가설 : 두 집단의 모평균은 동일
  • 대응 표본 검정(Paired Samples T-Test)
    • 처리 전후를 각각의 모집단으로 판단하여 동일한 관찰 대상으로부터 1:1 대응시킨 두 집단의 표본인 대응표본을 통한 검정으로 관찰 전후를 비교하여 영향을 미친 정도를 밝히는데 사용
    • 등분산 검정을 할 필요 없음
    • 두 집단에 들어있는 사람이 같음
    • 귀무가설 : 두 집단의 모평균은 동일
      -> before & after 효과를 알아보기 쉬움
  • Student T-Test
    • 표본편차가 알려지지 않았지만, 정규분포를 따르는 모집단에서 추출한 표본의 평균값에 대한 가설 검정 방법
    • 표준편차 = 데이터가 평균값을 기준으로 평균적으로 퍼진 정도
    • 통계적으로 차이가 얼마나 유의미한지 검증
  • T-value
    •  = 표본 평균값의 차이 / 차이에 대한 불확실도
    • 표본 그룹의 평균값들은 오차를 수반(추정치이기 때문)
      -> 집단 간의 차이와 차이를 정확하게 판단하기 위해 Scaling을 해주는 과정(normalize)
    • t-value가 클수록 두 집단의 평균 차이가 큼

 

Z-Test

  • 분산(또는 표준편차)를 이미 알고 있는 모집단 분포의 평균과 표본의 평균을 테스트
  • 표본정규분포 기반 ↔︎ t-test의 경우, t-통계 기반
  • 통상적으로는 sample size ≥ 30
  • z-score : 평균값과 얼마나 거리가 먼지 계산해주는 통계적인 예측값
  • z-distribution : 평균이 0, 표준편차가 1인 표준정규분포

 

AB 테스트

  • 전체 사용자를 대조군과 실험군으로 나누어 변수의 효과를 비교하는 방법론
    -> 실험을 통한 데이터 중심의 의사결정
  • AB테스트를 위한 사전 체크리스트
    • 충분한 Sample Size
      > AB테스트는 통계적 가설검정 -> 충분한 데이터를 통해 결과에 대한 신뢰도 향상
      > MED(Minimum Detectable Effect) : 최소한의 검출 가능 효과
            -> 현 전환율에서 어느정도 차이가 발생하는 시점에서 테스트 결과를 판단할 것인지
    • 중복 데이터 삭제 -> 정확한 결과 도출
    • 테스트 진행기간(최소 7일 ~ 최대 30일)
      > 통계적 측면 : 기간이 늘어나면 샘플사이즈가 증가해 P-value가 감소하여 오류 발생 가능
      > 비즈니스 측면
  • 대조군(Control Group)과 실험군(Experiment Group)
    • 대조군과 실험군을 나누는 방식
      > 노출 분산 방식 : 일정확률로 A/B 그룹을 나눔 -> 알고리즘 테스트에서 많이 사용
      > 사용자 분산 방식 : ID값에 따라 그룹을 나눔 -> UI 테스트에 적합
      > 시간 분할 방식 : 노출, 사용자 분산방식이 불가능할 때, 대안으로 사용
    • 나머지 조건은 동일하게 고정
      > 외부 요인에 좌우되지 않게 조정
      > 일반적으로는 50 : 50, 60 : 40의 비율로 조정
    • 대조군과 시험군의 비율이 다를 경우
      > 데이터의 분포, sample size를 고려해 비율을 조정
      > A, B에 할당된 트래픽을 확인하여 문제가 있다면 초기에 대응
  • AB테스트에 영향을 주는 효과
    • Change Aversion : 변화의 종류와는 상관없이 거부감 + 반감
      >> 그냥 변화를 싫어함(=Default Effect)
    • Novelty Effect : 변화라면 다 좋아함
      >> 변화의 효과를 생각하지 않고, 새로운 것이라면 무작정 좋아함
      (신규 기능 및 기술에 대한 관심의 증가로 인해 performance가 초기에 개선되는 경향 존재)
    • 사용자의 행동 패턴이 안정화되기 때문에 두 효과가 긴 시간동안 지속 X
  • 테스트 결과 확인을 위해 p-value, binomial distribution, z-test 이용

 

 

** 수정이 필요하다면 댓글을 부탁드립니다. 

반응형
반응형

가설검정

  • 관심이 있는 특정 모집단의 특성에 대한 가설을 세우고 이 가설을 샘플데이터를 사용하여 검토하는 추론의 과정
  • 알고자 하는 질문을 2개의 대립되는 가설을 통해 참과 거짓을 수집하여 데이터를 통해 판단
  • 모집단에 대한 가설이 통계적으로 유의한지 표본을 통해 알아보는 것
귀무가설(Ho) Null Hypothesis 디폴트 가설로 특별한 사유가 없다면 받아들여지는 가설
대립가설(H1, Ha) Alternative Hypothesis 귀무가설이 충분한 증거로 기각되었을 때, 채택되는 가설
검정통계량(X) Test Statistics 샘플데이터에서의 통계량
귀무분포 Null Distribution 귀무가설을 가정했을 때의 확률분포
유의확률 P-value 귀무가설을 지지하는 정도
  • 귀무가설(영가설)
    • 데이터를 수집하기 전, 사실이라고 믿는 가설
    • 수학적으로 =(등호)를 포함
  • 대립가설
    • 귀무가설과 대립되는 가설로 우리가 사실이라고 증명하고자 하는 가설
    • 수학적으로는 =(등호)를 포함하지 않음
  • 귀무가설과 대립가설은 대립적이어야 하며, 겹쳐서는 안됨

 

가설 세우기

  • 단측 검정(one-sided test)
    • 왼쪽    H0 : 𝝁 < 𝝁0
    • 오른쪽 H1 : 𝝁 > 𝝁0
  • 양측 검정(two-sided test)
    • H0 : 𝝁 == 𝝁0
    • H1 : 𝝁 != 𝝁0
  • 1종 오류와 2종 오류
    • 1종 오류(False Positive)
      • 귀무가설이 참인데 기각
      • alpha 또는 유의수준
      • 통계적으로 유의미하다고 잘못 결론
    • 2종 오류(False Negative)
      • 귀무가설이 거짓인데 기각 X
      • beta
  귀무가설 기각 귀무가설 기각 X
귀무가설 참 1종 오류 옳은 판단
귀무가설 거짓 옳은 판단 2종 오류
  • 유의수준
    • 귀무가설이 참인데도 불구하고 기각할 확률
    • 0.05보다 작으면 귀무가설을 잘못 기각할 가능성이 5% 미만 
      -> 귀무가설을 기각할 충분한 증거를 확보했다는 의미

 

검정 방법론

  1. 신뢰구간 확인
    • 샘플데이터를 모집단으로 가정
    • 반복을 통해 샘플 추출 후 평균을 계산
    • 평균의 표본 분포를 시뮬레이트
    • 95% 신뢰구간 확인
    • 귀무가설이 표본분포의 어디에 해당하는지 확인
    • 귀무가설의 채택 및 기각 결정
  2. P-value 확인
    • 귀무가설이 맞다는 전제 하에, 통계값이 실제로 관측된 값(샘플의 통계치)이상일 확률(유의확률)
      a. 샘플데이터로 평균의 표본분포를 시뮬레이트한 뒤, 분포의 표준편차를 변수에 저장
      b. 귀무가설과 대립가설의 가장 근접한 값과 변수에 저장한 표준편차를 이용하여 귀무분포를 시뮬레이트
      c. 시뮬레이트한 귀무분포에 샘플데이터의 평균값이 어디에 있는지 확인
      d. 귀무분포에 샘플데이터의 평균값보다 큰 면적을 확인
    • p-value(유의확률) < 0.05(유의수준)
      > 귀무가설을 기각할 통계적 유의성이 있다(통계적으로 유의미하다)
      > 귀무가설을 기각했을 때, 결정이 잘못될 확률이 5%보다 작음

 

 

** 수정이 필요하다면 댓글을 부탁드립니다. 

반응형
반응형

베이지안 정리(Bayesian Theroem)

  • 사전확률(Prior Probability) -> 테스트를 통한 증거 획득 -> 사후확률(Posterior Probability)
    -> Posterior Probability = Prior Probability * Evidence
  • 하나의 사건이 있다면 이에 영향을 미치는 여러 조건들에 대한 정보에서 확률을 추론하는 것
  • 가능도(likelihood)
    > 사건 A가 발생할 경우, 사건 B의 확률
    > 사건이 일어났다는 가정 하에, 새로 가지게 되는 자료가 관측될 확률(=데이터)
  • 정규화상수(Normalizing Constant) : 확률의 크기 조정
  • 공식
    P(A|B) = P(A⋂B) / P(B) = P(B|A)P(A) / P(B)
    P(B) = 사전확률, P(A|B) = 사후확률
  • 베이지안 업데이팅
    > 새로운 데이터를 통해 사후확률이 사전확률이 되고, 다시 베이지안 정리를 사용 가능
    > 지속적인 베이지안 업데이팅을 통해 분석의 신뢰성 확보 가능
  • 이유불충분의 원리로 5:5의 확률을 가정 -> 주관적 데이터의 경우, 명확한 척도 정립이 필요

 

Bootstrapping 테크닉

  • Bootstap : 중복추출을 허용하여 원하는 개수의 데이터를 추출하는 것(resampling)
  • 샘플을 모집단이라 가정한 후, 여기서 다시 샘플을 추출하여 샘플들의 평균의 분포를 확인
  • 구현방법 
    > for loop를 사용하여 n번 iterations 돌림
    > 각 iteration마다 random.choice 메서드를 이용하여 샘플 추출
  • 장점
    > 가지고 있는 데이터를 통해 모집단의 모수를 이해, 추정 가능
    > 부트스트랩 테크닉을 이용하여 표본분포를 simulate할 때 큰 수의 법칙 적용 가능
  • 큰 수의 법칙(Law of Large Numbers)
    > 샘플 사이즈가 커질수록 샘플의 통계치는 모집단의 모수에 가까워짐
    > 추론한 샘플의 사이즈가 클수록 모집단의 평균을 측정하기 좋음

 

중심 극한 정리(Central Limit Theorem)

  • 모집단의 분포에 상관없이 임의의 분포에서 추출된 표본들의 평균 분포는 정규분포를 이룸
  • 표본을 추출할 때, 충분한 샘플 사이즈의 추출이 필요(일반적으로는 30 이상)
  • 샘플사이즈가 클수록 분산이 작아짐
  • 표본 평균의 분포는 표본의 크기에 따라 달라짐
  • 모집단의 분포와 상관없이, 모집단의 모수를 추정할 수 있는 확률적 근거 제시
  • 비교적 적은 수의 샘플로 특정 사건(수집한 표본의 평균)이 일어날 확률값 계산 가능
    >> 수집한 표본의 통계량을 이용해 모집단의 모수를 추정할 수 있는 확률적 근거
  • 큰 수의 법칙 vs. 중심극한정리(상보적 관계)
    > 큰 수의 법칙 : 샘플사이즈가 커질수록 표본평균의 평균이 모수에 가까워짐
    > 중심극한정리 : 샘플사이즈가 커질수록 표본평균의 분포가 정규분포를 이룸(모양)

 

신뢰구간(Confidence Interval)

  • 모수를 포함하고 있는 구간
  • 모평균 값의 범위를 제공(표본 데이터의 분포를 나타내지 않음)
  • 신뢰구간으로부터 모집단에 대한 타당한 추정치가 주어짐
    (표본집단의 새로운 값들에 대해 추정하지는 않음)
  • 신뢰도가 증가하면(95% -> 99%) 신뢰구간은 더 넓어지며 오차범위는 증가
  • 모수의 값을 특정 값으로 추정 -> 불확실성 초래
    > 모수의 평균을 알 수 없기 때문
    > 모수가 존재할 가능성이 높은 구간(신뢰구간)을 확률(신뢰수준)과 함께 제공
         -> 불확실성은 줄이고, 모수의 신뢰성을 가늠할 수 있음

 

정규성 가정

  • 정규성 가정은 분석하려는 데이터가 정규성을 가져야 일반적인 분석이 가능
  • 통계적 검정, 회귀분석을 실행하기 전에 데이터가 정규분포를 따르는지 확인
  • 가정을 통해 확률분포를 이용하여 통계치 이용 가능
  • 모수통계는 정규성을 만족하지 못할 경우, 분석 결과에 대한 심각한 오류를 발생시킬 수 있음

 

 

** 수정이 필요하다면 댓글을 부탁드립니다. 

반응형
반응형

기술 통계와 추리 통계

모집단 population 정보를 얻고자 하는 전체 집합
표본 sample 모집단으로부터 추출된 모집단의 부분 집합
모수 parameter 모집단의 특성으로 불변
통계치 statistics 해당 모집단에서 추출한 표본에서의 특성으로 어떻게 추출하느냐에 따라 값이 변함
-> 표본을 추출해서 통계량을 바탕으로 모집단의 모수를 추정
기술통계 descriptive
statistics
우리가 수집한 데이터를 요약, 묘사 그리고 설명하는 통계기법
추리통계 inferential
statistics
수집한 데이터를 바탕으로 모집단에 대해 추론하는 통계기법
** 표본의 통계량 -> 모집단의 특성 추리 -> 표본의 특성 일반화

 

확률 분포

  • 전체 확률의 법칙
    : 사건에 의해 발생한 모든 잠재적 결과들이 나올 확률의 합은 1
    P(A) = 1 - P(A)
  • 정규분포
    : 평균을 중심으로 좌우 대칭인 종 모양이며, 평균과 표준편차에 따라 곡선 형태가 달라짐
    > T-분포 : 모집단이 정규분포를 따를 때, 표본 평균을 통해서 모평균을 추측하기 위한 분포
  • 이항분포(Binomial Distribution)
    : 2가지의 옵션을 가지는 사건의 모든 잠재적 경우에 대한 확률을 나타내는 분포
    > 베르누이 분포 : 결과가 두 가지 중 하나로 나오는 시행(=베르누이 시행)을 한 번 진행했을 때의 확률 변수의 분포
    > 결과가 binary한 사건의 모든 잠재적 경우의 수와 이에 대한 확률을 보여주며, 데이터 분석에서 소비자의 행동 패턴을 모델링하는데 많이 이용
  • 표본분포(Sampling Distribution)
    : 모집단에서 랜덤으로 복원추출한 샘플의 통계량의 확률분포
    > 중요성
      - 모집단의 모든 데이터를 가질 수 없기 때문에
      - 한정적인 데이터를 이용해 모수를 추론할 수 있기 때문에
    > 모집단의 분산 = 모집단의 평균 * ( 1 - 모집단의 평균 )
    > 표본분산의 분산 = 모집단의 분산 / 샘플 사이즈
  • 베타분포(Beta Distribution)
    > 확률에 대한 확률 분포
    > 성공(𝛂-1), 실패(𝛃-1) 횟수가 주어짐
    > 성공확률이 확률변서(x 축이 0 ~ 1 사이의 연속적인 값을 가짐)
  • 균일 분포 : 특정 구간 내에서 분포가 균등한 확률 분포
  • 포아송분포 : 어떤 공간이나 시간에서 관심있는 사건이 얼마나 발생할지 표현하는 확률분포

 

조건부 확률

  • 정의 : 어떠한 사건의 결과에 의해 영향을 받는 한 사건의 결과에 대한 확률
  • 서로 관련되어 있는 사건에서 사용
  • 공식
    P(A|B) = P(A⋂B)/P(B)
    P(A⋂B) = P(A|B)P(B)
    • 사건 B가 일어날 경우에 사건 A가 일어날 확률은 '사건 B에 대한 사건 A의 조건부확률'
    • P(A|B)는 사건 B가 발생했다는 조건 하에서 사건 A가 발생할 확률을 의미 

 

 

** 수정이 필요하다면 댓글을 부탁드립니다. 

반응형
반응형

EDA

EDA란? ( Exploratory Data Analysis, 탐색적 자료 분석)

  • 데이터를 탐색하는 과정(데이터를 이해하는 과정)
  • 데이터를 분석하기 전에 그래프, 통계적 방법을 통해 자료를 직관적으로 바라보는 과정

 

EDA는 왜 중요할까??

Raw Data(원본 데이터)는 그대로 분석에 사용하기 어렵고, 직관적으로 데이터에 대한 인사이트를 얻기 힘들다! 그렇기 때문에 데이터에 대한 인사이트를 얻기 위해 EDA가 필요하다. 
-> GIGO(Garbage In Garbage Out) : 쓸모없는 데이터가 들어가면 쓸모없는 결과가 나옴

  • 이전 단계에서 파악하지 못한 문제를 발견할 수 있음
  • 데이터를 분석하고자 하는 형태로 깨끗하게 정제 가능
  • 어떤 데이터인지 알고 있어야 어떤 분석이나 모델링을 할 지 예상 가능함

 

Feature Engineering

  • EDA를 위해 데이터들을 의미있는 형태로 변경하는 모든 행위
  • 모델의 성능을 높이고, 더 좋은 분석을 진행하기 위해 기존에 가지고 있는 feature 외에 다른 feature를 새로 만드는 것
  • 수학적 연산 + 도메인 지식을 바탕으로 유용한 feature를 도출

 

Data Wrangling 
원본 데이터를 분석하기 좋은 데이터로 변환하는 작업(데이터 수집 > 데이터 탐색 > 데이터 정제의 과정)

  1. Gather : 데이터를 얻는 방법으로 다운로드, 웹 스크레이핑, API 등
  2. Assess : 얻은 데이터를 읽고 데이터가 깨끗한지 아닌지를 판단
  3. Clean : 데이터를 정재하는 방법
    - Define : 2단계(assess)에서 발견된 데이터의 문제점을 보고 어떤 부분을 정제할지 정의
    - Code : 정제하기 위한 코드 제작
    - Test : 잘 정제가 되었는지 확인
  4. Reassess and Iterate : 다시 2단계(assess)로 돌아가 데이터가 잘 정제되었는지 확인
  5. Stor(optional) : 나중에 다시 사용하기 위해 저장하는 단계

- 시각적 데이터 탐색 : 전체 데이터를 관찰하는 과정, 시간과 비용적으로 비효율적이기 때문에 데이터 양이 적을 때 사용
- 프로그래매틱 탐색 : 코드를 사용하여 데이터 관찰, 데이터가 적을 때는 비효율적
- 데이터 품질 및 구조 문제
     > 데이터 품질의 문제 : 중복(duplicate), 결측치(missing), 부정확한 데이터(inaccurate), 이상치(outliers)
     > 데이터 구조의 문제 : 
          각 변수(variable)는 하나의 열(column)을 구성 / 각 관측치(observation)는 하나의 열(row)를 구성
          문제가 해결되지 않을 경우, 차후에 분석, 시각화, 모델링을 진행할 때, 속도가 느려질 수 있음
     > 데이터 정제 과정 순서 : 품질의 문제 해결 -> 구조의 문제 해결

 

** 수정이 필요하다면 댓글을 부탁드립니다. 

반응형

+ Recent posts