public class DiscreteReferringFeature extends DiscreteReferrer
Modifier and Type | Field and Description |
---|---|
protected ByteString |
identifier
The
identifier string distinguishes this Feature from other
Feature s. |
referent
BooleanValues, totalValues, valueIndex
containingPackage, generatingClassifier
Modifier | Constructor and Description |
---|---|
protected |
DiscreteReferringFeature()
For internal use only.
|
|
DiscreteReferringFeature(Classifier c,
ByteString i,
DiscreteFeature r)
Sets both the identifier and the referent.
|
|
DiscreteReferringFeature(Classifier c,
ByteString i,
DiscreteFeature r,
String[] av)
Sets both the identifier and the referent.
|
|
DiscreteReferringFeature(String p,
String c,
ByteString i,
DiscreteFeature r,
short vi,
short t)
Constructs a new referring feature.
|
Modifier and Type | Method and Description |
---|---|
boolean |
classEquivalent(Feature f)
Some features are functionally equivalent, differing only in the encoding of their values;
this method will return
true iff the class of this feature and f
are different, but they differ only because they encode their values differently. |
int |
compareNameStrings(Object o)
Compares only the run-time types, packages, classifier names, and identifiers of the
features.
|
Feature |
encode(String e)
Returns a feature object in which any strings that are being used to represent an identifier
or value have been encoded in byte strings.
|
boolean |
equals(Object o)
Two
DiscreteReferringFeature s are equivalent when their containing packages,
identifiers, and referent features are equivalent. |
ByteString |
getByteStringIdentifier()
Retrieves this feature's identifier as a byte string.
|
Feature |
getFeatureKey(Lexicon lexicon,
boolean training,
int label)
Return the feature that should be used to index this feature into a lexicon.
|
double |
getStrength()
Returns the strength of this feature if it were to be placed in a mathematical vector space.
|
String |
getStringIdentifier()
Retrieves this feature's identifier as a string.
|
boolean |
hasByteStringIdentifier()
Determines if this feature contains a byte string identifier field.
|
int |
hashCode()
The hash code of a
DiscreteReferringFeature is the sum of the hash codes of its
containing package, identifier, and the referent feature. |
void |
lexRead(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessInputStream in,
Lexicon lex,
String p,
String g,
String si,
ByteString bi)
Reads the representation of a feature with this object's run-time type as stored by a
lexicon, overwriting the data in this object.
|
String |
lexWrite(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessOutputStream out,
Lexicon lex,
String c,
String p,
String g,
String si,
ByteString bi)
Writes a binary representation of the feature intended for use by a lexicon, omitting
redundant information when possible.
|
RealFeature |
makeReal()
Returns a
RealPrimitiveFeature whose value field
is set to the strength of the current feature, and whose identifier field contains
all the information necessary to distinguish this feature from other features. |
void |
read(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessInputStream in)
Reads the representation of a feaeture with this object's run-time type from the given
stream, overwriting the data in this object.
|
Feature |
withStrength(double s)
Returns a new feature object that's identical to this feature except its strength is given by
s . |
void |
write(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessOutputStream out)
Writes a complete binary representation of the feature.
|
void |
writeNameString(StringBuffer buffer)
Writes a string representation of this
Feature 's package, generating classifier,
and identifier information to the specified buffer. |
childLexiconLookup, compareTo, depth, getByteStringValue, getReferent, getStringValue, isReferrer, removeFromChildLexicon, valueEquals, write, writeNoPackage
conjunction, conjunctWith, getValueIndex, isDiscrete, totalValues
clone, conjunctWith, fromArray, getFeatureKey, getGeneratingClassifier, getPackage, hasStringIdentifier, isConjunctive, isPrimitive, lexReadFeature, readFeature, setArrayLength, toString, toStringNoPackage
protected ByteString identifier
identifier
string distinguishes this Feature
from other
Feature
s.protected DiscreteReferringFeature()
public DiscreteReferringFeature(Classifier c, ByteString i, DiscreteFeature r)
c
- The classifier that produced this feature.i
- The new referring feature's identifier.r
- The discrete feature referred to by this new feature.public DiscreteReferringFeature(Classifier c, ByteString i, DiscreteFeature r, String[] av)
c
- The classifier that produced this feature.i
- The new referring feature's identifier.r
- The discrete feature referred to by this new feature.av
- The allowable values of the classifier that produced r
.public DiscreteReferringFeature(String p, String c, ByteString i, DiscreteFeature r, short vi, short t)
p
- The new discrete feature's package.c
- The name of the classifier that produced this feature.i
- The new discrete feature's identifier.r
- The discrete feature referred to by this new feature.vi
- The index corresponding to the value.t
- The total allowable values for this feature.public boolean hasByteStringIdentifier()
hasByteStringIdentifier
in class Feature
true
iff this feature contains a byte string identifier field.public String getStringIdentifier()
getStringIdentifier
in class Feature
public ByteString getByteStringIdentifier()
getByteStringIdentifier
in class Feature
public Feature getFeatureKey(Lexicon lexicon, boolean training, int label)
getFeatureKey
in class Feature
lexicon
- The lexicon into which this feature will be indexed.training
- Whether or not the learner is currently training.label
- The label of the example containing this feature, or -1 if we aren't doing per
class feature counting.public RealFeature makeReal()
RealPrimitiveFeature
whose value
field
is set to the strength of the current feature, and whose identifier
field contains
all the information necessary to distinguish this feature from other features.public double getStrength()
getStrength
in class DiscreteFeature
public Feature withStrength(double s)
s
.withStrength
in class Feature
s
- The strength of the new feature.null
if this feature cannot take the
specified strength.public Feature encode(String e)
public int hashCode()
DiscreteReferringFeature
is the sum of the hash codes of its
containing package, identifier, and the referent feature.hashCode
in class DiscreteReferrer
public boolean equals(Object o)
DiscreteReferringFeature
s are equivalent when their containing packages,
identifiers, and referent features are equivalent.public boolean classEquivalent(Feature f)
true
iff the class of this feature and f
are different, but they differ only because they encode their values differently. This method
does not compare the values themselves, however.classEquivalent
in class Feature
f
- Another feature.public int compareNameStrings(Object o)
compareNameStrings
in class Feature
o
- An object to compare with.public void writeNameString(StringBuffer buffer)
Feature
's package, generating classifier,
and identifier information to the specified buffer.writeNameString
in class Feature
buffer
- The buffer to write to.public void write(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessOutputStream out)
write
in class DiscreteReferrer
out
- The output stream.public void read(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessInputStream in)
read
in class DiscreteReferrer
in
- The input stream.public String lexWrite(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessOutputStream out, Lexicon lex, String c, String p, String g, String si, ByteString bi)
lexWrite
in class DiscreteReferrer
out
- The output stream.lex
- The lexicon out of which this feature is being written.c
- The fully qualified name of the assumed class. The runtime class of this feature
won't be written if it's equivalent to c
.p
- The assumed package string. This feature's package string won't be written if it's
equivalent to p
.g
- The assumed classifier name string. This feature's classifier name string won't be
written if it's equivalent to g
.si
- The assumed identifier as a string. If this feature has a string identifier, it
won't be written if it's equivalent to si
.bi
- The assumed identifier as a byte string. If this feature has a byte string
identifier, it won't be written if it's equivalent to bi
.public void lexRead(edu.illinois.cs.cogcomp.core.datastructures.vectors.ExceptionlessInputStream in, Lexicon lex, String p, String g, String si, ByteString bi)
This method is appropriate for reading features as written by
lexWrite(ExceptionlessOutputStream,Lexicon,String,String,String,String,ByteString)
.
lexRead
in class DiscreteReferrer
in
- The input stream.lex
- The lexicon we are reading in to.p
- The assumed package string. If no package name is given in the input stream, the
instantiated feature is given this package.g
- The assumed classifier name string. If no classifier name is given in the input
stream, the instantiated feature is given this classifier name.si
- The assumed identifier as a string. If the feature being read has a string
identifier field and no identifier is given in the input stream, the feature is given
this identifier.bi
- The assumed identifier as a byte string. If the feature being read has a byte
string identifier field and no identifier is given in the input stream, the feature is
given this identifier.Copyright © 2016. All rights reserved.