Образовательная программа магистратуры «Инженерная электрофизика» - файл

приобрести
скачать (52.6 kb.)



ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
(СПбГУ)
Образовательная программа магистратуры «Инженерная электрофизика»
Отчёт по практике
«Учебная практика (научно-исследовательская работа). Проектная работа в
группах»
«SimCon2021.2 Предсказание электропотребления»
Выполнил студент 1 курса магистратуры
(группа 21.М20-фз)
Слесаренко Анастасия Витальевна
Научный руководитель
доц.,
к.ф.-м.н.,
Самусенко
Андрей
Викторович
Санкт-Петербург
2021


2
Содержание
Содержание ................................................................................................................................... 2
Введение ........................................................................................................................................ 3
Основные результаты практики .................................................................................................. 4 1.
Загрузка и анализ данных ................................................................................................ 4 2.
Предобработка данных .................................................................................................... 4 3.
Тестовые модели машинного обучения ......................................................................... 6 3.1.
Facebook Prophet ........................................................................................................ 6 3.2.
Gradient Boosting (feature extraction time series model ........................................... 6 4.
Тестовые модели глубокого обучения ........................................................................... 7 4.1.
LSTM + Dense ............................................................................................................ 7 4.2.
biLSTM + Dense......................................................................................................... 7 5.
Выбор лучшей модели ..................................................................................................... 8 6.
Результаты предсказаний .............................................................................................. 10
Заключение .................................................................................................................................. 11


3
Введение
Для компании, производителя электроэнергии, интерес представляет наличие априорной информации о мощности энергопотребления. Это необходимо для своевременной корректировки режима функционирования сети электроснабжения и как следствие минимизации экономических потерь.
Поскольку мощность электропотребления определяется поведением множества не зависящих друг от друга потребителей, расположенных в разных частях сети, точное предсказание энергопотребления невозможно, однако даже приближенные методы могут помочь повысить надёжность и экономичность сети. Отсутствие метода для подобного прогнозирования является сейчас проблемой, стоящей перед компанией.
Таким образом, задача состояла в предсказании электропотребления в 15 узлах в заданные моменты времени на основании исторических данных об электропотребление в двухстах узлах.


4
Основные результаты практики
1. Загрузка и анализ данных
В ходе анализа данных было обнаружено, что
• временной шаг в исходных временных рядах не постоянен (
40% нерегулярных отсчетов для каждого узла);
• присутствуют пропуски достигающих несколько дней;
• временные отсчеты тренировочных и тестовых данных различаются (например, тестовые отсчеты: [00:00, 02:00, …], тренировочные отсчеты: [00:30, 02:30, …]);
В данной задаче для улучшения прогноза некоторых моделей были использованы погодные данные Лондона (температура, осадки и др.). Эти данные были получены из открытого api.
2. Предобработка данных
Поскольку для используемых моделей машинного и глубокого обучения необходимы регулярные отсчеты, то было решено построить регулярную сетку в тренировочных данных для исследуемых 15 узлов. За основу регулярной сетки брались отсчеты по времени тестовых данных. Далее построенная сетка объединялась с тренировочным датасетом. При этом могли появляться новые пропуски в данных в случаи несовпадения отсчетов для тренировочных и тестовых датасетов. Заполнения пропусков проводилось несколькими методами: это скользящее среднее, линейная интерполяция и заполнение предыдущим значением. На графике ниже представлен пример заполнения указанными методами. Метод заполнения линейной


5 интерполяцией может приводить к некорректному поведению временного ряда при больших пропусках, что видно на графике.
Ниже представлен график для малых пропусков. В данном случае этот пропуск возник из- за построение регулярной сетки. Иногда линейная интерполяция может давать более корректное заполнение, чем скользящее среднее.
Но необходимо было выбрать наиболее подходящий метод заполнения. Для этого исторические данные электропотребления в 15 узлах дополнительно разделялись на валидационный и тестовый датасеты. После чего строилась baseline модели (Prophet) и на валидационной выборке рассчитывалось среднее квадратичное отклонение. На графике видно, лучше всего отрабатывают методы заполнения скользящим средним и линейной интерполяцией.
При этом в большинстве случаев лучше работает скользящее среднее, поэтому в дальнейшем был использован этот метод.


6 3. Тестовые модели машинного обучения
3.1. Facebook Prophet
Аддитивная регрессионная модель, состоящая из следующих компонент:
𝑦(𝑡) = 𝑔(𝑡) + 𝑠(𝑡) + ℎ(𝑡) + 𝜀
𝑡
,
• Тренд g(t) — это кусочно-линейная или логистическая функция.
• Сезонные компонентыs(t)отвечают за моделирование периодических изменений, связанных с недельной и годовой сезонностью.
• Компонента h(t) отвечает за заданные пользователем аномальные дни, в том числе и нерегулярные.
• Ошибка ε
t содержит информацию, которая не учтена моделью.
Таким образом на вход модели Facebook Prophet подавались исторические данные электропотребления, а также дополнительные данные о праздниках и погоде. С помощью кросс- валидации были определены гиперпараметры модели для ее оптимизации.
3.2. Gradient Boosting (feature extraction time series model
Gradient Boosting — это техника машинного обучения для задач регрессии, которая строит модель предсказания в форме ансамбля слабых предсказывающих моделей, в данной реализации
– решающих деревьев.
При применении данного методы было обнаружено, что качество предсказаний лучше, если обучать модель на данных энергопотребления после преобразования Бокса-Кокса. На вход модели поступают 40 предыдущих отсчетов, праздники, временные признаки (время, день, месяц, выходные, дневная и годовая сезонности), а также температура и кол-во осадков. Для того, чтобы предсказать данные на несколько отсчетов вперед алгоритм использовал собственные предсказания.


7 4. Тестовые модели глубокого обучения
4.1. LSTM + Dense
После изучения литературы было решено применить наиболее распространенный тип нейронных сетей в данной области – LSTM. LSTM – это тип рекуррентной нейронной сети, способной запоминать прошлую информацию и при прогнозировании будущих значений учитывать эту прошлую информацию.
LSTM имеет три внутренних слоя для контроля состояния ячейки: слой утраты, слой сохранения и нового состояния. Используемые модели также лучше обучались на данных после преобразования Бокса-Кокса. Далее данные нормализировались, разделялись на тренировочную, валидационную и тестовые части и поступали на вход модели LSTM. В качестве регуляризации использовался слой dropout.
4.2. biLSTM + Dense
Двунаправленный LSTM, или BiLSTM, представляет собой модель обработки последовательностей, состоящую из двух элементов: один принимает входные данные в прямом направлении, а другой - в обратном направлении.


8 5. Выбор лучшей модели
На данном слайде представлены результаты прогнозирования для валидационной выборке на примере 189 узла. Все модели были построены с заполнением пропусков скользящим средним, кроме одного гардиентного бустинга, с заполнением линейной интерполяцией. Он представлен на графике сплошной фиолетовой линией.
Для выбора лучшей модели были рассчитаны и усреднены по всем 15 метрики.
Среднеквадратичное отклонения, средняя абсолютная ошибка и коэффициент детерминации показывают, что в большинстве случаев лучше всего отрабатывают модели гардиентного бустинга. При этом модель с линейной интерполяцией лучше, чем со средним скользящим.
Однако данная модель была построена уже после подачи результатов, где мы использовали гардиентный бустинг с заполнением скользящим средним.


9


10
Если смотреть на метрику для каждого узла, можно заметить, что зачастую наименьшим разбросом обладают модели градиентного бустинга.
Однако есть узлы, в которых лучше показывают себя модели глубокого обучения. Это связано с разной сходимостью обучения для разных узлов, что обусловлено разными данными и их количеством.
6. Результаты предсказаний
На данном графиках ниже визуализированы предсказания для конечных тестовых данных на примере двух узлов.


11
Заключение
1. Были рассмотрены несколько методов заполнения пропусков в исходных данных. Метод заполнения линейной интерполяцией хорошо работает на небольших пропусках, в то время как скользящее среднее больше подходит для больших пропусков.
2. Модель градиентного бустинга на исходных данных дает лучший результат.
Идеи для продолжения работы над данной задачей:
1. Сделать адаптивный метод заполнения: линейной интерполяцией для небольших пропусков, скользящим средним для больших пропусков.
2. Сделать сезонную декомпозицию временного ряда. И построить две модели для каждой компоненты, которая прогнозирует тренд и сезонность.
3. Для улучшения работы нейронных методов, можно увеличить размер тренировочных датасетов путем проведения кластеризации временных рядов для всех узлов. Т.е. обучать алгоритмы для каждого кластера.
4. Использовать архитектуры, для которых нужны большие тренировочные данные:
CNN+LSTM, SciNet, Yformer


Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации