Jupyter AI

19 正交向量与正交基

📅发表日期: 2024-08-10

🏷️分类: AI线性代数小白

👁️阅读次数: 0

在线性代数中,正交性是一个重要的概念,尤其是在处理高维空间中的数据时,理解正交向量与正交基的概念对于使用AI和机器学习算法至关重要。本篇教程将深入探讨正交向量与正交基的定义及其性质,并结合案例进行说明。

正交向量

首先,让我们回顾一下什么是内积。在上一篇中,我们已经定义了内积的相关性质。正交向量是指在一个内积空间中,两个向量的内积为零。从数学上说,给定向量 u\mathbf{u}v\mathbf{v},若满足以下条件:

u,v=0\langle \mathbf{u}, \mathbf{v} \rangle = 0

那么我们就称 u\mathbf{u}v\mathbf{v}正交的。例如,在 R3\mathbb{R}^3 空间中,向量 u=(1,0,0)\mathbf{u} = (1, 0, 0)v=(0,1,0)\mathbf{v} = (0, 1, 0) 是正交的,因为它们的内积为:

u,v=10+01+00=0\langle \mathbf{u}, \mathbf{v} \rangle = 1 \cdot 0 + 0 \cdot 1 + 0 \cdot 0 = 0

案例:正交向量的应用

假设我们有一个二维平面上的两个向量 a=(2,3)\mathbf{a} = (2, 3)b=(3,2)\mathbf{b} = (-3, 2),我们可以检查它们是否正交:

a,b=2(3)+32=6+6=0\langle \mathbf{a}, \mathbf{b} \rangle = 2 \cdot (-3) + 3 \cdot 2 = -6 + 6 = 0

由于它们的内积为零,因此我们可以说这两个向量是正交的。

正交基

在一个向量空间中,一个是指一组线性无关的向量,可以通过这些基向量的线性组合来表示向量空间中的任意向量。我们称一组基为正交基,如果这组基中的任意两个不同向量都是正交的。

例如,在三维空间中,基向量 e1=(1,0,0)\mathbf{e}_1 = (1, 0, 0)e2=(0,1,0)\mathbf{e}_2 = (0, 1, 0)e3=(0,0,1)\mathbf{e}_3 = (0, 0, 1) 组成的基是正交基,因为它们彼此正交,且每个向量的长度为1。

正交基的性质

正交基的一个重要性质是其规范化(单位化)。如果我们将正交基的每个向量都单位化,我们得到一个正交单位基,即每个向量的长度为1。对于正交单位基 e1,e2,e3\mathbf{e}_1, \mathbf{e}_2, \mathbf{e}_3,我们有:

ei=1,i\|\mathbf{e}_i\| = 1, \quad \forall i

案例:在Python中计算正交基

我们可以使用格拉姆-施密特过程来从一组线性无关的向量中构造正交基。以下是一个简单的例子,演示如何在Python中实现这一过程:

import numpy as np

def gram_schmidt(vectors):
    orthogonal_vectors = []
    
    for v in vectors:
        for av in orthogonal_vectors:
            v -= np.dot(v, av) / np.dot(av, av) * av
        orthogonal_vectors.append(v)
    
    return np.array(orthogonal_vectors)

# 示例向量
vectors = np.array([[1, 1, 0], [1, 0, 1], [0, 1, 1]])

# 获取正交基
orthogonal_basis = gram_schmidt(vectors)

print("原始向量:\n", vectors)
print("正交基:\n", orthogonal_basis)

在这个示例中,我们定义了一组向量,并使用格拉姆-施密特过程获取它们的正交基。输出结果将会是一组正交向量。

小结

在这一篇教程中,我们探讨了正交向量和正交基的重要性和基本概念。正交性在多个领域中都有应用,包括信号处理、数据降维和机器学习。正交基的确定能够简化计算,提高数值稳定性。在下一篇中,我们将讨论内积空间在实际应用中的重要性及相关实例,敬请期待!

💬 评论

暂无评论