输入import tensorflow as tf应该出现_【TF】完美解决 pip3 install tensorflow 没有models库,读取PTB数据...

aff62e8996b6ada453b71d39ba3035bf.png

前言

之前我学tensorflow时候遇到的一个问题,目前这篇文章在CSDN已经快破万阅读了,不知道对大家是否有用,我搬运了一下。

需要的就看一下吧。

安装tensorflow

SEU-AI蜗牛车:【手把手AI项目】三、Ubuntu环境下在已经装好的caffe环境下搭建tensorflow-gpu​zhuanlan.zhihu.com
4e31c6cb4cf184933664f120e1d20a90.png

读取PTB数据集发现问题

之前一直用的好好的,最近研究RNN 和LSTM 需要用到PTB数据集,这个数据集在介绍的用法里可以直接调用tensorflow的包进行read 出 训练集,测试集,验证集 PTB 可以直接百度下载 PTB目录为

2f6e7bd7a6b423eee92a6ed97c793a20.png

需要的数据集在data下分别为ptb.test.txt ptb.train.txt ptb.valid.txt

a51f6ef324d474dead2f267b052a3ae1.png

代码如下

from tensorflow.models.rnn.ptb import reader
DATAPATH = './simple-example/data'
train_data, valid_data, test_data, _ = reader.ptb_raw_data(DATAPATH)  

问题

发现pip3方式下安装的tensorflow没有models库 上网上查了一下得知

目前tf1.0版本的也就是比较新的版本都将models库剔除,当做第三方库来使用了 解决方案:

  1. 直接重新下载安装 tf的低的版本
  2. 手动安装models库

安装models库

  1. 我首先尝试 直接下载github上的

models: https://github.com/tensorflow/models 直接放到tf文件夹下,后来发现tf根本找不到这个包,本人不才(因为平时用包全都是直接pip3 install的方式所以没太在意这些东西),主要原因不知为何,我猜是因为此刻这个的models相当于第三方库,这里直接复制到文件夹下没有编译,所以根本没用

  1. 查了下这个models库的用法可以通过git命令进行clone到tensorflow文件下 ① 安装git 这个百度多的是就不多说了 ② 手动找到python36下的文件tensorflow文件夹

567cf603f06bee4fd6fa264634d8a94c.png

进行鼠标右键 点击 选择 Git Bash here (这个过程也可以先在任何一个地方Git Bash here 之后利用cd 到tf文件夹里也一样) ③ 在命令框里输入

git clone --recurse-submodules https://github.com/tensorflow/models

8e31cea1365c1e6f04864c54badc21b0.png

13c5fa7f5f6ac83a8bcf109a7495412f.png

安装编译完毕 这回你会发现tf文件夹下已经有models文件夹了

6be17003856557d00e4d2b959a352d41.png

导入程序试试看

from tensorflow.models.tutorials.rnn.ptb import reader#存在models了也可以导入了

随便写个整体程序

from tensorflow.models.tutorials.rnn.ptb import reader

DATAPATH = './simple-examples/data'
train_data, valid_data, test_data, _ = reader.ptb_raw_data(DATAPATH)

print(len(train_data))

print(train_data[:100])

万万没想到又出现一个问题

995c6c3bd96f9b86655be16f47a001dd.png

说找不到reader 这个 后来发现问题出在ptb的__init__.py文件下

d36d008d459fc815c470889811967867.png

发现这个import 是错的没法import 进去reader 我又查看了一下其他的第三方库的这个初始文件发现 需要这么操作就解决了

c513023ec240631b4d3fb5b94d52800b.png

其实问题就是出在这个导入其他的py文件的时候 导入出错了。

from tensorflow.models.tutorials.rnn.ptb import reader
from tensorflow.models.tutorials.rnn.ptb import util

经过以上的这么折腾可算全部KO,这回再走一遍那个读取PTB数据的程序

from tensorflow.models.tutorials.rnn.ptb import reader

DATAPATH = './simple-examples/data'
train_data, valid_data, test_data, _ = reader.ptb_raw_data(DATAPATH)

print(len(train_data))

print(train_data[:100])

2b39a7a67b79bf4b7e2e26d7ef5bfe15.png

完美运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值