NAME

AI::Categorizer::FeatureVector - Features vs. Values

SYNOPSIS

my $f1 = new AI::Categorizer::FeatureVector
  (features => {howdy => 2, doody => 3});
my $f2 = new AI::Categorizer::FeatureVector
  (features => {doody => 1, whopper => 2});
 
@names = $f1->names;
$x = $f1->length;
$x = $f1->sum;
$x = $f1->includes('howdy');
$x = $f1->value('howdy');
$x = $f1->dot($f2);

$f3 = $f1->clone;
$f3 = $f1->intersection($f2);
$f3 = $f1->add($f2);

$h = $f1->as_hash;
$h = $f1->as_boolean_hash;

$f1->normalize;

DESCRIPTION

This class implements a "feature vector", which is a flat data structure indicating the values associated with a set of features. At its base level, a FeatureVector usually represents the set of words in a document, with the value for each feature indicating the number of times each word appears in the document. However, the values are arbitrary so they can represent other quantities as well, and FeatureVectors may also be combined to represent the features of multiple documents.

METHODS

...

AUTHOR

Ken Williams, ken@mathforum.org

COPYRIGHT

Copyright 2000-2003 Ken Williams. All rights reserved.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

AI::Categorizer(3), Storable(3)