Tensorflow深度学习应用(进阶篇)-回归(函数拟合训练)-可视化

#coding=gbk
'''
进阶篇:多元回归:建模问题:Y=x1xx1+x2xw2+x3xw3+...+xnxwn+b,矩阵简化表示Y=XW+bnumpy库基础:整型的一个数字,  不能取得其shape(维度),通过np.array()可以将其转换成一个标量(数组),可以取得shape;一般问题:需要对重要的特征以及次要特征进行范围的限定,即需要对数据进行归一化,有助于模型的收敛。特征值/(最大特征值-最小特征值)~[0,1]特征数据归一化:特征值/(最大特征值-最小特征值)~[0,1],标签不做处理扩展篇
'''from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']  #设置显示绘图显示中文
mpl.rcParams['axes.unicode_minus'] = False  #防止中文乱码,有时候第一句不能完全避免显示错误#导入tensorflow 模块
import tensorflow.compat.v1 as tf
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
from sklearn.datasets import load_boston#下载数据
from sklearn.utils import shuffle#用于打乱数据#numpy库运用
#将一个整型数字转换成一个数组
s_v = 20
scalar_np = np.array(s_v)
print("标量:\n",scalar_np,scalar_np.shape)#向量
vector_v = [1, 2, 3, 4, 5, 6, 7, 8, 9]
vector_np = np.array(vector_v)
print("向量:\n",vector_np, vector_np.shape)#矩阵
m_v = [[1, 2, 3], [7, 8, 9], [4, 5, 6]]
m_np = np.array(m_v)
print("矩阵:\n",m_np,m_np.shape)#行向量、列向量的表示
row = np.array([[1, 2, 3]])
print("行向量:\n",row,row.shape)column = np.array([[1], [2], [3]])
print("列向量:\n", column, column.shape)#矩阵的运算
a = np.array([[1, 2, 3], [4, 5, 6]])
print(a)
a = a + 7
print(a)
a = a * 2
print(a)
a = a + a
print(a)
a = a - 3
print(a)
a = a / 2.0
print(a)
#对于+,-,*,/,都是对应元素做相应的操作#行列转置:aij=aji,reshape()
m = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(m.T)#矩阵的点积,对应元素相乘,np.multiply()#矩阵叉乘:两矩阵维度为 MxN,NxK,使用函数np.matmul(a,b)
m_a = np.array([[1, 2, 3]])
m_b = np.array([[3], [2], [1]])
m_c = np.matmul(m_a, m_b)
print(m_c)#下载数据,设置return_X_y=True去除摘要只返回数据和标签
boston_price_data ,_= load_boston(return_X_y=True)
print(boston_price_data, boston_price_data.shape)#数据归一化[0,1]
for i in range(12):boston_price_data[:, i] = boston_price_data[:, i] / (boston_price_data[:, i].max() - boston_price_data[:, i].min())
#取出数据
x_d = boston_price_data[:, :12]
print(x_d, x_d.shape)
print("\n")
#取出标签
y_d = boston_price_data[:, 12]
print(y_d, y_d.shape)#模型定义
x = tf.placeholder(tf.float32, [None, 12], name='x')
y = tf.placeholder(tf.float32, [None, 1], name='y')#拟合Y=x1xx1+x2xw2+x3xw3+...+xnxwn+b,矩阵简化表示Y=XW+b
with tf.name_scope("model"):#将下面的子图打包,使计算图简介,便于tensorboard查看w = tf.Variable(tf.random_normal([12, 1], stddev=0.01, name='w'))#随机初始化w数组b = tf.Variable(1.0, name='b')  #初始化bdef model(x, w, b):return tf.matmul(x, w) + b  #矩阵叉乘predict = model(x, w, b)        #预测模型#模型训练
train_c = 80
learning_rate = 0.01
with tf.name_scope("LossFun"):#打包loss_Fun = tf.reduce_mean(tf.pow(y - predict, 2))#均方误差
optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(loss_Fun)
#优化器设置sess = tf.Session()
init = tf.global_variables_initializer()
sess.run(init)loss_l = []
for i in range(train_c):loss_s = 0.0for x_, y_ in zip(x_d, y_d):x_ = x_.reshape(1, 12)#需要将取出来的数据进行维度调整,是x_,y_适合x,y变量维度模型y_=y_.reshape(1,1)_, loss = sess.run([optimizer, loss_Fun], feed_dict={x: x_, y: y_})'''用于可视化的语句_,summary_s, loss = sess.run([optimizer,summary_loss_op, loss_Fun], feed_dict={x: x_, y: y_})write.add_summary(summary_s,i)'''loss_s = loss_s + lossx_v, y_v = shuffle(x_d, y_d)  #打乱数据b0 = b.eval(session=sess)w0 = w.eval(session=sess)less_average = loss_s / len(y_d)loss_l.append(less_average)print("train count=", i + 1, "loss=", less_average, "b=", b0, "w=", w0)#模型验证
x_test = x_d[430]
x_test = x_test.reshape(1, 12)
p = sess.run(predict, feed_dict={x: x_test})
print("预测值:%f"%p,"标签值:%f\n"%y_d[430])plt.plot(loss_l)
plt.title("损失变化曲线(loss)")
plt.show()logdir = "E:/VSCODE/"
if tf.gfile.Exists(logdir):tf.gfile.DeleteRecursively(logdir)'''tensorboard可视化数据,
summary_loss_op=tf.summary.scalar("loss",loss_Fun)#记录损失值loss,写入到tensorboard中的SCALARS栏中
merged=tf.summary.merge_all()#将所有需要的日志文件合并写入
'''
write = tf.summary.FileWriter(logdir, tf.get_default_graph())
write.close()

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
附:
本文章学习至中国大学mooc-深度学习应用开发-Tensorflow实战

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/484306.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker下创建crontab定时任务失败

创建过程 基础镜像采用的centos7.2,需要安装一下crontab,在dockerfile中加以下语句就可以了: # crontab jobs RUN yum -y install crontabs ADD ./run/nlp-cron /etc/cron.d/nlp-cron RUN chmod 0644 /etc/cron.d/nlp-cron RUN crontab /etc/…

Tensorflow深度学习应用(进阶篇)-1

#codinggbk 逻辑回归:逻辑回归需要将输出控制在[0,1]之间,可以使用函数将值映射在[0,1]之间Sigmod函数,逻辑回归一般采用对数损失函数;from pylab import mpl mpl.rcParams[font.sans-serif] [SimHei] #设置显示绘图显示中文 mp…

​20210716未来智能实验室收录资料

20210716未来智能实验室收录资料特别推荐:置顶收录未来智能实验室在人民日报《学术前沿》发表的城市大脑最新综述研究论文和报告《城市大脑的起源、发展与未来趋势》。本期收录前沿科技进展材料52篇1.《科学》:媲美AlphaFold2的蛋白质结构预测新工具问世…

Jq将字符串复制粘贴到剪贴板

第一种&#xff1a; 自己测试时 只适合于input 和textarea 但是针对于其他标签的复制就不能用了。代码如下&#xff1a; <!DOCTYPE html> <html><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><…

元宇宙深度研究报告:元宇宙是互联网的终极形态?

报告出品方&#xff1a;华安证券作者&#xff1a;尹沿技、张天、姚天航1 元宇宙&#xff1a;剑指互联网的“终极形态”1.1 元宇宙指向互联网的终极形态元宇宙&#xff08;Metaverse&#xff09;概念起源于科幻小说&#xff0c;或指向互联网的“终极形态”。Metaverse 一词来源于…

论文写作

1.文献综述 站在巨人的肩膀上&#xff0c;找到自己的创新点(别人没做过的),文献综述可以帮你理清思路&#xff0c;找到切入点&#xff0c;在别人的基础上&#xff0c;做出高于别人的综述&#xff0c;这正是文献综述的意义。 内容与结构规划 目的 找出研究的空白&#xff0c;基…

6、Django模板语法

123 转载于:https://www.cnblogs.com/pyedu/p/10289330.html

Unity基础

Unity3D 游戏开发 第一章 基础知识 Unity是一个用于创建游戏和三维互动内容的开发工具&#xff0c;是一个专业游戏引擎。 2D游戏&#xff1a;视角锁定&#xff0c;二维坐标。 3D游戏&#xff1a;任意视角&#xff0c;三维坐标。 虚拟现实&#xff08;VR&#xff09;&#x…

英特尔史上最大收购!英特尔拟300亿美元收购GF,审批成关键!

来源&#xff1a;EETOP据《华尔街日报》报道&#xff0c;知情人士称&#xff0c;英特尔打算斥资约300 亿美元收购晶圆代工大厂格罗方德&#xff08;GlobalFoundries&#xff09;&#xff0c;以加速生产更多芯片&#xff0c;如果收购成功&#xff0c;这将是英特尔有史以来最大的…

CentOS 7 定时计划任务设置

概述  就像再windows上有计划任务一样&#xff0c;centos7 自然也有计划任务&#xff0c;而且设置更为灵活&#xff0c;好用。再centos7 上可以利用crontab 来执行计划任务&#xff0c; 依赖与 crond 的系统服务&#xff0c;这个服务是系统自带的&#xff0c;可以直接查看状态…

Unity 基本操作

基本操作 物体的组合 1.从需要的组合的物体中选择一个作为父对象&#xff0c;其他的物体作为子对象&#xff0c;即把子对象拖拽到父对象里&#xff0c;操作父对象即可实现整体操作&#xff0c;效果如下。 2.在组合物体中&#xff0c;父对象的坐标是该组合体的坐标&#xff0c…

OpenAI雄心勃勃的机器人计划失败了:强化学习没法用?

来源&#xff1a;机器之心曾经训练出单手解魔方机器人的 OpenAI&#xff0c;眼下已经解散了机器人团队。这家执着于实现通用人工智能&#xff08;AGI&#xff09;的公司现在放弃了机器人研究&#xff0c;理由是「数据不够丰富」。近期&#xff0c;OpenAI 公司联合创始人 Wojcie…

Unity-游戏小地图实战(前述知识点回顾与运用)

阶段知识回顾与运用---游戏中小地图实战 对于多个摄像机&#xff0c;每个摄像机都带有音频监听器&#xff0c;会出现错误&#xff0c;因为我们只需要一个音频监听器&#xff0c;为了消除错误&#xff0c;需要移除其他摄像机的音频监听器&#xff0c;只保留主摄像机的音频监听器…

NTT高级科学家:光子是深度学习的未来!光子有望替代电子计算机加速神经网络计算...

来源&#xff1a;AI科技评论作者&#xff1a;Ryan Hamerly编译&#xff1a;陈彩娴近日&#xff0c;来自日本 NTT 研究所的高级科学家 Ryan Hamerly 在 IEEE Spectrum 上发表了一篇文章&#xff08;“The Future of Deep Learning Is Photonic”&#xff09;&#xff0c;谈论了光…

Unity3D-InstantOC遮挡剔除

InstantOC&#xff08;插件&#xff09; 渲染管线 图形数据在GPU上经过运算处理&#xff0c;最后输出到屏幕的过程。对于显示出来的图形&#xff0c;CPU与GPU的分工 CPU判断需要显示的图形图像调用图形API&#xff1b;绘制调用&#xff08;Draw Call&#xff09;&#xff1a;每…

WCF系列(一)BasicHttpBinding 和 WsHttpBinding 的不同点

aaaaaaaaaaaaaaaaaa WCF系列&#xff08;一&#xff09;【翻译】BasicHttpBinding 和 WsHttpBinding 的不同点 2010-02-21 12:23 by Virus-BeautyCode, 20206 阅读, 7 评论, 收藏, 编辑 原文地址&#xff1a;Difference between BasicHttpBinding and WsHttpBinding 1、简介 WC…

Unity3D-光照系统

光照系统 1. Global Illumination&#xff08;全局光照&#xff09; GI,能够计算直接光&#xff0c;间接光&#xff0c;环境光以及反射光的光照系统。通过GI算法&#xff0c;渲染出光照效果更为真实的场景。 2. 直接光 从光源直接放出的光&#xff0c;通过Light组件实现。 …

Tomaso A.Poggio教授丨人工智能的下一个突破点在何处?

来源&#xff1a;图灵人工智能AI的成功故事在过去的25年中&#xff0c;尤其是在刚刚过去的十年中&#xff0c;AI&#xff0c;特别是机器学习&#xff0c;已经拥有了十足可观的进展。两个主要的成功故事第一个是AlphaGo。在虚拟的游戏世界中&#xff0c;AI绝对已经战胜了人类。A…

Unity3D-声音系统

声音 1.Unity3D支持的音频文件 mp3、ogg、wav、aif、mod、it、s3m、xm。 2.声音分为2D&#xff0c;3D两种 3D声音:有空间感&#xff0c;近大远小&#xff1b;2D声音&#xff1a;适合做背景音乐。 3.在场景中产生声音&#xff0c;主要有两个总要的组件&#xff1a; Audio …

当可解释人工智能遇上知识图谱

来源&#xff1a;知乎—机器学习小谈地址&#xff1a;https://zhuanlan.zhihu.com/p/386458680本文按照以下章节进行组织&#xff1a;1. 背景意义2. 基于路径的方法3. 基于嵌入的方法4. 总结与展望01背景意义1.1 什么是可解释性&#xff1f;首先&#xff0c;什么是可解释性。由…