iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python神经网络TensorFlow常用基本操作有哪些
  • 103
分享到

python神经网络TensorFlow常用基本操作有哪些

2023-06-25 13:06:47 103人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“python神经网络Tensorflow常用基本操作有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python神经网络TensorFlow常用基本操作有哪些”吧!要将深度

本篇内容主要讲解“python神经网络Tensorflow常用基本操作有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习Python神经网络TensorFlow常用基本操作有哪些”吧!

    要将深度学习更快且更便捷地应用于新的问题中,选择一款深度学习工具是必不可少的步骤。
    TensorFlow是谷歌于2015年11月9日正式开源的计算框架。TensorFlow计算框架可以很好地支持深度学习的各种算法

    TensorFlow很好地兼容了学术研究和工业生产的不同需求。

    一方面,TensorFlow的灵活性使得研究人员能够利用它快速实现新的模型设计;

    另一方面,TensorFlow强大的分布式支持,对工业界在海量数据集上进行的模型训练也至关重要。作为谷歌开源的深度学习框架,TensorFlow包含了谷歌过去10年间对于人工智能的探索和成功的商业应用。

    除了TensorFlow,目前还有一些主流的深度学习开源工具可以使用。每个工具都有着各自的特点,可以根据自己的需求和喜好选择适合自己的深度学习工具。比如我一开始学习深度学习的时候接触的是Caffe,然后TensorFlow开源之后了解到了TensorFlow的一些特性,感觉还是更喜欢TensorFlow的风格,当然也考虑到会使用一种以上的深度学习工具也算见不错的事情。

    这篇文章对现在流行的五个开源深度学习框架 caffe、Neon、TensorFlow、Theano、Torch 做了很严谨比较。作者开源了他们的比较 Benchmarks 代码:https://GitHub.com/DL-Benchmarks/DL-Benchmarks

    文章比较了:可扩展性(extensibility)、hardware utilization(硬件利用率)和速度(speed)三个方面

    • 评估测试都是部署在单机上,对于多线程 CPU、GPU(Nvidia Titan X)都进行测试

    • 速度评估标准包括了梯度计算时间(gradient computation time)、前向传播时间(forward time)对于卷积神经网络,作者还

    • 对这几个深度框架支持的不同的卷积算法以及相应的性能表现做了实验

    通过实验得出了以下结论

    • Theano、Torch 是最具扩展性的深度学习框架

    • 在 CPU 上的测试性能来看,Torch 最优,其次是 Theano

    • 在 GPU 上的性能表现,对于大规模卷积以及全连接网络,还是 Torch 最优,其次是 Neon

    • Theano 在部署和训练 LSTM 网络中夺得拔筹caffe 是最容易测试评估性能的标准深度学习框架

    • 最后,TensorFlow 与 Theano 有些相似,是比较灵活的框架,但是其性能表现,目前还比不上上面的几个框架

    但是,毕竟这篇文章已经是过去时了,那时候TensorFlow 还只能用 cuDNN v.2 版本,而我现在已经装的是v5.1版本,而且TensorFlow 也已经发布了1.0版本。现在各工具性能如何,还需要新的评测才能说明问题。

    变量:创建、初始化、保存和加载

    当训练模型时,用变量来存储和更新参数。变量包含张量 (Tensor)存放于内存的缓存区。建模时它们需要被明确地初始化,模型训练后它们必须被存储到磁盘。这些变量的值可在之后模型训练和分析是被加载。

    本文档描述以下两个TensorFlow类。点击以下链接可查看完整的api文档:
    tf.Variable 类
    tf.train.Saver 类
    参考TensorFlow中文社区

    - 添加神经层

    输入参数有 inputs, in_size, out_size, 和 activation_function

    # 添加层def add_layer(inputs, in_size, out_size, activation_function=None):            weights = tf.Variable(tf.random_nORMal([in_size, out_size]), name='weights')            biases = tf.Variable(tf.zeros([1, out_size]) + 0.1, name='biases')            y = tf.matmul(inputs, weights) + biases        if activation_function is None:            outputs = y        else:            outputs = activation_function(y)        return outputs

    - loss

    loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys - prediction), reduction_indices=[1]))

    分类问题的loss 函数 cross_entropy 交叉熵
    loss = tf.reduce_mean(-tf.reduce_sum(ys * tf.log(prediction), reduction_indices=[1]))

    - 创建

    当创建一个变量时,你将一个张量作为初始值传入构造函数Variable()。TensorFlow提供了一系列操作符来初始化张量,初始值是常量或是随机值。
    注意,所有这些操作符都需要你指定张量的shape。那个形状自动成为变量的shape。变量的shape通常是固定的,但TensorFlow提供了高级的机制来重新调整其行列数。

    # Create two variables.weights = tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="weights")biases = tf.Variable(tf.zeros([200]), name="biases")

    - 初始化

    变量的初始化必须在模型的其它操作运行之前先明确地完成。最简单的方法就是添加一个给所有变量初始化的操作,并在使用模型之前首先运行那个操作。
    使用tf.global_variables_initializer()添加一个操作对变量做初始化。记得在完全构建好模型并加载之后再运行那个操作。

    # 7.初始化变量init = tf.global_variables_initializer()# tf.global_variables_initializer()是并行地初始化所有变量# 有时候会需要用另一个变量的初始化值给当前变量初始化,这就需要注意了# 用其它变量的值初始化一个新的变量时,使用其它变量的initialized_value()属性。# 你可以直接把已初始化的值作为新变量的初始值,或者把它当做tensor计算得到一个值赋予新变量。# w1 = tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="w1")# w2 = tf.Variable(w1.initialized_value(), name="w2")# 8.启动图 (graph)sess = tf.Session()sess.run(init)

    - 由另一个变量初始化

    你有时候会需要用另一个变量的初始化值给当前变量初始化。由于tf.global_variables_initializer()是并行地初始化所有变量,所以在有这种需求的情况下需要小心。用其它变量的值初始化一个新的变量时,使用其它变量的initialized_value()属性。你可以直接把已初始化的值作为新变量的初始值,或者把它当做tensor计算得到一个值赋予新变量。

    w1 = tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="w1")w2 = tf.Variable(w1.initialized_value(), name="w2")

    到此,相信大家对“python神经网络TensorFlow常用基本操作有哪些”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    --结束END--

    本文标题: python神经网络TensorFlow常用基本操作有哪些

    本文链接: https://www.lsjlt.com/news/304773.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • python神经网络TensorFlow常用基本操作有哪些
      本篇内容主要讲解“python神经网络TensorFlow常用基本操作有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python神经网络TensorFlow常用基本操作有哪些”吧!要将深度...
      99+
      2023-06-25
    • python神经网络TensorFlow简介常用基本操作教程
      目录其它一些主流的深度学习工具框架对比变量:创建、初始化、保存和加载- 添加神经层- loss- 创建- 初始化- 由另一个变量初始化要将深度学习更快且更便捷地应用于新的问题中,选择...
      99+
      2024-04-02
    • python神经网络框架有哪些
      python中神经网络框架有PyTorch、NeuroLab、Lasagne、Pyrenn几种PyTorchPytorch是一个有独特构建神经网络方法的包,Pytorch具有强大的GPU加速和深度神经网络建立的能力,常使用PyTorch来代...
      99+
      2024-04-02
    • Python深度学习TensorFlow神经网络基础概括
      目录一、基础理论1、TensorFlow2、TensorFlow过程1、构建图阶段2、执行图阶段(会话)二、TensorFlow实例(执行加法)1、构造静态图1-1、创建数据(张量)...
      99+
      2024-04-02
    • python中有哪些神经网络模块
      python中的神经网络模块有以下几种LasagneLasagne是一个轻量级的库,常用于建立和训练神经网络,其设计遵循了简单、透明、模块化、实用主义、约束性和重点性六个原则,支持前馈网络,如卷积神经网络。PyTorchPytorch是一个...
      99+
      2024-04-02
    • python神经网络使用tensorflow实现自编码Autoencoder
      目录学习前言antoencoder简介1、为什么要降维2、antoencoder的原理3、python中encode的实现全部代码学习前言 当你发现数据的维度太多怎么办!没关系,我们...
      99+
      2024-04-02
    • Python神经网络TensorFlow基于CNN卷积识别手写数字
      目录基础理论一、训练CNN卷积神经网络1、载入数据2、改变数据维度3、归一化4、独热编码5、搭建CNN卷积神经网络5-1、第一层:第一个卷积层5-2、第二层:第二个卷积层5-3、扁平...
      99+
      2024-04-02
    • Torch中的循环神经网络有哪些常见应用
      文本生成:循环神经网络可以用于生成文本,例如生成小说、诗歌等文本内容。 语言建模:循环神经网络可以用于对文本数据进行建模,例...
      99+
      2024-04-02
    • MySQL常用基本操作都有哪些
      MySQL常用基本操作都有哪些,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 MySQL常用操作基本操作,以下都是MySQL5.0下...
      99+
      2024-04-02
    • Python深度学习神经网络基本原理
      目录神经网络梯度下降法神经网络 梯度下降法 在详细了解梯度下降的算法之前,我们先看看相关的一些概念。     1. 步长(Learning rate):步长决定了在梯度下降迭...
      99+
      2024-04-02
    • 如何在python中使用Tensorflow训练BP神经网络
      如何在python中使用Tensorflow训练BP神经网络?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。使用软件Python 3.8,Tensorflow2.0问题描述鸢...
      99+
      2023-06-15
    • Python基于TensorFlow接口实现深度学习神经网络回归
      目录1 写在前面2 代码分解介绍2.1 准备工作2.2 参数配置2.3 原有模型删除2.4 数据导入与数据划分2.5 Feature Columns定义2.6 模型优化方法构建与模型...
      99+
      2023-02-17
      Python TensorFlow深度学习神经网络回归 Python TensorFlow Python 神经网络回归
    • CentOS6.5基本操作常用命令有哪些
      小编给大家分享一下CentOS6.5基本操作常用命令有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先大家可以使用virtualbox安装一个CENTOS6...
      99+
      2023-06-10
    • python神经网络使用tensorflow构建长短时记忆LSTM
      目录LSTM简介1、RNN的梯度消失问题2、LSTM的结构tensorflow中LSTM的相关函数tf.contrib.rnn.BasicLSTMCelltf.nn.dynamic_...
      99+
      2024-04-02
    • Git常用的基本操作命令有哪些
      这篇文章给大家分享的是有关Git常用的基本操作命令有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。git 常用命令1. 常用$ git remote add origi...
      99+
      2023-06-29
    • python神经网络pytorch中BN运算操作自实现
      BN 想必大家都很熟悉,来自论文: 《Batch Normalization Accelerating Deep Network Training by Reducing Inter...
      99+
      2024-04-02
    • mysql常识和基本操作都有哪些
      这篇文章给大家介绍mysql常识和基本操作都有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 mysql常识和基本操作 字段类型    1.INT[(...
      99+
      2024-04-02
    • python神经网络tensorflow利用训练好的模型进行预测
      目录学习前言载入模型思路实现代码学习前言 在神经网络学习中slim常用函数与如何训练、保存模型文章里已经讲述了如何使用slim训练出来一个模型,这篇文章将会讲述如何预测。 载入模型思...
      99+
      2024-04-02
    • Python中有哪些字符基本操作
      Python中有哪些字符基本操作,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一. Python字符的表示用单引号或双引号构成字符串。“abc” \&...
      99+
      2023-06-17
    • MySQL基本操作有哪些
      这篇文章主要介绍“MySQL基本操作有哪些”,在日常操作中,相信很多人在MySQL基本操作有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL基本操作有哪些”的疑惑...
      99+
      2022-12-05
      mysql
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作