Seleção de funcionalidades baseadas em filtro

Este artigo descreve como utilizar o componente Seleção de Funcionalidades Baseada em Filtros no estruturador do Azure Machine Learning. Este componente ajuda-o a identificar as colunas no conjunto de dados de entrada que têm o maior poder preditivo.

Em geral, a seleção de funcionalidades refere-se ao processo de aplicação de testes estatísticos a entradas, tendo em conta um resultado especificado. O objetivo é determinar que colunas são mais preditivas do resultado. O componente Seleção de Funcionalidades Baseada em Filtros fornece vários algoritmos de seleção de funcionalidades à escolha. O componente inclui métodos de correlação, como a correlação de Pearson e os valores chi-quadrados.

Quando utiliza o componente Seleção de Funcionalidades Baseada em Filtros, fornece um conjunto de dados e identifica a coluna que contém a etiqueta ou a variável dependente. Em seguida, especifique um único método a utilizar para medir a importância da funcionalidade.

O componente produz um conjunto de dados que contém as melhores colunas de funcionalidades, conforme classificado por potência preditiva. Também produz os nomes das funcionalidades e as respetivas pontuações da métrica selecionada.

O que é a seleção de funcionalidades baseadas em filtros

Este componente para a seleção de funcionalidades é denominado "baseado em filtros" porque utiliza a métrica selecionada para encontrar atributos irrelevantes. Em seguida, filtra as colunas redundantes do seu modelo. Pode escolher uma única medida estatística que se adeque aos seus dados e o componente calcula uma classificação para cada coluna de funcionalidade. As colunas são devolvidas classificadas pelas respetivas classificações de funcionalidades.

Ao escolher as funcionalidades certas, pode potencialmente melhorar a precisão e a eficiência da classificação.

Normalmente, utiliza apenas as colunas com as melhores pontuações para criar o seu modelo preditivo. As colunas com classificações de seleção de funcionalidades fracas podem ser deixadas no conjunto de dados e ignoradas quando cria um modelo.

Como escolher uma métrica de seleção de funcionalidades

O componente Filter-Based Seleção de Funcionalidades fornece uma variedade de métricas para avaliar o valor de informação em cada coluna. Esta secção fornece uma descrição geral de cada métrica e como é aplicada. Pode encontrar requisitos adicionais para utilizar cada métrica nas notas técnicas e nas instruções para configurar cada componente.

  • Correlação de Pearson

    A estatística de correlação de Pearson, ou o coeficiente de correlação de Pearson, também é conhecida nos modelos estatísticos como o r valor. Para duas variáveis, devolve um valor que indica a força da correlação.

    O coeficiente de correlação de Pearson é calculado através da covariância de duas variáveis e da divisão pelo produto dos seus desvios padrão. As alterações de dimensionamento nas duas variáveis não afetam o coeficiente.

  • Chi ao quadrado

    O teste bidirecional chi-quadrado é um método estatístico que mede a proximidade dos valores esperados com os resultados reais. O método pressupõe que as variáveis são aleatórias e obtidas a partir de uma amostra adequada de variáveis independentes. A estatística chi-quadrado resultante indica a distância dos resultados do resultado esperado (aleatório).

Dica

Se precisar de uma opção diferente para o método de seleção de funcionalidades personalizadas, utilize o componente Executar Script R .

Como configurar Filter-Based Seleção de Funcionalidades

Pode escolher uma métrica estatística padrão. O componente calcula a correlação entre um par de colunas: a coluna de etiqueta e uma coluna de funcionalidade.

  1. Adicione o componente Filter-Based Seleção de Funcionalidades ao pipeline. Pode encontrá-la na categoria Seleção de Funcionalidades no estruturador.

  2. Ligue um conjunto de dados de entrada que contenha, pelo menos, duas colunas que sejam funcionalidades potenciais.

    Para garantir que uma coluna é analisada e é gerada uma classificação de funcionalidade, utilize o componente Editar Metadados para definir o atributo IsFeature .

    Importante

    Certifique-se de que as colunas que está a fornecer como entrada são potenciais funcionalidades. Por exemplo, uma coluna que contém um único valor não tem nenhum valor de informação.

    Se souber que algumas colunas iriam criar funcionalidades incorretas, pode removê-las da seleção de colunas. Também pode utilizar o componente Editar Metadados para sinalizá-los como Categóricos.

  3. Para Método de classificação de funcionalidades, escolha um dos seguintes métodos estatísticos estabelecidos para utilizar no cálculo de pontuações.

    Método Requisitos
    Correlação de Pearson A etiqueta pode ser texto ou numérica. As funcionalidades têm de ser numéricas.
    Chi ao quadrado As etiquetas e funcionalidades podem ser texto ou numéricos. Utilize este método para a importância da funcionalidade de computação para duas colunas categóricas.

    Dica

    Se alterar a métrica selecionada, todas as outras seleções serão repostas. Por isso, certifique-se de que define esta opção primeiro.

  4. Selecione a opção Operar apenas em colunas de funcionalidades para gerar uma classificação apenas para colunas que foram marcadas anteriormente como funcionalidades.

    Se desmarcar esta opção, o componente criará uma classificação para qualquer coluna que cumpra os critérios, até ao número de colunas especificadas em Número de funcionalidades pretendidas.

  5. Para a coluna Destino, selecione Iniciar seletor de colunas para escolher a coluna de etiqueta pelo nome ou pelo respetivo índice. (Os índices são baseados em um.)
    É necessária uma coluna de etiqueta para todos os métodos que envolvem correlação estatística. O componente devolve um erro de tempo de conceção se não escolher nenhuma coluna de etiqueta ou múltiplas colunas de etiqueta.

  6. Em Número de funcionalidades pretendidas, introduza o número de colunas de funcionalidades que pretende que sejam devolvidas como resultado:

    • O número mínimo de funcionalidades que pode especificar é um, mas recomendamos que aumente este valor.

    • Se o número especificado de funcionalidades pretendidas for superior ao número de colunas no conjunto de dados, todas as funcionalidades serão devolvidas. Até as funcionalidades com pontuações zero são devolvidas.

    • Se especificar menos colunas de resultados do que as colunas de funcionalidades, as funcionalidades são classificadas por classificação descendente. Só são devolvidas as principais funcionalidades.

  7. Submeta o pipeline.

Importante

Se pretender utilizar a Seleção de Funcionalidades Baseada em Filtros em inferência, terá de utilizar a Transformação Selecionar Colunas para armazenar o resultado selecionado da funcionalidade e Aplicar Transformação para aplicar a transformação selecionada da funcionalidade ao conjunto de dados de classificação.

Veja a seguinte captura de ecrã para criar o pipeline, para garantir que as seleções de colunas são as mesmas para o processo de classificação.

Pipeline de exemplo

Resultados

Após a conclusão do processamento:

  • Para ver uma lista completa das colunas de funcionalidades analisadas e respetivas pontuações, clique com o botão direito do rato no componente e selecione Visualizar.

  • Para ver o conjunto de dados com base nos critérios de seleção de funcionalidades, clique com o botão direito do rato no componente e selecione Visualizar.

Se o conjunto de dados contiver menos colunas do que o esperado, verifique as definições do componente. Verifique também os tipos de dados das colunas fornecidas como entrada. Por exemplo, se definir Número de funcionalidades pretendidas como 1, o conjunto de dados de saída contém apenas duas colunas: a coluna etiqueta e a coluna de funcionalidades mais bem classificada.

Notas técnicas

Detalhes de implementação

Se utilizar a correlação de Pearson numa funcionalidade numérica e numa etiqueta categórica, a classificação da funcionalidade é calculada da seguinte forma:

  1. Para cada nível na coluna categórica, calcule a média condicional da coluna numérica.

  2. Correlacione a coluna de meios condicionais com a coluna numérica.

Requisitos

  • Não é possível gerar uma classificação de seleção de funcionalidades para nenhuma coluna designada como uma coluna Etiqueta ou Classificação .

  • Se tentar utilizar um método de classificação com uma coluna de um tipo de dados que o método não suporta, o componente gerará um erro. Em alternativa, será atribuída uma classificação zero à coluna.

  • Se uma coluna contiver valores lógicos (verdadeiro/falso), estes são processados como True = 1 e False = 0.

  • Uma coluna não pode ser uma funcionalidade se tiver sido designada como Etiqueta ou Pontuação.

Como os valores em falta são processados

  • Não pode especificar como uma coluna de destino (etiqueta) nenhuma coluna que tenha todos os valores em falta.

  • Se uma coluna contiver valores em falta, o componente ignora-os quando está a calcular a classificação da coluna.

  • Se uma coluna designada como coluna de funcionalidade tiver todos os valores em falta, o componente atribui uma classificação zero.

Passos seguintes

Veja o conjunto de componentes disponíveis para o Azure Machine Learning.