<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.svm.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'en',
  ),
  'this' => 
  array (
    0 => 'class.svm.php',
    1 => 'SVM',
    2 => 'The SVM class',
  ),
  'up' => 
  array (
    0 => 'book.svm.php',
    1 => 'SVM',
  ),
  'prev' => 
  array (
    0 => 'svm.examples.php',
    1 => 'Examples',
  ),
  'next' => 
  array (
    0 => 'svm.construct.php',
    1 => 'SVM::__construct',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'reference/svm/svm.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/class.svm.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="class.svm" class="reference">

 <h1 class="title">The SVM class</h1>
 

 <div class="partintro"><p class="verinfo">(PECL svm &gt;= 0.1.0)</p>


  <div class="section" id="svm.intro">
   <h2 class="title">Introduction</h2>
   <p class="simpara">

   </p>
  </div>


  <div class="section" id="svm.synopsis">
   <h2 class="title">Class synopsis</h2>


   <div class="classsynopsis">
    <span class="ooclass"><strong class="classname"></strong></span>


    <div class="classsynopsisinfo">
     <span class="ooclass">
      <span class="modifier">class</span> <strong class="classname">SVM</strong>
     </span>
     {</div>

    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Constants */</div>
    <div class="fieldsynopsis">
     <span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.c-svc"><var class="varname">C_SVC</var></a></var><span class="initializer"> = 0</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.nu-svc"><var class="varname">NU_SVC</var></a></var><span class="initializer"> = 1</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.one-class"><var class="varname">ONE_CLASS</var></a></var><span class="initializer"> = 2</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.epsilon-svr"><var class="varname">EPSILON_SVR</var></a></var><span class="initializer"> = 3</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.nu-svr"><var class="varname">NU_SVR</var></a></var><span class="initializer"> = 4</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.kernel-linear"><var class="varname">KERNEL_LINEAR</var></a></var><span class="initializer"> = 0</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.kernel-poly"><var class="varname">KERNEL_POLY</var></a></var><span class="initializer"> = 1</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.kernel-rbf"><var class="varname">KERNEL_RBF</var></a></var><span class="initializer"> = 2</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.kernel-sigmoid"><var class="varname">KERNEL_SIGMOID</var></a></var><span class="initializer"> = 3</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.kernel-precomputed"><var class="varname">KERNEL_PRECOMPUTED</var></a></var><span class="initializer"> = 4</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-type"><var class="varname">OPT_TYPE</var></a></var><span class="initializer"> = 101</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-kernel-type"><var class="varname">OPT_KERNEL_TYPE</var></a></var><span class="initializer"> = 102</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-degree"><var class="varname">OPT_DEGREE</var></a></var><span class="initializer"> = 103</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-shrinking"><var class="varname">OPT_SHRINKING</var></a></var><span class="initializer"> = 104</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-probability"><var class="varname">OPT_PROPABILITY</var></a></var><span class="initializer"> = 105</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-gamma"><var class="varname">OPT_GAMMA</var></a></var><span class="initializer"> = 201</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-nu"><var class="varname">OPT_NU</var></a></var><span class="initializer"> = 202</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-eps"><var class="varname">OPT_EPS</var></a></var><span class="initializer"> = 203</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-p"><var class="varname">OPT_P</var></a></var><span class="initializer"> = 204</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-coef-zero"><var class="varname">OPT_COEF_ZERO</var></a></var><span class="initializer"> = 205</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-c"><var class="varname">OPT_C</var></a></var><span class="initializer"> = 206</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.svm.php#svm.constants.opt-cache-size"><var class="varname">OPT_CACHE_SIZE</var></a></var><span class="initializer"> = 207</span>;</div>


    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Methods */</div>
    <div class="constructorsynopsis dc-description">
   <span class="modifier">public</span> <span class="methodname"><a href="svm.construct.php" class="methodname">__construct</a></span>()</div>

    <div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="svm.crossvalidate.php" class="methodname">svm::crossvalidate</a></span>(<span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$problem</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$number_of_folds</code></span>): <span class="type"><a href="language.types.float.php" class="type float">float</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="svm.getoptions.php" class="methodname">getOptions</a></span>(): <span class="type"><a href="language.types.array.php" class="type array">array</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="svm.setoptions.php" class="methodname">setOptions</a></span>(<span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$params</code></span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="svm.train.php" class="methodname">svm::train</a></span>(<span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$problem</code></span>, <span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$weights</code><span class="initializer"> = ?</span></span>): <span class="type"><a href="class.svmmodel.php" class="type SVMModel">SVMModel</a></span></div>

   }</div>


  </div>


  <div class="section" id="svm.constants">
   <h2 class="title">Predefined Constants</h2>
   <div class="section" id="svm.constants.types">
    <h2 class="title">SVM Constants</h2>
    <dl>

     
      <dt id="svm.constants.c-svc"><strong><code><a href="class.svm.php#svm.constants.c-svc">SVM::C_SVC</a></code></strong></dt>
      <dd>
       <span class="simpara">The basic C_SVC SVM type. The default, and a good starting point</span>
      </dd>
     

     
      <dt id="svm.constants.nu-svc"><strong><code><a href="class.svm.php#svm.constants.nu-svc">SVM::NU_SVC</a></code></strong></dt>
      <dd>
       <span class="simpara">The NU_SVC type uses a different, more flexible, error weighting</span>
      </dd>
     

     
      <dt id="svm.constants.one-class"><strong><code><a href="class.svm.php#svm.constants.one-class">SVM::ONE_CLASS</a></code></strong></dt>
      <dd>
       <span class="simpara">One class SVM type. Train just on a single class, using outliers as negative examples</span>
      </dd>
     

     
      <dt id="svm.constants.epsilon-svr"><strong><code><a href="class.svm.php#svm.constants.epsilon-svr">SVM::EPSILON_SVR</a></code></strong></dt>
      <dd>
       <span class="simpara">A SVM type for regression (predicting a value rather than just a class)</span>
      </dd>
     

     
      <dt id="svm.constants.nu-svr"><strong><code><a href="class.svm.php#svm.constants.nu-svr">SVM::NU_SVR</a></code></strong></dt>
      <dd>
       <span class="simpara">A NU style SVM regression type</span>
      </dd>
     

     
      <dt id="svm.constants.kernel-linear"><strong><code><a href="class.svm.php#svm.constants.kernel-linear">SVM::KERNEL_LINEAR</a></code></strong></dt>
      <dd>
       <span class="simpara">A very simple kernel, can work well on large document classification problems</span>
      </dd>
     

     
      <dt id="svm.constants.kernel-poly"><strong><code><a href="class.svm.php#svm.constants.kernel-poly">SVM::KERNEL_POLY</a></code></strong></dt>
      <dd>
       <span class="simpara">A polynomial kernel</span>
      </dd>
     

     
      <dt id="svm.constants.kernel-rbf"><strong><code><a href="class.svm.php#svm.constants.kernel-rbf">SVM::KERNEL_RBF</a></code></strong></dt>
      <dd>
       <span class="simpara">The common Gaussian RBD kernel. Handles non-linear problems well and is a good default for classification</span>
      </dd>
     

     
      <dt id="svm.constants.kernel-sigmoid"><strong><code><a href="class.svm.php#svm.constants.kernel-sigmoid">SVM::KERNEL_SIGMOID</a></code></strong></dt>
      <dd>
       <span class="simpara">A kernel based on the sigmoid function. Using this makes the SVM very similar to a two layer sigmoid based neural network</span>
      </dd>
     

     
      <dt id="svm.constants.kernel-precomputed"><strong><code><a href="class.svm.php#svm.constants.kernel-precomputed">SVM::KERNEL_PRECOMPUTED</a></code></strong></dt>
      <dd>
       <span class="simpara">A precomputed kernel - currently unsupported.</span>
      </dd>
     

     
      <dt id="svm.constants.opt-type"><strong><code><a href="class.svm.php#svm.constants.opt-type">SVM::OPT_TYPE</a></code></strong></dt>
      <dd>
       <span class="simpara">The options key for the SVM type</span>
      </dd>
     

     
      <dt id="svm.constants.opt-kernel-type"><strong><code><a href="class.svm.php#svm.constants.opt-kernel-type">SVM::OPT_KERNEL_TYPE</a></code></strong></dt>
      <dd>
       <span class="simpara">The options key for the kernel type</span>
      </dd>
     

     
      <dt id="svm.constants.opt-degree"><strong><code><a href="class.svm.php#svm.constants.opt-degree">SVM::OPT_DEGREE</a></code></strong></dt>
      <dd>
       <span class="simpara"/>
      </dd>
     

     
      <dt id="svm.constants.opt-shrinking"><strong><code><a href="class.svm.php#svm.constants.opt-shrinking">SVM::OPT_SHRINKING</a></code></strong></dt>
      <dd>
       <span class="simpara">Training parameter, boolean, for whether to use the shrinking heuristics</span>
      </dd>
     

     
      <dt id="svm.constants.opt-probability"><strong><code><a href="class.svm.php#svm.constants.opt-probability">SVM::OPT_PROBABILITY</a></code></strong></dt>
      <dd>
       <span class="simpara">Training parameter, boolean, for whether to collect and use probability estimates</span>
      </dd>
     

     
      <dt id="svm.constants.opt-gamma"><strong><code><a href="class.svm.php#svm.constants.opt-gamma">SVM::OPT_GAMMA</a></code></strong></dt>
      <dd>
       <span class="simpara">Algorithm parameter for Poly, RBF and Sigmoid kernel types.</span>
      </dd>
     

     
      <dt id="svm.constants.opt-nu"><strong><code><a href="class.svm.php#svm.constants.opt-nu">SVM::OPT_NU</a></code></strong></dt>
      <dd>
       <span class="simpara">The option key for the nu parameter, only used in the NU_ SVM types</span>
      </dd>
     

     
      <dt id="svm.constants.opt-eps"><strong><code><a href="class.svm.php#svm.constants.opt-eps">SVM::OPT_EPS</a></code></strong></dt>
      <dd>
       <span class="simpara">The option key for the Epsilon parameter, used in epsilon regression</span>
      </dd>
     

     
      <dt id="svm.constants.opt-p"><strong><code><a href="class.svm.php#svm.constants.opt-p">SVM::OPT_P</a></code></strong></dt>
      <dd>
       <span class="simpara">Training parameter used by Episilon SVR regression</span>
      </dd>
     

     
      <dt id="svm.constants.opt-coef-zero"><strong><code><a href="class.svm.php#svm.constants.opt-coef-zero">SVM::OPT_COEF_ZERO</a></code></strong></dt>
      <dd>
       <span class="simpara">Algorithm parameter for poly and sigmoid kernels</span>
      </dd>
     

     
      <dt id="svm.constants.opt-c"><strong><code><a href="class.svm.php#svm.constants.opt-c">SVM::OPT_C</a></code></strong></dt>
      <dd>
       <span class="simpara">The option for the cost parameter that controls tradeoff between errors and generality - effectively the penalty for misclassifying training examples. </span>
      </dd>
     

     
      <dt id="svm.constants.opt-cache-size"><strong><code><a href="class.svm.php#svm.constants.opt-cache-size">SVM::OPT_CACHE_SIZE</a></code></strong></dt>
      <dd>
       <span class="simpara">Memory cache size, in MB</span>
      </dd>
     
    </dl>
   </div>
  </div>



 </div>

 

























<h2>Table of Contents</h2><ul class="chunklist chunklist_reference"><li><a href="svm.construct.php">SVM::__construct</a> — Construct a new SVM object</li><li><a href="svm.crossvalidate.php">SVM::crossvalidate</a> — Test training params on subsets of the training data</li><li><a href="svm.getoptions.php">SVM::getOptions</a> — Return the current training parameters</li><li><a href="svm.setoptions.php">SVM::setOptions</a> — Set training parameters</li><li><a href="svm.train.php">SVM::train</a> — Create a SVMModel based on training data</li></ul>
</div>
<?php manual_footer($setup); ?>