tensorflow实例(2)--机器学习初试
来源:互联网 发布:小公司网络需求调查表 编辑:程序博客网 时间:2024/06/07 01:35
本示例代码,让你对将要学习tensorflow有初步的印象.整段代码其实相当于完成线性方程的求解,
当然,这个求解过程,不是线性方程的求解方法,而是通机器学习的神经网络方法进行求解,
如果你测试成功了本段代码,但又晕晕呼呼,不知道在干什么,
当然,这个求解过程,不是线性方程的求解方法,而是通机器学习的神经网络方法进行求解,
如果你测试成功了本段代码,但又晕晕呼呼,不知道在干什么,
你可以参考我的另一篇文章 机器学习(1)--神经网络初探
# -*- coding:utf-8 -*- import tensorflow as tfimport numpy as npdef tfNN(w,b): ''' w 为线性方程上各维度的系数 b为常数 即 y= a0 * x0 + a1 * x1 + a2 * x2 + a3 * x3 + b 其中w=[a0,a1,a2,a3] ''' w=(w if isinstance(w,np.ndarray) else np.array(w)).astype(np.float32) #构建一100条数据,做为训练数据 x_data=np.random.random([100,len(w)]).astype(np.float32) y_data=np.matmul(x_data,w)+b #print(x_data[0]) #[ 0.46942019 0.34641194 0.44924116 0.05670002] #print(y_data[0]) #0.773677 即实现了线性方程 y = 0.46942019*0.1+ 0.34641194*0.2 +0.44924116*0.3+0.05670002*0.4+0.5 #以下三行为将用weights代替w,biases代替b weights=tf.Variable(tf.random_uniform([len(w)],-1.0,1.0)) #随机初始化weights,这里的目的只是给个初始值,这和最终计算的没有任何关系,会在机器学习的过程中将不断的调整这个weights biases=tf.Variable(tf.zeros([1])) #随机初始化biases,同上条一样,这和最终计算的没有任何关系,所以就设为零 y=tf.reduce_sum(x_data*weights,axis=1)+biases #同样是设置y与weights及biases的线性关系 loss = tf.reduce_mean(tf.square(y - y_data))# 最小化方差,这两行就暂时死记吧,loss就是计算调整测试值与实际值的作用,如果参考了我的另一篇文章,应该能理解这两行的作用 train=tf.train.GradientDescentOptimizer(0.25).minimize(loss) #优化器,0.25学习效率,应该是一个小于0.5的数, trainTimes=(len(w)+1)*100 #计算学习的次数, showTrainStep=trainTimes/5 #要学习几百次,全部步骤显示太多,就显示5次 with tf.Session() as sess: sess.run(tf.initialize_all_variables()) for i in range(trainTimes): sess.run(train) if i % showTrainStep==0: print(sess.run(weights),sess.run(biases)) print('-'*20+' 计算结束,对最后结果进行四舍五入'+'-'*20) print(np.round(sess.run(weights),2),np.round(sess.run(biases),2)) # 对最后结果进行四舍五入,让结果看得清晰些 #最后的结果与我们的传参(w,b)是基本相符合的,说明整个机器学习的过程是正确有效的tfNN([0.01,0.02,0.03,0.04],0.05)
阅读全文
0 0
- tensorflow实例(2)--机器学习初试
- tensorflow初试
- 初试tensorflow
- tensorflow学习(2)MNIST机器学习入门
- 机器学习2:开始Tensorflow之旅
- 机器学习6-tensorflow
- 新手机器学习-tensorflow
- 机器学习-TensorFlow安装
- 【机器学习】Tensorflow学习笔记
- 【机器学习】Tensorflow基本使用
- tensorflow MNIST机器学习入门
- 机器学习之 了解TensorFlow
- tensorflow- MNIST机器学习入门
- 【机器学习】Tensorflow基本使用
- tensorflow 实践 (1)机器学习
- tensorflow-MNIST机器学习入门
- 机器学习0002 安装TensorFlow
- TensorFlow调试功能初试
- ajax请求报错调试
- Java中的NIO与Netty框架
- python的range()函数用法
- 工程计算7——函数逼近与曲线拟合
- window的方法
- tensorflow实例(2)--机器学习初试
- Halide学习笔记----Halide tutorial源码阅读7
- POJ 2975 Nim题解---简单的博弈论
- Inten对象中的Flag
- JAXB その3
- JVM最大线程数
- Java基础语法篇(3)
- Django框架学习笔记(1.安装创建初识)
- java 基本数据类型及自动类型提升