L'intelligence artificielle fait beaucoup parler d'elle ces derniers temps, certains allant jusqu'à avancer que nous sommes à l'aube de la révolution tant attendue de l'IA. Cet engouement est principalement dû aux algorithmes de pointe qui sous-tendent ChatGPT et d'autres modèles liés au langage. Même si je pense que ces modèles sont encore loin d'une IA générale (c'est-à-dire une IA capable d'apprendre à résoudre n'importe quelle tâche ou n'importe quel problème), il ne fait aucun doute que les algorithmes basés sur l'intelligence artificielle recèlent un potentiel considérable.
Bien que ce domaine existe depuis longtemps, ce n'est que récemment (au cours de la dernière décennie) que les approches d'apprentissage profond ont commencé à prendre leur essor. Ces progrès sont dus à plusieurs facteurs clés.
Cet article de blog abordera la manière d'adapter l'intelligence artificielle à la compréhension des interfaces utilisateur dans le cadre des tests d'accessibilité, l'importance de l'intégrité des algorithmes et des données pour l'accessibilité, ainsi que la manière dont l'apprentissage automatique (l'apprentissage automatique est un sous-domaine de l'intelligence artificielle qui recourt à diverses méthodes statistiques et mathématiques) peut être utilisé pour simplifier les tests d'accessibilité.
Progrès en matière d'apprentissage automatique
Tout d’abord, le temps a permis aux chercheurs de collecter des données, mais aussi de se concentrer sur des données de haute qualité. C’est l’un des axes sur lesquels nous nous sommes concentrés sur Deque. Des ensembles de données plus volumineux nécessitent de consolider les pratiques de gestion des données. À leur tour, des ensembles de données plus volumineux et de meilleures méthodes de collecte de données se traduisent par de meilleures performances des algorithmes entraînés sur ces données.
Lorsque vous augmentez la taille de vos ensembles de données, il est important de veiller à ne pas introduire de bruit et à cibler votre collecte de données sur des domaines qui permettront réellement d'améliorer vos algorithmes d'intelligence artificielle (IA).
D'autre part, les algorithmes ne cessent de gagner en sophistication. Comme nous l'avons mentionné, le réseau neuronal convolutif de base existe depuis les années 1980 et constitue, à bien y réfléchir, une technologie relativement rudimentaire. Depuis lors, des approches nettement plus avancées en matière de vision par ordinateur ont vu le jour, contribuant grandement à améliorer les performances de l'IA.
Enfin, on dispose désormais de matériel plus performant pour entraîner les réseaux neuronaux. Les cartes graphiques (GPU) actuelles sont très efficaces pour traiter de grandes quantités de données en parallèle et à une vitesse impressionnante. Elles ont considérablement facilité l'entraînement sur de grands ensembles de données et permettent d'obtenir des gains considérables.
ChatGPT a récemment suscité un véritable engouement autour de l'IA. Pour ceux qui n’ont pas encore entendu parler de ChatGPT, il s’agit de ce qu’on appelle un « grand modèle linguistique » (LLM). Les LLM sont entraînés sur un corpus de données incroyablement vaste, ce qui leur permet de prédire très efficacement les séquences suivantes dans un texte ou un code. Ils fonctionnent selon les mêmes principes probabilistes que d’autres algorithmes. Les LLM sont très performants pour générer rapidement des réponses claires et compréhensibles à des requêtes, compléter du code, et bien plus encore.
Il est important de noter que ChatGPT ne fonctionne pas vraiment très bien en matière d'accessibilité. En effet, il a été entraîné sur un corpus général de code et d'informations disponibles sur Internet, qui, comme nous le savons, n'est pas particulièrement fiable du point de vue de l'accessibilité.
Spécialisation en apprentissage automatique au service de l'accessibilité
Pour aborder la question de l'accessibilité à l'aide de l'IA et de l'apprentissage automatique, nous avons besoin d'un modèle spécialisé, entraîné sur des données spécifiques. L'apprentissage automatique est particulièrement adapté aux cas où l'on souhaite comprendre un sujet de manière un peu plus approfondie que ne le permet la programmation seule.
Par exemple, l'apprentissage automatique peut s'avérer utile si vous souhaitez comprendre quel est le rôle d'un objet ou quelle est son importance dans une interface utilisateur. Nous utilisons l'apprentissage automatique pour déduire le rôle joué par un objet dans une interface utilisateur. Cela nous permet ensuite de vérifier que sa programmation dans le code de balisage répond à certaines conditions.
Cela s'avère utile à plusieurs égards, car cela permet de réduire le nombre de tests entièrement manuels et le niveau de connaissances requis pour effectuer ces tests, tout en améliorant l'efficacité. Chez Deque, nous abordons ce problème spécifique en recourant à plusieurs techniques d'apprentissage automatique : la reconnaissance optique de caractères, la vision par ordinateur et l'IA centrée sur l'humain.
Il y a quelques années, nous nous sommes donné pour mission de constituer un ensemble de données à grande échelle, de haute qualité et axé sur l'accessibilité, à l'aide d'algorithmes conçus pour interpréter la conception des interfaces utilisateur. Il convient de noter que l'apprentissage automatique est une approximation statistique des données du monde réel. À moins de pouvoir s'appuyer sur un exemple très simple et très basique, il est impossible de tout faire correctement.

Dans le graphique ci-dessus, j’ai tracé ce qu’on appelle une « frontière de décision ». Cette frontière permet de séparer assez bien les points bleus et orange en leurs classes respectives. Tout ce qui se trouve d’un côté de la frontière de décision sera considéré comme appartenant à une classe, et tout ce qui se trouve de l’autre côté appartiendra à l’autre classe. Cependant, à moins de modéliser une frontière de décision d’une complexité arbitraire — ce qui nuirait en réalité aux performances du modèle sur des données réelles différentes de celles utilisées pour l’entraînement —, certains éléments seront classés de manière erronée. Les algorithmes et les tests qui sous-tendent les modèles d’apprentissage automatique sont conçus pour tenir compte d’un certain degré de propension à l’erreur inhérent à ces modèles. Plutôt que d’utiliser les modèles d’apprentissage automatique comme une source de vérité absolue, nous les utilisons pour guider les utilisateurs vers une conception accessible.
Vision par ordinateur et accessibilité
Sur Deque, nous utilisons la vision par ordinateur pour aborder la question des rôles sémantiques. La vision par ordinateur est un domaine de l'intelligence artificielle qui permet aux ordinateurs et aux systèmes d'extraire des informations pertinentes à partir d'images numériques, de vidéos et d'autres données visuelles, puis d'agir ou de formuler des recommandations sur la base de ces informations.
DequeLes modèles d'apprentissage automatique de [nom de l'entreprise] examinent une page web et analysent l'aspect visuel de tous les éléments qui la composent. Ils comparent également ces éléments entre eux afin d'intégrer davantage de contexte, déterminant ainsi le rôle de chaque élément de la page et s'il s'agit d'un élément interactif ou structurel.
Par exemple, un composant structurel peut être un titre, une zone de navigation, une liste, un tableau, etc. Les composants interactifs peuvent être des boutons, des icônes, des onglets, des listes déroulantes et des champs de saisie. En tirant parti de notre vaste base d'utilisateurs pour collecter des données d'apprentissage automatique, nous disposons d'un nombre considérable de clients et, par conséquent, d'un nombre considérable d'écrans sur lesquels nous pouvons entraîner nos modèles.

Voici un exemple d'application de la vision par ordinateur : ci-dessus, une capture d'écran d'une page de réservation de vol comportant une liste déroulante permettant de choisir entre un aller-retour, un aller simple ou un itinéraire à plusieurs étapes. On y trouve également un sélecteur de date, un bouton contextuel, une autre liste déroulante pour sélectionner le nombre de billets, une icône de validation, deux cases à cocher et une dernière liste déroulante pour la recherche avancée.
DequeLe système d'apprentissage automatique (ML) analyse cette page Web et génère un cadre de sélection autour de chaque élément de la page, en indiquant le rôle qu'il lui attribue. Nos tests guidés intelligents (IGT), intégrés à l'extension de navigateur axe DevTools, comparent cette prédiction au contenu réel du balisage. Cela nous permet d'approfondir nos tests et de nous assurer que les éléments ont bien été programmés avec le rôle approprié.
L'importance de disposer de données fiables pour l'accessibilité
Nous faisons appel à une équipe d’experts qualifiés pour étiqueter nos données, afin de garantir que les données d’entraînement utilisées pour nos algorithmes soient précises et fiables. Cela revêt une importance particulière en matière d’accessibilité, car on ne peut pas se contenter de se fier au contenu du balisage, celui-ci comportant souvent des problèmes liés aux rôles sémantiques. Dans ce cas précis, nous faisons appel à des experts formés aux modèles de conception d’interfaces utilisateur pour vérifier l’exactitude et l’intégrité de nos données.
Des experts humains veillent à ce que les informations étiquetées et saisies dans nos réseaux neuronaux correspondent bien au contenu sémantique réel de la page, et non à ce qui figure dans le balisage. Cela garantit une meilleure précision de nos modèles d'apprentissage automatique, même si la collecte de ces données est souvent plus longue et plus coûteuse. Nous tenons à préserver la véracité et la fiabilité des données produites.
Utilisation de l'IA pour repérer des éléments interactifs
L'un des premiers exemples illustrant la manière dont Deque met cette technologie en pratique se trouve dans notre outil IGT dédié aux éléments interactifs. Nos tests d'éléments interactifs, basés sur l'apprentissage automatique, analysent l'apparence visuelle des pages web et vérifient que le rôle sémantique d'un objet sur la page correspond bien à ce que l'apprentissage automatique identifie comme tel.
Par exemple, nos algorithmes d'apprentissage automatique peuvent analyser une capture d'écran d'une page web et identifier les boutons, les champs de saisie et autres éléments de contrôle, exactement comme le ferait un utilisateur voyant. Cette interprétation est ensuite comparée au balisage afin de vérifier que le rôle attribué est cohérent. Une fois que nous pensons avoir déterminé le rôle d'un élément, nous pouvons procéder à des tests supplémentaires.
Vous trouverez ci-dessous la liste des éléments interactifs que notre système d'apprentissage automatique est capable d'identifier de manière fiable :
- Accordéon, Publicité, Carte, Carrousel, Case à cocher, Élément de navigation actif, Sélecteur de date, Icône, Champ de saisie, Lien, Élément de liste, Liste déroulante, Carte, Fenêtre modale, Barre de navigation, Bouton contextuel, Bouton radio, Onglet sélectionné, Curseur, Commutateur, Liste d'onglets, Bouton de texte, Élément de navigation non sélectionné, Onglet non sélectionné, Vidéo
Les éléments les plus courants sont les éléments de navigation, les listes déroulantes, les champs de saisie, les boutons radio, les cases à cocher et les boutons de texte.

Ci-dessus, vous trouverez un exemple tiré de la page de connexion d’Amazon Web Services. En haut de la page, un en-tête indique « Se connecter en tant qu’utilisateur IAM ». Les cadres de sélection sur la capture d’écran montrent que notre système d’apprentissage automatique a identifié tous les éléments de cette page. Tous les champs de saisie, le bouton de connexion, les liens et les logos ont été identifiés et correctement classés. Notez que nous avons également identifié tous les champs de saisie ainsi que les libellés qui leur sont associés.
Notre modèle d'apprentissage automatique est capable d'associer visuellement les champs de saisie et leurs libellés. En d'autres termes, nous n'avons pas besoin de nous fier au contenu du balisage pour savoir quels champs de saisie correspondent à quels libellés.

Ci-dessus, une capture d'écran de la page d'accueil de Walmart. Remarquez que cette page comporte de nombreux éléments interactifs et structurels différents. Notre modèle d'apprentissage automatique les a tous identifiés. En haut de la page, on trouve un menu de navigation comportant plusieurs icônes et éléments de navigation. Par souci de clarté, certaines étiquettes ont été omises.
Il est intéressant de noter que cette page contient plusieurs tableaux de présentation ou de mise en page imbriqués. À l'intérieur de chacun de ces tableaux, nous avons identifié les cartes, les titres et les images. Même sur une page complexe comportant des composants imbriqués, notre système d'apprentissage automatique est capable d'identifier tous les éléments présents.

Ci-dessus se trouve la page OpenSnow consacrée à ma station de ski préférée, Mammoth Mountain. Cette page web comporte un menu de navigation et un menu à onglets. À bien des égards, ces deux éléments sont assez similaires, mais ils présentent une différence importante, et notre algorithme d'apprentissage automatique est en effet capable de les distinguer.
Nous avons également identifié le bouton permettant d'afficher une carte, tous les titres, tous les éléments de la liste, toutes les icônes, le champ de recherche en haut de la page et le bouton à bascule en bas de la page.

L'exemple ci-dessus présente notre outil dédié aux éléments interactifs et illustre la manière dont nous exploitons concrètement les résultats du modèle d'apprentissage automatique. Cette capture d'écran provient de l'Eastern Sierra Avalanche Center, une organisation à but non lucratif qui publie des prévisions sur le risque d'avalanche pour chaque jour de l'année.
En analysant leur page à l'aide de notre outil dédié aux éléments interactifs, nous avons pu identifier un petit problème : il existe un menu de navigation qui permet de choisir parmi plusieurs options. L'élément de navigation analysé porte le libellé « accidents ». Cet élément a été balisé comme un élément de liste, et le rôle calculé par l'outil dédié aux éléments interactifs pour cet élément est « élément de liste », mais notre IA a détecté qu'il s'agissait en réalité d'un élément de menu. Notre IA a-t-elle raison ?
Au lieu d’indiquer à l’utilisateur qu’il a tort, nous lui posons une question pour le guider vers le balisage accessible approprié. Nous lui donnons la possibilité de répondre : « Non, en fait, votre IA se trompe ici. Nous préférons l’option que nous avons choisie. » Dans ce cas précis, on pourrait faire valoir qu’un élément de menu constitue le balisage le plus approprié. Dans le domaine de l’IA, on parle d’IA centrée sur l’humain (HCAI). L’IA centrée sur l’humain est une discipline émergente qui vise à créer des systèmes d’IA destinés à amplifier et à augmenter les capacités humaines plutôt qu’à les remplacer.

Voici un autre exemple de page de validation de vol dans le cadre de notre outil. Dans cet exemple, on trouve deux cases à cocher en bas de la page, accompagnées des mentions « Ajouter un vol » et « Ajouter une voiture ». Là encore, nous avons identifié tous les éléments de cette page. Le fait que notre IA soit capable de déterminer quel onglet est sélectionné simplement grâce à la différence de couleur du texte est particulièrement intéressant.
Au lieu de considérer les objets indépendamment les uns des autres, notre modèle d'apprentissage automatique les analyse et enrichit notre réseau de détection d'objets d'un module qui prend en compte les détections d'objets les unes par rapport aux autres. Cela nous permet de réaliser des choses vraiment intéressantes, comme déterminer quel élément correspond à l'onglet sélectionné.
Il est également important de noter que notre outil dédié aux éléments interactifs a signalé un problème potentiel d’accessibilité. Ces cases à cocher ont été programmées à l’aide d’une balise `div` sans rôle attribué. Notre système d’apprentissage automatique est capable d’analyser ces éléments, de reconnaître qu’il s’agit de cases à cocher, de constater qu’aucun rôle n’a été attribué, puis de demander à l’utilisateur s’il convient ou non d’attribuer un rôle. Il suggérera également que le rôle « checkbox » est le plus approprié dans ce cas précis.

Pour conclure, prenons l’exemple de la liste d’onglets située en haut de cette page web. On y trouve les intitulés « ontologies », « fonctionnalités », « métadonnées » et « fonctions ». Il s’agit, à mon avis, des quatre onglets de cette liste. Le rôle attribué à l’onglet « fonctionnalités » est celui d’un bouton. On pourrait faire valoir qu’un bouton est un rôle tout à fait approprié pour cet onglet dans cette liste d’onglets particulière, mais on pourrait également soutenir que, puisque seul l’un de ces éléments peut être sélectionné à un moment donné et que le focus change en fonction de celui que l’on sélectionne, notre IA a raison de suggérer que le balisage approprié ici devrait être « onglet ».
Une fois encore, au lieu d’indiquer à l’utilisateur qu’il a tort, nous lui posons une question en fonction de ce que notre IA pense de la situation. Nous donnons ainsi à l’utilisateur la possibilité de répondre : « Non, votre IA se trompe » ou « Oui, votre suggestion est correcte ». Cette approche peut vous aider à évoluer plus efficacement vers une conception plus accessible, sans introduire de faux positifs potentiels issus de nos détections basées sur l’apprentissage automatique.
Utilisation du ML pour comprendre la structure d'une table
L'apprentissage automatique est utile pour les tests d'accessibilité numérique, non seulement pour les composants interactifs, mais aussi pour les composants structurels. Nous utilisons l'apprentissage automatique pour analyser et interpréter la structure des tableaux. Les systèmes de Dequesont capables d'identifier les titres ainsi que les en-têtes des tableaux, des lignes et des colonnes.
À l'instar de notre outil dédié aux éléments interactifs, nous vérifions que la sémantique visuelle de la structure du tableau correspond à la manière dont il est programmé. Par exemple, nous examinons les cellules du tableau, les en-têtes, etc. Nous nous assurons que ce que notre système d'apprentissage automatique détecte sur la page correspond à notre compréhension de ce qui est programmé. Nous identifions également d'autres composants structurels tels que les tableaux de mise en page, les listes, les titres, les libellés des champs de saisie et les champs de saisie associés.

Dans l'exemple ci-dessus, on trouve un tableau comparatif de différentes fixations de ski, avec Axe DevTools Pro ouvert et l'outil « Table » activé. Il s'agit d'un tableau complexe comportant plusieurs en-têtes, tant pour les colonnes que pour les lignes. En effet, deux en-têtes de colonne se superposent. Le premier en-tête de colonne correspond à une image de la fixation, tandis que le second indique le nom de celle-ci. On trouve également des en-têtes tels que « image », « note du produit », « disponibilité », « prix », etc.
Notre système d'apprentissage automatique examinera une capture d'écran de ce tableau et analysera ce qu'il identifie comme étant les en-têtes et les cellules du tableau. Dans cet exemple, les images de la première ligne ont été correctement identifiées comme des en-têtes, et toutes les colonnes de gauche ont également été correctement identifiées comme des en-têtes, mais le nom de la liaison n'a pas été identifié comme un en-tête. Il a été identifié comme une cellule de données.
Notre système d'apprentissage automatique est capable d'analyser cet exemple de tableau très complexe comportant plusieurs niveaux et de déterminer que la deuxième ligne est en réalité une ligne d'en-têtes. Celle-ci a été programmée comme une cellule de données, mais l'IA l'a identifiée comme une cellule d'en-tête. Notre IGT demandera ensuite à l'utilisateur si cette interprétation est correcte.
Les défis spécifiques du machine learning dans l'interprétation des interfaces utilisateur
Lorsque nous avons lancé ce projet il y a plusieurs années, il n'existait pratiquement aucun travail ni aucune recherche sur l'utilisation de l'apprentissage automatique ou de la vision par ordinateur pour analyser des pages Web et des interfaces utilisateur. L'utilisation de la vision par ordinateur sur une page Web ou une interface utilisateur pose plusieurs problèmes spécifiques.
Par exemple, les interfaces utilisateur peuvent comporter un très grand nombre d'objets. Il peut y avoir de nombreux objets superposés ou placés les uns à côté des autres. Il est important de disposer d'un réseau capable de traiter efficacement tous ces objets.
Les interfaces utilisateur comportent également des objets dont les tailles relatives varient considérablement, allant du très grand au très petit. Par exemple, une icône par rapport à un pied de page ou à un menu de navigation. La différence de taille relative entre ces éléments peut atteindre plusieurs dizaines, voire une centaine. Traiter efficacement, en un seul passage, un si grand nombre d'objets de tailles variées à l'aide de notre réseau neuronal représente un véritable défi technique.
Ensuite, il y a le problème des données. Toutes les données disponibles concernant les interfaces utilisateur ou le Web n’ont pas été collectées en tenant compte de l’accessibilité. Nous avons dû collecter nos propres données et veiller à ce qu’elles soient étiquetées manuellement par des personnes formées à la sémantique des interfaces utilisateur.
L'étiquetage des données d'entraînement peut en réalité s'avérer assez chronophage et coûteux à collecter, en raison du nombre d'objets pouvant figurer sur une page et de la taille de ces dernières. L'étiquetage manuel d'un seul écran peut prendre jusqu'à 30 minutes à l'un de nos experts. Il nous a fallu de nombreuses années pour développer notre ensemble de données jusqu'à sa taille actuelle. Il est très important de veiller à ce que, à mesure que notre ensemble de données s'étoffe, nous ne sacrifions pas la qualité, car il est très facile de se contenter d'ajouter une multitude de données de mauvaise qualité, de les utiliser pour l'entraînement et d'espérer que tout se passe pour le mieux.
Il est important de s'assurer que les points de données étiquetés de notre ensemble de données contribuent réellement à la diversité de nos données. Nous avons mis en place des méthodes de collecte de données ciblées afin de garantir que les données que nous recueillons permettent d'améliorer nos modèles, de sorte que notre investissement dans ce domaine soit bien ciblé.
Présentation de notre algorithme
Nos algorithmes de vision par ordinateur se distinguent par le fait qu'ils codent implicitement des informations sur les relations qui existent entre les objets. Pour ce faire, nous intégrons à notre réseau de détection d'objets un module qui prend en compte les détections d'objets les unes par rapport aux autres.
Dans l'exemple des onglets, il serait impossible de déterminer si un onglet est sélectionné ou non en le considérant isolément, mais grâce à ce module de notre réseau neuronal, nous pouvons prendre en compte les relations que les objets peuvent entretenir entre eux.
Une interface utilisateur comporte de nombreux autres exemples bien plus complexes et nuancés. Par exemple, la fonction de recherche se trouve sous l'icône située à côté du champ de saisie dans le menu de navigation. Une fois cette approche mise en œuvre, nous avons soudain constaté que notre réseau neuronal produisait des résultats bien plus cohérents et pertinents.
Il s'agit d'un projet qui a nécessité plusieurs années de travail et qui a débuté sous la forme d'une expérience menée à partir d'un notebook Python Jupyter. Nous souhaitions explorer les possibilités offertes par l'IA et l'accessibilité, car il n'existait rien de tel à l'époque. Même dans le domaine plus large de l'interprétation des interfaces utilisateur à l'aide de l'apprentissage automatique, il n'y avait pas grand-chose de disponible.
Nos ensembles de données se sont considérablement enrichis et nos algorithmes ont tellement progressé que l'apprentissage automatique (ML) est en train de bouleverser notre façon d'envisager les tests d'accessibilité. Nos pratiques en matière de gestion des données et nos efforts ciblés de collecte ont également contribué de manière significative à ces avancées.
Ce qui distingue « Deque »
Sur Deque, nos clients contribuent à alimenter nos algorithmes d'apprentissage automatique. Nous disposons également d'un pipeline de données automatisé, complexe et fonctionnant en continu. Chaque fois qu'un point de données est détecté, il est intégré à notre pipeline et nous permet d'apprendre. Si une erreur se glisse dans nos éléments interactifs ou dans notre outil de tableaux, nos utilisateurs nous le signalent. Nous utilisons ces informations comme exemples d'entraînement pour nos algorithmes.
Le délai entre le moment où nous constatons une erreur, celui où nous en tirons les leçons et celui où nous intégrons la correction dans le modèle déployé en production ne dépasse pas deux semaines. Enfin, nos algorithmes de vision par ordinateur sont spécialement conçus pour répondre aux enjeux de la conception d’interfaces utilisateur. Nous utilisons ce module de relations au sein de notre réseau neuronal afin de cibler spécifiquement les particularités de la conception d’interfaces utilisateur et les relations entre les objets. Nous disposons également d’une équipe d’étiqueteurs experts, formés à la sémantique des interfaces utilisateur, qui vérifient la précision et l’intégrité de chaque point de données dont nous disposons.
Nous utilisons également certaines méthodes d'apprentissage automatique non supervisées ainsi que l'intervention humaine pour mener une collecte de données ciblée, afin de garantir que les investissements que nous consacrons à notre ensemble de données ne soient pas vains et que toutes les données que nous collectons contribuent réellement à améliorer nos réseaux.
Gestion et collecte des données
Deque a accès au plus grand ensemble de données d'apprentissage automatique au monde consacré à l'accessibilité. Nous disposons de plusieurs centaines de milliers de captures d'écran d'interfaces utilisateur et nous entraînons notre modèle sur toutes celles qui ont été annotées et dont l'intégrité a été vérifiée. Chaque composant de ces captures d'écran d'interface utilisateur a été annoté par ces experts comme étant « structurel » ou « interactif ».
Nous mettons en œuvre plusieurs mesures ici pour améliorer l'efficacité de notre processus d'étiquetage. Tout d'abord, nos modèles d'apprentissage automatique servent à pré-annoter chaque point de données, afin que nos étiqueteurs ne partent pas de zéro. En réalité, ils corrigent l'étiquette type que nous leur fournissons à partir de notre modèle d'apprentissage automatique. Nous avons constaté que cela permettait d'améliorer l'efficacité de 25 à 50 % au cours du processus d'étiquetage.
Nous utilisons également des méthodes d'apprentissage automatique non supervisées pour comparer entre eux nos points de données potentiels. Si nous constatons que nos résultats sont insuffisants pour une classe et un objet donnés de l'interface utilisateur, nous pouvons en effet recourir à certaines de ces méthodes pour proposer automatiquement de futurs points de données comme exemples d'apprentissage. Cela nous aide à accélérer et à cibler notre collecte de données, et à nous assurer que notre investissement est bien utilisé.
Cela a permis d'améliorer considérablement les performances de nos modèles, tout en réduisant le temps et les investissements financiers nécessaires. Nous sommes désormais en mesure de déployer rapidement des modèles optimisés et de constater des gains de performance et des améliorations au niveau de nos modèles d'apprentissage automatique.
DequeLe pipeline continu de données d'IA de […]
Deque dispose d'un pipeline de données IA continu et automatique, illustré dans l'image ci-dessous.

L'IA et l'apprentissage automatique facilitent l'accessibilité
Nous utilisons l'apprentissage automatique pour simplifier plusieurs aspects des tests d'accessibilité. Cela nous permet de réduire les obstacles à l'accès à ces tests. Nous pouvons ainsi gagner en efficacité en réduisant le nombre de tests manuels nécessaires et permettre de tester plus en profondeur les composants avant qu'il ne soit nécessaire de les corriger pour harmoniser leur apparence.
Si nous savons ce qu'est un composant, il n'est pas nécessaire de le corriger pour le tester. Si nous savons qu'un composant est une entrée, il n'est pas nécessaire de le corriger pour tester les éléments liés à cette entrée sur ce composant.
En résumé
L'IA et l'apprentissage automatique peuvent parfois être perçus comme des mots tabous au sein de la communauté de l'accessibilité. Certaines solutions prétendent que l'utilisation de l'IA peut résoudre comme par magie tous les problèmes d'accessibilité numérique d'une page. De plus, les réseaux neuronaux tels que ChatGPT ne fonctionnent pas suffisamment bien pour l'accessibilité numérique, car ils sont entraînés à partir d'un très vaste ensemble de données généraliste regroupant l'ensemble du code présent sur Internet, qui est en grande partie inaccessible.
En réalité, les outils optimisés par l'IA peuvent être éthiques s'ils sont conçus par des experts en accessibilité et utilisés pour simplifier le processus de test. L'IA peut considérablement élargir le champ des possibilités en matière de tests d'accessibilité automatisés et faciliter l'accès aux tests manuels pour les non-spécialistes.