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

建网360 网站建设跨境电商网站开发

建网360 网站建设,跨境电商网站开发,附近建网站公司,临沂网站设计建设本文以取 (bs, n, n) 张量的右上三角阵并展平为向量 (bs, n*(n1)//2)) 为例,展示如何用 taichi 编写深度学习算子。 如图,要把形状为 (bs,n,n)(bs,n,n)(bs,n,n) 的张量,转化为 (bs,n(n1)2)(bs,\frac{n(n1)}{2})(bs,2n(n1)​) 的向量。我们先写…

本文以取 (bs, n, n) 张量的右上三角阵并展平为向量 (bs, n*(n+1)//2)) 为例,展示如何用 taichi 编写深度学习算子。

在这里插入图片描述
如图,要把形状为 (bs,n,n)(bs,n,n)(bs,n,n) 的张量,转化为 (bs,n(n+1)2)(bs,\frac{n(n+1)}{2})(bs,2n(n+1)) 的向量。我们先写一个最简单的最慢的纯 python 循环实现方法

纯 python for 循环

def get_tensor_up_right_tri_slow(t):# t shape (bs, n, n)# out shape (bs, n*(n+1)//2)out = torch.zeros(t.shape[0], t.shape[1]*(t.shape[1]+1)//2)n = t.shape[1]# k = i*n + j - i*(i+1)//2for b in range(t.shape[0]):# 遍历右上三角阵,包括主对角线for i in range(t.shape[1]):for j in range(i, t.shape[1]):k = i*n + j - i*(i+1)//2out[b, k] = t[b, i, j]return out

可想而知,三层 python for 循环,必然是极慢的了。

转化为 taichi

在此基础上,稍微做一些修改,就可以得到我们的 taichi 版本函数

import taichi as titi.init(arch=ti.gpu)@ti.kernel
def get_tensor_up_right_tri(t: ti.types.ndarray(ndim=3, dtype=ti.f32), out: ti.types.ndarray(ndim=2, dtype=ti.f32)):# t shape (bs, n, n)# out shape (bs, n*(n+1)//2)n = t.shape[1]for b, i, j in t:# 遍历右上三角阵,包括主对角线if i <= j:k = i*n + j - i*(i+1)//2out[b, k] = t[b, i, j]

taichi 支持同时遍历多层循环,将三层循环改为一层循环后,和 python for 循环版本基本没有什么差别。taichi 将此函数转化为 CUDA 版本进行加速,从而提高运算速度。

http://www.ds6.com.cn/news/93748.html

相关文章:

  • 手机网站开发合同范本百度推广二级代理商
  • jz做网站2024很有可能再次封城吗
  • 上海静安网站建设河南网络推广公司
  • 织梦网站提示保存目录数据时报陕西今日头条新闻
  • 如何自建网页百度seo权重
  • 淄博网站排名优化今日头条新闻推荐
  • 做网站都用什么工具seo关键词排名优化报价
  • 佛山外贸建站dw网页制作详细步骤
  • 怎么才能百度做网站百度关键词规划师入口
  • 购物app下载百度站长工具seo综合查询
  • 银川 网站建设电脑系统优化工具
  • 江苏建设厅施工员证报名网站十大嵌入式培训机构
  • 专业网站设计工作室无锡网站seo
  • 好看的学校网站模板app联盟推广平台
  • 哪些网站做彩票预测途径阿里妈妈推广网站
  • 做教育业网站模板之家
  • 东莞外贸网站营销网站定制
  • 凡科建站做的网站收录慢吗全球十大搜索引擎入口
  • 电商网站建设是做什么的营销推广策略有哪些
  • 食品网站设计欣赏简述常用的网络营销方法
  • 网站制作软件手机版品牌型网站制作价格
  • 邯郸wap网站建设设计培训学院
  • 哪有做机械设计的网站百度推广开户需要多少钱
  • 营销网站制作软件网站一般怎么推广
  • 莱芜网站建设开发公司今日疫情最新情况
  • 汕头网站制作哪家好网站设计制作的服务怎么样
  • 上海松江做网站公司南阳网站seo
  • 怎么用织梦来做网站后台网站建设企业咨询
  • b2b电子商务网站的盈利模式网站建设平台有哪些
  • 拓普建站推广网站设计软件