Selecção de características na aprendizagem de máquinas

Aprendizagem de máquinas

Shaurya Lalwani

Seguimento

Jul 10, 2020 – 7 min ler

>

Foto por Louis Hansel @shotsoflouis on Unsplash

No mundo real, Os dados não são tão limpos como se supõe muitas vezes. É aí que entra toda a mineração de dados e as disputas; para construir insights a partir dos dados que foram estruturados usando consultas, e agora provavelmente contém certos valores ausentes, e exibe possíveis padrões que são invisíveis a olho nu. É aí que entra o Machine Learning: Para verificar padrões e fazer uso desses padrões para prever resultados usando essas relações recém compreendidas nos dados.

Para se entender a profundidade do algoritmo, é preciso ler as variáveis nos dados, e o que essas variáveis representam. Entender isso é importante porque você precisa provar os seus resultados, com base na sua compreensão dos dados. Se os seus dados contêm cinco, ou mesmo cinquenta variáveis, digamos que você seja capaz de passar por todas elas. Mas e se os dados contiverem 200 variáveis? Você não tem tempo para analisar cada variável. Além disso, vários algoritmos não funcionarão com dados categóricos, então você tem que converter todas as colunas categóricas em variáveis quantitativas (elas parecem quantitativas, mas a métrica justificará que elas são categóricas), para empurrá-las para o modelo. Então, isso aumenta o número de variáveis nos seus dados, e agora você está pendurado por aí com 500 variáveis. Como você lida com elas? Você pode pensar que a redução da dimensionalidade é a resposta, de imediato. Algoritmos de redução de dimensionalidade irão reduzir as dimensões, mas a interpretabilidade não é tão boa assim. E se eu lhe disser que existem outras técnicas, que podem eliminar características, e ainda seria fácil de entender e interpretar as características retidas?

Dependente se a análise é baseada em regressão ou classificação, as técnicas de seleção de características podem diferir/variar, mas a idéia geral de como implementá-la permanece a mesma.

Aqui estão algumas técnicas de selecção de características para abordar esta questão:

Variáveis altamente correlacionadas entre si, dão a mesma informação ao modelo e, portanto, torna-se desnecessário incluí-las todas para a nossa análise. Por exemplo: Se um conjunto de dados contém um recurso “Tempo de Navegação”, e outro chamado “Dados Utilizados durante a Navegação”, então você pode imaginar que essas duas variáveis estarão correlacionadas até certo ponto, e nós veríamos essa alta correlação mesmo se pegarmos uma amostra imparcial dos dados. Nesse caso, exigiríamos apenas uma dessas variáveis para estar presente como um preditor no modelo, porque se usarmos ambas, então o modelo se ajustará demais e se tornará tendencioso em relação a essa(s) característica(s) específica(s).

Foto por Akin Cakiner em Unsplash

Valores-P

Em algoritmos como Regressão Linear, um modelo estatístico inicial é sempre uma boa ideia, pois ajuda a visualizar a importância das características, com a utilização dos seus valores P que foram obtidos com esse modelo. Ao definirmos um nível de significância, verificamos os valores P obtidos, e se esse valor for inferior ao nível de significância, mostra que a característica é significativa, ou seja, uma alteração nesse valor é susceptível de mostrar uma alteração no valor do Alvo.

Foto de Joshua Eckstein em Unsplash
>

>

Selecção Avançada

Selecção Avançada é uma técnica que envolve o uso de regressão por passos. Assim, o modelo começa a construir a partir do zero, ou seja, um modelo vazio, e então cada iteração adiciona uma variável de tal forma que há uma melhoria no modelo que está sendo construído. A variável a ser adicionada em cada iteração é determinada usando seu significado, e que pode ser calculada usando várias métricas, sendo uma comum o valor P obtido a partir de um modelo estatístico inicial construído usando todas as variáveis. Por vezes, a Seleção Avançada pode causar um ajuste excessivo porque pode adicionar variáveis altamente correlacionadas ao modelo, mesmo quando elas fornecem os mesmos dados para o modelo (mas o modelo mostra uma melhoria).

Foto por Edu Grande em Unsplash

Eliminação para trás

Eliminação para trás também, envolve uma seleção de características por etapas, de uma forma oposta à da Seleção para frente. Neste caso, o modelo inicial começa com todas as variáveis independentes, e uma a uma, estas variáveis são eliminadas (uma por iteração), caso não forneçam valor ao modelo de regressão recém formado em cada iteração. Isto é novamente, com base nos valores P obtidos usando o modelo estatístico inicial, e com base nestes valores P, as características são eliminadas do modelo. Usando este método também, há uma incerteza na remoção de variáveis altamente correlacionadas.

Foto de Markus Spiske on Unsplash

Eliminação recursiva de características (RFE)

RFE é uma técnica/algoritmo amplamente utilizada para selecionar um número exato de características significativas, às vezes para explicar um número particular de características “mais importantes” que afetam o negócio, e às vezes como um método para reduzir um número muito alto de características (digamos, cerca de 200-400) até apenas aquelas que criam um pouco de impacto no modelo, e eliminando o resto. A RFE utiliza um sistema baseado em rankings, para mostrar os rankings dos recursos no conjunto de dados, e esses rankings são usados para eliminar recursos em um loop recursivo, baseado na colinearidade presente entre eles, e, é claro, o significado desses recursos no modelo. Além de classificar as características, RFE pode mostrar se estas características são importantes ou não, mesmo para o número selecionado de características (porque é muito possível que o número selecionado, que escolhemos, pode não representar o número ótimo de características importantes, e que o número ótimo de características pode ser mais ou menos do que este número escolhido pelo usuário).

Foto por Andrew Seaman em Unsplash
>

>

Importância das características partilhadas

>

Quando falamos da interpretabilidade dos algoritmos de aprendizagem de máquinas, normalmente discutimos a regressão linear (pois podemos analisar a importância da característica utilizando os valores P) e a árvore de decisão (que praticamente mostra a importância da característica na forma de uma árvore, que também mostra a hierarquia de importância), mas por outro lado, muitas vezes usamos o gráfico de importância de variáveis, para traçar as variáveis e a “quantidade da sua importância”, em algoritmos como o Random Forest Classifier, Light Gradient Boosting Machine, e XG Boost. Isto é particularmente útil quando a importância bem estruturada das características precisa ser apresentada a um negócio que está sendo analisado.

Foto de Robert Anasch em Unsplash
>

Regularização

Regularização é feita para monitorar o trade-off entre o viés e a variância. O viés diz o quanto o modelo foi ajustado em excesso no conjunto de dados de treinamento. A variância nos diz como foram diferentes as previsões feitas nos conjuntos de dados de treinamento e teste. Idealmente, tanto o viés como a variância precisam ser reduzidos. A regularização vem para salvar o dia aqui! Existem principalmente dois tipos de técnicas de regularização:

L1 Regularização – Lasso: Lasso penaliza os coeficientes beta do modelo para mudar sua importância no modelo, e pode até mesmo aterrá-los (transformá-los em zeros, ou seja, basicamente remover essas variáveis do modelo final). Geralmente, Lasso é usado quando você observa que seu conjunto de dados tem um grande número de variáveis, e você precisa remover algumas delas para uma melhor compreensão de como as características importantes afetam seu modelo (ou seja, as características que são finalmente selecionadas pelo Lasso, e sua importância é atribuída).

L2 Regularização – Ridge: A função do Ridge é manter todas as variáveis, ou seja, usar todas as variáveis para construir o modelo, e ao mesmo tempo, atribuir-lhes importância de forma a que haja uma melhoria no desempenho do modelo. Ridge é uma grande escolha quando o número de variáveis no conjunto de dados é baixo, e portanto todas essas variáveis são necessárias para interpretar os insights e os resultados previstos obtidos.

Desde que Ridge mantém todas as variáveis intactas, e Lasso faz um trabalho melhor na atribuição de importância às variáveis, uma combinação de ambas, conhecida como Elastic-Net foi desenvolvida como uma forma de desenvolver um algoritmo, combinando as melhores características de Ridge e Lasso. Elastic-Net torna-se a escolha ideal dessa forma.

Foto por Hunter Harritt on Unsplash

Deixe uma resposta

O seu endereço de email não será publicado.