@Override
  public DiscreteFactor getModelFromParameters(SufficientStatistics parameters) {
    Tensor featureWeights = getFeatureWeights(parameters);
    Tensor logProbs = featureValues.getWeights().elementwiseProduct(featureWeights)
        .sumOutDimensions(featureVariables.getVariableNumsArray());

    return exponentiateLogProbs(logProbs); 
  }
@ Override public DiscreteFactor getModelFromParameters ( SufficientStatistics parameters ) { Tensor featureWeights = getFeatureWeights ( parameters ) ; Tensor logProbs = featureValues . getWeights ( ) . elementwiseProduct ( featureWeights ) . sumOutDimensions ( featureVariables . getVariableNumsArray ( ) ) ; return exponentiateLogProbs ( logProbs ) ; }
///////////////////////////////////////////////////////////