Kaggle의 특징량 관리를 PostgreSQL에서 했더니 생각했던 것보다 낫기 때문에, Docker로 누구나 사용할 수 있는 디렉토리를 만들어 보았다

이 문서는 Kaggle Advent Calendar 2019의 19일째 기사입니다.

안녕하세요, kiccho1101 라고 합니다!
인생에서 처음으로 기사를 씁니다! 잘 부탁드립니다!

소개



이번은, Kaggle의 특징량 관리를 PostgreSQL로 해 보면 생각했던 것보다도 뚫었으므로, 소개하고 싶습니다.

만든 디렉토리는 여기 : htps : // 기주 b. 코 m / Kitcho 1101 / Data s Shiense-mp ぁ
↑README에는 Titanic 대회의 데이터를 사용한 사용 예가 쓰여져 있습니다.

특징량 관리란?



Kaggle 대회에서는, (이전의) 나와 같이 아무것도 생각하지 않고 코드를 쓰고 있으면, 이하와 같은 문제가 발생합니다.
  • 특징 량이 무엇을 나타내는지 모르겠다
  • 노트북이 혼돈 상태에 있습니다 (exp1.ipynb, exp1_tmp.ipynb, exp1_tmp_tmp.ipynb 등이 대량으로 발생).
  • 반년 후 보답했을 때에, 쓴 자신이라도? ? ? 코드가 생성됩니다

  • 이러한 문제를 해결하려면 몇 가지 방법으로 기능을 관리해야 합니다.

    특징량 관리에 대해서는,.

    개요



    이 디렉토리의 특징을 정리하면 다음과 같습니다.
  • 데이터를 Docker 컨테이너의 PostgreSQL로 관리
  • SQL과 Python 모두에서 데이터를 조작 할 수 있습니다.
  • Makefile을 사용하여 일련의 흐름 (특징 생성, 교차 검증, 예측)을 명령 줄 도구화
  • 실험 내용을 config 파일로 관리

  • 데이터를 Docker 컨테이너의 PostgreSQL로 관리



    데이터베이스를 사용함으로써,
  • Takanobu Nozawa 님의 슬라이드
  • pgAdmin
  • pgweb
  • TablePlus

  • 같은 데이터베이스 뷰어에서 데이터를 볼 수 있습니다. 이것이 매우 좋다.
    pandas에서하는 것보다 EDA가 훨씬 쉽습니다.

    Makefile을 사용한 명령줄 도구화



    특징량 생성



    DataGrip

    교차 검증 (Cross Validation)





    예측





    이런 식으로, 자주 하는 작업은 make 명령으로 실행할 수 있도록 했습니다.
    코드를 쓰는 양이 단지 줄었을 뿐입니다만 꽤 쾌적하게 코딩할 수 있습니다.

    요약



    이번은, 코드가 메인이 되기 때문에, 기사 속에서는 사랏과 설명하는 만큼 그쳤습니다.
    「재미있는 것 같다」라고 생각하시는 분은, 부디 꼭 Clone해서 사용해 보세요! !

    마지막으로
    풀릭 & 포크 환영입니다! ! ! 누구나 부담없이 부탁드립니다! ! !

    좋은 웹페이지 즐겨찾기