💫 Computer Science
-
[개발자 상식] 개발자가 되기 위한 첫 걸음을 떼어줄 책💫 Computer Science/Computer Science 2023. 3. 15. 22:46
블로그 포스팅을 오랫동안 하지 못해서 유입이 많이 줄었지만, 오늘은 제가 출간한 두번 째 책을 소개해보도록 하겠습니다. 책 소개 이 책을 한 줄로 정의하면 ‘개발자가 되기 위해 기본적으로 알아야 할 I T 기술, 환경에 관한 넓고 얕은 지식’이다. 어렵게 머리를 싸매고 읽어야 하는 부담스러운 IT 책이 아닌, 개발자가 알아야 하는 꼭 필요한 개념과 용어를 인문 도서처럼 술술 읽을 수 있게 설명하였다. 개발자가 되기 위해 알아야 할 것은 두꺼운 책에나 쓰여 있는 딱딱한 지식이 아니다. 문제를 찾아 해결하기 위한 일련의 과정과 그 속에서 필요한 ‘키워드’와 ‘개념’이다. 이 책은 언어, 프레임워크, 디자인 패턴, 개발도구, 클라우드 등등 넓고 얕은 지식을 통해 검색하는 능력을 키우고 해결하고자 하는 문제를 ..
-
[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..