比较与torch.hann_window的差异
torch.hann_window
torch.hann_window(
window_length,
periodic=True,
*,
dtype=None,
layout=torch.strided,
device=None,
requires_grad=False
) -> Tensor
更多内容详见torch.hann_window。
mindspore.numpy.hanning
mindspore.numpy.hanning(M) -> Tensor
更多内容详见mindspore.numpy.hanning。
差异对比
PyTorch:返回size与window_length相同的汉宁窗,periodic参数确定返回窗口是否会删除对称窗口的最后一个重复值。
MindSpore:MindSpore此API实现功能与PyTorch基本一致,但缺少参数periodic,功能实现相当于设置periodic为False。
分类 |
子类 |
PyTorch |
MindSpore |
差异 |
---|---|---|---|---|
输入 |
单输入 |
window_length |
M |
功能一致,参数名不同 |
参数 |
参数1 |
periodic |
- |
MindSpore中相当于设置为False |
参数2 |
dtype |
- |
MindSpore无此参数,输出dtype为Float32,与标杆默认一致 |
|
参数3 |
layout |
- |
不涉及 |
|
参数4 |
device |
- |
不涉及 |
|
参数5 |
requires_grad |
- |
MindSpore无此参数,默认支持反向求导 |
代码示例1
PyTorch算子中periodic参数确定返回窗口是否会删除对称窗口的最后一个重复值,而MindSpore算子缺少改参数,当于设置periodic为False。
# PyTorch
import torch
torch_output = torch.hann_window(12, periodic=False)
print(torch_output.numpy())
# [0. 0.07937324 0.29229248 0.57115734 0.82743037 0.97974646
# 0.9797465 0.8274305 0.5711575 0.29229265 0.07937327 0. ]
# MindSpore
import mindspore
ms_output = mindspore.numpy.hanning(12)
print(ms_output)
# [0. 0.07937324 0.29229248 0.57115734 0.82743037 0.97974646
# 0.9797465 0.8274305 0.5711575 0.29229265 0.07937327 0. ]