这个程序为简单的三层结构组成:输入层、中间层、输出层

运行环境为 ubuntu

要理清各层间变量个数

import numpy as np
import matplotlib.pyplot as plt
import tensorflow as tf #使用numpy生成200个随机点
x_data=np.linspace(-0.5,0.5,200)[:,np.newaxis]
noise=np.random.normal(0,0.02,x_data.shape)
y_data=np.square(x_data)+noise #定义两个placeholder
x=tf.placeholder(tf.float32,[None,1])
y=tf.placeholder(tf.float32,[None,1]) #定义神经网络中间层
Weights_L1=tf.Variable(tf.random_normal([1,10]))
biases_L1=tf.Variable(tf.zeros([1,10]))
Wx_plus_b_L1=tf.matmul(x,Weights_L1)+biases_L1
L1=tf.nn.tanh(Wx_plus_b_L1) #定义神经网络输出层
Weights_L2=tf.Variable(tf.random_normal([10,1]))
biases_L2=tf.Variable(tf.zeros([1,1]))
Wx_plus_b_L2=tf.matmul(L1,Weights_L2)+biases_L2
prediction=tf.nn.tanh(Wx_plus_b_L2) #二次代价函数
loss=tf.reduce_mean(tf.square(y-prediction))
#使用梯度下降法训练
train_step=tf.train.GradientDescentOptimizer(0.1).minimize(loss) with tf.Session() as sess:
#变量初始化
sess.run(tf.global_variables_initializer())
for _ in range(2000):
sess.run(train_step,feed_dict={x:x_data,y:y_data}) #获取预测值
prediction_value=sess.run(prediction,feed_dict={x:x_data})
#画图
plt.figure()
plt.scatter(x_data,y_data)
plt.plot(x_data,prediction_value,'r-',lw=5)
plt.show()

最终的运行结果图片

目录:

  1. tensorflow简介、目录
  2. tensorflow中的图(02-1)
  3. tensorflow变量的使用(02-2)
  4. tensorflow中的Fetch、Feed(02-3)
  5. tensorflow版helloworld---拟合线性函数的k和b(02-4)
  6. tensorflow非线性回归(03-1)
  7. MNIST手写数字分类simple版(03-2)
  8. 二次代价函数、交叉熵(cross-entropy)、对数似然代价函数(log-likelihood cost)(04-1)
  9. 多层网络通过防止过拟合,增加模型的准确率(04-2)
  10. 修改优化器进一步提升准确率(04-3)
  11. 手写数字识别-卷积神经网络cnn(06-2)
  12. 循环神经网络rnn与长短时记忆神经网络简述(07-2)
  13. 循环神经网络lstm代码实现(07-3)
  14. tensorflow模型保存和使用08
  15. 下载inception v3  google训练好的模型并解压08-3
  16. 使用inception v3做各种图像分类识别08-4
  17. word2vec模型训练简单案例
  18. word2vec+textcnn文本分类简述及代码

最新文章

  1. 【UWP】UI适配整理
  2. 解决ReSharper自动删除换行
  3. 自然语言22_Wordnet with NLTK
  4. 【BZOJ 3295】动态逆序对 - 分块+树状数组
  5. linux中socket的理解---4
  6. Eclipse集成Tomcat的配置步骤实例
  7. HDU 1677
  8. HW4.9
  9. 《Java程序员面试笔试宝典》之字符串创建与存储的机制是什么
  10. Ubuntu 挂载硬盘分区
  11. 小强的HTML5移动开发之路(9)——坦克大战游戏3
  12. handlebars.js 自定义helper(过滤)
  13. 【比赛】NOIP2017 总结
  14. HDUOJ----2159 FATE
  15. Spring注解大全,汇总版
  16. sql基本查询语句练习
  17. bootstrap添加模态窗后,再弹出消息提示框后,原先的滚动条消失
  18. form表单序列化数据之后,追加额外数据
  19. 洛谷——P1100 高低位交换
  20. BZOJ 1562 [NOI2009]变换序列:二分图匹配

热门文章

  1. BufferedInputStream 介绍
  2. 流式计算(三)-Flink Stream 篇一
  3. python pylab.plot() 方法使用
  4. Spring bean的bean的三种实例化方式
  5. C do...while 循环
  6. 洛谷 P1076 寻宝(模拟 && 剪枝)
  7. 微信+QQ跳转
  8. Centos610安装MVN
  9. $ git push -u origin master
  10. Java 从入门到进阶之路(十八)