人工智能实践:Tensortflow笔记
零基础学习Tensortflow
SuperBetterMan
正在成为一名High Level的程序猿
展开
-
3.4输入手写数字图片输出识别结果
前一段时间忙于csgo,也roll了几个小皮肤,沉迷于csgo中,没有学习,有点颓。今天呢,又跟老师抬杠,抬杠的时候着实很爽,很舒服。害,到头来还是面对现实。言归正传,我们想要将数字图片喂给神经网络,让神经网络去识别图片上的数字,以验证模型训练的准确性我们准备了10张数字图片,如下图所示由前面训练模型,可知我们训练的图片都是28*28像素的黑底白字图片,所以我们得对图片进行预处理def...原创 2020-04-14 15:51:12 · 1718 阅读 · 0 评论 -
3.3手写数字准确率输出
依据3.2的模块化思想,我们编写前向传播、反向传播和测试输出三个代码前向传播import tensorflow as tfINPUT_NODE = 784#输入784个神经网络节点,因为图片是784个像素OUTPUT_NODE = 10#每次输出10个数,每个数表示对应索引号出现的概率,实现了10个数LAYER1_NODE =500#定义了隐藏层的节点个数def get_weight(...原创 2020-04-09 18:17:58 · 207 阅读 · 0 评论 -
3.2模块化搭建神经网络八股(二)
对于前向传播,要定义参数w,参数b,要得出推送y的网络结构;参数w用get_weight()实现,参数b用get_bias()实现对于反向传播要训练网络参数神经网络的优化可通过下面的方法实现测试输出准确率...原创 2020-04-08 19:10:00 · 193 阅读 · 0 评论 -
3.1基于MNIST数据集模块化搭建神经网络实现测试程序输出手写数字识别准确率(一)
基于MNIST数据集模块化搭建神经网络实现测试程序输出手写数字识别准确率项目拆分为三步了解MNIST数据集模块化搭建神经网络手写数字识别准确率输出我们先来理解MNIST数据集该数据集一共有7万张28*28像素的0~9手写数字图片,其中6万张用于训练,1万张用于测试.每一张图片都有784个像素点,我们把784个像素点组成一维数组,喂给神经网络,作为输入特征另外MNIST数据集也提供...原创 2020-04-06 15:45:41 · 419 阅读 · 0 评论 -
2.4神经网络优化之正则化
在提出正则化这个概念之前,我们先介绍过拟合现象。所谓过拟合就是所训练的模型仅仅适用于训练集,对于新的数据就不适用。那么如何解决过拟合呢?我们提出正则化方法,通过正则化方法可以有效解决过拟合正则化就是在损失函数引入复杂度指标,利用给参数加权值,以弱化训练数据的噪声使用正则化后,损失函数loss变成两部分在图片中,我们看到如何在代码去实现求loss(w)eg.生成一套数据集,随机产生300个...原创 2020-04-03 18:40:31 · 268 阅读 · 0 评论 -
解决The TensorFlow library wasn't compiled to use SSE instructions...
终于我忍不了,我真的是忍不了前面我提到过这不是报错,而是提示警告,大概意思就是你可以加速,但是没必要,而且严重影响我的心情Can nothing affect my programming mood如果你遇到和我一样的问题,而且也无法忍受,那么请继续看下去你需要在你代码前面加上这么几行代码import osos.environ["TF_CPP_MIN_LOG_LEVEL"]='1' ...原创 2020-04-02 11:17:24 · 423 阅读 · 0 评论 -
2.3神经网络优化之滑动平均
滑动平均也叫影子值,记录了每一个参数一段时间内过往值的平均,增强模型的泛化性针对所有的参数w和b,打个比方像是参数加了影子,影子随着参数的变化,也缓慢变化在tensortflow里,我们用下面的代码去使用滑动平均下面通过具体的代码去理解import tensorflow as tf#定义变量及滑动平均类#定义一个32位浮点变量,初始值为0.0,这个代码就是不断更新w1参数,优化w1...原创 2020-04-02 10:59:52 · 176 阅读 · 0 评论 -
2.2神经网络优化之学习率
学习率learn_rate:每次参数更新的幅度参数的更新遵从下面的公式#设损失函数loss=(w+1)^2,令w的初值为5.反向传播求最优w,即最小loss对应的wimport tensorflow as tf#定义初始w为5w = tf.Variable(tf.constant(5,dtype=tf.float32))#定义损失函数为loss# b = tf.constant(1...原创 2020-04-01 17:16:24 · 741 阅读 · 0 评论 -
2.1神经网络优化之损失函数
损失函数(loss):预测(y)与已知答案(y_)的差距神经网络优化的目标就是想找到某一套参数使损失函数最小主流的loss计算有三种均方误差mse(Mean Squared Error)自定义交叉熵ce(Cross Entropy)eg.预测酸奶的日销量y。x1和x2是影响日销量的因素建模前,应预先采集的数据有,每日x1和x2和y(已知答案,最佳情况销量=产量),拟造数据X,Y_,...原创 2020-03-30 21:39:46 · 609 阅读 · 0 评论 -
1.3Tensorflow框架之反向传播
反向传播:训练参数模型,在所有参数上梯度下降,使NN模型在训练数据上的损失函数最小损失函数loss:预测值(y)与已知答案(y_)的差距如何得到损失函数loss,我们可以用均方误差MSE去实现,代码如下loss=tf.reduce_mean(tf.square(y-y_))对于反向传播的训练方法:我们以减小loss值作为优化目标#学习率可以为较小的值,学习率决定了参数每次更新的幅度t...原创 2020-03-29 10:34:12 · 178 阅读 · 0 评论 -
1.2Tensorflow框架之前向传播
神经网络实现过程:准备数据集,提取特征,作为输入喂给神经网络搭建NN结构,从输入到输出(先搭建计算图,再用会话执行)NN前向传播—到计算输出大量特征喂给NN,迭代优化NN参数NN反向传播–优化参数模型使用训练好的模型预测和分类神经网络的机器学习包括两个部分:训练过程和使用过程前向传播就是搭建模型,实现推理eg.生产一批零件将体积X1和重量X2为特征输入NN,通过NN输出一个数值...原创 2020-03-28 19:07:10 · 183 阅读 · 0 评论 -
1.1Tensorflow框架之张量、计算图、会话
如何利用python搭建第一个神经网络,总结搭建八股什么是神经网络?(我们这里指的是人工神经网络)人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关...原创 2020-03-27 12:09:54 · 221 阅读 · 0 评论