Fminunc возвращает неопределенную гессенскую матрицу для выпуклой цели

Означает ли это, что при минимизации выпуклой целевой функции матрица Гессиана в минимизаторе должна быть PSD? Если fminunc в Matlab возвращает гессиан, который не является psd, что это значит? я использую неправильную цель?

1 ответ

Я делаю это в среде, отличной от Matlab.

Non-PSD означает, что вы не можете использовать его преобразование Холецкого (то есть квадратный корень матрицы), поэтому вы не можете использовать его, например, для получения стандартных ошибок.

Чтобы получить хороший гессиан, ваша целевая функция должна быть действительно гладкой, потому что вы берете вторую производную, которая вдвое усиливает любой шум. По возможности лучше использовать аналитические производные, а не конечно-разностные. То есть если тебе действительно нужен гессиан.

Другие вопросы по тегам