Programming
[Python] K-Fold 로 데이터 분할하기
데이콘이나 캐글 같은 경진대회에서 어떤 예측값을 제출하느냐에 따라 순위가 몇 단계나 출렁이곤 한다. 그렇기 때문에 어떤 데이터에 대해서도 견고한 예측값을 제공하는 모델을 선택하는 것이 중요한 이슈라고 할 수 있다. 모델을 어떻게 학습하냐에 따라 예측값도 천차만별이다. 좋은 결과를 위해서는 과적합, 과소 적합된 모델보다 균형 있게 학습된 모델을 선택하는 것이 가장 중요할 것이다. 쉬운 이해를 돕기 위해 인간으로 비유하자면 현재의 고정된 관념을 너무 학습하여 미래의 현상에도 고정 관념에 사로잡힌 사람 - 과적합 현재도 잘 이해하지 못하고 있으며 미래의 현상도 잘 이해하지 못하는 사람 - 과소적합 현재도 잘 이해하며 미래의 현상도 잘 예측하는 사람 - 일반화 K-fold 교차검증을 통해 비교적 일반화(gene..
[Python] 모듈의 버전을 확인하는 습관
필요성 데이터 분석 시, 잘 실행되던 코드가 오류로 실행이 되지 않는 경우가 종종 있다. 예측 결괏값이 가장 좋았던 코드로 점수를 복원하고자 할 때 문제가 생길 수 있다. 그렇기 때문에 그 당시의 분석 환경을 기록해두어야 할 필요가 있다고 생각한다. 최신 모듈일수록 버전이 중요 계속해서 발전해나가고 있는 최신 모듈의 경우는 비교적 급변하기 때문이다. (종종 버전 충돌로 실행이 안되면 검색해야 하는 번거로움이 발생) 습관 들이기 1) 모듈 버전 확인하기 구글링으로 애써 찾은 코드가 실행이 안된다면 버전 문제일 가능성이 크다. 내 코드의 모듈 버전은 버전 문제를 일으키지 않도록 잘 기억해두자. # 예시 import tensorflow as tf import tensorflow_addons as tfa imp..
[R] Colab 환경에서 R 노트 사용하는 방법
Colab에서 R코드를 실행할 수 있다는 사실을 얼마 전에 알게 됨 하지만 기본 Colab 페이지에서는 숨겨져 있음 아직 공식적으로는 공개되지 않아 보임 접속 방법 https://colab.research.google.com/notebook#create=true&language=r - 이 주소로 접속하고 노트 설정에 Runtime type을 R로 설정해줘야 함 - 또는 코랩 페이지에 들어가서 주소 마지막 부분에 &language=r을 추가하면 됨 https://colab.to/r - 짧게는 이렇게도 가능 ( 이게 제일 편해 보인다. ) 접속 모습 - google 로그인이 되어있는 상태 - Untitled 뒤의 숫자는 사용자에 따라 다름 기존의 Colab Notebook 접속 시와 다를 거 없어 보인다. ..
[Python] datetime 모듈
R 에는 lubridate package가 있듯이, Python 에는 datetime module모듈이 있다. datetime module 날짜와 시간 데이터를 다루는데에 유용한 파이썬 스탠다드 라이브러리이다. timedelta : 기간을 표현하기 위해 사용 timezone : 시간대를 표현하기 위해 사용 date : 날짜를 표현하기 위해 사용 time : 시간을 표현하기 위해 사용 datetime : 날짜와 시간을 동시에 표현하기 위해 사용 hh:mm:ss으로 형태 변경 사용자 함수 # 시간 표시 함수 def format_time(elapsed): # 반올림 elapsed_rounded = int(round((elapsed))) # hh:mm:ss으로 형태 변경 return str(datetime.ti..