我有一个来自MNIST数据集的pkl文件,它由手写的数字图像组成.
我想看看每个数字图像,所以我需要解压缩pkl文件,除了我不知道如何.
有没有办法解压缩/解压缩pkl文件?
TensorFlow MNIST示例未使用fully_connected_feed.py运行
我检查了一下,意识到这input_data
不是内置的.所以我从这里下载了整个文件夹.我该如何开始教程:
import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-6-a5af65173c89> in <module>()
----> 1 import input_data
2 mnist = tf.input_data.read_data_sets("MNIST_data/", one_hot=True)
ImportError: No module named input_data
Run Code Online (Sandbox Code Playgroud)
我正在使用iPython(Jupyter)所以我需要将我的工作目录更改为我下载的这个文件夹吗?或者我可以将其添加到我的tensorflow
目录中吗?如果是这样,我在哪里添加文件?我安装tensorflow
了pip
(在我的OSX上),当前的位置是~/anaconda/lib/python2.7/site-packages/tensorflow/__init__.py
这些文件是否可以通过tensorflow
类似的sklearn
数据集直接访问?或者我只是想进入目录并从那里开始工作?这个例子不清楚.
我正在从github链接尝试一个简单的tensorflow演示代码.
我目前正在使用python版本3.5.2
Z:\downloads\tensorflow_demo-master\tensorflow_demo-master>py Python
3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32<br> Type "help", "copyright", "credits" or "license" for more information.
Run Code Online (Sandbox Code Playgroud)
当我在命令行中尝试board.py时遇到了这个错误.我已经安装了运行它所需的所有依赖项.
def _read32(bytestream):
dt = numpy.dtype(numpy.uint32).newbyteorder('>')
return numpy.frombuffer(bytestream.read(4), dtype=dt)
def extract_images(filename):
"""Extract the images into a 4D uint8 numpy array [index, y, x, depth]."""
print('Extracting', filename)
with gzip.open(filename) as bytestream:
magic = _read32(bytestream)
if magic != 2051:
raise ValueError(
'Invalid magic number %d in MNIST image file: %s' %
(magic, filename))
num_images …
Run Code Online (Sandbox Code Playgroud) 我使用OpenCV中的facerecognizer创建了一个简单的面部识别功能.它可以很好地处理来自人的图像.
现在我想通过使用手写字符而不是人来进行测试.我遇到了MNIST数据集,但是他们将图像存储在一个我从未见过的奇怪文件中.
我只需从中提取一些图像:
train-images.idx3-ubyte
Run Code Online (Sandbox Code Playgroud)
并将它们保存在文件夹中 .gif
或者我想念这个MNIST的事情.如果是,我在哪里可以获得这样的数据集?
编辑
我也有gzip文件:
train-images-idx3-ubyte.gz
Run Code Online (Sandbox Code Playgroud)
我试图阅读内容,但show()
不起作用,如果read()
我看到随机符号.
images = gzip.open("train-images-idx3-ubyte.gz", 'rb')
print images.read()
Run Code Online (Sandbox Code Playgroud)
编辑
通过使用以下方式管理以获得一些有用的输出:
with gzip.open('train-images-idx3-ubyte.gz','r') as fin:
for line in fin:
print('got line', line)
Run Code Online (Sandbox Code Playgroud)
不知何故,我现在必须将其转换为图像,输出:
我在对pytorch 中的 MNIST 数据集的2 个隐藏层的全连接深度神经网络进行分类时遇到问题。
我想在两个隐藏层中都使用tanh作为激活,但最后,我应该使用softmax。
对于损失,我选择nn.CrossEntropyLoss()
了 PyTORch,它(正如我发现的那样)不想将单热编码标签作为真正的标签,而是采用 LongTensor 类。
我的模型是nn.Sequential()
,当我最终使用 softmax 时,它在测试数据的准确性方面给了我更糟糕的结果。为什么?
import torch
from torch import nn
inputs, n_hidden0, n_hidden1, out = 784, 128, 64, 10
n_epochs = 500
model = nn.Sequential(
nn.Linear(inputs, n_hidden0, bias=True),
nn.Tanh(),
nn.Linear(n_hidden0, n_hidden1, bias=True),
nn.Tanh(),
nn.Linear(n_hidden1, out, bias=True),
nn.Softmax() # SHOULD THIS BE THERE?
)
criterion = nn.CrossEntropyLoss()
optimizer = torch.optim.SGD(model.parameters(), lr=0.1, momentum=0.5)
for epoch in range(n_epochs):
y_pred = model(X_train)
loss = criterion(y_pred, …
Run Code Online (Sandbox Code Playgroud) 我正在尝试学习TensorFlow,我从以下链接实现了MNIST示例:http://openmachin.es/blog/tensorflow-mnist 我希望能够实际查看训练/测试图像.所以我正在尝试添加代码,以显示第一批的第一张火车图片:
x_i = batch_xs[0]
image = tf.reshape(x_i,[28,28])
Run Code Online (Sandbox Code Playgroud)
现在,因为Data是float32类型(值在[0,1]范围内),我试图将它转换为uint16,然后将其编码为png以显示图像.我试过用tf.image.convert_image_dtype and tf.image.encode_png
,但没有成功.你能帮我理解如何将原始数据转换为图像并显示图像?
我是Tensorflow的新手,我正在尝试构建能够对我的图像执行OCR的模型.我必须阅读9个字符(固定在所有图像中),数字和字母.我的模型与此类似
https://matthewearl.github.io/2016/05/06/cnn-anpr/
我的问题是,我是否应该首先针对每个角色训练我的模型,然后在组合角色后获得完整的标签.或者我应该直接在全标签上训练?
我知道我需要传递给模型,图像+相应图像的标签,这些标签的格式是什么,是文本文件,我对该部分有点困惑,所以对传递给模型的标签格式有任何解释会有帮助吗?谢谢,谢谢.
这是我正在运行的示例MNIST代码:
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets('MNIST_data', one_hot=True)
import tensorflow as tf
sess = tf.InteractiveSession()
x = tf.placeholder(tf.float32, shape=[None, 784])
y_ = tf.placeholder(tf.float32, shape=[None, 10])
W = tf.Variable(tf.zeros([784,10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x,W) + b)
def weight_variable(shape):
initial = tf.truncated_normal(shape, stddev=0.1)
return tf.Variable(initial)
def bias_variable(shape):
initial = tf.constant(0.1, shape=shape)
return tf.Variable(initial)
def conv2d(x, W):
return tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding='SAME')
def max_pool_2x2(x):
return tf.nn.max_pool(x, ksize=[1, 2, 2, 1],
strides=[1, 2, 2, 1], padding='SAME')
W_conv1 = weight_variable([5, …
Run Code Online (Sandbox Code Playgroud) 当我导入 tensorflow 时
import tensorflow as tf
Run Code Online (Sandbox Code Playgroud)
我没有收到错误。但是,我确实收到以下错误。如果有帮助,我正在使用 spyder。
对于其他问题,我确保使用 conda 和 pip 安装是最新的(v1.8)张量流。这并没有解决问题。请协助。
import tensorflow.examples.tutorials.mnist.input_data as input_data
ModuleNotFoundError: No module named 'tensorflow.examples'
Run Code Online (Sandbox Code Playgroud) TensorFlow构建了一种存储数据的好方法.例如,这用于在示例中存储MNIST数据:
>>> mnist
<tensorflow.examples.tutorials.mnist.input_data.read_data_sets.<locals>.DataSets object at 0x10f930630>
Run Code Online (Sandbox Code Playgroud)
假设有一个输入和输出numpy数组.
>>> x = np.random.normal(0,1, (100, 10))
>>> y = np.random.randint(0, 2, 100)
Run Code Online (Sandbox Code Playgroud)
如何在tf
数据集中转换它们?
我想使用像这样的功能 next_batch