小编Val*_*acé的帖子

用数组索引火炬张量

我有以下火炬张量:

tensor([[-0.2,  0.3],
    [-0.5,  0.1],
    [-0.4,  0.2]])
Run Code Online (Sandbox Code Playgroud)

和以下 numpy 数组:(如果需要,我可以将其转换为其他内容)

[1 0 1]
Run Code Online (Sandbox Code Playgroud)

我想得到以下张量:

tensor([0.3, -0.5, 0.2])
Run Code Online (Sandbox Code Playgroud)

即我希望 numpy 数组索引张量的每个子元素。最好不使用循环。

提前致谢

python indexing torch pytorch tensor

7
推荐指数
1
解决办法
9169
查看次数

在多设备硬件上部署之前测试 jax.pmap

我的问题很简单:

我正在一台小型笔记本电脑上进行编码,并且正在使用jax.pmap因为我的代码将在多个 TPU 上运行。我想“假装”拥有多个设备来测试我的代码并尝试不同的事情。

有什么办法可以做到吗?但我怀疑 Jax 内部是否能找到解决方案。谢谢!

multiprocessing pmap tpu jax

7
推荐指数
1
解决办法
588
查看次数

在 Windows 上的命令行中使用gunzip

我需要在Windows的终端中使用gunzip(这是gzip的解压工具)

我从这里下载了gzip (第一个下载链接)

我安装了它并将其/bin文件夹添加到我的PATH变量中,该gzip命令可以工作,但gunzip甚至无法执行,所以我无法使用它

枪压缩内容:

#!/bin/sh
PATH=${GZIP_BINDIR-'c:/progra~1/Gzip/bin'}:$PATH
exec gzip -d "$@"
Run Code Online (Sandbox Code Playgroud)

谢谢

windows terminal command gzip gunzip

5
推荐指数
1
解决办法
4万
查看次数

使用 Tensorboard 绘制自定义数据

我有一个 RL 算法的个人实现,它每 x 时间步生成一次性能指标。

该指标只是一个标量,所以我有一个标量数组,我想将其显示为一个简单的图形,例如:

在此处输入图片说明

我想像上面的例子一样在张量板上实时显示它。

提前致谢

python data-visualization machine-learning tensorboard

5
推荐指数
1
解决办法
904
查看次数

在numpy数组中传播最大值

我认为这是一个相对简单的问题,因为我知道 numpy 中有一个简单的答案,但我再也找不到了。

我有一个 numpy 数组,说 [1, 2, 10, 5, 6, 12, 9, 9, 8]

我想从头到尾遍历它并只保留迄今为止看到的最大值,例如答案是 [1, 2, 10, 10, 10, 12, 12, 12, 12]

使用单个循环很容易解决,但前段时间我了解了一个 numpy 函数,它可以快速完成工作并且也很紧凑。我正在寻找这种方法。

谢谢 !

python arrays numpy python-3.x numpy-ndarray

3
推荐指数
1
解决办法
71
查看次数

处理 jax numpy 数组中的不同形状(jit 兼容)

重要提示:我需要这里的所有内容都与 jit 兼容,否则我的问题是微不足道的:)

我有一个 jax numpy 数组,例如:

a = jnp.array([1,5,3,4,5,6,7,2,9])
Run Code Online (Sandbox Code Playgroud)

首先,我根据一个值对其进行过滤,假设我只保留 < 5 的值

a = jnp.where((a < 5), x=a, y=jnp.nan)
# a is now [ 1. nan  3.  4. nan nan nan  2. nan]
Run Code Online (Sandbox Code Playgroud)

我只想保留非 nan 值:[ 1. 3. 4. 2.]然后我将使用该数组进行其他操作。

但更重要的是,在我的程序执行期间,该代码将被执行多次,并且阈值会发生变化(即它不会总是 5)。

因此,最终数组的形状也会改变。这是我的 jit 编译问题,我不知道如何使其与 jit 兼容,因为形状取决于有多少元素符合阈值条件。

python arrays jit shapes jax

3
推荐指数
1
解决办法
1970
查看次数