2016-07-13 16 views
2

Я пытаюсь использовать TraMineR, но я открыт для обратной связи/ссылок/ссылок для получения дополнительной информации о том, как представлять многоканальные или иерархические последовательности событий и алгоритмы, которые с ним справляются.как представлять многоканальные последовательности событий

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

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

- Bought dog 
- Breed: hound 
- Sex: female 

- Bought coffee 
- Store: Starbucks 
- Roast: dark 

- Bought dog 
- Breed: hound 
- Sex: female 

- Bought coffee 
- Store: Starbucks 
- Roast: light 

- Bought dog 
- Breed: Doberman pincher 
- Sex: male 

Чтобы выравнивать данные я могу сказать, что каждый уникальное сочетание магазина и обжарки является уникальным событием кофе покупки. Кроме того, каждое уникальное сочетание породы и пола - уникальное событие для покупки собак. Этот подход привел бы пример выше к 5 различным типам событий (а не к двум типам событий с полями). Это представление может обнаруживать такие закономерности, как следующее: если я выпиваю 2 темных жареных кофе из Starbucks, то я с большей вероятностью получаю мужскую добермановую штифт.

Однако это представление может пропустить более общие шаблоны, которые не зависят от значений полей в событиях. Например, может случиться так, что я просто покупаю собаку после двух кофе в целом.

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

Итак, вопросы: 1. Любые ссылки/ссылки на документы, которые касаются этого? 2. Является ли это общей проблемой? 3. Любые рекомендации о том, как представлять эти события? 4. Любые рекомендации по работе с ними в TraMineR 5. Любые рекомендации/ссылки/ссылки на алгоритмы, которые касаются такого рода вещей? 6. Любые идеи вообще?

Спасибо !!!

+0

Неужели кто-нибудь даже рассматривал этот вопрос раньше? Это совершенно уникально? Мне трудно поверить, но я ничего не получил. – jojo

ответ

2

Это действительно похоже на вопрос, заданный здесь (хотя они не знали, ссылаться на «многоканальный» и название было расплывчатым): Multiple events in traminer

Траминера имеет поддержку работы с многоканальными последовательностями с функциями, как: seqdistmc

Общий подход, я считаю, заключается в том, чтобы сделать именно то, что я обозначил как наше «сглаженное» решение. В этом случае вы объединяете значения для каждого канала в один тип события. например в моем примере dog.hound.female будет одним событием с одним каналом/полем, чтобы заменить первое событие в моем примере, которое имеет 3 отдельных поля/канала. Затем вы используете типичные функции для поиска расстояний, подпоследовательностей и т. Д. У вас есть варианты настройки затрат на замещение и нахождения расстояний, поэтому у него есть дополнительные возможности для этого многоканального подхода. Он также имеет дело с отсутствующими значениями, если у вас есть каналы различной длины или есть пробелы.

Это также похоже на то, что предложено в ответе на тему, указанную выше, с использованием встроенной функции R interaction.

 Смежные вопросы

  • Нет связанных вопросов^_^