Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Яндекс.Пробки:
анализ GPS-треков и
прогнозирование
дорожной ситуации
Михаил Хохлов
разработчик
Способ получения данных

20 км/ч

3

35 км/ч

15 км/ч
Треки

4
Привязка треков

5
Привязка треков
Локальные методы
Быстрые и эффективные при высоком качестве данных

Глобальные методы
Дают высокую точност...
ST-matching

Вероятность
наблюдения

Вероятность
перехода

пространственный (spatial)
анализ

7

Вероятность
скорости

вре...
Привязка треков

8
Привязка треков

9
Привязка треков

10
Привязка треков

11
Усреднение
Данные о проездах
120

100

км/ч

80

60

40

20

0

0

1

2

3
часы

13

4

5

6
Данные о проездах
120

100

км/ч

80

60

40

20

0

0

1

2

3
часы

14

4

5

6
Итерационное сглаживание
100
90
80
70

км/ч

60
50
40
30
20
10
0
1.5

1.6

1.7

1.8

1.9
часы

15

2

2.1

2.2

2.3
Чего бы хотелось
100
90
80
70

км/ч

60
50
40
30
20
10
0
1.5

1.6

1.7

1.8

1.9
часы

16

2

2.1

2.2

2.3
Медианный фильтр
100
90
80
70

км/ч

60
50
40
30
20
10
0
1.5

1.6

1.7

1.8

1.9
часы

17

2

2.1

2.2

2.3
Прогнозирование
Подходы к прогнозированию
Содержательное моделирование
поиск причин и следствий

Машинное обучение
поиск закономерностей

...
Подходы к прогнозированию
Содержательное моделирование
поиск причин и следствий

Машинное обучение
поиск закономерностей

...
Подходы к прогнозированию
Содержательное моделирование
поиск причин и следствий

Машинное обучение
поиск закономерностей

...
Дорожная ситуация (МКАД)

22
Транспортные модели
Содержательное моделирование

потоковые модели

имитационные модели

Машинное обучение
параметрические...
Машинное обучение:
линейные модели
Задача регрессии
Регрессия:

̂
Y =F ( X )
Может быть
параметрической:
непераметрической:

F выбирается из параметризованно...
Линейная регрессия
Предполагаем линейный вид:

̂
̂ ̂
Y t =β0 + ∑ X j β j
j

26
Метод наименьших квадратов
̂ =argmin ∑ ( y i −x i β )2
β
i

̂ =( X T X )−1 X T y
β

если

27

T

X X невырождена
Вычисляем ошибку

Root Mean Square Error (RMSE)

RMSE=

̂
∑ ( y i− y i )
√

2

i∈S

S = обучающей выборке или тестовой выб...
Вычисляем ошибку

29
Вычисляем ошибку

30
Вычисляем ошибку

31
Переобучение и недообучение

32
Недообучение

33
Переобучение

34
К чему стремимся

35
Машинное обучение:
k ближайших соседей
Метод k ближайших соседей

Картина пробок #1
37
Метод k ближайших соседей

Картина пробок #2
38
Метод k ближайших соседей

Картина пробок #3
39
Метод k ближайших соседей

Прогноз:
40
Сложность модели и ошибка

ошибка на тестовой выборке

ошибка на обучающей выборке

оптимальное число соседей

41
Декомпозиция ошибки
2

Пусть Y =f ( X )+ε , E (ε)=0,Var (ε)=σ
̂
а f ( X ) — подобранная регрессия.
Ожидаемая ошибка в точк...
Баланс смещения и дисперсии
Для KNN регрессии

[

1
bias= f ( x 0 )−
k
variance=σ
k

43

k

∑ f ( x(i))
i=1

]

2

обычно ...
Скользящий контроль (cross-validation)
тест

обучение

44
Критерии минимизации ошибок
Робастность (robustness)

outlier

46
Робастность (robustness)

least squares

47
Робастность (robustness)

Least absolute errors

least squares

48
Некоторые варианты критериев
Наименьшие квадраты (Least Squares)
вычислительно быстр, но подвержен влиянию выбросов

Наиме...
Функция Хьюбера
2

x
Lδ ( x)= ,
если∣x∣≤δ
2
δ ), иначе
Lδ ( x)=δ(∣x∣−
2

50
Выбор предикторов
Выбор предикторов

Проблема при увеличении размерности:
переобучение => падает точность
много коэффициентов => сложно инте...
Выбор предикторов
Forward step-wise
на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку

53
Выбор предикторов
Forward step-wise
на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку

Backward step-wi...
Выбор предикторов
Forward step-wise
на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку

Backward step-wi...
Выбор предикторов
Forward step-wise
на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку

Backward step-wi...
Негауссовы распределения
Преобразование переменных
км/ч

сек/км

58
36 км/ч

Случай 1

p=1/2
100 метров
3,6 км/ч

Случай 2

p=1/2
100 метров

время

скорость

Случай 1 10 сек
Случай 2 100 се...
36 км/ч

Случай 1

p=1/2
100 метров
3,6 км/ч

Случай 2

p=1/2
100 метров

время

скорость

Случай 1 10 сек

36 км/ч

Случа...
Обобщенные линейные модели
Распределение из экспоненциального семейства

f (Y ; η)=b(Y )exp(ηT (Y )−a(η))
Функция связи

̂...
Литература
1. Map-Matching for Low-Sampling-Rate GPS Trajectories. Yin Lou, Chengyang
Zhang, Yu Zheng, Xing Xie, Wei Wang,...
Михаил Хохлов
разработчик
к. ф.-м. н.
aeol@yandex-team.ru

Спасибо
20121126хохлов
Próxima SlideShare
Cargando en…5
×

20121126хохлов

881 visualizaciones

Publicado el

Яндекс. Пробки на Я.Студенте в ВШЭ. Михаил Хохлов.

Publicado en: Educación
  • Sé el primero en comentar

20121126хохлов

  1. 1. Яндекс.Пробки: анализ GPS-треков и прогнозирование дорожной ситуации Михаил Хохлов разработчик
  2. 2. Способ получения данных 20 км/ч 3 35 км/ч 15 км/ч
  3. 3. Треки 4
  4. 4. Привязка треков 5
  5. 5. Привязка треков Локальные методы Быстрые и эффективные при высоком качестве данных Глобальные методы Дают высокую точность при оффлайновой обработке Статистические методы Позволяют адекватно учитывать погрешность измерений 6
  6. 6. ST-matching Вероятность наблюдения Вероятность перехода пространственный (spatial) анализ 7 Вероятность скорости временной (temporal) анализ
  7. 7. Привязка треков 8
  8. 8. Привязка треков 9
  9. 9. Привязка треков 10
  10. 10. Привязка треков 11
  11. 11. Усреднение
  12. 12. Данные о проездах 120 100 км/ч 80 60 40 20 0 0 1 2 3 часы 13 4 5 6
  13. 13. Данные о проездах 120 100 км/ч 80 60 40 20 0 0 1 2 3 часы 14 4 5 6
  14. 14. Итерационное сглаживание 100 90 80 70 км/ч 60 50 40 30 20 10 0 1.5 1.6 1.7 1.8 1.9 часы 15 2 2.1 2.2 2.3
  15. 15. Чего бы хотелось 100 90 80 70 км/ч 60 50 40 30 20 10 0 1.5 1.6 1.7 1.8 1.9 часы 16 2 2.1 2.2 2.3
  16. 16. Медианный фильтр 100 90 80 70 км/ч 60 50 40 30 20 10 0 1.5 1.6 1.7 1.8 1.9 часы 17 2 2.1 2.2 2.3
  17. 17. Прогнозирование
  18. 18. Подходы к прогнозированию Содержательное моделирование поиск причин и следствий Машинное обучение поиск закономерностей 19
  19. 19. Подходы к прогнозированию Содержательное моделирование поиск причин и следствий Машинное обучение поиск закономерностей 20
  20. 20. Подходы к прогнозированию Содержательное моделирование поиск причин и следствий Машинное обучение поиск закономерностей 21
  21. 21. Дорожная ситуация (МКАД) 22
  22. 22. Транспортные модели Содержательное моделирование потоковые модели имитационные модели Машинное обучение параметрические модели (линейные, нелинейные) непараметрические модели нейронные сети ... 23
  23. 23. Машинное обучение: линейные модели
  24. 24. Задача регрессии Регрессия: ̂ Y =F ( X ) Может быть параметрической: непераметрической: F выбирается из параметризованного семейства не делается предположений о виде F Авторегрессия: ̂ Y t =F (Y t−L ,…, Y t−1 ) 25
  25. 25. Линейная регрессия Предполагаем линейный вид: ̂ ̂ ̂ Y t =β0 + ∑ X j β j j 26
  26. 26. Метод наименьших квадратов ̂ =argmin ∑ ( y i −x i β )2 β i ̂ =( X T X )−1 X T y β если 27 T X X невырождена
  27. 27. Вычисляем ошибку Root Mean Square Error (RMSE) RMSE= ̂ ∑ ( y i− y i ) √ 2 i∈S S = обучающей выборке или тестовой выборке 28
  28. 28. Вычисляем ошибку 29
  29. 29. Вычисляем ошибку 30
  30. 30. Вычисляем ошибку 31
  31. 31. Переобучение и недообучение 32
  32. 32. Недообучение 33
  33. 33. Переобучение 34
  34. 34. К чему стремимся 35
  35. 35. Машинное обучение: k ближайших соседей
  36. 36. Метод k ближайших соседей Картина пробок #1 37
  37. 37. Метод k ближайших соседей Картина пробок #2 38
  38. 38. Метод k ближайших соседей Картина пробок #3 39
  39. 39. Метод k ближайших соседей Прогноз: 40
  40. 40. Сложность модели и ошибка ошибка на тестовой выборке ошибка на обучающей выборке оптимальное число соседей 41
  41. 41. Декомпозиция ошибки 2 Пусть Y =f ( X )+ε , E (ε)=0,Var (ε)=σ ̂ а f ( X ) — подобранная регрессия. Ожидаемая ошибка в точке x 0 равна ̂ ( x 0 ))2 ]= E[(Y − f 2 ̂ ( x 0 ))2 ]+ E [( E f ( x 0 )− f ( x 0 ))2 ]= ̂ ̂ = σ + E [(f ( x 0 )− E f = irreducible + bias2 + variance error 42
  42. 42. Баланс смещения и дисперсии Для KNN регрессии [ 1 bias= f ( x 0 )− k variance=σ k 43 k ∑ f ( x(i)) i=1 ] 2 обычно растет с увеличением k 2 падает с увеличением k
  43. 43. Скользящий контроль (cross-validation) тест обучение 44
  44. 44. Критерии минимизации ошибок
  45. 45. Робастность (robustness) outlier 46
  46. 46. Робастность (robustness) least squares 47
  47. 47. Робастность (robustness) Least absolute errors least squares 48
  48. 48. Некоторые варианты критериев Наименьшие квадраты (Least Squares) вычислительно быстр, но подвержен влиянию выбросов Наименьшие модули (Least Absolute Errors) робастный, но недифференцируем в нуле, поэтому сложно оптимизировать Функция Хьюбера (Huber's Loss Function) робастная и гладкая 49
  49. 49. Функция Хьюбера 2 x Lδ ( x)= , если∣x∣≤δ 2 δ ), иначе Lδ ( x)=δ(∣x∣− 2 50
  50. 50. Выбор предикторов
  51. 51. Выбор предикторов Проблема при увеличении размерности: переобучение => падает точность много коэффициентов => сложно интерпретировать Возможное решение: выбрать подмножество предикторов, которые сильнее всего влияют на результат. 52
  52. 52. Выбор предикторов Forward step-wise на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку 53
  53. 53. Выбор предикторов Forward step-wise на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку Backward step-wise на каждом шаге убираем предиктор с наименьшим Z-score 54
  54. 54. Выбор предикторов Forward step-wise на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку Backward step-wise на каждом шаге убираем предиктор с наименьшим Z-score ̂ )=( X T X )−1 σ 2 Var (β ̂ βj T −1 Z j= , где v j это j−й диагональный элемент ( X X ) σ √v j 55
  55. 55. Выбор предикторов Forward step-wise на каждом шаге добавляем предиктор, который сильнее уменьшает ошибку Backward step-wise на каждом шаге убираем предиктор с наименьшим Z-score Forward stage-wise подправляем коэффициент при переменной, которая больше всего коррелирует с остатком 56
  56. 56. Негауссовы распределения
  57. 57. Преобразование переменных км/ч сек/км 58
  58. 58. 36 км/ч Случай 1 p=1/2 100 метров 3,6 км/ч Случай 2 p=1/2 100 метров время скорость Случай 1 10 сек Случай 2 100 сек 3.6 км/ч Среднее 55 сек 59 36 км/ч ~ 20 км/ч
  59. 59. 36 км/ч Случай 1 p=1/2 100 метров 3,6 км/ч Случай 2 p=1/2 100 метров время скорость Случай 1 10 сек 36 км/ч Случай 2 100 сек 3.6 км/ч Среднее 55 сек ~ 20 км/ч 100 м / 55 сек ≈ 7 км/ч 60
  60. 60. Обобщенные линейные модели Распределение из экспоненциального семейства f (Y ; η)=b(Y )exp(ηT (Y )−a(η)) Функция связи ̂ ̂ F ( Y )=∑ X j β j j 61
  61. 61. Литература 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/ 62
  62. 62. Михаил Хохлов разработчик к. ф.-м. н. aeol@yandex-team.ru Спасибо

×