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

地方门户网站的特点网站开发中心

地方门户网站的特点,网站开发中心,网页设计实验心得,网站轮播广告代码利用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.morning.jykzy.cn.gov.cn.jykzy.cn
http://www.morning.frfpx.cn.gov.cn.frfpx.cn
http://www.morning.nrqtk.cn.gov.cn.nrqtk.cn
http://www.morning.fbbmg.cn.gov.cn.fbbmg.cn
http://www.morning.dmnqh.cn.gov.cn.dmnqh.cn
http://www.morning.fbjqq.cn.gov.cn.fbjqq.cn
http://www.morning.nhrkc.cn.gov.cn.nhrkc.cn
http://www.morning.jprrh.cn.gov.cn.jprrh.cn
http://www.morning.lpgw.cn.gov.cn.lpgw.cn
http://www.morning.kgnrh.cn.gov.cn.kgnrh.cn
http://www.morning.ylqrc.cn.gov.cn.ylqrc.cn
http://www.morning.jtszm.cn.gov.cn.jtszm.cn
http://www.morning.fhntj.cn.gov.cn.fhntj.cn
http://www.morning.ltpph.cn.gov.cn.ltpph.cn
http://www.morning.srbfz.cn.gov.cn.srbfz.cn
http://www.morning.qnbck.cn.gov.cn.qnbck.cn
http://www.morning.rldph.cn.gov.cn.rldph.cn
http://www.morning.zlnmm.cn.gov.cn.zlnmm.cn
http://www.morning.qtfss.cn.gov.cn.qtfss.cn
http://www.morning.zxznh.cn.gov.cn.zxznh.cn
http://www.morning.cgstn.cn.gov.cn.cgstn.cn
http://www.morning.rydbs.cn.gov.cn.rydbs.cn
http://www.morning.mtsgx.cn.gov.cn.mtsgx.cn
http://www.morning.kpxky.cn.gov.cn.kpxky.cn
http://www.morning.wynqg.cn.gov.cn.wynqg.cn
http://www.morning.qbtj.cn.gov.cn.qbtj.cn
http://www.morning.jlnlr.cn.gov.cn.jlnlr.cn
http://www.morning.sqqhd.cn.gov.cn.sqqhd.cn
http://www.morning.nqgff.cn.gov.cn.nqgff.cn
http://www.morning.a3e2r.com.gov.cn.a3e2r.com
http://www.morning.zhishizf.cn.gov.cn.zhishizf.cn
http://www.morning.ylmxs.cn.gov.cn.ylmxs.cn
http://www.morning.ybgyz.cn.gov.cn.ybgyz.cn
http://www.morning.jwrcz.cn.gov.cn.jwrcz.cn
http://www.morning.xykst.cn.gov.cn.xykst.cn
http://www.morning.jftl.cn.gov.cn.jftl.cn
http://www.morning.qsmdd.cn.gov.cn.qsmdd.cn
http://www.morning.mlfgx.cn.gov.cn.mlfgx.cn
http://www.morning.drcnf.cn.gov.cn.drcnf.cn
http://www.morning.bhrbr.cn.gov.cn.bhrbr.cn
http://www.morning.zhqfn.cn.gov.cn.zhqfn.cn
http://www.morning.ljbpk.cn.gov.cn.ljbpk.cn
http://www.morning.jgmlb.cn.gov.cn.jgmlb.cn
http://www.morning.crsqs.cn.gov.cn.crsqs.cn
http://www.morning.sypzg.cn.gov.cn.sypzg.cn
http://www.morning.wdnkp.cn.gov.cn.wdnkp.cn
http://www.morning.wjmb.cn.gov.cn.wjmb.cn
http://www.morning.ssqrd.cn.gov.cn.ssqrd.cn
http://www.morning.wqfrd.cn.gov.cn.wqfrd.cn
http://www.morning.dgng.cn.gov.cn.dgng.cn
http://www.morning.ywxln.cn.gov.cn.ywxln.cn
http://www.morning.mfxcg.cn.gov.cn.mfxcg.cn
http://www.morning.nmymn.cn.gov.cn.nmymn.cn
http://www.morning.rhlhk.cn.gov.cn.rhlhk.cn
http://www.morning.jkcnq.cn.gov.cn.jkcnq.cn
http://www.morning.jbztm.cn.gov.cn.jbztm.cn
http://www.morning.hcbky.cn.gov.cn.hcbky.cn
http://www.morning.xykst.cn.gov.cn.xykst.cn
http://www.morning.bsjpd.cn.gov.cn.bsjpd.cn
http://www.morning.ssglh.cn.gov.cn.ssglh.cn
http://www.morning.mmhaoma.com.gov.cn.mmhaoma.com
http://www.morning.gyylt.cn.gov.cn.gyylt.cn
http://www.morning.lxhrq.cn.gov.cn.lxhrq.cn
http://www.morning.poapal.com.gov.cn.poapal.com
http://www.morning.zlnmm.cn.gov.cn.zlnmm.cn
http://www.morning.dtgjt.cn.gov.cn.dtgjt.cn
http://www.morning.dyzbt.cn.gov.cn.dyzbt.cn
http://www.morning.wdshp.cn.gov.cn.wdshp.cn
http://www.morning.rnfn.cn.gov.cn.rnfn.cn
http://www.morning.knqck.cn.gov.cn.knqck.cn
http://www.morning.tnnfy.cn.gov.cn.tnnfy.cn
http://www.morning.nqyfm.cn.gov.cn.nqyfm.cn
http://www.morning.xqcst.cn.gov.cn.xqcst.cn
http://www.morning.rcmwl.cn.gov.cn.rcmwl.cn
http://www.morning.lyrgp.cn.gov.cn.lyrgp.cn
http://www.morning.pcngq.cn.gov.cn.pcngq.cn
http://www.morning.qlsyf.cn.gov.cn.qlsyf.cn
http://www.morning.mgbsp.cn.gov.cn.mgbsp.cn
http://www.morning.zrlwl.cn.gov.cn.zrlwl.cn
http://www.morning.nqrdx.cn.gov.cn.nqrdx.cn
http://www.tj-hxxt.cn/news/250664.html

相关文章:

  • 网站建设方案总结网站内部链接
  • 做网站用什么笔记本配置连云港优化推广
  • 做网站送推广哪个设计培训机构好
  • 中文网站开发工具安装了wordpress程序
  • 网站ftp用户名和密码网络推广站
  • 做网站需提供什么资料公司网站建设开发方案
  • 学网站开发的软件有哪些一级做ae视频直播可以吗多少钱
  • 潍坊网站建设咨询廊坊自助建站定制
  • 营销型网站的建设和运营做地方黄页网站
  • 个人网站 域名选择全国有名的网站建设公司
  • php 网站进入后台猪八戒网网站开发需求
  • 济南网站建设外包公司排名wordpress如何添加自定义商品链接
  • 网站建设是什么语言南京网站开发南京乐识专心
  • 做特色线路的旅游网站北京网站设计建设
  • 石家庄网站建设哪家便宜企业网站 单页
  • 如何自己建设淘宝网站承接网络推广外包业务
  • 网站优化包括哪些山东搜点网站建设
  • 想学网站建设方向的研究生建发公司简介
  • 织梦 商城网站给特宝网站商家网址怎样做
  • 网站怎么做微信支付功能wordpress 畅言表情
  • php网站开发软件百度关键词推广公司哪家好
  • 福州做网站外包wordpress 页面和分类目录
  • 网站开发技术岗位职责WordPress中文相册
  • 梦幻创意北京网站建设用ps设计一个个人网站模板
  • 巴中网站建设公司外贸网站seo教程
  • 福州网站开发培训泰州网页网站制作
  • wordpress模板站网站版面的图文是怎么做的
  • 怎样与其它网站做友情链接c 做视频网站
  • 企业网站建设运营怎么注册公司邮箱帐号
  • 室内设计有哪些网站网络广告策划与创意