[Pytorch] numpy, tensor, list 변환
·
언어 | Framework/Pytorch
pytorch에서 자주 쓰이는 형태인 numpy, tensor, list 간에 변환. import torch import numpy as np # numpy to tensor np_arr = np.zeros((3, 3), dtype=np.float32) tensor_arr = torch.from_numpy(np_arr) # tensor to numpy np_arr = tensor_arr.numpy() # tensor to list list = tensor_arr.tolist() # list to tensor tensor_arr = torch.tensor(list) 간단하다.
[Pytorch] Multi GPU
·
언어 | Framework/Pytorch
pytorch에서 여러개의 GPU 사용하기. import torch model = MyModel() # CNN이든 뭐든 사용할 모델 device = 'cuda' if torch.cuda.is_available() else 'cpu' if (device == 'cuda') and (torch.cuda.device_count() > 1): model = nn.DataParallel(model) model.to(device) 간단하다.
[STL] Vector와 List의 차이
·
언어 | Framework/C++
Vector 메모리를 연속적으로 할당(마치 배열처럼)하여 index값으로 접근이 가능. (-> random 하게 요소에 접근 가능) 중간 삽입, 삭제가 어려움. container 끝에 삽입, 삭제하는 것은 빠르다. List next포인터로 다음 주소를 찾아주는 방식. (index값 접근 안됨, random 하게 접근할 수 없음) 중간 삽입, 삭제가 용이. next포인터라는 정보를 담는 추가적인 메모리가 필요함.
[Detection] Anomaly Detection
·
DeepLearning/Detection
Anomaly Detection? Anomaly Detection(이상 탐지)란 normal, abnormal(정상, 비정상)을 구별하는 Detection을 의미한다. Supervised Anomaly Detection Supervised Anomaly Detection, 정상 데이터셋과 비정상 데이터셋 모두를 학습시키는 것을 의미한다. 정상, 비정상을 모두 학습시키기 때문에 다른 Anomaly Detection에 비해 정확도가 높다. 하지만 실제 산업현장에서는 적정량의 비정상 제품의 데이터를 취득하기가 매우 어렵다는 문제가 있다. 10,000개의 제품을 생산할 때 비정상 제품이 1개 나온다면(실제론 더 안 나오지만...), 100개의 비정상 샘플을 취득하기 위해선 대략 10,000,00개의 제품을 생산..
[수학] 점의 회전변환(삼각함수)
·
수학
중점이 원점(0, 0)인 원 위의 점 (x, y)가 θ만큼 회전한 점 (x', y')를 구하는 공식은 다음과 같다. 중점이 원점이 아니라 특정 좌표인 (a, b) 일 경우에는 다음과 같다.
[Segmentation3D] PointNet
·
DeepLearning/Segmentation
PointNet PointNet은 3D data인 point data를 Classification, Segmentation 하기 위한 모델이다. 2D data와 달리 3D data는 정규화 데이터가 아니고, 불규칙하게 얻어진다. (2d는 행렬로 regular 하게 얻어진다) 특정 rendering 없이 point data를 다루기 위해서는 2가지 성질을 만족해야 한다. 1. Permutation invariant 2. Rigid motion invariant Permutation invariant 3d point는 특정 순서 없이 주어지기 때문에 어떠한 순서로 오더라도 output이 달라지면 안 된다. 이를 Permutation invariant(직역하면 순열 불변)라고 한다. PointNet에서는 Pe..
woongs_93
웅's blog