Пакет R bnlearn: запретить узлу иметь родителей
Используя пакет bnlearn, возможно ли настроить узел так, чтобы у него не было родителей? Я обнаружил, что это технически возможно с помощью функции черного списка. Пример, не позволяющий "А" иметь каких-либо родителей во включенных тестовых данных:
library(bnlearn)
blacklist = data.frame(from = c("B", "C", "D", "E", "F"), to = c("A"))
dat = gs(learning.test, blacklist = blacklist)
Тем не менее, я работаю с данными, которые имеют десятки тысяч узлов, которые не должны быть родителями друг друга, в результате чего получается черный список длиной в миллионы строк. По сути, я ищу что-то вроде:
черный список = data.frame(from = c("*", "A"))
То есть ни один узел не может быть родительским для A. Возможно ли это? Если нет, есть ли какой-нибудь байесовский учебный пакет, который кто-нибудь может порекомендовать с такой функциональностью?
0 ответов
Также используя черные списки, но более общие, вы можете:
node.names <- names(learning.test)
blacklist <- data.frame(from = node.names[-grep("A", node.names)],
to = c("A"))