Контрольный пакет для скрытого распределения дирихле R

Я использую этот пакет LDA для R. В частности, я пытаюсь сделать контролирует скрытое распределение дирихле (slda). В связанном пакете есть функция slda.em. Однако меня смущает то, что он запрашивает параметры альфа, эта и дисперсии. Насколько я понимаю, я думал, что эти параметры неизвестны в модели. Поэтому, на мой вопрос, мог ли автор пакета сказать, что это исходные догадки для параметров? Если да, похоже, нет способа получить доступ к ним из результата запуска slda.em.

Помимо кодирования дополнительных шагов ЭМ в алгоритме, есть ли способ угадать разумные значения для этих параметров?

Ответ 1

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

В конкретном случае slda я запустил demo(slda), чтобы увидеть его реализацию. Когда вы запустите демоверсию, вы увидите, что он устанавливает alpha=1.0, eta=0.1 и variance=0.25. Я бы предложил использовать их в качестве отправной точки, а затем использовать кросс-проверку для определения лучших параметров, если вам нужно улучшить производительность модели.