Skip to content

Python-проект по прогнозированию стоимости аренды квартир с помощью линейной регрессии. Практическая работа по теме: "Основы машинного обучения" дисциплины "МДК 13.01: Основы применения методов искусственного интеллекта в программировании".

License

Notifications You must be signed in to change notification settings

MindlessMuse666/apartment-price-predictor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Прогноз Аренды Квартиры (Apartment Price Predictor) MIT-License image

Проект для прогнозирования стоимости аренды квартиры на основе ее площади с использованием методов линейной регрессии. Этот проект является практической работой.

  • Тема практической работы: Основы машинного обучения
  • Дисциплина: МДК 13.01: Основы применения методов искусственного интеллекта в программировании

Описание

Этот проект представляет собой реализацию модели машинного обучения для предсказания стоимости аренды квартиры в зависимости от ее площади. Модель основана на методе линейной регрессии и использует Python, а также библиотеки numpy, pandas, scikit-learn и matplotlib.

Структура проекта

apartment-price-predictor/
  ├── data_handling/  # Директория обработки данных
  │  └── data_preparation.py  # Класс для подготовки данных
  ├── models/  # Директория моделей данных
  │  └── linear_regression_model.py  # Класс для линейной регрессии
  ├── visualization  # Директория визуализации данных
  │  └── visualization.py  # Класс визуализации
  ├── tests/  # Директория тестирования
  │  ├── test_apartment_predictor.py  # Файл юнит-тестирования
  │  └── test_data.py  # Файл с тестовыми данными
  ├── LICENSE
  ├── main.py  # Основной скрипт
  ├── README.md
  └── requirements.txt  # Файл с зависимостями

Зависимости

  • numpy
  • pandas
  • scikit-learn
  • matplotlib

Все зависимости можно установить из файла requirements.txt.

Установка и запуск

Клонирование репозитория

git clone https://github.com/MindlessMuse666/apartment-price-predictor

Создание и активация виртуального окружения

python -m venv .venv
# Для Windows (PowerShell):
.venv\Scripts\Activate.ps1
# Для Linux и macOS:
source .venv/bin/activate

Установка зависимостей

pip install -r requirements.txt

Запуск юнит-тестов

python -m unittest tests/test_apartment_predictor.py

Запуск скрипта main.py

python main.py

Дополнительные команды

Для деактивации виртуального окружения используйте команду deactivate:

deactivate

Как использовать

  1. Следуйте инструкциям по установке и запуску.
  2. Настройте Параметры обучения модели в main.py, если вам это необходимо:
  • __MIN_TRAIN_COEF - минимальный коэффициент обучения модели (минимальный шаг модели) (оптимально >=10)
  • __MAX_TRAIN_COEF - максимальный коэффициент обучения модели (максимальный шаг модели) (оптимально >=10)
  • __MIN_TRAIN_THRESHOLD - минимальный порог обучения модели (оптимально >=0)
  • __MAX_TRAIN_THRESHOLD - максимальный порог обучения модели (оптимально >=100)
  1. После запуска main.py будет построена модель линейной регрессии на основе случайного набора данных и выведен график предсказаний.
  2. Можете поменять используемые наборы данных в test_data.py.

Скриншоты проделанной работы

Основной исполняемый скрипт - main.py

image

Класс для подготовки данных - data_preparation.py

image

Класс для линейной регрессии - linear_regression_model.py

image

Класс визуализации - visualization.py (Класс для подготовки данных)

image

Класс юнит-тестирования - test_apartment_predictor.py

image

Класс с тестовыми данными - test_data.py

image

Лицензия

Этот проект распространяется под лицензией MIT - смотрите файл LICENSE для деталей.

Автор

Бедин Владислав (MindlessMuse666)

About

Python-проект по прогнозированию стоимости аренды квартир с помощью линейной регрессии. Практическая работа по теме: "Основы машинного обучения" дисциплины "МДК 13.01: Основы применения методов искусственного интеллекта в программировании".

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages