Williams Mullen melhora a produtividade com ML.NET
Cliente
Williams Mullen
Produtos e serviços
ML.NET
Azure
Visual Studio
SQL Server
Office 365
Setor
Prática Legal / Serviços Profissionais
Tamanho da Organização
Média (100-1000 funcionários)
País/região
EUA
A Williams Mullen, um escritório de advocacia empresarial com serviços completos especializado em direito corporativo, litígios, finanças e ativos imobiliários, percebeu que o tempo gasto por seus advogados para percorrer milhões de documentos poderia ser dedicado ao trabalho real para seus clientes. Isso levou a empresa a pesquisar uma solução de aprendizado de máquina. Após concluir que muitos de seus problemas eram realmente problemas de classificação, a empresa decidiu explorar o assunto ainda mais com o ML.NET.
Problema de negócios
Quando se trata de tecnologia, os advogados vivem principalmente em dois aplicativos: Word e Outlook. Isto se traduz em uma quantidade bastante grande de dados não estruturados na forma de documentos Word, PDFs e emails que são colocados em um sistema de gerenciamento de documentos, que pode conter uma informações digitais que valem décadas. Isto se torna um desafio quando os advogados querem encontrar informações específicas nestes documentos, o que eles fazem ao pesquisar metadados de documentos onde as informações muitas vezes estão faltando, incorretas ou desatualizadas.
Devido a esse processo manual, Pedro Fernandes descobriu que milhões de documentos tinham problemas que impediam que os documentos fosse facilmente pesquisáveis, o que estava perdendo tempo de advogado e contribuindo para a perda de receita.
Por que ML.NET?
O setor jurídico é centrado na Microsoft quando se trata de opções de tecnologia. Williams Mullen não é diferente; seus desenvolvedores são grandes usuários de C#. Eles começaram a examinar as soluções de aprendizado de máquina na mesma hora em que ML.NET foi anunciado, portanto, foi uma escolha natural começar a usar o ML.NET para seu cenário de classificação.
Impacto do ML.NET
Por meio de sua pesquisa, a William Mullen descobriu que 20% dos documentos em seu sistema (por exemplo, milhões de documentos) tinham problemas que impediam que os documentos fossem facilmente pesquisáveis, o que estava fazendo com que o advogado perdesse tempo e contribuindo para a perda de receita. Se não fosse pelo ML.NET, ou a empresa não teria realizado o projeto ou teria que ter afastado as pessoas de seu trabalho para corrigir esses problemas manualmente, o que poderia ter resultado em custos de centenas de milhares de dólares para o projeto.
Com o ML.NET, podemos treinar o modelo e testá-lo imediatamente dentro do nosso código. Isso torna o envio de novas alterações mais rápido porque todas as ferramentas estão reunidas em um só lugar."
Arquitetura da solução
Criando um aplicativo com ML.NET
A arquitetura é apenas dois aplicativos de console .NET Core e um banco de dados. Um aplicativo de console recupera os dados de treinamento, prepara os dados e treina o modelo. O outro aplicativo de console anexou os dados que precisavam ser executados contra o modelo, carregou o modelo e classificou os dados, antes de colocar os dados de volta no banco de dados.
A alegria deste projeto foi o quão simples foi começar, então não precisávamos de nada mais complexo. Quero dizer, o aplicativo de treinamento tinha um total de 200 linhas de código, com comentários, logs etc. e o aplicativo para executar o modelo era ainda menor. A maior parte de tudo foi o código de transformação que veio com 13 linhas de código."
Processamento de dados
Os dados de treinamento, que são cerca de 2 milhões de documentos, provém do sistema de gerenciamento de documentos do escritório de advocacia. Os dados em si incluem conteúdo do documento, título, autor, destinatário (para emails) e de outros bits de metadados, dependendo dos campos que estão sendo limpos.
Transformações de dados e algoritmos de aprendizado de máquina
A Williams Mullen experimentou várias transformações de dados e algoritmos de treinamento diferentes em alguns aplicativos diferentes. As transformações de dados incluíram NormalizeText, TokenizeWords, RemoveDefaultStopWords, OneHotHashEncoding, FeaturizeText, ExtractWordEmbeddings e ProduceNGrams. Para treinamento, a empresa usam principalmente os algoritmos de classificação StochasticDualCoordinateAscent e OneVersusAll.
Usando as transformações de dados e os algoritmos do ML.NET para criar uma solução de aprendizado de máquina, Paulo Fernandes conseguiu tornar milhões de documentos mais pesquisáveis, o que, por sua vez, ajudou a tornar seus advogados mais produtivos.
Pronto para começar?
Nosso tutorial passo-a-passo irá ajudá-lo a usar o ML.NET em seu computador.