Package cc.mallet.types
Class FeatureSequence
- java.lang.Object
-
- cc.mallet.types.FeatureSequence
-
- All Implemented Interfaces:
AlphabetCarrying,Sequence,java.io.Serializable
- Direct Known Subclasses:
FeatureSequenceWithBigrams,LabelSequence
public class FeatureSequence extends java.lang.Object implements Sequence, java.io.Serializable, AlphabetCarrying
An implementation ofSequencethat ensures that every Object in the sequence has the same class. Feature sequences are mutable, and will expand as new objects are added.- Author:
- Andrew McCallum mccallum@cs.umass.edu
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description FeatureSequence(Alphabet dict)FeatureSequence(Alphabet dict, int capacity)FeatureSequence(Alphabet dict, int[] features)Creates a FeatureSequence given all of the objects in the sequence.FeatureSequence(Alphabet dict, int[] features, int len)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(int featureIndex)voidadd(java.lang.Object key)voidaddFeatureWeightsTo(double[] weights)voidaddFeatureWeightsTo(double[] weights, double scale)booleanalphabetsMatch(AlphabetCarrying object)java.lang.Objectget(int pos)AlphabetgetAlphabet()Alphabet[]getAlphabets()int[]getFeatures()intgetIndexAtPosition(int pos)intgetLength()java.lang.ObjectgetObjectAtPosition(int pos)protected voidgrowIfNecessary()voidprune(double[] counts, Alphabet newAlphabet, int cutoff)Remove features from the sequence that occur fewer thancutofftimes in the corpus, as indicated by the provided counts.voidprune(Alphabet newAlphabet)Remove features from the sequence that occur fewer thancutofftimes in the corpus, as indicated by the provided counts.intsize()int[]toFeatureIndexSequence()int[]toSortedFeatureIndexSequence()java.lang.StringtoString()
-
-
-
Constructor Detail
-
FeatureSequence
public FeatureSequence(Alphabet dict, int[] features)
Creates a FeatureSequence given all of the objects in the sequence.- Parameters:
dict- A dictionary that maps objects in the sequence to numeric indices.features- An array where features[i] gives the index in dict of the ith element of the sequence.
-
FeatureSequence
public FeatureSequence(Alphabet dict, int[] features, int len)
-
FeatureSequence
public FeatureSequence(Alphabet dict, int capacity)
-
FeatureSequence
public FeatureSequence(Alphabet dict)
-
-
Method Detail
-
getFeatures
public int[] getFeatures()
-
getAlphabet
public Alphabet getAlphabet()
- Specified by:
getAlphabetin interfaceAlphabetCarrying
-
getAlphabets
public Alphabet[] getAlphabets()
- Specified by:
getAlphabetsin interfaceAlphabetCarrying
-
alphabetsMatch
public boolean alphabetsMatch(AlphabetCarrying object)
-
getLength
public final int getLength()
-
getIndexAtPosition
public final int getIndexAtPosition(int pos)
-
getObjectAtPosition
public java.lang.Object getObjectAtPosition(int pos)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
growIfNecessary
protected void growIfNecessary()
-
add
public void add(int featureIndex)
-
add
public void add(java.lang.Object key)
-
addFeatureWeightsTo
public void addFeatureWeightsTo(double[] weights)
-
addFeatureWeightsTo
public void addFeatureWeightsTo(double[] weights, double scale)
-
toFeatureIndexSequence
public int[] toFeatureIndexSequence()
-
toSortedFeatureIndexSequence
public int[] toSortedFeatureIndexSequence()
-
prune
public void prune(Alphabet newAlphabet)
Remove features from the sequence that occur fewer thancutofftimes in the corpus, as indicated by the provided counts. Also swap in the new, reduced alphabet. This method alters the instance in place; it is not appropriate if the original instance will be needed.
-
prune
public void prune(double[] counts, Alphabet newAlphabet, int cutoff)Remove features from the sequence that occur fewer thancutofftimes in the corpus, as indicated by the provided counts. Also swap in the new, reduced alphabet. This method alters the instance in place; it is not appropriate if the original instance will be needed.
-
-