Прогнозирование спроса на электромобили на данных о ценах топлива: ML-кейс для ВКР

Поддомен: Data Engineering / ML. Роль эксперта: Data/ML-инженер.

Пока средняя цена бензина в США поднималась с ~$3 до $3,98 за галлон, поисковый трафик по электромобилям на одной из онлайн-площадок вырос на 20 %, а по Tesla Model Y — почти вдвое. Для выпускника ИТ это не новость из мира энергетики, а готовый сценарий для ВКР: есть объясняющая переменная (цена топлива), есть отклик (спрос на EV), есть окно исторических данных и острая прикладная задача — построить модель, которая предсказывает спрос и обосновывает решения. Ниже — как превратить этот сюжет в защищаемую работу с архитектурой, метриками и нормальным ТЗ.

FAQ: что чаще всего спрашивают перед выбором темы

Где брать данные, если у меня нет доступа к коммерческим API?

Публичные источники: AAA Gas Prices (историческая динамика), отчёты EIA, реестры регистраций EV по штатам/странам, открытые датасеты Kaggle по авторынку. Для учебной модели 3–5 лет дневных данных достаточно, чтобы показать статистическую значимость.

Какую метрику защиты выбрать — RMSE или MAPE?

Обе, но с обоснованием. RMSE чувствителен к выбросам (а волатильность цен на топливо — как раз выбросы), MAPE интерпретируем для бизнеса как «ошибка в процентах». Добавьте baseline — наивный прогноз «завтра = вчера», иначе комиссия спросит, зачем вообще нужна модель.

Как оформить архитектуру пайплайна по нормоконтролю?

ГОСТ 19 — для программ и алгоритмов, ГОСТ 34 — для систем в целом. Диаграммы — в нотации C4 (уровни Context/Container) или UML Deployment. Скриншоты дашбордов идут в приложения, а не в главу 2.

Можно ли считать экономический эффект, если работа про ML?

Да. Свяжите снижение MAPE на X % с сокращением избыточных закупок или складских запасов — это стандартный приём в ВКР по направлению «Прикладная информатика».

Темы ВКР: три вектора, которые реально защищаются

Основная часть: как встроить материал в главы

Глава 1 — от статьи к постановке задачи

Не пересказывайте журналистский текст. Выделите из него три технических факта: (1) цена топлива — экзогенный триггер спроса; (2) реакция рынка измеряется с лагом в недели; (3) волна возврата лизинговых EV (около 300 тыс. договоров) добавляет предложение. Эти факты превращаются в гипотезы и в список признаков. Оформите таблицу «Фактор → Источник данных → Признак в модели».

Глава 2 — архитектура и пайплайн

Опишите поток: сбор → сырой слой (raw) → очистка → слой признаков (feature store) → обучение → инференс. Оркестрацию покажите на Airflow, качество данных валидируйте через Great Expectations или dbt-тесты. Диаграмму стройте в C4 Container — это снимает половину вопросов комиссии.

# фрагмент: feature engineering + baseline
import pandas as pd
from sklearn.ensemble import GradientBoostingRegressor
from sklearn.metrics import mean_absolute_percentage_error

df = pd.read_parquet("s3://datalake/ev_market/features.parquet")
df["lag_gas_7d"] = df["gas_price"].shift(7)
df["ev_search_7d"] = df["ev_search"].rolling(7).mean()

X = df[["lag_gas_7d", "ev_search_7d", "lease_expiry_cnt", "cpi"]]
y = df["ev_registrations"]

split = int(len(X) * 0.8)
model = GradientBoostingRegressor(n_estimators=400, max_depth=4)
model.fit(X[:split], y[:split])
pred = model.predict(X[split:])
print("MAPE:", round(mean_absolute_percentage_error(y[split:], pred), 3))

Глава 3 — метрики и оценка эффективности

Сравнивайте модель с наивным baseline и фиксируйте MAPE, RMSE, а также экономический эффект. Качество ПО описывайте по ISO/IEC 25010 (функциональная полнота, производительность, надёжность). Если поднимаете сервис, добавьте OpenTelemetry-трейсинг, чтобы показать наблюдаемость — это сейчас заметно повышает оценку.

Чему вы научитесь

Что проверить перед сдачей

  1. Все задачи из введения зеркально отражены в выводах по главам и заключении.
  2. Для каждой схемы есть подпись и ссылка в тексте (Рисунок 1 — ...).
  3. Метрики модели посчитаны на отложенной выборке, а не на обучающей.
  4. Источники данных указаны с датами выгрузки и лицензией.
  5. Код вынесен в приложение, а не разбросан по главе.
  6. Уникальность текста соответствует регламенту вуза (обычно ≥ 70 %).
  7. Оформление ссылок и списка литературы — по ГОСТ Р 7.0.5.

Типичные ошибки студентов

1. Прогноз без baseline. Модель с MAPE 12 % звучит неплохо, пока не выяснится, что «прогноз=вчера» даёт 13 %. Всегда сравнивайте с наивным ориентиром.

2. Игнорирование лага. Цена топлива влияет на спрос не мгновенно. Забыли про лагированные признаки (shift, rolling) — получили ложную корреляцию.

3. Архитектура «на словах». Одна диаграмма C4 или UML Deployment экономит 10 минут защиты и снимает вопрос «а как это работает вместе».

Если тема сформулирована, но нет понимания, где взять данные или как связать ML-часть с ГОСТ-оформлением — можно взять бесплатную 15-минутную консультацию: поможем очертить структуру и подскажем, какие метрики и диаграммы обязательно показывать. Средний срок сопровождения — от 120 часов работы над проектом.

Материал подготовлен экспертами компании «Диплом-Про». Мы помогаем студентам с 2010 года: сопровождаем разработку тем по Data/ML, оформляем документацию по ГОСТ и готовим работы к защите. Если нужна помощь в разработке темы или оформлении работы — наши специалисты подскажут.

Последнее обновление: 2026-09-26

Источник: Are high gas prices good news for EVs? It’s complicated. (опубликовано 2026-03-26)