💫 Computer Science/Python & AI Framework
-
[Pytorch] pytorch Contiguous💫 Computer Science/Python & AI Framework 2022. 8. 3. 21:52
Contiguous Contiguous(인접한, 근접한)는 단어의 뜻처럼 Tensor의 각 값들이 메모리에도 순차적으로 저장되어 있는지 여부를 의미한다. [0, 1, 2, 3, 4]라는 Tensor 가 있을 때, 메모리에 저장된 모양이 이와 같으면 contiguous한 것이고 이런식으로 요소들이 메모리에 연속적으로 저장되어 있지 않으면 contiguous하지 않은 것이다. >>> t = torch.tensor([[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11]]) >>> t.is_contiguous() True >>> t.stride() (4, 1) t라는 Tensor는 처음에는 위와 같이 메모리에 저장되어 있을 것인데, >>> t = t.transpose() >>> t.str..
-
[Docker] 딥러닝과 파이썬 환경구축을 위한 도커파일💫 Computer Science/Python & AI Framework 2021. 12. 31. 10:36
원래는 도커도 쓰고 로컬 파이썬도 쓰고 있었는데 최근에 개인 노트북과 회사 노트북의 환경을 모두 초기화하였습니다. 로컬에는 어떤 언어도 프레임워크도 설치하지 않고 도커 컨테이너만 사용하려고 합니다. 확실히 관리하기 정말 편하고 이것저것 변경하기가 너무 편해요. 예를 들어서 Inference를 위한 flask API 용 환경은 최대한 가볍고 심플한 파이썬 컨테이너를 띄워놓고, 딥러닝을 위한 주피터 파이토치 환경을 띄워놓으면, 서로 다른 두 환경을 왔다갔다 하면서 작업하기도 편리하고 콘다 사용시 충돌문제가 없어 너무 좋았습니다. 그리고 docker-compose를 통해서 여러개의 컨테이너를 원하는 옵션으로 한번에 띄울 수 있어서 좋습니다. 예를 들어서 하나의 작업을 할 때 jupyter + pytorch +..
-
[Ray] Multiprocessing library Ray💫 Computer Science/Python & AI Framework 2021. 12. 20. 14:06
데이터의 행렬 연산, 딥러닝, 전처리 등 데이터가 커질 수록 연산량도 많아집니다. 그리고 파이썬은 인터프리터 언어인 특성상 느립니다. numpy를 사용하는 것 만으로도 속도가 올라가지만, 놀고 있는 코어를 모두 사용해 병렬 연산을 하면 더 빨라지지 않을까? 하는 생각을 하게됩니다. 그래서 처음에 python의 내장함수인 multiprocessing을 사용하곤 했는데 이보다 더 편하고 좋은 방법이 있어 포스팅하려고 합니다. # python multiprocessing import numpy as np from multiprocessing import Pool arr = np.random.random(1000000) def mul(x): return x * 10 # list comprehension resu..
-
[JupyterLab] CPU&Memory 모니터링 익스텐션 ✨💫 Computer Science/Python & AI Framework 2021. 10. 28. 11:23
진짜 진짜 좋은 주피터랩 모니터링 익스텐션을 발견해서 오랜만에 포스팅을 해봅니다. 그동안 top이나 htop으로 cpu 점유율이나 메모리 점유율을 모니터링 했었는데요. 터미널을 따로 띄워놓는게 귀찮아서 잘 안하게 되더라구요 ㅠㅠ 그런데 서버를 혼자만 쓰는게 아니라 모니터링은 꼭 해야 한다고 느껴서 뭔가 좋을게 없을까 뒤지다가 노트북 파일 안에서 바로바로 cpu점유율이랑 메모리를 볼 수 있는 짱짱 좋은 익스텐션을 발견하였습니다. 명령어를 쳐서 확인하는 것이 아니라 터미널을 따로 켜놓을 필요 없고 노트북 파일 안에서 상단바(topbar)에 표시되기 때문에 아주아주 편리합니다~.~ 🔗 Inatallation 일단 주피터랩 버전을 확인합니다. jupyter lab --version JupyterLab 3.x 일..