热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python数据拟合第三方库_python应用之基于tensorflow的数据拟合:深度学习之预测入门篇...

实验目的:1、了解python在深度学习领域的应用2、学习安装python第三方依赖库实验环境:已正确安装python3.5以及依赖库tensorflo

实验目的:1、了解python在深度学习领域的应用

2、学习安装python第三方依赖库

实验环境:已正确安装python3.5以及依赖库tensorflow、matplotlib

预测过程展示:

1、应用领域

python是一种高级面向对象的动态类型语言,具有开发高效,学习简单的特点,主要应用于大数据、深度学习、机器学习、以及Web开发等领域,具有良好的发展前景。

2、依赖库的安装方法

(1)在线直接安装

在命令行模式下利用pip命令安装,命令格式:pip install XXX,如:

pip install tensorflow#安装tensorflow第三方依赖库

pip install matplotlib#安装matplotlib第三方依赖库

(2)离线安装

离线安装适用于网络较差时,可以在https://pypi.org/处搜索下载安装包,然后在命令 行切换到安装包目录利用pip命令安装。

3、原始数据准备

在训练深度学习模型之前必须转备好训练数据,本文以y=2x为训练目标进行实验:

import numpy as np #导入数值计算模块

import matplotlib.pyplot as plt#导入画图模块

#准备数据

train_x=np.linspace(-1,1,100)#生成1*100的数组

train_y=2*train_x+np.random.randn(*train_x.shape)*0.5#生成训练数据时加入了噪声

#数据以图片展示

fig=plt.figure()

ax=fig.add_subplot(1,1,1)

ax.scatter(train_x,train_y)

ax.plot(train_x,train_y,'r*',label='Original Data')

plt.legend()

plt.ion()

plt.show()

编辑好以上代码后,运行生成的结果如图

4、搭建训练模型

搭建训练模型是深度学习比较重要的一个环节,简单的说它是一个运算规则,本文以一个神经元为例搭建计算模型。

X=tf.placeholder("float")#定义占位符,作用:输入训练值

Y=tf.placeholder("float")#定义占位符,作用:输入标准值

W=tf.Variable(tf.random_normal([1]),name="weight")#定义权重

b=tf.Variable(tf.zeros([1]),name="bias")#定义偏执,类似于噪声

z=tf.multiply(X,W)+b#定义计算结构之前向结构

在定义好计算结构之后,需要定义优化规则

cost=tf.reduce_mean(tf.square(Y-z))#定义以训练值与预测值的均方根误差为评判准则

learn_rate=0.01#定义学习率

optimizer=tf.train.GradientDescentOptimizer(learn_rate).minimize(cost)#定义训练方法(以梯度下降的方法进行训练,以误差:cost达到最小为目标)

5、模型训练

上一步骤就类似于画出了计算规则的蓝图,但是其并未进行运算,需要初始化变量、定义会话并在会话中利用run()方法启动图的运算,这也是tensorflow的一个特点

init=tf.global_variables_initializer()#定义初始化变量的对象

training_epochs=25#定义迭代训练次数

display_step=2#定义可视化步长

with tf.Session() as sess:#定义会话

sess.run(init)

for epoch in range(training_epochs):

for (x,y) in zip(train_x,train_y):

sess.run(optimizer,feed_dict={X:x,Y:y})

if epoch % display_step == 0:

loss = sess.run(cost,feed_dict={X:train_x,Y:train_y})

print("Epoch:",epoch+1,"cost=",loss,"W=",sess.run(W),"b=",sess.run(b))

#动态可视化定义

try:

ax.lines.remove(lines[0])#先抹除旧线再去画新线

except Exception:

pass

lines=ax.plot(train_x,train_x*sess.run(W)+sess.run(b),'b-',label='pridect Data')

plt.pause(8)

plt.legend()

预测结果图

预测过程参数输出



推荐阅读
  • 在Ubuntu 16.04中使用Anaconda安装TensorFlow
    本文详细介绍了如何在Ubuntu 16.04系统上通过Anaconda环境管理工具安装TensorFlow。首先,需要下载并安装Anaconda,然后配置环境变量以确保系统能够识别Anaconda命令。接着,创建一个特定的Python环境用于安装TensorFlow,并通过指定的镜像源加速安装过程。最后,通过一个简单的线性回归示例验证TensorFlow的安装是否成功。 ... [详细]
  • 本文详细介绍如何通过Anaconda 3.5.01快速安装TensorFlow,包括环境配置和具体步骤。 ... [详细]
  • 本文详细介绍了 TensorFlow 的入门实践,特别是使用 MNIST 数据集进行数字识别的项目。文章首先解析了项目文件结构,并解释了各部分的作用,随后逐步讲解了如何通过 TensorFlow 实现基本的神经网络模型。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 新手指南:在Windows 10上搭建深度学习与PyTorch开发环境
    本文详细记录了一名新手在Windows 10操作系统上搭建深度学习环境的过程,包括安装必要的软件和配置环境变量等步骤,旨在帮助同样初入该领域的读者避免常见的错误。 ... [详细]
  • 本文探讨了图像标签的多种分类场景及其在以图搜图技术中的应用,涵盖了从基础理论到实际项目实施的全面解析。 ... [详细]
  • 如何用GPU服务器运行Python
    如何用GPU服务器运行Python-目录前言一、服务器登录1.1下载安装putty1.2putty远程登录 1.3查看GPU、显卡常用命令1.4Linux常用命令二、 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • 本文介绍了一种根据目标检测结果,从原始XML文件中提取并分析特定类别的方法。通过解析XML文件,筛选出特定类别的图像和标注信息,并保存到新的文件夹中,以便进一步分析和处理。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • Keras 实战:自编码器入门指南
    本文介绍了使用 Keras 框架实现自编码器的基本方法。自编码器是一种用于无监督学习的神经网络模型,主要功能包括数据降维、特征提取等。通过实际案例,我们将展示如何使用全连接层和卷积层来构建自编码器,并讨论不同维度对重建效果的影响。 ... [详细]
  • 基于2-channelnetwork的图片相似度判别一、相关理论本篇博文主要讲解2015年CVPR的一篇关于图像相似度计算的文章:《LearningtoCompar ... [详细]
  • 本文详细介绍了如何在Windows环境下配置GPU支持,并使用Keras和TensorFlow实现YOLOv3模型进行图像目标检测。对于环境搭建的具体步骤,可参考外部链接提供的指南。 ... [详细]
  • 本文详细介绍了使用NumPy和TensorFlow实现的逻辑回归算法。通过具体代码示例,解释了数据加载、模型训练及分类预测的过程。 ... [详细]
  • 吴恩达推出TensorFlow实践课程,Python基础即可入门,四个月掌握核心技能
    量子位报道,deeplearning.ai最新发布了TensorFlow实践课程,适合希望使用TensorFlow开发AI应用的学习者。该课程涵盖机器学习模型构建、图像识别、自然语言处理及时间序列预测等多个方面。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有