macm1安装tensorflow以及pycharm配置

news2024/11/19 14:25:48

macm1安装tensorflow以及pycharm配置

本文目录

    • macm1安装tensorflow以及pycharm配置
      • 使用MacOS 12
      • 安装conda
      • 创建一个conda环境
      • 安装tensorflow
      • pycharm配置

使用MacOS 12

必需条件:macOS 12+

安装conda

安装Miniforge(包含conda及一个python环境)

下载地址1:https://github.com/conda-forge/miniforge/#download
下载地址2:https://gitcode.net/mirrors/conda-forge/miniforge?utm_source=csdn_github_accelerator

chmod +x ~/Downloads/Miniforge3-MacOSX-arm64.sh
sh ~/Downloads/Miniforge3-MacOSX-arm64.sh

// 按照提示输入,剩下的一直回车键
source ~/miniforge3/bin/activate

具体过程

xxMacBook-Pro ~ % chmod +x ~/Downloads/Miniforge3-MacOSX-arm64.sh
xxMacBook-Pro ~ % sh ~/Downloads/Miniforge3-MacOSX-arm64.sh

Welcome to Miniforge3 22.9.0-3

In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>> enter (需要填写)
...
Do you accept the license terms? [yes|no]
>>> yes   (需要填写)
...
Miniforge3 will now be installed into this location:
/Users/guohaonan/miniforge3

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/Users/xxx/miniforge3] >>> enter (可以选填,可以不修改,默认为miniforge3,第一次填以为是enter...,将错就错)
PREFIX=/Users/xxx/enter
...


                                           __
          __  ______ ___  ____ _____ ___  / /_  ____ _
         / / / / __ `__ \/ __ `/ __ `__ \/ __ \/ __ `/
        / /_/ / / / / / / /_/ / / / / / / /_/ / /_/ /
       / .___/_/ /_/ /_/\__,_/_/ /_/ /_/_.___/\__,_/
      /_/

conda-forge/osx-arm64                                       Using cache
conda-forge/noarch                                          Using cache

Transaction

  Prefix: /Users/xxx/enter
...

  Package                      Version  Build               Channel                     Size
──────────────────────────────────────────────────────────────────────────────────────────────
  Install:
──────────────────────────────────────────────────────────────────────────────────────────────

  + brotlipy                     0.7.0  py310h8e9501a_1005  conda-forge/osx-arm64     Cached
  + bzip2                        1.0.8  h3422bc3_4          conda-forge/osx-arm64     Cached
  + ca-certificates          2022.12.7  h4653dfc_0          conda-forge/osx-arm64     Cached

...
Transaction finished
installation finished.
Do you wish the installer to initialize Miniforge3
by running conda init? [yes|no]
[no] >>> yes (需要填写)
...
Thank you for installing Miniforge3!
// enter目录将错就错
source ~/enter/bin/activate

执行完之后,环境改变,终端显示当前环境

(base) xxMacBook-Pro ~ % conda --version
conda 22.9.0

创建一个conda环境

conda create -n tf python==3.9

切换到新环境

conda activate tf
(base) xxMacBook-Pro ~ % conda activate tf
(tf) xxMacBook-Pro ~ % 

安装tensorflow

在新环境下使用命令,每次使用TensorFlow的时候都需要激活conda环境

// 从Apple的仓库安装tensorflow的依赖
conda install -c apple tensorflow-deps

// 安装MacOS版本的TensorFlow
python -m pip install tensorflow-macos

// 安装tensorflow-metal,使TensorFlow支持GPU计算
python -m pip install tensorflow-metal

conda环境激活后,可以测试

(base) xx@xxMacBook-Pro ~ % conda activate tf
(tf) xx@xxMacBook-Pro ~ % python           
Python 3.9.0 | packaged by conda-forge | (default, Nov 26 2020, 07:55:15) 
[Clang 11.0.0 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> print(tf.__version__)
2.11.0
>>> 

关闭tensorflow环境

conda deactivate

pycharm配置

创建项目

PyCharm菜单,进入Preferences菜单,选择对于的项目的选项Project Interpreter

查询tf环境使用的python

(tf) xxMacBook-Pro ~ % which python                          
/Users/xxx/enter/envs/tf/bin/python

找到对应路径下的python,选中即可

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

// 'Hello, TensorFlow!'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/191603.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RabbitMQ消息队列实战(2)—— Java调用RabbitMQ的三种方式

本文主要介绍Java中调用RabbitMQ的三种方式。三种方式实际上对应了三种不同的抽象级别:首先,通过Java原生代码来访问RabbitMQ。在这种方式下,需要手动创建Connection,创建Channel,然后通过Channel对象可以显式的创建Ex…

基于springboot+vue的问卷调查系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 功能分析…

学校机房高效稳定,一招见效

校园安全作为公共安全领域重要的一部分,一直以来都格外受到重视。近年来,各地区陆续发布了多项加强校园安全管理的政策、法规及标准规范,旨在贯彻落实构建“平安校园”的宗旨,不断完善校园的人防、物防、技防建设。 学校机房常见四…

AutoLisp演练(二)

一、自动绘制出多个等半径圆相切 1.输入基准点baspt 2.输入小圆半径rad 3. 输入欲相切的圆的数量num 4.自动绘制出多个等半径圆相切 5. 涉及到相关变量,设定为baspt、rad、num、midpt、cenpt、kk、ang1、ang2 二、程序代码实现 三、测试及效果 测试一 四、…

盘点一些惊艳一时的 CSS 属性

✨ 个人主页:山山而川~xyj ⚶ 作者简介:前端领域新星创作者,专注于前端各领域技术,共同学习共同进步,一起加油! 🎆 系列专栏: web 大前端 🚀 学习格言:与其临…

2023爬虫学习笔记 -- 某狗网站爬取数据

一、爬取某狗网站的首页1、导入需要的库文件import requests2、指定我们要访问的网址网页"https://www.sogou.com"3、获取服务器的返回的所有信息响应requests.get(网页)4、通过text属性,从返回信息中读取字符串内容响应内容响应.text5、查看读取到的内容…

唐宇迪机器学习实战课程笔记(全)

1. 线性回归1.1线性回归理论1.2线性回归实战2.分类模型评估(Mnist实战SGD_Classifier)2.1 K折交叉验证K-fold cross validation2.2 混淆矩阵Confusion Matrix2.3 准确率accuracy、精度precision、召回率recall、F12.4 置信度confidence2.5 ROC曲线3.训练调参基本功(LinearRegre…

1612_PC汇编语言_条件以及控制结构

全部学习汇总: GreyZhang/g_unix: some basic learning about unix operating system. (github.com) 这一次简单看看条件分支以及控制结构,感觉看完这部分之后,汇编的大部分框架已经有个差不多了。我的目的并不是成为汇编高手,因此…

数据处理——增删改

文章目录插入数据方式一:values方式2:将查询结果插入到表中更新数据删除数据MySQL8新特性:计算列综合案例插入数据 用INSERT插入数据 方式一:values 使用这种语法一次只能向表中插入一条数据。 情况1:为表的所有字段…

1月,不要跳槽

新年结束了,一些不满现状,被外界的“高薪”“好福利”吸引的人,一般就在这时候毅然决然地跳槽了。 在此展示一套学习笔记 / 面试手册,年后跳槽的朋友可以好好刷一刷,还是挺有必要的,它几乎涵盖了所有的软件…

通信原理笔记—码间串扰与波形传输无失真的条件(奈奎斯特第一准则)

目录 波形传输的无失真条件: 码间串扰问题: 奈奎斯特第一准则: 在抽样判决时刻没有码间串扰的信号波形示例: 具有最窄频带的无码间串扰基带传输系统: 无码间串扰基带系统的主要参数: 一种典型的滚降…

golang中的图像image处理详解

常用的图像格式有png,jpeg,gif,对应的文件后缀为png,jpg,gif,当然文件的具体内容编码才能证明存放的是哪种文件,图像文件的头部都存储了具体标志,比如jpeg前缀\xffd8,png…

Redis实现消息队列

7、Redis消息队列 7.1 Redis消息队列-认识消息队列 什么是消息队列:字面意思就是存放消息的队列。最简单的消息队列模型包括3个角色: 消息队列:存储和管理消息,也被称为消息代理(Message Broker)生产者&…

定位tcp连接或端口是属于哪个进程

首先要知道tcp连接的端口号,要么是本地端口号要是么remote端口号。有的端口号我们已知,有的端口号可以通过日志获取,也可以抓包获取,如然后是用netstat命令获取pidlinux下使用netstat -anpt(a是输出所有n是展示端口号&…

【✓基础算法 2.4】KMP(完结)

当模式串和主串的子串有不匹配时,便往后退一步,看是否能走通,如果不能,则进行退—— KMP 目录 一、KMP算法简介 二、手算求next数组 三、next数组实现代码 四、完整代码实现 1、java 2、c 一、KMP算法简介 当主串的子串…

软件测试刚入职,很茫然怎么办~

毕业后能直接到公司开始工作,是多少人都想要却得不到的机遇,你现在茫然无非是因为对软件测试是做什么的不了解,也不知道软件测试的职业规划到底是怎么样的~ 既然已经进入了公司,那就要珍惜机会,多学习,多问…

redis7 Cluster模式 集群

1.Redis集群模式介绍 Cluster模式是Redis3.0开始推出的Redis Cluster属于AP模型采用无中心结构,每个节点保存数据和整个集群状态, 每个节点都和其他所有节点连接官方要求:至少6个节点才可以保证高可用,即3主3从;扩展性强、更好做到…

[GUET-CTF2019]re

于尘世中携一支笔,绘春风十里。 1.查壳 64bit加了UPX壳 2.使用Kali Linux脱壳 re脱壳3.静态分析 shift加F12打开string窗口 发现可疑字符,点击跟进 光标放在aCorrect,点击快捷键X查看引用这个字符串的地方 点击跟进 按下F5反编译 将函数重命…

为什么AI爆炸式增长会对元宇宙产生巨大影响

欢迎来到Hubbleverse 🌍 关注我们 关注宇宙新鲜事 📌 预计阅读时长:9分钟 本文仅代表作者个人观点,不代表平台意见,不构成投资建议。 想想你梦想中的房子。也许它有高高的拱形天花板、温暖的壁炉和宽阔的窗户&…

Allegro如何打开丝印位号的飞线操作指导

Allegro如何打开丝印位号的飞线操作指导 用Allegro做PCB设计的时候,移动器件的位号,会有根飞线实时提示位号是属于哪个器件的,如下图 但是只有在临时移动丝印位号的时候才会显示飞线,如何让所有的器件位号的全部显示,具体操作如下 选择Setup选择User Preferences