ติดตั้ง Tensorflow และ Jupyter บนเครื่อง Mac ที่ใช้ชิพ M1

Jaranai Srikrajang
3 min readMay 17, 2021

วิธีการติดตั้ง Tensorflow และ Jupyter บนเครื่อง Mac ที่ใช้ชิพ M1

หลังจากที่ Apple ออก ชิฟ M1 ซึ่งมาพร้อมกับ GPU ที่ล้ำหน้าที่สุดของ Apple สามารถรับมือกับงานที่ท้าทายสุดขั้วได้อย่างง่ายดาย และสตรีมวิดิโอระดับ 4K ที่ลื่นไหล ชิฟ M1 ได้นำเอา Apple Neural Engine มาไว้ใน Mac และเพิ่มความเร็วให้กับงานการเรียนรู้ของระบบ (ML) ได้ยอดเยี่ยม ด้วยสถาปัตยกรรมแบบ 16-core ที่ล้ำหน้าที่สุดของ Apple ซึ่งสามารถดำเนินการได้ถึง 11 ล้านล้านรายการต่อวินาที Neural Engine ในชิพ M1 จึงช่วยให้ประสิทธิภาพการเรียนรู้ของระบบนั้นเร็วขึ้นถึง 15 เท่าและอันที่จริงแล้ว ชิพ M1 ทั้งชิ้นนั้นถูกออกแบบมาให้เชี่ยวชาญในด้านการเรียนรู้ของระบบด้วยตัวเร่งความเร็ว ML ใน CPU และยังมาพร้อม GPU ที่ทรงพลัง ดังนั้นงานต่างๆ อย่างการวิเคราะห์วิดีโอ การจดจำเสียง และการประมวลผลภาพมีประสิทธิภาพที่เหนือชั้นขึ้นไปอีกขั้นอย่างที่ไม่เคยเห็นมาก่อนบน Mac จาก ข้อมูลจาก https://www.apple.com/th/newsroom/2020/11/apple-unleashes-m1

น่าสนใจสุด ๆ ผมเลยคันมือ แต่ Mac Pro เราก็มีอยู่แล้ว เลยตัดสินใจซื้อตัว Mac Mini ที่ใช้ชิฟ M1 มาลองว่ามันจะเร็วอย่างโฆษณาหรือป่าว และราคาค่าตัวของ Mac Mini ก็ได้แพงมาก

เมื่อได้มาแล้ว ก็มาลองเล่นกับงาน ด้าน AI ดู ว่าจะเร็วและมีประสิทธิภาพกว่าใช้บนชิพ Intel + Card จอที่มี GPU หรือไม่ มาเริ่มกันเลยครับ

Step 1: Install Xcode

Xcode เป็นเครื่องมือสำหรับการพัฒนาโปรแกรม สร้าง Mobile Application ของ Apple Platforms ซึ่งสามารถ ติดตั้งได้ผ่านทาง Apple Store

Step 2 : Install Mamboforge

ซึ่งมันจะเป็น package ย่อของ Anaconda มีคำสั่ง conda อยู่ภายใน และรองรับสถาปัตยกรรมแบบ ARM ที่เลือกตัวนี้ เพราะลงตัว Miniforge ตาม Tutorial : TensorFlow on an M1 Mac using Jupyter notebooks and Miniforge | by Clayton Pilat | Medium แล้วไม่สามารถ ติดตั้ง tensorflow ได้ครับ เลย ลองตัว Mamboforge ดู แล้วผ่าน ขั้นตอน จะคล้ายกัน โดยไปที่ Link นี้ครับ GitHub — conda-forge/miniforge: A conda-forge distribution.

เมื่อ Download มาที่เครื่องแล้ว ก็เริ่ม Install conda

bash Mambaforge-MacOSX-arm64.sh

ทดสอบดูว่าสามารถใช้ คำสั่ง conda ได้แล้ว

conda

Step 3 : สร้าง Environment ใหม่

ก่อนตั้งค่า Environment ใหม่ ทดสอบก่อนว่า คำสั่ง conda อยู่ใน path ที่ถูกต้อง

where conda

ต้องอยู่ใน path /mambaforge/condabin/conda และเพื่อเป็นการแยกการใช้งาน package หรือ version ให้แตกต่างกัน จึงต้องสร้าง Enviroment ใหม่ และเราจะสร้าง Environment ที่จะใช้ Tensorflow

conda create --name tensorflow-m1

จากนั้น Activate environment ใหม่ เพื่อเป็นการระบุว่าเรากำลังจะ Setup ค่าต่าง ๆ หรือติดตั้ง library หรือ package ต่างใน environment นี้

Step 4: Download และ Install Tensorflow 2.4

ไปที่ Releases · apple/tensorflow_macos · GitHub เพื่อ Download file นี้

  1. Unzip file จะได้ path ตามนี้

2. ไปที่ path ที่ unzip จากข้อ 1 แล้วใช้คำสั่งนี้ เพื่อ install

./install_venv.sh

หากมี Error ให้ใส่ชื่อ environment ก็ใส่ชื่อ env ตามหลังครับ ./install_venv.sh tensorflow-m1

3. หลังจากติดตั้ง tensorflow แล้ว เราก็มาติดตั้ง package อื่น ๆ ที่ใช้ร่วมกับ tensorflow เพิ่มเติม

conda install-y pandas matplotlib scikit-learn

Step 5: ติดตั้ง Jupyter Notebook

ติดตั้ง jupyter notebook โดยใช้คำสั่ง pip

pip install notebook

จากนั้นทดสอบเข้า jupyter notebook ดู

jupyter notebook

จะเข้า Browser ของ jupyter จากนั้นลองทดสอบ import tensorflow และ run ดูครับ

import tensorflow
import pandas
import matplotlib
import sklearn

ตอนนี้เราก็สามารถใช้ Jupyter Notebook และ ใช้งาน Tensorflow 2.4 ในเครื่อง Mac ที่ใช้ชิพ M1 จาก apple ได้แล้วนะครับ ก็ยังไม่รู้ว่าจะปัญหาในส่วนอื่น ๆ อีกหรือป่าว ขอลองเล่นดูก่อน สักพัก แล้วจะมา Update ข้อมูลเพิ่มเติมให้นะครับ

--

--