Инструмент или методы для автоматического создания контекстных ссылок в большом объеме контента? - PullRequest
0 голосов
/ 12 января 2009

Вот основной сценарий - у меня есть корпус, скажем, 100 000 газетных статей. Как минимум, все они будут иметь четко определенный заголовок и некоторое количество основного содержимого.

Что я хочу сделать, так это найти фрагменты текста в статьях, которые должны ссылаться на другие статьи.

Итак, если в статье Foo есть текст типа «Учащиеся 8-го класса поощряются к чтению произведений Джона-Поля Сартра», а статья Бар озаглавлена ​​(и о) «Важные произведения Джона-Поля Сартра» Я хотел бы автоматически создать эту HTML-ссылку из Foo в Bar в тексте Foo.

Ответы [ 2 ]

2 голосов
/ 12 января 2009

Вы должны спросить себя, прежде чем добавлять ссылки. Какую выгоду для пользователей вы хотите достичь, делая это? Вы, вероятно, хотите увеличить навигацию вашего сайта. Может быть, лучше создать более простой способ добавления ссылок на старые статьи в форме, используемой для отправки новых. Возможно, можно добавить функцию «поиск по одному клику для выделенного текста». Может быть, вы можете добавить вики-подобную функциональность, которая позволяет пользователям предлагать ссылки для выбранного текста. Вы, вероятно, хотите добавить ссылки на соответствующие статьи (созданные с помощью системы тегов или интеллектуального анализа текста) под статьями.

Некоторые потенциальные проблемы с полностью автоматизированным сумматором ссылок: Возможно, вам придется реализовать алгоритм устранения неоднозначности смысла слова, чтобы избежать путаницы или даже раздражения пользователя путем размещения плохих автоматических ссылок с помощью регулярных выражений (или простого сопоставления подстрок).

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

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

Версия TLDR: найдите альтернативные решения, которые предоставляют желаемую функциональность пользователям.

1 голос
/ 12 января 2009

То, что вы ищете, это инструменты для анализа текста. Вы можете найти дополнительную информацию и ссылки на http://en.wikipedia.org/wiki/Text_mining.. Вы также можете проверить Lucene и его порты на http://lucene.apache.org.. Используя эти инструменты, основная идея заключается в том, чтобы найти набор похожих статей, основанных на статья (или название) в вопросе. Вы можете искать различные свойства статьи, включая заголовки и содержание или оба. Система тегов a la Delicious (или Stackoverflow) также может быть полезна. Вместо предварительного создания ссылок между статьями, вы должны представить соответствующие статьи в интерфейсе, аналогичном интерфейсу «Связанные вопросы» в правой части этой страницы.

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

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