惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
The Hacker News
The Hacker News
F
Fortinet All Blogs
The GitHub Blog
The GitHub Blog
IT之家
IT之家
Vercel News
Vercel News
aimingoo的专栏
aimingoo的专栏
月光博客
月光博客
AI
AI
罗磊的独立博客
B
Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
博客园 - 聂微东
Google DeepMind News
Google DeepMind News
爱范儿
爱范儿
Blog — PlanetScale
Blog — PlanetScale
Security Latest
Security Latest
C
Cyber Attacks, Cyber Crime and Cyber Security
C
Check Point Blog
D
DataBreaches.Net
T
Threat Research - Cisco Blogs
I
InfoQ
阮一峰的网络日志
阮一峰的网络日志
人人都是产品经理
人人都是产品经理
G
Google Developers Blog
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
L
Lohrmann on Cybersecurity
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky
C
Cybersecurity and Infrastructure Security Agency CISA
C
Cisco Blogs
MongoDB | Blog
MongoDB | Blog
P
Privacy & Cybersecurity Law Blog
Cisco Talos Blog
Cisco Talos Blog
P
Privacy International News Feed
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
博客园_首页
I
Intezer
云风的 BLOG
云风的 BLOG
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
美团技术团队
Simon Willison's Weblog
Simon Willison's Weblog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Forbes - Security
Forbes - Security
T
Tailwind CSS Blog
腾讯CDC
T
Troy Hunt's Blog
Know Your Adversary
Know Your Adversary
U
Unit 42

博客园 - 拓子

.net编码规则 tensorflow mnist The tensorflow simplest calculate python opencv english opencv 图片识别 随机概率 从excel 导入数据绘制 散点图 一些搞笑,但有意义的图片 基于python玩转人工智能最火框架之TensorFlow人工智能&深度学习介绍 win10 64下anaconda4.2.0(python3.5) PYTHON 爬虫 baidu美女图片 falkonry python hadoop wordcout测试 CENTOS重新安装JDK 搭建Hadoop的环境 目录和权限 centos基本命令
tensor flow 线性回归
拓子 · 2019-10-05 · via 博客园 - 拓子

# -*- coding: utf-8 -*-
"""
Spyder Editor

This is a temporary script file.
tensor flow 之线性回归模式
2019-oct-5
"""

import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt

SIZE=100
np.random.seed(100)#np随机种子
tf.set_random_seed(100)#tf随机种子
#1、构建数据
x=np.linspace(0,2,SIZE) #等差数列
noise_x=np.random.normal(loc=0.0,scale=1.0,size=SIZE) #‘随机正太分布 增加噪音
x=x+noise_x

y=8*x+8 #用于填充Y数组
noise_y=np.random.normal(loc=0.0,scale=1.1,size=SIZE)
y=y+noise_y

#2、设置为矩阵的模型
x.shape=(-1,1)
y.shape=(-1,1)


#3、构建一个模型 y=w*x+b 设置tf变量 用于训炼
w=tf.Variable(initial_value=tf.random_uniform(shape=[1],minval=-1.0,maxval=1.0,name='w'))
b=tf.Variable(initial_value=tf.zeros(shape=[1],name='b'))

#4、得到预测值
y_hat=w*x+b

#5、构建损失函数 loss
loss=tf.reduce_mean(tf.square(y_hat-y),name='loss') #损失函数 loss=聚合平均值(差的平方)

#6、梯度下降 优化损失函数 ,让其最小
optiomizer=tf.train.GradientDescentOptimizer(learning_rate=0.05)#初始化变量 及学习
train=optiomizer.minimize(loss=loss) #求最小损失函数 loss

#执行训练
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
run_w,run_b,run_loss=sess.run([w,b,loss])
print('w={},b={},loss={}'.format(run_w,run_b,run_loss))

for i in range(100):#训练100次
sess.run(train)
run_w,run_b,run_loss=sess.run([w,b,loss])#取w,b,loss这三个东东的值 并打印展示
print('w={},b={},loss={}'.format(run_w,run_b,run_loss))

#画表展示
#画线
x_hat=np.linspace(x.min(),x.max())
print("x_hat={}".format(x_hat))
y_hat2=run_w*x_hat+run_b
plt.plot(x_hat,y_hat2)
#画线
#画点
plt.plot(x,y,'go') #go rs ro
#画点
plt.show()#显示