Представлено: Сиддхарт Сингараджу, Шупинг Ван, Приядаршани Докхале, Рэй Коден Меркуриус
Всем привет, мы инженеры-строители из Университета Торонто. В этой статье мы дадим краткое представление о том, что мы, как энтузиасты Data Science, сделали, пытаясь проанализировать Bike Share Toronto.
В современном мире каждая фирма, город, страна тем или иным образом сосредоточились на сокращении выбросов, пытаясь выбрать более экологичные альтернативы, обеспечивающие оптимальные решения для роста и наносящие минимальный ущерб окружающей среде. Одним из этих бесчисленных усилий является внедрение программы Bike Share в Торонто с благородной целью снижения зависимости от автомобилей, автобусов и метро, улучшения качества воздуха и укрепления здоровья и физической формы жителей.
Однако любой проект должен быть экономически целесообразным и способствовать росту городов. Следовательно, крайне необходимо выяснить, насколько хорошо работают такие проекты, как «Bike Share Toronto», и что еще можно сделать для их улучшения. С этой мотивацией, как команда инженеров-строителей, мы чувствовали, что анализ «Набора данных по велопрокату в Торонто» поможет нам найти соответствующую информацию, которая поможет нам улучшить «Программу велопроката в Торонто».
Предыстория:
Велопрокат идеально подходит для коротких поездок по городу. Водители используют велопрокат для поездок на работу или на отдых — например, по делам, на встречи или встречи с друзьями. Прокат велосипедов также может помочь вам добраться до общественного транспорта. Кроме того, многие используют велопрокат просто для занятий спортом или прогулок по городу.
По состоянию на декабрь 2022 года Bike Share Toronto предлагает круглосуточный удобный доступ к 7 185 велосипедам и 630 станциям на площади 200 км2 города. Bike Share Toronto, объединив жителей города Торонто и его окрестностей, предоставил доступный и недорогой транспорт, который снижает заторы на дорогах и загрязнение воздуха по сравнению с использованием личных транспортных средств.
Люди могут пользоваться этой услугой с оплатой по факту использования или приобретая годовое членство. Все подробности о членстве и стоимости различных планов можно найти на их официальном сайте. Вот ссылка: https://bikesharetoronto.com/pricing/
Для получения дополнительной информации вы также можете побродить по веб-сайту Bike Share Toronto и ознакомиться с ним. Вот ссылка на их основной сайт: https://bikesharetoronto.com/
Цель проекта:
Двумя основными целями этого исследования являются:
- Проанализируйте набор данных велопроката, чтобы понять влияние различных факторов на спрос и использование велопроката в Торонто.
- Создайте проверенные модели, которые могут обеспечить надежные прогнозы спроса и использования велопроката в Торонто.
Обзор проекта:
В нашем проекте сначала мы попытались очистить и объединить данные, что, на наш взгляд, является самой трудоемкой и скучной, но самой важной частью. Без структурированного набора данных для работы становится трудно или, скорее, невозможно выполнить даже базовый объем EDA. Для тех, кто не знает, что такое EDA, он называется Исследовательский анализ данных. Здесь вы можете перейти по этой ссылке и получить больше информации об этом: https://towardsdatascience.com/exploratory-data-analysis-8fc1cb20fd15
После этого, имея структурированный набор данных, мы провели EDA, обнаружили потенциальные велосипедные станции, которые можно расширить, а также построили модели для прогнозирования использования велосипедов.
Итак, вкратце, схема нашего проекта такова:
- Начальное слияние данных и структурирование данных
- Исследовательский анализ данных
- Геопространственный анализ и определение велостанций, которые имеют потенциал для расширения.
- Прогноз использования велосипеда
Описание данных:
Итак, прежде чем вдаваться в подробности, о том, что мы анализируем из данных. Нам нужно понять, что именно находится в наборах данных.
Итак, для начала у нас есть два типа данных: исторические и неисторические. Неисторические данные содержат информацию обо всех станциях проката велосипедов и их местоположении, а также идентификатор станции и другие географические данные, которые на самом деле не имеют ничего общего со временем, то есть не временные данные или пространственные данные. Мы будем использовать данные этих станций для геопространственного анализа. Не волнуйтесь, если вы не знаете, что такое геопространственный анализ, это просто причудливый способ анализа данных относительно местоположения и географических точек. Здесь прочитайте эту статью для получения дополнительной информации: https://www.heavy.ai/technical-glossary/geospatial-analytic
Исторические данные включают данные о пассажиропотоке велосипедных поездок, которые ведутся Bike Share Toronto и City of Toronto, а также данные о погоде, поддерживаемые Отделом окружающей среды и природных ресурсов Канады.
Вот обзор каждого типа набора данных.
- Данные о пассажирах или данные о поездках. Хотя программа проката велосипедов в Торонто действует уже около 10 лет, данные о поездках собираются только с января 2017 года. Этот набор данных обновляется каждый месяц на их веб-сайте. Вы можете получить данные отсюда: Bike Share Toronto Ridership Data — City of Toronto Open Data Portal. Для нашего проекта у нас было 70 файлов CSV (около 2,4 ГБ) с данными о пассажиропотоке с января 2017 года по октябрь 2022 года.
- Данные о погоде: как и в случае с данными о пассажирах, для анализа данных мы используем 70 файлов CSV (по одному на каждый месяц с января 2017 года по октябрь 2022 года). Вы можете получить данные отсюда: Почасовой отчет за 01 декабря 2021 г. — Климат — Окружающая среда и изменение климата Канады (weather.gc.ca).
- Данные о станциях: данные о станциях включают информацию о станциях проката велосипедов, такую как широта, долгота и пропускная способность станций.
Особенности данных о поездках:
- Идентификатор поездки: уникальный идентификатор для каждой поездки (trip_id в наборах данных 2017 и 2018 годов).
- Продолжительность поездки: продолжительность поездки, измеряемая в секундах (trip_duration_seconds в наборах данных 2017 и 2018 годов).
- Идентификатор начальной станции: идентификатор станции, с которой началось путешествие (from_station_id в наборах данных 2017 и 2018 годов).
- Время начала: время начала поездки (trip_start_time в наборах данных 2017 и 2018 годов).
- Название начальной станции: название станции, с которой началось путешествие (from_station_name в наборах данных 2017 и 2018 годов).
- Идентификатор конечной станции: идентификатор станции, на которой закончилась поездка (to_station_id в наборах данных 2017 и 2018 годов).
- Время окончания: время окончания поездки (trip_stop_time в наборах данных 2017 и 2018 годов).
- Название конечной станции: название станции, на которой закончилась поездка (to_station_name в наборах данных 2017 и 2018 годов).
- Идентификатор велосипеда: уникальный идентификатор каждого велосипеда в обращении (не входит в наборы данных 2017 и 2018 годов)
- Тип пользователя: определите, есть ли у пользователя членство или он приобрел пропуск (user_type в наборах данных 2017 и 2018 годов).
Особенности данных о погоде:
- Долгота (x): координаты долготы климатической станции.
- Широта (y): координаты широты климатической станции.
- Название станции: официальное название метеорологической станции.
- Climate ID: 7-значный номер, присвоенный официальному сайту наблюдения за погодой.
- Дата/время: дата и время измерения.
- Год: год измерения
- Месяц: месяц измерения.
- День: день измерения.
- Время: время измерения.
- Температура (°C): температура в градусах Цельсия.
- Временный флаг: нет данных
- Температура точки росы (°C): температура точки росы в градусах Цельсия.
- Флаг температуры точки росы:нет данных
- Rel Hum (%): относительная влажность в процентах.
- Флажок Rel Hum: нет данных
- Направление ветра (10 градусов): направление, откуда дует ветер.
- Флаг направления ветра: нет данных
- Скорость ветра (км/ч): скорость движения воздуха в километрах в час.
- Флаг скорости ветра: нет данных
- Видимость (км): расстояние, на котором можно увидеть и идентифицировать объекты подходящего размера.
- Флажок видимости: нет данных
- Стн Давление (кПа): атмосферное давление в килопаскалях (кПа) на высоте станции.
- Флажок Stn Press: нет данных
- Hmdx: индекс, показывающий, насколько жаркой или влажной погода кажется обычному человеку.
- Флаг Hmdx: нет данных
- Wind Chill: индекс, показывающий, насколько холодна погода для обычного человека.
- Флажок Wind Chill: нет данных
- Погода. Наблюдения за атмосферными явлениями, в том числе за погодными явлениями и препятствиями для обзора.
Особенности данных станций:
Необработанные данные, предоставленные городом, содержат несколько файлов и разные типы данных. Были также такие проблемы, как непротиворечивость информации, выбросы, отсутствующие данные, неформальные форматы даты и времени и неясные/разные часовые пояса. Во время обработки и очистки данных файлы были объединены в общие фреймы данных.
Таким образом, наши окончательные trips_data после некоторого предварительного слияния и структурирования выглядели примерно так:
И для парней, занимающихся наукой о данных, которые действительно хотят увидеть код. Ну вот:
Из кода видно, что мы переименовываем и переиндексируем столбцы в соответствии с определенным форматом. Мы также удалили ненужные столбцы в некоторых файлах. После этого мы меняем и редактируем часовые пояса, чтобы сохранить единообразие времени во всем фрейме данных. Эти небольшие изменения вносятся в каждый из этих 70 CSV-файлов путем создания циклов for и обработки данных из года в год.
Теперь давайте поговорим о более веселой части, то есть о EDA.
Исследовательский анализ данных:
Тенденции в велоспорте
Когда у нас будут уточненные наборы данных, следующим шагом будет проведение исследовательского анализа данных, чтобы найти функции, которые существенно влияют на совместное использование велосипедов в центре Торонто.
Как показано на рисунках выше, поездки на велосипедах в центре Торонто с четкой сезонной закономерностью имеют общую тенденцию к увеличению с 2017 по 2022 год.
Показано, что велопрогулки как с годовым, так и со случайным членством демонстрируют растущую тенденцию. Однако количество поездок по случайным подпискам росло значительно быстрее, чем по годовым подпискам. До 2020 года количество поездок на велосипеде случайных участников всегда было ниже, чем количество поездок ежегодных участников. Впервые количество поездок в рамках случайного членства превысило количество поездок в рамках годового членства в 2020 году. В 2022 году количество поездок в рамках случайного членства было значительно больше, чем в рамках годового членства.
И ежегодные, и случайные участники совершают больше поездок в теплые месяцы.
Структура ежемесячных поездок с 2017 по 2021 год также указывает на то, что жители Торонто, как правило, чаще используют общие велосипеды в теплое время года. Следует отметить, что в мае 2021 года произошло нехарактерное падение пассажиропотока. Вероятно, это связано с распоряжением правительства Торонто оставаться дома.
Эта цифра наглядно демонстрирует влияние пандемии COVID-19 на велопрокат. Пандемия разразилась в 2020 году. В 2020 году произошло нехарактерное снижение количества поездок от ежегодных участников.
Согласно рисунку выше, пользователи с годовой подпиской совершают больше поездок в рабочие дни, чем в выходные. Напротив, пользователи со случайным членством совершают значительно больше поездок по выходным. Это указывает на разницу в целях велопрогулок годовых членов и случайных членов. Это может свидетельствовать о том, что случайные участники используют общие велосипеды в основном для отдыха, а ежегодные участники, как правило, используют общие велосипеды для поездок на работу. Кроме того, в среду наблюдается очевидный пик случайных поездок, что вызвано событием Free-Ride Wednesdays. Напротив, бесплатные поездки по средам не приводят к существенному изменению количества поездок по сравнению с ежегодными поездками.
Этот рисунок дает представление об изменении поведения пользователей с 2017 по 2022 год. С 2017 по 2019 год в рабочие дни было зарегистрировано больше поездок, а в выходные — меньше. Однако с 2022 года количество поездок по выходным было даже выше, чем в рабочие дни. Это может свидетельствовать о том, что все больше жителей Торонто, как правило, используют общие велосипеды для отдыха по выходным. Это согласуется с выводом о том, что количество поездок от случайных участников значительно увеличилось с 2022 года. Таким образом, это, вероятно, вызвано увеличением доли случайных участников среди пользователей.
По сравнению со случайными участниками, ежегодные участники чаще используют велосипеды в часы пик. Это также подтверждает вывод о том, что ежегодные участники используют общие велосипеды в основном для поездок на работу.
Показано, что средняя продолжительность поездки была больше в теплые месяцы. Это может указывать на то, что пользователи не предпочитают ездить в течение длительного времени в холодные месяцы из-за снега и низких температур.
Эта цифра показывает, что пассажиропоток ежегодных участников остается довольно стабильным в течение всего года. Вероятно, это связано с их транспортными целями. Это также показало, что случайные участники имеют значительно более длительную продолжительность поездок, чем ежегодные участники. Это также можно объяснить разными целями, поскольку причинные участники склонны использовать велосипеды для отдыха, что обычно требует больше времени, чем для поездок на работу.
Это показывает, что неблагоприятные погодные условия (например, дождь, туман и снег) могут значительно снизить количество поездок в час. Среди них снег оказывает наиболее значительное негативное влияние на почасовые поездки.
Это показывает, что существует отрицательная корреляция между скоростью ветра и часовыми поездками.
Это показывает, что пользователи не любят ездить в очень холодных или жарких погодных условиях. Как показано выше, температура положительно коррелирует с часовыми поездками в диапазоне температур от -20 до 20 градусов по Цельсию. Однако при температуре выше 20 градусов по Цельсию температура отрицательно коррелирует с часовыми поездками.
Он показывает четкую отрицательную корреляцию между скоростью ветра и средней продолжительностью поездки в час.
Анализ уровня станции
Теперь давайте разберемся с распределением станций по городу Торонто.
- Станции. Во-первых, мы хотели провести предварительный анализ, чтобы понять, где находятся самые популярные станции. Мы использовали trips_data и отсортировали по самой популярной начальной станции, и аналогичная процедура выполняется для конечной станции.
Здесь мы видим, что большинство станций были расположены в центре города. В течение шести лет данных самые популярные станции сосредоточены вокруг центра города, как правило, рядом с крупной транзитной станцией или местами отдыха, такими как парк HTO.
2. Популярные маршруты. Наиболее часто используемые маршруты проходят на большие расстояния и обслуживают весь город, а не только его центральную часть. Кроме того, мы можем заметить, что это поездки в один конец, используемые для поездок на работу. Самый популярный из этих маршрутов начинается на пляже Черри и заканчивается в парке Томми Томсон.
3. Возможность расширения станции: мы определили пропускную способность каждой станции, используя открытые данные. Из trips_data количество почасовых поездок, которые начинаются с велосипедной станции, и количество раз, когда она превышала пропускную способность. Затем мы провели повторную выборку этих данных в течение года и посчитали станцию с превышением лимита подписки/использовали ее в качестве маркера для станции, пропускная способность которой может быть превышена. Мы обнаружили, что 24 станции превышали свою мощность не менее чем в 40 раз в течение года.
Теперь, когда мы знаем, где превышена пропускная способность, мы нанесли на карту школы вокруг этих станций с превышением подписки, а также станции TTC, которые находятся поблизости. Возможно, было бы разумно рассмотреть вопрос о строительстве новой станции поблизости или расширении пропускной способности существующих в районах, окружающих эти переполненные станции, которые находятся в радиусе 1 км и имеют школу или остановку TTC.
Создание моделей прогнозирования:
Здесь мы будем строить и анализировать различные модели, чтобы прогнозировать количество поездок в будущем. Наша цель — сравнить архитектуры моделей и факторы, влияющие на их производительность. Аналогичное реальное приложение включает в себя прогнозирование количества поездок на каждой станции и использование этого для перераспределения велосипедов в течение следующих нескольких дней или недель.
1. Настройка теста
Из-за нехватки времени мы будем прогнозировать только количество поездок по общей сумме по всем станциям. Однако аналогичный подход можно использовать на уровне отдельных станций.
Для разделения поезд-тест мы будем использовать перекрестную проверку временных рядов, чтобы усреднить случайность результатов при выборе конкретной недели для оценки. Наши тренировочные данные относятся к 2017-2020 годам и половине 2021 года. Тестовые данные содержат 8 разделений, равномерно распределенных по последнему году, чтобы охватить все сезоны.
2. Входные объекты и модели
Для нашей базовой модели мы будем использовать простой линейный регрессор, а наши основные модели будут состоять из статистического прогнозатора временных рядов и регрессора случайного леса. Учитывая, что исследователи из нашего университета обнаружили, что случайный лес чрезвычайно хорошо работает для пространственно-временного прогнозирования трафика, мы возлагаем большие надежды [2].
Информация, которую мы будем использовать, содержит функции, связанные как со временем, так и с погодой. Для линейной регрессии большинство непрерывных временных признаков пришлось преобразовать в признаки бинарного класса (например, [Время недели] -> [Понедельник, вторник…]), потому что линейный регрессор не мог отображать непрерывные временные признаки в циклическая тенденция использования велосипеда (зависимость нелинейная).
3. Оценка
Ниже приведены результаты наших тестов. Нашей основной метрикой является оценка R2, инвариантное к шкале измерение доли объясненной дисперсии в метках. Мы видим 2 тенденции. Во-первых, информация о погоде повышает производительность. Во-вторых, случайный лес оказался лучшим предсказателем, что соответствует выводам исследователей из нашего университета. Кроме того, линейная регрессия не подходит для прогнозирования временных рядов, вероятно, из-за нелинейности циклического характера временных тенденций.
Чтобы получить более интуитивное представление, мы построили несколько визуализаций ниже. Обратите внимание, что ни линейная регрессия, ни Facebook Prophet не различают бимодальные пики использования в будние дни и одномодальные пики в выходные.
Остаточные графики подтверждают наши предыдущие результаты. Модели с более низкими показателями имеют четкие тенденции в своих остатках. Это означает, что остаются паттерны, которые не были уловлены моделями. Идеальная модель улавливала бы все шаблоны, оставляя необъяснимый шум, сосредоточенный вокруг оси X, равномерно распределенный по ее длине.
Рекомендации
[1] Чжан, С. (2021, 16 апреля). Анализ данных по велопрокатам в Торонто. Середина. Получено 7 декабря 2022 г. с https://shirleyzhang2.medium.com/toronto-bike-share-data-analysis-943d5810c717.
[2] Тинг, Т.Дж. (2021). Сравнительная оценка устоявшихся и современных методов прогнозирования трафика на основе глубокого обучения. Совет по транспортным исследованиям.
Для получения подробной информации о коде вы можете перейти по этой ссылке: https://github.com/datapiratesciv/CME538_Project2