Seleção de características em aprendizado de máquina

Olá, Habr!

Nós, da «Rexoft», traduzimos para o português um artigo Seleção de Recursos em Aprendizado de Máquina. Esperamos que seja útil para todos que se interessam pelo tema.

No mundo real, os dados nem sempre são tão limpos quanto os clientes empresariais às vezes pensam. É por isso que a análise inteligente de dados (data mining e data wrangling) é tão procurada. Ela ajuda a identificar valores ausentes e padrões em dados estruturados por consultas que não podem ser determinadas manualmente. Para encontrar e usar esses padrões para prever resultados com as conexões descobertas nos dados, será útil o aprendizado de máquina (Machine Learning).

Para entender qualquer algoritmo, é necessário examinar todas as variáveis nos dados e descobrir o que essas variáveis representam. Isso é extremamente importante, pois a justificativa dos resultados se baseia na compreensão dos dados. Se os dados contêm 5 ou até 50 variáveis, é possível examiná-las todas. Mas e se forem 200? Então, simplesmente não haverá tempo suficiente para analisar cada variável separadamente. Além disso, alguns algoritmos não funcionam para dados categóricos, e então será necessário transformar todas as colunas categóricas em variáveis numéricas (elas podem parecer numéricas, mas as métricas mostrarão que são categóricas) para incluí-las no modelo. Assim, o número de variáveis aumenta, e elas se aproximam de 500. O que fazer agora? Pode-se pensar que a resposta será a redução de dimensionalidade. Os algoritmos de redução de dimensionalidade diminuem o número de parâmetros, mas afetam negativamente a interpretabilidade. E se existirem outras técnicas que excluam características e ainda assim permitam compreender e interpretar facilmente as restantes?

Dependendo se a análise é baseada em regressão ou classificação, os algoritmos de seleção de recursos podem variar, mas a ideia principal de sua implementação permanece a mesma.

Variáveis fortemente correlacionadas

Variáveis que estão fortemente correlacionadas entre si fornecem à modelo a mesma informação; portanto, não é necessário usar todas elas para análise. Por exemplo, se um conjunto de dados contém as variáveis "Tempo online" e "Tráfego utilizado", pode-se supor que haverá uma correlação entre elas, e observará uma forte correlação mesmo ao escolher uma amostra de dados imparcial. Nesse caso, apenas uma dessas variáveis é necessária no modelo. Se ambas forem usadas, o modelo pode acabar sobreajustado (overfit) e tendencioso em relação a uma característica específica.

Valores-p

Em algoritmos como regressão linear, começar com um modelo estatístico inicial é sempre uma boa ideia. Isso ajuda a mostrar a importância das variáveis por meio de seus valores-p, que foram gerados por esse modelo. Ao estabelecer um nível de significância, testamos os valores-p obtidos, e se algum valor estiver abaixo do nível de significância estabelecido, essa variável é considerada significativa, ou seja, uma mudança em seu valor provavelmente resultará em uma mudança no valor alvo (target).

Seleção direta

A seleção direta é uma técnica que envolve a aplicação de regressão passo a passo. A construção do modelo começa do zero, ou seja, a partir de um modelo vazio, e em cada iteração uma variável que contribui para a melhoria do modelo em construção é adicionada. A variável a ser adicionada ao modelo é determinada pela sua significância. Isso pode ser calculado usando várias métricas. O método mais comum é a aplicação de valores-p obtidos no modelo estatístico inicial usando todas as variáveis. Às vezes, a seleção direta pode levar ao sobreajuste do modelo, pois variáveis fortemente correlacionadas podem acabar no modelo, mesmo que forneçam a mesma informação ao modelo (mas o modelo ainda assim mostra uma melhoria).

Seleção reversa

A seleção reversa também consiste na exclusão passo a passo de características, mas na direção oposta em comparação com a seleção direta. Neste caso, o modelo inicial inclui todas as variáveis independentes. Em seguida, as variáveis são excluídas (uma por iteração), caso não contribuam para o novo modelo de regressão em cada iteração. A exclusão de características baseia-se nos valores p do modelo inicial. Esse método também apresenta incerteza ao remover variáveis altamente correlacionadas.

Exclusão Recursiva de Características

RFE é uma técnica/algoritmo amplamente utilizado para selecionar um número exato de características significativas. Às vezes, o método é usado para explicar um certo número dos "mais importantes" fatores que influenciam os resultados; outras vezes, para reduzir um número muito grande de variáveis (cerca de 200-400), mantendo apenas aquelas que contribuem de alguma forma para o modelo, enquanto todas as outras são excluídas. RFE utiliza um sistema de classificação. As características no conjunto de dados recebem classificações. Essas classificações são então usadas para a exclusão recursiva de características, dependendo da colinearidade entre elas e da significância dessas características no modelo. Além de classificar características, o RFE pode mostrar se essas características são importantes ou não, mesmo para um número fixo de características (porque é muito provável que o número escolhido de características não seja ótimo, e o número ideal pode ser maior ou menor do que o selecionado).

Gráfico de Importância das Características

Falando sobre a interpretabilidade dos algoritmos de aprendizado de máquina, geralmente discutem-se regressões lineares (que permitem analisar a importância das características através de valores p) e árvores de decisão (que mostram literalmente a importância das características em forma de árvore, além de sua hierarquia). Por outro lado, em algoritmos como Random Forest, LightGBM e XG Boost, um gráfico de importância das características é frequentemente utilizado, ou seja, um gráfico das variáveis e "quantidade de sua importância" é construído. Isso é especialmente útil quando é necessário fornecer uma justificativa estruturada da importância das características em relação ao seu impacto nos negócios.

Regularização

A regularização é feita para controlar o equilíbrio entre viés (bias) e variação (variance). O viés mostra o quão bem o modelo se ajustou (overfit) ao conjunto de dados de treinamento. A variação mostra o quanto as previsões foram diferentes entre os conjuntos de dados de treinamento e de teste. Idealmente, tanto o viés quanto a variação devem ser baixos. É aqui que a regularização ajuda! Existem duas principais técnicas:

Regularização L1 — Lasso: O Lasso penaliza os coeficientes de peso do modelo para alterar sua importância para o modelo e pode até zerá-los (ou seja, remover essas variáveis do modelo final). Geralmente, o Lasso é usado quando o conjunto de dados contém um grande número de variáveis e é necessário excluir algumas delas para entender melhor como as características importantes afetam o modelo (ou seja, aquelas características que foram selecionadas pelo Lasso e que têm uma importância atribuída).

Regularização L2 — Método Ridge: A tarefa do Ridge é manter todas as variáveis e ao mesmo tempo atribuir importância a elas com base na contribuição para a eficácia do modelo. O Ridge será uma boa escolha se o conjunto de dados contiver um pequeno número de variáveis e todas forem necessárias para interpretar as conclusões e os resultados obtidos.

Já que o Ridge mantém todas as variáveis, enquanto o Lasso estabelece melhor sua importância, foi desenvolvido um algoritmo que combina os melhores recursos de ambas as regularizações e é conhecido como Elastic-Net.

Existem ainda muitas outras maneiras de seleção de características para aprendizado de máquina, mas a ideia principal continua a mesma: demonstrar a importância das variáveis e, em seguida, excluir algumas delas com base na importância obtida. A importância é um termo muito subjetivo, pois não se refere a uma única métrica, mas a um conjunto de métricas e diagramas que podem ser usados para encontrar características-chave.

Obrigado pela leitura! Boas aprendizagens!

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster