Alocação de Dirichlet latente (LDA) e Processo Hierárquico de Dirichlet (HDP) são ambos processos de modelagem de tópicos. A principal diferença é que o LDA exige a especificação do número de tópicos, e o HDP não. Por que isso acontece? E quais são as diferenças, prós e contras de ambos os métodos de modelagem de tópicos?

Comentários

  • O HDP deve ser orientado por dados em relação ao número de tópicos que selecionará? Na prática, tentei executar o Blei ‘ é a implementação de HDP que consumiu toda a memória até eu matar o processo. Tenho 16 GB de RAM e pouco mais de 100 mil documentos curtos para analisar.

Resposta

HDP é uma extensão do LDA, projetada para abordar o caso em que o número de componentes da mistura (o número de “tópicos” em termos de modelagem de documento) não é conhecido a priori. Portanto, essa é a razão pela qual há uma diferença.

Usando LDA para modelagem de documentos, trata-se cada “tópico” como uma distribuição de palavras em algum vocabulário conhecido. Para cada documento, uma mistura de tópicos é desenhada de uma distribuição Dirichlet, um e, então, cada palavra no documento é um desenho independente dessa mistura (ou seja, selecionar um tópico e, em seguida, usá-lo para gerar uma palavra).

Para HDP (aplicado à modelagem de documento), também se usa um processo de Dirichlet para capturar a incerteza no número de tópicos. Assim, uma distribuição de base comum é selecionada, o que representa o conjunto infinito contável de tópicos possíveis para o corpus e, em seguida, a distribuição finita de tópicos para cada documento é amostrada a partir desta distribuição de base.

Quanto aos prós e contras, o HDP tem a vantagem de que o número máximo de tópicos pode ser ilimitado e aprendido com os dados, em vez de especificado com antecedência. Suponho que seja mais complicado de implementar e desnecessário no caso em que um número limitado de tópicos é aceitável.

Resposta

Curiosamente, nunca fiquei impressionado com o resultado do LDA hierárquico. Ele simplesmente não parece encontrar um nível ideal de granularidade para escolher o número de tópicos. Obtive resultados muito melhores executando algumas iterações de LDA regular, inspecionando manualmente os tópicos produzidos, decidindo se devo aumentar ou diminuir o número de tópicos e continuar iterando até obter a granularidade que estou procurando.

Lembre-se: o LDA hierárquico não pode ler sua mente … ele não sabe para que você realmente pretende usar a modelagem de tópico. Assim como com o agrupamento de k-means, você deve escolher o k que faz mais sentido para o seu caso de uso.

Resposta

Gostaria de salientar, uma vez que este é um dos principais acessos do Google para este tópico, que Latent Dirichlet Allocation (LDA), Hierarchical Dirichlet Processes (HDP), e hierárquica Latent Dirichlet Allocation (hLDA) são todos os modelos distintos.

O LDA modela documentos como misturas dirichlet de um número fixo de tópicos – escolhidos como um parâmetro do modelo pelo usuário – que, por sua vez, são misturas dirichlet de palavras. Isso gera um agrupamento probabilístico simples de termos em tópicos e documentos em tópicos.

O HDP modela tópicos como misturas de palavras, bem como LDA, mas em vez de documentos serem misturas de um número fixo de tópicos, o número de tópicos é gerado por um processo dirichlet, resultando no número de tópicos sendo uma variável aleatória também. A parte “hierárquica” do nome refere-se a outro nível sendo adicionado ao modelo gerador (o processo dirichlet produzindo o número de tópicos), não os próprios tópicos – os tópicos ainda são agrupamentos planos.

hLDA, por outro lado, é uma adaptação de LDA que modela tópicos como misturas de um nível novo e distinto de tópicos, extraídos de dirichlet distribuições e não processos. Ele ainda trata o número de tópicos como um hiperparâmetro, ou seja, independente dos dados. A diferença é que o agrupamento agora é hierárquico – ele aprende um agrupamento do primeiro conjunto de tópicos em si, fornecendo relações mais gerais e abstratas entre os tópicos (e, portanto, palavras e documentos). Pense nisso como agrupar as trocas de pilha em matemática, ciência, programação, história, etc., em oposição a agrupar ciência de dados e validação cruzada em estatísticas abstratas e tópicos de programação que compartilham alguns conceitos com, digamos, engenharia de software, mas a engenharia de software a troca está agrupada em um nível mais concreto com a troca da ciência da computação, e a similaridade entre todas as trocas mencionadas não aparece tanto até a camada superior de clusters.

Resposta

Tenho uma situação em que o HDP funciona bem em comparação com o LDA. Tenho cerca de 16.000 documentos que pertencem a várias classes.Como não sei quantos tópicos diferentes posso reunir para cada aula, o HDP é muito útil neste caso.

Resposta

Na verdade, o HDP requer muitos parâmetros ocultos, que estão no código. Se você jogar com esses parâmetros, obterá resultados diferentes (tópicos diferentes). As pessoas geralmente não prestam atenção a esses parâmetros ocultos e pensam que o modelo é capaz de encontrar tais parâmetros. Não é verdade. O usuário deve definir os parâmetros ‘eta’ ‘gamma’ e ‘alpha’ e máximo de tópicos. Se você especificar o máximo de tópicos, digamos, cerca de 23 tópicos, então seu modelo fornecerá 23 tópicos na saída. Se você configurar 15 tópicos, obterá 15 tópicos na saída….

Resposta

Yee Whye Teh et al “s artigo de 2005 Processos Dirichlet hierárquicos descreve um prior não paramétrico para agrupado problemas de agrupamento. Para o exemplo , o HDP ajuda a generalizar o Alocação latente de Dirichlet modelo para o caso em que o número de tópicos nos dados é descoberto pelo algoritmo de inferência em vez de ser especificado como um parâmetro do modelo. uma explicação sobre o processo Dirichlet pode ser encontrada aqui

Os modelos de tópicos prometem ajudar a resumir e organizar grandes arquivos de textos que não podem ser facilmente analisados à mão . O Processo Hierárquico de Dirichlet (HDP) é um poderoso sistema de membros mistos modelo do quadril para a análise não supervisionada de dados agrupados. Ao contrário de sua contraparte finita, alocação Dirichlet latente , o modelo de tópico HDP infere o número de tópicos a partir dos dados.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *