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

营销网站建设情况调查问卷拓普网站建设

营销网站建设情况调查问卷,拓普网站建设,网站流量的做,asp语言的网站建设目录1 爱因斯坦求和由来2 爱因斯坦求和原理3 实例:字母表示法3.1 向量运算3.2 矩阵运算3.3 张量运算4 实例:常量表示法4.1 向量运算4.2 矩阵运算4.3 张量运算1 爱因斯坦求和由来 爱因斯坦求和约定(Einstein summation convention)是一种标记的约定&#…

目录

  • 1 爱因斯坦求和由来
  • 2 爱因斯坦求和原理
  • 3 实例:字母表示法
    • 3.1 向量运算
    • 3.2 矩阵运算
    • 3.3 张量运算
  • 4 实例:常量表示法
    • 4.1 向量运算
    • 4.2 矩阵运算
    • 4.3 张量运算

1 爱因斯坦求和由来

爱因斯坦求和约定(Einstein summation convention)是一种标记的约定,又称为爱因斯坦标记法(Einstein notation),在处理关于坐标的方程式时非常有用。这约定是由阿尔伯特·爱因斯坦于1916年提出的。后来,爱因斯坦与友人半开玩笑地说:“这是数学史上的一大发现,若不信的话,可以试着返回那不使用这方法的古板日子。”

在这里插入图片描述

采用爱因斯坦求和约定,可以使数学表达式显得简洁明快。

在深度学习中经常涉及高阶张量运算,普通代数方法(如矩阵乘法)相对冗杂,因此引入爱因斯坦求和约定,其核心原理是将张量下标划分为自由标(free index)哑标(dummy index),通过遍历自由标而对哑标逐元相乘求和的方式进行张量运算。

2 爱因斯坦求和原理

爱因斯坦求和原理并不复杂,具体而言,可以用下图来通俗理解,定义:

  • 自由标:在输入输出侧都出现且各出现一次的索引号;
  • 哑标:只在输入侧出现且出现两次的索引号。

输入、输出索引号的个数表示各参与运算张量的维度,例如下图表示两个二维张量做求和运算输出一个二维张量。

在这里插入图片描述

3 实例:字母表示法

3.1 向量运算

# ============================ 一维张量 ================================
a = torch.tensor([1, 2, 3], dtype=float)
b = torch.tensor([4, 5, 6], dtype=float)# 向量内积
print("向量内积:", torch.einsum("i, i ->", a, b))
# 向量点乘
print("向量点乘:",torch.einsum("i, i -> i", a, b))

结果如下:

>>> 向量内积: tensor(32., dtype=torch.float64)
>>> 向量点乘: tensor([ 4., 10., 18.], dtype=torch.float64)

3.2 矩阵运算

# ============================ 二维张量 ================================
c = torch.tensor([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype=float)
d = torch.ones((3, 4), dtype=float)# 矩阵乘法
print("矩阵乘法:", torch.einsum("ij, jk -> ik", c, d))
# 转置
print("矩阵转置:", torch.einsum("ij -> ji", c))
# 迹
print("迹:", torch.einsum("ii ->", c))
# 对角元
print("对角元:", torch.einsum("ii -> i", c))
# 矩阵按行求和
print("矩阵按行求和:", torch.einsum("ij -> j", c))
# 矩阵按列求和
print("矩阵按列求和:", torch.einsum("ij -> i", c))
# 矩阵所有元素求和
print("矩阵所有元素求和:", torch.einsum("ij ->", c))
# 矩阵乘向量
print("矩阵乘向量:", torch.einsum("ij, j -> i", c, a))

结果如下:

>>> 矩阵乘法: tensor([[ 6.,  6.,  6.,  6.],[15., 15., 15., 15.],[24., 24., 24., 24.]], dtype=torch.float64)   
>>> 矩阵转置: tensor([[1., 4., 7.],[2., 5., 8.],[3., 6., 9.]], dtype=torch.float64)
>>>: tensor(15., dtype=torch.float64)
>>> 对角元: tensor([1., 5., 9.], dtype=torch.float64)
>>> 矩阵按行求和: tensor([12., 15., 18.], dtype=torch.float64)
>>> 矩阵按列求和: tensor([ 6., 15., 24.], dtype=torch.float64)
>>> 矩阵所有元素求和: tensor(45., dtype=torch.float64)
>>> 矩阵乘向量: tensor([14., 32., 50.], dtype=torch.float64)

3.3 张量运算

# ============================ 高阶张量 ================================
e = torch.arange(60.).reshape(5, 3, 4)
f = torch.arange(24.).reshape(2, 4, 3)# 三维张量压缩
print("三维张量压缩:", torch.einsum("kij, lji -> kl", e, f))

结果如下:

>>> 三维张量压缩: tensor([[  440.,  1232.],[ 1232.,  3752.],[ 2024.,  6272.],[ 2816.,  8792.],[ 3608., 11312.]])

4 实例:常量表示法

以下结果同第三节,不再赘述

4.1 向量运算

'''
索引表示法
(张量后接输入索引, 最后是输出索引)
'''
# ============================ 一维张量 ================================
a = np.array([1, 2, 3], dtype=float)
b = np.array([4, 5, 6], dtype=float)# 向量内积
print("向量内积:", np.einsum(a, [0], b, [0]))
# 向量点乘
print("向量点乘:",np.einsum(a, [0], b, [0], [0]))

4.2 矩阵运算

# ============================ 二维张量 ================================
c = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype=float)
d = np.ones((3, 4), dtype=float)# 矩阵乘法
print("矩阵乘法:", np.einsum(c, [0, 1], d, [1, 2], [0, 2]))
# 转置
print("矩阵转置:", np.einsum(c, [0, 1], [1, 0]))
# 迹
print("迹:", np.einsum(c, [0, 0]))
# 对角元
print("对角元:", np.einsum(c, [0, 0], [0]))
# 矩阵按行求和
print("矩阵按行求和:", np.einsum(c, [0, 1], [1]))
# 矩阵按列求和
print("矩阵按列求和:", np.einsum(c, [0, 1], [0]))
# 矩阵所有元素求和
print("矩阵所有元素求和:", np.einsum(c, [0, 1]))
# 矩阵乘向量
print("矩阵乘向量:", np.einsum(c, [0, 1], a, [1], [0]))

4.3 张量运算

# ============================ 高阶张量 ================================
e = np.arange(60.).reshape(5, 3, 4)
f = np.arange(24.).reshape(2, 4, 3)# 三维张量压缩
print("三维张量压缩:", np.einsum(e, [2, 0, 1], f, [3, 1, 0], [2, 3]))

🔥 更多精彩专栏

  • 《ROS从入门到精通》
  • 《Pytorch深度学习实战》
  • 《机器学习强基计划》
  • 《运动规划实战精讲》

👇源码获取 · 技术交流 · 抱团学习 · 咨询分享 请联系👇
http://www.yayakq.cn/news/628698/

相关文章:

  • 三台移动网站建设门户网站建设报告
  • 重庆网站建设 红旗河沟html网站制作答辩问题
  • 企业网站建站价格做淘宝头像的网站
  • 中国建设银行假网站上海集团网站建设公司好
  • 电商网站首页怎么制作阿里巴巴建站多少钱
  • 山西建设工程信息网站o2o平台有哪些国内
  • 怎么用手机制作网站知识产权教育网站建设方案
  • 拼多多网站怎么建设的东莞seo排名优化公司
  • php网站开发需求文档海淀发布会
  • 深圳红酒网站建设亚泰国际建设股份有限公司网站
  • 用dw做网站时怎么添加弹窗西域电商平台官网
  • 网站搭建合同范本揭阳网站建设公司哪个好
  • 有域名有空间怎么做网站wordpress拖拽上传
  • 线在科技成都网站推广公司织梦模板安装详细教程
  • 南京网站设计建设十佳工业设计公司
  • 上海做公司网站wordpress建站教程阿里云
  • 上海网站制作设计公司微信文章导入wordpress
  • 银川网站建设一条龙wordpress 二次元主题
  • 企业网站首页设计评价南阳seo网站推广费用
  • 花型图案设计网站佘山做网站
  • 自己做外贸自己做网站网站基础建设英文翻译
  • 有域名有服务器如何做网站cms系统源码
  • 网站建设维护保密协议专业开发小程序的公司
  • 帮别人做数学题赚钱的网站杭州it公司排名
  • 网站模版可以修改吗使用网站模板快速建站教案
  • 北京微信网站开发费用住房和城乡建设网站方案
  • 流量多网站高端大气的网站模板
  • 网站用什么cms如何介绍设计的网站模板
  • 做外贸找客户的网站dedecms模板安装教程
  • 完全删除wordpress扬中企业网站优化哪家好