Business

Agile à l'ère d'A.I. – Reda Kechouri

Agile à l'ère d'A.I. - Reda Kechouri


Agile à l39ère d39A.I. Reda Kechouri - Agile à l'ère d'A.I. - Reda Kechouri

À une époque où A.I. est toujours présent dans nos vies - des recommandations personnalisées aux assistants vocaux, de la reconnaissance d'image aux robots de chat automatisés - il devient évident que la façon dont les entreprises exploitent ces technologies conditionnera leurs succès futurs à leurs concurrents.

Chez ASOS, nous avons rapidement identifié cela comme un facteur clé de notre croissance future: en investissant dans notre talent d'ingénieurs et de scientifiques, en expérimentant les derniers outils et référentiels, en développant des capacités essentielles telles que notre data lake sur mesure. Après tout, notre vision est de pouvoir intégrer les systèmes d'intelligence artificielle facilement et en toute sécurité dans tous les aspects de notre activité.

Mais ces systèmes, en plus de leur complexité inhérente, sont de nature légèrement différente des logiciels traditionnels: nous devons comprendre ce qu'il faut pour les livrer en production. En d'autres termes, nous voulons répondre aux questions suivantes:

Comment pouvons-nous accélérer la livraison de A.I. systèmes? Comment pouvons-nous nous assurer que ces systèmes génèrent de la valeur pour l'entreprise? Comment proposons-nous à l'échelle?

Échantillonnage de produits de mode pour recommandations de tenues

Au-delà des allitérations (cool) et de l'attrait (moins cool) du titre, il était toujours un peu problématique d'utiliser des termes chargés comme «agile» ou «A.I.». donc, avant de plonger, il est utile de préciser ce que ces deux termes signifient pour nous dans ASOS:

  • Le terme «agile» est considéré ici comme plus qu'un ensemble de pratiques qui nous aident à fournir des logiciels. C'est un état d'esprit qui met l'accent sur la confiance et la responsabilisation des personnes qualifiées qui effectuent le travail, s'engagent activement avec le client à chaque étape du processus, s'adaptant rapidement aux conditions changeantes et mettant l'accent sur la transparence.
  • “A.I.” - pour l'intelligence artificielle - a été le mot à la mode du jour depuis un certain temps déjà et fait référence à la capacité des systèmes informatiques à résoudre des problèmes de intelligent façon. De façon plus pragmatique, le récent boom d’I.I. correspond au boom de l’un de ses sous-ensembles: Machine Learning, c’est-à-dire la capacité des systèmes informatiques à apprendre pour résoudre le problème avec les données. Ce qui est couvert dans ce poste concerne exclusivement la dernier.

À ce stade, il convient également de souligner que l’apprentissage automatique n’est en aucun cas un substitut du développement logiciel traditionnel: il est nécessaire de recourir aux deux systèmes pour résoudre différents types de problèmes et pour qu’ils soient compatibles les uns avec les autres. Au fil du temps, nous les voyons devenir de plus en plus liés.

Mais ils sont intrinsèquement différents par nature: alors que dans la programmation traditionnelle nous construire un logiciel pour résoudre un problème, en apprentissage machine, nous construire un logiciel lequel apprend résoudre un problème.

Principales différences entre la programmation traditionnelle et l'apprentissage automatique

La différence peut sembler ténue au début (il suffit d’ajouter deux mots!), Mais comme vous pouvez le constater dans le tableau ci-dessus, les implications d’une approche différente ont de nombreuses ramifications. Notamment dans la manière dont nous souhaitons mettre ces systèmes en production.

Tout en adhérant aux normes d'ingénierie les plus strictes définies par l'organisation (fiabilité, disponibilité, journalisation, sécurité, surveillance, alertes, pipelines CI / CD, etc.), nous devons imaginer de nouveaux processus, développer de nouveaux outils, faire évoluer nos architectures existantes et inventer. de nouvelles pratiques pour accélérer la livraison de ces systèmes. Une fois que nous les avons découvertes, nous pouvons envisager d’étendre les capacités de l’intelligence artificielle dans notre parc technologique.

Lorsqu’il s’engageait dans cette voie, il semblait judicieux de commencer modestement au lieu de concevoir et de mettre en œuvre de grands changements organisationnels liés à des plans de livraison ambitieux. L'idée était de comprendre les technologies et les méthodes de travail tout en minimisant les risques pour l'entreprise.

Nous avons identifié un cas d'utilisation non critique (recommandations personnalisées de marque), constitué une petite équipe interfonctionnelle composée d'individus motivés (ingénieurs + scientifiques) et sélectionné une technologie qui nous aiderait à concrétiser notre vision (Azure Apprentissage Machine).

Le premier objectif était de prouver que la technologie était suffisamment mature (Pouvons-nous avoir un seul pipeline de bout en bout qui gère l'ingénierie des fonctionnalités, la formation des modèles et la maintenance de notre API d'inférence?). La seconde était de comprendre comment nous pourrions travailler ensemble (Comment optimiser notre façon de travailler pour fournir des modèles d’apprentissage automatique plus rapidement et plus souvent?).

Recommandations de la marque au début du prototype sur iOS

Quelques mois plus tard, cette équipe a livré notre API Brand Recs à l'entreprise. Il s'agissait de la première application d'apprentissage automatique de bout en bout jamais livrée sous ASOS. Fait intéressant, nous avons exécuté un MVT sur une liste statique de marques et il s'est avéré que les clients préféraient la liste statique à la liste personnalisée! Bien entendu, les blocs de construction étaient maintenant en place et nous pouvions parcourir très rapidement ce modèle pour apporter de petites modifications au modèle et éventuellement vaincre la liste statique.

L'important était ailleurs: nous avons prouvé avec succès la technologie et nous avons compris comment nous pourrions travailler ensemble. Nous pouvions maintenant voir un chemin clair, à travers un ensemble de principes directeurs, quant à la manière dont nous pourrions adapter notre approche à l’ensemble de l’organisation.

1. Collaboration interfonctionnelle

Nous reconnaissons que nous avons besoin d'un mélange de compétences et de points de vue pour proposer efficacement des modèles d'apprentissage automatique. Nous avons pris la décision décisive de passer d’équipes de composants (par exemple, une équipe Big Data / Data Science / API) à des équipes interfonctionnelles entièrement alignées pour obtenir des résultats opérationnels clairs. Ces équipes peuvent être composées d’ingénieurs en logiciel, de scientifiques en apprentissage automatique, de spécialistes en informatique, de personnel d’exploitation, d’ingénieurs en données volumineuses, d’assurance qualité, de propriétaires de produits, d’experts en la matière, etc. .

Cette approche a naturellement ouvert des discussions sur l'opportunité d'unifier notre pile technologique. Bien que C # soit le langage de programmation dominant dans notre département de technologie, notre plate-forme est centrée sur Python pour développer nos pipelines de génération d'entités et de formation, nos modèles d'apprentissage automatique, nos API d'inférence. Avoir un seul langage de programmation pour différentes activités favorise la polyvalence et la propriété partagée entre nos équipes.

2 Mis en place pour itérer et expérimenter

Les modèles d’apprentissage automatique sont rarement optimaux lors de leurs premières itérations: nous avons souvent besoin d’affiner les fonctionnalités utilisées pour la formation, d’essayer peut-être différents algorithmes et d’ajuster leurs paramètres. De plus, les modèles ne sont pas absolus par nature et nous pouvons toujours travailler pour les rendre plus précis et / ou ajuster ce pour quoi ils doivent être optimisés.

Cela a deux implications majeures si nous voulons apporter des améliorations de modèle rapidement et souvent:

  • La capacité d'itérer rapidement
  • La capacité de tester et de mesurer rapidement

Nous avons investi très tôt dans des fonctionnalités de base telles que le provisionnement automatique d'infrastructure, les outils de suivi d'expérimentation centralisés, les tableaux de bord MVT en temps quasi réel, l'infrastructure Data Lake, l'infrastructure CI / CD, etc. Lors de la création d'un nouveau projet, l'accent est mis sur la création de l'infrastructure sous-jacente qui activer les itérations rapides, même si le modèle est loin d’être parfait au début.

Ces fonctionnalités sont toujours conçues pour un développement de produit spécifique, jamais dans l’intention de remplir une liste utopique de catalyseurs souhaités pour la plate-forme. Si nous devons réaliser un autre projet, nous recherchons les possibilités d’utiliser ce qui a été construit auparavant, par exemple, nous le reproduisons ou nous extrayons un cadre réutilisable pour les travaux futurs.

Cette approche ne fonctionne que si la communication et la sensibilisation sont élevées entre les équipes. En plus des revues de sprint traditionnelles où tout le monde est invité à discuter des progrès, nous encourageons la discussion avec des groupes de discussion sur des sujets spécifiques (Databricks, AKS, examens par des pairs, sécurité, etc.) où ingénieurs et scientifiques peuvent collaborer, apprendre ou enseigner en dehors de leur environnement. équipe.

3 Différentes initiatives avec différents délais

La recherche est un élément essentiel de la construction de modèles d’apprentissage automatique: elle nous donne l’espace nécessaire pour expérimenter de nouvelles technologies et de nouvelles approches algorithmiques, elle encourage les scientifiques de l’apprentissage automatique à s’impliquer dans la communauté en publiant des articles et en collaborant avec les universités et nous aide à attirer de nouveaux talents. qui recherchent des entreprises innovantes.

Mais la recherche peut prendre beaucoup de temps, être incertaine et peut ne générer aucun retour visible sur investissement immédiat. La manière dont nous hiérarchisons et planifions nos recherches par rapport à nos livraisons devient critique lorsque nous nous engageons avec l'entreprise.

Nous visons une perspective de 18 mois au cours de laquelle nous équilibrons nos livraisons à court terme avec nos initiatives à moyen et à long terme afin de fournir de la valeur continue à nos clients tout en laissant un espace pour la recherche et l'innovation. Nous comprenons également que ces projets, bien que de nature différente, ne fonctionnent pas de manière isolée. En fait, nous recherchons constamment des possibilités de les combiner lors de la révision de nos plans.

4 AI n'est pas une île

Les modèles d’apprentissage automatique sont généralement inutilisables: un moteur de recommandation ne peut fonctionner pleinement sans une expérience utilisateur convaincante; un modèle de valeur client à vie doit s’intégrer dans une stratégie marketing.

De plus, leur impact peut parfois être mal compris ou difficile à saisir. Comme mentionné précédemment, il s’agit plus d’une simple fonctionnalité plug-and-play: c’est une nouvelle façon de résoudre les problèmes alimentés par la quantité croissante de données dont nous disposons.

Nous devons être à l'aise avec le manque d'exigences explicites et la nécessité de faire des hypothèses. Avec les modèles prédictifs, c'est parfois comme si nous devions trouver les problèmes que nous pourrions résoudre avec les solutions que nous avons découvertes, et non l'inverse.

Dans chacune de nos équipes interfonctionnelles, nous avons traducteurs. Leur travail consiste à combler sans relâche le fossé entre notre équipe d’ingénieurs et de scientifiques d’une part et nos parties prenantes de l’autre. Leur fonction officielle peut différer (chef de produit, analyste de données, expert en la matière, analyste d’affaires), mais leur fonction est essentiellement la même: établir des relations étroites avec l’entreprise, renforcer la transparence de nos équipes et diriger le développement de produits pour atteindre nos objectifs.

À une époque où il existe une préoccupation légitime liée à l'impact des systèmes d'IA sur notre mode de fonctionnement et celui de nos collaborateurs, il est essentiel d'expliquer et de renforcer cette confiance. Cela peut sembler vrai pour la plupart des initiatives logicielles, mais cela est encore plus vrai pour les systèmes d'intelligence artificielle: le coût de l'adoption et de l'intégration devient aussi important (sinon plus) que l'investissement en technologie.

Flux d'accueil personnalisés sur iOS

Chez ASOS, les temps sont passionnants pour AI: nous pouvons clairement voir l’impact des systèmes que nous construisons sur notre entreprise et révolutionner notre expérience client; nous pouvons itérer et expérimenter plus rapidement grâce à nos investissements en technologie et à notre compréhension commune de la manière dont nous souhaitons travailler ensemble; l’entreprise nous confie le potentiel de nos données.

Une fois que notre vision a été clarifiée, nous avons choisi une approche progressive et empirique, en commençant petit et en augmentant peu à peu. Nous nous sommes d'abord concentrés sur notre personnel et nos équipes. Nous avons combiné l'adoption de nouvelles technologies avec le changement culturel, car nous les voyons profondément imbriqués. Nous nous efforçons d'expliquer ce que nous faisons sans relâche.

Nous entrons maintenant dans la prochaine phase de notre transformation, dans laquelle nous commençons à transférer les capacités de l'intelligence artificielle à d'autres plates-formes technologiques. Une nouvelle série de questions va émerger (Comment équilibrer autonomie et alignement? Comment gérons-nous la recherche et l'embauche à grande échelle? Comment envisageons-nous la livraison multiplate-forme tout en restant au plus près des besoins de l'entreprise?). Nous sommes convaincus que nous pourrons les surmonter, étape par étape et collectivement, en restant fidèles à nos principes.

Afficher plus

SupportIvy

SupportIvy.com : Un lieu pour partager le savoir et mieux comprendre le monde. Meilleure plate-forme de support gratuit pour vous, Documentation &Tutoriels par les experts.

Articles similaires

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Bouton retour en haut de la page
Fermer