Orthonormalization
Gram-Schmidt orthonormalization is a process for making vectors into orthonormal vectors. It is generalized as A = QR.
Contents
Vectors
Orthogonality is fundamentally about the relation between two vectors. So as the first point of reference, a needs no transformation. It is automatically denoted as the orthogonal vector A.
The process of transforming vector b into orthogonal vector B is simply the subtraction of all components of a from b. This is a linear combination and does not change the column space of a system that includes both a and b. Projections are a complimentary idea; p is the component of a that estimates b. The process of orthonormalization is the same as computing projections but the error term e is the desired result. Recall that e = b - ax̂ and x̂ = (ATb)/(ATA).
Therefore, B = b - A (ATb)/(ATA).
To transform another vector c into being orthogonal to both A and B, apply the same process for each component: C = c - A (ATc)/(ATA) - B (BTc)/(BTB).
The orthogonal vectors are then normalized by scaling to their Euclidean distances, as A/||A|| and B/||B||.
Matrices
The process applied to vectors is also applicable to the columns in a matrix. Instead of vectors a and b, use v1 and v2 in V. The process yields u1 and u2 in U. Then the columns are normalized into Q like q1 = u1/||u1||.
Note that Q is a matrix with orthonormal columns, not necessarily an orthogonal matrix.
To re-emphasize, this is a linear combination and does not change the column space.