2013-10-07 6 views
0

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

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

Например,

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

Это мои четыре основные категории.

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

С этим я видел некоторые разумные результаты, но в зависимости от того, какие параметры я использую, результаты сильно меняются. Рассматривая параметры чипа, которые я генерирую на графике, в классификации есть много вариаций. У меня нет хороших данных по обучению, поэтому я сначала попробовал метод классификации.

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

+0

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

+0

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

+0

Проводка образца ваших данных будет действительно полезна. – Mike

ответ

0

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

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

Во-вторых, если вы используете k-средство (или любой алгоритм кластеризации), чтобы моделировать ваши данные неконтролируемым образом, рекомендуется нормализовать функции ваших данных. Предположим, у вас есть только две функции: одна, указывающая час последнего входа в комнату, а другая - общее количество входов в месяц. Значения первой функции будут находиться в диапазоне [0, 24], а вторая может колебаться от 0 до 1000 (скажем). Затем, когда вы вычисляете расстояние между точками данных, вторая функция может доминировать в вычислении расстояния только потому, что числовые значения больше. Для начала попробуйте вычесть среднее значение из каждой функции и затем делить на стандартное отклонение. Это, мы надеемся, сделает ваши кластеры объектов более стабильными, если не больше.

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