Package org.tribuo.hash
Class HashCodeHasher
java.lang.Object
org.tribuo.hash.Hasher
org.tribuo.hash.HashCodeHasher
- All Implemented Interfaces:
com.oracle.labs.mlrg.olcut.config.Configurable
,com.oracle.labs.mlrg.olcut.provenance.Provenancable<com.oracle.labs.mlrg.olcut.provenance.ConfiguredObjectProvenance>
,Serializable
,ProtoSerializable<org.tribuo.protos.core.HasherProto>
Hashes names using String.hashCode().
HashCodeHasher does not serialize the salt in its serialized forms, and thus the salt must be set after deserialization.
- See Also:
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Protobuf serialization version.Fields inherited from class org.tribuo.hash.Hasher
MIN_LENGTH
Fields inherited from interface org.tribuo.protos.ProtoSerializable
DESERIALIZATION_METHOD_NAME, PROVENANCE_SERIALIZER
-
Constructor Summary
ConstructorDescriptionHashCodeHasher
(String salt) Constructs a HashCodeHasher using the specified salt value. -
Method Summary
Modifier and TypeMethodDescriptionstatic HashCodeHasher
deserializeFromProto
(int version, String className, com.google.protobuf.Any message) Deserialization factory.boolean
com.oracle.labs.mlrg.olcut.provenance.ConfiguredObjectProvenance
Hashes the supplied input using the hashing function.int
hashCode()
void
Used by the OLCUT configuration system, and should not be called by external code.org.tribuo.protos.core.HasherProto
Serializes this object to a protobuf.void
The salt is transient, it must be set **to the same value as it was trained with** after theModel
is deserialized.toString()
Methods inherited from class org.tribuo.hash.Hasher
validateSalt
-
Field Details
-
CURRENT_VERSION
public static final int CURRENT_VERSIONProtobuf serialization version.- See Also:
-
-
Constructor Details
-
HashCodeHasher
Constructs a HashCodeHasher using the specified salt value.- Parameters:
salt
- The salt value.
-
-
Method Details
-
deserializeFromProto
public static HashCodeHasher deserializeFromProto(int version, String className, com.google.protobuf.Any message) Deserialization factory.Note the salt must be set after the hasher has been deserialized.
- Parameters:
version
- The serialized object version.className
- The class name.message
- The serialized data.- Returns:
- The deserialized object.
-
serialize
public org.tribuo.protos.core.HasherProto serialize()Description copied from interface:ProtoSerializable
Serializes this object to a protobuf.- Returns:
- The protobuf.
-
hash
Description copied from class:Hasher
Hashes the supplied input using the hashing function.If the salt is not set then this throws
IllegalStateException
. -
postConfig
public void postConfig() throws com.oracle.labs.mlrg.olcut.config.PropertyExceptionUsed by the OLCUT configuration system, and should not be called by external code.- Throws:
com.oracle.labs.mlrg.olcut.config.PropertyException
-
setSalt
Description copied from class:Hasher
The salt is transient, it must be set **to the same value as it was trained with** after theModel
is deserialized. -
getProvenance
public com.oracle.labs.mlrg.olcut.provenance.ConfiguredObjectProvenance getProvenance() -
toString
-
equals
-
hashCode
public int hashCode()
-