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.