tensorflow学习(一)
今天开始学习tensorflow框架,从极客学院下载了官方中文教程(15年翻译的),第一天开始学习第一章ng基本流程和原理,作为前奏。然后写了代码,验证一下,准确率确实非常高,非常好用。把代码上传,作为以后备用。
import tensorflow as tf
import numpy as np
import math class Model:
def __init__(self,w = np.empty(None),b = None):
self.b = b
self.w = w def predict(self, input):
return np.dot(input,self.w) + self.b data = np.float32(np.random.rand(1000,2))
label = np.dot(data,np.array([[0.100],[0.200]])) + 0.3
m,n = data.shape num_train = int(m * 0.6)
num_validation = int(m * 0.2)
num_test = int(m * 0.2) data_train = data[:num_train,:]
data_validation = data[num_train:(num_train+num_validation),:]
data_test = data[(num_train+num_validation):,:] label_train = label[:num_train,:]
label_validation = label[num_train:(num_train+num_validation),:]
label_test = label[(num_train+num_validation):,:] w = tf.Variable(tf.random_uniform([2,1],-1.0,1.0))
b = tf.Variable(tf.zeros([1])) y_train = tf.matmul(data_train,w) + b
loss = tf.reduce_mean(tf.square(label_train - y_train))
'''
bestModel = Model()
minRMSE = (1 << 31) -1
alphas = [0.1,0.3,0.5];
iters = [100,150,200,250];
for iter in iters:
for alpha in alphas:
optimizer = tf.train.GradientDescentOptimizer(alpha)
train = optimizer.minimize(loss)
init_state = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init_state)
for step in range(0,iter):
sess.run(train)
model = Model(sess.run(w),sess.run(b))
p = model.predict(data_validation)
rmse = np.sqrt(np.mean(np.square(label_validation - p)))
if rmse < minRMSE:
minRMSE = rmse
bestModel = model
np.save("E:\\Python\\models\\weights.npy",bestModel.w)
np.save("E:\\Python\\models\\b.npy",bestModel.b)
''' weights = np.load("E:\\Python\\models\\weights.npy")
b = np.load("E:\\Python\\models\\b.npy") model = Model(weights,b)
predicts = model.predict(data_test)
print(predicts)
print(label_test)
print(label_test - predicts)
tensorflow学习(一)的更多相关文章
- Tensorflow学习笔记2:About Session, Graph, Operation and Tensor
简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节 ...
- 用tensorflow学习贝叶斯个性化排序(BPR)
在贝叶斯个性化排序(BPR)算法小结中,我们对贝叶斯个性化排序(Bayesian Personalized Ranking, 以下简称BPR)的原理做了讨论,本文我们将从实践的角度来使用BPR做一个简 ...
- Tensorflow学习笔记2019.01.22
tensorflow学习笔记2 edit by Strangewx 2019.01.04 4.1 机器学习基础 4.1.1 一般结构: 初始化模型参数:通常随机赋值,简单模型赋值0 训练数据:一般打乱 ...
- Tensorflow学习笔记2019.01.03
tensorflow学习笔记: 3.2 Tensorflow中定义数据流图 张量知识矩阵的一个超集. 超集:如果一个集合S2中的每一个元素都在集合S1中,且集合S1中可能包含S2中没有的元素,则集合S ...
- TensorFlow学习笔记之--[compute_gradients和apply_gradients原理浅析]
I optimizer.minimize(loss, var_list) 我们都知道,TensorFlow为我们提供了丰富的优化函数,例如GradientDescentOptimizer.这个方法会自 ...
- TensorFlow学习路径【转】
作者:黄璞链接:https://www.zhihu.com/question/41667903/answer/109611087来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- TensorFlow学习线路
如何高效的学习 TensorFlow 代码? 或者如何掌握TensorFlow,应用到任何领域? 作者:黄璞链接:https://www.zhihu.com/question/41667903/ans ...
- tensorflow学习资料
tensorflow学习资料 http://www.soku.com/search_video/q_tensorflow?f=1&kb=04112020yv41000__&_rp=1a ...
- 深度学习-tensorflow学习笔记(1)-MNIST手写字体识别预备知识
深度学习-tensorflow学习笔记(1)-MNIST手写字体识别预备知识 在tf第一个例子的时候需要很多预备知识. tf基本知识 香农熵 交叉熵代价函数cross-entropy 卷积神经网络 s ...
- 截图:【炼数成金】深度学习框架Tensorflow学习与应用
创建图.启动图 Shift+Tab Tab 变量介绍: F etch Feed 简单的模型构造 :线性回归 MNIST数据集 Softmax函数 非线性回归神经网络 MINIST数据集分类器简单版 ...
随机推荐
- .NET Core入门
.Net core MVC 如何使用 .NET Core,最基本的入行,很多博客以及官网都有的太多太多的例子,但是大部分没有人做到了真的让一个小白一步一步的去学, 我第一次接触的时 ...
- C# vb .net实现负片特效滤镜
在.net中,如何简单快捷地实现Photoshop滤镜组中的负片特效呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第一步 ...
- That IP address can't be assigned to.的问题
That IP address can't be assigned to. 烦恼了很久,现在知道了,解决的办法如下 首先确定端口号是不是开放,阿里云的直接在控制台修改 其次 看看 你的地址是不是输入错 ...
- python中的{字典}
目录 字典--dict { } 字典是无序,可变的数据类型. 字典:用于存储数据,存储大量数据,字典要比列表快:将数据和数据之间进行关联. 定义: dic = {键:值,键:值} #每个 键值对 以逗 ...
- 【面试突击】-RabbitMQ常见面试题(二)
问题一:RabbitMQ 中的 broker 是指什么?cluster 又是指什么? 答:broker 是指一个或多个 erlang node 的逻辑分组,且 node 上运行着 RabbitMQ 应 ...
- 华为 mate30 安装谷歌助手
最近入手了 华为 mate30 pro, 作为一个8年的老果粉,在使用2天 mate30p 之后,给了耳目一新的感觉,不得不说这款手机真的很强大,各种优点我也不多说了,可以看网上各种专业的测评 但是手 ...
- JS去除字符串中的中括号
var str = '这是一个字符串[html]语句;[html]字符串很常见'; alert(str.replace(/\[|]/g,''));//移除字符串中的所有[]括号(不包括其内容) //输 ...
- Nginx配置Yii:backend&frontend
#My vlson.top project #frontend server { listen 80; server_name www.vlson.com; #charset koi8-r; set ...
- 【转】Go调度器原理浅析
goroutine是golang的一大特色,或者可以说是最大的特色吧(据我了解),这篇文章主要翻译自Morsing的[这篇博客](http://morsmachine.dk/go-scheduler) ...
- sklearn.model_selection 的train_test_split方法和参数
train_test_split是sklearn中用于划分数据集,即将原始数据集划分成测试集和训练集两部分的函数. from sklearn.model_selection import train_ ...