Возобновите обучение Гауссовой модели регрессии ядра
продолжает обучение с теми же опциями, используемыми, чтобы обучить UpdatedMdl = resume(Mdl,X,Y)Mdl, включая обучающие данные (данные о предикторе в X и данные об ответе в Y) и расширение функции. Обучение запускается в текущих предполагаемых параметрах в Mdl. Функция возвращает новую Гауссову модель UpdatedMdl регрессии ядра.
возвращает новую модель регрессии ядра с дополнительными опциями, заданными одним или несколькими аргументами пары "имя-значение". Например, можно изменить опции управления сходимостью, такие как допуски сходимости и максимальное количество дополнительных итераций оптимизации.UpdatedMdl = resume(Mdl,X,Y,Name,Value)
[ также возвращает подходящую информацию в массиве структур UpdatedMdl,FitInfo] = resume(___)FitInfo использование любого из входных параметров в предыдущих синтаксисах.
Возобновите обучение Гауссова модель регрессии ядра для большего количества итераций, чтобы улучшить потерю регрессии.
Загрузите carbig набор данных.
load carbigЗадайте переменные предикторы (X) и переменная отклика (Y).
X = [Acceleration,Cylinders,Displacement,Horsepower,Weight]; Y = MPG;
Удалите строки X и Y где любой массив имеет NaN значения. Удаление строк с NaN значения перед передающими данными к fitrkernel может ускорить обучение и уменьшать использование памяти.
R = rmmissing([X Y]); % Data with missing entries removed
X = R(:,1:5);
Y = R(:,end); Зарезервируйте 10% наблюдений как выборка затяжки. Извлеките обучение и протестируйте индексы из определения раздела.
rng(10) % For reproducibility N = length(Y); cvp = cvpartition(N,'Holdout',0.1); idxTrn = training(cvp); % Training set indices idxTest = test(cvp); % Test set indices
Стандартизируйте обучающие данные и обучите модель регрессии ядра. Установите предел итерации к 5 и задайте 'Verbose',1 отобразить диагностическую информацию.
Xtrain = X(idxTrn,:); Ytrain = Y(idxTrn); [Ztrain,tr_mu,tr_sigma] = zscore(Xtrain); % Standardize the training data tr_sigma(tr_sigma==0) = 1; Mdl = fitrkernel(Ztrain,Ytrain,'IterationLimit',5,'Verbose',1)
|=================================================================================================================| | Solver | Pass | Iteration | Objective | Step | Gradient | Relative | sum(beta~=0) | | | | | | | magnitude | change in Beta | | |=================================================================================================================| | LBFGS | 1 | 0 | 5.691016e+00 | 0.000000e+00 | 5.852758e-02 | | 0 | | LBFGS | 1 | 1 | 5.086537e+00 | 8.000000e+00 | 5.220869e-02 | 9.846711e-02 | 256 | | LBFGS | 1 | 2 | 3.862301e+00 | 5.000000e-01 | 3.796034e-01 | 5.998808e-01 | 256 | | LBFGS | 1 | 3 | 3.460613e+00 | 1.000000e+00 | 3.257790e-01 | 1.615091e-01 | 256 | | LBFGS | 1 | 4 | 3.136228e+00 | 1.000000e+00 | 2.832861e-02 | 8.006254e-02 | 256 | | LBFGS | 1 | 5 | 3.063978e+00 | 1.000000e+00 | 1.475038e-02 | 3.314455e-02 | 256 | |=================================================================================================================|
Mdl =
RegressionKernel
ResponseName: 'Y'
Learner: 'svm'
NumExpansionDimensions: 256
KernelScale: 1
Lambda: 0.0028
BoxConstraint: 1
Epsilon: 0.8617
Properties, Methods
Mdl a RegressionKernel модель.
Стандартизируйте тестовые данные с помощью того же среднего и стандартного отклонения столбцов обучающих данных. Оцените нечувствительную к эпсилону ошибку для набора тестов.
Xtest = X(idxTest,:); Ztest = (Xtest-tr_mu)./tr_sigma; % Standardize the test data Ytest = Y(idxTest); L = loss(Mdl,Ztest,Ytest,'LossFun','epsiloninsensitive')
L = 2.0674
Продолжите обучение модель при помощи resume. Эта функция продолжает обучение с теми же опциями, используемыми в учебном Mdl.
UpdatedMdl = resume(Mdl,Ztrain,Ytrain);
|=================================================================================================================| | Solver | Pass | Iteration | Objective | Step | Gradient | Relative | sum(beta~=0) | | | | | | | magnitude | change in Beta | | |=================================================================================================================| | LBFGS | 1 | 0 | 3.063978e+00 | 0.000000e+00 | 1.475038e-02 | | 256 | | LBFGS | 1 | 1 | 3.007822e+00 | 8.000000e+00 | 1.391637e-02 | 2.603966e-02 | 256 | | LBFGS | 1 | 2 | 2.817171e+00 | 5.000000e-01 | 5.949008e-02 | 1.918084e-01 | 256 | | LBFGS | 1 | 3 | 2.807294e+00 | 2.500000e-01 | 6.798867e-02 | 2.973097e-02 | 256 | | LBFGS | 1 | 4 | 2.791060e+00 | 1.000000e+00 | 2.549575e-02 | 1.639328e-02 | 256 | | LBFGS | 1 | 5 | 2.767821e+00 | 1.000000e+00 | 6.154419e-03 | 2.468903e-02 | 256 | | LBFGS | 1 | 6 | 2.738163e+00 | 1.000000e+00 | 5.949008e-02 | 9.476263e-02 | 256 | | LBFGS | 1 | 7 | 2.719146e+00 | 1.000000e+00 | 1.699717e-02 | 1.849972e-02 | 256 | | LBFGS | 1 | 8 | 2.705941e+00 | 1.000000e+00 | 3.116147e-02 | 4.152590e-02 | 256 | | LBFGS | 1 | 9 | 2.701162e+00 | 1.000000e+00 | 5.665722e-03 | 9.401466e-03 | 256 | | LBFGS | 1 | 10 | 2.695341e+00 | 5.000000e-01 | 3.116147e-02 | 4.968046e-02 | 256 | | LBFGS | 1 | 11 | 2.691277e+00 | 1.000000e+00 | 8.498584e-03 | 1.017446e-02 | 256 | | LBFGS | 1 | 12 | 2.689972e+00 | 1.000000e+00 | 1.983003e-02 | 9.938921e-03 | 256 | | LBFGS | 1 | 13 | 2.688979e+00 | 1.000000e+00 | 1.416431e-02 | 6.606316e-03 | 256 | | LBFGS | 1 | 14 | 2.687787e+00 | 1.000000e+00 | 1.621956e-03 | 7.089542e-03 | 256 | | LBFGS | 1 | 15 | 2.686539e+00 | 1.000000e+00 | 1.699717e-02 | 1.169701e-02 | 256 | | LBFGS | 1 | 16 | 2.685356e+00 | 1.000000e+00 | 1.133144e-02 | 1.069310e-02 | 256 | | LBFGS | 1 | 17 | 2.685021e+00 | 5.000000e-01 | 1.133144e-02 | 2.104248e-02 | 256 | | LBFGS | 1 | 18 | 2.684002e+00 | 1.000000e+00 | 2.832861e-03 | 6.175231e-03 | 256 | | LBFGS | 1 | 19 | 2.683507e+00 | 1.000000e+00 | 5.665722e-03 | 3.724026e-03 | 256 | | LBFGS | 1 | 20 | 2.683343e+00 | 5.000000e-01 | 5.665722e-03 | 9.549119e-03 | 256 | |=================================================================================================================| | Solver | Pass | Iteration | Objective | Step | Gradient | Relative | sum(beta~=0) | | | | | | | magnitude | change in Beta | | |=================================================================================================================| | LBFGS | 1 | 21 | 2.682897e+00 | 1.000000e+00 | 5.665722e-03 | 7.172867e-03 | 256 | | LBFGS | 1 | 22 | 2.682682e+00 | 1.000000e+00 | 2.832861e-03 | 2.587726e-03 | 256 | | LBFGS | 1 | 23 | 2.682485e+00 | 1.000000e+00 | 2.832861e-03 | 2.953648e-03 | 256 | | LBFGS | 1 | 24 | 2.682326e+00 | 1.000000e+00 | 2.832861e-03 | 7.777294e-03 | 256 | | LBFGS | 1 | 25 | 2.681914e+00 | 1.000000e+00 | 2.832861e-03 | 2.778555e-03 | 256 | | LBFGS | 1 | 26 | 2.681867e+00 | 5.000000e-01 | 1.031085e-03 | 3.638352e-03 | 256 | | LBFGS | 1 | 27 | 2.681725e+00 | 1.000000e+00 | 5.665722e-03 | 1.515199e-03 | 256 | | LBFGS | 1 | 28 | 2.681692e+00 | 5.000000e-01 | 1.314940e-03 | 1.850055e-03 | 256 | | LBFGS | 1 | 29 | 2.681625e+00 | 1.000000e+00 | 2.832861e-03 | 1.456903e-03 | 256 | | LBFGS | 1 | 30 | 2.681594e+00 | 5.000000e-01 | 2.832861e-03 | 8.704875e-04 | 256 | | LBFGS | 1 | 31 | 2.681581e+00 | 5.000000e-01 | 8.498584e-03 | 3.934768e-04 | 256 | | LBFGS | 1 | 32 | 2.681579e+00 | 1.000000e+00 | 8.498584e-03 | 1.847866e-03 | 256 | | LBFGS | 1 | 33 | 2.681553e+00 | 1.000000e+00 | 9.857038e-04 | 6.509825e-04 | 256 | | LBFGS | 1 | 34 | 2.681541e+00 | 5.000000e-01 | 8.498584e-03 | 6.635528e-04 | 256 | | LBFGS | 1 | 35 | 2.681499e+00 | 1.000000e+00 | 5.665722e-03 | 6.194735e-04 | 256 | | LBFGS | 1 | 36 | 2.681493e+00 | 5.000000e-01 | 1.133144e-02 | 1.617763e-03 | 256 | | LBFGS | 1 | 37 | 2.681473e+00 | 1.000000e+00 | 9.869233e-04 | 8.418484e-04 | 256 | | LBFGS | 1 | 38 | 2.681469e+00 | 1.000000e+00 | 5.665722e-03 | 1.069722e-03 | 256 | | LBFGS | 1 | 39 | 2.681432e+00 | 1.000000e+00 | 2.832861e-03 | 8.501930e-04 | 256 | | LBFGS | 1 | 40 | 2.681423e+00 | 2.500000e-01 | 1.133144e-02 | 9.543716e-04 | 256 | |=================================================================================================================| | Solver | Pass | Iteration | Objective | Step | Gradient | Relative | sum(beta~=0) | | | | | | | magnitude | change in Beta | | |=================================================================================================================| | LBFGS | 1 | 41 | 2.681416e+00 | 1.000000e+00 | 2.832861e-03 | 8.763251e-04 | 256 | | LBFGS | 1 | 42 | 2.681413e+00 | 5.000000e-01 | 2.832861e-03 | 4.101888e-04 | 256 | | LBFGS | 1 | 43 | 2.681403e+00 | 1.000000e+00 | 5.665722e-03 | 2.713209e-04 | 256 | | LBFGS | 1 | 44 | 2.681392e+00 | 1.000000e+00 | 2.832861e-03 | 2.115241e-04 | 256 | | LBFGS | 1 | 45 | 2.681383e+00 | 1.000000e+00 | 2.832861e-03 | 2.872858e-04 | 256 | | LBFGS | 1 | 46 | 2.681374e+00 | 1.000000e+00 | 8.498584e-03 | 5.771001e-04 | 256 | | LBFGS | 1 | 47 | 2.681353e+00 | 1.000000e+00 | 2.832861e-03 | 3.160871e-04 | 256 | | LBFGS | 1 | 48 | 2.681334e+00 | 5.000000e-01 | 8.498584e-03 | 1.045502e-03 | 256 | | LBFGS | 1 | 49 | 2.681314e+00 | 1.000000e+00 | 7.878714e-04 | 1.505118e-03 | 256 | | LBFGS | 1 | 50 | 2.681306e+00 | 1.000000e+00 | 2.832861e-03 | 4.756894e-04 | 256 | | LBFGS | 1 | 51 | 2.681301e+00 | 1.000000e+00 | 1.133144e-02 | 3.664873e-04 | 256 | | LBFGS | 1 | 52 | 2.681288e+00 | 1.000000e+00 | 2.832861e-03 | 1.449821e-04 | 256 | | LBFGS | 1 | 53 | 2.681287e+00 | 2.500000e-01 | 1.699717e-02 | 2.357176e-04 | 256 | | LBFGS | 1 | 54 | 2.681282e+00 | 1.000000e+00 | 5.665722e-03 | 2.046663e-04 | 256 | | LBFGS | 1 | 55 | 2.681278e+00 | 1.000000e+00 | 2.832861e-03 | 2.546349e-04 | 256 | | LBFGS | 1 | 56 | 2.681276e+00 | 2.500000e-01 | 1.307940e-03 | 1.966786e-04 | 256 | | LBFGS | 1 | 57 | 2.681274e+00 | 5.000000e-01 | 1.416431e-02 | 1.005310e-04 | 256 | | LBFGS | 1 | 58 | 2.681271e+00 | 5.000000e-01 | 1.118892e-03 | 1.147324e-04 | 256 | | LBFGS | 1 | 59 | 2.681269e+00 | 1.000000e+00 | 2.832861e-03 | 1.332914e-04 | 256 | | LBFGS | 1 | 60 | 2.681268e+00 | 2.500000e-01 | 1.132045e-03 | 5.441369e-05 | 256 | |=================================================================================================================|
Оцените нечувствительную к эпсилону ошибку для набора тестов с помощью обновленной модели.
UpdatedL = loss(UpdatedMdl,Ztest,Ytest,'LossFun','epsiloninsensitive')
UpdatedL = 1.8933
Ошибка регрессии уменьшается фактором приблизительно 0.08 после resume обновляет модель регрессии с большим количеством итераций.
Загрузите carbig набор данных.
load carbigЗадайте переменные предикторы (X) и переменная отклика (Y).
X = [Acceleration,Cylinders,Displacement,Horsepower,Weight]; Y = MPG;
Удалите строки X и Y где любой массив имеет NaN значения. Удаление строк с NaN значения перед передающими данными к fitrkernel может ускорить обучение и уменьшать использование памяти.
R = rmmissing([X Y]); % Data with missing entries removed
X = R(:,1:5);
Y = R(:,end); Зарезервируйте 10% наблюдений как выборка затяжки. Извлеките обучение и протестируйте индексы из определения раздела.
rng(10) % For reproducibility N = length(Y); cvp = cvpartition(N,'Holdout',0.1); idxTrn = training(cvp); % Training set indices idxTest = test(cvp); % Test set indices
Стандартизируйте обучающие данные и обучите модель регрессии ядра с расслабленными опциями обучения управления сходимостью при помощи аргументов пары "имя-значение" 'BetaTolerance' и 'GradientTolerance'. Задайте 'Verbose',1 отобразить диагностическую информацию.
Xtrain = X(idxTrn,:); Ytrain = Y(idxTrn); [Ztrain,tr_mu,tr_sigma] = zscore(Xtrain); % Standardize the training data tr_sigma(tr_sigma==0) = 1; [Mdl,FitInfo] = fitrkernel(Ztrain,Ytrain,'Verbose',1, ... 'BetaTolerance',2e-2,'GradientTolerance',2e-2);
|=================================================================================================================| | Solver | Pass | Iteration | Objective | Step | Gradient | Relative | sum(beta~=0) | | | | | | | magnitude | change in Beta | | |=================================================================================================================| | LBFGS | 1 | 0 | 5.691016e+00 | 0.000000e+00 | 5.852758e-02 | | 0 | | LBFGS | 1 | 1 | 5.086537e+00 | 8.000000e+00 | 5.220869e-02 | 9.846711e-02 | 256 | | LBFGS | 1 | 2 | 3.862301e+00 | 5.000000e-01 | 3.796034e-01 | 5.998808e-01 | 256 | | LBFGS | 1 | 3 | 3.460613e+00 | 1.000000e+00 | 3.257790e-01 | 1.615091e-01 | 256 | | LBFGS | 1 | 4 | 3.136228e+00 | 1.000000e+00 | 2.832861e-02 | 8.006254e-02 | 256 | | LBFGS | 1 | 5 | 3.063978e+00 | 1.000000e+00 | 1.475038e-02 | 3.314455e-02 | 256 | |=================================================================================================================|
Mdl a RegressionKernel модель.
Стандартизируйте тестовые данные с помощью того же среднего и стандартного отклонения столбцов обучающих данных. Оцените нечувствительную к эпсилону ошибку для набора тестов.
Xtest = X(idxTest,:); Ztest = (Xtest-tr_mu)./tr_sigma; % Standardize the test data Ytest = Y(idxTest); L = loss(Mdl,Ztest,Ytest,'LossFun','epsiloninsensitive')
L = 2.0674
Продолжите обучение модель при помощи resume с модифицированной сходимостью управляют опциями.
[UpdatedMdl,UpdatedFitInfo] = resume(Mdl,Ztrain,Ytrain, ... 'BetaTolerance',2e-3,'GradientTolerance',2e-3);
|=================================================================================================================| | Solver | Pass | Iteration | Objective | Step | Gradient | Relative | sum(beta~=0) | | | | | | | magnitude | change in Beta | | |=================================================================================================================| | LBFGS | 1 | 0 | 3.063978e+00 | 0.000000e+00 | 1.475038e-02 | | 256 | | LBFGS | 1 | 1 | 3.007822e+00 | 8.000000e+00 | 1.391637e-02 | 2.603966e-02 | 256 | | LBFGS | 1 | 2 | 2.817171e+00 | 5.000000e-01 | 5.949008e-02 | 1.918084e-01 | 256 | | LBFGS | 1 | 3 | 2.807294e+00 | 2.500000e-01 | 6.798867e-02 | 2.973097e-02 | 256 | | LBFGS | 1 | 4 | 2.791060e+00 | 1.000000e+00 | 2.549575e-02 | 1.639328e-02 | 256 | | LBFGS | 1 | 5 | 2.767821e+00 | 1.000000e+00 | 6.154419e-03 | 2.468903e-02 | 256 | | LBFGS | 1 | 6 | 2.738163e+00 | 1.000000e+00 | 5.949008e-02 | 9.476263e-02 | 256 | | LBFGS | 1 | 7 | 2.719146e+00 | 1.000000e+00 | 1.699717e-02 | 1.849972e-02 | 256 | | LBFGS | 1 | 8 | 2.705941e+00 | 1.000000e+00 | 3.116147e-02 | 4.152590e-02 | 256 | | LBFGS | 1 | 9 | 2.701162e+00 | 1.000000e+00 | 5.665722e-03 | 9.401466e-03 | 256 | | LBFGS | 1 | 10 | 2.695341e+00 | 5.000000e-01 | 3.116147e-02 | 4.968046e-02 | 256 | | LBFGS | 1 | 11 | 2.691277e+00 | 1.000000e+00 | 8.498584e-03 | 1.017446e-02 | 256 | | LBFGS | 1 | 12 | 2.689972e+00 | 1.000000e+00 | 1.983003e-02 | 9.938921e-03 | 256 | | LBFGS | 1 | 13 | 2.688979e+00 | 1.000000e+00 | 1.416431e-02 | 6.606316e-03 | 256 | | LBFGS | 1 | 14 | 2.687787e+00 | 1.000000e+00 | 1.621956e-03 | 7.089542e-03 | 256 | |=================================================================================================================|
Оцените нечувствительную к эпсилону ошибку для набора тестов с помощью обновленной модели.
UpdatedL = loss(UpdatedMdl,Ztest,Ytest,'LossFun','epsiloninsensitive')
UpdatedL = 1.8891
Ошибочные уменьшения регрессии после resume обновляет модель регрессии с меньшими допусками сходимости.
Отобразите выходные параметры FitInfo и UpdatedFitInfo.
FitInfo
FitInfo = struct with fields:
Solver: 'LBFGS-fast'
LossFunction: 'epsiloninsensitive'
Lambda: 0.0028
BetaTolerance: 0.0200
GradientTolerance: 0.0200
ObjectiveValue: 3.0640
GradientMagnitude: 0.0148
RelativeChangeInBeta: 0.0331
FitTime: 0.0211
History: [1x1 struct]
UpdatedFitInfo
UpdatedFitInfo = struct with fields:
Solver: 'LBFGS-fast'
LossFunction: 'epsiloninsensitive'
Lambda: 0.0028
BetaTolerance: 0.0020
GradientTolerance: 0.0020
ObjectiveValue: 2.6878
GradientMagnitude: 0.0016
RelativeChangeInBeta: 0.0071
FitTime: 0.0259
History: [1x1 struct]
Оба обучения завершает работу, потому что программное обеспечение удовлетворяет абсолютному допуску градиента.
Постройте величину градиента по сравнению с количеством итераций при помощи UpdatedFitInfo.History.GradientMagnitude. Обратите внимание на то, что History поле UpdatedFitInfo включает информацию в History поле FitInfo.
semilogy(UpdatedFitInfo.History.GradientMagnitude,'o-') ax = gca; ax.XTick = 1:21; ax.XTickLabel = UpdatedFitInfo.History.IterationNumber; grid on xlabel('Number of Iterations') ylabel('Gradient Magnitude')

Первое обучение завершает работу после пяти итераций, потому что величина градиента становится меньше, чем 2e-2. Второе обучение завершает работу после 14 итераций, потому что величина градиента становится меньше, чем 2e-3.
Mdl — Модель регрессии ядраRegressionKernel объект моделиМодель регрессии ядра, заданная как RegressionKernel объект модели. Можно создать RegressionKernel объект модели с помощью fitrkernel.
X — Данные о предикторе раньше обучали MdlДанные о предикторе раньше обучали Mdl, заданный, когда n-by-p числовая матрица, где n является количеством наблюдений и p, является количеством предикторов.
Типы данных: single | double
Y — Данные об ответе раньше обучали MdlДанные об ответе раньше обучали Mdl, заданный как числовой вектор.
Типы данных: double | single
resume должен запуститься только на тех же обучающих данных (X и Y) и те же веса наблюдения (Weights) используемый, чтобы обучить Mdl. resume функционируйте использует те же опции обучения, такие как расширение функции, используемое, чтобы обучить Mdl.
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
UpdatedMdl = resume(Mdl,X,Y,'BetaTolerance',1e-3) обучение резюме с теми же опциями, используемыми, чтобы обучить Mdl, кроме относительного допуска на линейных коэффициентах и сроке смещения.'Weights' — Веса наблюдения раньше обучали MdlВеса наблюдения раньше обучали Mdl, заданный как разделенная запятой пара, состоящая из 'Weights' и положительный числовой вектор длины n, где n количество наблюдений в X. resume функция взвешивает наблюдения в X с соответствующими значениями в Weights.
Значением по умолчанию являются единицы (.n, 1)/n
resume нормирует Weights суммировать к 1.
Пример: 'Weights',w
Типы данных: single | double
'BetaTolerance' — Относительный допуск на линейных коэффициентах и сроке смещенияBetaTolerance значение раньше обучало Mdl (значение по умолчанию) | неотрицательный скалярОтносительный допуск на линейных коэффициентах и сроке смещения (прерывание), заданное как разделенная запятой пара, состоящая из 'BetaTolerance' и неотрицательный скаляр.
Пусть , то есть, вектор коэффициентов и смещения называет в итерации оптимизации t. Если , затем оптимизация завершает работу.
Если вы также задаете GradientTolerance, затем оптимизация завершает работу, когда программное обеспечение удовлетворяет любому критерию остановки.
По умолчанию значением является тот же BetaTolerance значение раньше обучало Mdl.
Пример: 'BetaTolerance',1e-6
Типы данных: single | double
'GradientTolerance' — Абсолютный допуск градиентаGradientTolerance значение раньше обучало Mdl (значение по умолчанию) | неотрицательный скалярАбсолютный допуск градиента, заданный как разделенная запятой пара, состоящая из 'GradientTolerance' и неотрицательный скаляр.
Пусть будьте вектором градиента целевой функции относительно коэффициентов, и смещение называют в итерации оптимизации t. Если , затем оптимизация завершает работу.
Если вы также задаете BetaTolerance, затем оптимизация завершает работу, когда программное обеспечение удовлетворяет любому критерию остановки.
По умолчанию значением является тот же GradientTolerance значение раньше обучало Mdl.
Пример: 'GradientTolerance',1e-5
Типы данных: single | double
'IterationLimit' — Максимальное количество дополнительных итераций оптимизацииМаксимальное количество дополнительных итераций оптимизации, заданных как разделенная запятой пара, состоящая из 'IterationLimit' и положительное целое число.
Значение по умолчанию 1000 если преобразованные совпадения данных в памяти (Mdl.ModelParameters.BlockSize), который вы задаете при помощи 'BlockSize' аргумент пары "имя-значение", когда учебный Mdl с fitrkernel. В противном случае значение по умолчанию равняется 100.
Обратите внимание на то, что значением по умолчанию не является значение, используемое, чтобы обучить Mdl.
Пример: 'IterationLimit',500
Типы данных: single | double
UpdatedMdl — Обновленная модель регрессии ядраRegressionKernel объект моделиОбновленная модель регрессии ядра, возвращенная как RegressionKernel объект модели.
FitInfo — Детали оптимизацииДетали оптимизации, возвращенные как массив структур включая поля, описаны в этой таблице. Поля содержат спецификации аргумента пары "имя-значение" или окончательные значения.
| Поле | Описание |
|---|---|
Solver |
Метод минимизации целевой функции: |
LossFunction | Функция потерь. Или среднеквадратическая ошибка (MSE) или нечувствительный к эпсилону, в зависимости от типа модели линейной регрессии. Смотрите Learner из fitrkernel. |
Lambda | Сила срока регуляризации. Смотрите Lambda из fitrkernel. |
BetaTolerance | Относительный допуск на линейных коэффициентах и сроке смещения. Смотрите BetaTolerance. |
GradientTolerance | Абсолютный допуск градиента. Смотрите GradientTolerance. |
ObjectiveValue | Значение целевой функции, когда оптимизация завершает работу. Потеря регрессии плюс срок регуляризации составляет целевую функцию. |
GradientMagnitude | Норма Бога вектора градиента целевой функции, когда оптимизация завершает работу. Смотрите GradientTolerance. |
RelativeChangeInBeta | Относительные изменения в линейных коэффициентах и смещении называют, когда оптимизация завершает работу. Смотрите BetaTolerance. |
FitTime | Прошедшее, тактовое стеной время (в секундах) требуемый подбирать модель к данным. |
History | История информации об оптимизации. Это поле также включает информацию об оптимизации от учебного Mdl. Это поле пусто ([]) если вы задаете 'Verbose',0 когда учебный Mdl. Для получения дополнительной информации смотрите Verbose и раздел Algorithms fitrkernel. |
К полям доступа используйте запись через точку. Например, чтобы получить доступ к вектору значений целевой функции для каждой итерации, введите FitInfo.ObjectiveValue в Командном окне.
Исследуйте информацию, предоставленную FitInfo оценить, является ли сходимость удовлетворительной.
Случайное расширение функции, такое как Случайные Раковины [1] и Быстрое питание [2], является схемой аппроксимировать Гауссовы ядра алгоритма регрессии ядра для больших данных в вычислительном отношении эффективным способом. Случайное расширение функции более практично для больших применений данных, которые имеют большие наборы обучающих данных, но могут также быть применены к меньшим наборам данных, которые умещаются в памяти.
Алгоритм регрессии ядра ищет оптимальную функцию, которая отклоняется от каждой точки данных ответа (yi) значениями, не больше, чем поле эпсилона (ε) после отображения данных о предикторе в высокое мерное пространство.
Некоторые проблемы регрессии не могут быть описаны соответственно с помощью линейной модели. В таких случаях получите нелинейную модель регрессии, заменив скалярное произведение x 1x2 ′ с нелинейной функцией ядра , где xi является i th наблюдение (вектор-строка), и φ (xi) является преобразованием, которое сопоставляет xi с высоким мерным пространством (названный “приемом ядра”). Однако оценивая G (x 1, x 2), матрица Грамма, для каждой пары наблюдений является в вычислительном отношении дорогой для большого набора данных (большой n).
Случайная схема расширения функции находит случайное преобразование так, чтобы его скалярное произведение аппроксимировало Гауссово ядро. Таким образом,
где T (x) сопоставляет x в к высокому мерному пространству (). Схема Random Kitchen Sink [1] использует случайное преобразование
где выборка, чертившая от и σ 2 является шкалой ядра. Эта схема требует O (m p) расчет и устройство хранения данных. Схема Fastfood [2] вводит другое случайное основание V вместо Z с помощью матриц Адамара, объединенных с Гауссовыми матрицами масштабирования. Это случайное основание уменьшает стоимость расчета для O (m logp), и уменьшает устройство хранения данных до O (m).
Можно задать значения для m и σ 2, с помощью NumExpansionDimensions и KernelScale аргументы пары "имя-значение" fitrkernel, соответственно.
fitrkernel функционируйте использует схему Fastfood случайного расширения функции и использует линейную регрессию, чтобы обучить Гауссову модель регрессии ядра. В отличие от решателей в fitrsvm функция, которые требуют расчета n-by-n матрица Грамма, решатель в fitrkernel только потребности сформировать матрицу размера n-by-m, с m обычно намного меньше, чем n для больших данных.
Указания и ограничения по применению:
Значение по умолчанию для 'IterationLimit' аргумент пары "имя-значение" ослабляется к 20, когда вы работаете с длинными массивами.
resume использует мудрую блоком стратегию. Для получения дополнительной информации смотрите раздел Algorithms fitrkernel.
Для получения дополнительной информации смотрите Длинные массивы (MATLAB).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.