Алгоритм/эвристика для группировки историй сообщений чата по «разговорам»/неявным сеансам по отметкам времени?

Проблема :У меня есть серия сообщений в чате --между двумя пользователями --с отметками времени. Я мог бы представить, скажем, сообщения чата за весь день сразу. Однако в течение всего дня было несколько дискретных разговоров/сеансов... и для пользователя было бы полезнее видеть их разделенными, а не все дни как один непрерывный поток.

Существует ли алгоритм или эвристика, которые могут «выводить» неявные начала/разрывы сеанса/разговора по отметкам времени? Помимо произвольного «если разрыв больше x минут, это отдельная сессия». И если это единственный случай, то как определяется этот интервал? В любом случае, я хотел бы избежать этого.

Например, есть... пятьдесят сообщений, отправленных между 2 :00 и 3 :00, затем перерыв, а затем двадцать сообщений, отправленных между 4 :00 и 5 :00. между ними будет вставлен разрыв... но как определить разрыв?

Я уверен, что литература на эту тему уже есть, но я просто не знаю, что искать.

Некоторое время я экспериментировал с такими вещами, как алгоритмы обнаружения краев и подходы на основе градиента -.

(см. комментарии для получения дополнительных разъяснений)

6
задан Justin L. 24 July 2012 в 21:17
поделиться