일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- IVI
- docker
- linear regression
- numpy
- Jupyter notebook
- WSSS
- cs231n
- AIFFEL
- airflow
- 도커
- 프로그래머스
- Pull Request
- 머신러닝
- logistic regression
- aiffel exploration
- CellPin
- docker attach
- 코크리
- Decision Boundary
- docker exec
- ssh
- Multi-Resolution Networks for Semantic Segmentation in Whole Slide Images
- HookNet
- GIT
- 기초확률론
- vscode
- 백신후원
- 히비스서커스
- 사회조사분석사2급
- cocre
- Today
- Total
목록Programming (73)
히비스서커스의 블로그
상황 airflow의 GPU를 사용하는 DAG 코드를 작성하다가 다음과 같은 에러를 마주쳤다. 코드 from airflow import DAG from airflow.operators.python import PythonOperator from datetime import datetime from models import our_model import torch test = DAG( dag_id = 'test', start_date = datetime(2022,5,5), catchup = False, schedule = '@once' ) train = PythonOperator( task_id = 'train', python_callable = train, dag = test ) def train(): ..
상황 아래의 대략적인 코드와 같이 from pytorch_lightning.loggers import WandbLogger from pytorch_lightning import Trainer import wandb wandb_logger = WandbLogger() trainer = Trainer( accelerator = 'gpu', devices = 2, logger=wandb_logger ) (...) val = wandb.run.summary('val_acc') 학습 프레임워크로 pytorch lightning를 사용하고 log를 받아 시각화하기 위해 wandb_logger로 받았다. 그 후 wandb에 단일 값으로 저장된 'val_acc'에 해당하는 값을 불러오려는데 'NoneType' obje..
aria2 설명 리눅스 터미널 창에서 다운로드 링크를 통해 다운로드 해주는 프로그램 중 하나이다. wget이나 curl 등의 다른 방법도 존재하나 여러 파일을 다운로드 할 때 유용한 프로그램이다. aria2 다운로드 $ sudo apt install aria2 파일 하나를 파일링크를 통해 터미널에서 다운로드 $ sudo aria2c 파일 여러 개를 파일링크 여러 개를 통해 터미널에서 다운로드 $ sudo aria2c -Z ... mega 설명 메가 리미티드가 개발한 클라우드 온라인 저장소 서비스이다. 메가에 올려진 파일을 링크로 받으려고 하면 위에서 사용했던 aria2(wget, curl 포함)의 링크와는 다르게 얻어진다. 때문에 터미널에서 메가링크로 파일을 다운받으려면 다음과 같다. mega 다운로드 ..
상황 classification model 학습을 위해 pretrained 모델을 사용하기 위해 output을 바꿔주려는 중 다음과 같은 에러를 마주쳤다. 코드 # model의 코드는 https://github.com/Cadene/pretrained-models.pytorch/blob/master/pretrainedmodels/models/senet.py 참조 from model import se_resnext101_32x4d import torch.nn as nn CLASS = 4 model = se_resnext101_32x4d(pretrained='imagenet') model.last_linear = nn.Linear(in_features=2048, out_features=CLASS) 에러메시지 ..
상황 1. model.train()인 상태로 dataset을 학습시키고 2. model 내에는 batch norm layer가 존재할 경우 3. dataset을 batch size만큼씩 나눌 때 가끔씩 나머지가 1인 경우가 존재하는데 이때 발생할 수 있는 에러이다. (ex. dataset의 수가 65개인데 batch size를 64인 경우). 에러 ValueError: Expected more than 1 value per channel when training, got input size torch.Size([1, 256, 1, 1]) 원인 batch norm layer의 계산식에 batch chanel의 크기가 1보다 크다고 가정한 수식이 존재하는 듯하다. 따라서, batch size가 1일 경우에는..
torch framework로 model을 train 후 저장 및 불러오는 방법은 크게 두 가지가 있다. 1) torch.save(model.state_dict(), model_path) 이 방법은 모델의 가중치만 저장하는 방법이다. 모델 train 후 evaluation 모드 전환 후 가중치만 저장 import torch.nn as nn import torchvision import torch # 예시 모델 model = torchvision.models.resnet18() # GPU 2대를 사용한다고 가정 후 dataparallel을 통한 병렬처리 device = "cuda" if torch.cuda.is_available() else "cpu" model.to(device) model = nn.Da..
TTA(Test Time Augmentation)란? TTA이란 Train 과정이 아닌 Test (Inference) 과정에서 Augmentation을 적용하여 나온 결과들에 대해 대표값 (대체로 평균)을 도출하여 결과값이 더욱 Robust하게 만드는 기법을 말한다. segmentation, classification, super-resolution 등과 같은 Computer Vision 문제를 해결하는데 사용된다. 대체로 TTA를 적용하였을 경우 더 결과가 좋아지는 경우가 많아 Kaggle과 같은 경진대회에서도 많이 사용된다. TTA 적용하기 Pytorch를 Framework로 사용하여 Segmentation Task를 진행한다고 하였을 때 TTA를 적용하는 코드를 간략하게 정리해보았다. 이때, 대표적..
마운트 지점을 변경한 후 도커 컨테이너를 띄우려고 하니 다음과 같은 에러가 발생하였다. docker: Error response from daemon: OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.go:385: applying cgroup configuration for process caused: no cgroup mount found in mountinfo: unknown. mount 정보에서 cgroup mount를 찾을 수 없다는 말인 듯 하다. 첫번째 해결방안은 돔돔이님 블로그를 참조하여 해결하였다. cgroup을 mount 해주면 해결이 된다. https://d..