
numpy
cccrick
这个作者很懒,什么都没留下…
展开
-
为什么 JAX 数组是不可变的,而 NumPy 数组不是呢?
本文介绍了 JAX 数组的不可变性是出于设计的考虑,因为 JAX 建立在函数式编程的概念上,函数不会修改它们的输入,而是创建新的对象作为输出。所有的数组变换都是实现为纯函数,它们接受一个输入数组并返回一个新的数组。这意味着在 JAX 数组上执行的任何操作都将创建一个新的数组,而原始数组保持不变。相比之下,NumPy 数组默认是可变的,这意味着您可以直接修改 NumPy 数组的内容,而不创建新的数组。文章指出,JAX 的设计可以更容易地理解程序的行为,并避免由可变状态导致的常见错误。然而,如果需要就地修改数组原创 2023-03-23 17:02:49 · 368 阅读 · 0 评论 -
[:, None]的作用是什么?
在NumPy中,`[:, None]`的作用是将一个一维数组转换为一个二维列向量。也就是说,它在原有的数组中增加了一个维度,并将原有的元素按列排列成一个新的二维数组。 JAX是一个自动微分库和高性能的机器学习库。与NumPy类似,JAX中的`[:, None]`用于将一个一维数组转换为一个二维列向量。这个操作可以在神经网络编程和数据科学中非常有用。 在JAX中,`reshape`方法可以比NumPy更高效地执行,因为它可以利用JAX的XLA编译器进行加速。原创 2023-03-19 17:18:16 · 1351 阅读 · 0 评论