Тематическая кластеризация документов

T
На сайте с 15.04.2003
Offline
36
15407

Привет всем

Пытаюсь сделать что то умное по этому поводу но пока ничего не получается

Откуда взялась такая тема -- диплом в университете

О платформе которую выбрал --

Java + MySQL(Самая быстрая на мой взгляд из бесплатных) + JSP

Сейчас уже сделал --

Морфологию на базе ispell(классы обертки для этого словаря)

Разбивание текстов на предложения и абзацы

Помещение их в простой индекс

(wordid, articleid).

Упрощатель логических запросов(позволяет приводить булевые запросы любой глубины к каноническому виду и преобразовывать из в сиквел)

Сохраняет в базе статистику о встречаемости двух слов рядом и умеет быстро ее находить

Отсеивание стоп слов(базовый список -- mnogosearch + мои дополнения)

По ispell словарю сделал для русского и украинского определитель части речи

Пока что все довольно быстро

Теперь нужно построить автоматический построитель тематической иерархии

Пробовал выделять кластеры из связаных с друг другом слов

Но результаты очень плохие

Думал построить связи между документами но не придумал пока достаточно быстрых алгоритмов

Подскажите какие нибудь идеи пожалуйста

Ashmanov
На сайте с 21.11.2000
Offline
66
#1

Есть три уровня тематической классификации:

а) составленный вручную иерархический (или, наоборот, плоский) рубрикатор тем + вручную занесённые в рубрики семантические образы (наборы терминов с весами). Работает очень хорошо, если лингвисты хорошие. Но много ручной работы.

По такому принципу, в частности, работает наш Спамтест(www.spamtest.ru).

Отдельные вопросы - позволяется ли терминам входить в несколько рубрик, есть ли разные типы терминов, как назначать веса и суммировать их при распознавании и так далее.

б) ручной рубрикатор, но автоматически составляемые семантические образы.

Образы составляются программой по обучающим выборкам документов, засунутым в рубрики вручную. Вся ручная работа сводится к разбрасыванию документов по рубрикам мышкой.

Здесь нужно уметь автоматически вычислять различительную силу терминов для рубрики(условно говоря, частотность термина в рубрике поделить на частотность его во всём множестве документов).

Это делают и Спамтест, и Классификатор от МедиаЛингвы (www.medialingua.ru).

в) казалось бы высший пилотаж - не только "автоматические" семантические образы, но и автоматическое построение самого рубрикатора. Даёте мешок с текстами, а машина сама его упорядочивает и дальше классифицирует и входной поток автоматически. Это звучит оглушительно красиво, но в целом ни у кого не работает.

Вы почему-то хотите взяться за эту самую сложную, и в общем, безнадёжную задачу, особенно в объёме диплома. Я вам с этим связываться категорически не советую. Мало того, что вообще таксономии, тезурусы и рубрикаторы - сами по себе самое интеллектуально сложное занятие, известное человечеству, но ещё и программно их строить - это просто дохлый номер.

Всякие слова про кластеризацию - туфта. То есть вообще идея, что вот взять "правильную" математику, а она потом сама всё сделает - это туфта.

Это тоже, кстати, как-то делает Классификатор от МедиаЛингвы. Потом можно доделать руками. Но труда вбито в эту "фичу" - просто ужас какой-то.

С уважением, Игорь Ашманов Все для оптимизации (рассылка, сервисы): www.optimization.ru (www.optimization.ru) Сервис по созданию собственных поисковиков: www.flexum.ru (www.flexum.ru)
V
На сайте с 20.06.2001
Offline
24
vs
#2
Как писал trink
Теперь нужно построить автоматический построитель тематической иерархии
Пробовал выделять кластеры из связаных с друг другом слов
Но результаты очень плохие
Думал построить связи между документами но не придумал пока достаточно быстрых алгоритмов
Подскажите какие нибудь идеи пожалуйста

Почитайте

http://www.almaden.ibm.com/cs/k53/clever.html

и

http://www.almaden.ibm.com/cs/people/dmodha/toric.pdf

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

С уважением, Влад Шабанов vs@rambler-co.ru
T
На сайте с 15.04.2003
Offline
36
#3

Прочитал статьи которые вы посоветовали

Там описан классический алгоритм центров тяжести который применяется для кластеризации в прикладной статистике с поправкой на гиперсвязи

Его основной недостаток на мой взгляд в том что он слабоприменительный к большим обьемам данных

В нем есть следующие критичные операции:

подсчет центров кластера(нужно просумировать и нормировать словарные образы всех документов кластера)

непонятно когда он закончится Нету никаких результатов говорящих что критерий p(t + 1) = p(t) должен обязательно быть достигнут и за приемлемое количество шагов

Это делает метод слабоприменимым на больших обьемах данных а на маленьких учет гиперсвязей мало помогает потому что два документа из маленькой выборки качественно связаны с очень малой вероятностью

К тому же в нем нет рекомендаций о начальном выборе количества кластеров что тоже очень важно Хотя возможно в результате итеративного выполнения алгоритма лишние кластера сольются или опустеют

Все это понятно лишь мое мнение

В этом отношении некоторые считают перспективным использовать латентный поиск и кластеризацию когда матрица образов документов апраксимируется так называемой инфинитизимальной матрицей за счет чего ее размерность существенно уменьшается но я еще не успел сделать какие то опыты по этому поводу

Я планирую занятся обоими подходами в каком то будущем(счас не могу спланировать еще когда)

По поводу предоставления доступа к вашим ресурсам как это можно было бы осуществить????

Я нахожусь в Киеве

VT
На сайте с 27.01.2001
Offline
130
#4
Пытаюсь сделать что то умное по этому поводу но пока ничего не получается
Откуда взялась такая тема -- диплом в университете
Я нахожусь в Киеве

А что за университет и факультет, если не секрет? Случайно не Факультет Информатики и Вычислительной Техники (ФИВТ) КПИ? :)

V
На сайте с 20.06.2001
Offline
24
vs
#5

Доступ - обратитесь в техподдержку, напишите зачем нужен и как собираетесь использовать. Мы предоставляем желающим заниматься IR доступ к XML ответной странице результатов поиска.

T
На сайте с 15.04.2003
Offline
36
#6
Как писал Vyacheslav Tikhonov


А что за университет и факультет, если не секрет? Случайно не Факультет Информатики и Вычислительной Техники (ФИВТ) КПИ? :)

Привет

Сорри за поздний ответ

Я из Шевченка факультет кибернетики

S
На сайте с 03.12.2003
Offline
5
#7

Я тоже кое-чем похожим занимаюсь. И кстати, платформа тоже Java+SQL, только не MySQL, а InstantDB. Но использую я не ключевые слова, а анализ посещений.

Говорят - безнадежно? Ну, посмотрим.

У меня уже почти все написано и отлажено, осталось выловить кое-какие непринципиальные баги, и добавить кое-какие непринципиальные сервисы, например, автоматическое удаление из базы "сдохших" урлов.

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

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

Для демо-версии мощный сервер не обязателен, вполне хватит даже PII c диском в несколько гигабайт, но память должна быть не меньше 512 и чтобы вся - моя. (Можно, конечно и не PII, а что-нибудь на сановской платформе, это даже лучше.)

А автору топика персонально: пишите мне на severin@kiam.ru, может чем и помогу, хотя все секреты раскрывать не буду. Сейчас, к сожалению, времени не так много.

T
На сайте с 15.04.2003
Offline
36
#8

Привет

Ну если ты в Киеве то можешь связаться с вычислительным центром моего универа(КНУ им Шевченка) там достаточно часто выделяют выч технику(включая достаточно мощный кластер) ради научных проэктов

А что можно сделать в отношении кластеризации относительно посещаемости? Вообще у тебя что нибудь интересное получается?

S
На сайте с 03.12.2003
Offline
5
#9

Нет, я в Москве.

KIAM (из моего е-мэйловского адреса) - это Keldysh Institute of Applied Mathematics - Институт прикладной математики им. М.В.Келдыша.

Как это все работает - долго объяснять. Получается или нет - трудно сказать, система ведь самообучающаяся, по-настоящему ее можно проверить только на группе тестировщиков, когда она будет запущена.

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

T
На сайте с 15.04.2003
Offline
36
#10

А какая основная цель?

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