SVD также может быть использован для значительного облегчения глобального (то есть для всех наблюдений одновременно) подбора произвольной модели (выраженной в формуле) к данным (относительно двух переменных и выраженных в матрице).
Например, матрица данных A = D * M T , где D представляет возможные состояния системы и M представляет его эволюцию относительно некоторой переменной (например, времени).
По SVD, A (x, y) = U (x) * S * V T ( y) и, следовательно, D * M T = U * S * V T
затем D = U * S * V T * M T + , где "+" обозначает псевдообратную.
Затем можно взять математическую модель для эволюции и подогнать ее к столбцам V , каждый из которых представляет собой линейную комбинацию компонентов модели (это легко, так как каждый столбец представляет собой одномерную кривую) , При этом получаются параметры модели, которые генерируют M ? (символ? Указывает, что он основан на подгонке).
M * M ? + * V = V ? , который допускает остатки R * S 2 = V - V ? должно быть минимизировано, определяя таким образом D и M .
Довольно круто, а?
Столбцы U и V также могут быть проверены для сбора информации о данных; Например, каждая точка перегиба в столбцах V обычно указывает на другой компонент модели.
Наконец, и на самом деле, обращаясь к вашему вопросу, важно отметить, что хотя каждое последующее единственное значение (элемент диагональной матрицы S ) с сопутствующими векторами U и V имеет более низкий сигнал / шум, разделение компонентов модели в этих «менее важных» векторах на самом деле более выражено. Другими словами, если данные описываются группой изменений состояния, которые следуют за суммой экспонент или чем-то еще, относительные веса каждой экспоненты сближаются в меньших единичных значениях. Другими словами, более поздние сингулярные значения имеют векторы, которые являются менее гладкими (шумнее), но в которых изменения, представленные каждым компонентом, являются более отличными .