lmfit: определение параметра для следования гауссовскому распределению

Я заметил, что можно ограничивать параметры в LMFIT, используя min, max и / или используя выражение. Мне было интересно, есть ли способ использовать выражение, чтобы ограничить параметр, чтобы он следовал нормальному распределению, определяемому средним и стандартным отклонением. Например, один из моих параметров находится между -3000 и 5000, если я укажу их как минимальное и максимальное значение, оптимизатор считает их одинаково вероятными (однородными), но вместо этого я хочу, чтобы он считал значения, далекие от среднего, менее вероятными (т. Е. обычный). Спасибо.


person lerato sebokolodi    schedule 01.03.2018    source источник


Ответы (1)


Указание минимального и максимального значений фактически не утверждает равную вероятность для всех значений между этими границами. Он утверждает нулевую вероятность за пределами установленных границ.

Нелинейная аппроксимация методом наименьших квадратов, как это делается с помощью lmfit, направлена ​​на поиск максимального значения вероятности для всех параметров, но не рассматривает все значения как равновероятные. Вы указываете начальные значения для каждого параметра, и метод использует вычисленные градиенты (могут быть аналитическими, но обычно числовыми), чтобы найти направление для оптимизации каждого значения параметра.

Но если я понимаю вашу цель, вы действительно не хотите «жестких ограничений», но хотите штрафовать соответствие, если параметр слишком далек от ожидаемого значения. Lmfit не имеет встроенного способа, позволяющего легко включить это, но такие штрафы можно добавить в целевую функцию. Один из подходов - добавить значение «штрафа» в качестве добавляемого элемента в массив, который необходимо минимизировать. То есть можно продлить остаток. Поскольку "наименьшие квадраты" гауссовского распределения для невязки в первую очередь, вы можете просто добавить (np.concatenate) член ::

(current_parameter_value - expected_value)/sigma_expected_value

к остатку. В некотором смысле это похоже на регуляризацию и иногда называется ограничением, позволяющим, но наказывающим значения параметра, которые далеки от ожидаемого значения.

Надеюсь, это имеет смысл!

person M Newville    schedule 01.03.2018