code: public List<StringDoublePair> classifyValuedInstanceDistribution(List<StringDoublePair> features) {
      List<scala.Tuple2<String,Double>> nfs = new ArrayList<scala.Tuple2<String,Double>>();
      for (StringDoublePair el : features) {
        nfs.add(new scala.Tuple2<String,Double>(el.getString(), el.getDouble()));
      }
      List<scala.Tuple2<String,Double>> r = maxEnt.decodeValuedInstanceAsDistribution(nfs);
      List<StringDoublePair> res = new ArrayList<StringDoublePair>();
      for (scala.Tuple2<String,Double> el : r) {
        res.add(new StringDoublePair(el._1, el._2));
      }
      return res;
    }
docs: /*
  @param features - A list of string-double pairs representing the valued features for a classification instance
  @return string-double pair list - A list of pairs that include each label and a posterior probability mass