jjinyeok 성장일지

데이터 분석 및 의미 찾기 #1 - 2022/08/10~2022/08/12 본문

[KT AIVLE School]

데이터 분석 및 의미 찾기 #1 - 2022/08/10~2022/08/12

jjinyeok 2022. 8. 15. 23:20

  수 많은 데이터를 한 눈에 파악하는 방법은 그래프와 통계량이다. 그래프와 통계량을 통해 데이터를 분석하고 의미를 찾는 과정을 배웠고 이제 정리하고자 한다. 먼저 우리가 다루는 데이터는 비즈니스를 담고 있다. 따라서 그래프와 통계량을 통한 데이터 시각화 목적은 아름다운 그래프를 만드는 것이 아니라 비즈니스 인사이트를 한눈에 파악할 수 있도록 하는 것이다. 시각화는 데이터를 요약하기 때문에 데이터를 한 눈에 파악하기 쉽다는 장점이 있다. 그러나 요약은 관점에 따라 결과가 달라지고 정보의 손실이 발생한다는 것을 유의해두자.

 

1. matplotlib

  matplotlib의 pyplot은 파이썬에서 그래프를 그릴 때 기본이 되는 라이브러리이다. 강의에서는 matplotlib에 대해 오래 다루었고 실습 또한 많이 진행했지만 필요할 때마다 document를 보며 사용해도 되는 부분이라고 생각하고 중요도가 이전에 배웠던 NumPy와 pandas보다는 확실이 떨어진다고 생각하기 때문에 matplotlib은 모를때마다 아래의 사이트를 참고하도록 하자.

https://matplotlib.org/stable/tutorials/introductory/usage.html

 

Basic Usage — Matplotlib 3.5.3 documentation

Axes labels and text set_xlabel, set_ylabel, and set_title are used to add text in the indicated locations (see Text in Matplotlib Plots for more discussion). Text can also be directly added to plots using text: mu, sigma = 115, 15 x = mu + sigma * np.rand

matplotlib.org

 

2. CRISP-DM

에이블스쿨에서 가장 많이 본 그림, CRISP-DM

  이번 과정을 통해 CRISP-DM을 또 한번 다시 정리할 수 있었다.

  1. Business Understanding
      프로젝트를 진행할 때 이미 잘 정의된 명확한 데이터 분석 문제로 시작하는 경우는 거의 없다. 문제를 파악해 가는 과정을 반복하며 문제를 재정의하는 과정이다. Bussiness Understanding 과정에서 비즈니스 관점에서 목표를 검토 및 설정하고 비즈니스 목표에 따라 데이터 분석 방향과 데이터 분석 목표를 설정하고 초기 가설을 수립해야한다. 이때 초기 가설은 다양한 직무에 있는 사람들의 의견을 수렴하고 데이터가 없다고 생각하고 가설을 도출해야 한다. 초기 가설을 수립한 후 데이터를 탐색하여 가설을 구체화 할 수 있기 때문이다.
  2. Data Understanding
      
    데이터란 문제의 해결책을 만드는 데 사용하는 원자재이다. 따라서 Data Understanding 과정에서 데이터를 식별하고 취득하는 과정이 필요하다. 데이터는 내부에 있는 데이터와 외부에 있는 데이터로 나뉜다. 외부에 있는 데이터는 취득이 가능한 데이터가 있고 불가능한 데이터가 존재한다. 취득이 가능한 데이터는 취득 비용을 산정하고 내부 데이터와 함께 데이터 전처리 과정을 통해 데이터를 취득한다. 취득한 데이터와 가설이 일치하는지 확인하기 위해 데이터 탐색 과정을 거치게 된다. 데이터 통계량과 데이터 시각화를 통해 데이터를 탐색한다. 이때 EDA (Exploratory Data Analysis)와 CDA (Confirmatory Data Analysis)를 사용한다. EDA와 CDA는 이따 살펴보도록 하자.
  3. Data Perparation
      모델링을 위해 데이터의 NaN 결측치를 조치하고 가변수화하고 (필요에 따라) 스케일링하며 하나의 잘 정리/정제된 데이터프레임을 만드는 과정이다. 이전 정리글에서 정리하였기 때문에 넘어가도록 하겠다.
  4. Modeling
      데이터를 통해 패턴을 찾는 과정이다. 오차를 최소화하기 위해 학습을 진행하며 모델을 만드는 과정이다. 학습할 데이터와 경우에 맞는 알고리즘이 필요한데 자세한 과정은 다음주에 있을 머신러닝 파트에서 다뤄주시기로 하였기 때문에 이정도만 정리하고 넘어가도록 하겠다.
  5. Evaluation
      Evaluation 과정을 통해 모델에 대한 데이터 분석 목표와 비즈니스 목표 달성에 대한 평가를 내릴 수 있다. Test set를 따로 분리해 모델에 대해 최종 평가를 하고 비즈니스 기대 가치를 평가한다. 이전 명사 특강에서 유명하신 CEO분이 공학자는 과학자이자 경영자라고 하셨다. 당연히 기술적인 관점에서 오차와 정확도를 평가하는 것도 중요하지만 비즈니스 관점에서 모델의 가치 평가가 더 중요하다는 것을 잊지말자.
  6. Deployment
      데이터는 비즈니스의 산물이자 과거의 상황이다. 상황이 변하면 데이터도 변한다. 따라서 과거의 데이터만을 기반으로 만들어진 모델은 꾸준히 성능이 저하될 수 밖에 없다. 따라서 우리는 완성된 모델에 대한 배포와 관리를 진행해야 한다.

 

3. EDA & CDA

  이번 강의의 목표는 데이터 분석이다. 데이터를 분석하는 방법은 탐색적으로 데이터의 분포를 파악하여 데이터를 분석하는 방법인 EDA (Exploratory Data Analysis) 와 확증적으로 가설에 대해 검증하며 데이터를 분석하는 방법인 CDA (Confirmatory Data Analysis) 가 있다. 우리는 초기 가설과 준비된 데이터셋을 EDA와 CDA를 통해 분석하고 가설을 확인하며 전처리 대상을 정리하고 데이터와 비즈니스에 대해 더 잘 이해할 수 있다. 보통 데이터를 분석하는 과정은 다음과 같다.

  1. 개별 변수의 분포를 살펴본다. (feature와 target 모두)
  2. feature와 target 간의 관계를 살펴본다. (feature -> target)
  3. feature들 간의 관계를 살펴본다. (feature - feature)

  다음 정리에 개별 변수 분석하기부터 작성하도록 하겠다.

 

Comments