Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Otimização de Modelos de Machine Learning: Conceitos e Estratégias, Trabalhos de Processamento de Dados

Este documento aborda a otimização de modelos de machine learning, explorando conceitos como overfitting e estratégias para ajuste de parâmetros. O texto destaca a importância da seleção de atributos relevantes e a busca por modelos que se ajustam bem aos dados de treinamento, sem comprometer a generalização para novos dados. O documento também apresenta métodos de otimização, como a regularização e a validação cruzada, e discute a importância de encontrar um equilíbrio entre o ajuste do modelo e sua complexidade.

Tipologia: Trabalhos

2024

Compartilhado em 01/09/2024

henriley
henriley 🇧🇷

1 documento

1 / 20

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Análise Preditiva
e Classificação
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14

Pré-visualização parcial do texto

Baixe Otimização de Modelos de Machine Learning: Conceitos e Estratégias e outras Trabalhos em PDF para Processamento de Dados, somente na Docsity!

Análise Preditiva

e Classificação

Otimização de Modelos

  • Explorar problemas preditivos com modelos;
  • Conceituar overfitting;
  • Estudar estratégias para ajuste de parâmetros;
  • Aplicar técnicas para otimização de modelos.

OBJETIVOS DE APRENDIZADO

**- Introdução à Otimização de Modelos;

  • Modelagem de Problemas Analíticos;
  • Overfitting;
  • Ajuste de Hiperparâmetros.**

UNIDADE Otimização de Modelos

Introdução à Otimização de Modelos

O desenvolvimento de modelos de Machine Learning é uma atividade presente na etapa de modelagem de um projeto de ciência de dados. Porém, não basta construir o modelo. Como analistas, precisamos também validar os resultados desse modelo, validar a sua importância para o problema de negócio que estamos tentando resolver e distribuir os resultados em um formato adequado. Outra atividade que muitas vezes faz parte da modelagem ou posiciona-se ao final do processo, antes da distribuição, é a otimização dos modelos construídos. Otimizar um modelo significa que nós estamos buscando melhorar o desempe- nho preditivo desse modelo antes de entregá-lo em produção. Podemos até pensar que isso é realizado na fase de modelagem, mas na maior parte das vezes o processo de modelagem é um processo experimental com o objetivo de melhorar o desem- penho do preditor de base ( baseline ), e não encontrar o melhor resultado possível. Para que você possa compreender o que é importante na otimização do modelo, nesta unidade, você vai revisitar alguns pontos já estudados, mas com uma visão sobre o processo de construção e otimização de modelos de Machine Learning. Embora os modelos descritivos sejam bastante úteis, nós nos concentraremos nos modelos preditivos e nos principais métodos geradores desses modelos.

A Importância dos Atributos na Modelagem Preditiva

Vamos começar entendendo que, em alguma perspectiva, podemos pensar no processo de modelagem preditiva como uma “segmentação supervisionada” (PROVOST; FAWCETT, 2016), em que, a partir de uma base de dados, criamos grupos a partir de algo que gostaríamos de predizer ou estimar. Nesse sentido, o nosso alvo preditivo pode ser trabalhado de duas formas:

  • (^) De maneira positiva, como na descoberta de quais consumidores são mais pro- pensos a comprar um produto; ou
  • (^) De maneira negativa, como na predição de quais clientes são mais suscetíveis de abandonar a empresa quando seus contratos vencerem. Independentemente do alvo escolhido, uma ideia fundamental desse processo de modelagem preditiva é a seleção dos atributos que farão parte da solução. Você deve lembrar que esses atributos devem ser importantes para o problema e informativos a respeito das entidades que queremos representar. Por exemplo, talvez o tipo san- guíneo de uma pessoa não tenha influência no tipo de produto que ela compra no supermercado. Embora essa seja uma informação adicional a respeito de quem está sendo investigado, esse atributo pode não apenas não colaborar na solução como prejudicá-la. Assim, os atributos escolhidos para a modelagem devem reduzir a incerteza a respeito do que queremos descobrir. Quando temos uma variável-alvo, a busca pelos atributos informativos torna-se mais fácil. A nossa busca tem como meta aqueles atributos que apresentam maior correlação com o atributo-alvo. Estatisticamente, a correlação entre os atributos vai nos ajudar a reduzir a incerteza sobre as variáveis.

UNIDADE Otimização de Modelos

Ao pensar na “segmentação supervisionada” como uma intuição para a extração de padrões, podemos imaginar um processo de segmentação de uma população em grupos que possuem diferentes valores para a variável-alvo e dentro do grupo os exemplos possuem valores diferentes para a variável-alvo. Se a segmentação é reali- zada com os valores das variáveis que serão conhecidas quando o alvo não for, esses segmentos podem ser utilizados para predizer o valor da variável-alvo. Como exemplo, um segmento do nosso modelo de concessão de crédito pode ser expresso na frase “aposentados com mais 67 anos residentes na cidade de São Paulo não são inadimplentes”, em que a indicação de inadimplência representa a variável- -alvo do segmento e o restante da frase define o segmento. Pensando em como podemos expressar um segmento a partir das suas carac- terísticas, podemos nos perguntar: como podemos decidir se um atributo contém informações importantes sobre o alvo? Essa pergunta é fundamental para a compreensão do modelo de segmentação. Afinal, qual é o segmento que melhor prevê a concessão de crédito? Alguns algoritmos, como as árvores de decisão, conseguem ter em sua base a seleção automática de atributos informativos. No processo de indução, o algoritmo busca recursivamente os atributos para subconjuntos de dados, fazendo com que o espaço das instâncias fique segmentado em regiões semelhantes. Como esse proces- so observa o alvo, a divisão do espaço é supervisionada. Uma das principais vantagens dos modelos de árvores é a sua fácil interpretabili- dade. Apesar de não serem os modelos mais precisos, eles são facilmente compre- endidos e explicados. Essa característica é importante não apenas para o analista que modela como também para os envolvidos no projeto que dominam o negócio.

Modelagem de Problemas Analíticos

A modelagem preditiva envolve buscar por um modelo do atributo-alvo a partir de outros atributos descritivos. Por meio dos dados, produzimos a estrutura de um modelo e os “parâmetros” numéricos do modelo, que correspondem às estimativas de probabilidade (PROVOST; FAWCETT, 2016).

Uma maneira de aprender um modelo preditivo é partir da especificação da estrutura do modelo, deixando alguns parâmetros numéricos sem especificação. Ao longo da aprendizagem, o processo calcula os melhores valores dos parâmetros a partir do conjunto de dados para construir o modelo. Nesse caso, o objetivo da mineração de dados é o ajuste dos parâmetros de modo que o modelo se ajuste aos dados da melhor forma possível. Muitos métodos de Machine Learning funcionam dessa forma, que é conhecida como modelagem paramétrica.

A modelagem paramétrica assume que o conjunto de dados é proveniente de um tipo de

distribuição de probabilidade e faz inferências sobre os parâmetros da distribuição. Em ge-

ral, o termo paramétrico refere-se à média e ao desvio-padrão, que são os parâmetros que

definem as populações que apresentam distribuição normal.

Em contrapartida, a modelagem não paramétrica corresponde a técnicas que não depen-

dem de nenhuma distribuição de dados particular. Por exemplo, um histograma é uma es-

timação não paramétrica de distribuição de probabilidade.

Classificação por Funções

A maior parte dos métodos de Machine Learning são paramétricos e baseados em modelos lineares. Por exemplo, podemos discriminar (separar) os exemplos de treinamento de duas classes se introduzirmos um limite que é uma linha reta não perpendicular aos eixos.

A Figura 2 ilustra um conjunto de exemplos no espaço em que é possível visu- alizar uma linha reta imaginária dividindo o espaço em duas partes, separando os pontos de dados vermelhos e azuis. Ao traçarmos uma reta criando essa separação, construiremos um classificador linear, que consiste essencialmente na soma ponde- rada dos valores dos dois atributos plotados no gráfico.

Esse caso pode ser representado matematicamente pela equação seguinte, em que a corresponde à inclinação da reta e b é a interceptação y , ou seja, quando y = 0:

y = ax + b

Um novo exemplo x pode ser classificado como positivo (vermelho) se ele estiver acima da linha imaginária, e como negativo (azul) se ele estiver abaixo.

Figura 2 – Pontos de dados brutos Fonte: Acervo do conteudista

Regressão por Funções

A regressão para uma função linear toma como base a ideia da função discrimi- nante linear conhecida anteriormente:

y = f ( ) x = w 0 (^) + w x 1 1 (^) + w x 2 2 +

No caso da regressão linear, o atributo-alvo é uma variável numérica. O al- goritmo de aprendizagem tem como meta ajustar o modelo aos dados de entrada buscando pelos parâmetros ótimos da função. Quando falamos sobre os parâmetros ótimos, estamos nos referindo à otimização do modelo, tema central desta unidade.

Considerando a otimização de um modelo como um problema a ser solucionado pelos algoritmos de aprendizagem de máquina, precisaremos responder a algumas perguntas, como:

  • (^) Quais ponderações ou pesos devemos escolher?
  • (^) Quão longe estão os valores estimados dos valores reais sobre os dados de treinamento?
  • (^) Quão grande é o erro a ser ajustado ao modelo?

Você deve ter observado que a última pergunta corresponde aos erros do processo de treinamento. Assim, a nossa função-objetivo deverá minimizar os erros. Nos métodos de regressão, o erro é calculado para cada ponto de dado no conjunto de treinamento e os resultados são somados. Entre os diversos modelos que podem se ajustar aos dados, o modelo ótimo será aquele o menor montante de erros nos dados de treinamento.

Uma forma de calcular o erro entre o valor estimado ( ê ) e o valor real ( e ) é sub- traindo um valor do outro, como na equação a seguir:

erroAbsoluto = eê

Observando o conjunto de dados como um todo, teremos o erro médio absoluto ( MAEMean Absolute Error ), uma das medidas mais populares dos problemas de regressão, que pode ser calculado pela seguinte equação (FACELLI et al. , 2011):

1

1 n i i i

MAE e ê n (^) =

No entanto, a função-objetivo mais comum da regressão é a minimização da soma ou a média dos quadrados desses erros, cujo procedimento é conhecido por método dos mínimos quadrados. A maior parte das bibliotecas das linguagens de programação utiliza esse método como função-objetivo para calcular a regres- são. Outra vantagem desse método é que o erro quadrático penaliza os erros muito grandes. Por outro lado, por ser uma função bastante sensível aos dados de

UNIDADE Otimização de Modelos

entrada, a função linear resultante pode ficar distorcida. Assim, é importante que o analista escolha a melhor função-objetivo para o problema de regressão a partir de critérios definidos pelo problema de negócio.

Estimativa de Probabilidade de Classe

Uma aplicação bastante comum e cada vez mais presente entre os problemas de ne- gócio em Analytics é a estimativa de probabilidade de classe. O propósito desse tipo de aplicação é estimar a probabilidade de um novo exemplo pertencer à classe de interesse.

Por exemplo, uma empresa pode desejar saber quais são os casos em que a probabilidade de fraude tem maior perda monetária para a empresa. Observe que uma transação de baixo valor (como R$ 1) pode ocasionar uma probabilidade de fraude alta ( p = 1), mas não representa grande perda financeira. Em contrapartida, uma transação de alto valor (R$ 1 milhão) pode ter uma probabilidade de fraude média ( p = 0,69), exigindo atenção especial dos analistas.

Para problemas como esse, podemos aplicar um modelo linear aos dados, mas escolhendo outra função objetivo, mais adequada à estimativa de probabilidade de classe. A regressão logística é um procedimento que podemos utilizar nesse caso.

Funções Não Lineares

Uma característica interessante de alguns modelos é que eles podem não ser com- pletamente solucionáveis por uma reta ou função linear. Problemas mais complexos certamente exigirão soluções mais complexas e modelos não lineares para ajuste aos dados. Na Figura 3, é apresentado o gráfico de uma solução encontrada por meio de um modelo complexo, representado pela linha que corta os pontos de dados.

Figura 3 – Representação gráfica de uma solução complexa Fonte: Acervo do conteudista

Nesta categoria de modelos, as máquinas de vetores de suporte (SVMs) e as redes neurais artificiais são as técnicas mais comuns para o ajuste de parâmetros.

UNIDADE Otimização de Modelos

Figura 4 – Comparação entre o modelo ideal (vermelho) e o modelo sobreajustado (azul) Fonte: Acervo do conteudista

Mesmo que o modelo de tabela nunca seja construído por um você, é importante observar que o overfiting pode existir em qualquer modelo preditivo construído por Machine Learning. É verdade que existem modelos que levam mais ao sobreajuste que outros, porém, nem sempre é ideal selecioná-los. Muitas vezes, o nosso proble- ma investigado será tão complexo que um modelo igualmente complexo será neces- sário, ainda que ele possa nos prejudicar em relação ao sobreajuste. Assim, a melhor estratégia é identificar o overfitting e gerenciar a complexidade.

Os melhores modelos serão aqueles que se encaixam melhor aos dados e forem mais simples.

Na prática, podemos utilizar a regularização, que tem a finalidade de otimizar não apenas o ajuste do modelo aos dados, como também a combinação de ajuste e complexidade do modelo – dois princípios que colaboram para um bom desem- penho preditivo. Entre as técnicas para regularização, estão a poda de árvores de decisão e a aplicação de penalidades em funções-objetivo de classificadores lineares.

Ajuste de Hiperparâmetros

Um hiperparâmetro é um parâmetro que não é diretamente aprendido pelos es- timadores. Por exemplo, os parâmetros C , kernel e gamma são hiperparâmetros do algoritmo SVM. Todos esses hiperparâmetros são utilizados para controlar a apren- dizagem. Ao contrário dos pesos das redes neurais artificiais – que são considerados parâmetros do algoritmo –, os hiperparâmetros não podem ser aprendidos durante o processo de treinamento.

O ajuste (ou otimização) de hiperparâmetros é um problema em Machine Learning que trata da escolha dos hiperparâmetros ideais de um algoritmo de aprendizagem.

Além de a otimização de hiperparâmetros melhorar o desempenho preditivo do modelo de decisão, podemos controlar o sobreajuste do modelo aos dados de treinamento.

A otimização dos hiperparâmetros deve encontrar um conjunto de hiperparâ- metros que devolvem um modelo ótimo que minimiza uma função de perda em um determinado conjunto de dados independente. A função-objetivo que minimiza a função de perda toma como entrada o conjunto de hiperparâmetros e retorna à perda associada. Na maior parte das vezes, para encontrar esse modelo ótimo, é utilizada a validação cruzada.

Existem muitas abordagens para buscar os hiperparâmetros ótimos no espaço de hiperparâmetros. Nas seções seguintes, você vai conhecer em detalhes como funcio- nam as duas principais abordagens:

  • (^) Busca aleatória; e
  • (^) Busca em grade.

Busca em Grade (Grid Search)

A busca em grade é provavelmente o método de busca mais utilizado no ajuste de hiperparâmetros. A ideia fundamental desse método é gerar exaustivamente can- didatos a partir de uma grade de valores pré-determinados manualmente e varrer o espaço de hiperparâmetros até que os hiperparâmetros ótimos sejam encontrados. Para o algoritmo saber que encontrou o candidato ótimo, ele avalia todas as possibi- lidades, preferencialmente, no subconjunto de avaliação.

Busca Aleatória (Random Search)

Na busca aleatória, a combinação exaustiva da busca em grade é substituída um conjunto de configurações, em que cada configuração é selecionada a partir de uma distribuição de possíveis valores de parâmetros. Na prática, uma das configurações é selecionada aleatoriamente pelo algoritmo, que a valida sobre o conjunto de dados.

Embora a busca aleatória possa não selecionar o candidato ótimo, ela pode superar a busca em grade quando existe um pequeno conjunto de hiperparâmetros pequeno que afeta o desempenho final da aprendizagem (BERGSTRA; BENGIO, 2012). Outra vantagem da busca aleatória é que ela permite que conhecimento a priori seja adicio- nado à busca.

Referências

BERGSTRA, J.; BENGIO, Y. Random search for hyper-parameter optimization. The Journal of Machine Learning Research , v. 13, n. 1, p. 281-305, 2012.

FACELI, K. et al. Inteligência Artificial: Uma abordagem de aprendizado de máquina. Rio de Janeiro: LTC, 2011.

KUHN, M.; JOHNSON, K. Applied predictive modeling. New York: Springer, 2013.

PROVOST, F.; FAWCETT, T. Data Science para negócios. Tradução de Marina Boscatto. Rio de Janeiro: Alta Books, 2016.