Какую функцию потерь в перекрестной проверке я должен использовать с пакетом R BNlearn для моих данных? - PullRequest
1 голос
/ 21 января 2020

Впервые в StackOverflow и R.

У меня есть вопрос относительно различных функций потерь для перекрестной проверки, которые предусмотрены в пакете R BNlearn и какую мне следует использовать. У меня есть непрерывные данные (пример ниже) с 32 строками и 8 столбцами, каждый столбец, представляющий вид, и каждый ряд, представляющий количество особей этого вида в этом году.

201  1.78e+08  18500000   1.87e+08   6.28e+07   1.08e+09     1.03e+08   7.22e+07   43100000
202  8.06e+07   9040000   5.04e+07   4.49e+07   6.66e+08     8.07e+07   2.58e+07   24100000
203  1.54e+08   4380000   1.51e+08   2.88e+07   9.94e+08     1.44e+08   7.32e+07   39000000
204  1.36e+08   6820000   3.80e+08   8.39e+06   7.38e+08     1.50e+08   4.25e+07   32600000
205  9.94e+07   9530000   8.99e+07   1.05e+07   6.62e+08     1.67e+08   1.90e+07   29200000
206  1.33e+08   6340000   4.27e+07   3.26e+06   5.31e+08     2.93e+08   2.70e+07   41500000
207  1.22e+08   5710000   4.41e+07   3.16e+06   4.58e+08     4.92e+08   4.02e+07   21600000
208  1.33e+08  13500000   1.20e+08   3.56e+06   4.40e+08     2.50e+08   3.93e+07   30000000
209  1.73e+08  21700000   4.35e+07   7.58e+06   5.62e+08     3.31e+08   4.98e+07   42100000
210  1.86e+08   6950000   3.40e+07   1.18e+07   4.41e+08     3.80e+08   4.83e+07   28100000

До сих пор я использовал Табу Поиск, чтобы создать фиксированную структуру сети и проанализировать ее с помощью команды перекрестной проверки

bn.cv(data = data, bn = bn.tabu, method = "k-fold", k = 10, runs = 100)

, которая дает результат

k-fold cross-validation for Bayesian networks

  number of folds:                       10 
  loss function:                         Log-Likelihood Loss (Gauss.) 
  number of runs:                        100 
  average loss over the runs:            151.8083 
  standard deviation of the loss:        0.2384763

Вопрос в том, какая потеря функцию, которую я должен использовать для своих данных, чтобы я мог изменить набор данных, который я использую, и получить сопоставимые результаты, и что означает «средняя потеря за прогоны»? Конечная игра - сделать совместные распределения вероятностей и сделать прогноз на год + 1, так что в основном это строка 33 с числами и их вероятностными распределениями.

Извините за любые несоответствия, так как я все еще изучаю статистику.

1 Ответ

0 голосов
/ 21 января 2020

Я не знаю, правильно ли я понимаю ваш вопрос или нет. второй вопрос "что означает" средняя потеря за пробеги "? потому что ваш код запускается 10 раз (k = 10), это означает среднее значение функции потерь из 10 раз. и о первом вопросе лучше взглянуть на эту страницу. https://stats.stackexchange.com/questions/339897/what-is-the-difference-between-loss-function-and-mle извините за плохой язык, мой английский sh язык не так хорош, как вы видите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...