【问题标题】:Perform Delta Function between elements in PyTorch tensor在 PyTorch 张量中的元素之间执行 Delta 函数
【发布时间】:2020-12-16 11:00:48
【问题描述】:

我有一个一维 pyTorch 张量 (dtype: int32),想知道是否有办法对这个张量中的元素执行 Dirac Delta 函数,即:

f = tensor[1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1]
f_after_dirac_delta = tensor[0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1]

提前感谢您的帮助!

编辑:正如@GirishDattatrayHegde 提到的,Dirac-Delta 一词具有误导性。正确的术语应该是 Kronecker-Delta。我很抱歉。

【问题讨论】:

  • 你能解释一下你正在考虑的狄拉克三角函数吗?据我所知,狄拉克三角函数只是零脉冲
  • 嗨@GirishDattatrayHegde,我打算将其用作比较函数:如果两个数字完全相同,则返回1,否则返回0。我承认该术语可能具有误导性,我为此道歉。编辑:我刚刚看了看,它不是狄拉克,而是克罗内克三角洲。

标签: python python-3.x pytorch


【解决方案1】:

如果我理解正确,您想比较张量的连续元素。这应该有效:

import torch
f = torch.tensor([1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1])
f_dirac = (f[1:] == f[:-1]).to(torch.long)

【讨论】:

    猜你喜欢
    • 2017-11-10
    • 2021-09-14
    • 2020-10-04
    • 1970-01-01
    • 1970-01-01
    • 2022-08-09
    • 1970-01-01
    • 2020-10-16
    • 2019-04-21
    相关资源
    最近更新 更多