Laurent - stock.adobe.com

RPT-1 : SAP lance un « modèle de fondation » dédié aux données relationnelles

L’éditeur allemand applique les enseignements de la compréhension du langage naturel et de la génération de texte aux données relationnelles. L’objectif : simplifier grandement le déploiement d’algorithmes de prédiction en production.

Lors de son TechEd organisé à Berlin, SAP a présenté le fruit de deux ans de travail en matière d’IA. Dès 2023, Erik Marcadé, alors vice-président de l’analytique avancée chez SAP, avait évoqué que l’éditeur allemand envisageait l’entraînement d’un « modèle de fondation ».

Ce qu’il n’avait pas dit, c’est que ce dernier mêlerait machine learning traditionnel et compréhension avancée du langage.

SAP-RPT-1 (RPT, pour Relational Pre-trained Transformer) est dans les faits, un modèle Transformer modifié pour deux tâches de prédiction – régression et classification – à partir de tables. Pour rappel, le terme Transformer désigne une architecture de réseaux de neurones. C’est le socle des modèles NLP. Et des grands modèles de langage popularisés par l’application ChatGPT.

Techniquement, RPT-1 peut être perçu comme un réseau de neurones récurrent.

Il est pensé pour optimiser des prédictions effectuées sur des données structurées en exploitant le contexte sémantique.

« SAP-RPT-1 est conçu pour comprendre les relations dans les données structurées, telles que les bons de commande, les transactions financières, les tables de performance des fournisseurs ou les indicateurs de ressources humaines », indique l’éditeur dans sa documentation. Il suffit de lui confier un fichier CSV en entrée. Sa tâche est de remplir la valeur à prédire.

La collection commerciale inclut deux modèles : SAP-RPT-1-Small et SAP-RPT-1-Large. Ils sont pour l’instant disponibles gratuitement depuis une interface « playground » dédiée ou via API à travers le Generative AI Hub. La disponibilité générale est prévue plus tard au quatrième trimestre 2025.

Dans son bac à sable, l’éditeur décline différents scénarios utiles en entreprise. Maintenance prédictive, recommandation d’offres commerciales, prédiction de retard de paiements, priorisation de tickets de support client, estimation de l’empreinte carbone de matériaux… Tout y passe ou presque. D’ailleurs, SAP-RPT-1 peut prédire des valeurs (ex. : la quantité de CO2 généré par le sourcing) et des mots (ex. : le niveau de criticité d’un ticket).

La promesse de SAP est de réduire drastiquement, voire de supprimer l’entraînement autrefois nécessaire des algorithmes d’analytique prédictive. RPT-1 présenterait des résultats 2 à 3,5 fois supérieurs comparativement aux modèles de sa catégorie et aux LLM (Large Language Model) pour les mêmes tâches.

Une famille de modèles qui se développe en parallèle des LLM

L’équipe marketing de SAP ne perd pas ses vieilles habitudes. RPT-1 (à prononcer « rapide one ») est le renommage de ContextTab, un modèle « open weight » (sous licence Apache 2.0). Il est désormais accessible sous l’appellation sap-rpt1-oss.

C’est le membre d’une nouvelle famille de modèles. Ceux-là exploitent « l’apprentissage en contexte » au sein de données tabulaires. L’un des premiers du genre, né en novembre 2022 comme ChatGPT, se nomme TabPFN. Il a été entraîné par des chercheurs de l’université de Fribourg, l’Université de médecine Charité de Berlin et du centre d’intelligence artificielle de l’équipementier Bosch.  

Certains d’entre eux ont fondé la startup PriorLabs, en 2024. Ils ont ainsi présenté TabPFNv2. Un modèle qui a inspiré TableICL, un projet mené par une équipe interdisciplinaire au sein de l’INRIA.

Une équipe de trois chercheurs des universités de Washington, d’Harvard et de Stanford ont présenté en 2024 Tabula-8B, un modèle de langage de prédiction de tables.

Ce sont ces projets qui ont inspiré des chercheurs au sein de SAP SE (Allemagne) et SAP France pour entraîner ContextTab.

L’article de recherche associé parut en juin et qui sera présenté lors du NeurIPS de San Diego indique que SAP s’appuie sur l’architecture TabPFN. Ainsi, il exploite une version alternative du mécanisme d’attention hybride. Dans un LLM, il sert à interpréter la place d’un mot dans une phrase et dans un texte. Ici, il est exploité pour comprendre la relation entre les colonnes et la relation entre les lignes dans une table.

« Conformément à TabPFN, l’attention entre les colonnes n’est pas masquée, tandis que l’attention entre les rangées est masquée de manière que chaque rangée ne puisse s’intéresser qu’au contexte fourni », écrivent les chercheurs de SAP. « Pour augmenter la modularité de notre code, le bloc MLP feedforward du Transformer est répété après chaque bloc d’auto-attention de sorte que les blocs “horizontaux” et “verticaux” ont la même structure ».

Du fait de cette architecture à deux dimensions (horizontale et verticale), ContextTab (RPT-1) est proportionnellement deux fois plus grand que le réseau de neurones BERT, imaginé par Google Research. Le modèle final contient 172 millions de paramètres, dont 16 millions entraînable. Il est doté d’une fenêtre de contexte de 8 000 tokens.

Une fonction d’entropie croisée (de perte) après un bloc de perceptron multiple est utilisée pour réaliser la classification. Pour l’exercice de régression, le modèle « prédit la valeur en virgule flottante de la cible, puis elle est écrêtée et normalisée ».

L’apport des « données du monde réel »

L’apport de ContextTab se joue davantage au niveau de la vectorisation et des données utilisées lors de l’entraînement.

L’encodage des données est différent suivant leur nature. Trois techniques distinctes sont utilisées pour le texte, les dates, les nombres et l’en-tête des colonnes. Pour le texte, un modèle d’embedding de petite taille est utilisé. L’en-tête des colonnes subit le même traitement, couplé à une fonction de normalisation.

Les dates, les jours, les mois et les années et leur signification (par exemple quand ce sont des périodes de vacances ou qu’ils sont fériés) sont encodés dans trois vecteurs distincts.

Les nombres sont encodés à l’aide d’un vecteur à une dimension. Selon les chercheurs, les données numériques sont normalisées (écrêtage, centrage-réduction) pour éviter les problèmes d’explosion des gradients à l’entraînement. Puis, elles sont encodées par multiplication avec un vecteur appris. Les scientifiques ont incorporé un biais pour que les valeurs manquantes (NaN) soient remplacées par un 0.

« Il convient de noter que tous les embeddings ci-dessus sont entièrement équivariants en cas de permutations des lignes ou des colonnes », précisent les chercheurs. Cette symétrie rend les prédictions « plus robustes et reproductibles ».

Lors de l’entraînement de ContextTab, l’équipe de SAP a utilisé 2,18 millions de tables issues du jeu de données T4, à l’instar des chercheurs derrière Tabula-8B. Ces tables sont issues de différentes sources, dont les dépôts Git ouverts ou CommonCrawl (une extraction géante du Web).

 TabPFN et TabICL n’ont été entraînés qu’avec des données synthétiques. « Si l’utilisation de données synthétiques présente de nombreux avantages, en particulier sa diversité à grande échelle, elle a pour conséquence que les données ne contiennent pas de valeurs sémantiquement significatives telles qu’on les trouve dans les applications du monde réel », distinguent les chercheurs de SAP.

Résultat, ContextTab obtiendrait de meilleurs résultats que ses aînés sur les données sémantiques et proposerait des performances proches des modèles « non sémantiques » (XGBoost, par exemple). Il ne dépasse pas toutefois AutoGluon, un framework d’autoML imaginé par AWS en 2020.

Industrialiser RPT-1

Avec les versions commerciales de RPT-1, SAP dit avoir amélioré ces résultats en s’appuyant sur des données réelles. Le modèle open weight réclame un seul GPU Nvidia H100 (80 Go de VRAM) pour s’exécuter correctement. C’est à la fois peu et beaucoup au vu des tâches à accomplir. C’est en tout cas beaucoup mieux que la plupart des LLM.

« L’utilisation d’un LLM pour effectuer la même tâche de prédiction nécessite jusqu’à 100 000 fois plus d’opérations en virgule flottante (FLOP) », assure Philip Herzig, CTO et Chief AI Officer chez SAP, dans un billet de blog. « Cela prend jusqu’à 50 fois plus de temps (malgré des équipements nettement plus puissants) ».

Toutefois, comme les modèles de langage, il n’y a pas de magie. La documentation de SAP précise qu’il faut d’abord s’assurer de la bonne qualité des données au sein de tables. Cela veut dire supprimer au maximum les valeurs manquantes, de correctement nommer les colonnes, d’enregistrer un type de données par colonne et de n’appliquer ce traitement que sur les données nécessaires. Et au CTO de préciser qu’il est possible de fine-tuner la version open weight de RPT-1.

La technologie est intéressante sur le papier. Notamment au vu des déploiements passés du machine learning au sein de l’écosystème SAP. Reste à l’éditeur allemand de l’intégrer dans ses solutions. D’en simplifier le fine-tuning, au besoin.  

L’annonce permet surtout à SAP de tâter le terrain. La centaine de commentaires sous le post LinkedIn de Philip Herzig qui accompagne l’annonce reflète un engouement certain. Et pas seulement au sein des équipes SAP. Les partenaires semblent bien accueillir la solution.

Pour approfondir sur Data Sciences, Machine Learning, Deep Learning, LLM