Михаил Хохлов - Яндекс.Пробки (анализ gps-треков и...
DESCRIPTION
TRANSCRIPT
Михаил Хохлов
Яндекс.Пробки:анализ GPS-треков и прогнозирование дорожной ситуации
3
4
20 км/ч
Способ получения данных
35 км/ч 15 км/ч
5
Треки
6
Привязка треков
7
Привязка треков
Локальные методыБыстрые и эффективные при высоком качестве данных
Глобальные методыДают высокую точность при оффлайновой обработке
Статистические методыПозволяют адекватно учитывать погрешность измерений
8
ST-matching
Вероятностьнаблюдения
Вероятностьперехода
Вероятностьскорости
пространственный (spatial) анализ
временной (temporal) анализ
9
Привязка треков
10
Привязка треков
11
Привязка треков
12
Привязка треков
Усреднение
14
Данные о проездах
0 1 2 3 4 5 60
20
40
60
80
100
120
часы
км/ч
15
Данные о проездах
0 1 2 3 4 5 60
20
40
60
80
100
120
часы
км/ч
16
Итерационное сглаживание
1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.30
10
20
30
40
50
60
70
80
90
100
часы
км/ч
17
Чего бы хотелось
1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.30
10
20
30
40
50
60
70
80
90
100
часы
км/ч
18
Медианный фильтр
1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.30
10
20
30
40
50
60
70
80
90
100
часы
км/ч
19
Медианный фильтр
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
10
20
30
40
50
60
часы
км/ч
20
Итерационное сглаживание
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
10
20
30
40
50
60
часы
км/ч
Прогнозирование
22
Дорожная ситуация (МКАД)
23
Подходы к прогнозированию
Содержательное моделированиепоиск причин и следствий
Машинное обучениепоиск закономерностей
24
Транспортные модели
Содержательное моделирование
потоковые модели имитационные модели
Машинное обучениепараметрические модели (линейные, нелинейные)
непараметрические модели
нейронные сети...
25
Поток от плотности
26
Поток от плотности
Машинное обучение:
линейные модели
28
Задача регрессии
Регрессия:
Может бытьпараметрической: выбирается из параметризованного семейства
непераметрической: не делается предположений о виде
Авторегрессия:
Y=F (X )
Y t=F (Y t−L ,…,Y t−1)
FF
29
Линейная регрессия
Предполагаем линейный вид: Y t=β0+∑j
X j β j
30
Линейная авторегрессия
31
Переобучение и недообучение
32
Недообучение
33
Переобучение
34
К чему стремимся
Машинное обучение:
k ближайших соседей
3636
Метод k ближайших соседей
36
Картина пробок #1
3737
Метод k ближайших соседей
37
Картина пробок #2
3838
Метод k ближайших соседей
38
Картина пробок #3
3939
Прогноз:
Метод k ближайших соседей
39
40
Сложность модели и ошибка
ошибка на тестовой выборке
ошибка на обучающей выборке
оптимальное число соседей
41
Скользящий контроль (cross-validation)
обучение
тест
Критерии минимизации ошибок
43
Робастность (robustness)
outlier
44
Робастность (robustness)
least squares
45
Робастность (robustness)
Least absolute errors
least squares
46
Некоторые варианты критериев
Наименьшие квадраты (Least Squares)вычислительно быстр, но подвержен влиянию выбросов
Наименьшие модули (Least Absolute Errors)робастный, но недифференцируем в нуле, поэтому сложно оптимизировать
Функция Хьюбера (Huber's Loss Function)робастная и гладкая
47
Функция Хьюбера
Lδ(x)=x2
2, если∣x∣≤δ
Lδ(x)=δ(∣x∣−δ2
) , иначе
Выбор предикторов
49
Выбор предикторов
Проблема при увеличении размерности:переобучение => падает точность
много коэффициентов => сложно интерпретировать
Возможное решение: выбрать подмножество предикторов, которые сильнее всего влияют на результат.
50
Выбор предикторов: эвристики
• Геометрические соседи могут включать в себя много лишних ребер (например, в центре Москвы).
• Топологические соседи могут упустить что-то важное (например, проспект и дублер).
51
Автоматический выбор предикторов
Forward step-wiseна каждом шаге добавляем предиктор, который сильнее уменьшает ошибку
52
Forward step-wiseна каждом шаге добавляем предиктор, который сильнее уменьшает ошибку
Backward step-wiseна каждом шаге убираем наименее значимый предиктор
Автоматический выбор предикторов
53
Forward step-wiseна каждом шаге добавляем предиктор, который сильнее уменьшает ошибку
Backward step-wiseна каждом шаге убираем наименее значимый предиктор
Forward stage-wiseподправляем коэффициент при переменной, которая больше всего коррелирует с остатком
Автоматический выбор предикторов
54
Forward step-wiseна каждом шаге добавляем предиктор, который сильнее уменьшает ошибку
Backward step-wiseна каждом шаге убираем наименее значимый предиктор
Forward stage-wiseподправляем коэффициент при переменной, которая больше всего коррелирует с остатком
LARS
Автоматический выбор предикторов
Негауссовы распределения
56
Преобразование переменных
км/ч
сек/км
575757
Случай 1 p=1/2100 метров
36 км/ч
Случай 2 p=1/2100 метров
3,6 км/ч
585858
время скорость
Случай 1 10 сек 36 км/ч
Случай 2 100 сек 3.6 км/ч
Среднее 55 сек ~ 20 км/ч
Случай 1 p=1/2100 метров
36 км/ч
Случай 2 p=1/2100 метров
3,6 км/ч
595959
100 м / 55 сек ≈ 7 км/ч
Случай 1 p=1/2100 метров
36 км/ч
Случай 2 p=1/2100 метров
3,6 км/ч
время скорость
Случай 1 10 сек 36 км/ч
Случай 2 100 сек 3.6 км/ч
Среднее 55 сек ~ 20 км/ч
606060
100 метров 100 метров
? км/ч
20 км/ч 20 км/ч
616161
Время проезда Скорость
Случай #1 10 сек. + 10 сек. 36 км/ч
Случай #2 100 сек. + 10 сек. 6,5 км/ч
Случай #3 10 сек. + 100 сек. 6,5 км/ч
Случай #4 100 сек. + 100 сек. 3,6 км/ч
Среднее 110 сек. (~ 7 км/ч) ~ 13 км/ч
100 метров 100 метров
? км/ч
20 км/ч 20 км/ч
Оценка качества
636363
Оценка качества
Задача сравнить:
Разные математические модели.
Дороги с разным количеством данных.
Дороги с разной степенью загруженности.
646464
Оценка качества
656565
Оценка качества
666666
Оценка качества
676767
Оценка качества
прогноз константоймодельнедельный профиль
Реализация
69
Граф дорог
Граф дорог —100GbИстория наблюдений — десятки Tb
70
Нужно много компьютеров
71
Метод k ближайших соседей
Метод авторегрессии
72
Литература
1. Map-Matching for Low-Sampling-Rate GPS Trajectories. Yin Lou, Chengyang Zhang, Yu Zheng, Xing Xie, Wei Wang, and Yan Huang.
2. The Elements of Statistical Learning: Data Mining, Inference, and Prediction. Trevor Hastie, Robert Tibshirani, Jerome Friedman.
3. http://www.machinelearning.ru
4. Yandex Technologies. http://company.yandex.com/technologies/