机器学习环境搭建(M1 Mac)

1 Miniforge(arm64)

1.1 简介

Miniforge努力提供Miniconda-like安装程序,添加的功能,conda-forge是默认通道。不像Miniconda,这些支持ARMv8 64位(正式名称为“aarch64”)。

1.2 安装

https://github.com/conda-forge/miniforge

进入网站后点击这里:

将下载下来的.sh文件拖拽到终端里,将会自动安装miniforge

1.3 虚拟环境搭建

查看虚拟环境列表:conda env list

创建虚拟环境:conda create -n env_name python=3.x

激活虚拟环境:conda activate env_name

删除虚拟环境:conda remove -n env_name all

退出虚拟环境:conda deactivate env_name

安装外部包:pip install package=x.x

查看包列表:pip list

1.4 换国内源

1.4.1 临时换源

conda install package=x.x -i https://xxx.xxx.xxx

1.4.2 永久换源(清华源)

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

2 Jupyter Notebook

2.1 简介

Jupyter Notebook是一个交互式笔记本,支持运行40多种编程语言,本质是一个Web应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和Markdown。

2.2 安装

pip install jupyter

2.3 简单自定义设置

首先生成默认配置:

jupyter notebook --generate-config

接着会提示默认配置的位置,打开,找到c.NotebookApp.notebook.dir=''可以修改默认目录:

注意需要加上u前缀,表示Unicode字符串。

2.4 补全

补全需要安装nbextensions以及nbextensions_configurator

pip install jupyter_contrib_nbextensions jupyter_nbextensions_configurator

安装成功后打开Jupyter:

jupyter notebook

进入Nbextensions选项卡,去掉disable xxx的那个勾选,选择Hinterland即可:

2.5 美化

2.5.1 安装

在Github上有一个jupyter-themes的工具,可以对其进行美化,首先安装

pip install jupyterthemes

直接放上暗黑主题,页面字体适中的命令

jt -t chesterish -f firacode -fs 14 -ofs 12 -cellw 1300 -lineh 200 -T

2.5.2 暗黑主题下绘图文本显示bug

加上如下代码

from jupyterthemes import jtplot
jtplot.style()

2.6 切换虚拟环境

如果在每个虚拟环境都安装Jupyter Notebook,那么切换虚拟环境的时候,需要频繁激活环境启动Jupyter Notebook并且在每个环境都要重新配置一遍,这样非常麻烦

其实可以只在一个环境下配置完成,只需要在其余环境上安装Jupyter Notebook的内核即可

首先激活环境

conda activate env_name

安装ipykernel

conda install ipykernel

手动添加kernelJupyter Notebook

python -m ipykernel install --user --name env_name --display-name "env_display_name"

随后启动Jupyter Notebook就可以切换内核了

机器学习环境搭建(M1 Mac)_第1张图片

在新建文件时切换内核

在运行时切换内核

2.7 绘图中文显示bug

2.7.1 临时解决

添加以下代码

plt.rcParams['font.sans-serif'] = ['SimHei'] 	# 步骤一(替换sans-serif字体)
plt.rcParams['axes.unicode_minus'] = False 		# 步骤二(解决坐标轴负数的负号显示问题)

2.7.2 永久解决

首先找到matplotlib配置文件

import matplotlib
matplotlib.matplotlib_fname()

此时就会输出配置文件的完整路径,打开matplotlibrc文件

  1. 注释打开 font.family : sans-serif
  2. 注释打开 font.serif : 在开头增加simhei
  3. 注释打开 font.sans-serif : 在开头增加simhei

如果没有simhei.tff字体,下载中文字体雅黑字体,安装mac安装字体参考,将字体复制到…/matplotlib/mpl-data/fonts/ttf

3 tensoflow-gpu

输入以下命令即可

conda install -c apple tensorflow-deps
python -m pip install tensorflow-macos
python -m pip install tensorflow-metal

4 opencv

说明

  1. v2上有个老哥把编译后的whl放到github了,直接下载安装即可。在这里对他表示致谢。
  2. 地址:https://github.com/wizyoung/AppleSiliconSelfBuilds

所以直接下载对应的whl文件,然后cd到下载目录,pip安装即可

注意,如果提示平台不兼容,那可能是升级了macos12,直接把文件名的11改成12即可

5 pytorch

同上

6 NLP包待更新

你可能感兴趣的:(机器学习,机器学习,人工智能,python)