SVM::crossvalidate

(PECL svm >= 0.1.0)

SVM::crossvalidateTest los argumentos de entrenamiento en los subconjuntos de datos de entrenamiento

Descripción

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

Puede ser utilizado para probar la efectividad del conjunto de argumentos actual en los subconjuntos de datos de entrenamiento. Al proporcionar un problema así como n "plis", la función separará el conjunto del problema en n subconjuntos, y comenzará entrenamientos sucesivos en los subconjuntos. Aunque la precisión sea generalmente más baja que la de un SVM entrenado con los conjuntos de datos proporcionados, el porcentaje correcto retornado debería ser suficientemente útil para probar diferentes argumentos de entrenamiento.

Parámetros

problem

Los datos del problema. Puede estar en forma de array, de una URL hacia un archivo SVMLight, o de un flujo hacia un recurso de datos SVMLight abierto.

number_of_folds

El número de conjuntos en los que los datos deben ser divididos y probados. Un número alto significa que los conjuntos de entrenamiento serán más pequeños y menos fiables. 5 es un buen comienzo.

Valores devueltos

El porcentaje correcto, expresado como un número de punto flotante en el intervalo 0-1. En el caso de un núcleo NU_SVC o EPSILON_SVR, el error cuadrático medio será retornado.

Ver también

  • SVM::train() - Crea un modelo SVMModel basado en los datos de entrenamiento

add a note

User Contributed Notes 1 note

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