Package cc.mallet.types

Examples of cc.mallet.types.FeatureVector


  public int value (String field) {
    return value(fieldAlph.lookupIndex(field));
  }
 
  public int value (int field) {
    FeatureVector fv = values(field);
    return (fv == null) ? -1 : fv.indexAtLocation(0);
  }
View Full Code Here


  public String toString (boolean oneLine) {
    StringBuffer b = new StringBuffer();
    int[] keys = field2values.keys();
    for (int i = 0; i < keys.length; i++) {
      b.append(fieldAlph.lookupObject(keys[i]) + "=");
      FeatureVector v = (FeatureVector) field2values.get(keys[i]);
      for (int j = 0; j < v.numLocations(); j++)
        b.append(valueAlph.lookupObject(v.indexAtLocation(j)) + ",");
      if (!oneLine) b.append("\n");
    }
    return b.toString();
  }
View Full Code Here

                       new String[]{"foo", "bar"},
                       30).subList(0, 20);
    Clustering singletons = ClusterUtils.createSingletonClustering(instances);
    // Merge instances that both have feature0
    for (int i = 0; i < instances.size(); i++) {
      FeatureVector fvi = (FeatureVector)instances.get(i).getData();
      for (int j = i + 1; j < instances.size(); j++) {
        FeatureVector fvj = (FeatureVector)instances.get(j).getData();
        if (fvi.contains("feature0") && fvj.contains("feature0")) {
          singletons = ClusterUtils.mergeClusters(singletons,
                                                  singletons.getLabel(i),
                                                  singletons.getLabel(j));
        } else if (!(fvi.contains("feature0") || fvj.contains("feature0"))
                   && random.nextUniform() < noise) {
          // Random noise.
          singletons = ClusterUtils.mergeClusters(singletons,
                                                  singletons.getLabel(i),
                                                  singletons.getLabel(j));         
View Full Code Here

      assert (input.size() == trueOutput.size());
      Sequence predOutput = transducerTrainer.getTransducer().transduce (input);
      assert (predOutput.size() == trueOutput.size());
     
      for (int j = 0; j < trueOutput.size(); j++) {
        FeatureVector fv = (FeatureVector) input.get(j);
        //viterbiOutputStream.println (tokens.charAt(j)+" "+trueOutput.get(j).toString()+
        //'/'+predOutput.get(j).toString()+"  "+ fv.toString(true));
        if (sourceTokenSequence != null)
          viterbiOutputStream.print (sourceTokenSequence.get(j).getText()+": ");
        viterbiOutputStream.println (trueOutput.get(j).toString()+
            '/'+predOutput.get(j).toString()+"  "+ fv.toString(true));
      }
    }
  }
View Full Code Here

      boolean match = true;
      for (int i = 0; i < mergedIndices.length; i++) {
        for (int j = i + 1; j < mergedIndices.length; j++) {
          if ((original.getLabel(mergedIndices[i]) !=
               original.getLabel(mergedIndices[j])) || mergeFirst) {
            FeatureVector fvi = (FeatureVector)list.get(mergedIndices[i]).getData();
            FeatureVector fvj = (FeatureVector)list.get(mergedIndices[j]).getData();
            if (!(fvi.contains("feature0") && fvj.contains("feature0"))) {
              match = false;
              break;             
            }
          }
        }
      }

      PropertyList pl = null;
      if (match)
        pl = PropertyList.add("Match", 1.0, pl);
      else
        pl = PropertyList.add("NoMatch", 1.0, pl);
     
      FeatureVector fv = new FeatureVector ((Alphabet)getDataAlphabet(),
                                            pl, true);
      carrier.setData(fv);

      boolean positive = true;
      for (int i = 0; i < mergedIndices.length; i++) {
View Full Code Here

    if ( dataLength > dataAlphabet.size() )
      for (int k=dataAlphabet.size() ; k<dataLength ; k++ )
        dataAlphabet.lookupIndex( new Integer(k) , true ); // 'add'

    FeatureVector fv = new FeatureVector( dataAlphabet,
        (double[])carrier.getData() );


    // Check if we've set the target alphabet member
    if (targetAlphabet == null) {
View Full Code Here

    dict.lookupIndex ("ZERO");
    dict.lookupIndex ("ONE");
    dict.lookupIndex ("TWO");
    dict.lookupIndex ("THREE");

    FeatureVector fv = new FeatureVector (dict, new int[] { 1,3 });

    AugmentableFeatureVector afv = new AugmentableFeatureVector (new Alphabet (), true);
    afv.add (fv, "O:");

    assertEquals (4, dict.size());
View Full Code Here

    //System.out.println("Init weights to 1.  Theta= "+theta);
    // loop through all instances
    for (int ii = 0; ii < trainingList.size(); ii++){
      Instance inst = (Instance) trainingList.get(ii);
      Labeling labeling = inst.getLabeling ();
      FeatureVector fv = (FeatureVector) inst.getData ();
      double[] results = new double [numLabels];
      int fvisize = fv.numLocations();
      int correctIndex = labeling.getBestIndex();
     
      for(int rpos=0; rpos < numLabels; rpos++)
        results[rpos]=0;
      // sum up xi*wi for each class
      for(int fvi=0; fvi < fvisize; fvi++){
        int fi = fv.indexAtLocation(fvi);
        //System.out.println("feature index "+fi);
        for(int lpos=0; lpos < numLabels; lpos++)
          results[lpos] += this.weights[lpos][fi];
      }
      //System.out.println("In instance " + ii);
View Full Code Here

      // skip if labeled
      if (instance.getTarget() != null) {
        continue;
      }
     
      FeatureVector fv = (FeatureVector) instance.getData();
      classifier.getClassificationScoresWithTemperature(instance, temperature, scores[ii]);
      for (MaxEntGEConstraint constraint : constraints) {
        constraint.computeExpectations(fv,scores[ii],instanceWeight);
      }
    }
   
    // compute value
    double value = 0;
    for (MaxEntGEConstraint constraint : constraints) {
      value += constraint.getValue();
    }
    value *= objWeight;

    // pass 2: determine per example gradient
    for (int ii = 0; ii < trainingList.size(); ii++) {
      Instance instance = trainingList.get(ii);
     
      // skip if labeled
      if (instance.getTarget() != null) {
        continue;
      }
     
      Arrays.fill(constraintValue,0);
      double instanceExpectation = 0;
      double instanceWeight = trainingList.getInstanceWeight(instance);
      FeatureVector fv = (FeatureVector) instance.getData();

      for (MaxEntGEConstraint constraint : constraints) {
        constraint.preProcess(fv);
        for (int label = 0; label < numLabels; label++) {
          double val = constraint.getCompositeConstraintFeatureValue(fv, label);
View Full Code Here

  public BitSet preProcess(InstanceList data) {
    // count
    int ii = 0;
    int fi;
    FeatureVector fv;
    BitSet bitSet = new BitSet(data.size());
    for (Instance instance : data) {
      double weight = data.getInstanceWeight(instance);
      fv = (FeatureVector)instance.getData();
      for (int loc = 0; loc < fv.numLocations(); loc++) {
        fi = fv.indexAtLocation(loc);
        if (constraints.containsKey(fi)) {
          if (useValues) {
            constraints.get(fi).count += weight * fv.valueAtLocation(loc);
          }
          else {
            constraints.get(fi).count += weight;
          }
          bitSet.set(ii);
View Full Code Here

TOP

Related Classes of cc.mallet.types.FeatureVector

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.