Matlab Robustfit - коэффициенты неопределенности слишком велики
У меня есть следующие векторы:
x = [0.0069 0.0052 0.0034 0.0024 0.0001 -0.0013 -0.0003 ...
-0.0026 -0.0040 -0.0031 -0.0034 -0.0017 -0.0013 -0.0017 ...
-0.0010 -0.0019 -0.0015 -0.0018 -0.0031 -0.0020 -0.0008 ...
0.0007 0.0031 0.0036 0.0060]
y = [0.0069 0.0061 0.0044 0.0031 0.0012 -0.0016 -0.0027 ...
-0.0032 -0.0033 -0.0042 -0.0031 -0.0019 -0.0021 -0.0013 ...
-0.0007 -0.0021 -0.0020 -0.0011 -0.0028 -0.0033 -0.0011 ...
0.0018 0.0027 0.0038 0.0051]
И я использую надежную посадку, чтобы получить линейную функцию y=f(x)=m*x+p
это лучше всего подходит y против x, игнорируя возможные выбросы:
[b,stats] = robustfit(x,y)
Я получаю уклон m = b(2) = 1.0402 +/- 0.0559
и у-перехват p = b(1) = 5.1496e-06 +/- 1.6907e-04
Неопределенности - это значения, которые я получаю stats.se
, которые, согласно руководству, являются "стандартными" ошибками оценки коэффициентов. Но, как вы можете видеть, неопределенность в y-пересечении слишком велика, что, кажется, не имеет никакого смысла (какой смысл в использовании надежного подбора, если неопределенности, которые мы получаем, ненадежны?). Любая помощь по улучшению этого будет очень признателен!
Заранее большое спасибо!
1 ответ
Стандартная ошибка для y-перехвата является большой относительно самого y-перехвата, но все еще очень мала по отношению к y-данным в этом подборе. Из этого вы можете сделать статистический вывод, что существует очень низкая вероятность того, что robustfit
лучше, чем ноль. Это не слабая сторона регрессии - это факт ваших данных, которые, кажется, проходят приблизительно через источник. Вы можете увидеть, насколько малы стандартные ошибки, составив их график:
scatter(x,y)
hold on
axis equal
grid on
plot(x, m *x + p )
plot(x, m *x + p+stats.se(1),'m--')
plot(x,(m+stats.se(2))*x + p ,'c--')
plot(x, m *x + p-stats.se(1),'m--')
plot(x,(m-stats.se(2))*x + p ,'c--')
legend('Raw data','y=m*x+p','y=m*x+p±stats.se(1)','y=(m±stats.se(2))*x+p','Location','best')
Обратите внимание, что эти стандартные ошибки не являются доверительными интервалами - этот график просто иллюстрирует их размер.
Что касается предоставленных вами данных, я бы сказал, что нет места для значительного улучшения этого соответствия без улучшения данных. На самом деле, без конкретных знаний об источнике лежащих в основе данных, я бы предположил, что подгонка с использованием регрессии OLS является такой же вероятной наилучшей оценкой линейной зависимости, как и надежная регрессия.