카테고리 보관물: Deep Learning

PyTorch 0.4.0 Release

파이토치PyTorch 0.4.0 버전이 릴리즈되었습니다. 많은 기능이 추가되고 개선되었다고 합니다. 그중에서도 눈에 띄이는 것은 텐서(Tensor)와 변수(Variable)를 하나로 합친 것과 checkpoint 컨테이너입니다. checkpoint 컨테이너를 사용해 모델을 나누어 만들면 메모리가 부족하여 정방향에서 계산한 값을 유지하지 못할 경우 역전파를 위해 가까운 체크포인트에서부터 정방향 패스의 중간 값들을 다시 계산합니다. 수행시간은 느려지겠지만 메모리가 작은 GPU를 사용하는 경우에는 아주 반가운 소식입니다! 또 한가지는 드디어 윈도우즈 지원이 됩니다! 다만 윈도우즈는 파이썬 3.5와 3.6 만을 지원합니다.

더 자세한 변경사항은 릴리즈 노트를 참고하세요. 설치할 때 conda 대신에 pip를 사용할 수도 있습니다. 윈도우즈에서 pip로 설치할 경우는 wheel 패키지 경로를 직접 지정해 주어야 합니다.

# macOS (no GPU)
$ conda install pytorch torchvision -c pytorch

# Linux CUDA 8.0
$ conda install pytorch torchvision -c pytorch
# Linux CUDA 9.0
$ conda install pytorch torchvision cuda90 -c pytorch
# Linux CUDA 9.1
$ conda install pytorch torchvision cuda91 -c pytorch
# Linux CPU
$ conda install pytorch-cpu torchvision -c pytorch

# Windows CUDA 8.0
$ conda install pytorch -c pytorch
# Windows CUDA 9.0
$ conda install pytorch cuda90 -c pytorch
# Windows CUDA 9.1
$ conda install pytorch cuda91 -c pytorch
# Windows CPU
$ conda install pytorch-cpu -c pytorch
# pip를 사용할 때 wheel 경로
# 파이썬 3.5, CUDA 8.0: http://download.pytorch.org/whl/cu80/torch-0.4.0-cp35-cp35m-win_amd64.whl
# 파이썬 3.5, CUDA 9.0: http://download.pytorch.org/whl/cu90/torch-0.4.0-cp35-cp35m-win_amd64.whl
# 파이썬 3.5, CUDA 9.1: http://download.pytorch.org/whl/cu91/torch-0.4.0-cp35-cp35m-win_amd64.whl
# 파이썬 3.5, CPU: http://download.pytorch.org/whl/cpu/torch-0.4.0-cp35-cp35m-win_amd64.whl
# 파이썬 3.6, CUDA 8.0: http://download.pytorch.org/whl/cu80/torch-0.4.0-cp36-cp36m-win_amd64.whl
# 파이썬 3.6, CUDA 9.0: http://download.pytorch.org/whl/cu90/torch-0.4.0-cp36-cp36m-win_amd64.whl
# 파이썬 3.6, CUDA 9.1: http://download.pytorch.org/whl/cu91/torch-0.4.0-cp36-cp36m-win_amd64.whl
# 파이썬 3.6, CPU: http://download.pytorch.org/whl/cpu/torch-0.4.0-cp36-cp36m-win_amd64.whl
# Windows 공통
$ pip3 install torchvision

‘핸즈온 머신러닝’이 출간되었습니다.

b9267655530_lHands-On Machine Learning with Scikit-Learn & TensorFlow의 번역서 ‘핸즈온 머신러닝‘이 출간되었습니다!

그 동안 이 작업을 하면서 많은 것을 배웠습니다. 모쪼록 다른 누군가에게도 도움이 된다면 다행입니다.

원래 번역서 제목이 ‘사이킷런과 텐서플로를 활용한 머신러닝, 딥러닝 실무’ 정도로 예상되었는데 출간 직전에 ‘핸즈온 머신러닝’으로 변경되었습니다. 개인적으로는 단순하고 평소에도 부르는 이름이라 만족입니다. 🙂

아직 예약판매 중인데 아마도 빠르면 다음주말 늦으면 이달 말에 배송이 시작될 것 같네요. 깃허브의 노트북은 한글로 바꾸고 있습니다. 혹시 이 책에 관해 궁금한 점 있으면 언제든지 댓글이나 메일 주세요.

마지막으로 책을 만드는 데 도움을 주신 많은 분들께 다시 한번 감사드립니다.

(저자 오렐리앙도 아주 기뻐하네요. ㅎ)

TensorFlow 1.8.0 RC0 Release

텐서플로 1.8.0 RC0 버전이 릴리즈되었습니다. 1.7.0 버전이 나온지 보름만이네요. 자세한 변경 내용은 릴리즈 노트를 참고하세요. 이전과 마찬가지로 1.8.0 RC0 버전은 pip 명령으로 간단히 설치할 수 있습니다.

$ pip install --upgrade --pre tensorflow
$ pip install --upgrade --pre tensorflow-gpu

(업데이트) 1.8.0 RC1 버전이 릴리즈되었습니다.

TensorFlow 1.7.0 Release

텐서플로 1.7.0 버전이 릴리즈되었습니다. RC 버전에서 소개되었던 기능과 큰 변화는 없는 것 같습니다. tf.contrib.learn 하위의 모든 모듈들이 삭제될 예정입니다. 자세한 내용은 깃허브 문서를 참고하세요. 버전 1.7.0의 자세한 변경 내용은 릴리즈 노트를 참고하세요.

1.7.0 버전은 pip 명령으로 간단히 설치할 수 있습니다.

$ pip install --upgrade tensorflow
$ pip install --upgrade tensorflow-gpu

TensorFlow 1.7.0 RC0 Release

텐서플로 1.7.0 RC0 버전이 릴리즈되었습니다. 정말 빠르네요. 🙂

eager execution이 contrib에서 메인으로 올라왔고 custom_gradient, regex_replace와 같은 새로운 기능이 추가되었습니다. sqlite 데이터베이스에서 데이터를 읽을 수 있고 텐서보드 디버거 플러그인도 함께 포함되는 등 많은 기능이 추가되고 여러 버그가 수정되었네요. 조금 더 자세한 내용은 릴리즈 노트를 참고해 주세요. 1.7.0 RC0 버전은 다음과 같이 pip 명령으로 설치할 수 있습니다.

$ pip install --upgrade --pre tensorflow
$ pip install --upgrade --pre tensorflow-gpu

(업데이트) 텐서플로 1.7.0 RC1 버전이 릴리즈되었습니다.

TensorFlow 1.6.0 Release

텐서플로 1.6.0 버전이 릴리즈되었습니다. 1.5.0 버전과 마찬가지로 pip로 설치되는 패키지는 CUDA 9, cuDNN 7에서 컴파일되었습니다. 업그레이드하기 전에 CUDA와 cuDNN을 확인해 주세요. 이전 버전에서 안내했던 것처럼 1.6.0 버전 부터는 CPU의 고급 명령을 활용하도록 컴파일 되어 있습니다. AVX 같은 명령을 지원하므로 조금 성능이 나아질 것으로 기대됩니다(아주 오래된 컴퓨터를 사용한다면 업그레이드에 주의하세요).

pip 명령으로 쉽게 설치 가능합니다.

$ pip install --upgrade tensorflow
$ pip install --upgrade tensorflow-gpu

제 맥북(2014년형)에서 1.5.0 버전과 1.6.0 버전의 고급 CPU 명령에 관한 경고를 비교해 보았습니다. 아직 AVX2, FMA는 지원하지 않네요. 🙂

스크린샷 2018-03-02 오전 11.31.22

1.5.0 버전

스크린샷 2018-03-02 오전 11.31.03

1.6.0 버전

구글의 머신러닝 단기집중과정

구글에서 “머신러닝 단기집중과정“이란 온라인 교육 사이트를 오픈했습니다. 머신러닝의 기초와 선형회귀, 로지스틱 회귀에서부터 신경망으로 MNIST 이미지를 분류하는 것까지 다루고 있습니다(텐서플로와 여러 파이썬 과학 라이브러리를 사용합니다). 강의에서 제공되는 실습은 Colab의 Notebook을 이용하고 있어 온라인에서 바로 실습을 할 수 있습니다. 재미있는 것은 강의 영상이 한국어 더빙으로 제공됩니다.

머신러닝으로 만든 더빙과 몇몇 용어의 선택이 조금 어색하지만 누구나 무료로 들을 수 있는 한국어로 된 좋은 강의인 것 같습니다. 🙂

스크린샷 2018-03-01 오전 11.37.52

PyTorch 0.3.1 Release

파이토치PyTorch 0.3.1 버전이 릴리즈되었습니다. 주로 버그 수정과 성능 향상을 포함하고 있습니다. 자세한 변경사항은 릴리즈 노트를 참고하세요.

파이토치 0.3.1 부터는 CUDA 3.0, 5.0과의 호환성이 삭제되었고, CUDA 7.5를 위한 바이너리 설치가 제외되었습니다. 대신 CUDA 8, 9, 9.1용 바이너리 설치가 제공됩니다. 지원하는 파이썬 버전은 2.7, 3.5, 3.6 입니다.

# macOS (no GPU)
$ conda install pytorch torchvision -c pytorch

# Linux CUDA 8.0
$ conda install pytorch torchvision -c pytorch
# Linux CUDA 9.0
$ conda install pytorch torchvision cuda90 -c pytorch
# Linux CUDA 9.1
$ conda install pytorch torchvision cuda91 -c pytorch
# Linux CPU
$ conda install pytorch-cpu torchvision -c pytorch

지난 달 말에는 마이크로소프트의 CNTK 2.4 버전이 릴리즈 되었습니다. 자세한 사항은 릴리즈 노트를 참고하세요.

TensorFlow 1.6.0 RC0 Release

텐서플로 1.6.0 RC0 버전이 릴리즈되었습니다. 1.5.0 버전이 나온지 채 한달도 되지 않았는데 잉크가 마르기전이라는 말이 실감이 나네요. 이번 버전에는 이전에 예고한 대로 CPU 사용자들을 위한 AVX 명령이 활성화되어 바이너리가 제공됩니다. CUDA 9.0에 대한 버그 안내도 있네요. 조금 더 자세한 내용은 릴리즈 노트를 참고해 주세요. 1.6.0 RC0 버전은 다음과 같이 pip 명령으로 설치할 수 있습니다.

$ pip install --upgrade --pre tensorflow
$ pip install --upgrade --pre tensorflow-gpu

(업데이트) 텐서플로 1.6.0 RC1 버전이 릴리즈되었습니다.

TensorFlow 1.5.0 Release

텐서플로 1.5.0 버전이 릴리즈되었습니다. RC 버전에서 소개되었던 것처럼 Eager execution과 TensorFlow Lite의 프리뷰 버전이 포함되어 있습니다. 구글 개발자 블로그에서 텐서플로 1.5에 추가된 기능에 대해 조금 더 자세히 소개하고 있습니다. 여기에는 Eager execution의 가이드 문서와 TensorFlow Lite의 코드랩 TFlite 튜토리얼이 소개되어 있습니다.

텐서플로 1.5.0 부터는 CUDA 9, cuDNN 7에서 컴파일된 PyPI 패키지가 제공됩니다. pip를 사용해 설치하려면 두 라이브러리를 업데이트해 주어야 합니다. 텐서플로 1.5.0의 설치 가이드는 다음 포스트도 참고하세요. 그리고 glibc 버전 2.23에서 컴파일 되기 때문에 현재 리눅스의 glibc 버전이 낮다면 업그레이드해 주어야 합니다.

$ pip install --upgrade tensorflow
$ pip install --upgrade tensorflow-gpu

(업데이트) cuBLAS 패치 버전(9.1)과 cuDNN 7.0.5에서도 1.5.0 버전을 설치할 수 있습니다.

(업데이트) 텐서플로 로드맵 페이지에서 앞으로의 개발 방향을 살짝 엿볼 수 있는데요. 눈에 띄이는 것들이 여러개 있는 것 같습니다. C++, Java 등의 언어지원, 고수준 API(케라스로 부족한 걸까요?), 자동 배치 알고리즘(!!!), OpenCL 지원(!!!!) 등이 입맛을 당기네요. 🙂