Как создать "похожие темы"

Духовность™

Продвинутый новичок
На различных форумах или досках объявлений под основной темой есть ссылки "Похожие темы", которые содержат наиболее похожие по содержанию темы.

Пока есть одна идея, но чувствую, я собираюсь писать свою ПС) Поэтому, как бы прошу сначала помочь советом - как это обычно реализуется? Поделитесь опытом.
 

zerkms

TDD infected
Команда форума
Кстати, а кто-нить может поделиться скриптом для rrdtools, который собирает данные как на графике по ссылке?
 

AmdY

Пью пиво
Команда форума
Духовность™
сделай на основании тегов (ключевых слов) Выбрал пост, затем посты с такими же тегами. Если как таковых тегов нет, добавь и генерируй их onSave из того же тайтла или парся сообщение
 

Духовность™

Продвинутый новичок
Пиши уж лучше свою
Я думаю так сделать:

1. При добавлении контента вырезаются все предлоги, союзы и т.п., цифры
2. Оставшееся разбивается и кладется в базу слов, каждому слову присваивается UID
3. Заполняем таблицу связей ID-статьи__UID-слова

При показе контента выбираем все ID's слов, которые "наиболее часто" встречаются в таблице связей. Как-то так..
 

Духовность™

Продвинутый новичок
AmdY
Теги - это когда люди сами их вводят. Хорошо для форумов продвинутых пользователей, но хз как это будет работать на массовых сервисах.
 

AmdY

Пью пиво
Команда форума
Духовность™
поэтому я там же в скобках написал - ключевые слова. это не обязательно ручной ввод, можно так же как ты описал, делать самому.

только вот весь пост разбивать на теги - слишком жирно. создавай их только из тайтла + ручной ввод в админке. а при добавлении записи выбираешь все имеющиеся теги и ищи их в посте и тайтле. На самом деле, даже при сотне тегов у тебя будут уже вполне адекватные совпадения. не надо стремиться заводить очень много кейвордов.

p.s. Не забывай о морфологии
 

fixxxer

К.О.
Партнер клуба
Я думаю так сделать:

1. При добавлении контента вырезаются все предлоги, союзы и т.п., цифры
2. Оставшееся разбивается и кладется в базу слов, каждому слову присваивается UID
3. Заполняем таблицу связей ID-статьи__UID-слова

При показе контента выбираем все ID's слов, которые "наиболее часто" встречаются в таблице связей. Как-то так..
Еще 1.5 - стеммер - и отлично получится.
 

Духовность™

Продвинутый новичок

AmdY

Пью пиво
Команда форума
собственно. мы про одно и тоже. нужно приводить слова к единой нормальной форме.
морфология, морфологией, морфологии .... == морфология
точно так же весьма сомнительна польза накопления кейвордов глаголов.

на форуме где-то есть обсуждения класса для данных целей
 

HraKK

Мудак
Команда форума
Духовность™, спасибо, придумал вроде классную идею из-за этой темы. Расскажу позже как реализую(то есть никогда, гг).
 

A1x

Новичок
fixxxer
на будущее. Если уже планируется писать свою ПС то почему нет?
 

MiksIr

miksir@home:~$
А не жирно для такой х&#ни?
С чего бы жирно? Только, конечно, никакие buildKeywords - сразу сфинксом и искать. Обычный релевантный поиск по названию и первому посту.
Все правильнее, чем делать поисковую систему а-ля phpbb.
 

HraKK

Мудак
Команда форума
Обычный релевантный поиск по названию и первому посту.
нам не надо ТАКИЕ ЖЕ темы. А темы по теме(каламбур), так что релевантный поиск тут не подойдет. А чем Sphinx::keywords лучше чем стреммер? Можете вкратце рассказать что за инфу он возвращает? Судя по
PHP:
morphology = stem_ru
Ничем.
 

A1x

Новичок
А чем Sphinx::keywords лучше чем стреммер?
ничем не отличается (разве что реализацией) - Sphinx::keywords использует стеммер сфинкса,
нам не надо ТАКИЕ ЖЕ темы. А темы по теме(каламбур), так что релевантный поиск тут не подойдет.
просто исключить из результата саму тему по которой проводится поиск
 

Активист

Активист
Команда форума
Сфинкс никогда не жирно. У меня ЛЮБОЙ поиск по сайту, будь это небольшой инет магазин или большой проект использует сфинкс, это не только улучшает качество поиска, но и способствует снижению нагрузки.
 
Сверху