정리 조금/Codes 13

[Python] F1 Score, Zero Division

의미종종 sklearn.metrics.f1_score을 사용하여 F1 score를 계산 하다보면 발생하는 문제로, 아래와 같은 경고가 뜬다./usr/local/lib/python3.10/dist-packages/sklearn/metrics/_classification.py:1609: UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no true nor predicted samples. Use `zero_division` parameter to control this behavior. _warn_prf(average, "true nor predicted", "F-score is", len(true_sum)..

정리 조금/Codes 2024.05.09

[Python] Jupyter Notebook, Virtual Environment Kernel

Intro가상환경을 사용하여 프로젝트 개발을 하려하는데, 동료에 따라 torch로 하는 경우도 있고 tensorflow로 하는 경우도 있다. 별 신경안쓰다가 torch로 실험하던 환경에서 tensorflow를 실행시켜 프로젝트 진행에 차질이 생긴적이 있었다. 둘 다 되게끔 하려다가 결국 기존의 패키지 버젼이 꼬이고, torch마저 돌아가지 않는 상황이 발생했다... 각각의 프로젝트에서 사용하는 버젼상 진짜로 이렇게도 맞지않는 경우도 있구나 싶다... 그리고 이런 이유에서 가상환경을 쓰는것인데, 나는 왜 알면서 꼭 겪어봐야 제대로 하는지...;; 무튼 이러한 분리된 두가지 프로젝트에서 작업이 가능하도록 쥬피터에서 가상환경의 커널을 연결하도록 하는 코드를 가져왔다. Code예를들어, proj1 이..

정리 조금/Codes 2024.04.24

[Python] ModuleNotFoundError: No module named 'tensorflow.keras'

tensorflow_addons은 tensorflow에서 지원하지 않는 다양한 방법이 들어있다. 이 프로젝트를 활용해야 할 때가 있어 아래와같이 불러오면 import tensorflow as tf import tensorflow_addons as tfa 이런 문제가 발생한다. ModuleNotFoundError: No module named 'tensorflow.keras' 나의 경우 이런 module없음 문제는 아래의 호환되는 짝을 찾아 다시 설치해주면 해결되었다. https://github.com/tensorflow/addons#python-op-compatibility-matrix GitHub - tensorflow/addons: Useful extra functionality for TensorF..

정리 조금/Codes 2024.04.23

[Linux] SCP File Transportation

맨날 할 때마다 까먹는... Local To Server Local에서 Server로 파일 전송할 때에는 아래와 같은 형식의 명령어를 내리면 된다. scp [FILE_TO_SEND] [USER_NAME]@[IP_ADDRESS]:[RECEIVING_ADDRESS] Local의 "/home/example.txt" 파일을 server의 "/home/test"에 보내려 할때 아래와 같이 보내면 된다. scp /home/example.txt jhyu@123.456.78.901:/home/test Server To Local 순서만 반대로 해주면 된다. > scp [USER_NAME]@[IP_ADDRESS]:[FILE_TO_SEND] [RECEIVING_ADDRESS] Server의 "/home/test/examp..

정리 조금/Codes 2024.03.11

[Python] Wallus Operator, :=

Intro Wallus (바다코끼리) 연산자는 바다코끼리를 연상시키는 이모티콘 (:=) 과 같은 모양으로, Python 3.8부터 사용이 가능해졌다. Assign & Return을 한번에 진행하는 기능이 있다. Example Wallus operator는 for문과 주로 같이 사용되는데, 이를 사용하지 않고 3보다 큰 index를 고르는 예제를 코딩하면 아래와 같다. numbers = [1, 2, 3, 4, 5, 6] index = None for i, num in enumerate(numbers): if num > 3: index = i break print("Index without walrus:", index) 반면, wallus operator를 사용하면 아래와 같이 line수가 줄어든다. num..

정리 조금/Codes 2024.02.23

[Docker] Restart

종종 여러 문제로 Docker를 재시작 해야한다. 나는 주로 아래 포스트한 내용으로 재시작한다. https://jaehong-data.tistory.com/45 Docker, GPU 인식 일반적으로 Ubuntu server에서 docker를 사용하는, 새로운 GPU 환경에서 작업을 시작했다. 그 과정에서 잘 돌아가던 코드에서 갑자기 GPU 인식을 못하는 warning이 발생했다. 조사를 해보니, GPU 인식 문제 jaehong-data.tistory.com 재시작 방법 먼저 재시작 하고싶은 container id를 알아내자. docker ps -a 그리고 id를 입력하여 재시작하면 끝. docker container restart [container id] 그림 출처 https://amalgjose.co..

정리 조금/Codes 2024.01.23

[Python] Image Data, Shape Transformation

CIFAR10 CIFAR10 이미지를 사용하려 이미지를 다운받아 읽어봤는데, plt.imshow(img.astype('uint8')) 아래와 같은 에러가 발생했다. TypeError: Invalid shape (3072,) for image data 우선 CIFAR10은 채널마다 32 $\times$ 32 의 픽셀로 표현되어있는 이미지 자료이다. 때문에 32*32*3=3072의 값이 에러에 보인다. Code 이 문제는 내가 받은 CIFAR10이 32 $\times$ 32 $\times$ 3 이런 모양이 아니라, 3 $\times$ 32 $\times$ 32의 모양으로 제공되기 때문에 발생한다. Torch에서도 이런 식으로 shape을 갖는다. 이 문제를 해결하고자 transpose라는 함수를 사용해 일반..

정리 조금/Codes 2023.12.04

[Python] Paramiko

Paramiko Paramiko는 Python에서 ssh 접속을 제어 가능하도록 하는 라이브러리로, ssh 원격접속과 파일전송을 가능하게하는 Fabric 라이브러리도 paramiko를 기반으로한다. Fabric의 사용 용도보다 심화된 또는 low level의 코딩을 해야하는 때와, Python 내에서 sshd (ssh daemon) 를 돌릴 때에 paramiko를 직접적으로 사용하게된다. 여기서 daemon은 백그라운드 상 요청을 기다리는 프로세스로, sshd는 ssh 연결을 받아주기 위해 대기하는 프로세스정도로 이해하면 된다. 오늘은 파일을 주고 받는정도의 간단한 코드를 소개한다. Code SSH client를 만들고, 연결한다. # Client class ssh = paramiko.SSHClient(..

정리 조금/Codes 2023.10.25

[html] Tistory hELLO Skin, 사이드바에 방명록 추가

현재 hELLO (by 정상우) 티스토리 스킨을 사용중이다. hELLO는 방명록과 사용자 설정같은 기능이 사이드바에 나타나지 않는 점 빼고는, 가장 맘에 드는 스킨이다. html을 잘은 모르지만, 사이드바에 새로운 카테고리를 추가하는 코드를 소개한다. 블로그 설정에서, 꾸미기 - 스킨편집 - html 설정에서 아래와 같이 ~ 부분을 추가하고, (href 부분에 원하는 링크 주소, 그리고 바로 다음에 원하는 라벨 이름 넣는것이 핵심) ... 방명록 블로그 설정에서 사이드바에 들어가, 방명록을 올려주면 (왼쪽 사진), 작은 글씨로, 방명록 사이드바가 생긴다. (오른쪽 사진) 응용하면, 방명록 뿐 아니라, 여러 링크를 사이드바로 둘 수 있다.

정리 조금/Codes 2023.10.24