略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: SVM::crossvalidate

2024-12-20

SVM::crossvalidate

(PECL svm >= 0.1.0)

SVM::crossvalidateTest training params on subsets of the training data

说明

public svm::crossvalidate(array $problem, int $number_of_folds): float

Crossvalidate can be used to test the effectiveness of the current parameter set on a subset of the training data. Given a problem set and a n "folds", it separates the problem set into n subsets, and the repeatedly trains on one subset and tests on another. While the accuracy will generally be lower than a SVM trained on the enter data set, the accuracy score returned should be relatively useful, so it can be used to test different training parameters.

参数

problem

The problem data. This can either be in the form of an array, the URL of an SVMLight formatted file, or a stream to an opened SVMLight formatted datasource.

number_of_folds

The number of sets the data should be divided into and cross tested. A higher number means smaller training sets and less reliability. 5 is a good number to start with.

返回值

The correct percentage, expressed as a floating point number from 0-1. In the case of NU_SVC or EPSILON_SVR kernels the mean squared error will returned instead.

参见

add a noteadd a note

User Contributed Notes 1 note

up
1
kadirerturk at gmail dot com
7 years ago
$svm = new SVM();
$cross = $svm->crossvalidate("/svmScaled.data" , 5); // 5 fold cross val
var_dump($cross); //

官方地址:https://www.php.net/manual/en/svm.crossvalidate.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3