태그 보관물: TensorFlow

TensorFlow 1.3.0 Release

텐서플로 1.3.0 버전이 릴리즈되었습니다. 1.3.0 버전에 대한 자세한 내용은 릴리즈 노트를 참고해 주세요. 1.4.0 버전부터는 cuDNN 7를 사용해 패키징될 예정입니다. 텐서플로 1.3.0 버전은 이미 PyPI에 등록되어 있어 pip 명령으로 간단하게 설치할 수 있습니다.(tensorflow-gpu에는 macOS 버전이 없습니다)

$ pip install --upgrade tensorflow

$ pip install --upgrade tensorflow-gpu

TensorFlow 1.3.0 RC2 Release

텐서플로 1.3.0 RC2 버전이 릴리즈되었습니다. 1.3.0 버전에 대한 자세한 내용은 릴리즈 노트를 참고해 주세요. 1.3.0 정식 릴리즈가 가까워진 것 같습니다. RC2 버전은 PyPI에 등록되어 있어 pip 명령에서 --pre 옵션으로 간단하게 설치할 수 있습니다.(tensorflow-gpu에는 macOS 버전이 없습니다)

$ pip install --upgrade --pre tensorflow

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

TensorFlow 1.3.0 RC1 Release

텐서플로 1.3.0 RC1 버전이 릴리즈되었습니다. 1.3.0 버전에 대한 자세한 내용은 릴리즈 노트를 참고해 주세요. RC1 버전은 아직 PyPI에 등록되어 있지 않아 직접 wheel 파일을 다운받아 설치해야 합니다. 운영체제와 파이썬 버전별 파일은 아래를 참고해 주세요.

TensorFlow 1.3.0 RC0 Release

텐서플로 1.3 RC0 버전이 릴리즈되었습니다. 많은 기능이 추가되고 개선되었습니다. 자세한 내용은 릴리즈 노트를 참고해 주세요. 텐서플로 RC 버전은 pip 명령에서 --pre 옵션으로 설치할 수 있습니다.

$ pip install --upgrade --pre tensorflow

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

얼마전부터 아나콘다에도 텐서플로 패키지가 포함되었습니다. 아직 최신 버전은 아니지만 간격이 점차 좁아질 거라고 기대해 봅니다.

$ conda search tensorflow
Fetching package metadata .........
tensorflow    1.1.0    np112py36_0    defaults
              1.1.0    np112py27_0    defaults
              1.1.0    np112py35_0    defaults
$ conda search tensorflow-gpu
Fetching package metadata .........
tensorflow-gpu    1.1.0    np112py36_0    defaults
                  1.1.0    np112py27_0    defaults
                  1.1.0    np112py35_0    defaults
$ conda install tensorflow

TensorFlow 1.2.1 Release

텐서플로 1.2.1 버전이 릴리즈되었습니다. 이번 릴리즈는 주로 버그 수정입니다. 특히 드롭아웃 비율을 텐서로 지정할 때 생기는 버그를 수정하였습니다.

1.2.1 버전도 pip 명령으로 간단하게 설치할 수 있습니다.

$ pip install --upgrade tensorflow
$ pip install --upgrade tensorflow-gpu
  • macOS: Python 2.7, 3.3, 3.4, 3.5, 3.6
  • Linux: Python 2.7, 3.3, 3.4, 3.5, 3.6
  • Windows: Python 3.5, 3.6

TensorFlow 1.2.0 Release

텐서플로우 1.2.0 버전이 릴리즈되었습니다. 1.2.0 버전부터 윈도우즈에서 파이썬 3.6을 지원하고 conv3d_transpose API 가 추가되는 등 여러 변화가 있습니다. RNNCell과 관련된 변경사항은 이전 포스트를 참고해 주세요. 1.2.0 버전에 인텔의 MKL 라이브러리가 텐서플로우에 추가되었다는 소식입니다(일명 MKL-DNN). GPU 없이 CPU만으로 쓰는 경우 어느 정도 성능 향상이 될 것 같습니다. 1.2.0 버전 이후에는 cuDNN 6.0이 기본으로 채택됩니다.

그 외 자세한 내용은 텐서플로우의 릴리즈 노트를 참고해 주세요. 1.2.0 버전이 이미 PyPI에 등록되어 있기 때문에 pip 명령으로 간단하게 설치할 수 있습니다.

$ pip install --upgrade tensorflow

$ pip install --upgrade tensorflow-gpu
  • macOS: Python 2.7, 3.3, 3.4, 3.5, 3.6
  • Linux: Python 2.7, 3.3, 3.4, 3.5, 3.6
  • Windows: Python 3.5, 3.6

TensorFlow 1.2.0 RC2 Release

텐서플로우 1.2.0 RC2 버전이 릴리즈 되었습니다. RC2에서부터 윈도우즈 파이썬 3.6 버전을 지원합니다. 이제 윈도우에서 아나콘다를 설치하고 따로 파이썬 3.5 환경을 만들었던 번거로움이 사라졌습니다. 또 1.2 버전이 cuDNN 5.1을 사용하는 마지막 버전이 되었습니다. 1.3 버전부터는 cuDNN 6.0을 기준으로 wheel을 생성합니다. 하지만 텐서플로우 소스 코드는 cuDNN 5.1과의 호환성을 유지합니다. cuDNN5.1을 반드시 사용해야 하는 경우라면 직접 빌드를 해야할 것 같습니다.

이번 버전에서 바뀐 자세한 내용은 이전 포스트와 릴리즈 노트를 참고하세요. 1.2.0 RC2 버전이 이미 PyPI에 등록되어 있기 때문에 pip 명령에서 --pre 옵션으로 간단하게 설치할 수 있습니다.

$ pip install --upgrade --pre tensorflow

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

TensorFlow 1.2.0 RC1 Release

텐서플로우 1.2.0 RC1이 릴리즈되었습니다. 1.0 버전 이후에도 여전히 빠른 속도로 버전 업그레이드가 되고 있네요. 이번 버전에서 바뀐 자세한 내용은 이전 포스트와 릴리즈 노트를 참고하세요.

1.2.0 RC1 버전이 이미 PyPI에 등록되어 있기 때문에 pip 명령으로 간단하게 설치할 수 있습니다. 텐서플로우 바이너리는 64bit 용이며, 윈도우즈에서는 파이썬 3.5 버전만을 지원합니다.

$ pip install --upgrade tensorflow

$ pip install --upgrade tensorflow-gpu

TensorFlow 1.2.0 RC0 Release

텐서플로우 1.2.0 RC0 버전이 릴리즈되었습니다. 주의해야할 사항은 버전 1.1.0에서 변경된 RNNCell이 다시 변경된 점입니다.

1.1.0 버전에서는 이전처럼 MultiRNNCell([lstm] * 5) 쓰면 가중치를 공유하지 못한다고 에러가 발생했습니다. 그래서 1.1.0 버전에서 RNN 코드를 MultiRNNCell([LSTMCell(...) for _ in range(5)]) 와 같이 써야했습니다. 텐서플로 첫걸음의 RNN 코드도 이를 반영하여 변경되었습니다. 이번 1.2.0 버전에서는 두 가지 경우를 모두 허용합니다. 전자의 경우 동일한 가중치가 공용되고 후자의 경우 각각의 가중치를 가지게 됩니다. 따라서 텐서플로우 1.0.1 버전에서 바로 1.2.0 으로 업그레이드할 때 코드의 동작방식이 완전히 달라지므로 주의해야 합니다.

입력 파이프라인을 위한 tf.contrib.data API 가 추가되었고 텐서보드의 새 버전이 포함되었다고 합니다. 그외 이번 버전에서 바뀐 자세한 내용은 릴리즈 노트를 참고하세요.

1.2.0 RC0 버전이 이미 PyPI에 등록되어 있기 때문에 pip 명령으로 간단하게 설치할 수 있습니다. 텐서플로우 바이너리는 64bit 용이며, 윈도우즈에서는 파이썬 3.5 버전만을 지원합니다.

$ pip install --upgrade tensorflow

$ pip install --upgrade tensorflow-gpu

[Review] ML with TensorFlow

title매닝Manning 출판사의 텐서플로우 책인 “Machine Learning with TensorFlow“가 거의 원고를 마무리하고 곧 출간될 예정입니다. 이 책의 최신 MEAP 버전을 바탕으로 간략히 리뷰를 작성합니다.

이 책은 텐서플로우를 이용하여 머신 러닝 알고리즘을 작성하는 챕터들로 구성되어 있습니다. 머신 러닝의 관점에서도 텐서플로우의 관점에서도 모두 입문서에 해당합니다. 크게 세가지 파트로 나뉘어져 있으면 첫 번째는 머신 러닝과 텐서플로우의 소개, 두 번째 파트는 회귀, 분류, 군집, 히든 마코브Hidden Markov 모델을 소개합니다. 마지막 세 번째 파트에서는 오토인코더autoencoder, 강화 학습, CNN, RNN을 다룹니다.

1장에서 대부분의 다른 책들 처럼 머신 러닝에 대한 개괄적인 소개를 하고 있습니다. 모델, 파라미터, 학습, 추론(여기서 말하는 추론은 통계의 추론이 아니고 머신 러닝의 예측을 말합니다), 특성 등을 포함합니다. 그리고 L1, L2 노름을 포함하여 일반화된 노름norm에 대해서 잘 설명하고 있습니다. 그리고 세가지의 큰 머신 러닝 분류인 지도 학습, 비지도 학습, 강화 학습을 사례를 들어 차이를 설명합니다. 씨아노Theano, 토치Torch, 카페Caffe에 대해 간략히 소개하고 텐서플로우를 사용하려는 이유와 소개를 합니다. 그런데 scikit-learn이 비교적 저수준(?) 라이브러리이기 때문에 텐서플로우 같은 고수준(?) 라이브러리를 쓴다는 말이 좀 어색하네요. 이 챕터의 마지막에는 책 전체에서 챕터별로 각각 어떤 알고리즘들을 다룰 것인지를 그림과 표로 요약해서 보여주고 있습니다. 이런 정리는 책의 전체 내용을 쉽게 파악하게 도와주므로 아주 좋은 것 같습니다.

계속 읽기