Алгоритм определения тематики сайтов (решение)

SJ
На сайте с 16.03.2008
Offline
78
#31
kotofeich:
да, ознакомился недельку назад. Принял к сведению, но имхо там мысли от людей далеких от программирования. Они выдвигали теории, которые слабы в реализации.

Точно-точно. :D

Там пару человек которые "не очень далеки от программирования" (причем не только написания на коленке пхп-скриптиков простых) писали о уже готовых системах. 🍻

Любимый хостинг (http://beget.ru?id=2902) How can we grow old when the soundtrack of our lives is rock-n-roll?
A
На сайте с 07.11.2006
Offline
87
#32

Бурундук не зря писал, что сортировать надо не по TF, а хотя бы по TF*IDF для отбрасывания лишних слов :)

Б
На сайте с 30.06.2008
Offline
200
#33

alexalinks, а что берём в качестве коллекции при расчёте IDF? Яндекс-то текстовым корпусом пока не поделился. :)

Будь мудрее. Выгляди глупее.
kotofeich
На сайте с 25.03.2009
Offline
28
#34
alexalinks:
Бурундук не зря писал, что сортировать надо не по TF, а хотя бы по TF*IDF для отбрасывания лишних слов :)

для TF*IDF нужно большуую базу иметь, чего к сожалнию не имею.

Expert Theme (http://extheme.ru) - определение тематики любых сайтов, текстов и страниц
[Удален]
#35
Беобахтер:
Яндекс-то текстовым корпусом пока не поделился

есть готовый ресурс :)

удалил по многочисленным просьбам :)

Б
На сайте с 30.06.2008
Offline
200
#36

burunduk, сотри уж. Кому надо - те знают. ;)

Я что-то не видел, кстати, чтобы этот корпус можно было скачать. :) Для оффлайн, так сказать, анализа.

[Удален]
#37

Беобахтер, ну можно же просто изнасиловать роботами в извращенной форме :)

Б
На сайте с 30.06.2008
Offline
200
#38

burunduk, в промышленных масштабах - гиблое дело. Хилую тему ограбить - куда ни шло. Проще с серпа спарсить.

P.S. оперативно сработал. ;)

sun99
На сайте с 12.09.2006
Offline
108
#39
kotofeich:

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

Возможно Вам стоит использовать то, чем пользуются (пользовались) в Яндексе.


mystem

космополитизм каждой голове
Z1
На сайте с 09.12.2005
Offline
164
#40

Как вариант более-менее быстрого получения словаря с привязкой к тематике -

1. Парсинг ЯК (либо какого-то другого качественного каталога), создание базы вида УРЛ - тематика.

2. Заход робота на морду каждого из этих сайтов. Парсинг. В базу сохраняем все слова, кроме анкоров внешних ссылок. Словам из титлов, стронгов, мета-дескрипшнов придаём несколько больший вес. После прохождения этого шага имеем базу вида: Слово - Сайт - Число вхождений (Вес) - Тематика.

3. Анализ полученной базы. Делим все слова из базы на три категории:

3.1. Стоп-слова - они часто появляются во всех без исключения тематиках.

3.2. Средние слова - они часто встречаются в одной категории, но иногда попадаются и в других.

3.3. Хорошие слова - часто встречаются в какой-то конкретной рубрике, и практически не встречаются - в других.

4. Заходим на неизвестную страницу, опять же парсим её, анализируем найденные слова. В первую очередь обращаем внимание на хорошие слова из пункта 3.3. Думаю, этого будет достаточно в подавляющем большинстве случаев для правильного определения тематики.

В общем-то, реализуется такое за недельку без особого напряга одним челом.

Плюсы - не надо заморачиваться с морфологией и составлением базы вручную.

Алгоритм ТС будет скорей всего точнее этого, но он имеет большие шансы загнуться на стадии составления словаря с весами :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий