전체 글
알고리즘 테스트 벼락치기 (기본문제)
백준 17269, 이름 궁합 테스트 N, M = map(int, input().split()) A, B = input().split() num_alphabet = [3,2,1,2,4,3,1,3,1,1,3,1,3,2,1,2,2,2,1,2,1,1,1,2,2,1] new_name = '' # 알파벳 궁합 이름 min_len = min(N, M) for i in range(min_len): new_name += A[i] + B[i] new_name += A[min_len:] + B[min_len:] # ord() 아스키 코드를 활용한 것이 관건 ascii_name = [num_alphabet[ord(i)-ord('A')] for i in new_name] # 획수 궁합 이름 # 풀이1 또는 풀이2 선택 # 풀이..
Nvidia driver, CUDA, cuDNN, TensorFlow 버전 호환성 맞추기
Pytorch를 사용하다가 Tensorflow2를 사용하게 되었는데, "GPU 드라이버, CUDA, cuDNN, TensorFlow"의 버전 호환성이 안 맞는 문제가 계속 발생했어요.... 느낌 상 TF가 유독 까다로운 것 같아요... ㅠ 텐서플로우 버전 호환성 맞추기 시작합니다. 서론 저는 Linux Ubuntu 18.04에서 GeForce RTX 3090을 사용하고 있습니다. 인공지능을 학습하기 위해 TensorFlow2와 Keras를 사용하고 있고, 이 라이브러리를 사용하면서 겪었던 버전 호환성의 문제를 기록해보려고 합니다. 우선, TensorFlow나 pytorch와 같은 라이브러리가 GPU를 사용하기 위해 설치해야 할 것이 무엇인지 간략히 설명드려보겠습니다. 첫 번째로, OS에서 GPU를 읽을 ..
인공지능 학습을 위한 TensorFlow 환경 설계
※ 버전 호환성에 관한 문제나 모호한 정보에 대한 궁금증은 TensorFlow 공식 홈페이지에서 확인하는 것이 제일 좋음. (클릭) TensorFlow 공식 홈페이지 상황 연구실 서버에서 TensorFlow2 활용하기 ▶ 연구실 서버 환경 (도커 사용하지 않음, 도커 사용시: (클릭) TensorFlow Docker 환경 구축 방법) - OS: Linux, Ubuntu 18.04 - GPU: GeForce RTX 3090 ※ 사용자가 확인해야 할 것 - (클릭) TensorFlow 공식 홈페이지 가기 1. TensorFlow2를 설치하기 위해서는 64비트 시스템(x86_64)에서 아래와 같은 환경이 필요함 - Python: 3.6~3.9 - OS: Ubuntu 16.04 이상, Windows 7 이상, ..
[Error Solution] NVIDIA Driver/library version mismatch
문제상황 Ubuntu 서버에서 다른 사용자들과 공동 작업을 할 때, GPU의 사용을 겹치지 않게 하기 위해서 GPU 사용 현황을 체크하려다가 에러 확인. root@user:~$ nvidia-smi Failed to initialize NVML: Driver/library version mismatch Nvidia driver kernel module (kmod)의 버전이 잘못된 것으로 추정. 따라서, 잘못된 nvidia driver module 버전을 unload하고 맞는 버전으로 실행시켜야 함. * 이상적으로는 다음과 같이 확인이 가능해야 함. 더보기 해결방안 1. 어떤 nvidia 드라이버가 설치되어 있는지 확인 root@user: $ lsmod | grep nvidia nvidia_uvm 98713..
Python logging
DeepLearning 관련 github python 코드를 참고하다가 이라는 코드를 보고 logging에 대해 검색해보며 정리한 글입니다. python 기초 로깅 자습서 | (자료 출처) 로깅(logging)이란? 소프트웨어가 실행될 때, 발생하는 event를 추적하는 수단 개발자 입장에서는, 코드에 logging을 추가해서, 특정 event가 발생했음을 나타낼 수 있음 개인적인 해석으로, logging은 시각적으로 보이는 출력과 보이지 않는 출력 모두를, 저장하고 옮기는 수단이 될 수 있음 logging의 함수? debug(), info(), warning(), error(), critical() 이 있음 ▷logging.info() or logging.debug() - 프로그램의 정상 작동 중에서 ..