![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Продолжение программы для расчета
% предроложим, что связь между параметрами x и y является линейной % Вычислим суммы, необходимые для расчета коэффициентов уравнения линейной регрессии % и коэффициента детерминации R^2; xi = sum(x); % xi = % 28.9000 yi = sum(y); % yi = % 136 xi2 = sum(x.^2); %xi2 = % 99.4100 xiyi = sum(x.*y); %xiyi = % 435.3000 n = 10; ycp = yi/n; % ycp = % 13.6 % Вычислим коэффициенты линейной регрессии по формулам a1 = (n*xiyi-yi*xi)/(n*xi2-(xi).^2); %a1 = % 2.6597 a0 = (1/n)*(yi-a1*xi); %a0 = % 5.9135 % Таким образом, искомая регрессионная зависимость имеет вид: yp = 5.9135+2.6597*x; hold on; plot(x, yp, 'k'); legend('экспериментальные данные', 'регрессионная зависимость');
Таблица 2
Как видим, линия регрессии хорошо " подогнана" под значения исходных данных.
Таким образом, искомая регрессионная зависимость имеет вид: Наклон линии регрессии Вычислим коэффициент детерминации. Величина R-квадрат, называемая также мерой определенности, характеризует качество полученной регрессионной прямой. Это качество выражается степенью соответствия между исходными данными и регрессионной моделью (расчетными данными). Мера определенности всегда находится в пределах интервала [0; 1].
%Вычислим коэффициент детерминации R.^2 R2 = sum((yp-ycp).^2)/sum((y-ycp).^2) %R2 = % 0.9183 % 91.8% В нашем примере мера определенности равна 0, 91829, что говорит об очень хорошей подгонке регрессионной прямой к исходным данным. Таким образом, линейная модель объясняет 91, 8% вариации времени доставки, что означает правильность выбора фактора (расстояния). Не объясняется Приблизительным, но самым простым и наглядным способом проверки удовлетворительности регрессионной модели является графическое представление отклонений: Отложим отклонения plot(y, yp-y, 'ko'); grid; xlabel('время, мин'); ylabel('отклонение e, мин'); Рис.. График отклонений
Если регрессионная модель близка к реальной зависимости, то отклонения будут носить случайный характер и их сумма будет близка к нулю.
sum(yp-y) %ans % 3.3000e-004*1000 В рассмотренном примере
Обычно мерой ошибки регрессионной модели служит среднее квадратическое отклонение Для нормально распределенных процессов приблизительно 67% точек находится в пределах одного отклонения
% построение трубы сигма (ско) plot(x, yp+cko, 'g-', x, yp-cko, 'g-'); hold on % построение трубы 2 сигма (2 ско) plot(x, yp+2*cko, 'r-', x, yp-2*cko, 'r-');
Решим задачу прогнозирования. Поскольку коэффициент детерминации R2 имеет достаточно высокое значение и расстояние 2 км, для которого надо сделать прогноз, находится в пределах диапазона исходных данных (таблица 1), то мы можем использовать полученное уравнение линейной регрессии для прогнозирования
% прогнозирование x_ = 2; yp_ = 5.9135+2.6597*x_ %yp_ = % 11.2329 При прогнозах на расстояния, не входящие в диапазон исходных данных, нельзя гарантировать справедливость полученной модели. Это объясняется тем, что связь между временем и расстоянием может изменяться по мере увеличения расстояния. На время дальних перевозок могут влиять новые факторы такие, как использование скоростных шоссе, остановки на отдых, обед и т.п.
Таким образом, в результате использования регрессионного анализа в пакете Маtlab мы:
Варианты задач для самостоятельного решения
|