LSA vs. PCA (agrupamento de documentos)

25

Estou investigando várias técnicas usadas no agrupamento de documentos e gostaria de esclarecer algumas dúvidas sobre o PCA (análise de componentes principais) e LSA (análise semântica latente).

Primeira coisa - quais são as diferenças entre eles? Eu sei que no PCA, a decomposição de SVD é aplicada à matriz de covariância a termo, enquanto na LSA é a matriz de termo-documento. Mais alguma coisa?

Segundo - qual é o papel deles no procedimento de agrupamento de documentos? Pelo que li até agora, deduzo que o objetivo deles é reduzir a dimensionalidade, reduzir o ruído e incorporar as relações entre os termos na representação. Após a execução do PCA ou LSA, algoritmos tradicionais como meios-k ou métodos aglomerativos são aplicados no espaço de termo reduzido e medidas típicas de similaridade, como distância do cosseno, são usadas. Por favor me corrija se eu estiver errado.

Terceiro - importa se os vetores de termo TF / IDF são normalizados antes de aplicar PCA / LSA ou não? E eles devem ser normalizados novamente depois disso?

Quarto - digamos que eu realizei alguns agrupamentos no termo espaço reduzido pelo LSA / PCA. Agora, como devo atribuir rótulos aos clusters de resultados? Como as dimensões não correspondem às palavras reais, é uma questão difícil. A única idéia que me vem à mente é computar centróides para cada cluster usando vetores de termos originais e selecionando termos com pesos superiores, mas isso não parece muito eficiente. Existem algumas soluções específicas para esse problema? Não consegui encontrar nada.

Ficarei muito grato por esclarecer essas questões.

user1315305
fonte
LSA ou LSI: igual ou diferente? Se você quer dizer LSI = indexação semântica latente, corrija e padronize.
27613 Nick Cox
3
LSI e LSA são duas coisas diferentes? Eu pensei que eles são equivalentes.
user1315305
11
Eu não faço ideia; o ponto é (por favor) usar um termo para uma coisa e não duas; caso contrário, sua pergunta é ainda mais difícil de entender.
26613 Nick Cox
Ok, eu corrigi já. Obrigado por apontá-lo para fora :) #
311313305
3
A Wikipedia dá a impressão de que LSA = LSI. Mas LSI é análise de correspondência (CA). CA é um termo de análise estatística, como PCA, enquanto LSI / LSA é um termo de mineração de texto. Portanto, procure artigos comparando PCA e CA.
ttnphns

Respostas:

8
  1. PCA e LSA são análises que usam SVD. O PCA é uma classe geral de análise e pode, em princípio, ser aplicado a corpora de texto enumerado de várias maneiras. Em contraste, o LSA é um meio muito claramente especificado de analisar e reduzir o texto. Ambos estão aproveitando a ideia de que o significado pode ser extraído do contexto. No LSA, o contexto é fornecido nos números por meio de uma matriz termo-documento. No PCA que você propôs, o contexto é fornecido nos números, fornecendo um termo matriz de covariância (cujos detalhes da geração provavelmente podem lhe dizer muito mais sobre o relacionamento entre o PCA e o LSA). Você pode querer procurar aqui para mais detalhes.
  2. Você está basicamente no caminho certo aqui. Os motivos exatos pelos quais eles serão usados ​​dependerão do contexto e dos objetivos da pessoa que está jogando com os dados.
  3. A resposta provavelmente dependerá da implementação do procedimento que você está usando.
  4. Com cuidado e com grande arte. A maioria considera que as dimensões desses modelos semânticos são incompreensíveis. Observe que você quase certamente espera que haja mais de uma dimensão subjacente. Quando há mais de uma dimensão na análise fatorial, rotacionamos a solução fatorial para gerar fatores interpretáveis. No entanto, por algum motivo, isso normalmente não é feito para esses modelos. Sua abordagem parece uma maneira básica de começar sua arte ... embora eu tenha menos do que certeza de que a escala entre dimensões é semelhante o suficiente para confiar em uma solução de análise de cluster. Se você quiser brincar com o significado, considere também uma abordagem mais simples, na qual os vetores têm uma relação direta com palavras específicas, por exemplo, HAL .
russellpierce
fonte
6

O LSI é calculado na matriz termo-documento, enquanto o PCA é calculado na matriz de covariância, o que significa que o LSI tenta encontrar o melhor subespaço linear para descrever o conjunto de dados, enquanto o PCA tenta encontrar o melhor subespaço linear paralelo.

Gaurav Singh
fonte
4
Nick, você poderia fornecer mais detalhes sobre a diferença entre o melhor subespaço linear e o melhor subespaço linear paralelo? Isso está relacionado à ortogonalidade? Devo fazer isso como uma nova pergunta?
russellpierce
11
Melhor em que sentido? Minimizar a norma de Frobinius do erro de reconstrução? Nesse caso, com certeza parece PCA para mim.
Andrew M
2

Apenas uma extensão da resposta de russellpierce.

1) Essencialmente, o LSA é o PCA aplicado aos dados de texto. Ao usar o SVD para PCA, ele não é aplicado à matriz de covariância, mas diretamente à matriz de recurso-amostra, que é apenas a matriz termo-documento no LSA. A diferença é que o PCA geralmente requer normalização em termos de recursos para os dados, enquanto o LSA não.

Há uma boa palestra de Andrew Ng que ilustra as conexões entre PCA e LSA.

2/3) Como os dados do documento são de vários comprimentos, geralmente é útil normalizar a magnitude. Aqui, a normalização em termos de amostra deve ser usada, não a normalização em termos de recursos. Na prática, achei útil normalizar antes e depois do LSI.

Se a métrica do algoritmo de agrupamento não depender da magnitude (por exemplo, distância do cosseno), a última etapa de normalização poderá ser omitida.

4) Acha que esse é, em geral, um problema difícil de obter rótulos significativos dos clusters. Algumas pessoas extraem termos / frases que maximizam a diferença na distribuição entre o corpus e o cluster. Outra maneira é usar o cluster semi-supervisionado com rótulos predefinidos.

dontloo
fonte