Я пользуюсь Windows более десяти лет и только что перешел на Macbook M1. Поначалу меня многое разочаровывало, и некоторые вещи до сих пор кажутся мне трудными, и я иногда задаюсь вопросом, лучше ли Windows, чем MacBook (пожалуйста, не спорьте со мной по этому поводу xD). Этот блог предназначен для того, чтобы помочь кому-то вроде меня, кто занимается наукой о данных, приобрел MacBook с процессором Apple Silicon и изо всех сил пытается адаптироваться.

Шаг 1. Сделайте резервную копию и при необходимости отформатируйте MacBook.

Шаг 2. Установите свой любимый браузер.

Сафари в порядке. Это не мой популярный выбор. Для меня очень неэффективно начинать изучать, как работает сафари. Я просто собираюсь придерживаться своего любимого браузера. Я использую Google Chrome, так как он поддерживает множество расширений, и я не могу без них обойтись. Я также использую Microsoft Edge, чтобы использовать свою рабочую учетную запись Microsoft Outlook и вести свою работу и личную жизнь в разных браузерах.

Шаг 3. Установите homebrew.

Перейдите по адресу: https://brew.sh/ и скопируйте и вставьте команду установки на свой терминал, чтобы получить менеджер пакетов homebrew. Убедитесь, что вы следуете Следующим шагам на терминале после запуска команды установки. Это важно! После выполнения инструкций Следующие шаги перезапустите терминал. Проверьте, работает ли он, выполнив следующие команды; дерево и wget удобны, так что сохраните их.

brew help
brew install wget
brew install tree

Шаг 4. Вам нужен conda для управления пакетами и средой для работы с данными

До недавнего времени Anaconda не поддерживала чип Mac M1. Поэтому многие люди использовали miniforge вместо miniconda с кремнием Apple. Сегодня у Anaconda есть установщик для Apple Silicon (ССЫЛКА). Я не знаю, нужен ли мне minforge или miniconda, поэтому я начал обсуждение на форумах anaconda. Следите за ним здесь: https://community.anaconda.cloud/t/do-i-still-need-miniforge/42591.

Посмотрите это довольно интересное видео (ССЫЛКА) профессора Джеффа Хитона, в котором он демонстрирует, как настроить и миниконду (Анаконду), и минифордж на одной и той же системе Apple Silicon без каких-либо ошибок. Рекомендую смотреть и следить за ним. У него потрясающий контент, связанный с наукой о данных.

Я буду придерживаться miniforge по одной причине: он поддерживается сообществом, которое постоянно его обновляет! Если у меня есть какие-либо проблемы, я создаю проблему на GitHub и получаю от кого-то быстрый ответ о том, как ее решить.

Взгляните на две ссылки здесь:

Дайте мне знать разницу в датах выпуска этих двух менеджеров пакетов в комментариях. В этот день (16 октября 2022 г.) мини-кузница была обновлена ​​четыре дня назад, а релиз миниконды — почти восемь месяцев назад!

Чтобы установить Miniforge3, ​​перейдите сюда и загрузите последнюю версию установщика: https://github.com/conda-forge/miniforge. Я использую Macbook Air M1, поэтому я установил версию miniforge3 для OS X arm64 (Apple Silicon).

Запустите следующую команду на терминале после загрузки файла:

 chmod +x ~/Downloads/Miniforge3-MacOSX-arm64.sh
 sh ~/Downloads/Miniforge3-MacOSX-arm64.sh
 source ~/miniforge3/bin/activate
 conda update conda
 conda update — all
 conda install jupyter pandas numpy matplotlib scikit-learn

Обратитесь к шпаргалке conda для будущих ссылок (сохраните ее в закладки!): https://docs.conda.io/projects/conda/en/4.6.0/_downloads/52a95608c49671267e40c689e0bc00ca/conda-cheatsheet.pdf.

Обратите внимание, что всегда лучше создать новую папку проекта и локальную виртуальную среду (.venv) для установки таких пакетов, как TensorFlow, потому что они имеют много зависимостей и могут вызвать конфликты с существующими версиями пакетов зависимостей, поддерживающих некоторые другие пакеты в базовая среда. Например, у меня возникла проблема с управлением двумя версиями Colorama, чтобы иметь сосуществующие пакеты AWS и TensorFlow в базовой среде.

Шаг 4. Вам нужен TensorFlow, чтобы делать классные вещи.

Я создаю тестовый репозиторий с виртуальной средой для установки TensorFlow. Не стесняйтесь использовать базовую среду, если хотите.

Все кредиты принадлежат Дэниелу Бурку за его видео и репозиторий GitHub по теме «Настройка TensorFlow на яблочном кремнии».

mkdir test
cd test
conda create --prefix ./env python=3.10.6
conda activate ./env
conda install -c apple tensorflow-deps #this is lacking in miniconda
python -m pip install tensorflow-macos
python -m pip install tensorflow-metal #to use gpu
python -m pip install tensorflow-datasets

Протестируйте установку, запустив Jupyter Notebook и запустив следующий код:

import numpy as np
import pandas as pd
import sklearn
import tensorflow as tf
import matplotlib.pyplot as plt
# Check for TensorFlow GPU access
print(tf.config.list_physical_devices())
# See TensorFlow version
print(tf.__version__)

Для более расширенного тестирования производительности следуйте экспериментам по ссылке 2, приведенным в справочных материалах.

Это все для этого чтения. Дайте мне знать в комментариях, если я должен написать больше подобных материалов об инструментах, которые я использую, и о настройке моей рабочей среды, чтобы помочь вам позаимствовать некоторые идеи и оптимизировать свой опыт работы в качестве специалиста по данным на MacBook с Apple Silicon.

P.S. этот блог посвящен тому, как я делюсь своим опытом настройки моего MacBook; каждый шаг на этом основан на двух видео в ссылках. Моя единственная цель при написании этого блога состояла в том, чтобы помочь тем, кто нуждается в быстром решении и не может позволить себе потратить около 30 минут на просмотр видео, чтобы понять это.

#наука о данных #macbook #macm1 #машинное обучение

Использованная литература:

  1. https://www.youtube.com/watch?v=_1CaUOHhI6U&ab_channel=DanielBourke
  2. https://github.com/mrdbourke/m1-machine-learning-test
  3. https://www.youtube.com/watch?v=w2qlou7n7MA&ab_channel=JeffHeaton
  4. https://github.com/jeffheaton/t81_558_deep_learning/blob/master/install/tensorflow-install-mac-metal-jul-2021.ipynb