Как использовать "модель Гауссовой смеси процесса Дирихле" в Scikit-learn? (компоненты N?)
мое понимание "бесконечной модели смеси с процессом Дирихле как предварительного распределения по числу кластеров" заключается в том, что число кластеров определяется данными, поскольку они сходятся к определенному количеству кластеров.
этой R Implementation
https://github.com/jacobian1980/ecostates принимает решение о количестве кластеров в эту сторону. Хотя ... --2--> использует образец Гиббса, я не уверен, что это влияет на это.
что меня смущает-это n_components
параметры. n_components: int, default 1 :
Number of mixture components.
если количество компонентов определяется данными, и процесс Дирихле, то что это за параметр?
в конечном счете, я пытаюсь сделать:
(1) назначение кластера для каждого образца;
(2) векторы вероятности для каждого кластера; и
(3) вероятность/log-вероятность для каждого образца.
это выглядит как (1) является predict
способ и (3) является score
метод. Однако выход (1) полностью зависит от n_components
hyperparameter.
мои извинения если это наивный вопрос, я очень новичок в байесовском программировании и заметил, что было Dirichlet Process
на Scikit-learn
что я хотел попробовать.
вот документы: http://scikit-learn.org/stable/modules/generated/sklearn.mixture.DPGMM.html#sklearn.mixture.DPGMM
вот пример использования: http://scikit-learn.org/stable/auto_examples/mixture/plot_gmm.html
вот мое наивное использование:
from sklearn.mixture import DPGMM
X = pd.read_table("Data/processed/data.tsv", sep="t", index_col=0)
Mod_dpgmm = DPGMM(n_components=3)
Mod_dpgmm.fit(X)
1 ответов
как упоминалось @maxymoo в комментариях,n_components
- параметр усечения.
в контексте процесса китайского ресторана, который связан с представлением Stick-breaking в DP-GMM sklearn, новая точка данных присоединяется к существующему кластеру k
С вероятностью |k| / n-1+alpha
и начинается новый кластер с вероятностью alpha / n-1 + alpha
. Этот параметр можно интерпретировать как параметр концентрации процесса Дирихле, и он будет влиять на конечный количество кластеров.
В отличие от реализации R, которая использует выборку Гиббса, реализация DP-GMM склеарна использует вариационный вывод. Это может быть связано с разницей в результатах.
нежный процесс Дирихле учебник можно найти здесь.