/** * Sets the evidence at time T. * @param data a {@code List} of {@link DynamicDataInstance} objects. */ public void setEvidenceTimeT(List<DynamicDataInstance> data) { if (data.size()>nRepetitions) throw new IllegalArgumentException("The size of the data is bigger than the number of repetitions"); this.cloneNodesTimeT.forEach( node -> node.setAssignment(data.get(0))); for (int i = 0; i < nRepetitions && i<data.size(); i++) { final int slice = i; this.plateuNodesTimeT.get(i).forEach(node -> { node.setAssignment(data.get(slice)); node.setActive(true); //No barrent nodes if (!node.isObserved() && node.getChildren().isEmpty()) node.setActive(false); }); } for (int i = data.size(); i < nRepetitions; i++) { this.plateuNodesTimeT.get(i).forEach(node -> { node.setAssignment(null); node.setActive(false); }); } }
node.getPDist().getConditioningVariables().stream().forEach(var -> this.getNodeOfVarTime0(var).getChildren().add(node));
Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive()) Message<NaturalParameters> selfMessage = this.vmp.newSelfMessage(node); Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive())
Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive()) Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive())
Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive()) Message<NaturalParameters> selfMessage = this.vmp.newSelfMessage(node); Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive())
nodeTopic.setChildren(Arrays.asList(nodeWord)); nodeDirichletMixingTopics.getChildren().add(nodeTopic);
nodeTopic.setChildren(Arrays.asList(nodeWord)); nodeDirichletMixingTopics.getChildren().add(nodeTopic);
Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive()) Message<NaturalParameters> selfMessage = this.vmp.newSelfMessage(node); Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive())
node.getPDist().getConditioningVariables().stream().forEach(var -> this.getNodeOfVarTimeT(var, slice).getChildren().add(node));
Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive()) Optional<Message<NaturalParameters>> message = node.getChildren() .stream() .filter(children -> children.isActive())