SlideShare une entreprise Scribd logo
1  sur  27
Télécharger pour lire hors ligne
Analyse des vélos en libre-service :
des portails d'Open Data à une API
de dataviz
Meet-up Open Transport - Paris
Raphaël Delhome(*), Damien Garaud
1
Introduction
2
Incontournables dans les
grandes villes
Location de courte durée
(de quelques minutes, à
quelques heures)
Disponibilité des vélos et
des emplacements aux
stations
Services de vélos partagés
Velo'v (Lyon)
3
Questions principales
Peut-on classer les stations de vélos en fonction de
la disponibilité des vélos ?
Que faire si on veut un vélo...et qu'il n'y en a pas ?
Que faire s'il n'y a pas de station disponible
lorsqu'on veut poser son vélo ?
...
Comment construire un data pipeline complet pour
extraire, transformer, mettre à disposition les
données et les résultats d'analyse associés ?
4
Plan de l'intervention
(Partie 1) Manipuler de la donnée géographique
ouverte
(Partie 2) Classi cation non-supervisée des stations de
vélos
(Partie 3) Prédiction à court terme de la disponibilité
des vélos en libre-service
(Partie 4) Demonstration : API de visualisation
5
Aperçu de la donnée
6
Données géographiques ouvertes
Data GrandLyon
Opendata Bordeaux
7
Présentation des données
id last_timestamp bs abs ab bonus status
10063
2017-07-08
23:49:09
34 10 23 Non OPEN
10021
2017-07-08
00:30:12
19 0 0 Non CLOSED
8038
2017-07-08
23:49:26
20 6 14 Non OPEN
7045
2017-07-08
23:52:43
20 13 7 Non OPEN
8
Data pipeline
Construire un data pipeline en Python avec
Récupérer, transformer et conserver la donnée
Récupérer des données (json, xml, shp) toutes
les 10 minutes via des CRON jobs
Stockage en base (postgreSQL, postgis)
feature engineering et machine learning
Luigi
9
Classification des stations de
vélos partagés
10
Objectif
Classer des stations de vélos partagés à partir de leur
utilisation
Idée = Grouper les stations qui se ressemblent
... C'est à dire? => Pro ls temporels
11
Inspiré par
Un pro l = un individu
Grouper les individus
similaires
En déduire des stations
"types"
Résultats pour 4 clusters
Clustering via la méthode des K-means
un travail
similaire de James
Lawlor
12
Cartographie des stations
13
Prédiction de disponibilité
des vélos
14
Objectif
Savoir si des vélos (resp. stations) seront disponibles
dans les prochaines minutes
Idée = Utiliser l'information disponible pour prédire
la disponibilité
... C'est-à-dire? => Apprentissage supervisé pour
estimer une probabilité de disponibilité
15
Méthode d'arbre boostée :
prédire Y (probabilité de
disponibilité à H+1)
à partir de X (jour, heure,
vélos disponibles à H, ...)
Méthode XGBoost
16
Sans paramétrage, RMSE =
0.095
Résultats
17
Démo
Visualisation des vélos partagés :
Requêtage de l'API :
http://data.oslandia.io/bikes
http://data.oslandia.io/bikes/doc/
18
Démo: page principale
19
Démo: requêtage
20
Démo: page Lyon (1/2)
21
Démo: page Lyon (2/2)
22
Démo: page Terreaux (1/2)
23
Démo: page Terreaux (2/2)
24
Conclusion
25
Conclusion et perspectives
Réponse à des questions de recherche simples à
partir de données géographiques ouvertes
Des portails d'Open Data à la mise en base de
données avec
Production d'une API pour visualiser la data => vers
une mise en production?
Online learning: continuer de récolter de la donnée,
mettre à jour les modèles d'apprentissage au l de
l'eau
Luigi
26
Merci de votre attention!
Des questions ?
Pour aller plus loin: et projet Github
damien.garaud@oslandia.com
raphael.delhome@oslandia.com
blog Oslandia
github.com/garaud/jitenshea
27

Contenu connexe

Plus de Open Transport meetup by Kisio

Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020
Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020
Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020
Open Transport meetup by Kisio
 

Plus de Open Transport meetup by Kisio (20)

Prez stop bystep
Prez stop bystepPrez stop bystep
Prez stop bystep
 
Prez stoomlink belgian_open_transport_meetup_10.03.2021
Prez stoomlink belgian_open_transport_meetup_10.03.2021Prez stoomlink belgian_open_transport_meetup_10.03.2021
Prez stoomlink belgian_open_transport_meetup_10.03.2021
 
Prez observatoire mobilites_emergentes_laurent_jegou_meetup_open_transport_27...
Prez observatoire mobilites_emergentes_laurent_jegou_meetup_open_transport_27...Prez observatoire mobilites_emergentes_laurent_jegou_meetup_open_transport_27...
Prez observatoire mobilites_emergentes_laurent_jegou_meetup_open_transport_27...
 
Prez mobilite electrique_julien_vaissette_avec complement_meetup_open_transpo...
Prez mobilite electrique_julien_vaissette_avec complement_meetup_open_transpo...Prez mobilite electrique_julien_vaissette_avec complement_meetup_open_transpo...
Prez mobilite electrique_julien_vaissette_avec complement_meetup_open_transpo...
 
Prez handimap bertrand_gervais_meetup_open_transport_27.01.2021
Prez handimap bertrand_gervais_meetup_open_transport_27.01.2021Prez handimap bertrand_gervais_meetup_open_transport_27.01.2021
Prez handimap bertrand_gervais_meetup_open_transport_27.01.2021
 
Prez onecub portrabilite_donnees_meetup_open_transport_10.12.2020
Prez onecub portrabilite_donnees_meetup_open_transport_10.12.2020Prez onecub portrabilite_donnees_meetup_open_transport_10.12.2020
Prez onecub portrabilite_donnees_meetup_open_transport_10.12.2020
 
Prez tourisme et_mobilite_julien_delabaca_meetup_open_transport_05.11.2020
Prez tourisme et_mobilite_julien_delabaca_meetup_open_transport_05.11.2020Prez tourisme et_mobilite_julien_delabaca_meetup_open_transport_05.11.2020
Prez tourisme et_mobilite_julien_delabaca_meetup_open_transport_05.11.2020
 
Prez lab mobilites_marie-eve_meetup_open_transport_05.11.2020
Prez lab mobilites_marie-eve_meetup_open_transport_05.11.2020Prez lab mobilites_marie-eve_meetup_open_transport_05.11.2020
Prez lab mobilites_marie-eve_meetup_open_transport_05.11.2020
 
Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020
Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020
Prez irt system-x_ti_iva_meetup_opentransport_05.11.2020
 
Prez geomob plan_de_mobilite_meetup_open_transport_05.11.2020
Prez geomob plan_de_mobilite_meetup_open_transport_05.11.2020Prez geomob plan_de_mobilite_meetup_open_transport_05.11.2020
Prez geomob plan_de_mobilite_meetup_open_transport_05.11.2020
 
Prez fabrique mobilites_gabriel_plassat_meetup_open_transport_05.11.2020
Prez fabrique mobilites_gabriel_plassat_meetup_open_transport_05.11.2020Prez fabrique mobilites_gabriel_plassat_meetup_open_transport_05.11.2020
Prez fabrique mobilites_gabriel_plassat_meetup_open_transport_05.11.2020
 
Prez ultl meetup_open_transport_paris_20032019
Prez ultl meetup_open_transport_paris_20032019Prez ultl meetup_open_transport_paris_20032019
Prez ultl meetup_open_transport_paris_20032019
 
Prez vraiment vraiment_meetup_open_transport_paris_20032019
Prez vraiment vraiment_meetup_open_transport_paris_20032019Prez vraiment vraiment_meetup_open_transport_paris_20032019
Prez vraiment vraiment_meetup_open_transport_paris_20032019
 
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
 
Prez smile smart coach meetup_open_transport_paris_20062019
Prez smile smart coach meetup_open_transport_paris_20062019Prez smile smart coach meetup_open_transport_paris_20062019
Prez smile smart coach meetup_open_transport_paris_20062019
 
Prez idfm jungle_bus_meetup_opentransport_paris_20062019
Prez idfm jungle_bus_meetup_opentransport_paris_20062019Prez idfm jungle_bus_meetup_opentransport_paris_20062019
Prez idfm jungle_bus_meetup_opentransport_paris_20062019
 
Prez idfm challenge information voyageur_meetup_open_transport_paris_20062019
Prez idfm challenge information voyageur_meetup_open_transport_paris_20062019Prez idfm challenge information voyageur_meetup_open_transport_paris_20062019
Prez idfm challenge information voyageur_meetup_open_transport_paris_20062019
 
Prez saemes opendata_parking_meetup_open_transport_paris_20062019
Prez saemes opendata_parking_meetup_open_transport_paris_20062019Prez saemes opendata_parking_meetup_open_transport_paris_20062019
Prez saemes opendata_parking_meetup_open_transport_paris_20062019
 
Prez labo paris_6_meetup_open_transport_paris_17042019
Prez labo paris_6_meetup_open_transport_paris_17042019Prez labo paris_6_meetup_open_transport_paris_17042019
Prez labo paris_6_meetup_open_transport_paris_17042019
 
Prez vedecom altair_meetup_open_transport_paris_17042019
Prez vedecom altair_meetup_open_transport_paris_17042019Prez vedecom altair_meetup_open_transport_paris_17042019
Prez vedecom altair_meetup_open_transport_paris_17042019
 

201803 29 meetup_open_transport_prez_oslandia_raphael_delhome_datascience_traces_velo

  • 1. Analyse des vélos en libre-service : des portails d'Open Data à une API de dataviz Meet-up Open Transport - Paris Raphaël Delhome(*), Damien Garaud 1
  • 3. Incontournables dans les grandes villes Location de courte durée (de quelques minutes, à quelques heures) Disponibilité des vélos et des emplacements aux stations Services de vélos partagés Velo'v (Lyon) 3
  • 4. Questions principales Peut-on classer les stations de vélos en fonction de la disponibilité des vélos ? Que faire si on veut un vélo...et qu'il n'y en a pas ? Que faire s'il n'y a pas de station disponible lorsqu'on veut poser son vélo ? ... Comment construire un data pipeline complet pour extraire, transformer, mettre à disposition les données et les résultats d'analyse associés ? 4
  • 5. Plan de l'intervention (Partie 1) Manipuler de la donnée géographique ouverte (Partie 2) Classi cation non-supervisée des stations de vélos (Partie 3) Prédiction à court terme de la disponibilité des vélos en libre-service (Partie 4) Demonstration : API de visualisation 5
  • 6. Aperçu de la donnée 6
  • 7. Données géographiques ouvertes Data GrandLyon Opendata Bordeaux 7
  • 8. Présentation des données id last_timestamp bs abs ab bonus status 10063 2017-07-08 23:49:09 34 10 23 Non OPEN 10021 2017-07-08 00:30:12 19 0 0 Non CLOSED 8038 2017-07-08 23:49:26 20 6 14 Non OPEN 7045 2017-07-08 23:52:43 20 13 7 Non OPEN 8
  • 9. Data pipeline Construire un data pipeline en Python avec Récupérer, transformer et conserver la donnée Récupérer des données (json, xml, shp) toutes les 10 minutes via des CRON jobs Stockage en base (postgreSQL, postgis) feature engineering et machine learning Luigi 9
  • 10. Classification des stations de vélos partagés 10
  • 11. Objectif Classer des stations de vélos partagés à partir de leur utilisation Idée = Grouper les stations qui se ressemblent ... C'est à dire? => Pro ls temporels 11
  • 12. Inspiré par Un pro l = un individu Grouper les individus similaires En déduire des stations "types" Résultats pour 4 clusters Clustering via la méthode des K-means un travail similaire de James Lawlor 12
  • 15. Objectif Savoir si des vélos (resp. stations) seront disponibles dans les prochaines minutes Idée = Utiliser l'information disponible pour prédire la disponibilité ... C'est-à-dire? => Apprentissage supervisé pour estimer une probabilité de disponibilité 15
  • 16. Méthode d'arbre boostée : prédire Y (probabilité de disponibilité à H+1) à partir de X (jour, heure, vélos disponibles à H, ...) Méthode XGBoost 16
  • 17. Sans paramétrage, RMSE = 0.095 Résultats 17
  • 18. Démo Visualisation des vélos partagés : Requêtage de l'API : http://data.oslandia.io/bikes http://data.oslandia.io/bikes/doc/ 18
  • 21. Démo: page Lyon (1/2) 21
  • 22. Démo: page Lyon (2/2) 22
  • 26. Conclusion et perspectives Réponse à des questions de recherche simples à partir de données géographiques ouvertes Des portails d'Open Data à la mise en base de données avec Production d'une API pour visualiser la data => vers une mise en production? Online learning: continuer de récolter de la donnée, mettre à jour les modèles d'apprentissage au l de l'eau Luigi 26
  • 27. Merci de votre attention! Des questions ? Pour aller plus loin: et projet Github damien.garaud@oslandia.com raphael.delhome@oslandia.com blog Oslandia github.com/garaud/jitenshea 27