@Override public double getPosteriorSampleSize() { double sum = 0; for (Variable variable : this.nonReplicatedVariablesList) { sum+=this.ef_learningmodel.getDistribution(variable).getNaturalParameters().sum(); } return sum; } }
nodeDirichletMixingTopics = new Node(ef_learningmodel.getDistribution(dirichletMixingTopics)); tmpNodes.add(nodeDirichletMixingTopics); tmpNodes = new ArrayList<>(); nodeDirichletMixingTopics = new Node(ef_learningmodel.getDistribution(dirichletMixingTopics)); tmpNodes.add(nodeDirichletMixingTopics); nodeTopic = new Node(ef_learningmodel.getDistribution(topicIndicator)); nodeWord = new Node(ef_learningmodel.getDistribution(word)); nodeWord.setAssignment(data.get(i));
nodeDirichletMixingTopics = new Node(ef_learningmodel.getDistribution(dirichletMixingTopics)); tmpNodes.add(nodeDirichletMixingTopics); tmpNodes = new ArrayList<>(); nodeDirichletMixingTopics = new Node(ef_learningmodel.getDistribution(dirichletMixingTopics)); tmpNodes.add(nodeDirichletMixingTopics); nodeTopic = new Node(ef_learningmodel.getDistribution(topicIndicator)); nodeWord = new Node(ef_learningmodel.getDistribution(word)); nodeWord.setAssignment(data.get(i));
dirichletMixingTopics = ef_learningmodel.getDistribution(topicIndicator).getConditioningVariables().get(0); this.replicatedVariables.put(dirichletMixingTopics, true); ef_learningmodel.getDistribution(dirichletMixingTopics).getNaturalParameters().set(i, MIXING_PRIOR); NaturalParameters vec = this.ef_learningmodel.getDistribution(variable).getNaturalParameters();
dirichletMixingTopics = ef_learningmodel.getDistribution(topicIndicator).getConditioningVariables().get(0); this.replicatedVariables.put(dirichletMixingTopics, true); ef_learningmodel.getDistribution(dirichletMixingTopics).getNaturalParameters().set(i,0.1); NaturalParameters vec = this.ef_learningmodel.getDistribution(variable).getNaturalParameters();