Алгоритм Trust-Region

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
Строка 1: Строка 1:
== Постановка задачи ==
== Постановка задачи ==
-
Среди задач на поиск безусловного минимума особое место занимают задачи минимизации функции вида:<br>
+
=== Безусловная оптимизация ===
-
<tex>F(x) = \frac{1}{2}\sum_i{f_i^m(x)^2}</tex><br>
+
Среди задач на поиск безусловного минимума особое место занимают задачи минимизации функции вида:<br>к
-
где <tex>f_i(x)</tex> - гладкая нелинейная функция из <tex>R^n</tex> в <tex>R</tex>. Будем считать, что m ≥ n.<br>
+
<tex>F(x) = \frac{1}{2}\sum_i{r_i^m(x)^2}</tex><br>
 +
где <tex>r_i(x)</tex> - гладкая нелинейная функция из <tex>R^n</tex> в <tex>R</tex>. Будем считать, что m ≥ n.<br>
 +
Если обозначить <tex>r_i(x) = (r_1(x),\dots,r_m(x))^T</tex><br>
 +
то <tex>F(x) = \frac{1}{2}||r(x)||_2^2</tex><br>
 +
Обозначим якобиан функции r: <tex>J(x) = \frac{\delta r_j}{\delta x_i}</tex><br>
 +
Тогда производные функции f(x) можно вычислить с помощью формул:<br>
 +
<tex>\nabla f(x) = \sum_{j = 1}^m{r_j(x)\nabla r_j(x) = J(x)^Tr(x)}</tex><br>
 +
<tex>\nabla^2 f(x) = \sum_{j = 1}^m{\nabla r_j(x)\nabla r_j(x) + \sum_{j = 1}^m{\nabla^2 r_j(x)r_j(x)= J(x)^TJ(x) + \sum_{j = 1}^m{\nabla^2 r_j(x)r_j(x)}</tex><br>
 +
== Алгоритмы для нелинейной задачи метода наименьших квадратов ==
 +
=== Метод Гаусса-Ньютона ===
== Метод решения задачи ==
== Метод решения задачи ==
== Рекомендации программисту ==
== Рекомендации программисту ==
== Выводы ==
== Выводы ==
== Литература ==
== Литература ==
 +
Philip E. Gill Practical Otpimization 1981.<br>

Версия 20:30, 18 ноября 2008

Содержание

Постановка задачи

Безусловная оптимизация

Среди задач на поиск безусловного минимума особое место занимают задачи минимизации функции вида:
к F(x) = \frac{1}{2}\sum_i{r_i^m(x)^2}
где r_i(x) - гладкая нелинейная функция из R^n в R. Будем считать, что m ≥ n.
Если обозначить r_i(x) = (r_1(x),\dots,r_m(x))^T
то F(x) = \frac{1}{2}||r(x)||_2^2
Обозначим якобиан функции r: J(x) = \frac{\delta r_j}{\delta x_i}
Тогда производные функции f(x) можно вычислить с помощью формул:
\nabla f(x) = \sum_{j = 1}^m{r_j(x)\nabla r_j(x) = J(x)^Tr(x)}
\nabla^2 f(x) = \sum_{j = 1}^m{\nabla r_j(x)\nabla r_j(x) + \sum_{j = 1}^m{\nabla^2 r_j(x)r_j(x)= J(x)^TJ(x) + \sum_{j = 1}^m{\nabla^2 r_j(x)r_j(x)}

Алгоритмы для нелинейной задачи метода наименьших квадратов

Метод Гаусса-Ньютона

Метод решения задачи

Рекомендации программисту

Выводы

Литература

Philip E. Gill Practical Otpimization 1981.

Личные инструменты