• Deep Learning
  • Data Science & IA
  • Dataviz
  • Machine Learning
coversite_stories-Empower-Shiny.jpg

Dataviz & Machine Learning : quelques éclaircissements sur Shiny

Shiny est un outil à part dans le domaine des frameworks web : il peut être utilisé comme un outil de BI "traditionnel" pour la construction de dashboards ou de dataviz, mais aussi bénéficier des packages statistiques et machine learning du langage R.

Un framework qui donne accès à plusieurs langages en un temps record

Shiny est une interface permettant, à partir de R Studio, de coder à l'aide d'un langage simplifié des applications faisant appel à :

quand utiliser html css javascript

Un des atouts de ce framework est la rapidité de développement des prototypes. Il suffit de connaître les bases du langage R pour commencer à utiliser des templates Shiny et créer des applications dynamiques.

On peut distinguer 2 utilisations de Shiny :

  1. pour un spécialiste R, c’est un outil permettant de faire des simulations et d’automatiser certains process,
  2. pour un non spécialiste, cela permet d’interagir avec R sans avoir à le connaître.
outils dataviz

Un outil de Dataviz au potentiel très large

Il existe des centaines de packages R offrant une interface vers d'autres frameworks (notamment javascript) ou api (accès aux données, etc.).

En particulier, pour la dataviz les htmlwidgets permettent d’utiliser entre autres :


 

Les cas d’usage sont donc très nombreux, car nous pouvons jumeler des visualisations.

Par exemple, nous pourrons :

  • sélectionner des points ou des zones à la souris sur une carte et visualiser des données liées à ces zones dans un tableau à côté,
  • changer les paramètres d’un modèle prédictif et représenter les résultats graphiquement,
  • proposer des données et différents types de graphiques au choix.
schema01 shiny.png

Mettre les résultats du travail des data scientists entre les mains des décideurs

Là où nous avions pour habitude de faire appel à des développeurs web, les analystes peuvent au moyen de cet outil mieux maîtriser la diffusion de leurs outputs, et livrer des outils plus flexibles et plus sécurisés que les traditionnelles feuilles Excel.

Le concepteur d'applications peut donner la possibilité à l'utilisateur de tester des scenarii en changeant des paramètres, ou d'ajouter des données et télécharger les résultats.

En termes de coût, la solution peut être développée avec des outils gratuit (principalement RStudio), et déployée avec des solutions d’hébergement à des prix souvent plus raisonnables que beaucoup d’autres options.

Selon les besoins de l'entreprise, nous pouvons choisir des solutions d'hébergement internes ou externes, et faire le choix de la restriction ou l'ouverture de l'accès aux applications tout comme nous le ferions pour tout autre contenu web.

Une extension utile aux analystes codeurs, une occasion de s'initier au code pour les autres

Certains préfèreront les outils "drag-n-drop", mais construire des applications en codant dans un langage open source a aussi beaucoup d’avantages :

  • pour la reproductibilité,
  • pour la facilité d'échange (pas besoin de licence),
  • pour le coût (solutions d’hébergement gratuites ou peu onéreuses),
  • pour la praticité (les analystes n'ayant pas besoin de changer d'outil).

 Le fait que des langages comme R ou Python aient supplanté SAS ou SPSS dans de nombreuses entreprises ces dernières années est une preuve que ces avantages méritent considération.