Введение

Статистический алгоритм

Алгоритмы наименьших среднеквадратов (LMS) — это класс адаптивных фильтров, используемых для имитации желаемого фильтра путем определения коэффициентов фильтра, минимизирующих среднеквадратичную ошибку (разницу между желаемым и фактическим сигналом). Это метод стохастического градиентного спуска, в котором фильтр адаптируется только на основе ошибки в текущий момент времени. Алгоритм был изобретен в 1960 году профессором Стэнфордского университета Бернардом Видроу и его первым аспирантом, Тедом Хоффом, в ходе их исследований однослойных нейронных сетей (ADALINE). В частности, они использовали градиентный спуск для обучения ADALINE распознаванию образов и назвали этот метод "правилом дельты". Затем они применили это правило к фильтрам, что привело к созданию алгоритма LMS.

Формулирование задачи

На рисунке показаны различные части фильтра. Это входной сигнал, который затем преобразуется неизвестным фильтром, который мы хотим идентифицировать с помощью . Выход неизвестного фильтра – , который затем подвергается воздействию шумового сигнала , в результате чего получается . Затем вычисляется сигнал ошибки , который подается обратно в адаптивный фильтр для корректировки его параметров с целью минимизации среднеквадратичной ошибки сигнала .

Идея

Основная идея фильтра LMS заключается в приближении к оптимальным весам фильтра путем последовательного обновления весов таким образом, чтобы они сходились к оптимальным. Это основано на алгоритме градиентного спуска. Алгоритм начинается с предположения о малых весах (в большинстве случаев – нулевых) и на каждом шаге, вычисляя градиент среднеквадратичной ошибки, обновляет веса. То есть, если градиент среднеквадратичной ошибки положителен, это означает, что ошибка будет продолжать возрастать при использовании того же веса в дальнейших итерациях, следовательно, необходимо уменьшить веса. Аналогично, если градиент отрицателен, необходимо увеличить веса. Уравнение обновления веса имеет вид:

где – среднеквадратичная ошибка, а – коэффициент сходимости. Отрицательный знак указывает на движение вниз по склону ошибки, чтобы найти веса фильтра, , которые минимизируют ошибку. Среднеквадратичная ошибка как функция весов фильтра является квадратичной, что означает наличие единственного экстремума, минимизирующего среднеквадратичную ошибку – оптимального веса. Таким образом, LMS приближается к этому оптимальному весу, спускаясь или поднимаясь вдоль кривой зависимости среднеквадратичной ошибки от веса фильтра.