环境:

head -n  /etc/issue
# Ubuntu 19.10 \n \l python -V
# Python 2.7.

其中,python环境是我自己建立的虚拟 venv 方便测试( 相当于你的python 实际路径)

1.  准备

下载 pylearn2 源码: https://github.com/lisa-lab/pylearn2

下载theano源码: https://github.com/Theano/Theano

下载训练数据集: http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz  (来源官方:http://www.cs.toronto.edu/~kriz/cifar.html)

目录结构:

以下出现的目录都是相对于次工程的根目录

your_program_path/data/cifar10 

2. 安装

2.1安装 theano, 依赖的环境: g++,numpy,scipy:

pip install Theano

或者
cd Theano
python setup.py build
python setup.py install

注意: ubuntu 自带 g++ , 你可以运行 test g++ 没有输出则正常. 如果你是 windows 系统,可以下载MinGW安装g++ , 然后用  test g++ 来检验

2.2安装 pylearn2:

cd pylearn2
python setup.py build
python setup.py install

这时会报错: No module named ‘theano.compat.six’

可以参考: Ubuntu19 安装Theano出现“No module named ‘theano.compat.six’”

修改 pylearn2/setup.py 第8行:

# from theano.compat.six.moves import input  # 注释这一行
from six.moves import input  # 新增

然后,重新运行以上命令后可以正常安装

2.3 设置 pylearn 的数据文件路径

windows:

计算机=>>属性=>>高级系统设置=>>环境变量=>>新建=>>PYLEARN2_DATA_PATH

值:  your_program_path/data/

需要重新开一个cmd 窗口

ubuntu : 

vim ~/.bashrc 新增一行: (参考官方文档:http://deeplearning.net/software/pylearn2/)

export PYLEARN2_DATA_PATH=your_program_path/data/

之后 source ~/.bashrc  

在 data 目录下新建目录  cifar10 (文件名必须是这个,之后测试的数据需要从这里读取), 然后将在的CIFAR-100 python version 拷贝到 cifar10 下解压:

3.测试Pylearn2

cd your_program_path/pylearn2/scripts/tutorials/grbm_smd/
python make_dataset.py

注意:这时会在 your_program_path/venv/lib/python2.7/site-packages/pylearn2/scripts/tutorials/grbm_smd (如果你没有使用venv 则在你的python2.7 安装目录下的对应位置) 下生成两个文件:

将这两个文件拷贝到 your_program_path/pylearn2/pylearn2/scripts/tutorials/grbm_smd 下:

训练数据:

pip install pyyaml
cd your_program_path/pylearn2/pylearn2/scripts/tutorials/grbm_smd
python ../../ train.py cifar_grbm_smd.yaml  

训练完成后在当前目录生成 cifar_grbm_smd.pkl  文件

4. 展示训练结果

cd your_program_path/pylearn2/pylearn2/scripts/tutorials/grbm_smd
python ../../show_weights.py --out ToShow.jpg cifar_grbm_smd.pkl

报错:You are trying to use PIL-dependent functionality but don't have PIL installed.

参考:(http://www.pianshen.com/article/7207229837/)

pip install pillow

然后重新运行以上命令当前目录生成  ToShow.jpg

测试完成.

用到的第三方包:

numpy==1.16.
Pillow==6.2.
pylearn2==0.1.dev0
PyYAML==5.2
scipy==1.2.
six==1.13.
Theano==0.8.

Ubuntu19 安装 pylearn2的更多相关文章

  1. ubuntu16安装pylearn2 出现错误提示importerror:no module named six.moves

    由于市面上的一些教程时间比较早,入门学习时跟随教程安装容易出现各种错误,这些错误基本都是版本不同导致的 所以,我们安装过程中一定要指出包的版本,如果你已经遇到no module named six.m ...

  2. Ubuntu19 安装Theano出现“No module named ‘theano.compat.six’”

    解决办法:直接在下载好pythearn2包的目录下,对setup.py文件进行修改:将  from theano.compat.six.moves import input 改为  from six. ...

  3. Deep learning:四十四(Pylearn2中的Quick-start例子)

    前言: 听说Pylearn2是个蛮适合搞深度学习的库,它建立在Theano之上,支持GPU(估计得以后工作才玩这个,现在木有这个硬件条件)运算,由DL大牛Bengio小组弄出来的,再加上Pylearn ...

  4. 基于scikitlearn的深度学习环境安装(三)(完整版)

    OS Linux  Ubuntu14.04 安装 pip (python2.7.9或以上自带pip) sudo apt-get install python-pip pip是python环境下安装包的 ...

  5. 解决Ubuntu19.04无法安装SecureCRT

    推荐下载SecureCRT的tar包 在ubuntu19.04上安装SecureCRT的时候,报错libssl1.0.0-xxx没有安装 解决办法:下载并安装libssl1.0.0_1.0.1t-1+ ...

  6. Ubuntu19.04的安装过程详解以及操作系统初始化配置

    Ubuntu19.04的安装过程详解以及操作系统初始化配置                                                                       ...

  7. ubuntu19.10安装cuda-10.1

    ubuntu19.10安装cuda-10.1 1.安装N卡驱动: 打开ubuntu的软件和更新,设置N卡驱动 2.查看ubuntu显卡驱动 nvidia-smi 显示: Sun Feb 23 06:4 ...

  8. ubuntu19.10 系统需要安装的软件

    将ubuntu18 升级到ubuntu19 期间好几次卡在启动界面,比较担心要不要重装系统,有幸后来正常了.明显感觉操作快了不少.下半年稳定版就出来,到时候免不了再折腾一番,提前把安全记录做好. 下面 ...

  9. Ubuntu19.10安装

    # 有一说一,UI好看多了 正文开始 # 1.做U盘 ​ # 2.修改BIOS选择U盘引导 ​ 底下有提示,F5/F6切换项目 # 3.进入引导盘 ​ 这个界面多了比19.10之前的版本多了两个选项, ...

随机推荐

  1. Docker(二)-在Docker中部署Nginx实现负载均衡(视频教程)

    本教程介绍利用Docker部署Nginx服务实现负载均衡. (双击全屏播放)

  2. 面向对象的六大原则之 接口隔离原则——ISP

    ISP = Interface Segregation Principle   ISP的定义如下: 1.客户端不应该依赖他不需要的接口 2.一个类对另外一个类的依赖性应该是建立在最小的接口上 3.不应 ...

  3. React Router 4.0 体验

    React Router 4.0 (以下简称 RR4) 已经正式发布,它遵循React的设计理念,即万物皆组件.所以 RR4 只是一堆 提供了导航功能的组件(还有若干对象和方法),具有声明式(声明式编 ...

  4. 【设计模式】Factory

    前言 这篇博客将包括两种设计模式,一种是工厂模式,一种是抽象工厂模式.不管是哪一种设计模式,本质上在解决的问题是对象创建的问题.工厂,可以是简简单单的一个函数,也可以是一个有具体实现的类,也可以是一个 ...

  5. ajax的jQuery的表单序列化获取参数serialize()

    需要引入jQuery.js才能使用$("form表单的id").serialize()可获取form表单里面所有表单元素的值和name属性值,按顺序拼接成查询字符串格式为name值 ...

  6. 修改host指定域名指向ip,Windows脚本与Linux脚本

    修改host指定域名指向ip,Windows脚本与Linux脚本 一,Windows系统修改hosts文件 Windows系统下hosts文件位置:C:\Windows\System32\driver ...

  7. Linux安装php-mysql提示需要:libmysqlclient.so.18()(64bit)的解决办法

    Linux安装php-mysql提示需要:libmysqlclient.so.18()(64bit)的解决办法 在LNMP编译环境下安装zabbix会出现 执行:yum -y install net- ...

  8. Skyshop.Detail Maps

    Secondary Maps(Detail Maps) & Detail Mask 增加模型细节,而不需要使用单张的超大贴图. 应用:增加皮肤细节,比如毛孔:砖墙添加细小的裂缝和青苔:大型金属 ...

  9. (八)OpenStack---M版---双节点搭建---Cinder安装和配置

    ↓↓↓↓↓↓↓↓视频已上线B站↓↓↓↓↓↓↓↓ >>>>>>传送门 1.创建数据库并授权 2.获得admin凭证执行管理员命令并创建服务证书 3.创建块存储设备AP ...

  10. Rust中的字符串处理

    一路看过来,怕是我知道的所有语言当,处理最复杂吧. 当然,如果能正确处理,也是能理解最到位的. 这,就是我为什么要学Rust的原因. 暂无用武之地,但逻辑体系和知识点够复杂,才能应对更多事务~ fn ...