← Back
Editing: SVCBench.php
<?php namespace Rubix\ML\Benchmarks\Classifiers; use Rubix\ML\Classifiers\SVC; use Rubix\ML\Kernels\SVM\Polynomial; use Rubix\ML\Datasets\Generators\Blob; use Rubix\ML\Datasets\Generators\Agglomerate; /** * @Groups({"Classifiers"}) * @BeforeMethods({"setUp"}) */ class SVCBench { protected const TRAINING_SIZE = 10000; protected const TESTING_SIZE = 10000; /** * @var \Rubix\ML\Datasets\Labeled; */ protected $training; /** * @var \Rubix\ML\Datasets\Labeled; */ protected $testing; /** * @var SVC */ protected $estimator; public function setUp() : void { $generator = new Agglomerate([ 'Iris-setosa' => new Blob([5.0, 3.42, 1.46, 0.24], [0.35, 0.38, 0.17, 0.1]), 'Iris-virginica' => new Blob([6.59, 2.97, 5.55, 2.03], [0.63, 0.32, 0.55, 0.27]), ]); $this->training = $generator->generate(self::TRAINING_SIZE); $this->testing = $generator->generate(self::TESTING_SIZE); $this->estimator = new SVC(1.0, new Polynomial(5, 10)); } /** * @Subject * @Iterations(5) * @OutputTimeUnit("seconds", precision=3) */ public function trainPredict() : void { $this->estimator->train($this->training); $this->estimator->predict($this->testing); } }
Save File
Cancel