gpt4 book ai didi

python - 在 PyTorch 中将张量中的一个数字范围插值到另一个数字范围

转载 作者:行者123 更新时间:2023-12-01 06:41:13 25 4
gpt4 key购买 nike

我正在尝试将一组数字 {0, 4, 6} 转换为连续的数字 {0, 1, 2}。目前我正在使用 Scipyinterp1d 函数。我的问题是我想改变张量的每个元素。有没有比将 interp1d 函数广播到张量中的每个元素更好的方法?如果不是,我怎样才能实现自定义功能的广播

目前我正在执行以下操作:

>>> a = torch.tensor([[0, 6, 4],
[4, 0, 4]])
>>> unique_values = np.unique(a)
>>> interpolator = interp1d(unique_values, range(len(unique_values)))
>>> interpolator(a[0, 1])
>>> 2

最佳答案

如果只是想替换,为什么要插值?

a[a==6]=2
a[a==4]=1

应该可以。如果您不想硬编码,您可以像以前一样找到唯一值,对它们进行排序,然后在循环中替换它们。

关于python - 在 PyTorch 中将张量中的一个数字范围插值到另一个数字范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59449453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com