栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

沿dask数组的轴应用函数

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

沿dask数组的轴应用函数

我怀疑如果您的函数返回与它消耗的维相同的数组,您的体验会更流畅。例如,您可以考虑如下定义函数:

def my_polyfit(data):    return np.polyfit(data.squeeze(), ...)[:, None, None, None]

然后,您可能会忽略

new_axis
drop_axis
位。

在性能方面,您可能还想考虑使用更大的块大小。如果每个块有6000个数字,那么您将有超过一百万个块,这意味着与实际计算相比,您可能会花费更多的时间进行调度。通常,我会拍摄几兆字节的块。当然,增加块大小会导致映射函数变得更加复杂。

In [1]: import dask.array as daIn [2]: import numpy as npIn [3]: def f(b):    return np.polyfit(b.squeeze(), np.arange(5), 3)[:, None, None, None]   ...:In [4]: x = da.random.random((5, 3, 3, 3), chunks=(5, 1, 1, 1))In [5]: x.map_blocks(f, chunks=(4, 1, 1, 1)).compute()Out[5]: array([[[[ -1.29058580e+02,   2.21410738e+02,   1.00721521e+01],         [ -2.22469851e+02,  -9.14889627e+01,  -2.86405832e+02],         [  1.40415805e+02,   3.58726232e+02,   6.47166710e+02]],         ...


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

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

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