Michael Chen | Responsable de la stratégie de contenu | 15 octobre 2024
Le machine learning dans la base de données fait référence à l'intégration d'algorithmes et de techniques de machine learning dans un système de gestion de bases de données. Tous les processus, y compris la sélection des jeux de données, les algorithmes d'entraînement et l'évaluation des modèles, restent dans la base de données. Grâce au machine learning dans la base de données, les entreprises peuvent effectuer des tâches analytiques complexes directement dans leurs bases de données, éliminant ainsi la nécessité de déplacer les données entre les systèmes. Cela élimine les problèmes de latence, d'intégrité des données et de sécurité liés aux processus d'import/export de données.
Pensez à une entreprise qui subit soudainement beaucoup de perte de clients. Les algorithmes de machine learning, ou ML, peuvent prédire quels clients sont susceptibles de partir chez un concurrent et suggérer des campagnes marketing personnalisées ou faire d'autres recommandations sur la façon de réengager ces acheteurs. Peut-être avez-vous un stock excédentaire d'articles fréquemment achetés. Offrir une promotion spéciale peut déplacer les stocks et rendre les clients heureux. Si le machine learning est disponible directement dans la base de données, ces suggestions peuvent être générées beaucoup plus rapidement, sur les données les plus récentes. L'entreprise peut pivoter rapidement. Et comme il n'est pas nécessaire de déplacer les données vers un moteur de machine learning externe, les soucis liés à l'exposition des informations client sont éliminés.
Le machine learning dans la base de données apporte des algorithmes de machine learning directement dans la base de données, éliminant ainsi la nécessité de déplacer des données entre différents systèmes. Traditionnellement, le machine learning exigeait que les données soient extraites de la base de données et traitées dans une plateforme ou un outil d'analyse de machine learning distinct. Cela peut prendre beaucoup de temps et nécessiter beaucoup de ressources, en particulier lorsqu'il s'agit d'ensembles de données volumineux.
Avec le machine learning dans la base de données, les données restent inchangées tandis que les algorithmes de machine learning sont exécutés de manière native dans l'environnement de base de données. L'un des principaux avantages de l'intégration d'algorithmes de machine learning dans la base de données est une analyse plus rapide et plus efficace.
En d'autres termes, le déplacement des données ralentit tout.
Le machine learning dans la base de données est particulièrement utile pour les ensembles de données volumineux nécessaires à l'entraînement des modèles d'IA, par exemple. Avec le machine learning dans la base de données, l'environnement de base de données utilise des outils pour le codage, la création de modèles et les tests natifs de la plateforme. Cela permet d'utiliser toutes les tables de la base de données pour les projets gourmands en données, en quelques clics.
Le machine learning dans la base de données assure également la cohérence de l'infrastructure, que ce soit en formation ou en déploiement, ce qui signifie que les équipes informatiques sont libérées de la création de nouvelles infrastructures prêtes à l'emploi, sans parler de la maintenance et du travail d'assurance qualité associés, pour prendre en charge les prochaines étapes de l'utilisation des modèles.
Principaux points à retenir
Le machine learning dans la base de données est une expérience simplifiée car les collaborateurs travaillent avec leurs systèmes et outils de base de données familiers. De même, les analystes peuvent utiliser leurs bases de données existantes et leurs langages de requête familiers pour effectuer des analyses avancées sans avoir besoin d'investissements logiciels ou matériels supplémentaires. En analysant les données directement dans la base de données, les entreprises peuvent découvrir des informations précieuses sur les données les plus récentes et prendre des décisions plus opportunes basées sur les données.
Sans le machine learning dans la base de données, les entreprises qui cherchent à appliquer des analyses de machine learning à leurs données devront effectuer des processus d'extraction/de transformation/de chargement (ETL) ou d'extraction/de chargement/de transformation (ELT) et transférer des données vers des systèmes externes. Dans le cadre de ce modèle traditionnel, les data scientists peuvent effectuer des opérations manuelles d'importation/exportation, ou les systèmes peuvent être intégrés via des API. Dans les deux cas, plusieurs étapes supplémentaires sont nécessaires pour préparer les ensembles de données aux fonctions de machine learning, et ces étapes supplémentaires ouvrent la porte à des problèmes potentiels, notamment :
Le machine learning dans la base de données ignore les étapes d'exportation/importation, ce qui permet de conserver les tâches de machine learning dans le même environnement que les données elles-mêmes sans nécessiter de reconstruction ou de reformatage pour garantir la compatibilité. Le fait de rester dans la base de données supprime également la nécessité de maintenir des systèmes capables de gérer l'entre-deux.
À grande échelle, un certain nombre d'obstacles existent lors de l'utilisation d'un ensemble diversifié de sources de données pour les tâches de machine learning, en particulier l'entraînement des modèles d'IA. Celles-ci comprennent les éléments suivants :
Le machine learning dans la base de données est important pour les équipes de données en ce moment en raison de la croissance rapide et continue du volume et de la variété des données. En termes simples, les tâches gourmandes en données vont devenir plus difficiles, pas plus faciles, il est donc plus important que jamais d'intégrer le machine learning dans la base de données dans les workflows.
Le machine learning dans la base de données fonctionne de la même manière que le machine learning standard. La principale différence est que toutes les étapes nécessaires pour déplacer des données entre les systèmes, des extractions à la transformation/nettoyage, sont simplement supprimées. Toutefois, cela comporte certaines limites et exigences en raison de la nature du travail dans un environnement de base de données.
En général, voici comment fonctionne le machine learning dans la base de données.
Tout commence par la charge initiale dans la base de données, mais pour les besoins du machine learning dans la base de données, il reste une mise en garde : la base de données doit prendre en charge la fonctionnalité, en particulier, en gardant le code près des données pour permettre des améliorations d'efficacité complètes possibles avec le machine learning dans la base de données.
Que les algorithmes de machine learning soient situés dans la base de données ou dans une plateforme tierce, ils doivent toujours suivre le processus d'optimisation requis. Cela implique d'entraîner le modèle, d'évaluer les résultats et d'affiner le cas échéant. La principale différence avec le machine learning dans la base de données est que ces étapes sont effectuées dans la base de données, plutôt que dans un système distinct de l'endroit où les données sont hébergées. Cela évite d'avoir à déplacer des données entre plusieurs systèmes et banques de données pour effectuer des tâches d'optimisation de modèle.
Dans le machine learning traditionnel, les données doivent être déplacées des bases de données vers un référentiel, tel qu'un data lake, pour entraîner le modèle, évaluer les résultats et effectuer des affinements tels que l'ajustement des algorithmes et des paramètres individuels. Ces étapes utilisent les ressources de calcul et pèsent sur l'infrastructure. Les API natives de bases de données peuvent gérer ces tâches, même si le modèle passe d'un environnement de développement à un environnement de test à un environnement de production.
A l'aide du machine learning dans la base de données, les révisions du modèle de machine learning peuvent se propager à d'autres bases de données, que ce soit dans des environnements de développement, de test ou de production, simplement en créant des versions pour une table. Les améliorations s'intègrent instantanément, ce qui permet aux fonctions de s'exécuter sans interruption des étapes supplémentaires ou des ressources de calcul encombrées.
Lorsque des informations sont générées à l'aide de modèles de machine learning directement dans une base de données, le résultat est des informations quasiment en temps réel, sans étapes supplémentaires ni préoccupations concernant la latence et l'intégrité des données ETL/ELT.
Le machine learning dans la base de données raccourcit naturellement les processus et réduit les besoins en matériel des entreprises, ce qui crée un certain nombre d'avantages. Bien que cette approche comporte son propre ensemble de limitations, les avantages communs sont les suivants :
Le déplacement des données entre les systèmes est, au mieux, fastidieux. Au pire, il peut introduire des erreurs, une latence et des risques de sécurité tout en ralentissant les opérations. En conservant les tâches d'analyse dans la base de données, les obstacles supplémentaires liés à ELT/ETL, tout au long de l'exportation, de la transformation et du chargement des données, sont annulés, ce qui garantit que le processus d'analyse global se déplace le plus rapidement possible.
Lorsqu'une entreprise supprime la nécessité de transférer des ensembles de données volumineux, elle réalise des économies en termes de stockage et de main-d'œuvre experte, ainsi qu'une latence moindre. Après tout, le temps c'est de l'argent. En outre, l'amélioration de l'efficacité réduit les heures consacrées à la résolution des problèmes matériels et logiciels pour un niveau secondaire de réduction des coûts.
L'évolutivité dépend souvent des ressources : plus d'argent, de main-d'œuvre ou de CPU sont nécessaires pour un processus, plus il est difficile de s'adapter à la demande. La suppression des processus de déplacement de données élimine la puissance de calcul supplémentaire nécessaire pour effectuer des étapes telles que l'exportation ou la conversion de format. La conservation des données dans la base de données réduit le besoin de résoudre les problèmes de compatibilité et améliore l'efficacité du calcul, offrant ainsi une plus grande flexibilité et une évolutivité plus facile pour répondre à la demande.
Les processus ELT/ETL sont une source principale de données en double au sein d'un réseau. La duplication peut provenir de nombreuses sources, telles qu'un problème matériel interrompant l'exportation laissant des données corrompues, ou des problèmes avec les outils de transformation des données entraînant une modification ou une suppression accidentelle. Chaque étape d'un processus ELT/ETL ouvre des risques qui peuvent endommager la qualité et la précision d'un ensemble de données tout en ralentissant l'efficacité du processus.
Le machine learning au sein de la base de données conserve les données au même endroit. Ainsi, il n'est plus nécessaire de déplacer les données, ce qui réduit les exportations/importations et les entrées/sorties. Par conséquent, les processus peuvent se produire dans l'environnement natif, sans dépendre d'autres systèmes. Cela libère des outils et des fonctionnalités d'automatisation pour diverses tâches, telles que le déploiement, l'audit et les vérifications de maintenance. Les utilisateurs peuvent bénéficier de ces fonctionnalités sans se soucier des problèmes de compatibilité ou d'intégration qui peuvent survenir.
Les outils de machine learning dans la base de données sont disponibles dans un éventail de services et de fonctionnalités. Dans de nombreux cas, ces outils sont similaires à ce qu'un fournisseur de base de données peut fournir en tant que fonctionnalités autonomes, soit en tant que sous-ensemble de fonctionnalités intégrées, soit en tant que connexion intégrée à la plateforme de machine learning du fournisseur. Par exemple, Oracle Database fournit des fonctionnalités d'apprentissage automatique au sein de l'environnement pour éliminer la nécessité de déplacer les données d'un système à l'autre. Dans ce cas, Oracle Database fournit l'exploration, la préparation et la modélisation à l'aide d'outils Oracle Machine Learning, tels que SQL, R, Python, REST, le machine learning automatisé (AutoML) et les interfaces no code, ainsi que divers algorithmes disponibles.
Bien qu'il présente des avantages convaincants, le machine learning dans la base de données dépend fortement des fonctionnalités de l'environnement de base de données. Cela peut entraîner des problèmes de migration future ou lorsque le modèle de machine learning nécessite quelque chose qui dépasse les capacités natives de l'environnement.
Les inconvénients et limites les plus courants du machine learning dans la base de données sont les suivants :
Si tout correspond aux besoins et aux objectifs du machine learning d'un projet, passer du test au déploiement est en fait une étape simple. Cependant, ces modèles sont basés sur les fonctionnalités spécifiques des outils de base de données d'une entreprise. Que se passe-t-il lorsque le projet évolue vers quelque chose de plus complexe ou nécessite une migration ? L'utilisation d'outils dans la base de données peut rendre le workload immédiat de machine learning plus rapide et plus efficace, mais l'avenir peut être un point d'interrogation. Il est donc nécessaire de déterminer si les objectifs à long terme correspondent aux fonctionnalités actuelles.
Le machine learning dans la base de données fonctionne uniquement sur les applications de base de données prises en charge et peut offrir un ensemble limité d'API. Cela change à mesure que les capacités des systèmes de machine learning dans la base de données augmentent, mais en règle générale, les outils autonomes offrent plus de puissance et de fonctionnalités, ainsi qu'une multitude de spécialistes disponibles pour aider les entreprises à exploiter ces fonctionnalités.
La plus grande force du machine learning dans la base de données entraîne également l'un de ses principaux inconvénients : en conservant les données dans l'environnement de base de données, les étapes ETL/ELT sont ignorées, mais cela signifie que les opportunités d'audit et de nettoyage des données sont également ignorées.
Dans de nombreux cas, les bases de données ne partagent pas les mêmes ressources de calcul que les outils de machine learning, en particulier pour les modèles à grande échelle ou extrêmement complexes qui nécessitent un calcul hautes performances. Pour cette raison, la portée des modèles de machine learning dans la base de données a souvent un plafond. Chaque configuration organisationnelle est différente. De même, les besoins de chaque projet sont différents et il s'agit d'un compromis à prendre en compte lors des étapes de planification initiales.
HeatWave fournit une IA générative automatisée, intégrée et sécurisée et un apprentissage machine automatique dans un seul service cloud pour les transactions et les analyses à l'échelle des lacs. HeatWave AutoML inclut tout ce dont les utilisateurs ont besoin pour créer, entraîner et expliquer des modèles de machine learning dans HeatWave, sans frais supplémentaires. Avec le ML dans la base de données dans HeatWave, les clients n'ont pas besoin de déplacer leurs données vers un service de machine learning distinct. Ils peuvent facilement et en toute sécurité utiliser l'entraînement, l'inférence et l'explication de vos modèles de machine learning aux données stockées dans MySQL et dans la banque d'objets. HeatWave est disponible sur Oracle Cloud Infrastructure, Amazon Web Services et Microsoft Azure.
Pour commencer, les entreprises doivent s'assurer que leur base de données fournit un ML dans la base de données, ce qui peut changer la donne pour les entreprises qui cherchent à tirer pleinement parti de la puissance du ML. En apportant des algorithmes de machine learning aux données, plutôt que l'inverse, les décideurs obtiennent des analyses plus rapides et plus efficaces.
Les modèles d'IA sont disponibles dans de nombreuses tailles et niveaux de complexité, des LLM aux modèles de machine learning plus simples. Ce qu'ils ont tous en commun ? Une soif de données. Voici 4 composants d'une infrastructure de données prête pour l'IA.
Comment utiliser efficacement le machine learning dans la base de données ?
Le machine learning dans la base de données ne fonctionne que lorsque les entreprises utilisent une base de données qui prend en charge les fonctionnalités dans la base de données. Le pilier de cette base de données pour les ressources de calcul doit être pris en compte, ainsi que la taille et la portée de la base de données et du modèle de machine learning.
Quels sont les avantages du machine learning dans la base de données ?
Le machine learning dans la base de données élimine la nécessité d'extraire et de déplacer des données entre les systèmes. Cela crée un ensemble naturel d'avantages en termes d'efficacité, et dans certains cas, il peut réduire les temps de processus de plusieurs semaines à plusieurs jours car il élimine le besoin de s'appuyer sur des outils externes pour ETL / ELT. Du point de vue général, cela réduit également le coût de possession et augmente l'évolutivité et l'efficacité opérationnelle grâce à une utilisation réduite des ressources.
Quels sont les problèmes à prendre en compte lors de l'utilisation du machine learning dans la base de données ?
Avant de décider d'utiliser le machine learning dans la base de données pour un projet, les équipes doivent évaluer les facteurs suivants :
Ces questions peuvent clarifier les avantages et les inconvénients du machine learning dans la base de données et doivent être prises en compte pour chaque projet.
Quelles sont les tendances futures du ML dans la base de données ?
Les fournisseurs continuent d'améliorer et d'étendre leurs capacités de machine learning dans la base de données, ce qui signifie qu'un certain nombre de tendances se profilent à l'horizon. Alors que de plus en plus d'outils et de plateformes prennent en charge le machine learning dans la base de données, les data scientists seront en mesure de créer et de déployer des modèles plus complexes. Cela offre également une plus grande transparence car le modèle existe sur une plateforme unifiée au lieu d'être limité à qui que ce soit qui utilise et pilote les outils de machine learning. Des capacités accrues signifient également une facilité d'utilisation avec des ensembles de données plus volumineux, et donc une formation, des tests et un déploiement plus rapides.