Добавил:
study@slavapmk.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2 сем / Отчёт ЛР3

.docx
Скачиваний:
0
Добавлен:
11.05.2026
Размер:
662.22 Кб
Скачать

Министерство Цифрового Развития, Связи И Массовых

Коммуникаций Российской Федерации

Ордена Трудового Красного Знамени Федеральное

Государственное Бюджетное Образовательное Учреждение

Высшего Образования

«Московский Технический Университет Связи и Информатики»

──────────────────────────────────────

Введение в Информационные Технологии

Петров Вячеслав

БИН2406

Проверил: Зимин С.И.

Лабораторная работа №3

«Введение в численные методы на Python:

Аппроксимация и интерполяция данных измерений.

Метод наименьших квадратов»

Цель работы

Знакомство с численными методами для решения задач:

- линейная аппроксимация данных Листинг исходного кода

При введении коэффициентов 4 и 2 получаем следующие данные:

Коэффициенты

a

b

Введённые значения

4

2

Вычисленные значения

3.9083968052461415

2.0028949518829595

В данном случае отклонения составили:

Отклонение ( )

0.091603194753858

0.002894951882960

Время на работу: 1.73 секунд

Почему коэффициенты различаются?

  1. Метод наименьших квадратов минимизирует сумму квадратов ошибок, но не устраняет их полностью, поэтому итоговая прямая лишь приближает исходную зависимость.

  2. Случайный шум – при deviationPer = 0.05 каждое значение y отклоняется на ±5% от истинной линейной зависимости, что приводит к небольшим изменениям вычисленных коэффициентов.

  3. Объем данных – хотя 10 000 точек дают хорошее приближение, случайные отклонения всё же сохраняются.

Как сократить расхождения?

  1. Усреднить результаты нескольких запусков – выполнение нескольких независимых экспериментов и усреднение найденных коэффициентов поможет уменьшить вариативность.

  2. Уменьшить deviationPer – при deviationPer=0 все точки лягут точно на одну прямую, и метод выдаст коэффициенты, совпадающие с исходными.

  3. Увеличить объем выборки – большее количество данных снижает влияние случайного шума на результат.

Улучшение точности

  • Выразим обработку значений в отдельную функцию, где на вход будут подаваться оригинальные коэффициенты; на выход – расчётные

  • Увеличим количество точек с 10’000 до 10’000’000

  • Сделаем 3000 независимых расчётов и усредним данные

  • Для ускорения, запустим независимые эксперименты в 4 потоках (по количеству физических ядер)

  • Усредним полученные значения с каждого эксперимента

  • Сделаем замер времени для каждого эксперимента, а также найдём суммарное время

Листинг обновлённой программы

Усреднённые значения

Коэффициенты

a

b

Введённые значения

4

2

Вычисленные значения

4.000002529734285

1.9999999042153491

В данном случае отклонения составили:

Отклонение ( )

0.000002529734285

0.000000095784651

Время на работу: 18578.04 секунд / 5.16 часов (41.28 часов при однопоточной работе)

Сравнение значений

Коэффициенты

a

b

Среднее значение ( )

Отклонение (I запуск)

0.091603194753858

0.002894951882960

0.047249073318409

Отклонение (2 запуск)

0.000002529734285

0.000000095784651

0.000001312759468

– коэффициент улучшения качества

– коэффициент увеличения времени

– коэффициент суммарного увеличения точек

При увеличении количества точек в 30000000 раз это привело к увеличению точности в 35992 раз, а эквивалентное время (если бы запуск был на 1 ядре) увеличилось в 85909 раз, что ниже 3 порядка

Вывод:

В этой работе рассматривался метод наименьших квадратов. Исследовалась его применимость для аппроксимации линейной зависимости, а также анализировалось влияние случайного шума и объёма выборки на точность вычисленных коэффициентов.

На первом этапе эксперимента была создана выборка из 10 000 случайных точек с заданной линейной зависимостью и небольшим случайным отклонением. Затем методом наименьших квадратов были вычислены коэффициенты аппроксимирующей прямой. Однако из-за случайного разброса значений они не совпадали с исходными, хотя и были близки. Это связано с тем, что метод минимизирует среднеквадратичную ошибку, но не устраняет её полностью. Чтобы сократить расхождения, было предложено увеличить объём данных и усреднить результаты нескольких независимых запусков.

Во втором эксперименте была реализована многопоточная программа, в которой выполнялось 3000 независимых запусков на 10 000 000 точек в каждом. Это позволило значительно уменьшить погрешность, практически сведя её к нулю. Однако такое увеличение точности потребовало значительных вычислительных ресурсов: общий расчёт занял более 5 часов даже при использовании 8 потоков.

Результаты показали, что увеличение объёма данных и многократные запуски действительно повышают точность аппроксимации, но требуют существенных вычислительных затрат. Хотя метод наименьших квадратов не устраняет погрешность полностью, при достаточном количестве данных он позволяет получить практически идеальное соответствие с исходной зависимостью.

Основными преимуществами метода являются его простота, эффективность и возможность работы с зашумлёнными данными. Однако он чувствителен к выбросам и требует, чтобы зависимость между переменными была линейной или могла быть приведена к линейному виду.

Метод наименьших квадратов подходит для анализа данных, прогнозирования и построения регрессионных моделей, особенно если данные содержат небольшие случайные отклонения.

Москва 2025

Соседние файлы в папке 2 сем