2010-01-05 6 views
3

Каковы приемлемые значения для минимальной достоверности и минимальных значений поддержки для Apriori algorithm? Как вы могли бы их подстроить? Являются ли они фиксированными значениями или они меняются во время работы алгоритма? Если вы использовали этот алгоритм раньше, какие значения вы использовали?Минимальная уверенность и минимальная поддержка Apriori

+0

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

ответ

7

Я бы предложил начать со значений 0.05 для поддержки и 0.80 для уверенности. Но я согласен с тем, что вы должны понимать, что именно они представляют, чтобы иметь возможность правильно определить их. Для правила A => B (где A, B непустых множеств)

Support (A ⇒ B): s = P(A, B) 
Confidence (A ⇒ B): c = P(B | A) 
Lift (A ⇒ B): L = c/P(B) 

Lift важно оценить интересности из правила (потому что вы, как правило, приходят с сотнями из них). Было предложено более двадцати интересных соображений. К ним относятся Ф-коэффициент, каппа, взаимная информация, J-мера и индекс Джини. Я лично заказываю свои правила в соответствии с J-мерой.

J.measure (A ⇒B): J = s/c * (c*log(L) + (1-c)*log((L-c)/L)) 
2

Перед запуском алгоритма вы должны установить значения minsup и minconf, и они не изменяются во время процесса добычи.

Выбор параметров minsup зависит от ваших данных.

Для некоторых данных я использую 80%. Для некоторых других данных я использую 0,05%. Все зависит от набора данных. Обычно я начинаю с большого значения, а затем я уменьшаю значения до тех пор, пока не найду значение, которое будет генерировать достаточное количество paterns.

Для уверенности, это немного легче, потому что это представляет собой уверенность, которую вы хотите в правилах. Обычно я использую что-то вроде 60%. Но это также зависит от данных.

Кроме того, если вы не хотите использовать параметры minsup, вы можете использовать алгоритм top-k mining. В этом случае вы, например, укажете k = 1000, и алгоритм будет обнаруживать 1000 правил, например, вместо использования minsup. Я разработал один такой алгоритм для разработки правил объединения. Он называется TopKRules, и вы загружаете source code. Бумага, описывающая его, скоро будет опубликована. Он использует только два параметра: k и minconf.

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