NAME Algorithm::ContextVector - Simple implementation based on Data::CosineSimilarity SYNOPSIS my $cv = Algorithm::ContextVector->new( top => 300 ); $cs->add_instance( label => 'label1', attributes => { feature1 => 3, feature2 => 1, feature3 => 10 } ); $cs->add_instance( label => [ 'label2', 'label3' ], attributes => { ... } ); $cs->add_instance( label => ..., attributes => ... ); ... $cv->train; my $results = $cv->predict( attributes => { ... } ); DESCRIPTION Simple implementation based on Data::CosineSimilarity $class->new( top => ... ) During the training, keeps the $top most heavy weighted features. Keeps the complete feature set if omitted. $class->new_from_file( $filename ) Returns the instance of Algorithm::ContextVector stored in $filename. $self->save_to_file( $filename ) Save the $self to $filename using Storable. $self->add_instance( label => [ ... ], attributes => { ... } ) $self->train Keeps the best features (top N) and norms the vectors. $self->predict( attributes => { ... } ) Returns a hashref with the labels as the keys and the cosines as the values. AUTHOR Antoine Imbert, "<antoine.imbert at gmail.com>" LICENSE AND COPYRIGHT This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.