Предотвратить забойку имен собственных в PostgreSQL?

голоса
2

В его энтузиазм Stemm лексемы в лексем , PostgreSQL полнотекстового поиска также уменьшить существительные. Например:

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

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

По крайней мере, первый, я уверен, что это не в английский словарь! Что такое лучший способ избежать этого поддельного вытекающих?

Задан 09/12/2008 в 21:43
источник пользователем
На других языках...                            


2 ответов

голоса
4

Суть алгоритмов , обусловленных не сократить каждое слово в надлежащее стебле; цель состоит в том, чтобы сократить слова, которые похожи на общие стеблях формы. Цель , как правило , не получить слово , которое может быть представлено пользователю: даже если «налипание» и «мяч» будет как производить «kjebnkkekaa» алгоритм является правильным , потому что она по- прежнему видит «сальников» и «мяч» , как правило , в отношении тоже самое.

Также нужно учитывать , что не алгоритм морфологического не является абсолютно совершенным, для получения дополнительной информации смотрите вверх алгоритм морфологического Porter

Ответил 09/12/2008 в 22:12
источник пользователем

голоса
2

Это связано с Snowball стеммер , как описано здесь . В основном вы хотите отключить Snowball стеммер и использовать только ISpell или один из других словарей, но это также будет способствовать снижению забойных эффективностей для слов не в словарях.

Ответил 09/12/2008 в 22:21
источник пользователем

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