Добавил:
ИВТ (советую зайти в "Несортированное")rnПИН МАГА Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 лаба / БарановВС_1лр.pdf
Скачиваний:
10
Добавлен:
06.09.2025
Размер:
465.88 Кб
Скачать

Часть 2: многомерная линейная регрессия

Задача: Оценка стоимости квартиры по её площади и количеству комнат.

Данные: cost_apartments.csv

2.1. Нормализация признаков

Так как признаки (площадь и кол-во комнат) имеют разные масштабы, была применена нормализация для ускорения сходимости градиентного спуска.

2.2.Сравнение методов

Вприложении реализовано сравнение двух методов для предсказания цены

квартиры (для примера взята квартира 60 м² с 3 комнатами):

Метод градиентного спуска: требует итераций и нормализации.

Метод нормальных уравнений: находит точное решение за один шаг, не требует нормализации.

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

2.3. Выбор скорости обучения (α)

Ключевым этапом при работе с градиентным спуском является подбор скоростиобучения.Былпостроенграфикдлясравнениясходимости J(θ) приразных значениях α.

Из графика видно, что:

При слишком большом α (например, 0.3) функция стоимости расходится. При слишком малом α (например, 0.003) сходимость очень медленная. Оптимальное значение α (например, 0.1 или 0.03) обеспечивает быструю и

стабильную сходимость.

Выводы

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

Были реализованы ключевые функции для вычисления стоимости, градиентного спуска, нормализации признаков и решения через нормальные уравнения.

На практике была продемонстрирована важность нормализации признаков и подбора скорости обучения α для корректной работы градиентного спуска.

Разработано интерактивное веб-приложение на Streamlit, которое позволяет не только выполнять вычисления, но и наглядно визуализировать каждый этап анализа данных.

Проведено сравнение итерационного и аналитического подходов к решению задачи регрессии, что дало полное представление о возможностях и ограничениях каждого метода.

Все поставленные цели лабораторной работы были достигнуты.

Инструкция по запуску проекта

1. Клонировать репозиторий: codeBash

git clone https://github.com/vadikbee/IS-LAB1.git cd IS-1LABA

2. Запустить приложение: codeBash

streamlit run app.py

(А также скачать библиотеки нужно)