Python和tensorflow的一些常用代码

1.为数据增加维度

# Price是一个1行5列的矩阵,注意列表是两层,表示是二维的:[ [] ]
Price = np.array([[15.90, 16.26, 10.1, 19.19, 25.33]])

# 生成的是一个1维矩阵
mylist = np.array([1, 2, 3])

# 在1维矩阵的基础上增加一个维度,成为2维矩阵
mylist2 = mylist.[:, np.newaxis]

2.关于使用MNIST数据

tensorflow提供了读取数据并解压的方法,只需要引入包:

import tensorflow as tf
import numpy as np
from tensorflow.examples.tutorials.mnist import input_data

mnist_data = input_data.read_data_sets('MNIST_data', one_hot = True)
# 打印输出数据的维度信息,验证是否正确打开了数据
print (mnist_data.train.images.shape, mnist_data.train.labels.shape)
如果正确打开了数据,会显示(55000,784)和(55000,10)。
这里需要注意,在当前python程序目录下,建一个MNIST_data的目录,
把网上下的训练文件和测试文件共4个原样放进去,不能改文件名,必须是:
'train-images-idx3-ubyte.gz'、'train-labels-idx1-ubyte.gz'、
't10k-images-idx3-ubyte.gz'、't10k-labels-idx1-ubyte.gz'。

3.矩阵形状调整:np.reshape()

例如,要求一个二维矩阵的全部元素之和,可以转化为1维的,再用np.sum()去求和。可以这么做:

mat1 = gray_img1[0:3, 0:3]                    # gray_img1是cv2.imread()读入的一个灰度图像数据,是一个二维的矩阵
linear_mat = np.reshape(gray_img1, (gray_img1.size, ))  # 把二维数据展开成1维的,方便求和

 

你可能感兴趣的:(神经网络)