Попробовав самостоятельно организовать облако тегов, я обратил
внимание на некоторые нюансы. О них и расскажу.
У современных облаков есть пара очевидных проблем. Самая заметная заключается
в том, что популярные теги, выводимые крупными размерами шрифта, дают худшие
результаты при поиске. Возможные способы решения:
* специализация
облака,
* ручная модерация,
* возможность искать по наборам тегов.
Формировать их можно, например, используя классический прием с зажатым Shift,
или организовав «пошаговый набор», как на swik.net.
Другая проблема — порядок вывода тегов в облаке. Сейчас широко распространена
сортировка в алфавитном порядке. Но такой подход годится лишь для тех случаев,
когда человек ищет в облаке конкретное известное ему слово. Например, для
массива на главной странице blogs.yandex.ru сортировка в
алфавитном порядке, по-моему, не подходит.
А если не в алфавитном порядке, как же еще? После недолгих размышлений на ум
приходит рисование облака, исходя из смысловых связей между тегами. То есть
похожие понятия, чаще всего используемые вместе, в облаке должны находиться
недалеко друг от друга.
При такой организации в облаке
* теги будут сгруппированы по предметным
областям,
* синонимы будут выводиться рядом.
Примеры:
* рисунки 7 и 9 на страницах 8 и 10 в «Utilizing Folksonomy:
Similarity Metadata from the Del.icio.us System»,
* рисунок 2 на странице
5 в «Improving
Tag-Clouds as Visual Information Retrieval Interfaces».
Математическая модель вычисления релевантности между тегами приводится в «Improving
Tag-Clouds as Visual Information Retrieval Interfaces».
Как отобразить облако в виде графа с дугами описано в Semidefinite Embedding
Applied to Visualizing Folksonomies.
Я пока что не искал готовое ПО для рисования «умных» облаков на сайтах, но,
думаю, оно существует. Был бы признателен, если бы кто-нибудь поделился ссылкой
на хороший freeware open source модуль.