Tensorflow应用实例(一)
来源:互联网 发布:wind软件 编辑:程序博客网 时间:2024/05/04 01:44
引言:tensorflow作为现在最热的深度学习框架,如何利用tensorflow实现你所要实现的机器学习和深度学习算法成为了大家学习的重点,下面给出了利用tensorflow实现有监督学习的一般框架。
一、有监督学习的一般框架:
如下图所示:
二、一般步骤
1、对模型参数初始化;
2、读取训练参数(一般将参数的顺序打乱);
3、计算损失(损失刻画的最后一步得到的输出与来自训练集期望输出之间的差距的概括性的指标);损失函数有多种
4、调整模型参数,这一步对应与实际的学习过程。给定损失函数,学习的目的在于通过大量的训练步骤改善个参数的值,从而使损失最小化。
当训练结束后便进入评估阶段,通过评估可以得到模型的的推广能力。
三、有监督模型的框架代码
import tensorflow as tf#初始化变量和模型参数,定义训练闭环中的运算def inference(X): #计算推断模型在数据X上的输出,并将结果返回def loss(X,Y): #依据训练数据X及期望Y计算损失def inputs(): #读取或生成训练数据X及其期望输出Ydef train(total_loss): #依据计算的总损失或 调整模型参数def evaluate(sess,X,Y): #对训练到的数据进行模型评估#模型定义代码#创建一个Saver对像saver=tf.train.Saver()#在一个会话对象中启动数据流图,搭建流程with tf.Session() as sess: tf.initialize_all_variables().run() X,Y=inputs() total_loss=loss(X,Y) train_op=train(total_loss) coord=tf.train.Coordinator() threads=tf.train.start_queue_runners(sess=sess,coord=coord) #实际训练的迭代次数 training_steps=1000 for step in range(training_steps): sess.run([train_op]) if step %1000==0: saver.save(sess,'my-model',global_step=step) #处于调试和训练的目的,查看损失函数在训练过程中递减的情况 if step%10==0: print("loss:",sess.run([total_loss])) evaluate(sess,X,Y) coord.request_stop() coord.join(threads) #模型评估 saver.save(sess,'my-model',global_step=training_steps) sess.close()
阅读全文
0 0
- Tensorflow应用实例(一)
- Tensorflow的应用(一)
- TensorFlow简单实例(一):linear_regression
- 简单明了的LSTM/GRU应用实例(Tensorflow版)
- CodeSmith应用实例(一)
- CodeSmith应用实例(一)
- CodeSmith应用实例(一)
- Tensorflow实例:利用LSTM预测股票每日最高价(一)
- Tensorflow实例:利用LSTM预测股票每日最高价(一)
- Tensorflow实例:利用LSTM预测股票每日最高价(一)
- Tensorflow学习与应用一
- Tensorflow(一)- 初识tensorflow
- (tensorflow)mnist数据集上的应用(一)
- ValueListEditor组件应用实例(一)
- 【七】栈的应用实例(一)
- RDF 应用实例 一
- tensorflow安装(一)
- (一)Tensorflow安装
- c++ 合并两个数组
- Docker部署Sentry+Django(无法收到告警邮件解决)
- ES6——字符串扩展
- Jzoj3518 进化序列
- 35 个 Java 代码性能优化总结
- Tensorflow应用实例(一)
- 机房模拟赛 2017年9月26日 数据结构
- SpringCloud(第 021 篇)Zuul 的过滤器 ZuulFilter 的使用
- 用堆栈实现二进制的转化
- 指针数组和数组指针之个人见解
- maven jdk1.8版本报错
- vsftp 问题集合
- iOS音效
- component设计模式