[Pytorch] Randomness 제어
Randomness 제어랜덤성 제어를 위해 필요한 것- 초기 가중치 고정- augmentation에 사용되는 random값 고정 def set_seed(seed=990912): torch.manual_seed(seed) torch.cuda.manual_seed(seed) torch.cuda.manual_seed_all(seed) torch.backends.cudnn.deterministic = True torch.backends.cudnn.benchmark = False np.random.seed(seed) random.seed(seed)  torch.manual_seed랜덤한 숫자를 생성하기 위한 시드를 고정한다. return은 torch.Generator 오브젝트..
2024.02.27
no image
[Python] venv 사용법
venv 사용법윈도우 기준으로의 사용법만 작성되어 있습니다. 전제조건: python의 환경 변수 세팅을 완료한다. 그렇지 않다면, 파이썬 경로의 python을 호출하여도 된다.  venv 가상환경 생성형식python -m venv 가상환경저장경로\가상환경이름  사용 예제python -m venv C:\PythonVenv\VenvTeset  가상환경 활성화 [윈도우].\VenvTeset\Scripts\activate # 형식: [가상환경명]\Scripts\activate가상환경 활성화 [리눅스]source 가상환경이름/Scripts/activate 가상환경 비활성화deactivate  가상환경 활성화 및 비활성화  패키지 설치는 활성된 가상환경 속에서 pip를 통해 설치한다.    생성된 가상환경의 구조다..
2024.02.24
[Python] zip()
zip 함수 형태zip(*iterables, strict=False)여러 interable 오브젝트에 대해 병렬적으로 반복하여, 각 iterable오브젝트에서 나온 항목을 가진 tuple을 생성한다.  >>> for item in zip([1, 2, 3], ['sugar', 'spice', 'everything nice']):... print(item)...(1, 'sugar')(2, 'spice')(3, 'everything nice'좀 더 딱딱하게 설명하자면, zip()은 튜플에 대한 iterator를 반환하고, i 번째 튜플은 각 매개변수 iterable의 i 번째 요소를 포함한다. 고려해야 할 한 가지 사항은 zip()에 전달되는 iterable의 길이가 다를 수 있다.   3개 이상의 i..
2024.02.16
no image
[의료 영상] DICOM 전처리
정규화 전처리 코드base_img = dcm_file.pixel_arraymin_val = np.min(base_img)max_val = np.max(base_img)print(min_val)print(max_val)# normalize image / z = (x - min) / (max - min)copy_img = base_img.copy()numerator = copy_img - min_valdenominator = max_val - min_valz = numerator / denominatorz = (z * 255).astype(np.uint8)# 이미지 저장cv2.imwrite('base.png', base_img)cv2.imwrite('normalize.png', z)  pydicom을 통한 ..
2024.02.15
[Ubuntu server 22.04] 시간 변경
[Ubuntu server 22.04] 시간 변경timedatectl을 입력하여 Time zone의 시간대 확인user@server:~$ timedatectl Local time: Mon 2024-01-22 01:07:39 UTC Universal time: Mon 2024-01-22 01:07:39 UTC RTC time: Mon 2024-01-22 01:07:39 Time zone: Etc/UTC (UTC, +0000)System clock synchronized: yes NTP service: active RTC in local TZ: no  표준 시간대 리스트 ..
2024.01.22
no image
[Python] logging 사용
logging 사용logging을 사용할 떄, 미리 log파일을 만들어 놓지 않고 사용하게되면 vscode debug을 수행할 떄, FileNotFoundError가 발생한다. 그러므로 이처럼 log파일을 미리 생성하고 basicConfig의 filename 매개변수에 해당 경로를 넘겨주도록 하자.def set_logger(save_path): if not os.path.exists(save_path): os.makedirs(save_path) log_file_name = "로그파일 이름.log" log_file_path = os.path.join(save_path, log_file_name) # level: 출력하고자 하는 로그의 레벨. 해당 레벨..
2024.01.14
[python] set의 shet한 string auto concatenation
코드test_set = {"1", "2", "3" "4", "5"}print("test_set: ", test_set) 상황test_set: {'1', '5', '34', '2'} 3과 4사이에 ',' 콤마가 없는데 컴파일 에러가 안나고 지알아서 concat해버린다. 미친놈임 python에서 문자열 사이에 콤마가 없으면 자동 concat이 된다.. 오타에 주의하도록 하자..  https://stackoverflow.com/questions/18842779/string-concatenation-without-operator
2024.01.14
[Docker, Ubuntu 22.04] 도커 설치부터 Nvidia-toolkit까지
딥러닝 서버를 만들기 위한 도커 설정 과정Ubuntu server를 설치한다.Docker를 설치한다Nvidia driver를 설치한다Nvidia-container tooklit을 설치한다. 도커 설치에 참고한 공식문서 링크입니다. https://docs.docker.com/engine/install/ubuntu/  Docker 설치과정 설명OS requirementsUbuntu Lunar 23.04Ubuntu Kinetic 22.10Ubuntu Jammy 22.04 (LTS)Ubuntu Focal 20.04 (LTS)최신버전의 도커는 이와 같은 OS 버전을 요구합니다.  Docker 설치 전 준비 단계충돌 일어날 패키지 미리 삭제for pkg in docker.io docker-doc docker-com..
2024.01.05
no image
[ML] GAN에서 BCE loss를 사용하는 이유
Why use Binary Cross Entropy for Generator in Adversarial Networks I'm trying to work with General Adversarial Networks and there's something I'm seeing everywhere but can't explain why... the GANs are usually constructed from a Generator (which usually generates... stats.stackexchange.com 해당 글 내용 번역 왜 Generator에서 BCE loss를 사용할까 판별기의 손실 함수는 이미지의 진짜, 가짜 여부를 확인하기 위해 BCE를 사용하는 것은 이해할 수 있지만 생성기에서 BC..
2023.12.19
no image
[ML] Conditional GAN
Related Work 많은 수의 출력 카테고리를 수용할 수 있도록 확장하는 것은 어려운 문제며, 두 번째 문제는 입력과 출력의 일대일 매핑을 학습하는데 초점을 맞췄다는 것이다. 예를 들어 이미지 라벨링의 경우 주어진 이미지에 적절하게 적용될 수 있는 다양한 태그가 있을 수 있으며, 서로 다른 annoatator가 동일한 이미지를 설명하기 위해 서로 다른 용어를 사용할 수 있다. 첫 번째 문제를 해결하는 데 도움이 되는 한 가지 방법은 다른 모달리티의 추가 정보를 활용하는 것이다. 예를 들어, 자연어 말뭉치를 사용하여 기하학적 관계가 연관있는 label에 대한 vector representation을 학습하는 것이다. 이러한 space에서 예측할 때, 예측 오류가 발생해도 여전히 진실에 근접하는 경우가 ..
2023.12.18
no image
[수학] Uniform distribution (균등 분포)
Uniform distribution (균등 분포) 정의는 간단하다. 모든 확률변수에 대해 균일한 확률을 갖는 것이 균등 분포이다. 균등 분포는 이산확률변수, 연속확률변수 모두 나올 수 있는 형태의 분포이다. 연속확률변수에서의 균등 분포는 연속 균등 분포라고 하며, 이산확률변수에서 균등 분포는 이산균등분포라고 한다. 이 분포는 두 개의 매개변수 $a,b$를 받으며, 이 때 $[a,b]$ 범위에서 균등한 확률을 가진다. 보통 기호로 $u(a,b)$ 로 나타낸다. $u(0,1)$인 경우, 표준연속균등분포라 한다. 연속확률분포에서는 확률을 구간으로 설명하는데, 잠시 연속확률분포에 대해 설명하고 넘어가자면 특정 포인트의 확률값을 적으라면 엄청 작은 넓이(상대도수의 넓이, 이산확률분포의 넓이는 상대도수의 넓이로 ..
2023.11.13
no image
[ML] Autoencoder / FashionMNIST 데이터 셋 사용
해당 포스팅은 Autoencoder를 가지고 궁금한 점을 테스트하며 기록해놓은 글이며, Autoencoder에 대한 설명은 거의 존재 하지 않는다. 해당 오토인코더를 구현할 때 참고하였던 코드는 데이콘 포스팅이다. 그 외 여러 방식으로 신경망을 구성해보며 테스트 한 내용들도 포함되어 있다. 구현 코드 Autencoder.py import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from matplotlib import cm from random import sample import torch import torch.nn as nn import torch.nn.functional as F impor..
2023.11.01