Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
18.06.2008, 15:00
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
Поставил snowball для русской морфологии. При запросе на, например, "человека" находит все склонения, а если "человек" - то не находит. PostgreSQL 8.3(.3). Как вылечить? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.06.2008, 15:58
|
|||
---|---|---|---|
|
|||
Проблема с fts |
|||
#18+
QuessirПоставил snowball для русской морфологии. При запросе на, например, "человека" находит все склонения, а если "человек" - то не находит. PostgreSQL 8.3(.3). Как вылечить? Куда "поставил" ? Он в 8.3 по-умолчанию стоит. Проверь: Код: plaintext 1. 2. 3. 4. 5. 6. 7.
А вообще, надо бы привести больше информации. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.06.2008, 02:36
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
Поставил имелось ввиду применил. :)) С "человек"-ом не совсем удачный пример получился, прошу прощения. Вот пример с не совсем русским словом. Код: plaintext 1. 2. 3. 4. 5. 6. 7.
И обычный Код: plaintext 1. 2. 3. 4. 5. 6.
Или вот Код: plaintext 1. 2. 3. 4. 5. 6.
Т.е. он режет только один суффикс/окончание. Как поступать в таких ситуациях? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.06.2008, 22:04
|
|||
---|---|---|---|
|
|||
Проблема с fts |
|||
#18+
QuessirТ.е. он режет только один суффикс/окончание. Как поступать в таких ситуациях? Чего вы хотите добиться? Snowball так устроен, что обрезает только одно окончание. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
24.06.2008, 15:45
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
iz QuessirТ.е. он режет только один суффикс/окончание. Как поступать в таких ситуациях? Чего вы хотите добиться? Snowball так устроен, что обрезает только одно окончание. видимо автор хотел добиться поиска с учетом словоформ, нормальным. Ведь обрезать одно окончание слова недостаточно, это примитивный вариант Такое существует в природе? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
24.06.2008, 15:58
|
|||
---|---|---|---|
|
|||
Проблема с fts |
|||
#18+
Winnipuh видимо автор хотел добиться поиска с учетом словоформ, нормальным. Ведь обрезать одно окончание слова недостаточно, это примитивный вариант Такое существует в природе? Обрезать нужно только одно окончание, так как остальные "словоформы", как вы их называете, таковыми не являются. Это формы другого слова, однокоренного с исходным. То есть у них общий корень, но разные суффиксы и окончания. Стемминг окончания в слове "Португалия" нужен только для того, чтобы находить по этому запросу все склонения: "Португалии", "Португалию" и т.д., но не другое слово "португальцы". Стемминг окончания в слове "португальцы" нужен только для того, чтобы находить все его склонения: "португальцев", "португальцами" и т.д., но не другие однокоренные слова вроде "Португалия" или "Порту". ... |
|||
:
Нравится:
Не нравится:
|
|||
|
25.06.2008, 22:12
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
Понятно, но может как-то можно сделать так сказать "агрессивный стемминг". ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.06.2008, 12:13
|
|||
---|---|---|---|
|
|||
Проблема с fts |
|||
#18+
Мне в голову только приходит многократное пропускание через стемминг, пока лексема не перестанет меняться. Но хорошим это решение я не назову. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.06.2008, 12:45
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
iz Winnipuh видимо автор хотел добиться поиска с учетом словоформ, нормальным. Ведь обрезать одно окончание слова недостаточно, это примитивный вариант Такое существует в природе? Обрезать нужно только одно окончание, так как остальные "словоформы", как вы их называете, таковыми не являются. Это формы другого слова, однокоренного с исходным. То есть у них общий корень, но разные суффиксы и окончания. Стемминг окончания в слове "Португалия" нужен только для того, чтобы находить по этому запросу все склонения: "Португалии", "Португалию" и т.д., но не другое слово "португальцы". Стемминг окончания в слове "португальцы" нужен только для того, чтобы находить все его склонения: "португальцев", "португальцами" и т.д., но не другие однокоренные слова вроде "Португалия" или "Порту". так доходчиво расписали про "словоформы", а что означает "стемминг", как вы его называете? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.06.2008, 14:27
|
|||
---|---|---|---|
|
|||
Проблема с fts |
|||
#18+
Winnipuh так доходчиво расписали про "словоформы", а что означает "стемминг", как вы его называете? Стемминг -- процесс приведения словоформы (образованной, как правило, путем склонения) к нормальному виду (стему). Нормальный вид в данном случае -- та часть слова, которая является общей для всех словоформ, образованных путем склонения. Важно понимать, что стем необязательно является корнем слова. Пример, если лень залезть в psql с ФТС: 'московский' --> 'московск'. См. также выше в этой дискуссии. Алгоритмов стемминга существует великое множество. Snowball -- одно из семейств таких алгоритмов. Подробнее -- см. в Википедии. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.06.2008, 14:28
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
iz Winnipuh так доходчиво расписали про "словоформы", а что означает "стемминг", как вы его называете? Стемминг -- процесс приведения словоформы (образованной, как правило, путем склонения) к нормальному виду (стему). Нормальный вид в данном случае -- та часть слова, которая является общей для всех словоформ, образованных путем склонения. Важно понимать, что стем необязательно является корнем слова. Пример, если лень залезть в psql с ФТС: 'московский' --> 'московск'. См. также выше в этой дискуссии. Алгоритмов стемминга существует великое множество. Snowball -- одно из семейств таких алгоритмов. Подробнее -- см. в Википедии. спасибо за объяснение смысла английского слова русскими словами ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.06.2010, 12:57
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
Кстати, проблема приведения к корню не решается рекутсивным стеммингом, как было рекомендовано выше: select * from ts_debug('russian','стокгольмский'); => стокгольмск select * from ts_debug('russian','стокгольмск'); => стокгольмск ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.06.2010, 13:46
|
|||
---|---|---|---|
|
|||
Проблема с fts |
|||
#18+
а как работает FTS для иероглифичного письма, например японского? Хотябы в общих чертах, просто интересно :) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.06.2010, 14:41
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
ответ, кстати, так и не был дан. Подобную тему я поднял здесь: http://forum.sql.ru/forum/actualthread.aspx?tid=767810 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.06.2010, 16:47
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
yack, я эту проблему уже решил и дал решение. Я делал "нормализацию" слов - делал перебор окончаний для получения минимальной лексемы, по ней потом и ищем со звёздочкой (prefix matching ): http://sql.ru/forum/actualthread.aspx?tid=721916 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.06.2010, 16:51
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
Только массив расширил: Код: plaintext
Прецендентные слова, которые портили поиск по части слова: Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.06.2010, 17:04
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
iz, по-моему стеминг вообще НЕ имеет смыла, что и показано инсталляцией PG - по-умолчанию в нём идёт только список стоп-слов. Никто кроме человека понимающего контекст не поймёт значение слова: Код: plaintext
Реализовавали БД для патентного ведомства. 60 млн патентов. Все эти глупости со стемингами уже прошли. При проведении экспертизы (полнотекстовый поиск на похожие изобретения) всё стаёт ясно со стемингами. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.06.2010, 19:21
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
web_foxiz, по-моему стеминг вообще НЕ имеет смыла, что и показано инсталляцией PG - по-умолчанию в нём идёт только список стоп-слов. Никто кроме человека понимающего контекст не поймёт значение слова: Код: plaintext
Реализовавали БД для патентного ведомства. 60 млн патентов. Все эти глупости со стемингами уже прошли. При проведении экспертизы (полнотекстовый поиск на похожие изобретения) всё стаёт ясно со стемингами. в случае белка - и то, и другое должно находиться, точно знает, что нужно - только юзер ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.06.2010, 16:54
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
web_fox, С замкОм и зАмком та же фигня :) Хорошо, когда можно самому окончания подрезать. А у меня еще и украинский язык имеетися, а там не совасем такие же правила :( ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2010, 00:04
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
yack, в украинском вообще надо писать свой парсер, иначе апостроф будет делать два слова. Но это уже не по теме. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2010, 00:40
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
web_fox, почему не по теме? имхо интересно :) а в словари украинские типа ispell/myspell входят слова с апострофами, как они их воспринимают? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2010, 16:00
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
Ёш, ну словари то не для постгреса делаются, - они универсальные. А чтобы оно работало ожидаемо в PG, видимо парсер нужен соответствующий. Русский парсер не подходит: Код: plaintext 1. 2.
Оно, конечно, to_tsquery сделает то же самое при поиске, и результаты могут быть как правильными, так и неожиданными. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.02.2018, 19:38
|
|||
---|---|---|---|
Проблема с fts |
|||
#18+
web_fox,это не парсер, а цепочка из парсера и словарей парсер (токенайзер) вот Код: sql 1. 2. 3. 4. 5.
хотя и его нарно можно перекрыть, но можно и на выходе взад слова собирать. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&mobile=1&tid=1995939]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 292ms |
total: | 440ms |
0 / 0 |