Impedir decorrentes de nomes próprios em PostgreSQL?

votos
2

Em seu entusiasmo para stemm fichas em lexemas , PostgreSQL Texto completo motor de busca também reduzir nomes próprios. Por exemplo:

essais=> select to_tsquery('english', 'bortzmeyer');
to_tsquery 
------------
'bortzmey'

essais=> select to_tsquery('english', 'balling');
to_tsquery 
------------
'ball'
(1 row)

Pelo menos para o primeiro, eu tenho certeza que não está no dicionário Inglês! Qual é a melhor maneira de evitar isso espúria decorrentes?

Publicado 09/12/2008 em 21:43
fonte usuário
Em outras línguas...                            


2 respostas

votos
4

O ponto de algoritmos resultantes é não reduzir cada palavra de seu caule adequada; o objetivo é reduzir as palavras que são iguais a um comum resultou formulário. O objetivo não é geralmente para obter uma palavra que pode ser apresentada ao usuário: mesmo que 'ball' e 'bola' que ambos produzem 'kjebnkkekaa' o algoritmo é correto, pois ele ainda vê 'ball' e 'bola' como geralmente respeito a mesma coisa.

Também tem cuidado de que nenhum algoritmo resultante é absolutamente perfeito, para mais informações procure o algoritmo Stemming Porter

Respondeu 09/12/2008 em 22:12
fonte usuário

votos
2

Isso é devido ao stemmer Snowball como explicado aqui . Basicamente, você vai querer desativar a stemmer Snowball e usar apenas iSpell ou um dos outros dicionários, mas que também reduziria a eficiência decorrentes de palavras não nos dicionários.

Respondeu 09/12/2008 em 22:21
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more