Фон

Долина Салинас в Калифорнии — один из самых продуктивных в сельском хозяйстве регионов мира, где выращивают более 150 видов специальных культур на общую сумму более 4 миллиардов долларов в год. Эта интенсивная сельскохозяйственная деятельность имеет свою цену — сельскохозяйственное загрязнение (часто в виде стоков удобрений, навоза, пестицидов) просачивается в землю и загрязняет грунтовые воды высоким уровнем нитратов и других загрязняющих веществ. По оценкам, 95% воды, используемой в этом районе, добывается скважинами из подземных водоносных горизонтов [1], поэтому эти загрязнители могут сильно повлиять на доступность пригодной для использования чистой воды для местного населения.

Институт окружающей среды и устойчивого развития Калифорнийского университета в Лос-Анджелесе установил несколько установок по очистке сточных вод для отдаленных сельскохозяйственных населенных пунктов в долине Салинас, причем экспериментальная площадка расположена в Соледад, Калифорния. Многолетние данные об использовании воды с высоким разрешением были собраны с этого участка с помощью беспроводных счетчиков воды. Модели, которые могут учитывать почасовую и сезонную изменчивость для точного прогнозирования моделей водопользования небольших населенных пунктов, полезны при разработке проектных и эксплуатационных спецификаций систем водоснабжения сообществ, вместимости водохранилищ и планировании сообщества для расширения и модернизации инфраструктуры системы водоснабжения.

В этой статье представлен краткий анализ подхода машинного обучения к прогнозированию использования воды. После визуализации и анализа доступных данных я решил протестировать как модель случайного леса принятия решений, так и модель временных рядов скользящей средней сезонной авторегрессии с экзогенными факторами (SARMAX), чтобы описать эти тенденции. В то время как городское и региональное водопользование ранее хорошо описывалось как временной ряд [2], чрезвычайно малая численность населения, получающего воду из источника, может привести к более стохастической модели использования.

Изучите сайт и данные

Данные об использовании воды были собраны для удаленного сообщества Pryor Farms в Соледад, Калифорния. В этом отдаленном сельскохозяйственном поселке проживает 36 человек (8 жилых единиц). Данные об использовании воды были предоставлены с шагом 5 минут как для общего потребления (галлоны), так и для расхода воды (галлоны/мин). Такой уровень разрешения был необязательным, поэтому данные суммировались с потреблением воды в час и в день.

Данные о погоде были собраны в муниципальном аэропорту Салинаса на основе данных Национальных центров экологической информации — подгруппы Национального управления океанических и атмосферных исследований. Муниципальный аэропорт Салинаса находится в 32,3 км от станции очистки сточных вод Pryor Farms и, таким образом, дает разумный прогноз местной погоды. Известно, что бытовое потребление воды сильно коррелирует с температурой [3], поэтому были собраны дневная максимальная температура (°F) и минимальная температура (°F), а также данные о среднем ветре (миль в час) и осадках (дюймы в день). .

Набор данных, используемый в модели случайного леса и в качестве отправной точки для модели SARIMAX, представляет собой компиляцию результатов использования воды 11 Pryor Farms, очищенных от дней отключения, объединенных с данными о погоде от NOAA.

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

Модель случайного леса

Чтобы создать модель случайного леса, я использовал Scikit Learn Random Forest Regressor, который выращивает свои деревья на основе минимизации примесей GINI с использованием функции стоимости MSE, и подогнал его как к обучающим наборам ежедневного, так и к почасовому потреблению воды на фермах Pryor. . Модель временных рядов требует непрерывного набора тестов, поэтому я оставил одни и те же тестовые и обучающие точки для обоих типов моделей, чтобы сравнить их.

RF_hourly = RandomForestRegressor(n_estimators=300, random_state=10, min_samples_split=3,oob_score=True)

RF_hourly.fit(X_train,y_train)

Модель случайного леса обеспечивает не только сравнение с моделью временных рядов, которая может отслеживать степень, в которой предшествующее использование воды влияет непосредственно на последующее использование воды по сравнению с общей не последовательно важной информацией (например, погодой, днем ​​недели, часом дня). — но также обеспечивает простой способ определения наиболее важных факторов, влияющих на водопользование.

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

Теория моделей временных рядов

Сезонная авторегрессионная интегрированная модель скользящего среднего с экзогенными признаками удобно упакована и поэтому использовалась для всех моделей временных рядов, однако все они могли быть вписаны в более простые модели — часто модель авторегрессионного скользящего среднего (ARMA).

Модель ARMA имеет два требования: ряд должен быть стационарным — иметь постоянное во времени среднее значение и постоянную дисперсию — и эргодическим — все доступные микросостояния равновероятны в течение длительного периода времени.

Нестационарный временной ряд потребует, чтобы интегратор взял ряд разностей, как в модели ARIMA. Если в модели не используются различия (как в случае использования воды на фермах Pryor), то она становится упрощенной моделью ARMA.

Авторегрессивный процесс использует определенные значения yt с задержкой в ​​качестве переменных-предикторов. Порядок «p» процесса AR определяет, сколько периодов времени за прошедшее время модель включает данные, чтобы создать новый прогноз. Общий процесс AR(p) выглядит следующим образом:

Модель скользящего среднего — это модель временного ряда, учитывающая очень краткосрочную автокорреляцию (каждое наблюдение — это среднее значение всех прошлых наблюдений до порядка «q»). Общий процесс MA(q) выглядит следующим образом:

Процесс ARMA зависит от обоих терминов и может быть выражен следующим образом:

Подготовка модели временных рядов

Существует два типа сезонности: аддитивная, когда компоненты складываются вместе, образуя временной ряд, и мультипликативная, когда они умножаются. Оба типа сезонности, показанные в данных, показали увеличение не только базового значения, но и амплитуды/вариации, что указывает на мультипликативную сезонность.

Для удаления сезонности данных, как если бы сезонность была аддитивной (более простой процесс), я провел логарифмическое преобразование исходных данных о водопользовании для использования в моделях.

Я удалил ежедневную сезонность, просто усредняя потребление воды по часам дня, вычитая его минимальное значение и вычитая это из данных журнала использования. Я удалил годовую сезонность, подгоняя сплайн к разности средних значений каждой трети (10 дней) месяца за все три года, подгоняя его под общий период времени, затем вычитая его минимальное значение, а затем вычитая его из журнал использования данных.

Перед выполнением подгонки модели необходимо определить порядок модели. Пакет auto_arima — это удобный способ определить порядок модели. Он определяет оптимальные значения на основе минимизации значений AIC (информационного критерия Акаике). Хотя я варьировал модели между использованием логарифмически преобразованных/непреобразованных данных и сезонностью, предварительно обработанной или определенной с помощью модели, временной ряд всегда будет стационарным, поэтому параметр интегрированных разностей («I» в ARIMA) «d» всегда будет равен нулю.

stepwise_fit = auto_arima(Pryor_Hourly['Deyearly Log Use'], seasonal = True, seasonal_order = (1,0,1,24), stationary=True, trace=True)

Само моделирование было выполнено с использованием функции SARIMAX, импортированной из statsmodels.

Для трех моделей я использовал функциональность экзогенных факторов функции SARIMAX, чтобы включить дополнительные факторы — среднюю температуру и месяц, определенные из диаграммы ранжирования функций — в модели, определяющие будущее потребление воды.

Результаты

После выполнения анализа средней абсолютной ошибки (MAE) для всех созданных моделей я смог определить очень небольшое улучшение — 69 по сравнению с 73 — в использовании анализа временных рядов по сравнению с моделью случайного леса для данных Pryor Hourly, и немного большее улучшение данных об использовании Pryor Daily — 760 по сравнению с 964.

Помимо потенциальной стохастичности данных об использовании воды для такого небольшого населения — Pryor Farms снабжает чистой водой восемь жилых единиц, в общей сложности всего 36 человек — еще одна причина сходства ошибок для обеих моделей заключается в том, что в дереве решений уже была информация. это будет считаться релевантным по времени (позиция в день, позиция в году).

Предварительный R2 для модели Random Forest был определен равным 0,56 для данных Pryor Hourly об использовании воды и 0,27 для данных Pryor Daily об использовании воды. Значение R2 выше 0,55 считается высоким, а 0,27 — довольно низким, что имеет смысл, учитывая, что потребление воды в час коррелирует со временем суток, а не с другими факторами.

Ссылки

  1. Агентство водных ресурсов округа Монтерей. Мониторинг уровня подземных вод | Округ Монтерей, Калифорния | 2021.
  2. Донкор, Э.А.; Маццуки, Т.А.; Сойер, Р.; Роберсон, Дж.А. Прогнозирование спроса на городскую воду: обзор методов и моделей. Дж. Водный ресурс. План. Управление 2014, 140, 146–159.
  3. Праскевич, С., и Чанг, Х. (2009). Выявление взаимосвязи между потреблением воды в городах и погодными переменными в Сеуле, Корея. Физическая география, 30 (4), 324–337. https://doi.org/10.2747/0272-3646.30.4.324