一、数据操作
张量表示由一个数值组成的数组,这个数组可能有多个维度。具有一个轴的张量对应数学上的向量(vector)。具有两个轴的张量对应数学上的矩阵(matrix)。具有两个轴以上的张量没有特殊的数学名称。
首先使用arange创建一个张量。
通过shape
属性来访问张量的形状。
调用reshape
函数来张量的形状。从行向量->矩阵。
可以创建指定元素的张量。
可以通过提供包含数值的Python列表(或嵌套列表)来为所需张量中的每个元素赋予确定值。
对于任意具有相同形状的张量,常见的标准算术运算符(+
、-
、*
、/
和**
)都可以被升级为按元素运算。
求幂
以把多个张量连结(concatenate)在一起,变成一个更大的张量。
对张量中的所有元素进行求和会产生一个只有一个元素的张量。
广播机制
即使形状不同,我们仍然可以通过调用广播机制(broadcasting mechanism)来执行按元素操作。
工作方式:首先,通过适当复制元素来扩展一个或两个数组,以便在转换之后,两个张量具有相同的形状。
索引:张量中的元素可以通过索引访问
二、数据预处理
读取数据集
处理缺失值
三、线性代数
可以将向量视为标量值组成的列表
通过张量的索引来访问任一元素
访问张量的长度
只有一个轴的张量,形状只有一个元素
创建一个矩阵
转置矩阵
B和B的转置矩阵比较
向量是标量的推广,矩阵是向量的推广一样,我们可以构建具有更多轴的数据结构。
哈达玛积
可以对任意张量进行的一个有用的操作是计算其元素的和。
理解重点:按特定轴求和
axis 怎么理解?
矩阵为二维,在矩阵中,如果axis为0,意思为保留这一行,抽象理解“在这一行上拍扁”。如果axis为1,意思为保留这一列,“在列上拍扁”。 如果keepdims=True 则是:不是去掉它,还是把它变为1!