Williams Mullen améliore sa productivité avec ML.NET
Client
Williams Mullen
Produits & services
ML.NET
Azure
Visual Studio
SQL Server
Office 365
Secteur
Cabinets juridiques/services professionnels
Taille de l’organisation
Moyen (100-1000 employés)
Pays/région
États-Unis
En tant que cabinet d’avocats d’entreprise spécialisé dans le droit de l’entreprise, les litiges, les finances et l’immobilier, Williams Mullen s’est rendu compte que l'obligation pour les avocats de passer au peigne fin des millions de documents leur fait perdre du temps au détriment du travail qu'ils effectuent pour leurs clients. Cela a conduit l’entreprise à rechercher une solution d’apprentissage automatique. Une fois qu’ils ont réalisé qu’un grand nombre de leurs problèmes étaient vraiment des problèmes de classification, ils ont décidé d’explorer plus en détail ML.NET.
Problème d’entreprise
En matière de technologie, les avocats vivent principalement dans deux applications : Word et Outlook. Cela se traduit par une quantité assez importante de données non structurées sous la forme de documents Word, PDF et e-mails qui sont placés dans un système de gestion de documents, qui peut contenir des décennies d'informations numériques. Cela devient un défi lorsque les avocats veulent trouver des informations spécifiques dans ces documents, ce qu'ils font en recherchant les métadonnées des documents où les informations sont souvent manquantes, incorrectes ou obsolètes.
En raison de ce processus manuel, William Mullen a constaté que des millions de documents présentaient des problèmes qui empêchaient de les rechercher facilement, ce qui faisait perdre du temps aux avocats et contribuait à la perte de revenus.
Pourquoi ML.NET ?
Le secteur juridique est plutôt centré sur Microsoft en matière de choix technologiques. Williams Mullen n’est pas différent; leurs développeurs sont de grands utilisateurs C#. Ils ont commencé à rechercher des solutions d’apprentissage automatique au moment où ML.NET a été annoncé. Il était donc naturel de commencer à utiliser ML.NET pour leur scénario de classification.
Impact de ML.NET
Grâce à ses recherches, William Mullen a découvert que 20 % des documents de son système (par exemple, des millions de documents) présentaient des problèmes qui empêchaient les documents d’être facilement consultables, ce qui faisait perdre du temps aux avocats et contribuait à la perte de revenus. Sans ML.NET, la société n’aurait pas entrepris le projet du tout, ou aurait dû retirer des personnes de leur travail pour corriger manuellement ces problèmes, ce qui aurait pu entraîner des centaines de milliers de dollars de coûts pour le projet.
Avec ML.NET, nous pouvons entraîner le modèle, puis le tester immédiatement dans notre code. La livraison des nouvelles modifications devient ainsi plus rapide, car tous les outils sont regroupés au même endroit.\ »
Architecture de la solution
Création d’une application avec ML.NET
L'architecture se compose uniquement de deux applications de console .NET Core et d'une base de données. Une application de console extrait les données de formation, prépare les données et forme le modèle. L'autre application de console a extrait les données nécessaires pour exécuter le modèle, a chargé le modèle pour classer les données, et c'est parti avant de remettre les données dans la base de données.
La joie de ce projet a été la simplicité avec laquelle vous pouvez commencer, nous n’avons vraiment pas eu besoin de quelque chose de plus complexe. L’application d’entraînement totalisait 200 lignes de code, avec des commentaires, une journalisation, etc., et l’application permettant d’exécuter le modèle était encore plus courte. La plus grande partie était le code de transformation qui se résumait à 13 lignes de code.\ »
Traitement des données
Les données de formation, soit environ 2 millions de documents, sont issues du système de gestion documentaire du cabinet d'avocats. Les données elles-mêmes incluent le contenu du document, le titre, l'auteur, le destinataire (pour les e-mails) et d'autres éléments de métadonnées en fonction des champs qui sont nettoyés.
Transformations de données et algorithmes d'apprentissage automatique
Après avoir essayé différentes transformations de données et algorithmes d’entraînement sur deux applications différentes, Williams Mullen a essayé plusieurs transformations de données et algorithmes d’apprentissage. Les transformations de données incluent NormalizeText, TokenizeWords, RemoveDefaultStopWords, OneHotHashEncoding, FeaturizeText, ExtractWordEmbeddings et ProduceNGrams. Pour l’entraînement, ils utilisent principalement les algorithmes de classification StochasticDualCoordinateAscent et OneVersusAll.
En utilisant les transformations de données et les algorithmes de ML.NET pour créer une solution d'apprentissage automatique, Williams Mullen a pu rendre des millions de documents plus consultables, ce qui a contribué à rendre ses avocats plus productifs.
Prêt à démarrer ?
Notre tutoriel étape par étape vous aidera à démarrer ML.NET sur votre ordinateur.