Я думаю ты прав. Давайте разберем ваш аргумент в его сущности:
минимизирует функциюQопределяется какQ(thetas)=1θˆNQQ(θ)=1N∑Ni=1q(wi,θ).
Пусть - гессиан Q , откуда H ( θ ) = ∂ 2 QHQ , по определениюи этов свою очередь, по линейности дифференциации, равна1H(θ)=∂2Q∂θi∂θj.1N∑Ni=1H(wi,θn)
Предполагая , что & thetas ; N лежит во внутренней части области Q , то Н ( θ N ) должен быть положительным полуопределенным.θˆNQH(θˆN)
Это просто утверждение о функции : как она определяется всего лишь отвлечение, за исключением тех случаев, когда предполагается второго порядка дифференцируемость ц относительно второго аргумента ( & thetas ) обеспечивает второй порядок дифференцируемости Q .QqθQ
Найти М-оценки может быть сложно. Рассмотрим эти данные, предоставленные @mpiktas:
{1.168042, 0.3998378}, {1.807516, 0.5939584}, {1.384942, 3.6700205}, {1.327734, -3.3390724}, {1.602101, 4.1317608}, {1.604394, -1.9045958}, {1.124633, -3.0865249}, {1.294601, -1.8331763},{1.577610, 1.0865977}, { 1.630979, 0.7869717}
Процедура R для нахождения M-оценки с дает решение ( c 1 , c 2 ) = ( - 114,91316 , - 32,54386 ) . Значение целевой функции (среднее значение q ) в этой точке равно 62,3542. Вот сюжет подгонки:q((x,y),θ)=(y−c1xc2)4(c1,c2)(−114.91316,−32.54386)q
Вот график (log) целевой функции в окрестности этого соответствия:
Здесь что-то подозрительно: параметры подгонки чрезвычайно далеки от параметров, используемых для моделирования данных (около ), и мы, кажется, не находимся на минимуме: мы находимся в чрезвычайно мелкой долине с наклоном в сторону больших значений обоих параметров:(0.3,0.2)
Отрицательный определитель гессиана в этой точке подтверждает, что это не локальный минимум! Тем не менее, когда вы посмотрите на метки оси z, вы увидите, что эта функция имеет точность от пяти до пяти цифр во всем регионе, поскольку она равна константе 4,1329 (логарифм 62,354). Это, вероятно, привело к тому, что минимизатор функции R (с допусками по умолчанию) пришел к выводу, что он близок к минимуму.
На самом деле, решение далеко от этой точки. Чтобы быть уверенным в его нахождении, я использовал в Mathematica дорогой в вычислительном отношении, но очень эффективный метод « Основной оси » , используя точность в 50 цифр (основание 10), чтобы избежать возможных численных проблем. Он находит минимум вблизи ( c 1 , c 2 ) = ( 0,02506 , 7,55973 ), где целевая функция имеет значение 58.292655: примерно на 6% меньше, чем «минимум», найденный R. Этот минимум имеет место в чрезвычайно плоском участке , но я могу заставить его выглядеть (едва ли) как истинный минимум с эллиптическими контурами, преувеличивая c 2(c1,c2)=(0.02506,7.55973)c2 Направление на участке:
Контуры варьируются от 58.29266 в середине до 58.29284 в углах (!). Вот трехмерный вид (опять же цель журнала):
Здесь гессиан положительно определен: его собственные значения 55062.02 и 0.430978. Таким образом, эта точка является локальным минимумом (и, вероятно, глобальным минимумом). Вот подгонка, которой он соответствует:
Я думаю, что это лучше, чем другой. Значения параметров, безусловно, более реалистичны, и ясно, что мы не сможем добиться большего успеха с этим семейством кривых.
Из этого примера мы можем извлечь полезные уроки:
- Численная оптимизация может быть трудной, особенно с нелинейной подгонкой и неквадратичными функциями потерь. Следовательно:
- Дважды проверьте результаты как можно больше способов, в том числе:
- График целевой функции, когда вы можете.
- Если числовые результаты нарушают математические теоремы, будьте крайне подозрительны.
- Когда статистические результаты являются неожиданными - например, неожиданные значения параметров, возвращаемые кодом R - быть особенно подозрительными.