tensorflow
文章平均质量分 57
yunfeather
大三 计科 想进BAT的准大四狗
展开
-
tensorflow网页版手写数字识别-使用flask进行网络部署
tensorflow网页版手写数字识别-使用flask进行网络部署tensorflow如何将训练好的模型部署在网页中呢,在python中可以很方便的使用django或者flask框架来进行搭建。这里我使用轻量级的flask框架进行搭建。首先模型已经放在了checkpoint目录下,想要知道模型怎么保存的,可以查看我往期的博客使用flask需要两个文件夹:一个是static,存放静态文件,例如图片,音乐之类的还有一个是templates,前端网页的模板就放在这个文件夹中...原创 2020-06-27 23:39:48 · 1722 阅读 · 4 评论 -
tensorflow本地导入图片进行手写数字识别
tensorflow本地导入图片进行手写数字识别from PIL import Image #导入图片模块import numpy as np #导入科学计算库import tensorflow as tf #导入机器学习框架model_save_path = './checkpoint/mnist.ckpt' #训练好的模型路径model = tf.keras.models.Sequential([ #实现前向传播 tf.keras.layers.Flatten(),.原创 2020-06-27 23:22:31 · 1459 阅读 · 1 评论 -
tensorflow保存模型到本地
tensorflow保存模型到本地#importimport tensorflow as tf #导入框架import numpy as np #导入科学计算库import os #调用路径# #train, test# mnist = tf.keras.datasets.mnist #加载手写识别数据集## (x_train, y_train), (x_test, y_test) = mnist.load_data() #分配训练集和测试集的输入特征和标签## x_tr.原创 2020-06-27 23:17:02 · 582 阅读 · 0 评论 -
tensorflow中使用class实现手写数字识别
tensorflow中使用class实现手写数字识别代码示例:#第一步,importimport tensorflow as tf #导入模块import numpy as npfrom tensorflow.keras.layers import Dense, Flattenfrom tensorflow.keras import Model#第二步,train, test# mnist = tf.keras.datasets.mnist #导入mnist数据集# (x_原创 2020-06-01 14:11:41 · 457 阅读 · 0 评论 -
tensorflow中使用Sequential()实现手写数字识别
tensorflow中使用Sequential()实现手写数字识别代码示例:#第一步,importimport tensorflow as tf #导入模块import numpy as np#第二步,train, test# mnist = tf.keras.datasets.mnist #导入mnist数据集# (x_train, y_train), (x_test, y_test) = mnist.load_data() #分别配置训练集和测试集的输入和标签path =原创 2020-06-01 13:57:52 · 2804 阅读 · 4 评论 -
tensorflow中mnist数据集
tensorflow中mnist数据集mnist数据集一共有7万张图片,是28 * 28 像素的0 到 9 手写识别数据集,其中6万张用于训练,1万张用于测试。每张图片包含784(28 * 28)个像素点,使用全连接网络可以将784个像素点组成长度为784的一维数组,作为输入特征。导入数据集:方式一: mnist = tf.keras.datasets.mnist #导入mnist数据集 (x_train, y_train), (x_test, y_test) = mnist.l.原创 2020-06-01 13:19:50 · 1912 阅读 · 0 评论 -
tensorflow中使用class构建神经网络的网络结构块
tensorflow中使用class构建神经网络的网络结构块class用来声明网络结构class MyModel(Model): #MyModel表示声明神经网络的名字 def __init__(self): super(MyModel, self).__init__() #初始化父类的参数 //初始化网络结构,构建神经网络所需的各种...原创 2020-06-01 00:30:21 · 2861 阅读 · 2 评论 -
tensorflow中model.fit()用法
tensorflow中model.fit()用法model.fit()方法用于执行训练过程model.fit(训练集的输入特征, 训练集的标签, batch_size,#每一个batch的大小 epochs, #迭代次数 validation_data = (测试集的输入特征,测试集的标签), val...原创 2020-05-31 23:08:40 · 84042 阅读 · 18 评论 -
tensorflow中model.compile()用法
tensorflow中model.compile()用法model.compile()方法用于在配置训练方法时,告知训练时用的优化器、损失函数和准确率评测标准model.compile(optimizer =优化器, loss =损失函数, metrics = ["准确率”])其中:optimizer可以是字符串形式给出的优化器名字,也可以是函数形式,使用函数形式可以设置学习率、动...原创 2020-05-31 21:54:58 · 124936 阅读 · 24 评论 -
tensorflow中tf.keras.models.Sequential()用法
tensorflow中tf.keras.models.Sequential()用法Sequential()方法是一个容器,描述了神经网络的网络结构,在Sequential()的输入参数中描述从输入层到输出层的网络结构model = tf.keras.models.Sequential([网络结构]) #描述各层网络网络结构举例:拉直层:tf.keras.layers.Flatten() #拉直层可以变换张量的尺寸,把输入特征拉直为一维数组,是不含计算参数的层全连接层:tf.ker.原创 2020-05-31 21:29:16 · 48420 阅读 · 9 评论 -
tensorflow.keras搭建神经网络六步法
tensorflow.keras搭建神经网络六步法第一步,import相关模块,如: import tensorflow as tf 第二步,指定输入网络的训练集和标签集,例如训练用的输入x_train和标签y_train,以及测试用的输入x_test和标签y_test 第三步,逐层搭建神经网络,如:model=tf.kreas.models.Sequential() 第四步,在model.compile()中配置训练方法,选择训练时用的优化器、损失函数和最终评价指标 第五步,在model.f原创 2020-05-31 21:03:25 · 1565 阅读 · 2 评论 -
tensorflow中Adam优化器运用
tensorflow中Adam优化器运用Adam优化器引用API:tensorflow.keras.optimizers.Adam代码实现:#Adam#求一阶动量和二阶动量m_w = beta1 * m_w + (1 - beta1) * grads[0] #求一阶动量m_w,和SGDM一阶动量表达式一样m_b = beta1 * m_b + (1 - beta1) * grads[1] #求一阶动量m_b,和SGDM一阶动量表达式一样v_w = bet..原创 2020-05-26 15:54:03 · 12002 阅读 · 0 评论 -
tensorflow中RMSprop优化器运用
tensorflow中RMSprop优化器运用RMSprop优化器引用API:tf.keras.optimizers.RMSprop代码实现:#RMSpropbeta = 0.9 #定义超参数,经验值为0.9v_w = beta * v_w + (1 - beta) * tf.square(grads[0]) #求二阶动量v_wv_b = beta * v_b + (1 - beta) * tf.square(grads[1]) #求二阶动量v_b...原创 2020-05-26 15:17:38 · 7304 阅读 · 0 评论 -
tensorflow中Adagrad优化器运用
tensorflow中Adagrad优化器运用Adagrad优化器引用API:tensorflow.keras.optimizers.Adagrad代码实现:#Adagradv_w += tf.square(grads[0]) #求二阶动量v_w,从开始到现在梯度的平方和v_b += tf.square(grads[1]) #求二阶动量v_b,从开始到现在梯度的平方和w1.assign_sub(learning_rate * grads[0] / tf.sqrt(v..原创 2020-05-26 15:00:58 · 1811 阅读 · 0 评论 -
tensorflow中SGDM优化器用法
tensorflow中SGDM优化器用法每一时刻的一阶动量mt都有上一时刻的一阶动量m(t-1)和当前的梯度gt决定实现代码:#SGDMbeta = 0.9 #引入权重,是个超参数,经验值是0.9m_w = beta * m_w + (1 - beta) * grads[0] #一阶动量加上权重beta,二阶动量加上权重(1 - beta),grads[0]是loss对w1的偏导m_b = beta * m_b + (1 - beta) * grads[1] #一阶..原创 2020-05-26 13:11:39 · 2185 阅读 · 0 评论 -
tensorflow中SGD(无momentum)优化器运用
tensorflow中SGD(无momentum)优化器运用SGD(无momentum)优化器引用API:tensorflow.keras.optimizers.SGD代码实现:#SGD(无monentum)w1.assign_sub(learning_rate * grads[0]) #learning_rate是学习率,这里的grads[0]是一阶动量除以二阶动量的开根号。且一阶动量等于梯度下降,二阶动量这里为0。因此这里的grads[0]代表梯度下降,而梯...原创 2020-05-26 11:49:10 · 3976 阅读 · 0 评论 -
tensorflow中softmax激活函数与交叉熵损失函数相结合
tensorflow中softmax激活函数与交叉熵损失函数相结合求分类问题时,先使用softmax激活函数使输出符合概率分布,再用交叉熵求损失函数tensorflow中提供了两个等价的API:1. y_pro = tf.nn.softmax(y) loss1 = tf.losses.categorical_crossentropy(y_, y)2.loss2 = tf.nn.softmax_cross_entropy_with_logits(y_, y)代码演示...原创 2020-05-25 15:56:08 · 753 阅读 · 1 评论 -
tensorflow中交叉熵损失函数预测酸奶价格
tensorflow中交叉熵损失函数引用API:tensorflow.kreas.losses.categorical_crossentropy则,tf.losses.categorical_crossentropy(y_, y) #y_为真实值,y为预测值交叉熵是说明两个概率分布之间的距离,距离越小,说明二者分布越接近例如:已知真实值y_(1, 1),预测值y1(0.8, 0.6),预测值y2(0.2, 0.4)。这两个预测值哪一个距离真实值最近。可得:H1((1..原创 2020-05-25 15:29:27 · 387 阅读 · 0 评论 -
tensorflow均方误差损失函数预测酸奶价格
tensorflow均方误差损失函数引用API:tensorflow.kreas.losses.MSE均方误差(Mean Square Erroe)是回归问题最常用的损失函数,回归问题解决的是对具体数值的预测,而不是预测某个事先定义好的分类则,lose_mean = tf.reduce_mean(tf.square(y_, y)) #y_为真实值,y_为计算出的预测值tensorflow均方误差损失函数预测酸奶价格import tensorflow as tfimpo原创 2020-05-24 22:55:55 · 647 阅读 · 0 评论 -
tensorflow中softmax激活函数
tensorflow中softmax激活函数引用API:tensorlfow.nn.softmax(x)softmax激活函数对全连接网络进行变换,使其符合概率分布,每个值都在[0,1]区间,且值得和为1.softmax激活函数可以用在神经网络最后一层网络中,适用于多分类问题。而sigmod、tanh、Relu、Leaky Relu只能处理二分类问题。...原创 2020-05-25 11:46:07 · 887 阅读 · 0 评论 -
tensorflow中Leaky Relu激活函数
tensorflow中Leaky Relu激活函数引用API:tensorflow.nn.leaky_relu(x)Leaky Relu激活函数Leaky Relu激活函数引入一个固定斜率a,具有Relu激活函数所有的优点,但并不保证效果比Relu激活函数好优点:跟Relu激活函数想比,输入值小于0也可以进行参数更新,不会造成神经元 死亡缺点:输出非0均值,收敛慢...原创 2020-05-24 22:55:12 · 5849 阅读 · 0 评论 -
tensorflow中Relu激活函数
tensorflow中Relu激活函数Relu激活函数Relu激活函数是一个分段函数,只需要考虑值是否大于0,收敛速度大于sigmod激活函数和tanh激活函数优点:解决了梯度消失问题,值都在正区间内 只需判断输入是否大于0,速度快 提供了神经网络的稀疏表达能力缺点:输出非0均值,收敛慢 由于小于0的不去计算,造成一部分神经元死亡,永远不会被激活,导致 相应的参数不会被更新最好...原创 2020-05-24 22:54:53 · 2206 阅读 · 0 评论 -
tensorflow中tanh激活函数
tensorflow中tanh函数tanh函数优点:收敛速度比sigmod函数快 输出是0均值缺点:函数导数输出为0~1,多次神经网络计算后可能趋向于0,产生梯度消失,无法继续更新参数 幂运算复杂,训练时间长...原创 2020-05-24 22:55:40 · 1538 阅读 · 0 评论 -
tensorflow中sigmod激活函数
tensorflow中sigmod激活函数sigmod激活函数。值越小,输出为0,值越大,输出为1.均值非0,收敛慢函数是幂运算,运算量较大函数导数的输出范围是0~0.25,多次迭代相乘,容易趋向0,产生梯度消失,无法继续更新参数...原创 2020-05-24 22:55:29 · 1050 阅读 · 0 评论 -
numpy中np.mgrid()用法
numpy中np.mgrid()用法np.mgrid(start:end:step) #生成等差数组,[start:end)闭包关系np.mgrid()用法import numpy as np #导入numpy模块a = np.mgrid[1:4:0.5] #生成等差数组aprint(a)结果为:[1. 1.5 2. 2.5 3. 3.5]...原创 2020-05-24 16:27:34 · 8882 阅读 · 0 评论 -
tensorflow中np.vstack()用法
tensorflow中np.vstack()用法import numpy as npnp.vstack(array1, array2) #将数组1:array1和数组2:array2垂直方向相加np.vstack()用法import numpy as np #导入numpy模块a = np.array([1, 2, 3]) #新建数组ab = np.array([4, 5, 6]) #新建数组bc = np.vstack((a, b)) #使用numpy中vstack..原创 2020-05-24 16:15:03 · 3366 阅读 · 0 评论 -
tensorflow中tf.where()用法
tensorflow中tf.where()用法tf.where(statement, a, b) #若条件语句statement为真,则返回a, 否则返回b原创 2020-05-24 15:58:16 · 1463 阅读 · 0 评论 -
tensorflow2.1或tensorflow2.2 ImportError: DLL load failed: 找不到指定的模块
tensorflow2.1 ImportError: DLL load failed: 找不到指定的模块直接给解决方式,降低tensorflow版本到tensorflow2.0即可解决问题,其他解决方式尝试很多种方法后也没有解决。使用清华源安装tensorflow2.0pip uninstall tensorflow #卸载已安装版本pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow==2.0....原创 2020-05-11 17:13:34 · 1546 阅读 · 1 评论 -
tensorflow2.0莺尾花iris数据集分类|超详细
tensorflow莺尾花iris神经网络实现#导入模块import tensorflow as tf #导入tensorflow模块from sklearn import datasets #导入sklearn中的datasets模块,方便下载内置的iris数据集from matplotlib import pyplot as plt #导入matplotlib中的pyplot,待会画图import numpy as np #导入numpy模块做数学运算#导入数据x_data =原创 2020-05-11 14:38:13 · 2588 阅读 · 0 评论 -
tensorflow将特征与标签配对
tensorflow将特征与标签配对import tensorflow as tf #导入tensorflowfeatures = tf.constant([1, 2, 3, 4]) #创建实例,内容为特征值labels = tf.constant([0, 0, 1, 0]) #创建实例,内容为标签值#使用from_tensor_slices函数将特征与标签配对dataset = tf.data.Dataset.from_tensor_slices((features, labels))原创 2020-05-10 20:16:08 · 1412 阅读 · 0 评论 -
tensorflow创建tensor
tensorflow创建tensorimport tensorflow as tf #导入tensorflowimport numpy as np #导入numpyarangeNum = np.arange(0, 5) #创建列表tensor = tf.convert_to_tensor(arangeNum, dtype=tf.int64) #将列表转换为tensor类型print(arangeNum) #打印列表print(tensor) #打印tensor结果:[0.原创 2020-05-10 19:36:20 · 435 阅读 · 0 评论 -
tensorflow 创建实例
tensorflow 创建实例import tensorflow as tf #导入tensorflowconstant = tf.constant([1, 5], dtype = tf.int64) #创建实例print(constant) #打印实例print(constant.dtype) #打印实例类型print(constant.shape) #打印实例大小下图所示为结果tf.Tensor([1 5], shape=(2,), dtype=int64) #实..原创 2020-05-10 19:22:08 · 143 阅读 · 0 评论