Применение метода наименьших квадратов в Excel
Применение метода наименьших квадратов в Excel
Метод наименьших квадратов представляет собой математическую процедуру построения линейного уравнения, которое бы наиболее точно соответствовало набору двух рядов чисел. Целью применения данного способа является минимизация общей квадратичной ошибки. В программе Excel имеются инструменты, с помощью которых можно применять данный метод при вычислениях. Давайте разберемся, как это делается.
Использование метода в Экселе
Метод наименьших квадратов (МНК) является математическим описанием зависимости одной переменной от второй. Его можно использовать при прогнозировании.
Включение надстройки «Поиск решения»
Для того, чтобы использовать МНК в Экселе, нужно включить надстройку «Поиск решения», которая по умолчанию отключена.
- Переходим во вкладку «Файл».
Кликаем по наименованию раздела «Параметры».
В открывшемся окне останавливаем выбор на подразделе «Надстройки».
Теперь функция Поиск решения в Excel активирована, а её инструменты появились на ленте.
Условия задачи
Опишем применение МНК на конкретном примере. Имеем два ряда чисел x и y, последовательность которых представлена на изображении ниже.
Наиболее точно данную зависимость может описать функция:
При этом, известно что при x=0 y тоже равно . Поэтому данное уравнение можно описать зависимостью y=nx.
Нам предстоит найти минимальную сумму квадратов разности.
Решение
Перейдем к описанию непосредственного применения метода.
-
Слева от первого значения x ставим цифру 1. Это будет приближенная величина первого значения коэффициента n.
Справа от столбца y добавляем ещё одну колонку – nx. В первую ячейку данного столбца записываем формулу умножения коэффициента n на ячейку первой переменной x. При этом, ссылку на поле с коэффициентом делаем абсолютной, так как это значение меняться не будет. Кликаем по кнопке Enter.
Используя маркер заполнения, копируем данную формулу на весь диапазон таблицы в столбце ниже.
В отдельной ячейке высчитываем сумму разностей квадратов значений y и nx. Для этого кликаем по кнопке «Вставить функцию».
В открывшемся «Мастере функций» ищем запись «СУММКВРАЗН». Выбираем её и жмем на кнопку «OK».
Открывается окно аргументов. В поле «Массив_x» вводим диапазон ячеек столбца y. В поле «Массив_y» вводим диапазон ячеек столбца nx. Для того, чтобы ввести значения, просто устанавливаем курсор в поле и выделяем соответствующий диапазон на листе. После ввода жмем на кнопку «OK».
Переходим во вкладку «Данные». На ленте в блоке инструментов «Анализ» жмем на кнопку «Поиск решения».
Открывается окно параметров данного инструмента. В поле «Оптимизировать целевую функцию» указываем адрес ячейки с формулой «СУММКВРАЗН». В параметре «До» обязательно выставляем переключатель в позицию «Минимум». В поле «Изменяя ячейки» указываем адрес со значением коэффициента n. Жмем на кнопку «Найти решение».
Как видим, применение метода наименьших квадратов довольно сложная математическая процедура. Мы показали её в действии на простейшем примере, а существуют гораздо более сложные случаи. Впрочем, инструментарий Microsoft Excel призван максимально упростить производимые вычисления.
Exceltip
Блог о программе Microsoft Excel: приемы, хитрости, секреты, трюки
Метод наименьших квадратов в Excel — использование функции ТЕНДЕНЦИЯ
Метод наименьших квадратов — это математическая процедура составления линейного уравнения, максимально соответствующего набору упорядоченных пар, путем нахождения значений для a и b, коэффициентов в уравнении прямой. Цель метода наименьших квадратов состоит в минимизации общей квадратичной ошибки между значениями y и ŷ. Если для каждой точки мы определяем ошибку ŷ, метод наименьших квадратов минимизирует:
где n = число упорядоченных пар вокруг линии. максимально соответствующей данным.
Это понятие проиллюстрировано на рисунке
Судя по рисунку, линия, максимально соответствующая данным, линия регрессии, минимизирует общую квадратичную ошибку четырех точек на графике. Я покажу вам, как определять это уравнение регрессии с помощью метода наименьших квадратов на следующем примере.
Представьте себе молодую пару, которые, с недавних пор, живут вместе и совместно делят столик для косметических принадлежностей в ванной. Молодой человек начал замечать, что половина его столика неумолимо сокращается, сдавая свои позиции муссам для волос и соевым комплексам. За последние несколько месяцев парень внимательно следил за тем, с какой скоростью увеличивается число предметов на ее части стола. В таблице ниже представлено число предметов девушки на столике в ванной, накопившихся за последние несколько месяцев.
Поскольку своей целью мы определили задачу узнать, увеличивается ли со временем число предметов, «Месяц» будет независимой переменной, а «Число предметов» — зависимой.
С помощью метода наименьших квадратов определяем уравнение, максимально соответствующее данным, путем вычисления значений a, отрезка на оси y, и b, наклона линии:
где xср — среднее значение x, независимой переменной, yср — среднее значение y, независимой переменной.
В таблице ниже суммированы необходимые для этих уравнений вычисления.
Кривая эффекта для нашего примера с ванной будет определяться следующим уравнением:
Поскольку наше уравнение имеет положительный наклон — 0.976, парень имеет доказательство того, что число предметов на столике со временем увеличивается со средней скоростью 1 предмет в месяц. На графике представлена кривая эффекта с упорядоченными парами.
Ожидание в отношении числа предметов в течение следующего полугода (месяца 16) будет вычисляться так:
ŷ = 5.13 + 0.976x = 5.13 + 0.976(16)
20.7 = 21 предмет
Так что, пора нашему герою предпринимать какие-нибудь действия.
Функция ТЕНДЕНЦИЯ в Excel
Как вы уже, наверное, догадались в Excel имеется функция для расчета значения по методу наименьших квадратов. Это функция называется ТЕНДЕНЦИЯ. Синтаксис у нее следующий:
ТЕНДЕНЦИЯ (известные значения Y; известные значения X; новые значения X; конст)
известные значения Y – массив зависимых переменных, в нашем случае, количество предметов на столике
известные значения X – массив независимых переменных, в нашем случае это месяц
новые значения X – новые значения X (месяца) для которого функция ТЕНДЕНЦИЯ возвращает ожидаемое значение зависимых переменных (количество предметов)
конст — необязательный. Логическое значение, которое указывает, требуется ли, чтобы константа b была равна 0.
Например, на рисунке показана функция ТЕНДЕНЦИЯ, используемая для определения ожидаемого количества предметов на столике в ванной для 16-го месяца.
МНК: Метод Наименьших Квадратов в EXCEL
Метод наименьших квадратов (МНК) основан на минимизации суммы квадратов отклонений выбранной функции от исследуемых данных. В этой статье аппроксимируем имеющиеся данные с помощью линейной функции y = a x + b .
Метод наименьших квадратов (англ. Ordinary Least Squares , OLS ) является одним из базовых методов регрессионного анализа в части оценки неизвестных параметров регрессионных моделей по выборочным данным.
Рассмотрим приближение функциями, зависящими только от одной переменной:
Примечание : Случаи приближения полиномом с 3-й до 6-й степени рассмотрены в этой статье. Приближение тригонометрическим полиномом рассмотрено здесь.
Линейная зависимость
Нас интересует связь 2-х переменных х и y . Имеется предположение, что y зависит от х по линейному закону y = ax + b . Чтобы определить параметры этой взаимосвязи исследователь провел наблюдения: для каждого значения х i произведено измерение y i (см. файл примера ). Соответственно, пусть имеется 20 пар значений (х i ; y i ).
Для наглядности рекомендуется построить диаграмму рассеяния.
Примечание: Если шаг изменения по х постоянен, то для построения диаграммы рассеяния можно использовать тип График , если нет, то необходимо использовать тип диаграммы Точечная .
Из диаграммы очевидно, что связь между переменными близка к линейной. Чтобы понять какая из множества прямых линий наиболее «правильно» описывает зависимость между переменными, необходимо определить критерий, по которому будут сравниваться линии.
В качестве такого критерия используем выражение:
Вышеуказанное выражение представляет собой сумму квадратов расстояний между наблюденными значениями y i и ŷ i и часто обозначается как SSE ( Sum of Squared Errors ( Residuals ), сумма квадратов ошибок (остатков) ) .
Метод наименьших квадратов заключается в подборе такой линии ŷ = ax + b , для которой вышеуказанное выражение принимает минимальное значение.
Примечание: Любая линия в двухмерном пространстве однозначно определяется значениями 2-х параметров: a (наклон) и b (сдвиг).
Считается, что чем меньше сумма квадратов расстояний, тем соответствующая линия лучше аппроксимирует имеющиеся данные и может быть в дальнейшем использована для прогнозирования значений y от переменной х. Понятно, что даже если в действительности никакой взаимосвязи между переменными нет или связь нелинейная, то МНК все равно подберет «наилучшую» линию. Таким образом, МНК ничего не говорит о наличии реальной взаимосвязи переменных, метод просто позволяет подобрать такие параметры функции a и b , для которых вышеуказанное выражение минимально.
Проделав не очень сложные математические операции (подробнее см. статью про квадратичную зависимость ), можно вычислить параметры a и b :
Как видно из формулы, параметр a представляет собой отношение ковариации и дисперсии , поэтому в MS EXCEL для вычисления параметра а можно использовать следующие формулы (см. файл примера лист Линейная ):
= КОВАР(B26:B45;C26:C45)/ ДИСП.Г(B26:B45) или
Также для вычисления параметра а можно использовать формулу = НАКЛОН(C26:C45;B26:B45) . Для параметра b используйте формулу = ОТРЕЗОК(C26:C45;B26:B45) .
И наконец, функция ЛИНЕЙН() позволяет вычислить сразу оба параметра. Для ввода формулы ЛИНЕЙН(C26:C45;B26:B45) необходимо выделить в строке 2 ячейки и нажать CTRL + SHIFT + ENTER (см. статью про формулы массива, возвращающими несколько значений ). В левой ячейке будет возвращено значение а , в правой – b .
Примечание : Чтобы не связываться с вводом формул массива потребуется дополнительно использовать функцию ИНДЕКС() . Формула = ИНДЕКС(ЛИНЕЙН(C26:C45;B26:B45);1) или просто = ЛИНЕЙН(C26:C45;B26:B45) вернет параметр, отвечающий за наклон линии, т.е. а . Формула = ИНДЕКС(ЛИНЕЙН(C26:C45;B26:B45);2) вернет параметр, отвечающий за пересечение линии с осью Y, т.е. b .
Вычислив параметры, на диаграмме рассеяния можно построить соответствующую линию.
Еще одним способом построения прямой линии по методу наименьших квадратов является инструмент диаграммы Линия тренда . Для этого выделите диаграмму, в меню выберите вкладку Макет , в группе Анализ нажмите Линия тренда , затем Линейное приближение .
Поставив в диалоговом окне галочку в поле «показывать уравнение на диаграмме» можно убедиться, что найденные выше параметры совпадают со значениями на диаграмме.
Примечание : Для того, чтобы параметры совпадали необходимо, чтобы тип у диаграммы был Точечная, а не График . Дело в том, что при построении диаграммы График значения по оси Х не могут быть заданы пользователем (пользователь может указать только подписи, которые не влияют на расположение точек). Вместо значений Х используется последовательность 1; 2; 3; … (для нумерации категорий). Поэтому, если строить линию тренда на диаграмме типа График , то вместо фактических значений Х будут использованы значения этой последовательности, что приведет к неверному результату (если, конечно, фактические значения Х не совпадают с последовательностью 1; 2; 3; …).
Метод наименьших квадратов в Excel
Программа Excel – мощный табличный редактор, позволяющий выполнять огромное количество различных операций и задач. В данной статье мы разберем, как можно применить метод наименьших квадратов (МНК), который используется для решения различных задач с минимизацией суммы квадратов отклонений некоторых функций от искомых переменных.
Подготовительный этап: активируем надстройку “Поиск Решения”
Прежде, чем приступить к решению основной задачи, потребуется активировать надстройку “Поиск решения” в программе.
- Идем в меню “Файл”.
- В перечне слева выбираем пункт “Параметры”.
- В правой части подраздела “Надстройки” выбираем для параметра “Управление” вариант “Надстройки Excel” и жмем “Перейти”.
- Появится окно для выбора нужных надстроек. Устанавливаем галочку напротив пункта “Поиск решения” и щелкаем OK.
Этап 1: исходные данные
Давайте разберем применение метода наименьших квадратов, решив конкретный пример. Допустим, у нас есть два ряда числовых значений – X и Y.
Данная зависимость может быть описана уравнением ниже:
Также, мы знаем, что если X=0, то и Y=0. А значит, данное уравнение можно записать так:
Приступим к выполнению нашей задачи, которая заключается в нахождении суммы квадратов разности.
Этап 2: решаем задачу с применением МНК
- Столбцу, находящемся слева от X, задаем имя N пишем число “1” (примерное значение первого коэф. N) напротив первого значения ряда X.
- Столбцу с правой стороны от Y задаем название NX. Затем в самой верхней ячейке (напротив первых значений рядов X и Y) пишем формулу произведения коэф. N на соответствующее ему значение из столбца X. При этом адрес ячейки с коэффициентом нужно сделать абсолютным, чтобы он не менялся при копировании формулы. По готовности жмем Enter.
- Наводим указатель мыши на ячейку с полученным результатом. Как только появится черный плюсик (маркер заполнения), зажав левую кнопку мыши тянем его вниз до последней строки таблицы.
- Получаем результаты расчетов в каждой ячейке столбца NX.
- Теперь нужно посчитать сумму разностей квадратов значений Y и NX. Встаем в самую верхнюю ячейку столбца справа от NX (не считая шапки таблицы) и щелкаем по значку “Вставить функцию” (fx).
- В окне вставки функции выбираем категорию “Математические”, находим оператор “СУММКВРАЗН” и щелкаем OK.
- Теперь нужно заполнить аргументы функции:
- в поле “Массив_x” указываем координаты диапазона ячеек столбца Y (без шапки). Адреса ячеек можно указать как вручную, напечатав их с клавиатуры, так и путем выделения с помощью зажатой левой кнопки мыши в самой таблице.
- в поле “Массив_y” указываем диапазон ячеек столбца NX.
- жмем Enter, когда все готово.
- Переключаемся во вкладку “Данные”. В группе “Анализ” щелкаем по функции “Поиск решения”.
- Нам предстоит заполнить параметры поиска решения:
- в поле “Оптимизировать целевую функцию” следует указать ссылку на ячейку с функцией “СУММКВРАЗН”. Сделать это можно вручную или выбрав элемент в таблице.
- для опции “До” выбираем вариант – “Минимум”.
- в поле “Изменяя ячейки переменных” нужно указать координаты ячейки, в которой находится соответствующее значение коэф. N.
- по готовности нажимаем “Найти решение”.
- После выполнения функции появится окно с результатами поиска решения и произойдет замена значения в столбце N. Найденная величина является наименьшим квадратом функции. Нажимаем OK, если полученный результат удовлетворителен.
Заключение
Итак, мы только что разобрали на практическом примере, каким образом можно применить метод наименьших квадратов в Эксель. На практике могут встречаться более сложные задачи, однако, в целом логика действий схожа с той, что мы описали.
Метод наименьших квадратов и поиск решения в Excel
Ну вот, на работе перед инспекцией отчитались, статья дома для конференции написана — можно теперь и в блог писать. Пока данные свои обрабатывал, понял, что не могу не написать про очень классную и нужную надстройку в Excel, которая называется «поиск решения». Так что статья будет посвящена именно этой надстройке, и расскажу я о ней на примере использования метода наименьших квадратов (МНК) для поиска неизвестных коэффициентов уравнения при описании экспериментальных данных.
Как включить надстройку «поиск решения»
Для начала разберемся, как эту надстройку включить.
1. Идем в меню «Файл» и выбираем пункт «Параметры Excel»
2. В появившемся окне выбираем «Поиск решения» и нажимаем «перейти».
3. В следующем окне ставим галочку напротив пункта «поиск решения» и нажимаем «ОК».
4. Надстройка активирована — теперь ее можно найти в пункте меню «Данные».
Метод наименьших квадратов
Теперь вкратце о методе наименьших квадратов (МНК) и о том, где его можно применять.
Допустим, у нас есть набор данных после совершения нами какого-то эксперимента, где мы изучали влияния величины Х на величину Y.
Мы хотим это влияние описать математически, чтобы потом этой формулой пользоваться и знать, что, если мы поменяем величину Х на столько-то , получим величину Y такую-то.
Возьму супер-простой пример (см. рис.).
Ежу понятно, что точки расположились друг за другом как будто по прямой, а потому мы смело предполагаем, что наша зависимость описывается линейной функцией y=kx+b. При этом мы точно уверены, что при X равном нулю значение Y тоже равно нулю. Значит, функция, описывающая зависимость, будет еще проще: y=kx (вспоминаем школьную программу).
В общем, нам предстоит найти коэффициент k. Вот это мы и сделаем с помощью МНК с применением надстройки «поиск решения».
Метод заключается в том, чтобы (здесь — внимание: нужно вдуматься) сумма квадратов разностей экспериментально полученных и соответствующих расчетных значений была минимальной. То есть когда X1=1 реально измеренное значение Y1=4,6, а расчетное y1=f (x1) равно 4, квадрат разности будет (y1-Y1)^2=(4-4,6)^2=0,36. Со следующими так же: когда X2=2, реально измеренное значение Y2=8,1, а расчетное у2 равно 8, квадрат разности будет (y2-Y2)^2=(8-8,1)^2=0,01. И сумма всех этих квадратов должна быть минимально возможной.
Итак, приступим к тренировке по использованию МНК и надстройки Excel «поиск решения».
Применение надстройки поиск решения
1. Если не включили надстройку «поиск решения», то возвращаемся к пункту Как включить надстройку «поиск решения» и включаем
2. В ячейку А1 введем значение «1». Эта единица будет первым приближением к реальному значению коэффициента (k) нашей функциональной зависимости y=kx.
3. В столбце B у нас расположились значения параметра X, в столбце C — значения параметра Y. В ячейках столбца D вводим формулу: «коэффициент k умножить на значение Х». Например, в ячейке D1 вводим «=A1*B1», в ячейке D2 вводим «=A1*B2» и т.д.
4. Мы считаем, что коэффициент к равен единице и функция f (x)=у=1*х – это первое приближение к нашему решению. Можем рассчитать сумму квадратов разностей между измеренными значениями величины Y и рассчитанными по формуле y=1*х . Можем все это сделать вручную, вбивая в формулу соответствующие ссылки на ячейки: «=(D2-C2)^2+(D3-C3)^2+(D4-C4)^2. и т.д. В конце концов ошибаемся и понимаем, что потеряли кучу времени. В Excel для расчета суммы квадратов разностей есть специальная формула, «СУММКВРАЗН», которая все за нас и сделает. Введем ее в ячейку А2 и зададим исходные данные: диапазон измеренных значений Y (столбец C) и диапазон рассчитанных значений Y (столбец D).
4. Сумму разностей квадратов рассчитали – теперь идем во вкладку «Данные» и выбираем «Поиск решения».
5. В появившемся меню в качестве изменяемой ячейки выбираем ячейку A1 (та, что с коэффициентом k).
6. В качестве целевой выбираем ячейку A2 и задаем условие «установить равной минимальному значению». Помним, что это ячейка, где у нас производится расчёт суммы квадратов разностей расчетного и измеренного значений, и сумма эта должна быть минимальной. Нажимаем «выполнить».
7. Коэффициент k подобран. Теперь можно убедиться, что рассчитанные значения теперь очень близки к измеренным.
Вообще, конечно, для аппроксимации экспериментальных данных в Excel существуют специальные инструменты, которые позволяют осуществлять описание данных с помощью линейной, экспоненциальной, степенной и полиномиальной функцией, поэтому часто можно обойтись и без надстройки «поиск решения». Обо всех этих способах апппроксимации я рассказывал в своем бесплатном курсе по Excel: «10 инструментов Excel для быстрого анализа данных», так что если интересно, скачайте — посмотрите. А вот когда дело касается какой-нибудь экзотической функции с одним неизвестным коэффициентом или задач оптимизации, то здесь надстройка «поиск решения» как нельзя кстати.
Надстройку «поиск решения» можно использовать и для других задач, главное — понять суть: есть ячейка, где мы подбираем значение, а есть целевая ячейка, в которой задано условие для подбора неизвестного параметра.
Вот и все! В следующей статье расскажу сказку про отпуск, так что, чтобы не проворонить выход статьи, подписывайтесь на обновления блога.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Применение метода наименьших квадратов в Excel
С помощью метода нахождения наименьших квадратов в таблице Эксель можно составить линейное уравнение, которое бы принадлежало двум наборам чисел. Применяется этот метод, чтобы сократить к минимуму возможность появления квадратичной ошибки. И в этой статье мы рассмотрим, какие инструменты Microsoft Excel позволяют провести данную процедуру.
Использование метода в Экселе
Способ нахождения наименьших квадратов исходит из описания первого числа от второго. Так же он используется для некоторого прогнозирования.
Включение надстройки «Поиск решения»
Для начала нам необходимо включить данную функцию в нашем Excel, которая по стандарту не активирована.
Поэтому переключаемся в раздел «Файл«.
В левом списке находим «Параметры» и нажимаем на них.
В появившемся окне кликаем по «Настройки«, которые находятся внизу левого списка.
В этом же окне только уже в самом низу в разделе «Управление» параметр устанавливаем на «Надстройки Excel«, после чего кликаем по «Перейти. «.
Теперь в окне «Надстройки» ставим крести в пункте «Поиск решений«. После кликаем на «ОК«.
Готово. Мы включили необходимую функцию в Excel, которая теперь позволит нам воспользоваться методом наименьших квадратов.
Воспользуемся нашим методом на практике. Допустим, что есть 2 ряда чисел x и y таких, как это показано на скриншоте.
Эту взаимозависимость можно описать следующей функцией.
По условию мы знаем, что начальные значения x и y равны .
Из этого выходит обычная зависимость y=nx.
Теперь следует найти минимальную сумму квадратов разности.
Давайте посмотрим, как здесь можно применить данный нам метод.
В столбце перед столбиком х поставьте 1. Назовем её n и значить она будет приближенное значение первого параметра коэффициента n.
Создаем новый столбик справа от y и называем его nx. В первую строчку этого столбика записываем форму умножения n на первую ячейку в столбике x так, как это показано на скриншоте. После нажимаем на «Enter«.
Переносим эту формулу на все остальные ячейки в столбике nx с помощью маркера заполнения.
Теперь выбираем произвольную ячейку и записываем туда сумму разностей квадратов параметров x и nx. Сделаем это через мастера функций. Поэтому нажимаем на соответствующую кнопку, находящуюся слева от поля значений.
В появившемся окне находим строку «СУММКВРАЗН» и нажимаем на неё. После кликаем по кнопке «ОК«.
Теперь у нас должно появится окно аргументов. В верхнем разделе «Массив_x» записываем диапазон ячеек y, а в «Массив_y» диапазон ячеек nx. Теперь вновь кликаем по «ОК«.
Переключаемся в раздел «Данные«. Там справа находим кнопку «Поиск решений«. Она должна находиться в меню «Анализ«. Теперь кликаем по ней.
Откроется окошко, где можно настроить параметры поиска решений. В строчке «Оптимизировать целевую функцию» заносим ссылку на ячейку с формулой «СУММКВРАЗН«. В «До» указываем значение «Минимум«. И в следующей строчке «Изменяя ячейки» надо записать ячейку значения столбика n. После этого кликаем по «Найти решение«.
Общее решение запишется в ячейку значения n. Это и будет готовым ответом, то есть наименьшим квадратом функции. В случае, если вы согласны с результатом, то кликните по «ОК«.
Теперь вы научились применять метод МНК и даже опробовали его на конкретном примере. Процедура не выглядит сложной. Если действовать по нашей инструкции, то можно с легкостью добиться желаемого результата в Microsoft Excel. А мы лишь надеемся, что наша статья была вам полезной.