码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 曲折的tensorflow安装过程(Tensorflow 安装问题的解决)


    目录

           一、更改服务器。

           二、调整tensorflow版本

           三、将python降级

            1、进入conda命令行,依次输入以下命令

            2、换回默认源

            3、降级为python3.6

          四、降级后再升级


    这周接到一个任务,需要在python中安装tensorflow,跑一下数据。TensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief。原以为很简单事的事,没想到却是让我大费周折。

           一、更改服务器。

           我安装的python是3.9,在Pycharm中安装无法安装tensorflow,选择安装的是最新版的tensorflow,安装失败后显示ConnectTimeOutError。连接超时,应该是国外服务器下载速度慢的缘故,把下载包的服务器地址由https://pypi.python.org/simple改为Simple Index后,顺利完成安装。

           二、调整tensorflow版本

          tensorflow完成安装后, 再运行程序时,显示错误:AttributeError: module ‘tensorflow‘ has no attribute ‘placeholder‘,查看发现,报错原因是因为tensorflow自 2.0版本去掉了placeholder,placeholder只有tensorflow 1.*版本才有。

           三、将python降级

           在安装tensorflow 1.15.5时,又出现安装失败,不过不再是timeout,经研究发现,tensorflow 1.x适用的python最高版本为3.6。python3.9下已经写了不少程序了,如果降级后不能用怎么办,这时anaconde解决了我的问题。

            1、进入conda命令行,依次输入以下命令

            conda config --add channels Index of /anaconda/pkgs/free/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

            conda config --add channels Index of /anaconda/pkgs/main/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

            conda config --set show_channel_urls yes

            2、换回默认源

            conda config --remove-key channels

            3、降级为python3.6

           通过cmd或conda命令行输入:conda create -n py36 python=3.6 anaconda

           注:实际上是打造了一套python3.6的环境,这一过程将重新安装所有包,花费时间有点多。

           我是在conda命令行安装的

           安装好后,会提示:

    1.       # To activate this environment, use
    2.       #
    3.       #     $ conda activate py36
    4.       #
    5.       # To deactivate an active environment, use
    6.       #
    7.       #     $ conda deactivate

    在命令行输入conda activate py36 即可,若要返回python3.9,在命令行输入conda deactivate。

          win10菜单里会多出Anaconda Powershell Prompt的菜单项,点击就可进入python3.6,非常方便。

          

          四、降级后再升级

          将python降级到3.6后,心想这次安装tensorflow1.15.5没问题了,没想到还是出错了,提示 Package 'protobuf' requires a different Python: 3.6.10 not in '>=3.7',要求我将python升级到3.7,这叫什么事啊。      

          由于很明确,tensorflow1.x适用的python最高版本是3.6,这次没听错误提示的,而是把pip升级了,怀疑是pip版本的问题。       

         pip升级后,tensorflow1.15.5顺利安装成功,代码也能正常运行了。

  • 相关阅读:
    Jackson序列化与反序列化
    【JVM系列】- 类加载子系统与加载过程
    MindFusion.Java Swing Pack 2022图表控件
    合成孔径雷达地面运动目标检测技术研究——基于概率图(Matlab代码实现)
    Java Reflection:Java反射简介说明
    高薪程序员&面试题精讲系列138之如何生成分布式ID?如何生成全局唯一ID?你了解雪花算法吗?
    java:java.util.StringTokenizer实现字符串切割
    深入理解RocketMQ 广播消费
    Java算法 异或^运算(找重复,交换值)
    k8s集群安全机制
  • 原文地址:https://blog.csdn.net/weixin_60535956/article/details/126090783
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号