假设 是一个集合,其中定义了加法和标量乘法,那么 的线性组合定义为
其中 是任意实数, 是 中的第 个对象。有时 的值被称为 的系数。线性组合可以用来描述许多事物。例如,一张杂货单可以写成 ,其中 是第 项的成本, 是购买的第 项的数量。因此,总成本是购买的物品的线性组合。
如果集合中的任何一个对象都不能写成集合中其他对象的线性组合,那么这个集合就被称为线性无关的。为了本书的目的,我们只考虑一组向量的线性无关性。不是线性无关的一组向量是线性相关的。
**试一试!**给定行向量 , 和 ,用 , 和 的线性组合写出向量 。
书中给出了手动计算的求解:
v = np.array([[0, 3, 2]])
w = np.array([[4, 1, 1]])
u = np.array([[0, -2, 0]])
x = 3*v-2*w+4*u
print(x)
我给出的使用Numpy的求解:
import numpy as np
# 定义行向量
v = np.array([0, 3, 2])
w = np.array([4, 1, 1])
u = np.array([0, -2, 0])
# 转换为列向量并水平叠加
A = np.hstack((v[:, None], w[:, None], u[:, None]))
# 定义目标向量
b = np.array([-8, -1, 4])
# 求解系数
x = np.linalg.solve(A, b)
# 打印结果
print(x)