线性代数:向量的介绍和运算
线性代数中的向量
线性代数中最常用、也最重要的概念,向量(Vector),也可以叫作矢量。它代表一组数字,并且这些数字是有序排列的,并且有方向。常说的单个数字,属于标量(Scalar),它只是一个单独的数字,而且不能表示方向。
用加粗的小写字母表示一个向量,例如 ,而 ,,,…, 等等,来表示向量中的每个元素,这里面的 就是向量的维。
延伸的特征向量(Feature Vector)定义:由于一个向量包含了很多个元素,因此我们自然地就可以把它运用在机器学习的领域。因为物体/主体有很多的的属性,转换为能够用数字表达的特征。由于特征有很多维,因此我们可以使用向量来表示某个物体的特征。其中,向量的每个元素就代表一维特征,而元素的值代表了相应特征的值。比如用户画像中,用户特征(年龄、性别、价格敏感度、消费区间等等)。
需要注意的是,这个特征向量和矩阵的特征向量(Eigenvector)是两码事。矩阵的几何意义是坐标的变换。如果一个矩阵存在特征向量和特征值,这个矩阵的特征向量就表示了它在空间中最主要的运动方向。
向量的运算
标量和向量之间可以进行运算,把标量和向量中的每个元素进行运算。标量和向量相加或者相乘时,直接把标量和向量中的每个元素相加或者相乘。
向量和向量之间的加法,首先它们需要维度相同,然后是对应的元素相加。
可以这么解释两个向量相加。在下面这张图中,有两个向量 x 和 y,它们的长度分别是 x’和 y’,它们的相加结果是 x+y,这个结果所对应的点相当于 x 向量沿着 y 向量的方向移动 y’,或者是 y 向量沿着 x 向量的方向移动 x’。
向量之间的乘法默认是点乘,向量 x 和 y 的点乘是这么定义的:
点乘的作用是把相乘的两个向量转换成了标量,它有具体的几何含义。会用点乘来计算向量的长度以及两个向量间的夹角,所以一般情况下会默认向量间的乘法是点乘。至于向量之间的夹角和距离,它们在向量空间模型(Vector Space Model)中发挥了重要的作用。机器学习领域充分利用了向量空间模型,计算不同对象之间的相似程度。