1. Введение

В 2022 году я опубликовал в Medium (Ref. [1]) визуальный анализ, выполненный с помощью Tableau и Jupyter Notebook (Python) в области использования печи и кондиционера на основе среднесуточной температуры в Калгари и других параметров (например, Тип пола и фильтра) на основе данных, полученных в моем доме на юге Калгари за период с 01 апреля 2017 года по 10 февраля 2022 года. Таким образом, этот анализ помог убедиться, что дневная температура наружного воздуха была на 2,79 oC выше средней. температура, рассчитанная на основе максимальной и минимальной температуры, о которой сообщается в новостях, зарегистрированных в международном аэропорту Калгари, количественная оценка количества дней работы моей печи и кондиционера в течение этого периода, тип используемого фильтра (только 2 до этого времени) влияет на использование ежедневно каждого оборудования, смена пола также оказала на это некоторое влияние, указав на некоторую обратную зависимость между температурой наружного воздуха и влажностью и, в основном, выявила отрицательную линейную зависимость температуры наружного воздуха от работы печи.

В этой статье представлен новый анализ, выполненный с использованием обновленных данных, собранных до 23 марта 2023 года, но с упором на создание и оценку различных моделей машинного обучения (ML) для оценки ежедневного использования печи на основе наиболее важных переменных, определенных в отчете. предыдущий анализ (средняя дневная температура наружного воздуха, влажность наружного воздуха, тип фильтра и пола). Для типа фильтра через несколько дней после предыдущего исследования использовался один дополнительный тип, и он учитывался в результатах, представленных в этом новом анализе.

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

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

2. Очистка/обработка данных

Набор данных, использованный при создании и анализе модели машинного обучения, представленный в этой истории, аналогичен представленному в предыдущей истории (Ref.[1]), который содержит 20 столбцов, но теперь с 2184 строками для представления ежедневно получаемых данных. / извлечены значения каждой функции с 01 апреля 2017 г. по 23 марта 2023 г.

На первом этапе процесса очистки данных были удалены столбцы, которые были необходимы для исследования на основе предыдущей истории. После этого единственными столбцами во временном фрейме данных были: Дата, TmacNEWS (максимальная температура, сообщаемая метеорологической сетью в аэропорту Калгари, в °C), TminNEWS (минимальная температура, сообщаемая метеорологической сетью в аэропорту Калгари, в °C), Thouse- юг (средняя дневная температура наружного воздуха, полученная в моем доме, в oC), HumidityOut (средняя дневная влажность наружного воздуха в моем доме, в процентах), Fusage-юг (ежедневное использование печи в моем доме, в часах), фильтр (тип фильтра: три разные варианты) и Этаж (Тип пола: два разных варианта).

Далее оценивалось количество недостающих данных для каждого оставшегося столбца. Результаты представлены в кипе ниже.

В Таблице 1 можно увидеть, что 29 строк данных «Тауз-юг» и «Влажность вне» были пропущены, что составляет 1,3% от общего количества точек. Варианты для них заключались в том, чтобы добавить значения в эти ячейки (например, добавить среднее значение температуры новостей для первой и реплицировать ближайшее значение второй) или только удалить строки. Было решено удалить строку, так как они не должны сильно влиять на модели, и в итоге в датафрейме осталось 2150 строк.

После этого были удалены столбцы «Дата», «TmacNEWS» и «TminNEWS», оставив только остальные 5 для создания моделей ML, рассматривающих использование печи как качественную переменную. Сводка по каждому оставшемуся столбцу представлена ​​в Таблице 2.

Для использования печи в качестве категориальной переменной был продублирован предыдущий очищенный фрейм данных, а столбец «Fusage-Юг» был заменен новым категориальным столбцом со значениями использования печи на основе некоторого заранее определенного диапазона, как представлено в Таблице 3. .

Таким образом, были созданы два окончательных очищенных фрейма данных: один для создания моделей машинного обучения для прогнозирования использования печи в часах, а другой для прогнозирования в диапазоне 2 часов.

3. Исследовательский анализ данных

Для пояснительного анализа данных (EDA) было сделано то же самое, что и в предыдущей истории (Ref.[1]) для кадра данных об использовании печи в качестве переменной числового отклика, и было решено не добавлять в этот история снова, даже если было добавлено больше данных. Однако основные различия можно извлечь из Таблицы 2.

Что касается очищенного кадра данных об использовании печи в качестве категориальных переменных, Рисунок 1 показывает гистограмму общего наблюдения за каждым диапазоном печи.

Рисунок 1 показывает, что печь не работала 600 дней в период с 01 апреля 2017 г. по 23 марта 2023 г. Для работы печи диапазон от 4 до 6 часов, который представляет наибольшую частоту за период , но только 8 дней за этот период печь работала свыше 14 часов в один и тот же день.

С точки зрения отношения средней дневной влажности наружного воздуха к функции средней дневной температуры наружного воздуха Рисунок 2 показывает это соотношение с учетом различных диапазонов использования печи.

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

4. Методология

Для анализа и моделирования применялись различные этапы и методы, которые обобщены в блок-схемах на рисунках 3 и 4.

Рисунок 3 представляет процесс, используемый для получения окончательных наборов данных для обучения и тестирования, масштабированных или нет. По сути, изначально были взяты очищенные наборы данных, и они были разделены на 80% поездной части и 20% тестовой части с использованием стратифицированной выборки с пропорциональным распределением использования типа фильтра для использования печи для количественного прогнозирования использования печи, тогда как пропорциональное распределение для каждого класса печи использование в качестве классификатора. Затем категориальные независимые переменные были фиктивными. Наконец, были созданы дополнительные кадры данных для обучения и тестирования с учетом масштабированных числовых независимых переменных. Масштабированные кадры данных в основном использовались для моделей ML, которые учитывают расчет расстояния (например, KNN, SVC).

На рис. 4 показана процедура создания моделей машинного обучения. Для некоторых из них (например, линейная регрессия, гауссовский NB) была создана модель машинного обучения напрямую путем применения части поезда, тогда как другие модели машинного обучения были выбраны на основе лучших параметров, найденных с помощью GridSearchCV (например, ядро ​​и C в машинах опорных векторов — SVR и SVC), или делая чувствительность непосредственно в параметре ML (гиперпараметры, например, глубины дерева, количество оценок в Gradient Boosting), или используя повторяемый Bootstrap для поиска гиперпараметров (например, количество оценок в Random Forest и Bagging) для минимального MSE (среднеквадратичная ошибка) для регрессоров или максимальная точность для классификаторов, для части проверки. Наконец, с оптимальной моделью для каждого ML была применена тестовая часть и была получена MSE / точность (также с использованием матрицы путаницы) для прогнозирования переменной отклика.

5. Создание и оценка моделей машинного обучения для прогнозирования использования печи

В этом пункте показано создание и оценка некоторых моделей машинного обучения, разработанных для прогнозирования использования печи в моем доме на основе параметров «Дом-юг», «Влажность на выходе», «Тип фильтра» и «Тип пола» с учетом разработки модели на основе части поезда (80 % очищенного набора данных) и сверяется с тестовой частью (остальные 20%) очищенного набора данных. В начале представлено прогнозирование использования печи в часах (числовое) с использованием регрессоров ML, а затем показано прогнозирование диапазона использования печи (категорийное) с использованием классификаторов ML.

Модели ML оцениваются с точки зрения MSE (среднеквадратическая ошибка) и точности для моделей регрессии и классификации ML соответственно, в основном с точки зрения прогнозирования тестовой части.

В этом рассказе не показан процесс разработки всех моделей ML, но в конце представлена ​​сводка всех подогнанных моделей ML для сравнения.

5.1– Использование печи как количественная (числовая) переменная отклика

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

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

5.1.1– Линейная регрессия

Для метода статистического обучения линейной регрессии он был применен непосредственно к масштабируемой части поезда, и полученная подогнанная модель представлена ​​на Рисунке 5.

Рисунок 5 показывает, что все коэффициенты независимой переменной являются значимыми, учитывая, что значения p ниже 0,05 и в то же время нет нуля в пределах 95% доверительного интервала. Кроме того, модель, созданная на основе поездной части, показала СКО 0,878, при этом 92,88 % изменчивости использования печи в железнодорожной части объясняется этой моделью.

Для подобранной модели, основанной на поездной части, была применена тестовая часть, и сводные результаты представлены в Таблице 5.

Таблица 5 показывает, что при применении тестовой части в подобранной модели линейной регрессии, представленной на рисунке 5, MSE составил 0,972, и модель могла предсказать 92,6% изменчивости использования печи. в тестовой части.

5.1.2– Дерево регрессии

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

Рисунок 6 показывает, что минимальная MSE части поезда была получена при максимальной глубине дерева 5, другими словами, деревья с глубиной выше этого числа соответствуют модели.

В конце были созданы две модели для дерева регрессии, а сводка ошибок при применении обучающей и тестовой частей представлена ​​в таблице 6.

Дерево регрессии с 4 глубинами представлено на рис. 7.

Для сгенерированных деревьев только средняя дневная температура наружного воздуха имела определенное значение для прогнозирования использования печи.

5.1.3– Регрессор опорных векторов (SVR)

Для регрессора опорных векторов использовался GridSearchCV для поиска оптимальных гиперпараметров в заранее определенной сетке («ядро»: [«линейный», «rbf», «сигмоид»] , «C»: [0,1, 1,0, 10, 100]), чтобы иметь наименьшую среднюю ошибку в наборах проверки, выполнив перекрестную проверку (CV) с 10-кратным увеличением в части поезда (масштабированный кадр данных, видя, что SVR учитывает расстояние).

Лучшие гиперпараметры SVR в предварительно определенном списке представлены в таблице 7.

Для оптимальных гиперпараметров (C = 10 и kernel = 'rbf') была подобрана модель SVR на основе обучающей части, а после применения тестовой части для оценки эффективности прогнозирования результаты приведены в таблице 8. .

Таблица 8 показывает, что применение тестовой части в подобранной модели SVR с оптимальными гиперпараметрами, представленными в Таблице 7, MSE составило 0,962, и эта модель могла предсказать 95,77% изменчивости использование печи в тестовой части.

5.1.4– Сводка всех разработанных регрессорных моделей машинного обучения для прогнозирования использования печи (количественное)

В этом подразделе представлена ​​сводка всех моделей машинного обучения, разработанных на основе поездной части для количественного (числового) прогнозирования использования печи. Таблица 9 и Рисунок 8 показывают сравнение производительности моделей, в основном при прогнозировании тестовой части.

Основываясь на результатах, представленных в таблице 8 и рисунке 9, модель регрессора с усилением градиента с n_estimator = 70 показала наилучшую производительность (самая низкая MSE) для прогнозирования тестовой части.

5.2– Использование печи как качественная (категориальная) переменная ответа

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

В Таблице 9 также можно убедиться, что типы фильтров и пола были почти одинаково распределены в поезде и тестовой части.

Важно отметить, что логистическая регрессия не рассматривалась, потому что этот метод статистического обучения применим только для прогнозирования категориального ответа только с двумя классами, тогда как LDA не использовался, потому что этот метод предполагает нормальное распределение независимых переменных, и это было проверено. изначально «HumidityOut» не принимает во внимание это предположение.

5.2.1– Гауссовский наивный байесовский метод

Для Gaussian Naïve Bayes он был применен непосредственно к масштабированной части поезда, чтобы получить его подогнанную модель. После этого была применена масштабированная тестовая часть, и точность была получена, как показано в Таблице 10.

Таблица 10 показывает, что гауссовская наивная байесовская модель, подобранная на основе части поезда, правильно предсказала только 46,2% всех классов (диапазонов) использования печи. Что касается оценки предсказания каждого класса тестовой части, это можно проверить в матрице путаницы, представленной в Таблице 11.

В матрице путаницы диагональ представляет количество правильных предсказаний каждого класса. Кроме того, сумма в каждом столбце указывает общее значение в тестовой части, тогда как каждая строка указывает общее значение, предсказанное для каждого класса. На основании этого можно заключить в Таблице 11, что подогнанная модель правильно предсказала 105 из 121 (105 + 16) наблюдений «без использования печи» в тестовой части, но модель была невозможно правильно предсказать ни одно из 59 наблюдений «C — 2 часа ‹ Fusage ‹ = 4 часа».

5.2.2– Классификатор случайного леса

Для классификатора случайного леса это первоначально было сделано с масштабированными кадрами данных с некоторым анализом чувствительности по количеству оценок (n_estimator) с использованием Bootstrap с 50 рандомизированными выборками в части поезда, чтобы определить оптимальное количество этого, чтобы подразумевать наименьшую ошибку классификации. Результаты этой чувствительности представлены на Рис. 10.

Рисунок 10 показывает, что минимальная ошибка классификации была получена с 200 оценщиками, и это было создано, чтобы подогнать модель к поездной части. Суммарная точность этой модели при применении тестовой части представлена ​​в таблице 12.

Таблица 12 показывает, что модель случайного лесного классификатора (с оценкой 200), подобранная на основе части поезда, правильно предсказала 73,88% классов использования печи (диапазонов). Что касается оценки предсказания каждого класса тестовой части, матрица путаницы представлена ​​в таблице 13.

Матрица путаницы, представленная в Таблице 12, показывает, что большинство классов были предсказаны правильно, в основном «Без использования печи» со 115 из 121 (115 + 5 + 1). Кроме того, модель правильно предсказала как минимум одно наблюдение в каждом классе в тестовой части.

Что касается наиболее важных независимых переменных в модели, на рисунке 11 показан процент влияния на реакцию модели.

Рисунок 12 показывает, что средняя дневная температура наружного воздуха является наиболее важной переменной для прогнозирования использования печи, за ней следует влажность наружного воздуха (28 %). Пол, как и ожидалось, на основе визуальных исследований, представленных в предыдущей статье (Ref.[1]), оказывает наименьшее влияние.

5.2.3– Классификатор KNN

Для классификатора KNN использовался GridSearchCV для поиска оптимальных гиперпараметров в заранее определенной сетке («n_neighbors»: список (диапазон (1,101,2)), «алгоритм»: ['auto','ball_tree','kd_tree' ,'грубая']), чтобы иметь наименьшую среднюю ошибку классификации в наборах проверки путем выполнения перекрестной проверки (CV) с 10-кратным повторением в части поезда (масштабированный кадр данных, видя, что классификатор KNN учитывает расстояние).

Для оптимальных гиперпараметров (n_neighbors = 11 и алгоритм = 'auto') модель классификатора KNN была подобрана на основе части поезда, а после ее применения была применена тестовая часть для оценки эффективности прогнозирования, результаты которой обобщены в Таблица 13.

Таблица 13 показывает, что модель классификатора KNN (с 11 соседями и «автоматическим» алгоритмом), подобранная на основе части поезда, правильно предсказала 70% классов использования печи (диапазонов). Что касается оценки предсказания каждого класса тестовой части, матрица путаницы представлена ​​в таблице 14.

Матрица путаницы, представленная в Таблице 14, показывает, что большинство классов были предсказаны правильно, в основном «Без использования печи» со 115 из 121 (115 + 6). Однако модель не предсказывала использования печи более 14 часов.

5.2.4– Сводка всех разработанных моделей классификатора ML для прогнозирования диапазона использования печи

В этом подразделе представлена ​​сводка всех моделей машинного обучения, разработанных на основе поездной части для качественного (категориального) прогнозирования использования печи. Таблица 15 и Рисунок 12 показывают сравнение производительности моделей, в основном при прогнозировании тестовой части.

Основываясь на результатах, представленных в таблице 15 и рисунке 12, модель классификатора случайного леса с n_estimator = 200 показала наилучшую производительность (наивысшая точность 74,4%) для прогнозирования теста. часть, но классификатор Gradient Boosting Classifier с n_estimator = 50 показал аналогичную точность (73,7%). Однако классификатор Gradient Boosting Classifier не смог предсказать использование печи более 14 часов. Gaussian Naïve Bayes была единственной моделью, способной правильно предсказать два наблюдения использования печи более 14 часов, но ее общая точность составила всего 46,2% для предсказания тестовой части.

6. Выводы

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

Для прогнозирования использования печи модели регрессора ML показали лучшую производительность, чем модели классификатора ML (R2squared по сравнению с точностью).

Лучшими моделями регрессора ML для численного прогнозирования использования печи в тестовой части были Gradient Boosting Regressor (n = 70) со MSE 0,547 (R2quared 95,8%), но SVR (kernel = rbf, C = 10) и Random Forest Regressor. (n = 40) также показали аналогичные результаты.

Для классификаторов ML, чтобы предсказать использование печи как категорическое в тестовой части, классификатор случайного леса (n = 200), который представил самую высокую точность (74,4% от общего числа классов, предсказанных правильно), и эта модель была способна правильно предсказать в тесте часть по крайней мере одно наблюдение каждого класса.

Модель случайного лесного классификатора показала, что наиболее важной переменной в прогнозировании использования печи была средняя дневная температура наружного воздуха с 70% значимости. Влажность наружного воздуха влияет на использование печи на 28%.

7. Ссылки

1. Насименто, Карлос. Использование печи и кондиционера на основе среднесуточной температуры в Калгари и других параметров (например, типа пола и фильтра). Опубликовано на Medium 15 февраля 2022 г. »

2. Чжан, К., Примечания к DATA 607, Статистическое и машинное обучение — зима 2023 г., Университет Калгари.

3. Цзян В., Примечания к DATA 606, Статистические методы в науке о данных — зима 2023 г., Университет Калгари.

4. Nascimento, C., Archbong, E., Khan, M.A., Sajid, H. and Hossain, S. Госпитализация пациентов с сердечно-сосудистыми заболеваниями с использованием статистических методов и методов машинного обучения. Отчет о проекте Data 607 — зима 2023 г. Университета Калгари, апрель 2023 г.