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

cms网站管理系统源码h5动画制作软件

cms网站管理系统源码,h5动画制作软件,免费空间浏览量,wordpress怎么看前台利用numpy的并行操作可以比纯用Python的list快很多#xff0c;不仅如此#xff0c;代码往往精简得多。 So, 这篇来讲讲进阶的广播和花哨索引操作#xff0c;少写几个for循环#xff08;#xff09;。 目录 一个二维的例题 一个三维的例题 解法一 解法二 更难的三维例题… 利用numpy的并行操作可以比纯用Python的list快很多不仅如此代码往往精简得多。 So, 这篇来讲讲进阶的广播和花哨索引操作少写几个for循环。 目录 一个二维的例题 一个三维的例题 解法一 解法二 更难的三维例题 解法一 解法二 独热编码 写法一 写法二 一个二维的例题 从一个简单的问题开始现在有一个向量 弄出这个东西出来 这个很简单 x [1, 2, 3] res [] for i in x:for j in x:res.append(i j) res torch.tensor(res).reshape(3, 3) res# output tensor([[2, 3, 4],[3, 4, 5],[4, 5, 6]]) 以上内容是开玩笑的下面开始认真起来。自然这个很明显是个广播的送分题 x torch.tensor([1, 2, 3]) x x.reshape(-1, 1)#output tensor([[2, 3, 4],[3, 4, 5],[4, 5, 6]]) 一个三维的例题 现在有一个向量 弄出这个东西出来 不过现在a b c都是长度为4的向量。x是一个(3, 4)的矩阵还是说明一下这里不表示分块矩阵目标是一个(3, 3, 4)的张量。 解法一 这个在GAT里面里面很常见把“”换成“concat”就是图卷积注意力的核心步骤之一。当时看了一大圈的zhihu和CSDN都是这么写的 先x.repeat(1,3)横着重复维度是(3, 3*4): ||表示两个向量拼接 然后x.reshape(3*3, -1), 维度变成(3*3, 4): 另一个竖着重复x.repeat(3,1)维度是(3*3, 4): 然后相加reshape即可。 x torch.tensor([[1, 1, 1, 1],[2, 2, 2, 2],[3, 3, 3, 3]]) (x.repeat(1, 3).reshape(3*3, 4) x.repeat(3, 1)).reshape(3, 3, 4)#output tensor([[[2, 2, 2, 2],[3, 3, 3, 3],[4, 4, 4, 4]],[[3, 3, 3, 3],[4, 4, 4, 4],[5, 5, 5, 5]],[[4, 4, 4, 4],[5, 5, 5, 5],[6, 6, 6, 6]]]) 解法二 后来想了一下其实可以直接广播。 解法一虽然复杂一点但是把题目里面的“”改成“||”就只能用解法一了。 x torch.tensor([[1, 1, 1, 1],[2, 2, 2, 2],[3, 3, 3, 3]]) x.unsqueeze(0) x.unsqueeze(1) # (1, 3, 4) (3, 1, 4)#output tensor([[[2, 2, 2, 2],[3, 3, 3, 3],[4, 4, 4, 4]],[[3, 3, 3, 3],[4, 4, 4, 4],[5, 5, 5, 5]],[[4, 4, 4, 4],[5, 5, 5, 5],[6, 6, 6, 6]]]) 更难的三维例题 现在有一个向量 弄出这个东西出来 不过现在a b c都是长度为4的向量。x是一个(3, 4)的矩阵还是说明一下这里不表示分块矩阵两两做点积目标是一个(3, 3)的张量。 先来一个错误示例 x torch.tensor([[1, 1, 1, 1],[2, 2, 2, 2],[3, 3, 3, 3]]) np.dot(x.unsqueeze(0), x.unsqueeze(1)), torch.dot(x.unsqueeze(0), x.unsqueeze(1)) 两种做法都是错的torch.dot只支持1D的向量。np,dot处理高维度的张量的逻辑很不同这里可以 查阅资料不细说了。 解法一 可以用numpy里面最玄学的函数之一——np.meshgrid 先看看这个函数是干嘛的 x torch.tensor([[1, 1, 1, 1],[2, 2, 2, 2],[3, 3, 3, 3]]) i, j np.meshgrid(np.arange(x.shape[0]), np.arange(x.shape[1]), indexingij) i, j# output array([[0, 0, 0, 0],[1, 1, 1, 1],[2, 2, 2, 2]]array([[0, 1, 2, 3],[0, 1, 2, 3],[0, 1, 2, 3]]) np.arange(x.shape[0]) : array([0, 1, 2]) np.arange(x.shape[0]) : array([0, 1, 2, 3]) 然后这个函数让前者往右重复让后者往下重复得到两个矩阵。然后细心看花哨索引和广播就知道 x x[i, j]  !!! 了解这个函数干嘛后那下面我们进入正题。 x torch.tensor([[1, 1, 1, 1],[2, 2, 2, 2],[3, 3, 3, 3]]) x1, x2 x.unsqueeze(0), x.unsqueeze(1) # (1, 3, 4) (3, 1, 4) x1, x2 torch.broadcast_tensors(x1, x2) # (3, 3, 4) (3, 3, 4) 手动广播 i, j np.meshgrid(np.arange(3), np.arange(3), indexingij) torch.sum(x1[i, j, :] * x2[i, j, :], dim-1)#output tensor([[ 4, 8, 12],[ 8, 16, 24],[12, 24, 36]]) 用花哨索引固定前两个维度不动在第三个维度上相乘求和就是点积。搞定。 解法二 x torch.tensor([[1, 1, 1, 1],[2, 2, 2, 2],[3, 3, 3, 3]]) x1, x2 x.unsqueeze(0), x.unsqueeze(1) # (1, 3, 4) (3, 1, 4) torch.einsum(ijk,ijk-ij, x1, x2) # 这个函数支持广播#output tensor([[ 4, 8, 12],[ 8, 16, 24],[12, 24, 36]]) np.einsum的全称是Einstein summation convention即爱因斯坦求和约定。这个约定允许我们通过一个简洁的字符串表达式来指定复杂的数组运算包括点积、矩阵乘法、张量收缩等。 这里是一个简单的运用。 独热编码 原来利用广播可以写独热编码。 写法一 一般独热编码可以这么写 a np.array([1, 2, 1, 0]) category len(np.unique(a)) eye np.eye(category) eye, eye[a]#output array([[1., 0., 0.],[0., 1., 0.],[0., 0., 1.]]array([[0., 1., 0.],[0., 0., 1.],[0., 1., 0.],[1., 0., 0.]] eye是一个单位矩阵a构成了一个花哨索引每次取eye的一行然后取4次。 十分简洁。缺点是a的每个值必须在[0,category-1]中。 写法二 a np.array([a, b, c, d, e, f]) b np.array([d, e, f]) b b.reshape(-1, 1) # (3, 1) (a b).astype(int)# output array([[0, 0, 0, 1, 0, 0],[0, 0, 0, 0, 1, 0],[0, 0, 0, 0, 0, 1]] 支持各种类型的数据而且还能应对b的某个元素不在a中的尴尬情况此时一排都是0因为一排都是不等于。 有一个缺点是在第四行时Pycharm不知道这是一个ab是一个布尔数组在astype会画一个黄色看着闹心狗头。
http://www.hkea.cn/news/14319891/

相关文章:

  • 怎样自己做卖商品的网站静态网站更新
  • 岳麓做网站的公司铜山徐州网站开发
  • 免费商城网站制作重庆seo怎么样
  • 微交易网站建设17网站一起做
  • 中国免费域名申请网站漯河网站制作公司
  • 江苏省建设工程网站网站的优化和推广方案怎么写
  • 企业对企业的网站优书网有官方app吗
  • 买了个域名怎么做网站蒙文门户网站建设
  • 免费的h5制作网站wordpress 内容可以是表格吗
  • 糖果网站是李笑来做的吗wordpress文件夹
  • 建设好网站怎么付费推广计算机网站建设与开发
  • 长沙网站seo价格北京网页制作设计培训
  • 网站建站主题网站前台图片设置
  • 怎样自己做企业的网站韩国网页设计欣赏
  • 山东网站建设服务商wordpress儿童主题
  • 商务网站建设详细步骤符合seo的网站
  • 没有备案的网站 推广html网页制作作品
  • 南京h5网站开发做网站推广汉狮网络
  • 网站后台用什么程序做php网站建设制作方案
  • 做门户网站用什么系统centoa7 wordpress
  • 收费搭建网站安徽池州做网站的公司
  • 企业网站建设方案书dedecms确定网站风格
  • 网站设计制作推荐手机必备软件100个
  • 网站节约化建设wordpress创建相册
  • 张家界做网站找谁app制作视频教程
  • 网站icp备案流程建设工程指数网站
  • 目前做网站的好处什么网站可以做医疗设备的
  • 小说网站开发 小说网站源码建筑工程类人才招聘
  • 网站上那些兼职网页怎么做卖印花图案设计网站
  • 物业管理系统论文网站关键词优化怎么做