AI-MaxEntropy
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
t/04-model.t view on Meta::CPAN
use strict;
use warnings;
use Test::More tests => 5;
use Test::Number::Delta within => 1e-5;
my $__;
sub NAME { $__ = shift };
###
NAME 'Load AI::MaxEntropy';
BEGIN { use_ok 'AI::MaxEntropy' }
###
NAME 'Load AI::MaxEntropy::Model';
BEGIN { use_ok 'AI::MaxEntropy::Model' }
my $me = AI::MaxEntropy->new;
$me->see(['round', 'smooth', 'red'] => 'apple' => 2);
$me->see(['long', 'smooth', 'yellow'] => 'banana' => 3);
###
NAME 'Predict with model - LBFGS';
my $model = $me->learn;
is_deeply
[
$model->predict(['round']),
$model->predict(['red']),
$model->predict(['long']),
$model->predict(['yellow']),
$model->predict(['smooth']),
$model->predict(['round', 'smooth']),
$model->predict(['red', 'long']),
$model->predict(['red', 'yellow']),
],
[
'apple',
'apple',
'banana',
'banana',
'banana',
'apple',
'banana',
'banana'
],
$__;
###
NAME 'Predict with model - GIS';
$me->{algorithm}->{type} = 'gis';
$model = $me->learn;
is_deeply
[
$model->predict(['round']),
$model->predict(['red']),
$model->predict(['long']),
$model->predict(['yellow']),
$model->predict(['smooth']),
$model->predict(['round', 'smooth']),
$model->predict(['red', 'long']),
$model->predict(['red', 'yellow']),
],
[
'apple',
'apple',
'banana',
'banana',
'banana',
'apple',
'banana',
'banana'
],
$__;
###
NAME 'Model writing and loading';
$model->save('test_model');
my $model1 = AI::MaxEntropy::Model->new('test_model');
unlink 'test_model';
is_deeply $model, $model1,
$__;
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.482 second using v1.00-cache-2.02-grep-82fe00e-cpan-2c419f77a38b )