PyTorch einsum函数
Numpy的基本操作
Python中的Numpy是最广泛使用的科学计算库之一。 它具有高效的n维数组对象以及提供了许多用于数组操作的函数。 它是深度学习框架PyTorch的基础组件之一。
阅读更多:Numpy 教程
Numpy数组的创建和访问
使用numpy我们可以创建和操作n维数组。下面是一个创建numpy数组的示例
输出结果:
可以通过访问数组索引来访问Numpy数组项
输出结果:
Numpy索引和切片
可以使用索引和切片访问Numpy数组的子集。 数组的第一个元素索引是0,最后一个索引是 -1。
访问数组指定的索引:
输出结果:
使用切片访问数组的子集:
输出结果:
Numpy布尔索引
使用布尔数组索引,可以从数组中选择具有 True 值的满足特定条件的元素。 例如,获取数组中所有大于2的元素:
输出结果:
Numpy数组的基本数学操作
使用numpy进行数组操作和运算非常方便。下面是使用numpy进行数学运算的示例代码
输出结果:
PyTorch的基本使用
PyTorch是深度学习的框架之一。它是一个开源框架,支持动态图和静态图。它具有一个非常好的API,可以轻松地构建和训练神经网络。PyTorch不仅可以运行在CPU上,也可以运行在GPU上。
PyTorch张量的创建和访问
PyTorch中,张量类似于numpy中的数组。 它是一个多维数组,支持CPU和GPU上的张量操作。 下面是一个创建PyTorch张量对象的示例
输出结果:
可以通过索引访问PyTorch张量中的元素:
输出结果:
PyTorch张量的基本数学操作
在PyTorch中,可以使用类似于numpy的方式进行张量操作和运算。 下面是一些使用PyTorch进行数学运算的示例代码。
输出结果:
PyTorch einsum
PyTorch einsum是一个强大的张量运算函数,类似于numpy中的einsum。 它提供了一种使用公式字符串表示张量乘法的方法。
下面是一个PyTorch einsum的示例代码:
输出结果:
在示例代码中,PyTorch einsum 按照指定的公式字符串表示对输入张量进行乘法运算。 具体来说,公式字符串“ij,jk->ik”表示对a和b两个张量执行矩阵乘法。
总结
本文介绍了numpy的基本操作,如数组的创建、索引和切片、布尔索引和基本数学操作。接着,我们介绍了PyTorch的基本使用和张量的操作,包括张量的创建、索引、数学操作和PyTorch einsum功能。学会这些内容后将会对进行科学计算和深度学习有很大的帮助。