Fundamentos de IA
Modelos de Aprendizado de Máquina Gerativos vs. Discriminativos
Alguns modelos de aprendizado de máquina pertencem a categorias de “gerativos” ou “discriminativos”. No entanto, qual é a diferença entre essas duas categorias de modelos? O que significa que um modelo seja discriminativo ou gerativo?
A resposta curta é que os modelos gerativos são aqueles que incluem a distribuição do conjunto de dados, retornando uma probabilidade para um exemplo dado. Os modelos gerativos são frequentemente usados para prever o que ocorre em seguida em uma sequência. Enquanto isso, os modelos discriminativos são usados para classificação ou regressão e retornam uma previsão com base na probabilidade condicional . Vamos explorar as diferenças entre os modelos gerativos e discriminativos em mais detalhes, para que possamos entender verdadeiramente o que separa os dois tipos de modelos e quando cada tipo deve ser usado.
Modelos Gerativos vs. Discriminativos
Existem várias maneiras de categorizar um modelo de aprendizado de máquina. Um modelo pode ser classificado como pertencente a diferentes categorias, como: modelos gerativos, modelos discriminativos, modelos paramétricos, modelos não paramétricos, modelos baseados em árvores, modelos não baseados em árvores.
Este artigo se concentrará nas diferenças entre os modelos gerativos e discriminativos. Vamos começar definindo ambos os modelos gerativos e discriminativos, e então exploraremos alguns exemplos de cada tipo de modelo.
Modelos Gerativos
Modelos gerativos 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 gerativos dependem da probabilidade conjunta. Criando pontos onde um recurso de entrada dado e um rótulo de saída desejado existem simultaneamente.
Os modelos gerativos são normalmente empregados para estimar probabilidades e verossimilhança, modelando pontos de dados e discriminando entre classes com base nessas probabilidades. Como o modelo aprende uma distribuição de probabilidade para o conjunto de dados, ele pode referenciar essa distribuição de probabilidade para gerar novas instâncias de dados. Os modelos gerativos frequentemente dependem do teorema de Bayes para encontrar a probabilidade conjunta, encontrando p(x,y). Basicamente, os modelos gerativos modelam como os dados foram gerados, respondendo à seguinte pergunta:
“Qual é a probabilidade de que essa classe ou outra classe tenha gerado esse ponto de dados/instância?”
Exemplos de modelos de aprendizado de máquina gerativos incluem Análise Discriminante Linear (LDA), Modelos de Markov Ocultos e Redes Bayesianas como Naive Bayes.
Modelos Discriminativos
Enquanto os modelos gerativos aprendem sobre a distribuição do conjunto de dados, os modelos discriminativos aprendem sobre a fronteira de decisão entre as classes dentro do conjunto de dados. Com os modelos discriminativos, o objetivo é identificar a fronteira de decisão entre as classes para aplicar rótulos de classe confiáveis às instâncias de dados. Os modelos discriminativos separam as classes no conjunto de dados usando a probabilidade condicional, não fazendo nenhuma suposição sobre os pontos de dados individuais.
Os modelos discriminativos buscam responder à seguinte pergunta:
“De que lado da fronteira de decisão está essa instância?”
Exemplos de modelos discriminativos em aprendizado de máquina incluem Máquinas de Vetor de Suporte, Regressão Logística, Árvores de Decisão e Florestas Aleatórias.
Diferenças entre Gerativos e Discriminativos
Aqui está um resumo rápido das principais diferenças entre os modelos gerativos e discriminativos.
Modelos Gerativos:
- Os modelos gerativos visam capturar a distribuição real das classes no conjunto de dados.
- Os modelos gerativos preveem a distribuição de probabilidade conjunta – p(x,y) – utilizando o Teorema de Bayes.
- Os modelos gerativos são computacionalmente caros em comparação com os modelos discriminativos.
- Os modelos gerativos são úteis para tarefas de aprendizado de máquina não supervisionadas.
- Os modelos gerativos são afetados pela presença de outliers mais do que os modelos discriminativos.
Modelos Discriminativos:
- Os modelos discriminativos modelam a fronteira de decisão para as classes no 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 gerativos.
- Os modelos discriminativos são úteis para tarefas de aprendizado de máquina supervisionadas.
- Os modelos discriminativos têm a vantagem de ser mais robustos a outliers, ao contrário dos modelos gerativos.
- Os modelos discriminativos são mais robustos a outliers em comparação com os modelos gerativos.
Agora, vamos explorar brevemente alguns exemplos diferentes de modelos de aprendizado de máquina gerativos e discriminativos.
Exemplos de Modelos Gerativos
Análise Discriminante Linear (LDA)
Modelos LDA funcionam estimando a variância e a média dos dados para cada classe no conjunto de dados. Depois que a média e as variâncias para cada classe são calculadas, previsões podem ser feitas estimando a probabilidade de que um conjunto de entradas dado pertença a uma classe dada.
Modelos de Markov Ocultos
As Cadeias de Markov podem ser pensadas como grafos com probabilidades que indicam quão provável é que passemos de um ponto na cadeia, um “estado”, para outro estado. As cadeias de Markov são usadas para determinar a probabilidade de se mover de um estado j para um estado i, que pode ser denotado como p(i,j). Isso é 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 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, como representado por um Grafo 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 grafo 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 das relações independentes em uma distribuição de probabilidade conjunta específica.
Uma vez que uma rede bayesiana tenha sido criada e adequadamente definida, 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 comuns de Redes Bayesianas é o modelo Naive Bayes. Um modelo Naive Bayes lida com o desafio de calcular a probabilidade para conjuntos de dados com muitos parâmetros/variáveis tratando todas as características como independentes umas das outras.
Exemplos de Modelos Discriminativos
Máquinas de Vetor de Suporte
Máquinas de Vetor de Suporte operam desenhando uma fronteira de decisão entre os pontos de dados, encontrando a fronteira de decisão que melhor separa as classes diferentes no conjunto de dados. O algoritmo SVM desenha linhas ou hiperplanos que separam os pontos, para espaços bidimensionais e tridimensionais, respectivamente. O SVM busca encontrar a linha/hiperplano que melhor separa as classes, tentando maximizar a margem, ou a distância entre a linha/hiperplano e 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 fronteiras 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 de dois estados. Uma função sigmoide é usada para “apertar” a probabilidade em direção a 0 ou 1, verdadeiro ou falso. Probabilidades maiores que 0,50 são assumidas como classe 1, enquanto probabilidades 0,49 ou menores são assumidas como 0. Por essa razão, 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 multi-classe usando uma abordagem de um contra todos, criando um modelo de classificação binária para cada classe e determinando a probabilidade de que um exemplo seja uma classe-alvo ou outra classe no conjunto de dados.
Árvore de Decisão
Um modelo de árvore de decisão funciona dividindo um conjunto de dados em porções menores e menores, e uma vez que os subconjuntos não possam ser divididos mais, 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 feitas 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
Um modelo de floresta aleatória é basicamente apenas uma coleção de árvores de decisão, onde as previsões das árvores individuais são médias 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 explorará como criar um Gráfico de Caixa em Matplotlib. 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 de dados e a distribuição.












