썸네일 이미지 출처: https://www.tensorflow.org/?hl=ko
M1 세팅 Part0. Download First, M1 세팅 Part1. iTerm2 & Brew 깔끔한 버전(혹은 M1 세팅. iTerm2 & Brew 지저분한 버전으로 설치), M1 세팅 Part2. 기본적인 ZSH 세팅과 brew install, M1 세팅 Part3. Miniforge3 설치, conda 가상환경 까지 진행한 것을 전제로 한다.
스크린샷이 많이 첨부되어서 더 그럴 것이다. 그런데 이번에는 "이래도 되나?" 싶을 정도로 과정도 짧다.
tensorflow 관련한 정보를 찾다가 우연히 발견하게 되었다. 처음 발견한 곳은 '너굴아빠'님의 포스팅이었다. 포스팅 날짜도 2021년 7월이었다. 보고 설치 과정이 너무 간단해서 한 번 따라해보기로 하였다.
너굴아빠님 블로그 포스트:
https://blog.naver.com/racoonpapa/222435398541
APPLE M1 TENSORFLOW METAL-PLUGIN :
https://developer.apple.com/metal/tensorflow-plugin/
이번엔 필자도 무작정(묻지도 따지지도 않고 한 번 더) 따라서 설치를 하기 때문에 이번 포스트는 글이 길지 않을 것이다.
Miniforge가 설치되어있다면, 이제 python 3.8 가상환경을 생성해보자. iTerm2를 실행하여서 보자.
(Apple에서 공식적으로 python 3.8 환경을 권장하고 있다.)
conda create -n jedi python=3.8
가상환경명은 여러분이 원하는 것으로 명명해도 상관없다. 필자의 경우, "jedi" 라는 python 3.8의 가상환경을 생성했다. 맞다. '스타워즈'에서 광선검을 가지고 (웅웅 윙윙 소리를 내는 위려적인 레이저광선검을 휘두르고 가끔 포스라는 초능력도 쓰는) '제다이(jedi)'다.
y를 누르고 계속 가상환경을 생성했다면, conda activate 로 가상환경을 실행하자.
conda activate jedi
생성한 가상환경에 기본적인 라이브러리들을 설치한다.
conda install numpy pandas scikit-learn statsmodels scipy seaborn matplotlib requests lxml beautifulsoup4 graphviz jupyter
필자의 스샷을 보여주겠다.
이미 알겠지만
이제부터 설치를 시작한다.
다음 명령어를 차례차례 입력해보자
:Tensorflow dependencies를 설치하는 과정이다. 다음 명령어를 입력하고 y를 눌러서 설치하자.
conda install -c apple tensorflow-deps
: base tensorflow 를 설치하는 과정이다.
python -m pip install tensorflow-macos
: metal-plugin을 설치하는 과정이다. 이 과정도 또한 짧게 끝난다.
python -m pip install tensorflow-metal
: jupyter notebook을 입력해서 jupyter notebook을 실행해보자.
jupyter notebook
이제 각자 원하는 경로에 새로운 jupyter 파일(확장자가 ipynb인 파일)을 생성하고 jupyter cell에 다음과 같이 코드를 입력해보자. 필자는 필자가 생성해둔 폴더에 tensorflow_tests 라는 ipynb 파일을 생성해둔 게 있어서, 그 파일로 테스트하고 아래에 스크린샷을 공유한다.
import tensorflow as tf
from tensorflow import keras
tf.__version__, keras.__version__
위 코드 실행결과 스크린 샷 공유!
지난 번에는 2.4 버전으로 나왔을 것이다. 이번엔 2.5 버전이다.
: 이로써 M1 Tensorflow 설치편을 끝내려한다. 나중에 업데이트로 지저분하게 설치한 tensorflow 와 깔끔하게 설치한 tensorflow의 후기를 업데이트할 예정인데... 막상 Tensorflow를 잘 안 쓰네...
추가! 이 방법으로 설치하면, conda update, pip install --update 등으로 업데이트도 된다.
많은 도움이 되었습니다. 감사합니다.