Link
11-28 22:35
«   2020/11   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          
Archives
Today
1,731
Total
1,176,303
관리 메뉴

꿈 많은 사람의 이야기

Python EDA 자동화 도구 Sweetviz 라이브러리란? - Sweetviz 사용법 정리 본문

python

Python EDA 자동화 도구 Sweetviz 라이브러리란? - Sweetviz 사용법 정리

이수진의 블로그 이수진의 블로그 2020. 10. 26. 09:23

포스팅 개요

최근 머신러닝(Machine Learning)과 딥러닝(Deep Learning) 시장에 자동화 열풍이 점점 더 세게 불어오고 있습니다. AutoML은 주어진 Dataset에 맞게 Machine Learning 알고리즘을 돌려서 가장 적합한 머신러닝 모델을 찾아주는 등 점점 더 Auto와 관련된 키워드가 Data Science, AI 시장에 불러오고 있습니다.

이번 포스팅은 그 자동화 시스템 중 Exploratory Data Analysis (EDA)를 자동화해주는 라이브러리를 소개해주는 포스팅입니다. 원래 Dataset에 대해서 다양한 분석을 진행합니다. EDA는 그 중 한 방법이며 시간을 어느정도 투자해야 하는 과정입니다. 이 자동화 라이브러리는 그것을 간단하게 제공해줍니다. 그 라이브러리 이름은 Sweetviz 입니다.

그래서 이번 포스팅은 EDA 자동화 라이브러리 Sweetviz에 대해서 소개하는 포스팅입니다.

참고자료는 아래와 같습니다.


포스팅 본문

포스팅 개요에서도 언급했듯이 Auto와 관련된 키워드가 Data Science, AI 시장에 계속 들려오고 있습니다. AutoML은 계속 고도화가 되고 있고 관련 논문도 많이 나오고 있다고 합니다.

AutoML은 데이터 셋을 제공해주면 Machine Learning 모델들을 자동으로 돌려줘서 적합한 모델을 찾아주는데요. Sweetviz는 머신러닝 모델이 아닌, 그 앞에 데이터 분석하는 과정을 자동으로 도와주는 라이브러리 입니다. EDA 과정을 자동으로 도와주죠.

설치 방법

설치 방법은 굉장히 간단합니다. 아래와 같이 설치하면 끝입니다!

pip install sweetviz

 

사용 방법

사용 방법도 굉장히 간단합니다. 먼저 Kaggle의 Titanic dataset을 기준으로 한 번 살펴보겠습니다.

여기서는 간단한 방법만 소개합니다. 자세한 것은 https://github.com/fbdesignpro/sweetviz 를 참고하세요!

kaggle에서 titanic 데이터 셋을 받으면 거기 안에 train.csv와 test.csv가 있습니다. 이 데이터를 불러와서 sweetviz에 넣어주면 됩니다.

이때 target(혹은 label)을 넣어줄 수도 있습니다. 간단한 코드는 아래와 같습니다.

이때 마지막에 show_html을 적용할 수 있고 그 결과 값이 html 파일로 나오게 됩니다. 그리고 그 html 결과 값은 아래와 같습니다.

그러면 가장 맨 위에 target으로 넣었던 값에 대한 결과가 나오게 됩니다. 그리고 그 아래에는 다른 feature들에 대한 간단한 EDA 결과가 나옵니다! 굉장히 신기하죠? 또한, 저기에 마우스를 올려놓으면 화면 오른쪽에 더 자세한 결과도 볼 수 있습니다.

또한, 아래 사진처럼 missing data ( null data )에 대한 비율도 보여주는데요. null data 비율이 크면 진한 빨간색으로 표시해주는 등 색상이 변경되어 나오는 것을 볼 수 있습니다.

 

그리고 위에서 잠깐 언급하였지만, 마우스를 각  결과에 올려놓으면 더 자세한 결과를 아래 사진과 같이 확인할 수 있습니다!

 

그럼 다른 데이터 셋은 어떨까요?

kaggle에 home credit 데이터로 다시 한 번 더 확인해보겠습니다.

오.. 이번에는 시간이 조금 걸렸습니다. 아무래도 데이터 양이 많다보니 그 만큼 시간이 걸리더군요. 제 PC에서는 대략 12~15분 정도 걸렸던 것 같습니다.

그리고 결과는 마찬가지로 잘 나오는 것을 확인할 수 있었습니다.

 

또한, Sweetviz에서 굉장히 재밌는 결과가 바로 상관관계를 알려주는 메뉴도 존재하는 것입니다.

바로 이렇게요!


결론

이번 포스팅에서는 데이터 분석 중 EDA를 자동화해주는 Python 라이브러리 Sweetviz에 대해서 알아보았습니다. 굉장히 흥미로운 결과를 보여주고 단 시간에 간단한 결과를 시각화해서 보여주는 결과를 볼 수 있었습니다.

물론, 더 자세한 것과 더 깊은 분석은 불가능하지만 간단한 분석이 이정도 결과 값으로 나오는 것은 매우 흥미롭습니다.

AutoML 등 자동화 도구가 앞으로 더 발전할 것으로 기대되니까 앞으로의 성장이 기대되네요!

2 Comments
  • 프로필사진 conanmoon 2020.10.27 23:02 안녕하세요!

    저는 코드스테이츠의 데이터 사이언스 과정을 듣는 사람입니다.

    크루님께서 수진님의 블로그를 공유해주셔서 Sweetviz라는 유용한 라이브러리를 알게되었습니다.

    정말 감사드립니다~!

    그리고, 글이 간결하고 깔끔한 점이 마음에 듭니다, 구독하기 눌렀습니다 앞으로의 글도 기대하겠습니다.

    저는 매일 제가 데이터과학에 관련되어 배운 것을 저의 블로그에 나누고 있습니다. 미디엄이라는 플랫폼을 사용하고 있는데, 시간이 되신다면 저의 글을 읽어 주시고 피드백도 주시면 감사하겠습니다!

    https://conanmoon.medium.com/

    앞으로도 좋은 글 기대하겠습니다~!
  • 프로필사진 이수진의 블로그 이수진의 블로그 2020.10.27 23:59 신고 안녕하세요 ~

    아 코드스테이츠에서 제 블로그를 공유해주셨다니 영광이네요 :)
    감사합니다. 더욱 열심히 공부해서 작성해볼게요 ㅎㅎㅎ

    네 ~ 꼭 종종 들려서 글 봐보겠습니다. 감사합니다!
댓글쓰기 폼