Pergunta

Eu estava pensando em escrever um script PHP que iria analisar o conteúdo de uma página CMS'd (ie campo de banco de dados) e, em seguida, gerar automaticamente (X) HTML META Descrição e palavras-chave tags, mas como sempre não há nenhum ponto reinventar a roda assim Eu estou querendo saber se alguém sabe de tal beastie um?

O ex imagino seria algo como um regex relativamente simples para agarrar a primeira frase ou duas, enquanto o último provavelmente envolveria eliminação de palavras contra uma palavras-comuns dicionário e, em seguida, ponderação de frequência ou similar.

Foi útil?

Solução

Os problemas que você está considerando são dois: um de extração de palavras-chave e um dos sumarização documento. O primeiro, que eu, obviamente, usar palavras-chave tem uma abordagem ingênua muito simples: escolher a palavra mais frequente no conteúdo, menos todos os stopwords (procure isto em Wikipedia se você não sabe o que é). Existem muitos métodos mais avançados, incluindo ponderação para a inclusão de sinônimos, localização no texto ou marcação, e muito mais. Existem alguns exemplos de scripts de extração fáceis de palavra-chave em PHP você pode implementar provavelmente sem problemas. Apenas o Google busca algo como "PHP extração de palavras-chave" e você encontrará alguns.

O segundo problema, por outro lado, é um pouco mais difícil, e ainda é a fonte de um monte de trabalho acadêmico. Você precisa de sumarização para uma descrição meta tag muito completo. Pode não ser realmente vale o seu tempo, se você não está procurando um projeto de AI-escala longa que ainda pode sair como rígida ou incoerente. Outra abordagem seria simplesmente uma heurística que utiliza extração de palavra-chave: "Este artigo é sobre (palavra-chave primeiro o mais comum), (segundo mais comum palavra-chave), e (palavra-chave terceiro mais comum)." Você está, pelo menos, obter o benefício de montagem em algum conteúdo, tanto de palavras-chave e descrição. Se você gostaria de sacudir, usar alguns sinônimos vez. Há um PHP implementação semi-funcional do WordNet , mas eu sugiro a terceirização para o Natural Language Toolkit para Python para o trabalho pesado lá, como a maior parte do trabalho já está feito para você.

Eu gostaria de ter um momento breve para incentivar a sua investigação nesta área e ignorar o naysaying do Sr. Warnica. Meta informação é importante tanto para a classificação de documentos e extração de informações na área de pesquisa. Seria insensato não tem os dados, e é, na verdade, vale a pena para automatizá-lo para sistemas de gerenciamento de conteúdo em grande escala. Boa sorte com seus esforços.

Outras dicas

Os Yahoo Pipes módulo Term Extractor faz algo semelhante ao que você quer. Infelizmente eu não tenho conhecimento da fonte de módulos de tubulações que estão sendo aberta.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top