栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python系列23:张量操作库einops

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python系列23:张量操作库einops

1. 简介

非常方便的张量转换库,支持numpy, pytorch, tensorflow, jax等
主要有三个函数:rearrange, reduce, repeat。
首先是基本模块,所有的功能都长这样:

y = rearrange(x, 'b c h w -> b (c h w)')

括号在->前面,表示这个维度的数据进行均等拆分;在->后面时,表示这个维度的数据进行堆叠合并。

2. 功能 2.1 rearrange

最基本的功能莫过于“更换轴”,例如下图就是更换长与宽

y = rearrange(x, 'h w c -> w h c')

从

变为

接下来是拼接与裁剪。括号在前面是裁剪,放在后面是拼接。




注意括号里面的顺序。前面的表示整体堆叠,后面的表示每个堆叠块里面的连续像素个数。看下面这个例子:

还有这个例子,显示分成3块,每块分别填充e,i,n;接下来每块再填充o,p,s,因此总的来说是eoipns

2.2 reduce

顾名思义,消除某一个维度:


2.3 repeat

括号的规则和rearrange一致:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/926205.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号