exponenta event banner

kfoldfun

Функция перекрестной проверки для регрессии

    Описание

    пример

    vals = kfoldfun(CVMdl,fun) перекрестная проверка функции fun применяя fun к данным, хранящимся в модели с перекрестной проверкой CVMdl. Вы должны пройти fun как дескриптор функции.

    Примеры

    свернуть все

    Обучите модель дерева регрессии, а затем выполните перекрестную проверку с помощью пользовательской k-кратной функции потерь.

    Загрузить imports-85 набор данных. Обучение дерева регрессии с использованием подмножества данных.

    load imports-85
    Mdl = fitrtree(X(:,[4 5]),X(:,16),...
        'PredictorNames',{'Length','Width'},...
        'ResponseName','Price');

    Выполните перекрестную проверку дерева регрессии и получите среднеквадратичную ошибку.

    CVMdl = crossval(Mdl);
    L = kfoldLoss(CVMdl)
    L = 1.9167e+07
    

    Проверьте ошибку при использовании простого усреднения обучающих ответов вместо прогнозов в расчете.

    f = @(CMP,Xtrain,Ytrain,Wtrain,Xtest,Ytest,Wtest)...
        mean((Ytest-mean(Ytrain)).^2)
    f = function_handle with value:
        @(CMP,Xtrain,Ytrain,Wtrain,Xtest,Ytest,Wtest)mean((Ytest-mean(Ytrain)).^2)
    
    
    mean(kfoldfun(CVMdl,f))
    ans = 6.3586e+07
    

    Входные аргументы

    свернуть все

    Модель с перекрестной проверкой, заданная как RegressionPartitionedModel объект, RegressionPartitionedEnsemble объект, RegressionPartitionedGAM объект, или RegressionPartitionedSVM объект.

    Функция перекрестной проверки, заданная как дескриптор функции. fun имеет синтаксис:

    testvals = fun(CMP,Xtrain,Ytrain,Wtrain,Xtest,Ytest,Wtest)
    • CMP является компактной моделью, хранящейся в одном элементе CVMdl.Trained собственность.

    • Xtrain - обучающая матрица значений предиктора.

    • Ytrain - обучающий массив значений ответа.

    • Wtrain - учебные веса для наблюдений.

    • Xtest и Ytest - тестовые данные с соответствующими весами Wtest.

    • Возвращенное значение testvals должен иметь одинаковый размер по всем складкам.

    Типы данных: function_handle

    Выходные аргументы

    свернуть все

    Результаты перекрестной проверки, возвращенные в виде числовой матрицы. vals содержит массивы testvals вывод, сцепленный по вертикали по всем складкам. Например, если testvals от каждого сворачивания - числовой вектор длины N, kfoldfun возвращает KFoldоколо-N числовая матрица с одной строкой на единицу.

    Типы данных: double

    Представлен в R2011a