本节我们会使用RNN来进行回归训练(Regression),会继续使用自己创建的sin曲线预测一条cos曲线. 首先我们需要先确定RNN的各种参数: import tensorflow as tf import numpy as np import matplotlib.pyplot as plt BATCH_START = 0 # 建立 batch data 时候的 index TIME_STEPS = 20 # backpropagation through time 的 time_step…
设置RNN的参数 我们本节采用RNN来进行分类的训练(classifiction).会继续使用手写数据集MNIST. 让RNN从每张图片的第一行像素读到最后一行,然后进行分类判断.接下来我们导入MNIST数据并确定RNN的各种参数(hyper-parameters) 注: 参数(parameters)/参数模型 由模型通过学习得到变量,比如权重w,偏置b 超参数(hyper-parameters)/算法参数 根据经验设定,影响到权重w和偏置b的大小,比如迭代次数.隐藏层的层数.每层神经元的个数.…
Dropout 解决 overfitting overfitting也被称为过度学习,过度拟合.他是机器学习中常见的问题. 图中的黑色曲线是正常模型,绿色曲线就是overfitting模型.尽管绿色曲线很精确的区分了所有的训练数据,但是并没有描述数据的整体特征,对新测试的数据适应性比较差. 举个Regression(回归)的例子. 第三条曲线存在overfitting问题,尽管它经过了所有的训练点,但是不能很好地反映数据的趋势,预测能力严重不足.tensorflow提供了强大的dropout方法…
运行代码: import tensorflow as tf import numpy as np import matplotlib.pyplot as plt BATCH_START = 0 TIME_STEPS = 20 BATCH_SIZE = 50 INPUT_SIZE = 1 OUTPUT_SIZE = 1 CELL_SIZE = 10 LR = 0.006 def get_batch(): global BATCH_START, TIME_STEPS # xs shape (50ba…
首先我们来简单的了解一下什么是卷积神经网路(Convolutional Neural Network) 卷积神经网络是近些年逐步兴起的一种人工神经网络结构, 因为利用卷积神经网络在图像和语音识别方面能够给出更优预测结果, 这一种技术也被广泛的传播可应用. 卷积神经网络最常被应用的方面是计 算机的图像识别, 不过因为不断地创新, 它也被应用在视频分析, 自然语言处理, 药物发现, 等等. 卷积也就是说神经网络不再是对每个像素的输入信息做处理了,而是图片上的每一个小块像素区域进行处理,这种做法加强了…
Tensorflow实现softmax regression识别手写数字 MNIST手写数字识别可以形象的描述为机器学习领域中的hello world. MNIST是一个非常简单的机器视觉数据集.它由几万张28*28像素的手写数字组成,这些图片只包含灰度值信息.我们的任务就是对这些手写数字进行分类.转换为0-9共十个分类. 首先在命令行中运行如下代码加载MNIST手写数据集: from tensorflow.examples.tutorials.mnist import input_data #…
本节讲的是机器学习中出现的过拟合(overfitting)现象,以及解决过拟合的一些方法. 机器学习模型的自负又表现在哪些方面呢. 这里是一些数据. 如果要你画一条线来描述这些数据, 大多数人都会这么画. 对, 这条线也是我们希望机器也能学出来的一条用来总结这些数据的线. 这时蓝线与数据的总误差可能是10. 可是有时候, 机器过于纠结这误差值, 他想把误差减到更小, 来完成他对这一批数据的学习使命. 所以, 他学到的可能会变成这样 . 它几乎经过了每一个数据点, 这样, 误差值会更小 . 可是误…
tensorboard可视化工具 tensorboard是tensorflow的可视化工具,通过这个工具我们可以很清楚的看到整个神经网络的结构及框架. 通过之前展示的代码,我们进行修改从而展示其神经网络结构. 一.搭建图纸 首先对input进行修改,将xs,ys进行新的名称指定x_in y_in 这里指定的名称,之后会在可视化图层中inputs中显示出来 xs= tf.placeholder(tf.float32, [None, 1],name='x_in') ys= tf.placeholde…
matplotlib可视化 构件图形 用散点图描述真实数据之间的关系(plt.ion()用于连续显示) # plot the real data fig = plt.figure() ax = fig.add_subplot(1,1,1) ax.scatter(x_data, y_data) plt.ion()#本次运行请注释,全局运行不要注释 plt.show() 接下来我们来显示预测数据 每隔50次训练就刷新一次图形 用红色宽度为5的线条来显示我们的预测数据与输入数据之间的关系 并暂停0.1…
TensorFlow实现Softmax Regression(回归)识别手写数字.MNIST(Mixed National Institute of Standards and Technology database),简单机器视觉数据集,28X28像素手写数字,只有灰度值信息,空白部分为0,笔迹根据颜色深浅取[0, 1], 784维,丢弃二维空间信息,目标分0~9共10类.数据加载,data.read_data_sets, 55000个样本,测试集10000样本,验证集5000样本.样本标注信…