Индия является страной в мире, которая ежегодно переживает самые катастрофические наводнения. В больших городах обычно происходит заболачивание в низменных районах. Кроме того, в увеличении заболачивания виноваты несколько важных факторов, включая поверхностный сток, относительную высоту и недостаточный путь для выхода воды. Прогнозирование наводнений очень важно. В Индии наводнение представляет собой серьезное бедствие, наносящее серьезный ущерб всей биосфере. Для прогнозирования и снижения риска наводнения необходимо разработать метод прогнозирования наводнения. Для этого проекта они выбрали KERALA STATE, чтобы максимально использовать встроенную систему, как указано в отчете об исследовании.

прогнозирование наводнений с использованием логистической регрессии для штата Керала-IJERTCONV9IS03010.pdf (исследовательская работа)

Отчет новостей BBC

Почему наводнение в Керале оказалось таким смертоносным — BBC News

Наводнения в южном индийском штате Керала с июня унесли жизни более 350 человек. Навин Сингх Хадка из BBC объясняет, почему на этот раз они были такими смертоносными.

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

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

С 42 баллами он занял 12-е место. В тройку штатов вошли Гуджарат на западе, Мадхья-Прадеш в центре и Андхра-Прадеш на юге с 79, 69 и 68 баллами соответственно.

Официальные лица и эксперты заявили, что наводнения в Керале, через которую протекают 44 реки, не были бы такими сильными, если бы власти постепенно сбрасывали воду как минимум из 30 плотин.

«Этого можно было бы избежать, если бы операторы плотин начали сбрасывать воду заранее, а не ждать, пока плотины будут заполнены, когда у них нет другого выбора, кроме как сбросить воду», — сказал Химаншу Таккар, эксперт по водным ресурсам Южно-Азиатской сети. Плотины, реки и люди.

Искусственный интеллект необходим для прогнозирования наводнений:

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

Традиционные методы, используемые для прогнозирования наводнений:

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

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

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

Определите бизнес-проблему:

наша бизнес-проблема определена из следующей статьи

Почему наводнение в Керале оказалось таким смертоносным — BBC News

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

Идентификация источника данных

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

Выберите данные

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

Набор данных для этой задачи предоставлен на сайте Kerala Flood | Kaggle

Краткое изложение данных

набор данных содержит 118 строк и 16 столбцов. информация столбца выглядит следующим образом

Очистка данных

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

Большинство реальных данных, которые мы получаем, беспорядочны, поэтому нам нужно очистить эти данные, прежде чем вводить их в нашу модель машинного обучения.

Преобразование данных

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

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

Данные баланса

наши занятия сбалансированы

Анализ данных

  1. В каком году в Керале выпадает больше всего осадков?

В 1920 и 1961 годах было наибольшее количество осадков.

2. В какие месяцы выпадает максимальное количество осадков?

  • Июль и август, казалось, имели больше осадков
  • В 1925 году в штате в июле было больше дождей.

3.Какова краткосрочная и долгосрочная тенденция?

Мы использовали 5-летний интервал для краткосрочного тренда осадков, чтобы обеспечить лучшую визуализацию. График показывает тенденцию к снижению, что указывает на то, что осадки со временем испаряются. Данные за последние годы указывают на тенденцию к увеличению количества осадков, поэтому существует вероятность того, что количество осадков может увеличиться в ближайшие 5-10 лет.

Скользящее среднее за 10 лет используется для определения долгосрочной тенденции количества осадков. Есть вероятность, что количество осадков в Керале увеличится в течение следующих 10-20 лет.

4.Какова связь между экстремальными ливнями и наводнениями?

Цифра «0» означает отсутствие затопления, тогда как «1» означает наличие затопления. График показывает, что годовое количество осадков в 3000 см является ключевым значением для прогнозирования наводнений. Большинство наводнений вызвано годовым количеством осадков более 3000 см; ниже указывается безопасная зона.

Набор данных наводнения состоит из помеченных обучающих данных, которые можно классифицировать по бинарной классификации. Мы можем определить наилучшие параметры модели для прогнозирования неизвестных меток на других объектах (данных), подбирая набор обучающих данных. Этого можно достичь, используя традиционные алгоритмы машинного обучения, такие как SVM, KNN и Naïve Bayes.

СОЗДАТЬ МОДЕЛЬ МАШИННОГО ОБУЧЕНИЯ

  • Разделение набора данных

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

Библиотека scikit-learn предоставляет нам модуль model_selection, в котором у нас есть функция разделения train_test_split().

from sklearn import neighbors
from sklearn.model_selection import train_test_split
x_train,x_test,y_train,y_test = train_test_split(data_inputs,data_outputs,test_size=0.3,random_state=0)

ФУНКЦИЯ МАСШТАБИРОВАНИЯ ДАННЫХ (нормализация)

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

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

Масштабирование функции необходимо, потому что:

  • На коэффициенты линейных моделей влияет масштаб переменной.
  • Переменные с большей величиной преобладают над переменными с меньшей величиной
  • Градиентный спуск сходится намного быстрее на масштабированных данных
  • Масштабирование функций сокращает время поиска векторов поддержки для SVM.
  • Евклидовы расстояния чувствительны к величине объекта.
  • PCA требует, чтобы функции были центрированы на 0. — вычислить данные

MinMaxScaler — это обучаемая функция Scikit для нормализации.

from sklearn.preprocessing import MinMaxScaler
minmax = MinMaxScaler()
x_train_normal = minmax.fit_transform(x_train)
x_test_normal = minmax.transform(x_test)

Модели машинного обучения, на которые влияет шкала признаков: — Линейная и логистическая регрессия — Нейронные сети — Машины опорных векторов — KNN — Кластеризация K-средних — Анализ основных компонентов (PCA)

Стандартизация

С другой стороны, стандартизация или нормализация Z-оценки — это еще один метод масштабирования, при котором значения в столбце масштабируются таким образом, чтобы они демонстрировали свойства стандартного распределения Гаусса, то есть среднее значение = 0 и дисперсия = 1.

StandardScaler — это обучающая функция Scikit для стандартизации.

from sklearn.preprocessing import MinMaxScaler
minmax = MinMaxScaler()
x_train_normal = minmax.fit_transform(x_train)
x_test_normal = minmax.transform(x_test)

Алгоритмы машинного обучения, использованные в этом проекте:

KNN, логистическая регрессия и классификация опорных векторов,

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

КЛАССИФИКАТОР КНН

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

Алгоритм ближайшего соседа:

Ближайший сосед — это частный случай класса k ближайших соседей. Где значение k равно 1 (k = 1). В этом случае новый целевой класс точки данных будет назначен 1-му ближайшему соседу.

Метрики для алгоритмического сравнения

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

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

Матрица путаницы

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

TP FN FP TN, где TP = истинно положительный; FN = ложноотрицательный результат; FP = ложноположительный результат; TN ¼ истинно отрицательный. TP и TN обозначают количество случаев, которые были правильно классифицированы как отсутствие наводнения и возникновение наводнения соответственно. FP и FN означают количество случаев, которые были ошибочно классифицированы как отсутствие наводнения и возникновение наводнения соответственно.

AUC (площадь под ROC-кривой)

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

Отличная модель имеет AUC, близкую к 1, что означает хорошую степень разделимости. Плохая модель имеет AUC около 0, что означает, что она имеет наихудший показатель разделимости. На самом деле, это означает, что он отвечает взаимностью на результат. Он предсказывает 0s как 1s и 1s как 0s. И когда AUC равен 0,5, это означает, что модель вообще не имеет возможности разделения классов.

точность и полнота

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

ЛОГИСТИЧЕСКАЯ РЕГРЕССИЯ

Логистическая регрессия — это алгоритм классификации. Он используется для прогнозирования бинарного результата на основе набора независимых переменных.

Итак, что это значит? Бинарный результат – это вариант, в котором возможны только два сценария: либо событие происходит (1), либо не происходит (0). Независимые переменные — это переменные или факторы, которые могут повлиять на результат (или зависимая переменная).

Точность тестовых данных

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

Точность данных о поездах

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

Классификация опорных векторов

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

Окончательная точность наших моделей: сравнение всех моделей прогнозирования

Кажется, логистическая регрессия работает лучше.

использованные исследовательские работы

jwc0111766.pdf

прогнозирование наводнений с использованием логистической регрессии для штата Керала-IJERTCONV9IS03010.pdf

Заключение:

Эта система прогнозирования обеспечивает 94% точности. Таким образом, эта модель оказывается весьма полезной для дальнейших исследований и внедрения предотвращения или раннего оповещения о наводнениях.

Вы можете связаться здесь

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