Modelos e plataformas de IA

LightAutoML: Uma Estrutura de AutoML para Serviços Financeiros

mm
Adicione Unite.AI às suas fontes preferidas no Google

Embora o AutoML tenha ganhado popularidade nos últimos anos, os primeiros trabalhos sobre AutoML remontam ao início dos anos 90, quando cientistas publicaram os primeiros artigos sobre otimização de hiperparâmetros. Foi em 2014 que o ICML organizou o primeiro workshop de AutoML, que ganhou a atenção dos desenvolvedores de ML. Um dos principais focos do AutoML ao longo dos anos é o problema de busca de hiperparâmetros, onde o modelo implementa uma variedade de métodos de otimização para determinar os hiperparâmetros mais performáticos em um grande espaço de hiperparâmetros para um modelo de aprendizado de máquina específico. Outro método comumente implementado por modelos de AutoML é estimar a probabilidade de um hiperparâmetro específico ser o hiperparâmetro ótimo para um modelo de aprendizado de máquina dado. O modelo alcança isso implementando métodos bayesianos que tradicionalmente usam dados históricos de modelos estimados anteriormente e outros conjuntos de dados. Além da otimização de hiperparâmetros, outros métodos tentam selecionar os melhores modelos de um espaço de alternativas de modelagem.

Neste artigo, vamos cobrir o LightAutoML, um sistema de AutoML desenvolvido principalmente para uma empresa europeia que opera no setor financeiro, juntamente com seu ecossistema. A estrutura do LightAutoML é implantada em várias aplicações, e os resultados demonstraram um desempenho superior, comparável ao nível de cientistas de dados, mesmo ao construir modelos de aprendizado de máquina de alta qualidade. A estrutura do LightAutoML tenta fazer as seguintes contribuições. Primeiramente, a estrutura do LightAutoML foi desenvolvida principalmente para o ecossistema de uma grande instituição financeira e bancária europeia. Devido à sua estrutura e arquitetura, a estrutura do LightAutoML é capaz de superar as estruturas de AutoML de ponta em vários benchmarks abertos, bem como aplicações de ecossistema. O desempenho da estrutura do LightAutoML também é comparado com modelos que são ajustados manualmente por cientistas de dados, e os resultados indicaram um desempenho mais forte da estrutura do LightAutoML.

Este artigo visa cobrir a estrutura do LightAutoML em profundidade, e exploramos o mecanismo, a metodologia, a arquitetura da estrutura, juntamente com sua comparação com estruturas de ponta. Então, vamos começar.

LightAutoML: Uma Estrutura de AutoML para Serviços Financeiros

Embora os pesquisadores tenham começado a trabalhar no AutoML no início e meados dos anos 90, o AutoML atraiu uma grande parte da atenção nos últimos anos, com algumas das soluções industriais proeminentes implementando modelos de aprendizado de máquina construídos automaticamente, como o AutoGluon da Amazon (AMZN ), o DarwinAI, o H20.ai, o IBM Watson AI e o Microsoft (MSFT ) AzureML, entre outros. A maioria dessas estruturas implementa uma solução de AutoML de propósito geral que desenvolve modelos de ML automaticamente em diferentes classes de aplicações em serviços financeiros, saúde, educação e mais. A principal suposição por trás dessa abordagem genérica horizontal é que o processo de desenvolver modelos automáticos permanece idêntico em todas as aplicações. No entanto, a estrutura do LightAutoML implementa uma abordagem vertical para desenvolver uma solução de AutoML que não é genérica, mas sim atende às necessidades de aplicações individuais, neste caso, uma grande instituição financeira. A estrutura do LightAutoML é uma solução de AutoML vertical que se concentra nas necessidades do ecossistema complexo, juntamente com suas características.

LightAutoML: Metodologia e Arquitetura

A estrutura do LightAutoML consiste em módulos conhecidos como Presets, que são dedicados ao desenvolvimento de modelos de ponta a ponta para tarefas de aprendizado de máquina típicas. Atualmente, a estrutura do LightAutoML suporta módulos Preset. Primeiramente, o Preset TabularAutoML se concentra em resolver problemas de aprendizado de máquina clássicos definidos em conjuntos de dados tabulares. Em segundo lugar, o Preset White-Box implementa algoritmos simples e interpretáveis, como a Regressão Logística, em vez da codificação WoE ou Peso de Evidência e recursos discretizados para resolver tarefas de classificação binária em dados tabulares. Implementar algoritmos simples e interpretáveis é uma prática comum para modelar a probabilidade de uma aplicação devido às restrições de interpretabilidade impostas por diferentes fatores. Em terceiro lugar, o Preset NLP é capaz de combinar dados tabulares com ferramentas de NLP ou Processamento de Linguagem Natural, incluindo modelos de aprendizado profundo pré-treinados e extratores de recursos específicos. Finalmente, o Preset CV trabalha com dados de imagem com a ajuda de algumas ferramentas básicas. É importante notar que, embora o modelo do LightAutoML suporte os quatro Presets, a estrutura só usa o TabularAutoML no sistema de produção.

O pipeline típico da estrutura do LightAutoML é incluído na imagem a seguir.

Cada pipeline contém três componentes. Primeiramente, o Leitor, um objeto que recebe o tipo de tarefa e os dados brutos como entrada, realiza cálculos de metadados cruciais, limpa os dados iniciais e determina as manipulações de dados a serem realizadas antes de ajustar diferentes modelos. Em seguida, os conjuntos de dados internos do LightAutoML contêm iteradores CV e metadados que implementam esquemas de validação para os conjuntos de dados. O terceiro componente são os múltiplos pipelines de aprendizado de máquina empilhados e/ou mesclados para obter uma única previsão. Um pipeline de aprendizado de máquina dentro da arquitetura da estrutura do LightAutoML é um dos múltiplos modelos de aprendizado de máquina que compartilham um esquema de validação de dados e pré-processamento único. A etapa de pré-processamento pode ter até duas etapas de seleção de recursos, uma etapa de engenharia de recursos ou pode ser vazia se nenhum pré-processamento for necessário. Os pipelines de ML podem ser computados independentemente nos mesmos conjuntos de dados e, em seguida, mesclados usando média (ou média ponderada). Alternativamente, um esquema de ensemble de empilhamento pode ser usado para construir arquiteturas de ensemble de múltiplos níveis.

LightAutoML Tabular Preset

Dentro da estrutura do LightAutoML, o TabularAutoML é o pipeline padrão e é implementado no modelo para resolver três tipos de tarefas em dados tabulares: classificação binária, regressão e classificação multiclasse para uma ampla variedade de métricas de desempenho e funções de perda. Uma tabela com as seguintes quatro colunas: recursos categóricos, recursos numéricos, carimbos de data e hora e uma única coluna de destino com rótulos de classe ou valores contínuos é alimentada no componente TabularAutoML como entrada. Um dos principais objetivos por trás do design da estrutura do LightAutoML foi projetar uma ferramenta para testes de hipótese rápidos, um motivo pelo qual a estrutura evita usar métodos de otimização de pipeline brutos e se concentra apenas em técnicas e modelos eficientes que funcionam em uma ampla variedade de conjuntos de dados.

Auto-Tipagem e Pré-Processamento de Dados

Para lidar com diferentes tipos de recursos de maneira diferente, o modelo precisa saber cada tipo de recurso. Na situação em que há uma única tarefa com um conjunto de dados pequeno, o usuário pode especificar manualmente cada tipo de recurso. No entanto, especificar manualmente cada tipo de recurso não é mais uma opção viável em situações que incluem centenas de tarefas com conjuntos de dados que contêm milhares de recursos. Para o Preset TabularAutoML, a estrutura do LightAutoML precisa mapear recursos em três classes: numérico, categórico e data e hora. Uma solução simples e óbvia é usar tipos de dados de array de coluna como tipos de recursos reais, ou seja, mapear colunas de float/int para recursos numéricos, carimbo de data e hora ou string que pode ser analisado como carimbo de data e hora — para data e hora, e outros para categórico. No entanto, esse mapeamento não é o melhor devido à ocorrência frequente de tipos de dados numéricos em colunas categóricas.

Esquemas de Validação

Os esquemas de validação são um componente vital das estruturas de AutoML, pois os dados na indústria estão sujeitos a mudanças ao longo do tempo, e esse elemento de mudança torna as suposições IID ou Independente e Identicamente Distribuídas irrelevantes ao desenvolver o modelo. Os modelos de AutoML empregam esquemas de validação para estimar seu desempenho, buscar hiperparâmetros e gerar previsões fora da amostra. O pipeline TabularAutoML implementa três esquemas de validação:

  • Validação Cruzada KFold: A Validação Cruzada KFold é o esquema de validação padrão para o pipeline TabularAutoML, incluindo GroupKFold para modelos comportamentais e KFold estratificado para tarefas de classificação.
  • Validação de Retenção: O esquema de validação de retenção é implementado se o conjunto de retenção for especificado.
  • Esquemas de Validação Personalizados: Esquemas de validação personalizados podem ser criados pelos usuários dependendo de suas necessidades individuais. Esquemas de validação personalizados incluem esquemas de validação cruzada e divisão de séries temporais.

Seleção de Recursos

Embora a seleção de recursos seja um aspecto crucial do desenvolvimento de modelos de acordo com os padrões da indústria, pois facilita a redução dos custos de inferência e implementação do modelo, a maioria das soluções de AutoML não se concentra muito nesse problema. Em contraste, o pipeline TabularAutoML implementa três estratégias de seleção de recursos: Nenhuma seleção, Seleção de corte de importância e Seleção de importância baseada em avanço. Desses, a Seleção de corte de importância é a estratégia de seleção de recursos padrão. Além disso, existem duas principais maneiras de estimar a importância dos recursos: importância baseada em divisão de árvore e importância de permutação do modelo GBM ou árvore de decisão de impulso. O objetivo principal da seleção de corte de importância é rejeitar recursos que não são úteis ao modelo, permitindo que o modelo reduza o número de recursos sem impactar negativamente o desempenho, uma abordagem que pode acelerar a inferência e o treinamento do modelo.

A imagem acima compara diferentes estratégias de seleção em conjuntos de dados binários de bancos.

Ajuste de Hiperparâmetros

O pipeline TabularAutoML implementa diferentes abordagens para ajustar hiperparâmetros com base no que é ajustado.

  • Ajuste de Hiperparâmetros de Parada Antecipada: Seleciona o número de iterações para todos os modelos durante a fase de treinamento.
  • Ajuste de Hiperparâmetros do Sistema Especializado: É uma maneira simples de definir hiperparâmetros para modelos de forma satisfatória. Isso impede que o modelo final tenha uma queda acentuada no escore em comparação com modelos ajustados manualmente.
  • Estimativa de Parzen Estruturada em Árvore ou TPE: Para modelos de árvore de decisão de impulso ou GBM. A TPE é uma estratégia de ajuste mista que é a escolha padrão no pipeline do LightAutoML. Para cada estrutura do GBM, a estrutura do LightAutoML treina dois modelos: o primeiro obtém hiperparâmetros especializados, o segundo é ajustado para se encaixar no orçamento de tempo.
  • Pesquisa em Grade de Ajuste de Hiperparâmetros: É implementada no pipeline TabularAutoML para ajustar os parâmetros de regularização de um modelo linear, juntamente com a parada antecipada e o reinício quente.

A estrutura ajusta todos os parâmetros maximizando a função métrica, definida pelo usuário ou padrão para a tarefa resolvida.

LightAutoML: Experimento e Desempenho

Para avaliar o desempenho, o Preset TabularAutoML dentro da estrutura do LightAutoML é comparado com soluções de AutoML de código aberto existentes em várias tarefas e cimenta o desempenho superior da estrutura do LightAutoML. Primeiramente, a comparação é realizada no benchmark OpenML, que é avaliado em 35 conjuntos de dados de classificação binária e multiclasse. A tabela a seguir resume a comparação da estrutura do LightAutoML com sistemas de AutoML existentes.

Como pode ser visto, a estrutura do LightAutoML supera todos os outros sistemas de AutoML em 20 conjuntos de dados dentro do benchmark. A tabela a seguir contém a comparação detalhada no contexto do conjunto de dados, indicando que a estrutura do LightAutoML entrega diferentes desempenhos em diferentes classes de tarefas. Para tarefas de classificação binária, a estrutura do LightAutoML fica aquém do desempenho, enquanto para tarefas com uma grande quantidade de dados, a estrutura do LightAutoML entrega um desempenho superior.

A tabela a seguir compara o desempenho da estrutura do LightAutoML com sistemas de AutoML em 15 conjuntos de dados de bancos que contêm um conjunto de tarefas de classificação binária. Como pode ser observado, a estrutura do LightAutoML supera todos os sistemas de AutoML em 12 dos 15 conjuntos de dados, uma porcentagem de vitória de 80.

Pensamentos Finais

Neste artigo, falamos sobre o LightAutoML, um sistema de AutoML desenvolvido principalmente para uma empresa europeia que opera no setor financeiro, juntamente com seu ecossistema. A estrutura do LightAutoML é implantada em várias aplicações, e os resultados demonstraram um desempenho superior, comparável ao nível de cientistas de dados, mesmo ao construir modelos de aprendizado de máquina de alta qualidade. A estrutura do LightAutoML tenta fazer as seguintes contribuições. Primeiramente, a estrutura do LightAutoML foi desenvolvida principalmente para o ecossistema de uma grande instituição financeira e bancária europeia. Devido à sua estrutura e arquitetura, a estrutura do LightAutoML é capaz de superar as estruturas de AutoML de ponta em vários benchmarks abertos, bem como aplicações de ecossistema. O desempenho da estrutura do LightAutoML também é comparado com modelos que são ajustados manualmente por cientistas de dados, e os resultados indicaram um desempenho mais forte da estrutura do LightAutoML. A estrutura do LightAutoML é capaz de superar os sistemas de AutoML de ponta em várias aplicações abertas, bem como aplicações de ecossistema, e seu desempenho também é comparado com modelos ajustados manualmente por cientistas de dados, e os resultados indicaram um desempenho mais forte da estrutura do LightAutoML.

Um engenheiro por profissão, um escritor por coração. Kunal é um escritor técnico com um amor e compreensão profundos de AI e ML, dedicado a simplificar conceitos complexos nestes campos por meio de sua documentação envolvente e informativa.