![]() |
1
4
简单广播
这个
标杆管理
我们正在比较
整个进场时间:
案例#1:
对于较小的输入形状,请调用
但是,广播部分将有一个不受输入形状影响的恒定时间,即
挖掘更深 试图深入挖掘以了解串联部分的消耗量:
结论:似乎没有太大的不同。
现在,让我们尝试一个案例,其中复制需要
结论:似乎合并了串联+复制
让我们试试
结论:同样,没有太大的不同。
最后的结论是,如果
|
![]() |
2
3
您可以使用
这样做的目的是首先重塑
然后将此中间结果与
这与您当前的答案不同,主要是因为值的重复不是硬编码的(即,它由重复来处理)。
如果需要为不同数量的维度(而不是三维阵列)处理此问题,则需要进行一些更改(主要是如何删除
计时
这些都是极具竞争力的解决方案。但是,请注意,性能取决于您的实际数据,所以请确保您首先进行测试! |
![]() |
3
1
以下是一些基于cásáááá和Divakar解决方案的简单计时:
输出: 最慢的跑步比最快的跑长6.44倍。这可能意味着正在缓存中间结果。 100000个回路,最好3个:每个回路3.68秒
输出: 最慢的跑步比最快的跑长4.12倍。这可能意味着正在缓存中间结果。 100000个回路,最好3个:每个回路10.7秒 下面是基于原始代码的计时:
输出: 最慢的跑步比最快的跑长4.62倍。这可能意味着正在缓存中间结果。 100000个回路,最好3个:每个回路4.69秒 由于这个问题需要更快的方法来得出相同的结果,我会选择cásááá基于这些问题计算的解决方案。 |
![]() |
4
0
您还可以使用
在本例中,我们沿轴1插入,并将
笔记
再次强调,在插入之前
如果
这将是一个很好的做法
计时结果 从OP的数据集来看:COLDSPEED的答案快了3倍。
数据集2(借用COLDSPEED的计时实验):在这种情况下无法得出任何结论,因为它们具有几乎相同的平均值和标准差。
速度将取决于数据的大小、形状和体积。如果您担心速度问题,请在您的数据集上进行测试。 |
|
unfolx · numpy数组不等式的执行时间 7 月前 |
|
mchaudh4 · 用numpy表示三对角矩阵 7 月前 |
![]() |
Geremia · 2D NumPy数组+1D数组? 7 月前 |
![]() |
LMC · Numpy数组布尔索引以获取包含元素 7 月前 |
![]() |
HJA24 · 根据条件用值正向填充Numpy矩阵/掩码 8 月前 |
![]() |
Amarth Gûl · 找到一组向量的最近收敛点 8 月前 |
![]() |
Mr. W · numpy.divide是函数、类还是其他什么? 8 月前 |
![]() |
Mr. W · 为什么numpy.array在编辑内部数据时如此缓慢? 8 月前 |