Il y a beaucoup de battage médiatique autour de l’utilisation de l’IA dans tous les domaines, du marketing au recrutement en passant par les opérations et la sécurité. Notre étude annuelle indique que la plupart des organisations s’intéressent avec intérêt à l’IA dans les domaines de l’activité, des opérations et de la sécurité.
Rien de tout cela n’est une surprise. De nombreuses enquêtes indiquent une adoption saine de l’IA pour soutenir une grande variété de fonctions commerciales et informatiques.
Ce dont on ne parle pas toujours, c’est de la manière dont l’IA est intégrée au développement.
La valeur fondamentale de l’IA pour l’entreprise et la sécurité réside dans sa capacité à reconnaître des modèles et des relations qui produisent des informations exploitables. Beaucoup ne considèrent pas le « moteur » derrière cette capacité, et ne creusent donc jamais vraiment les détails des technologies d’IA utilisées pour découvrir comme par magie des informations précieuses.
L'apprentissage automatique est une branche spécifique de l'IA qui se concentre sur l'analyse et la modélisation des données. Son utilisation est applicable à la sécurité car, avec suffisamment de temps et de données, il est capable d’identifier des modèles qui indiquent un comportement anormal en temps réel. De même, il peut trouver des relations obscures dans les données commerciales qui représentent des opportunités de commercialisation de produits et de services.
Mais l’apprentissage automatique excelle également dans la modélisation, c’est-à-dire dans l’exécution de centaines de scénarios « et si » pour produire une meilleure compréhension de la relation complexe entre plusieurs variables. En développement (ingénierie), ces variables peuvent être la taille des données, la mémoire allouée, la vitesse des E/S, la bande passante du réseau et les paramètres de la machine virtuelle. L’apprentissage automatique est assez flexible et si vous identifiez les variables, vous pouvez utiliser l’apprentissage automatique pour modéliser différentes combinaisons de ces variables afin de découvrir un ensemble « optimal ».
Par exemple, Laurent Querel, ingénieur distingué de F5, et F5 Sr. L'architecte Sébastien Soudan s'est associé et a récemment publié un article décrivant comment ils ont conçu un modèle pour « construire un moyen efficace de transférer des données de PubSub vers BigQuery ».
Ils expliquent également pourquoi l’utilisation de l’apprentissage automatique est un meilleur choix pour l’optimisation des logiciels aujourd’hui, et ils l’ont si bien fait que je vais simplement les citer :
« Aujourd’hui, l’optimisation des logiciels est un processus itératif et principalement manuel où les profileurs sont utilisés pour identifier les goulots d’étranglement des performances dans le code logiciel. Les profileurs mesurent les performances du logiciel et génèrent des rapports que les développeurs peuvent examiner et optimiser davantage le code. L’inconvénient de cette approche manuelle est que l’optimisation dépend de l’expérience du développeur et est donc très subjective. Il est lent, non exhaustif, sujet aux erreurs et sensible aux biais humains. La nature distribuée des applications cloud natives complique encore davantage le processus d’optimisation manuelle.
Une approche sous-utilisée et plus globale est un autre type d’ingénierie des performances qui s’appuie sur des expériences de performances et des algorithmes d’optimisation de type boîte noire. Plus précisément, nous cherchons à optimiser le coût opérationnel d’un système complexe avec de nombreux paramètres.
Les facteurs qui sous-tendent l’utilisation de l’IA, en particulier de l’apprentissage automatique, dans le développement sont à peu près les mêmes que ceux qui motivent son adoption dans les opérations informatiques : les processus manuels sont lents, sujets aux erreurs et sensibles aux biais humains.
Lorsque nous parlons de la modernisation de l’informatique et de la marche constante vers une entreprise entièrement numérique, cela inclut le développement et l’ingénierie.
Je vous encourage à lire « Optimisez vos applications à l'aide de Google Vertex AI Vizier », même si c'est juste pour avoir une idée du processus de conception d'un modèle approprié et de ce qu'ils ont appris de leur expérience.