• Aucun résultat trouvé

Big data, data lake et cloud

Le big data est étroitement lié à l’intelligence artificielle. C’est même d’une certaine manière le sang qui l’alimente. Nombre d’applications de machine learning et de deep learning exploitent de gros volumes de données internes aux entreprises. Plus l’entreprise détient de points de contacts avec des infrastructures ou des clients, plus volumiques sont les données captées exploitables par des solutions de machine learning.

Les infrastructures de big data sont donc clés pour alimenter les applications de l’IA. Les données consolidées étaient peut-être faiblement exploitées jusqu’à présent et le seront mieux grâce à la puissance des outils du machine learning. Celui-ci est d’ailleurs souvent présenté comme l’aboutissement des outils de data analytics et de data intelligence.

292 Source du schéma : Why we need Exascale and why we won't get there by 2020, 2014 (56 pages).

293 Sachant néanmoins qu’elles ont démarré en 1994 avec les travaux de Leonard M. Adleman aux USA, documentés dans Compu-

ting with DNA paru dans Scientific American en 1998. A cette époque, Adleman voulait créer un ordinateur à base d’ADN. Mais sa conclusion était que l’ADN était surtout un moyen intéressant de stockage de gros volumes d’information. J’ai remarqué au passage dans l’article que le cout de la génération de molécules d’ADN était déjà relativement bas à cette époque : $1,25 la paire de bases d’ADN. Il démarre en 2016 à $0,2, soit seulement 6 fois moins. En plus de 20 ans ! Encore un exemple où la loi de Moore ne s’est pas du tout appliquée. Pour l’instant !

La consolidation des données se met maintenant en place dans le cadre de la création de data lakes294, des entrepots de données généralistes pour l’entreprise. Cela simplifie leur exploitation par

les applications, notamment celles du machine learning qui peuvent exploiter plusieurs sources de données différentes et complémentaires.

Un data lake contient des données brutes tandis qu’un entrepôt de données classique contient des données déjà traitées et agrégées. Les sources des données peuvent être multiples. Les données sont structurées (bases relationnelles SQL), faiblement structurées (CSV, logs, données issues de cap- teurs et objets connectés) et non structurées (documents, mails, images). Les données peuvent être conservées pour être utilisées plus tard. On ne connaît pas a priori leur utilisation lorsqu’on les ac- cumule. Ce qui suppose tout de même que l’on en a tout de même une petite idée !

Elles sont physiquement stockées dans l’entreprise ou dans le cloud dans des bases de données dis- tribuées (comme avec HDFS, Hadoop Distributed File Storage), dans des bases NoSQL ou dans des bases objets telles que Amazon S3 ou Azure Blog Storage.

Un datalake est construit avec des outils d’ingestion de données, qui extraient données et métadon- nées des bases qui l’alimentent, des outils de stockage souvent distribués et des moyens de re- cherche et d’extraction de données qui interrogent les bases avec des outils relationnels ou « no SQL ». Un data lake « connaissance des clients » va ainsi conserver les données issus de systèmes disparates : CRM, SFA, centres d’appels, support technique et réseaux sociaux.

Le tout n’est évidemment accessible que via une couche de sécurité et de droits d’accès. Les data lakes sont utilisés pour l’analyse de données en mode lecture par opposition aux systèmes transac- tionnels qui fonctionnent en lecture/écriture et en temps réel295.

Les données extraites du data lake doivent être préparées et netoyées avant d’alimenter l’entraînement de solutions de machine learning.

294 Le concept de data lake a été évoqué pour la première fois par Dorian Pyle en 1999 dans Data preparation and data mining (466 pages) et promu ensuite en 2010 par James Dixon de la société américaine Pentaho. Voir Pentaho, Hadoop, and Data Lakes de James Dixon.

295 Informations et schéma issus de Designing a Modern Data Warehouse + Data Lake de Melissa Coates, 2017 (72 slides). Voir aussi ce cours de Omar Boussaid de l’Université de Lyon, Du Data Warehouse au… Data Lake, 2017 (54 slides).

Elles peuvent être exploitées par Spark de la fondation Apache, qui fonctionne en mode distribué sur des données stockées en RAM dans les serveurs, ce qui permet d’entraîner des modèles de ma- chine learning très rapidement via sa bibliothèque SparkML296. D’autres bibliothèques supportent

le développement d’applications de machine learning distribué, comme Mlbase297, GraphLab et

TensorFlow.

Les infrastructures de big data profitent de divers progrès dans le stockage, le parallélisme et la communication entre serveurs. D’ailleurs, le marché du big data et de l’analytics a rapidement sauté dans le bain de l’IA, même si cela comporte probablement pas mal d’IA washing. L’offre est en tout cas plus qu’abondante.

Certains traitements restent allergiques au calcul distribué traditionnel en cluster. Par exemple dans le cas du deep learning, notamment appliqué à la reconnaissance d'images, il sera fortement re- commandé de répartir les traitements localement via des pools de cartes graphiques embarqués sur les mêmes machines pour minimiser les échanges réseau. Ces derniers étant susceptibles de faire exploser les temps d'exécution.

Le champ de la gestion des données entre big data, data lake, cloud et machine learning est couvert par une offre des grands acteurs de l’IT (Oracle, Microsoft, IBM, …) ainsi que de nombreuses star- tups. En voici quelques-unes de notables :

Bigstream (2015, USA, $5,5M) fournit une plateforme matérielle et logicielle pour gérer l’extraction de donnée, leur intégration et leur analyse. Leur Hyper-acceleration Layer permet de faire tourner les différentes briques logicielles, dont TensorFlow sur les meilleures plate- formes matérielles (CPU, GPU, FPGA) pour optimiser leur performance. Ils ciblent les marchés de la publicité et de la finance.

Databricks (2013, USA, $247M) propose sa plateforme Mlflow qui gère l’administration de ses processus de machine learning. C’est une sorte d’outil de gestion du workflow de ses pro- cessus de ML, avec l’ingestion de données, les transformations, le data cleaning et l’exploitation d’algorithmes de machine learning. L’offre de Databricks est intégrée dans Microsoft Azure de- puis 2017.

296 Voir Data Lakes A Solution or a new Challenge for Big Data Integration de Christoph Quix de l’Institut Fraunhofer, 2016 (28 slides) et Azure Data Lake What Why and How de Melissa Coates, septembre 2018 (81 slides).

Saagie (2013, France, $11,6M) propose une plateforme open source de gestion de ses données dans le cloud utilisables notamment par vos applications de machine learning. C’est du backof- fice qui gère les flux de données de l’entreprise, dont son data lake, gérant les accès utilisateurs, les processus d’ingestion de données, le respect du RGPD et la supervision. La startup vise en premier le marché de la finance.

Tamr (2014, USA, $59,2M) est une autre startup qui propose des outils d’ingestion de données disparates pour les applications de big data et de machine learning qui exploite en amont de l’expertise humaine, donc pas scalable, pour le nettoyage des données. La startup exploite des recherches du MIT Computer Science and Information Lab (CSAIL).

Sentient Technologies (2007, USA, $174M) développe une solution d’IA massivement distri- buable sur des millions de CPUs, visant les marchés de la santé, de la détection de fraudes et du du e-commerce. La société dit employer des méthodes d’IA avancées pour détecter des ten- dances dans les données. C’est du “big data” revisité. Le système imite les processus biolo- giques pour faire de l’auto-apprentissage. On trouve des morceaux de deep learning et des agents intelligents dedans. Ces agents sont évalués avec des jeux de tests et les meilleurs con- servés tandis que les plus mauvais sont éliminés. Bref, c’est une sorte de Skynet. L’un des fon- dateurs de la société est français, Antoine Blondeau, et basé à Hong Kong.

Algorithmia (2013, USA, $12,9M) propose son outil logiciel AI Layer pour déployer dans le cloud et de manière répartie des modèles entraînés de machine learning. Le tout est associé à une bibliothèque de plusde 4000 micro-services intégrables dans les applications. Il en résulte un modèle déployé dans le cloud exploitable sous forme de service. L’outil fait gagner du temps aux data scientists et automatise la partie « dev ops » (les opérations de déploiement des appli- cations à la croisée des chemins entre les développeurs et les responsables de l’infrastructure IT) du déploiement du projet.

Skymind (2014, USA, $6,3M) est une autre startup qui facilite le déploiement de solutions de machine learning dans le cloud avec sa Skymind Intelligence Layer (SKIL). Elle est notamment adaptée à l’entraînement incrémental de modèles de machine learning. L’outil est surtout destiné aux équipes informatiques qui déploient les applications. La startup est aussi à l’origine de Deeplearning4j.org, un framework open source de deep learning pour Java, distribué sur Apache Spark et Hadoop, écrit en C et C++ et CUDA pour l’accès aux GPU Nvidia.

Ayasdi(2008, USA, $106M) interprète aussi de gros volumes de données pour y identifier des signaux faibles pertinents. Le projet a démarré à Stanford et avec des financements de la DAR- PA et de la NSF, l’équivalent américain de l’Agence Nationale de la Recherche française.

Versive (2012, $57M), anciennement Context Relevant, propose des outils d’analyse prédictive applicables à différents marchés. Le glissement sémantique semble généralisé : au lieu de parler de big data, ce qui est trop vague, les startups parlent plutôt d’analyse prédictive qui exploite de gros volumes de données. Serait-ce de l’IA washing ? Conceptuellement oui, même si ce genre d’entreprise utilise probablement des briques de réseaux neuronaux et de machine learning en plus de méthodes plus traditionnelle.

Les applications de l’IA font aussi appel aux ressources du cloud, en particulier dans les phases d’entraînement et surtout pour les startups qui ne peuvent pas disposer de leur propre data center. Les grandes entreprises auront à gérer un équilibre entre leurs data-center « on premise » (chez elles) et dans des clouds privés et publics. La rapidité d’évolution des technologies de processeurs neuromorphiques et GPU que nous avons vues plus haut justifie le choix du cloud pour éviter l’obsolescence rapide de ses infrastructures.

Les infrastructures en cloud doivent pouvoir «scaler » pour s’adapter à l’entraînement de modèles de machine learning et deep learning nécessitant d’aligner parfois des milliers de serveurs. Une fois les modèles entraînés, leurs besoins en ressource machine sont plus faibles, surtout pour les solu- tions de deep learning. Ce n’est pas pour rien, par exemple, qu’un GPU Nvidia ou un Google TPU offre une puissance de calcul située aux alentours du 100 Tflops/s tandis que les unités de traitement neuronales embarquées dans les smartphones comme le Huawei Pmate 10 et l’iPhone 8/X ont une puissance de calcul située entre 1 et 2 Tflops/s ! L’exécution d’un réseau de neurones est bien plus rapide que son entraînement !

La plupart des offres de cloud intègrent maintenant la capacité à entraîner et exécuter des modèles de machine learning et de deep learning. C’est le cas chez Google, IBM, Microsoft, Amazon et même OVH qui dispose de serveurs DGX-1 de Nvidia.

Energie

L’homme ne consomme en moyenne que 100 Watts dont 20 Watts pour le cerveau. C’est un excel- lent rendement. Tout du moins, pour ceux qui font travailler leur cerveau. Ce n’est pas facile à éga- ler avec une machine et pour réaliser les tâches de base que réalise un humain. Les supercalcula- teurs consomment au mieux quelques KW et certains dépassent les MW.

Des progrès sont cependant notables dans les processeurs mobiles. Consommant moins de 5 W, ils agrègent une puissance de calcul de plus en plus impressionnante grâce à des architectures multi- cœurs, à un fonctionnement en basse tension, aux technologies CMOS les plus récentes comme le FinFET (transistors verticaux) et/ou FD-SOI (couche d’isolant en dioxyde de silicium réduisant les fuites de courant dans les transistors et améliorant leur rendement énergétique) et à une fréquence d’horloge raisonnable (entre 1 et 1,5 GHz). La technologie FD-SOI issue de STMicroelectronics et Soitec gagne petit à petit du terrain, notamment chez Samsung, Global Foundries et NXP. On a aus- si déjà vu le rôle des memristors pour améliorer l’équation énergétique du deep learning.

La mécanique et l’énergie sont les talons d’Achille non pas de l’IA qui est distribuable là où on le souhaite mais des robots. Un homme a une autonomie d’au moins une journée en état de marche convenable sans s’alimenter. Un robot en est encore loin. D’où l’intérêt des travaux pour améliorer les batteries et notamment leur densité énergétique. Un besoin qui se fait sentir partout, des smart- phones et laptops aux véhicules électriques en passant par les robots. Les progrès dans ce domaine ne sont pas du tout exponentiels. Cela a même plutôt tendance à stagner. Dans les batteries, c’est la loi de l’escargot qui s’appliquerait avec un quadruplement de la densité tous les 20 ans (source).

Des laboratoires de recherche inventent régulièrement des technologies de batteries battant des re- cords en densité énergétique ou du côté du temps de chargement, à base de matériaux différents et/ou de nano-matériaux, ou de composés différents au lithium. Il y a notamment le lithium-sulfure ou le lithium-oxygène permettant en théorie d’atteindre une densité énergétique 20 fois supérieure à celle des batteries actuelles, utilisées dans les véhicules électriques298.

Mais en elles sortent rarement, faute de pouvoir être industrialisées à un coût raisonnable ou de bien fonctionner dans la durée. Parfois, on arrive à une densité énergétique énorme, mais cela ne fonc- tionne que pour quelques cycles de charge/décharge. Trop injuste !

Résultat, pour le moment, la principale voie connue est celle de l’efficacité industrielle, choisie par Elon Musk dans la création de sa Gigafactory dans le Nevada, une usine à $5B qui exploitera la technologie de batteries standards de Panasonic, qui a aussi mis $1B au pot pour le financement de l’usine. Une usine qui est aussi proche d’une mine de Lithium, à Clayton Valley, l’un des compo- sés clés des batteries et qui démarrera sa production en 2020.

On peut cependant citer l’étonnante performance d’un laboratoire de l’université de Columbia qui a réussi à alimenter un composant CMOS avec de l’énergie provenant de l’ATP (adénosine triphos- phate), la source d’énergie principale des cellules vivantes qui est générée par les nombreuses mito- chondries qu’elles contiennent. Cela ouvre des portes vers la création de solutions hybrides biolo- giques et informatiques insoupçonnées jusqu’à présent. La véritable bionique en quelque sorte !