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

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

Человек оказывает значительное влияние на уровень загрязнения. Пандемия Covid-19 показывает, в какой степени наше поведение коррелирует с загрязнением воздуха в наших городах.В марте 2020 года в Барселоне уровень NO2 снизился на 64% до уровней, которые ранее считались недоступный. Объедините этот результат со знанием того, что многочисленные исследования показали, что загрязнение NO2 связано с такими проблемами со здоровьем, как диабет, гипертония, инсульты, хроническая обструктивная болезнь легких и астма.

Проблема загрязнения, с которой мы сталкиваемся в наших городах, важна, и последствия успеха или неудачи будут ощущаться всеми. Чтобы узнать, чем мы можем помочь, мы объединили свои усилия с 300 000 км/с, аналитическим центром городского планирования Барселоны, который работает с интеллектуальными данными для городов. Мы стремились разумно использовать данные, чтобы городские архитекторы могли принимать более обоснованные решения при рассмотрении загрязнения воздуха. При обилии данных с самого начала возникают важные вопросы: какие данные актуальны? Как сделать данные умными?

Наш подход

Наше путешествие началось за кухонным столом Эстев, когда мы обсуждали различные варианты впечатляющего и захватывающего проекта, которым завершится получение нами степени магистра бизнес-аналитики. Мы быстро остановились на теме умных городов — области, в которой Эстев провел недавнее исследование. Эстев связалась с Маром и Пабло, соучредителями компании 300 000 км/с. Вместе с Эстев они помогали и поддерживали нас на протяжении всего этого восьмимесячного путешествия и своим опытом направляли нас, когда мы сбивались с пути. Без них мы бы не зашли так далеко.

Мы начали наш проект с набора данных, предоставленного скоростью 300 000 км/с. Этот набор данных содержал сводные данные о передвижениях людей по Испании, собранные на основе данных о перемещении мобильных устройств. Испания была разделена примерно на 2500 регионов, и все поездки между этими регионами собирались. Ученые давно показали, что NO2 тесно связан с поездками (в первую очередь, с дизельными автомобилями). Чтобы подкрепить наши исходные данные, мы добавили многочисленные экологические статистические данные. Они варьировались от количества людей в каждой возрастной группе, проживающих в этих районах, до среднего дохода.

Пандемия Covid-19 показывает, в какой степени наше поведение связано с загрязнением воздуха в наших городах.

Чтобы точно предсказать уровни NO2 во многих районах Испании, нам нужно было подумать о методах моделирования. В нашей модели использовалось сочетание стандартных и необычных методов машинного обучения. Мы использовали корреляционные матрицы, деревья регрессии случайного леса, представления на основе графов и пространственные лаговые функции от начала до конца. Пока мы пытались оптимально использовать данные, Андре, специалист по данным со скоростью 300 000 км/с, познакомил нас с концепцией пространственного отставания. Эта функция наилучшим образом использует силу имеющихся у нас данных, а именно географическую информацию. Таким образом, мы могли бы ввести «пространственность» в наш словарь машинного обучения.

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

Нашим конечным результатом стала модель, в которой использовалась наилучшая комбинация «нормальных» и «пространственно-запаздывающих» функций для прогнозирования уровней NO2 в Испании. Мы начали наш первоначальный поиск наилучшей возможной модели для 30+ признаков и закончили моделью, которая использует восемь признаков для прогнозирования содержания NO2 в Испании. Оценка Морана I и множественные попытки между различными функциями имеют пространственную задержку. Мы получили модель с точностью 88,8% для прогнозирования уровней NO2 по всей Испании. Мы обнаружили, что процент площади, используемой для жилых зданий, и количество домов площадью от 61 до 90 м2 являются наиболее сильными предикторами уровней NO2. Другими известными предикторами были дома площадью от 45 до 60 м2 и количество людей в возрасте от 0 до 25 лет на квадратный километр. Таким образом, мы могли с точностью прогнозировать уровни NO2, используя в первую очередь информацию о жилых помещениях. Это понимание показывает, как городское планирование влияет на удобство жизни.

resall =pd.DataFrame()
res_w1 =pd.DataFrame()
from sklearn.ensemble import RandomForestRegressor
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score

seed=7

kfold=KFold(n_splits=10, random_state=seed, shuffle = True)

num_trees=100
num_features=5
max_depth = 5
model12=xgb.XGBRegressor(colsample_bytree=0.4,
                 gamma=0,                 
                 learning_rate=0.07,
                 max_depth=3,
                 min_child_weight=1.5,
                 n_estimators=10000,                                                                    
                 reg_alpha=0.75,
                 reg_lambda=0.45,
                 subsample=0.6,
                 seed=42) 
model12.fit(mix_matrix,Y)

results_NO2_avg=cross_val_score(model12, mix_matrix, Y, cv=kfold)

print(f'Random Forest - Accuracy {results_NO2_avg.mean()*100:.3f}% std {results_NO2_avg.std()*100:3f}%')

res_w1["Res"]=results_NO2_avg
res_w1["Type"]="Random Forest"

resall=pd.concat([resall,res_w1], ignore_index=True)

Случайный лес — точность 88,876%, стандартное значение 1,376834%

plt.figure(figsize=(30,9))

for name, importance in zip(names, model12.feature_importances_):
    print(f'{name:15s}  {importance:.4f}')

sns.barplot(x=names, y=model12.feature_importances_)

доход_лаг 0,0429
наб_продажа_лаг 0,0842
less45m2_per_km2 0,0765
med_small_per_km2 0,1632
большой_med_per_km2 0,2218
more90m2_per_km2 0,0553
young_c 6_per_km2_lag4
0,14 жилье

pred2 = model12.predict(mix_matrix)

abs_diff2 = abs(Y-pred2)/Y
abs_diff2 = pd.DataFrame(abs_diff2)

abs_diff2 = abs_diff2.merge(df_tryout.geometry, how = 'left', left_index = True, right_index = True)
abs_diff2

abs_diff2 = gpd.GeoDataFrame(abs_diff2, crs="EPSG:4326", geometry='geometry')
abs_diff2.NO2_avg = np.clip(abs_diff2.NO2_avg, 0, 1)
fig, ax = plt.subplots(1, figsize=(30, 20))
abs_diff2.plot(column='NO2_avg', cmap='gist_yarg', linewidth=0.8,ax = ax, legend=True)

Ключевой вывод

Мы сформулировали цель этого проекта, задав два вопроса: Какие данные актуальны? Как сделать данные умными? Теперь мы можем ответить на оба вопроса, но для этого нам нужно сделать шаг назад.

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

Итак, есть ли способ избежать этого сценария?Нужны ли нам все эти данные? Другими словами, какие решения можно принять на основе модели?

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

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

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

Заключительные соображения

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

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