Python Code 31

파일 크기 확인 코드 (Python)

import os file_path = "file_dir" # 파일 경로를 지정합니다. # 파일 크기를 조회 file_size = os.path.getsize(file_path) # 파일 크기를 인간이 읽기 쉬운 형식(KB, MB, GB 등)으로 변환하려면 다음과 같이 사용할 수 있습니다. if file_size < 1024: size_str = f"{file_size} bytes" elif file_size < 1024 ** 2: size_str = f"{file_size / 1024:.2f} KB" elif file_size < 1024 ** 3: size_str = f"{file_size / (1024 ** 2):.2f} MB" else: size_str = f"{file_size / (1024 *..

Python Code 2023.10.18

머신러닝/딥러닝 성능 측정 함수

모델이 inference 한 결과를 통해 모델의 성능 지표를 계산하는 함수임. 마지막 print 부분은 없어도 되고, 정답값(y_true) 과 예측값(y_prob), 그리고 Threshold 값을 입력해주면 된다. from sklearn.metrics import roc_auc_score, average_precision_score, confusion_matrix, precision_score, recall_score ,f1_score def eval_metrics(y_true, y_prob, cut_off=0.5): ''' Function: Model Performance Calculation Parameters: y_true (List or Numpy Array) : Label (Ground Trut..

Python Code 2023.10.12

딥러닝 Pytorch&PostgresSQL 도커파일

Dockerfile딥러닝 모델링을 위한 환경 구축 도커 파일로, Pytorch 와 Poststres 를 활용하는 예시 코 requirements.txt : 도커환경에 필요한 패키지들 목록을 정리한 파일 컨테이너 RUN 후에 mount 필요 FROM pytorch/pytorch:1.11.0-cuda11.3-cudnn8-devel RUN mkdir -p /source COPY ./requirements.txt /source #WORKDIR /source RUN chmod 777 /tmp RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A4B469963BF863CC RUN apt-get update RUN apt-get -y install sudo ..

Python Code 2023.10.12

Docker Compose(도커 컴포즈) 예시

Docker Container 여러개를 build 하고 관리할 때 Docker-compose 를 사용함. Docker compose를 활용하기 위해서는 아래와 같이 yml 형식의 정의 파일이 필요함. 기존 Docker 명령어를 편하게 정리해놓은 것 뿐이라, 어려운 내용은 아님. 인터넷에 코드도 많이 있지만, 간단한 예시 코드 하나 작성함 version: "3" services: mysql000ex11: image: mysql:5.7 platform: linux/amd64 networks: - wordpress000net1 volumes: - mysql000vol11:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: myrootpass MY..

Python Code 2023.10.12

멀티프로세싱 (Multi-Processing)

기본 사용법 from multiprocessing import Pool def my_function(arg): # 여기에 병렬로 실행하고자 하는 코드 작성 print(arg) if __name__ == "__main__": # CPU 코어 개수만큼 풀 생성 (일반적으로 CPU 코어 수와 동일하게 설정) pool = Pool() # 함수를 병렬로 실행 results = pool.map(my_function, range(5)) # 풀 종료 pool.close() pool.join() 일반 코드(예시) import multiprocessing, time # Multi Processing start_time = time.time() # define function def count(name): for i in ..

Python Code 2023.10.11

Config 파일 관리 (argparse)

Config 를 관리할 때, yaml 형식 외에 argparse 도 많이 사용되는 듯 하다. 아직 익숙하진 않지만, 터미널에서 옵션값을 별도로 줄 수 있어서 CLI Environment 에서 활용하기에 좋을 것 같다. import argparse if __name__ == "__main__": # -- 다음에는 parameter 입력하고, default 값과 type, help 옵션을 설정한다. parser = argparse.ArgumentParser(description='Vision Transformer') parser.add_argument('--img_size', default=32, type=int, help='image size') parser.add_argument('--patch_size..

Python Code 2023.10.10

Cut-off 별 Sensitivity(민감도), Specificity(특이도) 성능 측정 코드

머신러닝이나 딥러닝 inference를 통해 예측 결과를 보면 cut-off 별로 민감도와 특이도를 확인하고 싶을 때가 있다. 매번 매뉴얼하게 probability로 예측결과값을 바꾸고 결과를 보기에는 번거로워서, 0.0 ~ 1.0 범위까지 0.01 단위로 sensitivity 와 specificity 성능을 측정하는 함수를 만들었다. 입력 dataframe 에는 y_true 값과 y_probability 결과가 있는 column 이 필요하다. (컬럼명은 바꿔서 사용해도 됨.) import numpy as np def check_threshold(df): ''' Function: 0.0 ~ 1.0 range 내에서 0.01 단위 cut-off 별 Sensitivity, Specificity 성능 결과를 ..

Python Code 2023.10.10

Docker 자주 쓰는 명령어 정리

도커(Docker)는 컨테이너 기반 가상화 기술을 사용하여 애플리케이션을 개발, 배포 및 실행하기 위한 오픈 소스 플랫폼 도커 컨테이너는 애플리케이션과 해당 종속성을 격리된 환경에 패키징하고, 이를 통해 앱을 어디서든 일관되게 실행할 수 있게 함. 이미지(Image): 도커 컨테이너를 만들기 위한 읽기 전용 템플릿. 이미지는 애플리케이션 코드, 런타임, 라이브러리 및 종속성을 포함 컨테이너(Container): 이미지를 실행할 수 있는 격리된 환경. 컨테이너는 이미지의 인스턴스로, 애플리케이션을 실행하는 데 필요한 모든 것을 포함 도커 레지스트리(Docker Registry): 도커 이미지를 저장하고 공유하는 중앙 저장소. Docker Hub는 가장 널리 사용되는 도커 레지스트리 중 하나임 자주 사용하는..

Python Code 2023.09.23

PDF 파일 Concat

PDF read 할 수 있는 패키지 설치 pip install PyPDF2 Collecting PyPDF2 Downloading pypdf2-3.0.1-py3-none-any.whl (232 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 232.6/232.6 kB 5.2 MB/s eta 0:00:00a 0:00:01 Installing collected packages: PyPDF2 Successfully installed PyPDF2-3.0.1 pip install PdfMerger Requirement already satisfied: PdfMerger in ./anaconda3/lib/python3.10/site-packages (0.5.0) Requirement a..

Python Code 2023.09.20