最近在Windows10上安装了caffe和tensorflow,折腾了好久。在此记录一下。

安装caffe的过程已在另一篇博客中进行了记录,在此不再赘述。而tensorflow也是非常简单的,也不再详细说明。

安装caffe和tensorflow比较重要的一点是,要确保把依赖正确安装好。GPU版本的caffe需要7+版本的CUDA和5.5/5.0的CUDNN。而GPU版本的tensorflow在1.5.0以上的版本则需要CUDA9和CUDNN7。两个框架对CUDA和CUDNN的不同要求造成了小小的冲突。

caffe和tensorflow对python的版本也有要求,使用Anaconda管理python会比较方便,通过创建虚拟环境可以更改python的版本。

  1. 我先通过conda create -n tensorflow python=3.5命令创建了一个名为tensorflow的虚拟环境,在这个虚拟环境中的python版本为3.5。

  2. 因为caffe需要的CUDA和CUDNN的版本较低,所以需要先安装好低版本的CUDA和CUDNN,我安装的是CUDA8.0和CUDNN5.0,然后把caffe搭建好。

  3. 然后再安装高版本的CUDA和CUDNN,我安装的是CUDA9.0和CUDNN7.0,然后在tensorflow虚拟环境中通过pip install tensorflow-gpu命令安装tensorflow。不同版本的CUDA是可以共存的,因为不同程序可以链接不同版本的CUDA文件。通过pip install tensorflow-gpu命令安装tensorflow时,程序会自动安装最新版本的tensorflow,命令执行完毕后我电脑上会安装1.13版本的tensorflow-gpu,但是在python中import tensorflow是会发生如下错误:

    Traceback (most recent call last):
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
    File "D:\Anaconda3\envs\tensorflow\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
    File "D:\Anaconda3\envs\tensorflow\lib\imp.py", line 343, in load_dynamic
    return _load(spec)
    ImportError: DLL load failed: 找不到指定的模块。

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
    ImportError: Traceback (most recent call last):
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
    File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
    File "D:\Anaconda3\envs\tensorflow\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
    File "D:\Anaconda3\envs\tensorflow\lib\imp.py", line 343, in load_dynamic
    return _load(spec)
    ImportError: DLL load failed: 找不到指定的模块

    找不到某些动态链接库
    有网友说缺少VS的某些环境,需要安装这个组件:https://www.microsoft.com/en-us/download/details.aspx?id=53587
    我没有采取这个解决方案,因为我有更新版本的这个组件,因为之前一直使用1.7版本的tensorflow,所以通过命令pip install tensorflow-gpu==1.7安装低版本的tensorflow,问题得到解决。

在windows10上安装caffe和tensorflow的更多相关文章

  1. 【记录】在MAC上安装caffe

    ---恢复内容开始--- 最近尝试在MAC(OS X 10.11 El Capitan)上安装Caffe 以及Python接口遇到了一些问题但是官方安装教程上并没有提出这些问题的解决办法搜索了很久(主 ...

  2. 在Ubuntu16.04.4和Windows10上安装jdk

    在Ubuntu16.04.4和Windows10上安装jdk 一.在Ubuntu16.04.4上安装jdk  1.下载jdk安装包     首先我们在oracle官网上下载jdk-8u161-linu ...

  3. windows10上安装mysql详细图文教程

    在windows10上安装mysql详细图文教程   这篇文章主要介绍了在windows10上安装mysql详细图文教程,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧 环境:windw ...

  4. 在Jetson TX2上安装caffe和PyCaffe

    caffe是Nvidia TensorRT最支持的深度学习框架,因此在Jetson TX2上安装caffe很有必要.顺便说一句,下面的安装是支持python3的. 先决条件 在Jetson TX2上完 ...

  5. Ubuntu 14.04上安装caffe

    本来实在windows 10上尝试安装caffe,装了一天没装上,放弃; 改在windows上装ubuntu的双系统,装了一个下午,不小心windows的系统盘被锁死了,也不会unlock?只好含泪卸 ...

  6. Caffe初学者第一部:Ubuntu14.04上安装caffe(CPU)+Python的详细过程 (亲测成功, 20180524更新)

    前言: 最近在学习深度学习,最先要解决的当然是开源框架的环境安装了.之前一直在学习谷歌的Tensorflow开源框架,最近实验中需要跟别人的算法比较,下载的别人的代码很多都是Caffe的,所以想着搭建 ...

  7. 在windows10上搭建caffe

    caffe环境的搭建一直是让我最头疼的,最近在Windows10上成功搭建了caffe,在此对搭建过程进行记录. 安装主要是按照caffe github上的安装说明进行的,caffe的github主页 ...

  8. Win10上安装Keras 和 TensorFlow(GPU版本)

    一. 安装环境 Windows 10 64bit  家庭版 GPU: GeForce GTX1070 Python: 3.5 CUDA: CUDA Toolkit 8.0 GA1 (Sept 2016 ...

  9. Windows10上安装Keras 和 TensorFlow-GPU

    安装环境: Windows 10 64bit GPU: GeForce gt 720 Python: 3.5.3 CUDA: 8 首先下载Anaconda3的Win10 64bit版,安装Python ...

随机推荐

  1. Yii2 使用 RESTful 写API接口 实例

    Yii2 使用 RESTful? 其实 Yii2 框架本身就对 RESTful 是友好支持的,具体可以看官方文档(http://www.yiichina.com/doc/guide/2.0/rest- ...

  2. Springboot整合log4j2日志全解

    目录 常用日志框架 日志门面slf4j 为什么选用log4j2 整合步骤 引入Jar包 配置文件 配置文件模版 配置参数简介 Log4j2配置详解 简单使用 使用lombok工具简化创建Logger类 ...

  3. 027.1 反射技术 Class

    JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反 ...

  4. 将替代ListView的RecyclerView 的使用(一)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/by317966834/article/details/36205923 RecyclerView 是 ...

  5. 【转】Tomcat连接器:Coyote框架

    不论Tomcat的容器设计得如何精妙,本质上Tomcat就是个http服务器,需要从socket中获得HTTP数据流:另一方面,容器只能处理封装好的org.apache.coyote.Request ...

  6. Azkaban学习之路 (二)Azkaban的安装

    安装过程 1.软件介绍 Azkaban Web 服务器:azkaban-web-server-2.5.0.tar.gz Azkaban Excutor 执行服务器:azkaban-executor-s ...

  7. docker devicemapper 问题

    DOCKER_OPTS= "--storage-driver=devicemapper  --storage-opt  dm.basesize=50G --storage-opt dm.da ...

  8. linux 的常用命令---------第七阶段

       LVM 逻辑卷管理器  -----其作用为 :在线扩容 卷组 vG  (也叫LVM卷组) ------------------→     在此卷组vG上建立  :       逻辑卷组 LV ( ...

  9. CentOS下iptables详解

    一:前言   防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防 ...

  10. 数据库基本的的sql语句

    数据库数据类型: 1.定义一个学生课程模式: create schma<模式名>authorization <用户名> create schema authorization ...