当前位置: 首页 > news >正文

福建网站优化石家庄网站推广招聘

福建网站优化,石家庄网站推广招聘,北京网站建设 公司,wordpress修改教程低阶张量操作是所有现代机器学习的底层架构,可以转化为TensorFlow API。 张量,包括存储神经网络状态的特殊张量(变量)​。 张量运算,比如加法、relu、matmul。 反向传播,一种计算数学表达式梯度的方法&…

低阶张量操作是所有现代机器学习的底层架构,可以转化为TensorFlow API。

张量,包括存储神经网络状态的特殊张量(变量)​。
张量运算,比如加法、relu、matmul。
反向传播,一种计算数学表达式梯度的方法(在TensorFlow中通过GradientTape对象来实现)​。

然后是高阶深度学习概念。这可以转化为Keras API。

,多层可以构成模型。
损失函数,它定义了用于学习的反馈信号。(必须是可微的)
优化器,它决定学习过程如何进行。
评估模型性能的指标,比如精度。
训练循环,执行小批量梯度随机下降。

常数张量和变量

要使用TensorFlow,我们需要用到一些张量。创建张量需要给定初始值。例如,可以创建全1张量或全0张量(见代码清单3-1)​,也可以从随机分布中取值来创建张量(见代码清单3-2)​。

代码清单3-1 全1张量或全0张量

import tensorflow as tf
x = tf.ones(shape=(2, 1))
#←----等同于np.ones(shape=(2, 1))
print(x)
x = tf.zeros(shape=(2, 1))
#←----等同于np.zeros(shape=(2, 1))
print(x)

代码清单3-2 随机张量

x = tf.random.normal(shape=(3, 1), mean=0., stddev=1.)
#←----从均值为0、标准差为1的正态分布中抽取的随机张量,等同于np.random.normal(size=(3, 1), loc=0., scale=1.)
# mean的中文含义就是均值print(x)x = tf.random.uniform(shape=(3, 1), minval=0., maxval=1.)
#←----从0和1之间的均匀分布中抽取的随机张量,等同于np.random.uniform(size=(3, 1), low=0., high=1.)
print(x)

NumPy数组和TensorFlow张量之间的一个重要区别是,TensorFlow张量是不可赋值的,它是常量。举例来说,在NumPy中,你可以执行以下操作,如代码清单3-3所示。

代码清单3-3 NumPy数组是可赋值的

import numpy as np
x = np.ones(shape=(2, 2))
x[0, 0] = 0.

如果在TensorFlow中执行同样的操作(如代码清单3-4所示)​,那么程序会报错:EagerTensor object does not support item assignment(EagerTensor对象不支持对元素进行赋值)​。

代码清单3-4 TensorFlow张量是不可赋值的

x = tf.ones(shape=(2, 2))----程序会报错,因为张量是不可赋值的
x[0, 0] = 0.

要训练模型,我们需要更新其状态,而模型状态是一组张量。如果张量不可赋值,那么我们该怎么做呢?这时就需要用到变量(variable)​。tf.Variable是一个类,其作用是管理TensorFlow中的可变状态。要创建一个变量,你需要为其提供初始值,比如随机张量,如代码清单3-5所示。

>>> v = tf.Variable(initial_value=tf.random.normal(shape=(3, 1)))
>>> print(v)
array([[-0.75133973],[-0.4872893 ],[ 1.6626885 ]], dtype=float32)

变量的状态可以通过其assign方法进行修改,如代码清单3-6所示。

代码清单3-6 为TensorFlow变量赋值

>>> v.assign(tf.ones((3, 1)))
array([[1.],[1.],[1.]], dtype=float32)

这种方法也适用于变量的子集,如代码清单3-7所示。

代码清单3-7 为TensorFlow变量的子集赋值

>>> v[0, 0].assign(3.)
array([[3.],[1.],[1.]], dtype=float32)

与此类似,assign_add()和assign_sub()分别等同于+=和-=的效果,如代码清单3-8所示。

代码清单3-8 使用assign_add()

>>> v.assign_add(tf.ones((3, 1)))
array([[2.],[2.],[2.]], dtype=float32)

就像NumPy一样,TensorFlow提供了许多张量运算来表达数学公式。我们来看几个例子,如代码清单3-9所示。

代码清单3-9 一些基本的数学运算

a = tf.ones((2, 2))
b = tf.square(a)----求平方
c = tf.sqrt(a)----求平方根
d = b + c  ←----两个张量(逐元素)相加
e = tf.matmul(a, b)----计算两个张量的积(详见第2章)
e *= d  ←----两个张量(逐元素)相乘

重要的是,代码清单3-9中的每一个运算都是即刻执行的:任何时候都可以打印出当前结果,就像在NumPy中一样。我们称这种情况为急切执行(eager execution)​。

本文可运行全部代码集合,大家可以直接在装了tensorflow的python3环境下运行。

import tensorflow as tf
x = tf.ones(shape=(2, 1))
#←----等同于np.ones(shape=(2, 1))
print(x)
x = tf.zeros(shape=(2, 1))
#←----等同于np.zeros(shape=(2, 1))
print(x)x = tf.random.normal(shape=(3, 1), mean=0., stddev=1.)
#←----从均值为0、标准差为1的正态分布中抽取的随机张量,等同于np.random.normal(size=(3, 1), loc=0., scale=1.)
# mean的中文含义就是均值print(x)x = tf.random.uniform(shape=(3, 1), minval=0., maxval=1.)
#←----从0和1之间的均匀分布中抽取的随机张量,等同于np.random.uniform(size=(3, 1), low=0., high=1.)
print(x)import numpy as np
x = np.ones(shape=(2, 2))
x[0, 0] = 0.print(x)v = tf.Variable(initial_value=tf.random.normal(shape=(3, 1)))
print(v)v.assign(tf.ones((3, 1)))
print(v)v[0, 0].assign(3.)
print(v)v.assign_add(tf.ones((3, 1)))
print(v)
http://www.yayakq.cn/news/311089/

相关文章:

  • 西安旅游网站开发成全视频免费观看在线看第6季高清版
  • 小辰青岛网站建设定制类网站
  • 在哪几个网站里可以做淘客如何建网站并做推广
  • 苏州网络营销网站建设平台番禺建设局网站首页
  • 自适应网站案例wordpress调用文章id
  • 网站设计免费模板新版爱美眉网站源码
  • 哪个网站可以做淘宝代码网站功能怎么写
  • 网站设计中的用户体验网络营销师报考条件
  • 网站建设 顺德wordpress官使用方法
  • 建设校园网站怎么查看网站根目录
  • 什么是可信网站电器网站建设
  • 一屏一屏的网站怎么做本网站仅支持ie浏览器
  • 看摄影作品的网站中国广告网
  • 四川建设网电子招投标网站阿里网站年费续费怎么做分录
  • 网站开发计入会计 什么科目长沙制作公园仿竹护栏实体厂家
  • 网站建设 服务器 预算报价清单竞价恶意点击报案
  • 如何建立网站是什么东莞横沥镇属于哪个区
  • 建设部注册监理工程师网站随州网站建设哪家专业
  • 在哪个网站找婚照公司网站建设中请稍后再访问
  • 哈尔滨市做网站公司wordpress 展开折叠
  • 个人域名可以做网站吗Wordpress 模块wordkey
  • 天津做网站.都找津坤科技茶的网站制作
  • 设计企业公司网站access如何与网站连接数据库
  • 互联网设计公司网站百度关键词排名查询
  • 目前做哪个网站能致富做网站需要先买域名吗
  • 自贡建设投资有限公司网站江苏网站建设开发
  • 东莞微网站物流公司上门取大件托运
  • 网站制作xiu021微餐饮网站建设平台
  • 网上有什么做兼职的网站社交网站开发用到的技术
  • 电影网站推广wordpress主题哪个最好用