Total Least Squares

Nella regressione lineare ai minimi quadrati ordinari si assume che la matrice dei regressori $\mathbf A$ sia nota esattamente e che il rumore agisca solamente sul vettore delle osservazioni $\mathbf b$:


\begin{displaymath}
\mathbf A \mathbf x = \mathbf b + \boldsymbol\delta .
\end{displaymath} (4.24)

In molte applicazioni pratiche tale ipotesi non è realistica. Le osservazioni possono infatti essere affette da rumore sia nel termine noto sia nelle variabili esplicative. Questo porta al cosiddetto modello Errors-In-Variables (EIV) (VHV91), nel quale anche la matrice dei coefficienti risulta perturbata:


\begin{displaymath}
(\mathbf A + \mathbf E)\mathbf x
=
\mathbf b + \boldsymbol\delta
\end{displaymath} (4.25)

dove


\begin{displaymath}
\mathbf A \in \mathbb R^{m\times n},
\qquad
\mathbf b \in \mathbb R^{m},
\end{displaymath}

$\mathbf E$ rappresenta la perturbazione della matrice dei coefficienti e $\boldsymbol\delta$ la perturbazione delle osservazioni.

A differenza dei minimi quadrati ordinari, che minimizzano solamente la norma dei residui $\boldsymbol\delta$, il metodo Total Least Squares (TLS) cerca contemporaneamente le correzioni $\mathbf E$ e $\boldsymbol\delta$ che minimizzano


\begin{displaymath}
\left\Vert
\left[
\mathbf E \mid \boldsymbol\delta
\right]
\right\Vert _F
\end{displaymath} (4.26)

sotto il vincolo (4.25).

Nel TLS classico si assume che tutte le colonne della matrice dei dati siano affette da rumore. Se alcune variabili sono invece note esattamente si ottengono varianti come il mixed LS-TLS.


Introducendo la matrice aumentata


\begin{displaymath}
\mathbf C
=
\left[
\mathbf A \mid \mathbf b
\right]
\in
\mathbb R^{m\times(n+1)}
\end{displaymath} (4.27)

il problema TLS può essere riscritto nella forma omogenea


\begin{displaymath}
\left(
\mathbf C + \Delta\mathbf C
\right)
\begin{bmatrix}
\mathbf x\\
-1
\end{bmatrix}=
\mathbf 0
\end{displaymath} (4.28)

con


\begin{displaymath}
\Delta\mathbf C
=
\left[
\mathbf E \mid \boldsymbol\delta
\right].
\end{displaymath}

La soluzione del problema è strettamente collegata alla decomposizione ai valori singolari della matrice aumentata:


\begin{displaymath}
\mathbf C
=
\mathbf U
\boldsymbol\Sigma
\mathbf V^\top
\end{displaymath} (4.29)

dove


\begin{displaymath}
\boldsymbol\Sigma
=
\operatorname{diag}
(
\sigma_1,\sigma_2,...
...1}
),
\qquad
\sigma_1\ge\sigma_2\ge\cdots\ge\sigma_{n+1}\ge 0.
\end{displaymath} (4.30)

Dal teorema di Eckart-Young-Mirsky segue che la migliore approssimazione di rango $n$ della matrice $\mathbf C$ (in norma di Frobenius) si ottiene annullando il più piccolo valore singolare:


\begin{displaymath}
\hat{\mathbf C}_{TLS}
=
\mathbf U
\operatorname{diag}
(
\sigma_1,\ldots,\sigma_n,0
)
\mathbf V^\top .
\end{displaymath} (4.31)

Nel caso più comune di una sola colonna delle osservazioni ( $\mathbf b\in\mathbb R^m$), sia


\begin{displaymath}
\mathbf v_{n+1}
=
\begin{bmatrix}
\mathbf v_x\\
v_b
\end{bmatrix}\end{displaymath}

l'ultimo autovettore destro di $\mathbf V$, associato al più piccolo valore singolare $\sigma_{n+1}$, con


\begin{displaymath}
\mathbf v_x\in\mathbb R^n,
\qquad
v_b\in\mathbb R.
\end{displaymath}

Se $v_b\neq 0$, la soluzione TLS è


\begin{displaymath}
\hat{\mathbf x}_{TLS}
=
-\frac{\mathbf v_x}{v_b}.
\end{displaymath} (4.32)

Più in generale, nel caso di più colonne di osservazioni, partizionando


\begin{displaymath}
\mathbf V
=
\begin{bmatrix}
\mathbf V_{11} & \mathbf V_{12}\\
\mathbf V_{21} & \mathbf V_{22}
\end{bmatrix}\end{displaymath} (4.33)

dove $\mathbf V_{22}$ è quadrata di dimensione pari al numero di colonne osservate, la soluzione può essere espressa come


\begin{displaymath}
\hat{\mathbf X}_{TLS}
=
-
\mathbf V_{12}
\mathbf V_{22}^{-1},
\end{displaymath} (4.34)

purché $\mathbf V_{22}$ sia non singolare.

Pertanto il problema TLS può essere interpretato come la ricerca della più piccola perturbazione della matrice aumentata $\mathbf C=[\mathbf A\mid\mathbf b]$ che renda il sistema esattamente consistente.

Paolo medici
2026-11-02