| AI-Categorizer documentation | view source | Contained in the AI-Categorizer distribution. |
AI::Categorizer::Learner::SVM - Support Vector Machine Learner
use AI::Categorizer::Learner::SVM;
# Here $k is an AI::Categorizer::KnowledgeSet object
my $l = new AI::Categorizer::Learner::SVM(...parameters...);
$l->train(knowledge_set => $k);
$l->save_state('filename');
... time passes ...
$l = AI::Categorizer::Learner->restore_state('filename');
while (my $document = ... ) { # An AI::Categorizer::Document object
my $hypothesis = $l->categorize($document);
print "Best assigned category: ", $hypothesis->best_category, "\n";
}
This class implements a Support Vector Machine machine learner, using
Cory Spencer's Algorithm::SVM module. In lots of the recent
academic literature, SVMs perform very well for text categorization.
This class inherits from the AI::Categorizer::Learner class, so all
of its methods are available unless explicitly mentioned here.
Creates a new SVM Learner and returns it. In addition to the
parameters accepted by the AI::Categorizer::Learner class, the
SVM subclass accepts the following parameters:
Specifies what type of kernel should be used when building the SVM. Default is 'linear'. Possible values are 'linear', 'polynomial', 'radial' and 'sigmoid'.
Trains the categorizer. This prepares it for later use in
categorizing documents. The knowledge_set parameter must provide
an object of the class AI::Categorizer::KnowledgeSet (or a subclass
thereof), populated with lots of documents and categories. See
AI::Categorizer::KnowledgeSet for the details of how to create such
an object.
Returns an AI::Categorizer::Hypothesis object representing the
categorizer's "best guess" about which categories the given document
should be assigned to. See AI::Categorizer::Hypothesis for more
details on how to use this object.
Saves the categorizer for later use. This method is inherited from
AI::Categorizer::Storable.
Ken Williams, ken@mathforum.org
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.
AI::Categorizer(3), Algorithm::SVM(3)
| AI-Categorizer documentation | view source | Contained in the AI-Categorizer distribution. |