toco Modelos de aprendizado de máquina generativo x discriminativo - Unite.AI
Entre em contato
Masterclass de IA:

AI 101

Modelos de aprendizado de máquina generativo x discriminativo

mm
Atualização do on

Alguns modelos de aprendizado de máquina pertencem às categorias de modelo “generativo” ou “discriminativo”. No entanto, o que é a diferença entre essas duas categorias de modelos? O que significa um modelo ser discriminativo ou generativo?

A resposta curta é que os modelos generativos são aqueles que incluem a distribuição do conjunto de dados, retornando uma probabilidade para um determinado exemplo. Modelos generativos são frequentemente usados ​​para prever o que ocorre a seguir em uma sequência. Enquanto isso, modelos discriminativos são usados ​​para classificação ou regressão e retornam uma previsão baseado em condicional probabilidade. Vamos explorar as diferenças entre modelos generativos e discriminativos com mais detalhes, para que possamos realmente entender o que separa os dois tipos de modelos e quando cada tipo deve ser usado.

Modelos Gerativos vs. Discriminativos

Há uma variedade de maneiras de categorizar um modelo de aprendizado de máquina. Um modelo pode ser classificado como pertencente a diferentes categorias como: modelos generativos, modelos discriminativos, modelos paramétricos, modelos não paramétricos, modelos baseados em árvore, modelos não baseados em árvore.

Este artigo se concentrará nas diferenças entre modelos generativos e modelos discriminativos. Começaremos definindo modelos generativos e discriminativos e, em seguida, exploraremos alguns exemplos de cada tipo de modelo.

Modelos Generativos

Modelos generativos são aqueles que se concentram na distribuição das classes dentro do conjunto de dados. Os algoritmos de aprendizado de máquina normalmente modelam a distribuição dos pontos de dados. Os modelos generativos dependem de encontrar a probabilidade conjunta. Criando pontos onde um determinado recurso de entrada e uma saída/rótulo desejado existem simultaneamente.

Os modelos generativos são normalmente empregados para estimar probabilidades e probabilidades, modelar pontos de dados e discriminar entre classes com base nessas probabilidades. Como o modelo aprende uma distribuição de probabilidade para o conjunto de dados, ele pode fazer referência a essa distribuição de probabilidade para gerar novas instâncias de dados. Os modelos generativos geralmente dependem Teorema de Bayes para encontrar a probabilidade conjunta, encontrando p(x,y). Essencialmente, os modelos generativos modelam como os dados foram gerados, respondem à seguinte pergunta:

“Qual é a probabilidade de que esta classe ou outra classe tenha gerado este ponto/instância de dados?”

Exemplos de modelos generativos de aprendizado de máquina incluem Análise Discriminante Linear (LDA), modelos Ocultos de Markov e redes bayesianas como Naive Bayes.

Modelos discriminativos

Enquanto os modelos generativos aprendem sobre a distribuição do conjunto de dados, modelos discriminativos aprenda sobre o limite entre as classes dentro de um conjunto de dados. Com modelos discriminativos, o objetivo é identificar o limite de decisão entre classes para aplicar rótulos de classe confiáveis ​​a instâncias de dados. Os modelos discriminativos separam as classes no conjunto de dados usando probabilidade condicional, sem fazer suposições sobre pontos de dados individuais.

Os modelos discriminativos se propõem a responder à seguinte pergunta:

“Em que lado do limite de decisão esta instância se encontra?”

Exemplos de modelos discriminativos em aprendizado de máquina incluem máquinas de vetores de suporte, regressão logística, árvores de decisão e florestas aleatórias.

Diferenças entre generativo e discriminativo

Aqui está um rápido resumo das principais diferenças entre modelos generativos e discriminativos.

Modelos generativos:

  • Os modelos generativos visam capturar a distribuição real das classes no conjunto de dados.
  • Modelos generativos predizem a distribuição de probabilidade conjunta – p(x,y) – utilizando o Teorema de Bayes.
  • Os modelos generativos são computacionalmente caros em comparação com os modelos discriminativos.
  • Os modelos generativos são úteis para tarefas de aprendizado de máquina não supervisionadas.
  • Modelos generativos são mais afetados pela presença de outliers do que modelos discriminativos.

Modelos discriminativos:

  • Os modelos discriminativos modelam o limite de decisão para as classes de conjunto de dados.
  • Os modelos discriminativos aprendem a probabilidade condicional – p(y|x).
  • Os modelos discriminativos são computacionalmente baratos em comparação com os modelos generativos.
  • Os modelos discriminativos são úteis para tarefas de aprendizado de máquina supervisionadas.
  • Os modelos discriminativos têm a vantagem de serem mais robustos a outliers, ao contrário dos modelos generativos.
  • Os modelos discriminativos são mais robustos para outliers em comparação com os modelos generativos.

Agora vamos explorar brevemente alguns exemplos diferentes de modelos de aprendizado de máquina generativo e discriminativo.

Exemplos de modelos generativos

Análise Discriminante Linear (LDA)

modelos LDA função estimando a variância e a média dos dados para cada classe no conjunto de dados. Após o cálculo da média e das variâncias para cada classe, as previsões podem ser feitas estimando a probabilidade de que um determinado conjunto de entradas pertença a uma determinada classe.

Modelos ocultos de Markov

Cadeias de Markov podem ser pensados ​​como gráficos com probabilidades que indicam a probabilidade de passarmos de um ponto na cadeia, um “estado”, para outro estado. Cadeias de Markov são usadas para determinar a probabilidade de passar do estado j para o estado i, que pode ser denotado como p(i,j). Esta é apenas a probabilidade conjunta mencionada acima. Um modelo de Markov oculto é onde uma cadeia de Markov invisível e não observável é usada. As entradas de dados são dadas ao modelo e as probabilidades para o estado atual e o estado imediatamente anterior a ele são usadas para calcular o resultado mais provável.

Redes Bayesianas

Redes bayesianas são um tipo de modelo gráfico probabilístico. Eles representam dependências condicionais entre variáveis, conforme representado por um gráfico acíclico direcionado. Em uma rede bayesiana, cada aresta do grafo representa uma dependência condicional e cada nó corresponde a uma variável única. A independência condicional para as relações únicas no gráfico pode ser usada para determinar a distribuição conjunta das variáveis ​​e calcular a probabilidade conjunta. Em outras palavras, uma rede bayesiana captura um subconjunto dos relacionamentos independentes em uma distribuição de probabilidade conjunta específica.

Uma vez que uma rede bayesiana tenha sido criada e definida adequadamente, com variáveis ​​aleatórias, relações condicionais e distribuições de probabilidade conhecidas, ela pode ser usada para estimar a probabilidade de eventos ou resultados.

Um dos tipos mais comumente usados ​​de Redes Bayesianas é o modelo Naive Bayes. Um modelo Naive Bayes lida com o desafio de calcular a probabilidade de conjuntos de dados com muitos parâmetros/variáveis, tratando todos os recursos como independentes uns dos outros.

Exemplos de modelos discriminativos

Máquinas de vetor de suporte

Suporte máquinas vetoriais operar desenhando um limite de decisão entre os pontos de dados, encontrando o limite de decisão que melhor separa as diferentes classes no conjunto de dados. O algoritmo SVM desenha linhas ou hiperplanos que separam pontos, para espaços bidimensionais e espaços 2D, respectivamente. O SVM procura encontrar a linha/hiperplano que melhor separa as classes tentando maximizar a margem, ou seja, a distância entre a linha/hiperplano até os pontos mais próximos. Os modelos SVM também podem ser usados ​​em conjuntos de dados que não são linearmente separáveis ​​usando o “truque do kernel” para identificar limites de decisão não lineares.

Regressão Logística

Regressão logística é um algoritmo que usa uma função logit (log-odds) para determinar a probabilidade de uma entrada estar em um dos dois estados. Uma função sigmoide é usada para “esmagar” a probabilidade em direção a 0 ou 1, verdadeiro ou falso. Probabilidades maiores que 0.50 são consideradas classe 1, enquanto probabilidades 0.49 ou menores são consideradas 0. Por esse motivo, a regressão logística é normalmente usada em problemas de classificação binária. No entanto, a regressão logística pode ser aplicada a problemas de várias classes usando uma abordagem de um contra todos, criando um modelo de classificação binária para cada classe e determinando a probabilidade de um exemplo ser uma classe de destino ou outra classe no conjunto de dados.

Árvore de decisão

A árvore de decisão funções de modelo dividindo um conjunto de dados em porções cada vez menores e, uma vez que os subconjuntos não podem mais ser divididos, o resultado é uma árvore com nós e folhas. Os nós em uma árvore de decisão são onde as decisões sobre os pontos de dados são tomadas usando diferentes critérios de filtragem. As folhas em uma árvore de decisão são os pontos de dados que foram classificados. Os algoritmos de árvore de decisão podem lidar com dados numéricos e categóricos, e as divisões na árvore são baseadas em variáveis/recursos específicos.

Florestas Aleatórias

A modelo de floresta aleatória é basicamente apenas uma coleção de árvores de decisão onde as previsões das árvores individuais são calculadas para chegar a uma decisão final. O algoritmo de floresta aleatória seleciona observações e recursos aleatoriamente, construindo as árvores individuais com base nessas seleções.

Este artigo tutorial irá explorar como criar um Box Plot no Matplotlib. Os gráficos de caixa são usados ​​para visualizar estatísticas resumidas de um conjunto de dados, exibindo atributos da distribuição, como o intervalo e a distribuição dos dados.

Blogueiro e programador com especialidades em Machine Learning e Aprendizagem profunda tópicos. Daniel espera ajudar outras pessoas a usar o poder da IA ​​para o bem social.