fitrauto

Автоматически выберите модель регрессии оптимизированными гиперпараметрами

Описание

Учитывая предиктор и данные об ответе, fitrauto автоматически пробует выбор типов модели регрессии с различными гиперзначениями параметров. По умолчанию функция использует Байесовую оптимизацию, чтобы выбрать модели и их гиперзначения параметров, и вычисляет следующее для каждой модели: журнал (1 + valLoss), где valLoss является среднеквадратической ошибкой (MSE) перекрестной проверки. После того, как оптимизация завершена, fitrauto возвращает модель, обученную на целом наборе данных, который, как ожидают, лучше всего предскажет ответы для новых данных. Можно использовать predict и loss объектные функции возвращенной модели, чтобы предсказать на новых данных и вычислить набор тестов MSE, соответственно.

Использование fitrauto когда вы не уверены, какие типы модели лучше всего удовлетворяют вашим данным. Для получения информации об альтернативных методах для настройки гиперпараметров моделей регрессии см. альтернативную функциональность.

Если ваши данные содержат более чем 10 000 наблюдений, рассмотрите использование асинхронного последовательного алгоритма сокращения вдвое (ASHA) вместо Байесовой оптимизации, когда вы запускаетесь fitrauto. Оптимизация ASHA часто находит хорошие решения быстрее, чем Байесова оптимизация для наборов данных со многими наблюдениями.

пример

Mdl = fitrauto(Tbl,ResponseVarName) возвращает модель Mdl регрессии настроенными гиперпараметрами. Таблица Tbl содержит переменные предикторы и переменную отклика, где ResponseVarName имя переменной отклика.

Mdl = fitrauto(Tbl,formula) использование formula задавать переменную отклика и переменные предикторы, чтобы рассмотреть среди переменных в Tbl.

Mdl = fitrauto(Tbl,Y) использует переменные предикторы в таблице Tbl и значения отклика в векторном Y.

пример

Mdl = fitrauto(X,Y) использует переменные предикторы в матричном X и значения отклика в векторном Y.

пример

Mdl = fitrauto(___,Name,Value) задает опции с помощью одних или нескольких аргументов name-value в дополнение к любой из комбинаций входных аргументов в предыдущих синтаксисах. Например, используйте HyperparameterOptimizationOptions аргумент значения имени, чтобы задать, использовать ли Байесовую оптимизацию (значение по умолчанию) или асинхронный последовательный алгоритм сокращения вдвое (ASHA). Чтобы использовать оптимизацию ASHA, задайте "HyperparameterOptimizationOptions",struct("Optimizer","asha"). Можно включать дополнительные поля в структуру, чтобы управлять другими аспектами оптимизации.

[Mdl,OptimizationResults] = fitrauto(___) также возвращает OptimizationResults, который содержит результаты выбора модели и настраивающего процесса гиперпараметра. Этим выходом является BayesianOptimization возразите, когда вы используете Байесовую оптимизацию и таблицу, когда вы используете оптимизацию ASHA.

Примеры

свернуть все

Используйте fitrauto автоматически выбрать модель регрессии оптимизированными гиперпараметрами, учитывая предиктор и данные об ответе, хранимые в таблице.

Загрузка данных

Загрузите carbig набор данных, который содержит измерения автомобилей, сделанных в 1970-х и в начале 1980-х.

load carbig

Составьте таблицу, содержащую переменные предикторы Acceleration, Displacement, и так далее, а также переменная отклика MPG.

cars = table(Acceleration,Displacement,Horsepower, ...
    Model_Year,Origin,Weight,MPG);

Данные о разделе

Разделите данные в наборы обучающих данных и наборы тестов. Используйте приблизительно 80% наблюдений для выбора модели и настраивающего процесса гиперпараметра, и 20% наблюдений, чтобы проверить производительность итоговой модели, возвращенной fitrauto. Используйте cvpartition разделить данные.

rng("default") % For reproducibility of the data partition
c = cvpartition(length(MPG),"Holdout",0.2);
trainingIdx = training(c); % Training set indices
carsTrain = cars(trainingIdx,:);
testIdx = test(c); % Test set indices
carsTest = cars(testIdx,:);

Запустите fitrauto

Передайте обучающие данные fitrauto. По умолчанию, fitrauto определяет соответствующие типы модели, чтобы попробовать, использует Байесовую оптимизацию, чтобы найти хорошие гиперзначения параметров и возвращает обученную модель Mdl с лучшей ожидаемой эффективностью. Кроме того, fitrauto предоставляет график оптимизации и итеративное отображение результатов оптимизации. Для получения дополнительной информации о том, как интерпретировать эти результаты, смотрите Многословное Отображение.

Ожидайте, что этот процесс займет время. Чтобы ускорить процесс оптимизации, рассмотрите выполнение оптимизации параллельно, если у вас есть лицензия Parallel Computing Toolbox™. Для этого передайте "HyperparameterOptimizationOptions",struct("UseParallel",true) к fitrauto в качестве аргумента значения имени.

Mdl = fitrauto(carsTrain,"MPG");
Learner types to explore: ensemble, svm, tree
Total iterations (MaxObjectiveEvaluations): 90
Total time (MaxTime): Inf

|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|    1 | Best   |           2.5161 |           0.42811 |           2.5161 |           2.5161 |         tree | MinLeafSize:              6 |
|    2 | Accept |           4.1439 |           0.31653 |           2.5161 |           2.5161 |          svm | BoxConstraint:       336.91 |
|      |        |                  |                   |                  |                  |              | KernelScale:      0.0018275 |
|      |        |                  |                   |                  |                  |              | Epsilon:             0.1074 |
|    3 | Accept |            4.144 |            6.1354 |           2.5161 |           2.5161 |     ensemble | Method:                 Bag |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      257 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:            156 |
|    4 | Accept |           3.1976 |            21.572 |           2.5161 |           2.5161 |          svm | BoxConstraint:     0.033502 |
|      |        |                  |                   |                  |                  |              | KernelScale:         153.38 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.093672 |
|    5 | Best   |           2.5041 |          0.098707 |           2.5041 |           2.5101 |         tree | MinLeafSize:              5 |
|    6 | Best   |            2.173 |             8.434 |            2.173 |           2.2138 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      287 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|    7 | Accept |           2.7182 |           0.10727 |            2.173 |           2.2138 |         tree | MinLeafSize:              1 |
|    8 | Accept |           17.207 |            24.418 |            2.173 |           2.2138 |          svm | BoxConstraint:       196.73 |
|      |        |                  |                   |                  |                  |              | KernelScale:         34.789 |
|      |        |                  |                   |                  |                  |              | Epsilon:            0.03716 |
|    9 | Accept |           4.1439 |           0.08053 |            2.173 |           2.2138 |          svm | BoxConstraint:       346.92 |
|      |        |                  |                   |                  |                  |              | KernelScale:       0.032493 |
|      |        |                  |                   |                  |                  |              | Epsilon:            0.23974 |
|   10 | Accept |           2.2139 |            7.9036 |            2.173 |           2.1945 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      278 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             13 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   11 | Accept |           2.8889 |           0.10655 |            2.173 |           2.1945 |          svm | BoxConstraint:     0.033068 |
|      |        |                  |                   |                  |                  |              | KernelScale:         585.38 |
|      |        |                  |                   |                  |                  |              | Epsilon:             4.6993 |
|   12 | Accept |           4.1439 |          0.060722 |            2.173 |           2.1945 |          svm | BoxConstraint:       48.997 |
|      |        |                  |                   |                  |                  |              | KernelScale:      0.0045904 |
|      |        |                  |                   |                  |                  |              | Epsilon:             18.085 |
|   13 | Accept |           4.1439 |          0.079298 |            2.173 |           2.1945 |          svm | BoxConstraint:       985.69 |
|      |        |                  |                   |                  |                  |              | KernelScale:      0.0010988 |
|      |        |                  |                   |                  |                  |              | Epsilon:             449.48 |
|   14 | Accept |           2.2801 |            8.2142 |            2.173 |           2.1824 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      287 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             63 |
|   15 | Accept |           4.1439 |          0.075809 |            2.173 |           2.1824 |          svm | BoxConstraint:     0.010812 |
|      |        |                  |                   |                  |                  |              | KernelScale:         1.2015 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.034209 |
|   16 | Accept |           4.1439 |          0.061902 |            2.173 |           2.1824 |          svm | BoxConstraint:    0.0021787 |
|      |        |                  |                   |                  |                  |              | KernelScale:       0.018209 |
|      |        |                  |                   |                  |                  |              | Epsilon:             443.71 |
|   17 | Accept |           2.2159 |            7.9406 |            2.173 |           2.1777 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      283 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             17 |
|   18 | Accept |           2.6056 |          0.091476 |            2.173 |           2.1777 |         tree | MinLeafSize:              2 |
|   19 | Accept |           2.6056 |           0.13203 |            2.173 |           2.1777 |         tree | MinLeafSize:              2 |
|   20 | Accept |           2.7182 |          0.087514 |            2.173 |           2.1777 |         tree | MinLeafSize:              1 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   21 | Accept |           2.1763 |            7.9262 |            2.173 |             2.17 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      282 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|   22 | Accept |           2.6056 |          0.077927 |            2.173 |             2.17 |         tree | MinLeafSize:              2 |
|   23 | Accept |           2.3016 |            5.2336 |            2.173 |           2.1774 |     ensemble | Method:                 Bag |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      202 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              9 |
|   24 | Accept |           4.1439 |          0.073168 |            2.173 |           2.1774 |          svm | BoxConstraint:       37.028 |
|      |        |                  |                   |                  |                  |              | KernelScale:       0.033731 |
|      |        |                  |                   |                  |                  |              | Epsilon:             0.2457 |
|   25 | Accept |            3.352 |          0.049267 |            2.173 |           2.1774 |         tree | MinLeafSize:            122 |
|   26 | Accept |           4.1439 |          0.060427 |            2.173 |           2.1774 |          svm | BoxConstraint:      0.01045 |
|      |        |                  |                   |                  |                  |              | KernelScale:      0.0024261 |
|      |        |                  |                   |                  |                  |              | Epsilon:             12.355 |
|   27 | Accept |           2.3188 |            5.9728 |            2.173 |           2.1761 |     ensemble | Method:                 Bag |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      212 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|   28 | Accept |           2.4075 |            5.8104 |            2.173 |           2.1765 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      247 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             83 |
|   29 | Accept |           2.6056 |          0.098163 |            2.173 |           2.1765 |         tree | MinLeafSize:              2 |
|   30 | Accept |           4.1439 |          0.070094 |            2.173 |           2.1765 |          svm | BoxConstraint:       2.1296 |
|      |        |                  |                   |                  |                  |              | KernelScale:         3.2623 |
|      |        |                  |                   |                  |                  |              | Epsilon:             599.62 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   31 | Accept |           2.5241 |          0.049706 |            2.173 |           2.1765 |         tree | MinLeafSize:              8 |
|   32 | Accept |           2.6443 |            4.9903 |            2.173 |           2.1764 |     ensemble | Method:                 Bag |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      229 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             52 |
|   33 | Accept |            2.241 |            5.9324 |            2.173 |            2.175 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      235 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             26 |
|   34 | Accept |           2.5448 |          0.046743 |            2.173 |            2.175 |         tree | MinLeafSize:             19 |
|   35 | Accept |           2.4438 |          0.068662 |            2.173 |            2.175 |         tree | MinLeafSize:             13 |
|   36 | Accept |           2.7182 |          0.076403 |            2.173 |            2.175 |         tree | MinLeafSize:              1 |
|   37 | Accept |           2.4749 |          0.047877 |            2.173 |            2.175 |         tree | MinLeafSize:              9 |
|   38 | Accept |           13.083 |            30.935 |            2.173 |            2.175 |          svm | BoxConstraint:       5.2568 |
|      |        |                  |                   |                  |                  |              | KernelScale:         10.811 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.073361 |
|   39 | Accept |           2.2349 |            5.6292 |            2.173 |           2.1758 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      214 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              4 |
|   40 | Accept |           3.0919 |          0.044015 |            2.173 |           2.1758 |         tree | MinLeafSize:             62 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   41 | Accept |           2.6335 |            6.4037 |            2.173 |           2.1735 |     ensemble | Method:                 Bag |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      280 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             45 |
|   42 | Accept |           4.1439 |          0.077174 |            2.173 |           2.1735 |          svm | BoxConstraint:     0.093799 |
|      |        |                  |                   |                  |                  |              | KernelScale:      0.0053728 |
|      |        |                  |                   |                  |                  |              | Epsilon:             17.332 |
|   43 | Accept |           2.8766 |          0.097864 |            2.173 |           2.1735 |          svm | BoxConstraint:      0.20553 |
|      |        |                  |                   |                  |                  |              | KernelScale:         880.29 |
|      |        |                  |                   |                  |                  |              | Epsilon:             4.5637 |
|   44 | Accept |           2.1763 |            5.7872 |            2.173 |           2.1731 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      233 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|   45 | Accept |           2.4576 |            5.4877 |            2.173 |           2.1732 |     ensemble | Method:                 Bag |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      232 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:             27 |
|   46 | Accept |           4.1439 |          0.052135 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0010276 |
|      |        |                  |                   |                  |                  |              | KernelScale:         5.6652 |
|      |        |                  |                   |                  |                  |              | Epsilon:             804.02 |
|   47 | Accept |           3.1594 |           0.08652 |            2.173 |           2.1732 |          svm | BoxConstraint:     0.002278 |
|      |        |                  |                   |                  |                  |              | KernelScale:         906.35 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.015573 |
|   48 | Accept |           14.659 |            21.351 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0010072 |
|      |        |                  |                   |                  |                  |              | KernelScale:         39.716 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.039845 |
|   49 | Accept |           4.1439 |           0.06733 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0010085 |
|      |        |                  |                   |                  |                  |              | KernelScale:        0.24517 |
|      |        |                  |                   |                  |                  |              | Epsilon:             447.36 |
|   50 | Accept |           4.1439 |          0.067864 |            2.173 |           2.1732 |          svm | BoxConstraint:        893.9 |
|      |        |                  |                   |                  |                  |              | KernelScale:         290.03 |
|      |        |                  |                   |                  |                  |              | Epsilon:             624.64 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   51 | Accept |           2.6859 |            2.8671 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0019596 |
|      |        |                  |                   |                  |                  |              | KernelScale:         264.51 |
|      |        |                  |                   |                  |                  |              | Epsilon:          0.0090654 |
|   52 | Accept |           4.1439 |          0.066538 |            2.173 |           2.1732 |          svm | BoxConstraint:       904.73 |
|      |        |                  |                   |                  |                  |              | KernelScale:       0.099617 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.014351 |
|   53 | Accept |           4.1439 |          0.050841 |            2.173 |           2.1732 |          svm | BoxConstraint:       975.67 |
|      |        |                  |                   |                  |                  |              | KernelScale:        0.50151 |
|      |        |                  |                   |                  |                  |              | Epsilon:             88.566 |
|   54 | Accept |           4.1439 |          0.065868 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0011848 |
|      |        |                  |                   |                  |                  |              | KernelScale:         201.25 |
|      |        |                  |                   |                  |                  |              | Epsilon:             441.13 |
|   55 | Accept |           4.8245 |             19.19 |            2.173 |           2.1732 |          svm | BoxConstraint:       548.22 |
|      |        |                  |                   |                  |                  |              | KernelScale:         548.99 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.010854 |
|   56 | Accept |           4.1439 |           0.08348 |            2.173 |           2.1732 |          svm | BoxConstraint:     0.001489 |
|      |        |                  |                   |                  |                  |              | KernelScale:         895.16 |
|      |        |                  |                   |                  |                  |              | Epsilon:             855.15 |
|   57 | Accept |           4.1439 |          0.076295 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0074202 |
|      |        |                  |                   |                  |                  |              | KernelScale:         0.3217 |
|      |        |                  |                   |                  |                  |              | Epsilon:          0.0096831 |
|   58 | Accept |           4.1439 |          0.085455 |            2.173 |           2.1732 |          svm | BoxConstraint:       757.82 |
|      |        |                  |                   |                  |                  |              | KernelScale:       0.065896 |
|      |        |                  |                   |                  |                  |              | Epsilon:             870.69 |
|   59 | Accept |           2.6999 |            5.8429 |            2.173 |           2.1732 |          svm | BoxConstraint:      0.00131 |
|      |        |                  |                   |                  |                  |              | KernelScale:         249.09 |
|      |        |                  |                   |                  |                  |              | Epsilon:            0.27904 |
|   60 | Accept |           4.1439 |          0.076182 |            2.173 |           2.1732 |          svm | BoxConstraint:     0.001578 |
|      |        |                  |                   |                  |                  |              | KernelScale:       0.010906 |
|      |        |                  |                   |                  |                  |              | Epsilon:          0.0091265 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   61 | Accept |           4.1439 |          0.057696 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0011475 |
|      |        |                  |                   |                  |                  |              | KernelScale:         1.2958 |
|      |        |                  |                   |                  |                  |              | Epsilon:              354.6 |
|   62 | Accept |           4.1439 |          0.077794 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0027272 |
|      |        |                  |                   |                  |                  |              | KernelScale:      0.0010042 |
|      |        |                  |                   |                  |                  |              | Epsilon:           0.014664 |
|   63 | Accept |           2.3368 |            5.1396 |            2.173 |           2.1732 |     ensemble | Method:                 Bag |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      205 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   64 | Accept |           2.7175 |            12.745 |            2.173 |           2.1732 |          svm | BoxConstraint:    0.0011027 |
|      |        |                  |                   |                  |                  |              | KernelScale:         188.56 |
|      |        |                  |                   |                  |                  |              | Epsilon:          0.0089013 |
|   65 | Accept |            2.173 |            4.8092 |            2.173 |           2.1731 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   66 | Accept |           4.1439 |          0.060669 |            2.173 |           2.1731 |          svm | BoxConstraint:     0.011536 |
|      |        |                  |                   |                  |                  |              | KernelScale:      0.0039517 |
|      |        |                  |                   |                  |                  |              | Epsilon:          0.0090597 |
|   67 | Best   |            2.173 |             8.695 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      300 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   68 | Accept |            2.173 |            5.0512 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      202 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   69 | Accept |            2.173 |            7.5798 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      299 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   70 | Accept |            2.173 |            4.8479 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   71 | Accept |            2.173 |            7.5734 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      300 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   72 | Accept |            2.173 |            7.4612 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      299 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   73 | Accept |            2.173 |            4.7911 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   74 | Accept |            2.173 |             7.333 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      299 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   75 | Accept |            2.173 |            7.0648 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      277 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   76 | Accept |            2.173 |            4.9778 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   77 | Accept |            2.173 |            4.6684 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   78 | Accept |            2.173 |            7.1746 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      297 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   79 | Accept |           2.1763 |            5.5721 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      230 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|   80 | Accept |            2.173 |            4.9422 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|=========================================================================================================================================|
| Iter | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|=========================================================================================================================================|
|   81 | Accept |            2.173 |            7.4431 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      298 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   82 | Accept |            2.173 |            7.4708 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      299 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   83 | Accept |            2.173 |            4.8532 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      202 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   84 | Accept |            2.173 |            7.3628 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      300 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   85 | Accept |            2.173 |            5.8364 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      240 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   86 | Accept |            2.173 |             4.821 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   87 | Accept |            2.173 |            5.4126 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      220 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   88 | Accept |            2.173 |            7.9721 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      300 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   89 | Accept |            2.173 |            6.8672 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      275 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   90 | Accept |            2.173 |            4.9636 |            2.173 |            2.173 |     ensemble | Method:             LSBoost |
|      |        |                  |                   |                  |                  |              | NumLearningCycles:      216 |
|      |        |                  |                   |                  |                  |              | MinLeafSize:              1 |

__________________________________________________________
Optimization completed.
Total iterations: 90
Total elapsed time: 643.9812 seconds
Total time for training and validation: 401.0444 seconds

Best observed learner is an ensemble model with:
	Method:             LSBoost
	NumLearningCycles:      300
	MinLeafSize:              1
Observed log(1 + valLoss): 2.173
Time for training and validation: 8.695 seconds

Best estimated learner (returned model) is an ensemble model with:
	Method:             LSBoost
	NumLearningCycles:      300
	MinLeafSize:              1
Estimated log(1 + valLoss): 2.173
Estimated time for training and validation: 7.5797 seconds

Documentation for fitrauto display

Итоговая модель возвращена fitrauto соответствует лучшему предполагаемому ученику. Прежде, чем возвратить модель, функция переобучает его с помощью целых обучающих данных (carsTrain), перечисленный Learner (или модель) тип и отображенные гиперзначения параметров.

Оцените эффективность набора тестов

Оцените эффективность модели на наборе тестов. testError основан на среднеквадратической ошибке (MSE) набора тестов. Меньшие значения MSE указывают на лучшую эффективность.

testMSE = loss(Mdl,carsTest,"MPG");
testError = log(1 + testMSE)
testError = 2.2971

Используйте fitrauto автоматически выбрать модель регрессии оптимизированными гиперпараметрами, учитывая предиктор и данные об ответе, хранимые в отдельных переменных.

Загрузка данных

Загрузите carbig набор данных, который содержит измерения автомобилей, сделанных в 1970-х и в начале 1980-х.

load carbig

Создайте матричный X содержа переменные предикторы Acceleration, Cylinders, и так далее. Сохраните переменную отклика MPG в переменной Y.

X = [Acceleration Cylinders Displacement Weight];
Y = MPG;

Создайте переменную, указывающую, какие предикторы являются категориальными. Cylinders единственная категориальная переменная в X.

categoricalVars = [false true false false];

Данные о разделе

Разделите данные в наборы обучающих данных и наборы тестов. Используйте приблизительно 80% наблюдений для выбора модели и настраивающего процесса гиперпараметра, и 20% наблюдений, чтобы проверить производительность итоговой модели, возвращенной fitrauto. Используйте cvpartition разделить данные.

rng("default") % For reproducibility of the partition
c = cvpartition(length(Y),"Holdout",0.20);
trainingIdx = training(c); % Indices for the training set
XTrain = X(trainingIdx,:);
YTrain = Y(trainingIdx);
testIdx = test(c); % Indices for the test set
XTest = X(testIdx,:);
YTest = Y(testIdx);

Запустите fitrauto

Передайте обучающие данные fitrauto. По умолчанию, fitrauto определяет соответствующую модель (или ученик) типы, чтобы попробовать, использует Байесовую оптимизацию, чтобы найти хорошие гиперзначения параметров для тех моделей и возвращает обученную модель Mdl с лучшей ожидаемой эффективностью. Задайте категориальные предикторы и запуститесь, оптимизация параллельно (требует Parallel Computing Toolbox™). Возвратите второй выход OptimizationResults это содержит детали Байесовой оптимизации.

Ожидайте, что этот процесс займет время. По умолчанию, fitrauto предоставляет график оптимизации и итеративное отображение результатов оптимизации. Для получения дополнительной информации о том, как интерпретировать эти результаты, смотрите Многословное Отображение.

options = struct("UseParallel",true);
[Mdl,OptimizationResults] = fitrauto(XTrain,YTrain, ...
    "CategoricalPredictors",categoricalVars, ...
    "HyperparameterOptimizationOptions",options);
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 6).
Copying objective function to workers...
Done copying objective function to workers.
Learner types to explore: ensemble, svm, tree
Total iterations (MaxObjectiveEvaluations): 90
Total time (MaxTime): Inf

|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|    1 |       5 | Best   |           3.0205 |            1.4452 |           3.0205 |           3.0329 |         tree | MinLeafSize:              6 |
|    2 |       5 | Accept |           3.0453 |             1.431 |           3.0205 |           3.0329 |         tree | MinLeafSize:              5 |
|    3 |       5 | Accept |            4.143 |            2.2922 |           3.0205 |           3.0329 |          svm | BoxConstraint:       336.91 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0018275 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             0.1074 |
|    4 |       5 | Accept |            4.143 |           0.59844 |           3.0205 |           3.0329 |          svm | BoxConstraint:       346.92 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.032493 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.23974 |
|    5 |       6 | Best   |           2.9275 |           0.30064 |           2.9275 |           2.9275 |          svm | BoxConstraint:     0.033068 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         585.38 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             4.6993 |
|    6 |       5 | Accept |           4.1439 |            6.9662 |           2.9275 |           2.9275 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      257 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:            156 |
|    7 |       5 | Accept |           2.9275 |           0.83001 |           2.9275 |           2.9275 |          svm | BoxConstraint:     0.033068 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         585.38 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             4.6993 |
|    8 |       4 | Accept |            2.938 |            9.5987 |           2.9275 |           2.9275 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      287 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|    9 |       4 | Accept |            4.143 |           0.15524 |           2.9275 |           2.9275 |          svm | BoxConstraint:       48.997 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0045904 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             18.085 |
|   10 |       6 | Accept |            4.143 |           0.18295 |           2.9275 |           2.9275 |          svm | BoxConstraint:    0.0021787 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.018209 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             443.71 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   11 |       4 | Best   |           2.8597 |            8.2455 |           2.8597 |           2.9275 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      278 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             13 |
|   12 |       4 | Accept |            4.143 |           0.64902 |           2.8597 |           2.9275 |          svm | BoxConstraint:    0.0021787 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.018209 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             443.71 |
|   13 |       4 | Accept |            4.143 |           0.52394 |           2.8597 |           2.9275 |          svm | BoxConstraint:    0.0021787 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.018209 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             443.71 |
|   14 |       5 | Accept |           3.2501 |           0.21659 |           2.8597 |           2.9275 |         tree | MinLeafSize:              1 |
|   15 |       5 | Accept |           3.2501 |           0.15812 |           2.8597 |           2.9275 |         tree | MinLeafSize:              1 |
|   16 |       4 | Accept |           2.9167 |            7.7641 |           2.8597 |           2.9275 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      287 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             63 |
|   17 |       4 | Accept |           3.2501 |            0.1166 |           2.8597 |           2.9275 |         tree | MinLeafSize:              1 |
|   18 |       4 | Accept |           3.1971 |           0.37955 |           2.8597 |           2.9275 |         tree | MinLeafSize:              2 |
|   19 |       2 | Accept |           3.6673 |            21.933 |           2.8597 |           2.9276 |          svm | BoxConstraint:     0.033502 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         153.38 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.093672 |
|   20 |       2 | Accept |           2.8734 |            6.5786 |           2.8597 |           2.9276 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      283 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             17 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   21 |       2 | Accept |            4.143 |          0.089152 |           2.8597 |           2.9276 |          svm | BoxConstraint:       37.028 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.033731 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             0.2457 |
|   22 |       6 | Accept |           3.3225 |             0.186 |           2.8597 |           2.9276 |         tree | MinLeafSize:            122 |
|   23 |       4 | Accept |           2.9536 |           0.15373 |           2.8597 |           2.9276 |         tree | MinLeafSize:             11 |
|   24 |       4 | Accept |            4.143 |            0.2424 |           2.8597 |           2.9276 |          svm | BoxConstraint:       240.91 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0063646 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             92.342 |
|   25 |       4 | Accept |           2.9969 |            0.2371 |           2.8597 |           2.9276 |         tree | MinLeafSize:             40 |
|   26 |       4 | Accept |           3.1971 |          0.087498 |           2.8597 |           2.9276 |         tree | MinLeafSize:              2 |
|   27 |       3 | Accept |           3.0259 |            5.4043 |           2.8597 |           2.8589 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      247 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             83 |
|   28 |       3 | Accept |           2.8673 |            5.2056 |           2.8597 |           2.8589 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      234 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             31 |
|   29 |       6 | Accept |           2.9403 |          0.060585 |           2.8597 |           2.8589 |         tree | MinLeafSize:             13 |
|   30 |       4 | Accept |            2.868 |            4.3862 |           2.8597 |           2.8589 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      229 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             52 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   31 |       4 | Accept |           3.3587 |           0.46693 |           2.8597 |           2.8589 |         tree | MinLeafSize:            109 |
|   32 |       4 | Accept |           3.1971 |           0.32157 |           2.8597 |           2.8589 |         tree | MinLeafSize:              2 |
|   33 |       4 | Accept |           3.2501 |          0.078839 |           2.8597 |           2.8589 |         tree | MinLeafSize:              1 |
|   34 |       4 | Accept |           2.8708 |            5.4437 |           2.8597 |           2.8595 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      235 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             26 |
|   35 |       3 | Best   |           2.8244 |            5.9186 |           2.8244 |           2.8595 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      275 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              4 |
|   36 |       3 | Accept |            3.112 |          0.053088 |           2.8244 |           2.8595 |         tree | MinLeafSize:             62 |
|   37 |       6 | Accept |           2.8872 |            5.1029 |           2.8244 |           2.8245 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      214 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              4 |
|   38 |       5 | Accept |           2.9282 |          0.095731 |           2.8244 |           2.8245 |          svm | BoxConstraint:      0.20553 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         880.29 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             4.5637 |
|   39 |       5 | Accept |            4.143 |          0.087217 |           2.8244 |           2.8245 |          svm | BoxConstraint:       26.303 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.40313 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:              228.3 |
|   40 |       2 | Accept |           2.8652 |            5.7512 |           2.8242 |           2.8242 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      280 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             45 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   41 |       2 | Accept |           3.0951 |            5.1977 |           2.8242 |           2.8242 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      250 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             70 |
|   42 |       2 | Best   |           2.8242 |            5.2948 |           2.8242 |           2.8242 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      207 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              8 |
|   43 |       2 | Accept |           2.9041 |            5.4999 |           2.8242 |           2.8242 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      233 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|   44 |       5 | Accept |           2.9804 |          0.074442 |           2.8242 |           2.8242 |         tree | MinLeafSize:              8 |
|   45 |       5 | Accept |           3.3765 |          0.047037 |           2.8242 |           2.8242 |         tree | MinLeafSize:            117 |
|   46 |       4 | Accept |            4.143 |          0.095028 |           2.8242 |           2.8242 |          svm | BoxConstraint:     0.032384 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         797.08 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             64.843 |
|   47 |       4 | Accept |            4.143 |          0.061103 |           2.8242 |           2.8242 |          svm | BoxConstraint:       28.209 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         77.831 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             21.256 |
|   48 |       3 | Accept |           2.8452 |            3.6683 |           2.8242 |           2.8243 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   49 |       3 | Accept |           2.8655 |            4.0616 |           2.8242 |           2.8243 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      202 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   50 |       6 | Accept |            4.143 |           0.10804 |           2.8242 |           2.8243 |          svm | BoxConstraint:       267.23 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.028148 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.097477 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   51 |       3 | Accept |           4.8036 |            16.322 |           2.8193 |           2.8188 |          svm | BoxConstraint:     0.006061 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         127.62 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:          0.0090183 |
|   52 |       3 | Best   |           2.8193 |            4.0637 |           2.8193 |           2.8188 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             23 |
|   53 |       3 | Accept |           2.8228 |            6.0192 |           2.8193 |           2.8188 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      298 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              5 |
|   54 |       3 | Accept |           2.8448 |            5.0715 |           2.8193 |           2.8188 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      249 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|   55 |       6 | Accept |           3.2501 |          0.077577 |           2.8193 |           2.8188 |         tree | MinLeafSize:              1 |
|   56 |       4 | Accept |           2.9351 |          0.098541 |           2.8193 |           2.8188 |          svm | BoxConstraint:     0.015396 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         707.02 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             1.8654 |
|   57 |       4 | Accept |            4.143 |          0.062758 |           2.8193 |           2.8188 |          svm | BoxConstraint:      0.20213 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.56699 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             803.81 |
|   58 |       4 | Accept |            4.143 |          0.076261 |           2.8193 |           2.8188 |          svm | BoxConstraint:     0.001047 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0019199 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:              4.501 |
|   59 |       4 | Accept |           2.8469 |            3.5621 |           2.8193 |           2.8223 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      200 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             35 |
|   60 |       5 | Accept |           2.8288 |            3.9552 |           2.8193 |           2.8223 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      207 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             14 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   61 |       5 | Accept |            4.143 |          0.066618 |           2.8193 |           2.8223 |          svm | BoxConstraint:     0.043338 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.026299 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.057475 |
|   62 |       5 | Accept |            4.143 |            31.142 |           2.8193 |           2.8223 |          svm | BoxConstraint:       13.655 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         4.3086 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             6.9116 |
|   63 |       4 | Accept |           2.8697 |            7.1892 |           2.8193 |           2.8223 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      291 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              8 |
|   64 |       4 | Accept |            4.143 |          0.051217 |           2.8193 |           2.8223 |          svm | BoxConstraint:       164.25 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:            422 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             709.16 |
|   65 |       4 | Accept |           15.816 |            29.101 |           2.8193 |           2.8223 |          svm | BoxConstraint:        280.6 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         20.045 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             2.9565 |
|   66 |       4 | Accept |           2.8697 |             6.626 |           2.8193 |           2.8224 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      300 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              8 |
|   67 |       3 | Accept |            4.143 |            30.413 |           2.8193 |           2.8223 |          svm | BoxConstraint:       1.3468 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         9.6762 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.023868 |
|   68 |       3 | Accept |           2.8398 |            7.0162 |           2.8193 |           2.8223 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      386 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              3 |
|   69 |       3 | Accept |           2.8358 |            6.4998 |           2.8193 |           2.8223 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      344 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             21 |
|   70 |       3 | Accept |            4.143 |          0.076191 |           2.8193 |           2.8223 |          svm | BoxConstraint:       6.1442 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.068257 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             5.7363 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   71 |       3 | Accept |            4.143 |          0.066335 |           2.8193 |           2.8223 |          svm | BoxConstraint:     0.027503 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0041093 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.051041 |
|   72 |       3 | Accept |            4.143 |           0.07249 |           2.8193 |           2.8223 |          svm | BoxConstraint:      0.52138 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.43854 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.67088 |
|   73 |       5 | Accept |           2.8214 |            3.9165 |           2.8193 |           2.8215 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      207 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              6 |
|   74 |       5 | Accept |           2.8872 |            6.1359 |           2.8193 |           2.8215 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      252 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              4 |
|   75 |       3 | Accept |           2.9284 |          0.054998 |           2.8193 |           2.8215 |         tree | MinLeafSize:             20 |
|   76 |       3 | Accept |           2.8468 |             3.983 |           2.8193 |           2.8215 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      225 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             33 |
|   77 |       3 | Accept |           2.9969 |           0.10337 |           2.8193 |           2.8215 |         tree | MinLeafSize:             40 |
|   78 |       6 | Accept |           3.0866 |          0.058426 |           2.8193 |           2.8215 |          svm | BoxConstraint:    0.0070395 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         988.24 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:          0.0096375 |
|   79 |       5 | Accept |            4.143 |          0.094698 |           2.8193 |           2.8215 |          svm | BoxConstraint:       954.83 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0016114 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             45.114 |
|   80 |       5 | Accept |           3.2501 |          0.083131 |           2.8193 |           2.8215 |         tree | MinLeafSize:              1 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   81 |       3 | Accept |            4.143 |             6.269 |           2.8193 |           2.8215 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      294 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:            162 |
|   82 |       3 | Accept |           2.8742 |            6.9216 |           2.8193 |           2.8215 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      293 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             27 |
|   83 |       3 | Accept |            4.143 |          0.051169 |           2.8193 |           2.8215 |          svm | BoxConstraint:      0.47136 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.11232 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.058234 |
|   84 |       2 | Accept |            9.656 |            19.111 |           2.8193 |           2.8215 |          svm | BoxConstraint:       121.18 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         196.01 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.010913 |
|   85 |       2 | Accept |            4.143 |            6.6385 |           2.8193 |           2.8215 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      294 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:            162 |
|   86 |       2 | Accept |           3.0281 |          0.055432 |           2.8193 |           2.8215 |         tree | MinLeafSize:             57 |
|   87 |       2 | Accept |           3.1971 |           0.10328 |           2.8193 |           2.8215 |         tree | MinLeafSize:              2 |
|   88 |       2 | Accept |           3.1507 |          0.081176 |           2.8193 |           2.8215 |         tree | MinLeafSize:              3 |
|   89 |       6 | Accept |           2.8507 |            5.7074 |           2.8193 |           2.8214 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | NumLearningCycles:      275 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|   90 |       5 | Accept |            4.143 |          0.078128 |           2.8193 |           2.8214 |          svm | BoxConstraint:       220.96 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         28.058 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             66.219 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   91 |       5 | Accept |            4.143 |            0.0599 |           2.8193 |           2.8214 |          svm | BoxConstraint:        8.342 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         70.835 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             38.428 |

__________________________________________________________
Optimization completed.
Total iterations: 91
Total elapsed time: 174.9553 seconds
Total time for training and validation: 350.9822 seconds

Best observed learner is an ensemble model with:
	Method:                 Bag
	NumLearningCycles:      200
	MinLeafSize:             23
Observed log(1 + valLoss): 2.8193
Time for training and validation: 4.0637 seconds

Best estimated learner (returned model) is an ensemble model with:
	Method:                 Bag
	NumLearningCycles:      207
	MinLeafSize:              6
Estimated log(1 + valLoss): 2.8214
Estimated time for training and validation: 4.0733 seconds

Documentation for fitrauto display

Итоговая модель возвращена fitrauto соответствует лучшему предполагаемому ученику. Прежде, чем возвратить модель, функция переобучает его с помощью целых обучающих данных (XTrain и YTrain), перечисленный Learner (или модель) тип и отображенные гиперзначения параметров.

Оцените эффективность набора тестов

Оцените эффективность модели на наборе тестов. testError основан на среднеквадратической ошибке (MSE) набора тестов. Меньшие значения MSE указывают на лучшую эффективность.

testMSE = loss(Mdl,XTest,YTest);
testError = log(1 + testMSE)
testError = 2.8921

Используйте fitrauto автоматически выбрать модель регрессии оптимизированными гиперпараметрами, учитывая предиктор и данные об ответе, хранимые в таблице. Сравните эффективность получившейся модели регрессии к эффективности простой модели линейной регрессии, созданной с fitlm.

Загрузка и данные о разделе

Загрузите carbig набор данных, который содержит измерения автомобилей, сделанных в 1970-х и в начале 1980-х. Преобразуйте Cylinders переменная к categorical переменная. Составьте таблицу, содержащую переменные предикторы Acceleration, Cylinders, Displacement, и так далее, а также переменная отклика MPG.

load carbig
Cylinders = categorical(Cylinders);
cars = table(Acceleration,Cylinders,Displacement, ...
    Horsepower,Model_Year,Origin,Weight,MPG);

Разделите данные в наборы обучающих данных и наборы тестов. Используйте приблизительно 80% наблюдений для обучения и 20% наблюдений для тестирования. Используйте cvpartition разделить данные.

rng("default") % For reproducibility of the data partition
c = cvpartition(length(MPG),"Holdout",0.2);
trainingIdx = training(c); % Training set indices
carsTrain = cars(trainingIdx,:);
testIdx = test(c); % Test set indices
carsTest = cars(testIdx,:);

Запустите fitrauto

Передайте обучающие данные fitrauto. По умолчанию, fitrauto определяет соответствующие типы модели, чтобы попробовать, использует Байесовую оптимизацию, чтобы найти хорошие гиперзначения параметров и возвращает обученную модель autoMdl с лучшей ожидаемой эффективностью. Задайте, чтобы оптимизировать по всем optimizable гиперпараметрам и запуститься, оптимизация параллельно (требует Parallel Computing Toolbox™).

Ожидайте, что этот процесс займет время. По умолчанию, fitrauto предоставляет график оптимизации и итеративное отображение результатов оптимизации. Для получения дополнительной информации о том, как интерпретировать эти результаты, смотрите Многословное Отображение.

options = struct("UseParallel",true);
autoMdl = fitrauto(carsTrain,"MPG","OptimizeHyperparameters","all", ...
    "HyperparameterOptimizationOptions",options);
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 6).
Copying objective function to workers...
Done copying objective function to workers.
Learner types to explore: ensemble, svm, tree
Total iterations (MaxObjectiveEvaluations): 90
Total time (MaxTime): Inf

|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|    1 |       4 | Accept |           3.1825 |            1.8704 |           2.6934 |           2.6935 |         tree | MinLeafSize:             38 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             2 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     1 |
|    2 |       4 | Accept |           2.8075 |            1.8645 |           2.6934 |           2.6935 |         tree | MinLeafSize:              1 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            44 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     4 |
|    3 |       4 | Best   |           2.6934 |             1.854 |           2.6934 |           2.6935 |         tree | MinLeafSize:             29 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            52 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     6 |
|    4 |       4 | Accept |           4.1439 |            2.6026 |           2.6934 |           2.6935 |          svm | BoxConstraint:     0.010718 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         1.7547 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:              182.6 |
|    5 |       2 | Accept |           2.4136 |            7.0256 |           2.2154 |           2.6935 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:          0.64294 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             39 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|    6 |       2 | Best   |           2.2154 |            7.7597 |           2.2154 |           2.6935 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:         0.033855 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              6 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|    7 |       2 | Accept |           4.1439 |           0.27852 |           2.2154 |           2.6935 |          svm | BoxConstraint:     0.012677 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         351.81 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             140.99 |
|    8 |       6 | Accept |           4.1439 |           0.85944 |           2.2154 |           2.6935 |          svm | BoxConstraint:       37.191 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         21.113 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             33.874 |
|    9 |       6 | Accept |           2.7394 |            1.4707 |           2.2154 |           2.6935 |          svm | BoxConstraint:     0.057859 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         448.87 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             4.2169 |
|   10 |       4 | Accept |           2.5848 |            5.8685 |           2.2154 |           2.4611 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:          0.89898 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   11 |       4 | Accept |           2.6816 |             5.073 |           2.2154 |           2.4611 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             51 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   12 |       4 | Accept |           2.4608 |           0.25674 |           2.2154 |           2.4611 |         tree | MinLeafSize:              6 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            32 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   13 |       4 | Accept |           3.2336 |            6.4662 |           2.2154 |           2.4611 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:          0.56281 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:            123 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   14 |       6 | Accept |            2.845 |           0.35832 |           2.2154 |           2.4611 |          svm | BoxConstraint:    0.0027083 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         413.17 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.13572 |
|   15 |       4 | Accept |           2.7122 |            5.2558 |           2.2154 |           2.4611 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:          0.74839 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             88 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   16 |       4 | Accept |            2.845 |            0.9025 |           2.2154 |           2.4611 |          svm | BoxConstraint:    0.0027083 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         413.17 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.13572 |
|   17 |       4 | Accept |            2.845 |           0.81343 |           2.2154 |           2.4611 |          svm | BoxConstraint:    0.0027083 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         413.17 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.13572 |
|   18 |       3 | Accept |           2.6527 |            4.4298 |           2.2154 |           2.4723 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             46 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   19 |       3 | Accept |           2.5035 |           0.29266 |           2.2154 |           2.4723 |         tree | MinLeafSize:              5 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            18 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   20 |       6 | Accept |           2.8243 |           0.15229 |           2.2154 |           2.4616 |         tree | MinLeafSize:             12 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             5 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   21 |       4 | Accept |            4.143 |          0.064514 |           2.2154 |           2.4607 |         tree | MinLeafSize:            132 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             8 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   22 |       4 | Accept |            4.143 |           0.18836 |           2.2154 |           2.4607 |         tree | MinLeafSize:            138 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             3 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     7 |
|   23 |       4 | Accept |           3.3663 |           0.13449 |           2.2154 |           2.4607 |         tree | MinLeafSize:             83 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            41 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   24 |       3 | Accept |           2.3614 |             4.546 |           2.2154 |           2.4607 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   25 |       3 | Accept |           4.1439 |           0.58435 |           2.2154 |           2.4607 |          svm | BoxConstraint:    0.0050384 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.18651 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             11.818 |
|   26 |       6 | Accept |           4.1439 |           0.07419 |           2.2154 |           2.4607 |          svm | BoxConstraint:      0.19519 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.48473 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.02267 |
|   27 |       6 | Accept |           2.5796 |          0.081162 |           2.2154 |           2.4613 |         tree | MinLeafSize:              8 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            85 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   28 |       5 | Accept |           5.9862 |             5.516 |           2.2154 |           2.4622 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:         0.001143 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:            104 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   29 |       5 | Accept |           2.6716 |          0.071817 |           2.2154 |           2.4622 |         tree | MinLeafSize:              6 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            43 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   30 |       2 | Accept |           4.1439 |            33.722 |           2.2154 |           2.4815 |          svm | BoxConstraint:      0.15265 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         1.4893 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.44287 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   31 |       2 | Accept |           2.2534 |            6.2607 |           2.2154 |           2.4815 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             12 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     7 |
|   32 |       2 | Accept |           2.9788 |            6.8285 |           2.2154 |           2.4815 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:         0.010155 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             13 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   33 |       2 | Accept |           2.7529 |          0.055823 |           2.2154 |           2.4815 |         tree | MinLeafSize:              1 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:           123 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   34 |       6 | Accept |           3.0557 |            0.4318 |           2.2154 |            2.494 |         tree | MinLeafSize:             42 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             4 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     4 |
|   35 |       3 | Accept |           4.1439 |           0.27218 |           2.2154 |            2.494 |          svm | BoxConstraint:       2.1967 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.02117 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.20631 |
|   36 |       3 | Accept |           3.2946 |          0.066155 |           2.2154 |            2.494 |         tree | MinLeafSize:             88 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             2 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   37 |       3 | Accept |           4.1439 |           0.13289 |           2.2154 |            2.494 |          svm | BoxConstraint:       127.62 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0010166 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             16.049 |
|   38 |       3 | Accept |           4.1439 |           0.12273 |           2.2154 |            2.494 |          svm | BoxConstraint:       77.831 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         11.323 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             24.046 |
|   39 |       6 | Accept |           4.1439 |          0.090716 |           2.2154 |            2.494 |          svm | BoxConstraint:       1.5262 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.16982 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.09432 |
|   40 |       5 | Accept |           4.1439 |          0.060884 |           2.2154 |            2.494 |          svm | BoxConstraint:       347.06 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.024995 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.012891 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   41 |       5 | Accept |           4.1439 |          0.078944 |           2.2154 |            2.494 |          svm | BoxConstraint:     0.017688 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         968.17 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             350.72 |
|   42 |       4 | Accept |           2.5097 |            14.423 |           2.1926 |           2.1939 |          svm | BoxConstraint:       5.9191 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         699.18 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.010916 |
|   43 |       4 | Best   |           2.1926 |            6.6572 |           2.1926 |           2.1939 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:          0.03225 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              6 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   44 |       4 | Accept |           4.1439 |          0.055712 |           2.1926 |           2.1939 |          svm | BoxConstraint:   0.00076626 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.27348 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.18351 |
|   45 |       2 | Accept |           13.985 |            32.958 |           2.1926 |           2.1967 |          svm | BoxConstraint:       797.08 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         43.175 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             4.1489 |
|   46 |       2 | Accept |           4.1439 |            30.972 |           2.1926 |           2.1967 |          svm | BoxConstraint:     0.067167 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         6.6015 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.010914 |
|   47 |       2 | Accept |           2.2235 |            6.0717 |           2.1926 |           2.1967 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:         0.022919 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   48 |       6 | Accept |           4.1439 |          0.054027 |           2.1926 |           2.1967 |          svm | BoxConstraint:       1.4081 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         1068.3 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             47.856 |
|   49 |       2 | Accept |           2.5906 |            4.7498 |           2.1926 |           2.0428 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:          0.96713 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             14 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   50 |       2 | Accept |           4.1439 |          0.080148 |           2.1926 |           2.0428 |          svm | BoxConstraint:       19.339 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         336.27 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             745.75 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   51 |       2 | Accept |           2.4027 |           0.12426 |           2.1926 |           2.0428 |         tree | MinLeafSize:              8 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            80 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   52 |       2 | Accept |           3.3875 |            0.1023 |           2.1926 |           2.0428 |         tree | MinLeafSize:             84 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             4 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     7 |
|   53 |       2 | Accept |           4.1439 |          0.050927 |           2.1926 |           2.0428 |          svm | BoxConstraint:       94.294 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0014232 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:          0.0090047 |
|   54 |       6 | Accept |            4.859 |            6.2453 |           2.1926 |           2.2036 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:        0.0040831 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             10 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   55 |       1 | Accept |            2.624 |            4.7525 |           2.1926 |           2.2036 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             51 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     6 |
|   56 |       1 | Accept |           2.7473 |          0.060583 |           2.1926 |           2.2036 |         tree | MinLeafSize:              9 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:           204 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   57 |       1 | Accept |           4.1439 |          0.066677 |           2.1926 |           2.2036 |          svm | BoxConstraint:    0.0012156 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.015427 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.060481 |
|   58 |       1 | Accept |           4.1439 |          0.094823 |           2.1926 |           2.2036 |          svm | BoxConstraint:      0.44269 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.004171 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.12586 |
|   59 |       1 | Accept |           3.0883 |            0.0586 |           2.1926 |           2.2036 |         tree | MinLeafSize:             23 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             4 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   60 |       1 | Accept |           4.1439 |          0.056798 |           2.1926 |           2.2036 |          svm | BoxConstraint:     0.038648 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         1.6731 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             181.22 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   61 |       6 | Accept |           4.1439 |          0.067435 |           2.1926 |           2.2036 |          svm | BoxConstraint:    0.0073804 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.26555 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:          0.0091652 |
|   62 |       2 | Accept |           2.4796 |            4.6971 |           2.1926 |           2.2036 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              5 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     1 |
|   63 |       2 | Accept |           2.5862 |          0.087002 |           2.1926 |           2.2036 |         tree | MinLeafSize:              2 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            36 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     4 |
|   64 |       2 | Accept |           2.5227 |            4.8002 |           2.1926 |           2.2036 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             35 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   65 |       2 | Accept |           2.2692 |            5.7741 |           2.1926 |           2.2036 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:         0.025248 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             29 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   66 |       2 | Accept |           4.1439 |          0.061232 |           2.1926 |           2.2036 |          svm | BoxConstraint:     0.015213 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         121.18 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             228.77 |
|   67 |       6 | Accept |           3.0619 |           0.20501 |           2.1926 |           2.2036 |         tree | MinLeafSize:              8 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            37 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     1 |
|   68 |       2 | Accept |           4.1439 |            32.145 |           2.1926 |           2.1946 |          svm | BoxConstraint:     0.023727 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         2.1083 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.026879 |
|   69 |       2 | Accept |           2.2059 |            6.3033 |           2.1926 |           2.1946 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:         0.030274 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              9 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   70 |       2 | Accept |           2.5736 |            5.4884 |           2.1926 |           2.1946 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:         0.015531 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             76 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   71 |       2 | Accept |           2.2438 |            6.4062 |           2.1926 |           2.1946 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              6 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     7 |
|   72 |       2 | Accept |           4.1429 |            4.1039 |           2.1926 |           2.1946 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:            134 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   73 |       5 | Accept |            4.143 |            4.4894 |           2.1926 |           2.1946 |     ensemble | Method:             LSBoost |
|      |         |        |                  |                   |                  |                  |              | LearnRate:          0.17357 |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:            177 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:   NaN |
|   74 |       5 | Accept |           4.1439 |          0.054069 |           2.1926 |           2.1946 |          svm | BoxConstraint:       2.4711 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:     0.00086032 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.65606 |
|   75 |       3 | Accept |           4.1439 |           0.09691 |           2.1926 |           2.1949 |          svm | BoxConstraint:       131.74 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:      0.0031145 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:           0.028465 |
|   76 |       3 | Accept |            4.143 |          0.092964 |           2.1926 |           2.1949 |         tree | MinLeafSize:            156 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             1 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   77 |       3 | Accept |           2.3039 |            4.4363 |           2.1926 |           2.1949 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              9 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     3 |
|   78 |       5 | Accept |           2.6824 |          0.088024 |           2.1926 |           2.1949 |         tree | MinLeafSize:             11 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:             6 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     3 |
|   79 |       5 | Accept |           4.1439 |          0.065162 |           2.1926 |           2.1949 |          svm | BoxConstraint:    0.0010003 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.85686 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             699.42 |
|   80 |       2 | Accept |           10.894 |            31.235 |           2.1926 |           2.1952 |          svm | BoxConstraint:      0.05924 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         16.477 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:              1.204 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   81 |       2 | Accept |           2.3629 |             4.051 |           2.1926 |           2.1952 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   82 |       2 | Accept |           3.3755 |          0.057721 |           2.1926 |           2.1952 |         tree | MinLeafSize:             79 |
|      |         |        |                  |                   |                  |                  |              | MaxNumSplits:            65 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     3 |
|   83 |       2 | Accept |           2.3673 |            4.0629 |           2.1926 |           2.1952 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              1 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     2 |
|   84 |       6 | Accept |           2.6199 |            4.7274 |           2.1926 |           2.1952 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             53 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     6 |
|   85 |       2 | Accept |           3.1414 |            4.2529 |           2.1926 |           2.1985 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             75 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     7 |
|   86 |       2 | Accept |           2.2514 |            5.0768 |           2.1926 |           2.1985 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              4 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|   87 |       2 | Accept |           4.1439 |          0.077312 |           2.1926 |           2.1985 |          svm | BoxConstraint:       230.13 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:         15.715 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             425.18 |
|   88 |       2 | Accept |           4.1439 |           0.06662 |           2.1926 |           2.1985 |          svm | BoxConstraint:       10.758 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:       0.020507 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:             4.9755 |
|   89 |       2 | Accept |           2.2525 |            6.0028 |           2.1926 |           2.1985 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:              2 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     7 |
|   90 |       5 | Accept |           2.5768 |            4.4924 |           2.1926 |           2.1985 |     ensemble | Method:                 Bag |
|      |         |        |                  |                   |                  |                  |              | LearnRate:              NaN |
|      |         |        |                  |                   |                  |                  |              | MinLeafSize:             40 |
|      |         |        |                  |                   |                  |                  |              | NumVariablesToSample:     5 |
|===================================================================================================================================================|
| Iter | Active  | Eval   | log(1 + valLoss) | Time for training | Observed min     | Estimated min    | Learner      | Hyperparameter:       Value |
|      | workers | result |                  | & validation (sec)| log(1 + valLoss) | log(1 + valLoss) |              |                             |
|===================================================================================================================================================|
|   91 |       5 | Accept |           4.1439 |          0.062303 |           2.1926 |           2.1985 |          svm | BoxConstraint:       2.5681 |
|      |         |        |                  |                   |                  |                  |              | KernelScale:        0.19989 |
|      |         |        |                  |                   |                  |                  |              | Epsilon:            0.59994 |

__________________________________________________________
Optimization completed.
Total iterations: 91
Total elapsed time: 279.9304 seconds
Total time for training and validation: 366.0998 seconds

Best observed learner is an ensemble model with:
	Method:             LSBoost
	LearnRate:          0.03225
	MinLeafSize:              6
	NumVariablesToSample:   NaN
Observed log(1 + valLoss): 2.1926
Time for training and validation: 6.6572 seconds

Best estimated learner (returned model) is an ensemble model with:
	Method:             LSBoost
	LearnRate:          0.03225
	MinLeafSize:              6
	NumVariablesToSample:   NaN
Estimated log(1 + valLoss): 2.1985
Estimated time for training and validation: 6.572 seconds

Documentation for fitrauto display

Итоговая модель возвращена fitrauto соответствует лучшему предполагаемому ученику. Прежде, чем возвратить модель, функция переобучает его с помощью целых обучающих данных (carsTrain), перечисленный Learner (или модель) тип и отображенные гиперзначения параметров.

Создайте простую модель

Создайте простую модель linearMdl линейной регрессии при помощи fitlm функция.

linearMdl = fitlm(carsTrain);

Несмотря на то, что linearMdl объект не имеет тех же самых свойств и методов как autoMdl объект, можно использовать обе модели, чтобы предсказать значения отклика для новых данных при помощи predict объектная функция.

Сравните эффективность набора тестов моделей

Сравните эффективность linearMdl и autoMdl модели на тестовых данных установлены. Для каждой модели вычислите среднеквадратическую ошибку (MSE) набора тестов. Меньшие значения MSE указывают на лучшую эффективность.

ypred = predict(linearMdl,carsTest);
linearMSE = mean((carsTest.MPG-ypred).^2,"omitnan")
linearMSE = 11.0981
autoMSE = loss(autoMdl,carsTest,"MPG")
autoMSE = 8.8322

autoMdl модель, кажется, превосходит по характеристикам linearMdl модель.

Входные параметры

свернуть все

Выборочные данные в виде таблицы. Каждая строка Tbl соответствует одному наблюдению, и каждый столбец соответствует одному предиктору. Опционально, Tbl может содержать один дополнительный столбец для переменной отклика. Многостолбцовые переменные и массивы ячеек кроме массивов ячеек из символьных векторов не приняты.

Если Tbl содержит переменную отклика, и вы хотите использовать все остающиеся переменные в Tbl как предикторы, задайте переменную отклика с помощью ResponseVarName.

Если Tbl содержит переменную отклика, и вы хотите использовать только подмножество остающихся переменных в Tbl как предикторы, задайте формулу с помощью formula.

Если Tbl не содержит переменную отклика, задает переменную отклика с помощью Y. Длина переменной отклика и количество строк в Tbl должно быть равным.

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

Имя переменной отклика в виде имени переменной в Tbl. Переменная отклика должна быть числовым вектором.

Необходимо задать ResponseVarName как вектор символов или строковый скаляр. Например, если переменная отклика Y хранится как Tbl.Y, затем задайте его как "Y". В противном случае программное обеспечение обрабатывает все столбцы Tbl, включая Y, как предикторы, когда обучение модель.

Типы данных: char | string

Объяснительная модель переменной отклика и подмножество переменных предикторов в виде вектора символов или строкового скаляра в форме "Y~x1+x2+x3". В этой форме, Y представляет переменную отклика и x1x2 , и x3 представляйте переменные предикторы.

Задавать подмножество переменных в Tbl как предикторы для обучения модель, используйте формулу. Если вы задаете формулу, то программное обеспечение не использует переменных в Tbl это не появляется в formula.

Имена переменных в формуле должны быть оба именами переменных в Tbl (Tbl.Properties.VariableNames) и допустимый MATLAB® идентификаторы. Можно проверить имена переменных в Tbl при помощи isvarname функция. Если имена переменных не допустимы, то можно преобразовать их при помощи matlab.lang.makeValidName функция.

Типы данных: char | string

Данные об ответе в виде числового вектора. Длина Y должно быть равно количеству строк в Tbl или X.

Чтобы задать имя переменной отклика, используйте ResponseName аргумент значения имени.

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

Данные о предикторе в виде числовой матрицы.

Каждая строка X соответствует одному наблюдению, и каждый столбец соответствует одному предиктору.

Длина Y и количество строк в X должно быть равным.

Задавать имена предикторов в порядке их внешнего вида в X, используйте PredictorNames аргумент значения имени.

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

Примечание

Программное обеспечение обрабатывает NaN, пустой символьный вектор (''), пустая строка (""), <missing>, и <undefined> элементы как недостающие данные. Программное обеспечение удаляет строки данных, соответствующих отсутствующим значениям в переменной отклика. Однако обработка отсутствующих значений в данных о предикторе X или Tbl варьируется среди моделей (или ученики).

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: "HyperparameterOptimizationOptions",struct("MaxObjectiveEvaluations",200,"Verbose",2) задает, чтобы запустить 200 итераций процесса оптимизации (то есть, попробуйте 200 комбинаций гиперпараметра модели), и отобразить информацию в Командном окне о следующей комбинации гиперпараметра модели, которая будет оценена.
Опции оптимизатора

свернуть все

Типы моделей регрессии, чтобы попробовать во время оптимизации в виде значения в первой приведенной ниже таблице или одного или нескольких имен ученика во второй таблице. Задайте несколько имен ученика как массив строк или массив ячеек.

ЗначениеОписание
"auto"fitrauto автоматически выбирает подмножество учеников, подходящих для данного предиктора и данных об ответе. У учеников могут быть гиперзначения параметров модели, которые отличаются от значения по умолчанию. Для получения дополнительной информации смотрите Автоматический Выбор Учеников.
"all"fitrauto выбирает всех возможных учеников.
"all-linear"fitrauto выбирает линейный ("linear") ученики.
"all-nonlinear"fitrauto выбирает всех нелинейных учеников: "ensemble", "gp", "kernel", "svm" (с Гауссовым или полиномиальным ядром), и "tree".

Примечание

Для большего КПД, fitrauto не выбирает следующие комбинации моделей, когда вы задаете одно из предыдущих значений.

  • "kernel" и "svm" (с Гауссовым ядром) — fitrauto выбирает первое, когда данные о предикторе имеют больше чем 11 000 наблюдений и второе в противном случае.

  • "linear" и "svm" (с линейным ядром) — fitrauto выбирает первое.

Имя ученикаОписание
"ensemble"Модель регрессии ансамбля
"gp"Гауссова модель регрессии процесса
"kernel"Модель регрессии ядра
"linear"Модель линейной регрессии для высоко-размерных данных
"svm"Модель регрессии машины опорных векторов
"tree"Дерево регрессии выбора из двух альтернатив

Пример: "Learners","all"

Пример: "Learners","ensemble"

Пример: "Learners",["gp","svm"]

Гиперпараметры, чтобы оптимизировать в виде "auto" или "all". optimizable гиперпараметры зависят от модели (или ученик), как описано в этой таблице.

Имя ученикаГиперпараметры для "auto"Дополнительные гиперпараметры для "all"Примечания
"ensemble"Method, NumLearningCycles, LearnRate, MinLeafSizeMaxNumSplits, NumVariablesToSample

Когда ансамбль Method значение является повышающим методом, ансамбль NumBins значением является 50.

Для получения дополнительной информации, включая области значений поиска гиперпараметра, смотрите OptimizeHyperparameters. Обратите внимание на то, что вы не можете изменить области значений поиска гиперпараметра, когда вы используете fitrauto.

"gp"SigmaBasisFunction, KernelFunction, KernelScale (KernelParameters), Standardize

fitrauto функция игнорирует все опции ядра ARD и, поэтому, выбирает среди KernelFunction значения "exponential", "matern32", "matern52", "rationalquadratic", и "squaredexponential" когда OptimizeHyperparameters значением является "all".

Для получения дополнительной информации, включая области значений поиска гиперпараметра, смотрите OptimizeHyperparameters. Обратите внимание на то, что вы не можете изменить области значений поиска гиперпараметра, когда вы используете fitrauto.

"kernel"Epsilon, KernelScale, LambdaLearner, NumExpansionDimensionsДля получения дополнительной информации, включая области значений поиска гиперпараметра, смотрите OptimizeHyperparameters. Обратите внимание на то, что вы не можете изменить области значений поиска гиперпараметра, когда вы используете fitrauto.
"linear"Lambda, LearnerRegularizationДля получения дополнительной информации, включая области значений поиска гиперпараметра, смотрите OptimizeHyperparameters. Обратите внимание на то, что вы не можете изменить области значений поиска гиперпараметра, когда вы используете fitrauto.
"svm"BoxConstraint\epsilon, KernelScaleKernelFunction, PolynomialOrder, Standardize

  • Когда Learners значением является "all-linear", fitrauto функция не оптимизирует KernelFunction или PolynomialOrder гиперпараметры, когда OptimizeHyperparameters значением является "all".

  • Когда Learners значением является "all-nonlinear", fitrauto функция выбирает среди KernelFunction значения "gaussian" и "polynomial", независимо от OptimizeHyperparameters значение.

Для получения дополнительной информации, включая области значений поиска гиперпараметра, смотрите OptimizeHyperparameters. Обратите внимание на то, что вы не можете изменить области значений поиска гиперпараметра, когда вы используете fitrauto.

"tree"MinLeafSizeMaxNumSplitsДля получения дополнительной информации, включая области значений поиска гиперпараметра, смотрите OptimizeHyperparameters. Обратите внимание на то, что вы не можете изменить области значений поиска гиперпараметра, когда вы используете fitrauto.

Примечание

Когда Learners установлен в значение кроме "auto", значения по умолчанию для гиперпараметров модели, не будучи оптимизированным соответствие подходящие значения функции по умолчанию, если в противном случае не обозначено в примечаниях к таблице. Когда Learners установлен в "auto", оптимизированные области значений поиска гиперпараметра и неоптимизированные гиперзначения параметров могут варьироваться, в зависимости от характеристик обучающих данных. Для получения дополнительной информации смотрите Автоматический Выбор Учеников.

Пример: "OptimizeHyperparameters","all"

Опции для оптимизации в виде структуры. Все поля в структуре являются дополнительными.

Имя поляЗначенияЗначение по умолчанию
Optimizer
  • "bayesopt" — Использует Байесовую оптимизацию. Для получения дополнительной информации смотрите Байесовую Оптимизацию.

  • "asha" — Использование оптимизация ASHA. Для получения дополнительной информации см. Оптимизацию ASHA.

"bayesopt"
MaxObjectiveEvaluationsМаксимальное количество итераций (оценки целевой функции) в виде положительного целого числа

30*L, где L количество учеников (см. Learners)

  • Это значение является значением по умолчанию когда Optimizer поле установлено в "bayesopt".

  • Для значения по умолчанию, когда Optimizer поле установлено в "asha", смотрите Количество Итераций ASHA.

MaxTime

Ограничение по времени в виде положительного вещественного числа. Ограничение по времени находится в секундах, как измерено tic и toc. Время выполнения может превысить MaxTime потому что MaxTime не делает оценок функции обработки прерываний.

Inf
ShowPlotsЛогическое значение, указывающее, показать ли график прогресса оптимизации. Если true, это поле строит наблюдаемую минимальную потерю валидации против номера итерации. Когда вы используете Байесовую оптимизацию, график также показывает предполагаемую минимальную потерю валидации.true
SaveIntermediateResultsЛогическое значение, указывающее, сохранить ли результаты. Если true, это поле перезаписывает переменную рабочей области в каждой итерации. Переменной является BayesianOptimization возразите названному BayesoptResults если вы используете Байесовую оптимизацию и таблицу под названием ASHAResults если вы используете оптимизацию ASHA.false
Verbose

Отображение в командной строке:

  • 0 — Никакое итеративное отображение

  • 1 Итеративное отображение

  • 2 — Итеративное отображение с дополнительной информацией о следующем вопросе, который будет оценен

1
UseParallelЛогическое значение, указывающее, запустить ли оптимизацию параллельно, которая требует Parallel Computing Toolbox™. Из-за невоспроизводимости синхронизации параллели, параллельная оптимизация не обязательно приводит к восстанавливаемым результатам.false
Repartition

Логическое значение, указывающее, повторно разделить ли перекрестную проверку в каждой итерации. Если false, оптимизатор использует один раздел для оптимизации.

true обычно дает большинство устойчивых результатов, потому что эта установка принимает шум разделения во внимание. Однако для хороших результатов, true требует, по крайней мере, вдвое большего количества вычислений функции.

false
MaxTrainingSetSize

Максимальное количество наблюдений в каждом наборе обучающих данных для оптимизации ASHA в виде положительного целого числа. Это значение совпадает с самым большим размером набора обучающих данных.

Примечание

Если вы хотите задать это значение, Optimizer поле должно быть установлено в "asha".

Самый большой доступный учебный размер раздела

  • Когда оптимизация использует k- сверните перекрестную проверку, этим значением является (k – 1)*n/k, где n общее количество наблюдений.

  • Когда оптимизация использует cvpartition объект cvp, этим значением является max(cvp.TrainSize).

  • Когда оптимизация использует часть затяжки p, этим значением является (1 – p)*n, где n общее количество наблюдений.

MinTrainingSetSize

Минимальное количество наблюдений в каждом наборе обучающих данных для оптимизации ASHA в виде положительного целого числа. Это значение является нижней границей для самого маленького размера набора обучающих данных.

Примечание

Если вы хотите задать это значение, Optimizer поле должно быть установлено в "asha".

100
Задайте только одну из следующих трех опций.
CVPartitioncvpartition объект, созданный cvpartition"Kfold",5 если вы не задаете поля перекрестной проверки
HoldoutСкаляр в области значений (0,1) представление части затяжки
KfoldЦелое число, больше, чем 1

Пример: "HyperparameterOptimizationOptions",struct("UseParallel",true)

Опции регрессии

свернуть все

Категориальные предикторы перечисляют в виде одного из значений в этой таблице.

ЗначениеОписание
Вектор из положительных целых чисел

Каждая запись в векторе является значением индекса, указывающим, что соответствующий предиктор является категориальным. Значения индекса между 1 и p, где p количество предикторов, используемых, чтобы обучить модель.

Если fitrauto использует подмножество входных переменных как предикторы, затем функция индексирует предикторы с помощью только подмножество. CategoricalPredictors значения не считают переменную отклика, переменную веса наблюдения или любые другие переменные, которые не использует функция.

Логический вектор

true запись означает, что соответствующий предиктор является категориальным. Длиной вектора является p.

Символьная матрицаКаждая строка матрицы является именем переменного предиктора. Имена должны совпадать с записями в PredictorNames. Заполните имена дополнительными пробелами, таким образом, каждая строка символьной матрицы имеет ту же длину.
Массив строк или массив ячеек из символьных векторовКаждым элементом в массиве является имя переменного предиктора. Имена должны совпадать с записями в PredictorNames.
"all"Все предикторы являются категориальными.

По умолчанию, если данные о предикторе находятся в таблице (Tbl), fitrauto принимает, что переменная является категориальной, если это - логический вектор, категориальный вектор, символьный массив, массив строк или массив ячеек из символьных векторов. Однако ученики, которые используют деревья решений, принимают, что математически упорядоченные категориальные векторы являются непрерывными переменными. Если данные о предикторе являются матрицей (X), fitrauto принимает, что все предикторы непрерывны. Чтобы идентифицировать любые другие предикторы как категориальные предикторы, задайте их при помощи CategoricalPredictors аргумент значения имени.

Для получения дополнительной информации о том, как подбор кривой функциям обрабатывает категориальные предикторы, видит Автоматическое Создание Фиктивных Переменных.

Пример: "CategoricalPredictors","all"

Типы данных: single | double | logical | char | string | cell

Переменный предиктор называет в виде массива строк уникальных имен или массива ячеек уникальных векторов символов. Функциональность PredictorNames зависит от способа, которым вы снабжаете обучающими данными.

  • Если вы предоставляете X и Y, затем можно использовать PredictorNames присваивать имена к переменным предикторам в X.

    • Порядок имен в PredictorNames должен соответствовать порядку следования столбцов X. Таким образом, PredictorNames{1} имя X(:,1), PredictorNames{2} имя X(:,2), и так далее. Кроме того, size(X,2) и numel(PredictorNames) должно быть равным.

    • По умолчанию, PredictorNames {'x1','x2',...}.

  • Если вы предоставляете Tbl, затем можно использовать PredictorNames выбрать который переменные предикторы использовать в обучении. Таким образом, fitrauto использование только переменные предикторы в PredictorNames и переменная отклика во время обучения.

    • PredictorNames должно быть подмножество Tbl.Properties.VariableNames и не может включать имя переменной отклика.

    • По умолчанию, PredictorNames содержит имена всех переменных предикторов.

    • Хорошая практика должна задать предикторы для обучения с помощью любого PredictorNames или formula, но не то и другое одновременно.

Пример: "PredictorNames",["SepalLength","SepalWidth","PetalLength","PetalWidth"]

Типы данных: string | cell

Имя переменной отклика в виде вектора символов или строкового скаляра.

  • Если вы предоставляете Y, затем можно использовать ResponseName задавать имя для переменной отклика.

  • Если вы предоставляете ResponseVarName или formula, затем вы не можете использовать ResponseName.

Пример: "ResponseName","response"

Типы данных: char | string

Веса наблюдения в виде положительного числового вектора или имени переменной в Tbl. Веса программного обеспечения каждое наблюдение в X или Tbl с соответствующим значением в Weights. Длина Weights должен равняться количеству строк в X или Tbl.

Если вы задаете входные данные как таблицу Tbl, затем Weights может быть имя переменной в Tbl это содержит числовой вектор. В этом случае необходимо задать Weights как вектор символов или строковый скаляр. Например, если вектор весов W хранится как Tbl.W, затем задайте его как "W". В противном случае программное обеспечение обрабатывает все столбцы Tbl, включая W, как предикторы или переменная отклика, когда обучение модель.

По умолчанию, Weights ones(n,1), где n количество наблюдений в X или Tbl.

Программное обеспечение нормирует Weights суммировать к 1.

Типы данных: single | double | char | string

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

свернуть все

Обученная модель регрессии, возвращенная как один из объектов модели регрессии в этой таблице.

Имя ученикаВозвращенный объект модели
"ensemble"CompactRegressionEnsemble
"gp"CompactRegressionGP
"kernel"RegressionKernel
"linear"RegressionLinear
"svm"CompactRegressionSVM
"tree"CompactRegressionTree

Результаты оптимизации, возвращенные как BayesianOptimization возразите, используете ли вы Байесовую оптимизацию или таблицу, если вы используете оптимизацию ASHA. Для получения дополнительной информации смотрите Байесовую Оптимизацию и Оптимизацию ASHA.

Больше о

свернуть все

Многословное отображение

Когда вы устанавливаете Verbose поле HyperparameterOptimizationOptions аргумент значения имени к 1 или 2, fitrauto функция обеспечивает итеративное отображение результатов оптимизации.

Следующая таблица описывает столбцы в отображении и их записях.

ColumnName Описание
IterНомер итерации — можно установить предел к количеству итераций при помощи MaxObjectiveEvaluations поле HyperparameterOptimizationOptions аргумент значения имени.
Active workersКоличество активных параллельных рабочих — Этот столбец появляется только, когда вы запускаете оптимизацию параллельно путем установки UseParallel поле HyperparameterOptimizationOptions аргумент значения имени к true.
Eval result

Один из следующих результатов оценки:

  • Best — Ученик и гиперзначения параметров в этой итерации дают минимальную наблюдаемую потерю валидации, вычисленную до сих пор. Таким образом,   log(1 + valLoss) значение является самым маленьким, вычисленным до сих пор.

  • Accept — Ученик и гиперзначения параметров в этой итерации дают значимый (например, non-NaN) значения валидации потерь.

  • Error — Ученик и гиперзначения параметров в этой итерации приводят к ошибке (например,   log(1 + valLoss) значение NaN).

  log(1 + valLoss)Преобразованная в журнал потеря валидации вычисляется для ученика и значений гиперпараметра в этой итерации — В частности, fitrauto вычисляет журнал (1 + valLoss), где valLoss является среднеквадратической ошибкой (MSE) перекрестной проверки по умолчанию. Можно изменить схему валидации при помощи CVPartition, Holdout, или Kfold поле 'HyperparameterOptimizationOptions' аргумент значения имени.
Time for training & validation (sec)Время, потраченное, чтобы обучаться и вычислить потерю валидации для модели с учеником и гиперзначениями параметров в этой итерации (в секундах) — Когда вы используете Байесовую оптимизацию, это значение, исключает время, требуемое обновить модель целевой функции, обеспеченную Байесовым процессом оптимизации. Для получения дополнительной информации смотрите Байесовую Оптимизацию.
  Observed min log(1 + valLoss)

Наблюдаемый минимум преобразованная в журнал потеря валидации, вычисленная до сих пор — Это значение, соответствует самому маленькому   log(1 + valLoss) значение, вычисленное до сих пор в процессе оптимизации.

По умолчанию, fitrauto возвращает график оптимизации, которая отображает темно-синие точки для наблюдаемого минимума преобразованные в журнал значения валидации потерь. Этот график не появляется когда ShowPlots поле HyperparameterOptimizationOptions аргумент значения имени установлен в false.

  Estimated min log(1 + valLoss)

Преобразованная в журнал потеря валидации предполагаемого минимума — Когда вы используете Байесовую оптимизацию, fitrauto обновления, в каждой итерации, модель целевой функции, обеспеченная Байесовым процессом оптимизации и использованием эта модель, чтобы оценить минимум преобразованная в журнал потеря валидации. Для получения дополнительной информации смотрите Байесовую Оптимизацию.

По умолчанию, fitrauto возвращает график оптимизации, которая отображает голубые точки для предполагаемого минимума преобразованные в журнал значения валидации потерь. Этот график не появляется когда ShowPlots поле HyperparameterOptimizationOptions аргумент значения имени установлен в false.

Примечание

Этот столбец появляется только, когда вы используете Байесовую оптимизацию, то есть, когда Optimizer поле HyperparameterOptimizationOptions аргумент значения имени установлен в "bayesopt".

Training set size

Количество наблюдений, используемых в каждом наборе обучающих данных в этой итерации — Использование MaxTrainingSetSize и MinTrainingSetSize поля HyperparameterOptimizationOptions аргумент значения имени, чтобы задать границы для размера набора обучающих данных. Для получения дополнительной информации см. Оптимизацию ASHA.

Примечание

Этот столбец появляется только, когда вы используете оптимизацию ASHA, то есть, когда Optimizer поле HyperparameterOptimizationOptions аргумент значения имени установлен в "asha".

LearnerТип модели, оцененный в этой итерации — Задает учеников, используемых в оптимизации при помощи Learners аргумент значения имени.
Hyperparameter: ValueЗначения гиперпараметра в этой итерации — Задают гиперпараметры, используемые в оптимизации при помощи OptimizeHyperparameters аргумент значения имени.

Отображение также включает эти описания модели:

  • Best observed learner — Эта модель, с перечисленным типом ученика и значениями гиперпараметра, уступает, финал наблюдал минимальную (преобразованную в журнал) потерю валидации. Когда вы используете оптимизацию ASHA, fitrauto переобучает модель на целом обучающем наборе данных и возвращает его как Mdl вывод .

  • Best estimated learner — Эта модель, с перечисленным типом ученика и гиперзначениями параметров, уступает, финал оценил минимальную потерю валидации (преобразованную в журнал), когда вы используете Байесовую оптимизацию. В этом случае, fitrauto переобучает модель на целом обучающем наборе данных и возвращает его как Mdl вывод .

    Примечание

    Best estimated learner модель появляется только, когда вы используете Байесовую оптимизацию, то есть, когда Optimizer поле HyperparameterOptimizationOptions аргумент значения имени установлен в "bayesopt".

Советы

  • В зависимости от размера вашего набора данных, количества учеников, которых вы задаете, и метод оптимизации, который вы выбираете, fitrauto может занять время, чтобы запуститься.

    • Если у вас есть лицензия Parallel Computing Toolbox, можно ускорить расчеты путем выполнения оптимизации параллельно. Для этого задайте "HyperparameterOptimizationOptions",struct("UseParallel",true). Можно включать дополнительные поля в структуру, чтобы управлять другими аспектами оптимизации. Смотрите HyperparameterOptimizationOptions.

    • Если fitrauto с Байесовой оптимизацией занимает много времени, чтобы запуститься из-за количества наблюдений в вашем наборе обучающих данных (например, более чем 10 000), рассмотреть использование fitrauto с оптимизацией ASHA вместо этого. Оптимизация ASHA часто находит хорошие решения быстрее, чем Байесова оптимизация для наборов данных со многими наблюдениями. Чтобы использовать оптимизацию ASHA, задайте "HyperparameterOptimizationOptions",struct("Optimizer","asha"). Можно включать дополнительные поля в структуру, чтобы управлять дополнительными аспектами оптимизации. В частности, если вы имеете ограничение времени, задаете MaxTime поле HyperparameterOptimizationOptions структура, чтобы ограничить номер секунд fitrauto запуски.

Алгоритмы

свернуть все

Автоматический выбор учеников

Когда вы задаете "Learners","auto", fitrauto функция анализирует предиктор и данные об ответе для того, чтобы выбрать соответствующих учеников. Функция рассматривает, имеет ли набор данных какую-либо из этих характеристик:

  • Категориальные предикторы

  • Отсутствующие значения больше чем для 5% данных

  • Широкие данные, где количество предикторов больше или равно количеству наблюдений

  • Высоко-размерные данные, где количество предикторов больше 100

  • Большие данные, где количество наблюдений больше 50,000

Выбранные ученики всегда являются подмножеством перечисленных в Learners таблица. Однако связанные модели, которые попробовали во время процесса оптимизации, могут иметь различные значения по умолчанию для гиперпараметров, не будучи оптимизированным, а также различных поисковых областей значений для оптимизируемых гиперпараметров.

Байесова оптимизация

Цель Байесовой оптимизации и оптимизации в целом, состоит в том, чтобы найти точку, которая минимизирует целевую функцию. В контексте fitrauto, точка является типом ученика вместе с набором гиперзначений параметров для ученика (см. Learners и OptimizeHyperparameters), и целевая функция является журналом (1 + valLoss), где valLoss является среднеквадратической ошибкой (MSE) перекрестной проверки по умолчанию. Байесова оптимизация, реализованная в fitrauto внутренне обеспечивает multi-RegressionGP модель целевой функции. Таким образом, разделения модели целевой функции вдоль типа ученика и, для данного ученика, модель является моделью Gaussian process regression (GPR). (Эта базовая модель отличается от одной модели GPR, используемой другими функциями Statistics and Machine Learning Toolbox™, которые используют Байесовую оптимизацию.) Байесова оптимизация обучает базовую модель при помощи оценок целевой функции и определяет следующий вопрос, чтобы оценить при помощи функции захвата ("expected-improvement"). Для получения дополнительной информации смотрите Ожидаемое Улучшение. Функция захвата балансируется между выборкой в точках с низкими смоделированными значениями целевой функции и исследованием областей, которые еще не хорошо моделируются. В конце оптимизации, fitrauto выбирает точку с минимальным значением модели целевой функции, среди точек, оцененных во время оптимизации. Для получения дополнительной информации смотрите "Criterion","min-visited-mean" аргумент значения имени bestPoint.

АША Оптимизация

Асинхронный последовательный алгоритм сокращения вдвое (ASHA) в fitrauto случайным образом выбирает несколько моделей с различными гиперзначениями параметров (см. Learners и OptimizeHyperparameters) и обучает их на небольшом подмножестве обучающих данных. Если эффективность конкретной модели обещает, модель продвинута и обучена на большей сумме обучающих данных. Этот процесс повторения и успешные модели обучен на прогрессивно больших объемах данных. По умолчанию, в конце оптимизации, fitrauto выбирает модель, которая имеет самый низкий журнал (1 + valLoss) значение, где valLoss является среднеквадратической ошибкой (MSE) перекрестной проверки.

В каждой итерации ASHA любой выбирает ранее обученную модель и продвигает его (то есть, переобучает модель с помощью большего количества обучающих данных), или выбирает новую модель (тип ученика и гиперзначения параметров) использование случайного поиска. ASHA продвигает модели можно следующим образом:

  • Алгоритм ищет группу моделей с самым большим размером набора обучающих данных, для которого это условие не содержит: floor(g/4) из моделей были продвинуты, где g количество моделей в группе.

  • Среди группы моделей ASHA выбирает модель с самым низким журналом (1 + valLoss) значение и переобучает ту модель с 4*(Training Set Size) наблюдения.

  • Если никакая такая группа моделей не существует, то ASHA выбирает новую модель вместо того, чтобы продвинуть старую и обучает новую модель с помощью самого маленького размера набора обучающих данных.

Когда модель обучена на подмножестве обучающих данных, ASHA вычисляет перекрестную проверку MSE в можно следующим образом:

  • Для каждого учебного сгиба алгоритм выбирает случайную выборку наблюдений (размера Training set size) использование не расслоило выборку, и затем обучает модель на том подмножестве данных.

  • Алгоритм затем тестирует подобранную модель на тестовом сгибе (то есть, наблюдения не в учебном сгибе) и вычисляет MSE.

  • Наконец, алгоритм составляет в среднем результаты через все сгибы.

Для получения дополнительной информации о ASHA см. [1].

Количество итераций ASHA

Когда вы используете оптимизацию ASHA, количество по умолчанию итераций зависит от количества наблюдений в данных, количества типов ученика, использования параллельной обработки и типа перекрестной проверки. Алгоритм выбирает количество итераций, таким образом что для типов ученика L (см. Learners), fitrauto обучает модели L на самом большом размере набора обучающих данных.

Эта таблица описывает количество по умолчанию итераций на основе данных технических требований, когда вы используете 5-кратную перекрестную проверку. Обратите внимание на то, что n представляет количество наблюдений, и L представляет количество типов ученика.

Количество наблюдений

n

Количество по умолчанию итераций

(запуститесь в сериале),

Количество по умолчанию итераций

runInParallel,

n <50030*Ln слишком мал, чтобы реализовать оптимизацию ASHA, и fitrauto реализует случайный поиск, чтобы найти и оценить модели вместо этого.30*Ln слишком мал, чтобы реализовать оптимизацию ASHA, и fitrauto реализует случайный поиск, чтобы найти и оценить модели вместо этого.
500 ≤ n <20005*L5* (L + 1)
2 000 ≤ n <800021*L21* (L + 1)
8 000 ≤ n <32,00085*L85* (L + 1)
32 000 ≤ n341*L341* (L + 1)

Альтернативная функциональность

  • Если вы не уверены, какие модели работают лучше всего на ваш набор данных, можно альтернативно использовать приложение Regression Learner. Используя приложение, можно выполнить гиперпараметр, настраивающийся для различных моделей, и выбрать оптимизированную модель, которая выполняет лучше всего. Несмотря на то, что необходимо выбрать определенную модель, прежде чем можно будет настроить гиперпараметры модели, Regression Learner обеспечивает большую гибкость для выбора optimizable гиперпараметров и установки гиперзначений параметров. Приложение также позволяет вам обучать множество моделей линейной регрессии (см. Модели Линейной регрессии). Однако вы не можете оптимизировать параллельно, оптимизировать "linear" или "kernel" ученики, задайте веса наблюдения или используйте оптимизацию ASHA в приложении. Для получения дополнительной информации смотрите Гипероптимизацию параметров управления в Приложении Regression Learner.

  • Если вы знаете, какие модели могут удовлетворить вашим данным, можно альтернативно использовать соответствующие подходящие функции модели и задать OptimizeHyperparameters аргумент значения имени, чтобы настроить гиперпараметры. Можно сравнить результаты через модели, чтобы выбрать лучшую модель регрессии. Поскольку пример этого процесса применился к моделям классификации, смотрите, что Двигающий Выбор Модели Автоматизации Использует Байесовую Оптимизацию.

Ссылки

[1] Литий, Лиам, Кевин Джемисон, Afshin Rostamizadeh, Екатерина Гонина, Мориц Хардт, Бенджамин Речт и Амит Тэлволкэр. “Система для Настройки Гиперпараметра С массовым параллелизмом”. ArXiv:1810.05934v5 [Cs], 16 марта 2020. https://arxiv.org/abs/1810.05934v5.

Расширенные возможности

Введенный в R2020b