Análise Discriminante Linear de Fisher

Identifica a combinação linear de variáveis de características que podem melhor grupo de dados em classes separadas

Categoria: Módulos de Seleção de Recursos

Nota

Aplica-se a: Machine Learning Studio (clássico)

Este conteúdo diz respeito apenas ao Studio (clássico). Módulos semelhantes de arrasto e queda foram adicionados ao designer de Aprendizagem automática Azure. Saiba mais neste artigo comparando as duas versões.

Visão geral do módulo

Este artigo descreve como usar o módulo de Análise Discriminante Linear de Fisher no Azure Machine Learning Studio (clássico), para criar um novo conjunto de dados de recurso que captura a combinação de funcionalidades que melhor separa duas ou mais classes.

Este método é frequentemente usado para a redução da dimensionalidade, porque projeta um conjunto de características para um espaço de características menores, preservando a informação que discrimina entre classes. Isto não só reduz os custos computacionais para uma determinada tarefa de classificação, como pode ajudar a prevenir a sobremontagem.

Para gerar as pontuações, fornece uma coluna de etiqueta e um conjunto de colunas de características numéricas como entradas. O algoritmo determina a combinação ideal das colunas de entrada que separam linearmente cada grupo de dados, minimizando as distâncias dentro de cada grupo. O módulo devolve um conjunto de dados contendo as funcionalidades compactas e transformadas, juntamente com uma transformação que pode guardar e aplicar a outro conjunto de dados.

Mais sobre análise discriminada linear

A análise discriminatória linear é semelhante à análise da variância (ANOVA) na medida em que funciona comparando os meios das variáveis. Tal como a ANOVA, baseia-se nestes pressupostos:

  • Os preditores são independentes
  • As funções de densidade de probabilidade condicional de cada amostra são normalmente distribuídas
  • Variações entre grupos são semelhantes

A Análise Discriminante Linear é por vezes abreviada para LDA, mas isto é facilmente confundido com a atribuição de Dirichlet Latent. As técnicas são completamente diferentes, por isso, nesta documentação, usamos os nomes completos sempre que possível.

Como configurar a Análise Discriminante Linear

  1. Adicione o conjunto de dados de entrada e verifique se os dados de entrada satisfazem estes requisitos:

    • Os seus dados devem estar o mais completos possível. As filas com os valores em falta são ignoradas.
    • Espera-se que os valores tenham uma distribuição normal. Antes de utilizar a Fisher Linear Discriminant Analysis, reveja os dados para os outliers ou teste a distribuição.
    • Devias ter menos preditores do que amostras.
    • Remova quaisquer colunas não numéricas. O algoritmo examina todas as colunas numéricas válidas incluídas nas entradas e devolve um erro se as colunas inválidas forem incluídas. Se precisar de excluir quaisquer colunas numéricas, adicione um módulo Select Columns in Dataset antes da Análise Discriminante Linear de Fisher, para criar uma visão que contenha apenas as colunas que deseja analisar. Pode voltar a juntar-se às colunas mais tarde utilizando Colunas Adicionais. A ordem original das linhas está preservada.
  2. Ligue os dados de entrada ao módulo de Análise Discriminante Linear de Fisher.

  3. Para a coluna de etiquetas de classe, clique no seletor de colunas de lançamento e escolha uma coluna de etiquetas.

  4. Para o número de extratores de funcionalidades, digite o número de colunas que pretende como resultado.

    Por exemplo, se o seu conjunto de dados contiver oito colunas de recurso numérica, pode escrever 3 para as transformar num novo espaço de características reduzido de apenas três colunas.

    É importante entender que as colunas de saída não correspondem exatamente às colunas de entrada, mas representam uma transformação compacta dos valores nas colunas de entrada.

    Se utilizar 0 como valor para o Número de extratores de recursos, e as colunas n são utilizadas como entrada, os extratores de recursos n são devolvidos, contendo novos valores que representam o espaço de características n-dimensional.

  5. Execute a experimentação.

Resultados

O algoritmo determina a combinação de valores nas colunas de entrada que separa linearmente cada grupo de dados, minimizando as distâncias dentro de cada grupo, e cria duas saídas:

  • Características transformadas. Um conjunto de dados contendo o número especificado de colunas de extração de recursos, denominado col1, col2, col3, e assim por diante. A saída também inclui a variável de classe ou rótulo.

    Pode utilizar este conjunto compacto de valores para treinar um modelo.

  • Transformação da análise discriminatória linear de Fisher. Uma transformação que pode guardar e depois aplicar a um conjunto de dados que tem o mesmo esquema. Isto é útil se estiver a analisar muitos conjuntos de dados do mesmo tipo e quiser aplicar a mesma redução de funcionalidades a cada um. O conjunto de dados a que o aplica deve ter o mesmo esquema.

Exemplos

Por exemplo, seleção de recursos em machine learning, consulte a Galeria Azure AI:

Notas técnicas

Esta secção contém detalhes de implementação, dicas e respostas a perguntas frequentes.

Dicas de utilização

  • Este método funciona apenas em variáveis contínuas, não categóricas ou ordinais.

  • As linhas com valores em falta são ignoradas ao calcular a matriz de transformação.

  • Se salvar uma transformação de uma experiência, as transformações calculadas da experiência original são reaplicadas a cada novo conjunto de dados, e não são recompreensadas. Portanto, se pretender calcular um novo conjunto de funcionalidades para cada conjunto de dados, utilize uma nova instância de Fisher Linear Discriminant Analysis para cada conjunto de dados.

Detalhes de implementação

O conjunto de dados de funcionalidades é transformado com recurso a eigenvectors. Os eigenvectors para o conjunto de dados de entrada são calculados com base nas colunas de características fornecidas, também chamadas de matriz de discriminação.

A produção de transformação pelo módulo contém estes eigenvectors, que podem ser aplicados para transformar outro conjunto de dados que tem o mesmo esquema.

Para obter mais informações sobre como os valores de eigenvalues são calculados, consulte este artigo (PDF): Extração de recursos baseado em Eigenvector para classificação. Tymbal, Puuronen et al.

Entradas esperadas

Nome Tipo Descrição
Conjunto de dados Tabela de Dados Conjunto de dados de entrada

Parâmetros do módulo

Nome Tipo Intervalo Opcional Predefinição Descrição
Coluna de etiquetas de classe Seleção de Colunas Necessário Nenhum Selecione a coluna que contém as etiquetas de classe categóricas
Número de extratores de recursos Número inteiro >=0 Necessário 0 Número de extratores de recursos para utilizar. Se zero, todos os extratores de recurso serão usados

Saídas

Nome Tipo Descrição
Características transformadas Tabela de Dados Recursos de análise discriminatória linear de fisher transformados no espaço eigenvector
Transformação da análise discriminada linear de fisher Interface ITransform Transformação da análise discriminatória linear de Fisher

Exceções

Exceção Descrição
Erro 0001 A exceção ocorre se uma ou mais colunas especificadas de conjunto de dados não puderem ser encontradas.
Erro 0003 A exceção ocorre se uma ou mais entradas forem nulas ou vazias.
Erro 0017 A exceção ocorre se uma ou mais colunas especificadas tiverem o tipo não suportado pelo módulo atual.

Para obter uma lista de erros específicos dos módulos Studio (clássicos), consulte códigos de erro de aprendizagem automática.

Para obter uma lista de exceções da API, consulte códigos de erro da API de aprendizagem automática.

Ver também

Seleção de Recursos
Seleção de recursos baseados em filtros
Análise principal de componentes