2014-07-01 10 views
0

Я новичок машинного обучения в R. Это установлено мои данные:принятия решений в R

channels <- sample(c("AFFILIATE","DIRECT","DISPLAY"),100,T) 
booking <- sample(c("N","Y"),100,T) 
placements <- sample(c("R","L","TR","TL"),100,T) 
site <- sample(c("www.google.com","www.yahoo.com"),100,T) 
campaigns <- sample(c("camp1","camp2","camp3"),100,T) 
data <- data.frame(channels,campaigns,site,placements,booking) 

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

tree <- rpart(booking~channels+campaigns+site+placements,data=data,method="class") 

Он генерирует один выход, но не в правильном порядке (я хочу дерево, где порядок должен быть каналы → кампания → Сайт → размещение → Бронирование). Кроме того, он дает только два листовых узла для каждого родительского узла, но я хочу сгенерировать дерево, где для каждого родительского узла будет более двух листовых узлов. Существуют ли какие-либо передовые методы, которые могут выполнять требования? Спасибо заранее!

ответ

0

Стандартные деревья решений не ограничивают порядок функций, кроме того, насколько хорошо они различают. Поэтому я предполагаю, что вы не найдете каких-либо готовых реализаций для обеспечения порядка, как вы описываете (возможно, у кого-то есть другие предложения?). Если вам нужен строгий порядок, вы можете сами его закодировать. Посмотрите в литературе, как вычислить критерий gini/gain для расщепления.

Также большинство реализаций, которые я знаю о реализации двоичных разрывов, что означает, что у каждого родителя есть двое детей. То, что вы хотите, называется «многодорожечным».

Я надеюсь, что это поможет.

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