主要内容

fsrnca

使用邻域成分分析进行回归的特征选择

描述

例子

mdl= fsrnca (X,Y中的预测器执行回归的特征选择X而在Y

fsrnca通过对角线自适应邻域分量分析(NCA)与正则化学习特征权重。

例子

mdl= fsrnca (X,Y,名称,值使用一个或多个名称-值对参数指定的附加选项执行回归的特征选择。

例子

全部折叠

生成玩具数据,其中响应变量依赖于第3、第9和第15个预测因子。

rng (0,“旋风”);%用于再现性N = 100;X = rand(N,20);y = 1 + X(:, 3) * 5 +罪(X(: 9)。/ X (:, 15) + 0.25 * randn (N - 1));

拟合邻域成分分析模型进行回归。

mdl = fsrnca(X,y,“详细”, 1“λ”, 0.5 / N);
o求解器= LBFGS, HessianHistorySize = 15,LineSearchMethod = weakwolfe  |====================================================================================================| | ITER | |娱乐价值规范研究生| |规范一步曲线|γ|α|接受  | |====================================================================================================| | 0 | 1.636932 e + 00 e-01 | 3.688 | 0.000 e + 00 | | 1.627 e + 0.000 e + 00 00 | |是| | 1 | 8.304833 e-01 e-01 | 1.083 | 2.449 e + 00 |好| 9.194 e + 4.000 e + 00 00 | |是| | 2 | 7.548105 e-01 e-02 | 1.341| 1.164 e + 00 |好01 | 1.000 | 1.095 e + e + 00 |是| | 3 | 7.346997 e-01 e 03 | 9.752 | 6.383 e-01 |好01 | 1.000 | 2.979 e + e + 00 |是| | 4 | 7.053407 e-01 e-02 | 1.605 | 1.712 e + 00 |好01 | 1.000 | 5.809 e + e + 00 |是| | 5 | 6.970502 e-01 e 03 | 9.106 | 8.818 e-01 |好01 | 1.000 | 6.223 e + e + 00 |是| | 6 | 6.952347 e-01 e 03 | 5.522 | 6.382 e-01 |好01 | 1.000 | 3.280 e + e + 00 |是| | 7 | 6.946302 e-01 e-04 | 9.102 | 1.952 e-01 |好01 | 1.000 | 3.380 e + e + 00 |是| | 8 | 6.945037 e-01 e-04 | 6.557 | 9.942 e-02 | |8.490 e + 01 | 1.000 e + 00 |是| | 9 | 6.943908 e-01 e-04 | 1.997 | 1.756 e-01 |好e + 02 | 1.124 | 1.000 e + 00 |是| | 10 | 6.943785 e-01 e-04 | 3.478 | 7.755 e-02 |好01 | 1.000 | 7.621 e + e + 00 |是| | 11 | 6.943728 e-01 e-04 | 1.428 | 3.416 e-02 |好01 | 1.000 | 3.649 e + e + 00 |是| | 12 | 6.943711 e-01 e-04 | 1.128 | 1.231 e-02 |好01 | 1.000 | 6.092 e + e + 00 |是| | 13 | 6.943688 e-01 e-04 | 1.066 | 2.326 e-02 |好01 | 1.000 | 9.319 e + e + 00 |是| | 14 | 6.943655 e-01 e-05 | 9.324 | 4.399 e-02 1.810 e + 02 | | | OK1.000 e + 00 |是| | 15 | 6.943603 e-01 e-04 | 1.206 | 8.823 e-02 |好e + 02 | 4.609 | 1.000 e + 00 |是| | 16 | 6.943582 e-01 e-04 | 1.701 | 6.669 e-02 |好| 8.425 e + 01 | 5.000 e-01 |是| | 17 | 6.943552 e-01 e-05 | 5.160 | 6.473 e-02 |好01 | 1.000 | 8.832 e + e + 00 |是| | 18 e-01 | 6.943546 | 2.477 e-05 e-02 1.215 | |好01 | 1.000 | 7.925 e + e + 00 |是| | 19 | 6.943546 e-01 e-05 | 1.077 | 6.086 e 03 |好e + 02 | 1.378 | 1.000 e + 00 | ||====================================================================================================| | ITER | |娱乐价值规范研究生| |规范一步曲线|γ|α|接受  | |====================================================================================================| | 20 | 6.943545 e-01 e-05 | 2.260 | 4.071 e 03 |好01 | 1.000 | 5.856 e + e + 00 |是| | | 21日6.943545 e-01 e-06 | 4.250 | 1.109 e 03 |好01 | 1.000 | 2.964 e + e + 00 |是| | 22 | 6.943545 e-01 e-06 | 1.916 | 8.356 e-04 | |8.649 e + 01 | 1.000 e + 00 |是| | | 23日6.943545 e-01 e-06 | 1.083 | 5.270 e-04 |好e + 02 | 1.168 | 1.000 e + 00 |是| | 24 | 6.943545 e-01 e-06 | 1.791 | 2.673 e-04 |好01 | 1.000 | 4.016 e + e + 00 |是| | 25 | 6.943545 e-01 e-07 | 2.596 | 1.111 e-04 |好01 | 1.000 | 3.154 e + e + 00 |是|最终梯度的无穷范数= 2.596 e-07两规范最后一步= 1.111 e-04 TolX = 1.000 e-06相对最终梯度的无穷范数= 2.596 e-07, TolFun = 1.000 e-06退出:局部最小值。

绘制选定的特征图。不相关特征的权重应该接近于零。

图()图(mdl。FeatureWeights,“罗”网格)包含(“功能指数”) ylabel (“功能重量”

图中包含一个轴。坐标轴包含一个line类型的对象。

fsrnca正确检测此响应的相关预测因子。

加载样例数据。

负载robotarm.mat

robotarm(pumadyn32nm)数据集使用机械臂模拟器创建,具有7168个训练观测值和1024个测试观测值,具有32个特征[1][2]。这是原始数据集的预处理版本。通过减去线性回归拟合对数据进行预处理,然后将所有特征归一化到单位方差。

执行邻域成分分析(NCA)特征选择,以回归默认值 λ (正则化参数)值。

nca = fsrnca(Xtrain,ytrain,“FitMethod”,“准确”,...“规划求解”,“lbfgs”);

绘制所选值。

图(nca阴谋。FeatureWeights,“罗”)包含(“功能指数”) ylabel (“功能重量”网格)

图中包含一个轴。坐标轴包含一个line类型的对象。

超过一半的特征权重是非零的。通过使用选定的特征,使用测试集作为性能的度量来计算损失。

L =损失(nca,Xtest,ytest)
L = 0.0837

试着提高性能。调整正则化参数 λ 使用五重交叉验证进行特征选择。调优 λ 意味着找到 λ 产生最小回归损失的值。调优 λ 使用交叉验证:

1.将数据划分为五层。对于每一次折叠,cvpartition将4/5的数据分配为训练集,1/5的数据分配为测试集。

rng (1)%用于再现性N = length(ytrain);CVP = cvpartition(length(ytrain),“kfold”5);numvalidsets = cvp.NumTestSets;

分配 λ 搜索的值。将响应值乘以一个常数,损失函数项将增加一个常数的因子。因此,包括性病(ytrain)考虑到 λ 值平衡默认损失函数(“疯了”,平均绝对偏差)项和目标函数中的正则化项。在本例中,性病(ytrain)因子为1,因为加载的示例数据是原始数据集的预处理版本。

Lambdavals = linspace(0,50,20)*std(ytrain)/n;

创建一个数组来存储损失值。

Lossvals = 0(长度(lambdavals),numvalidsets);

2.训练每一个的NCA模型 λ 值,在每个折叠中使用训练集。

3.使用NCA模型计算褶皱中相应测试集的回归损失。记录损失值。

4.对每个人重复这个步骤 λ 价值与每一折。

I = 1:长度(lambda)k = 1:numvalidsets X = Xtrain(cvp.training(k),:);Y = ytrain(cvp.training(k),:);Xvalid = Xtrain(cvp.test(k),:);Yvalid = ytrain(cvp.test(k),:);nca = fsrnca(X,y,“FitMethod”,“准确”,...“规划求解”,“minibatch-lbfgs”,“λ”lambdavals(我),...“GradientTolerance”1的军医,“IterationLimit”, 30);lossvals(i,k) = loss(nca,Xvalid,yvalid,“LossFunction”,mse的);结束结束

计算从每个折叠中获得的平均损失 λ 价值。

Meanloss = mean(lossvals,2);

画出平均损失和 λ 值。

图绘制(lambdavals meanloss,“ro - - - - - -”)包含(“λ”) ylabel (“损失(MSE)”网格)

图中包含一个轴。坐标轴包含一个line类型的对象。

找到 λ 给出最小损失值的值。

[~,idx] = min(meanloss)
Idx = 17
Bestlambda = lambdavals(idx)
Bestlambda = 0.0059
最佳损失=平均损失(idx)
Bestloss = 0.0590

使用最佳的NCA特征选择模型拟合回归 λ 价值。

nca = fsrnca(Xtrain,ytrain,“FitMethod”,“准确”,...“规划求解”,“lbfgs”,“λ”, bestlambda);

绘制选定的特征图。

图(nca阴谋。FeatureWeights,“罗”)包含(“功能指数”) ylabel (“功能重量”网格)

图中包含一个轴。坐标轴包含一个line类型的对象。

大多数特征权重为零。fsrnca确定四个最相关的特征。

计算测试集的损失。

L =损失(nca,Xtest,ytest)
L = 0.0571

调整正则化参数, λ ,消除了更多不相关的特性,提高了性能。

这个例子使用了Abalone数据[3][4]来自UCI机器学习知识库[5].下载数据并将其保存在当前文件夹中“abalone.data”

将数据存储到一个表中。显示前七行。

可读的(“abalone.data”,“文件类型”,“文本”,“ReadVariableNames”、假);table . properties . variablenames = {“性”,“长度”,“直径”,“高度”,...“WWeight”,“SWeight”,“VWeight”,“ShWeight”,“NoShellRings”};台(1:7,:)
ans =7×9表性长度直径高度WWeight SWeight VWeight ShWeight NoShellRings  _____ ______ ________ ______ _______ _______ _______ ________ ____________ {' M} 0.455 0.365 0.095 0.514 0.2245 0.101 0.15 15{“M”}0.35 0.265 0.09 0.2255 0.0995 0.0485 0.07 7 {' F '} 0.53 0.42 0.135 0.677 0.2565 0.1415 0.21 9{“M”}0.44 0.365 0.125 0.516 0.2155 0.114 0.155 10{“我”}0.33 0.255 0.08 0.205 0.0895 0.0395 0.055 7{“我”}0.425 0.3 0.095 0.3515 0.141 0.0775 0.12 8 {' F '} 0.53 0.415 0.15 0.7775 0.237 0.1415 0.33 20

该数据集有4177个观测数据。目标是通过八项物理测量来预测鲍鱼的年龄。最后一个变量,壳环的数量,显示了鲍鱼的年龄。第一个预测变量是分类变量。表中的最后一个变量是响应变量。

准备预测变量和响应变量fsrnca.的最后一列资源描述包含壳环的数量,这是响应变量。第一个预测变量,性别,是绝对的。你必须创建虚拟变量。

Y = table2array(tbl(:,end));X(:,1:3) = dummyvar(分类(tbl.Sex));X = [X,table2array(tbl(:,2:end-1))];

使用四重交叉验证来优化NCA模型中的正则化参数。首先将数据划分为四层。

rng (“默认”%用于再现性N =长度(y);CVP = cvpartition(n,“kfold”4);numtestsets = cvp.NumTestSets;

cvpartition将数据划分为四个分区(折叠)。在每一次折叠中,大约四分之三的数据被分配为训练集,四分之一的数据被分配为测试集。

生成各种 λ (正则化参数)为拟合模型确定最佳值 λ 价值。创建一个向量来收集每个拟合的损失值。

Lambdavals = linspace(0,25,20)*std(y)/n;Lossvals = 0(长度(lambdavals),numtestsets);

一排排的lossvals对应于 λ 值和列对应于折叠。

拟合NCA模型用于回归fsrnca对每个折叠的数据使用每个 λ 价值。使用每个折叠的测试数据计算每个模型的损失。

I = 1:长度(lambda)Xtrain = X(cvp.training(k),:);Ytrain = y(cvp.training(k),:);Xtest = X(cvp.test(k),:);Ytest = y(cvp.test(k),:);nca = fsrnca(Xtrain,ytrain,“FitMethod”,“准确”,...“规划求解”,“lbfgs”,“λ”lambdavals(我),“标准化”,真正的);lossvals(i,k) = loss(nca,Xtest,ytest,“LossFunction”,mse的);结束结束

计算折叠的平均损失,即计算的第2维的平均值lossvals

Meanloss = mean(lossvals,2);

画出 λ 值和四次折叠的平均损失。

图绘制(lambdavals meanloss,“ro - - - - - -”)包含(“λ”) ylabel (“损失(MSE)”网格)

找到 λ 使平均损失最小的值。

[~,idx] = min(meanloss);Bestlambda = lambdavals(idx)
Bestlambda = 0.0071

计算最佳损失值。

最佳损失=平均损失(idx)
最佳损失= 4.7799

用最好的方法在所有数据上拟合NCA模型 λ 价值。

nca = fsrnca(X,y,“FitMethod”,“准确”,“规划求解”,“lbfgs”,...“详细”, 1“λ”bestlambda,“标准化”,真正的);
o求解器= LBFGS, HessianHistorySize = 15,LineSearchMethod = weakwolfe  |====================================================================================================| | ITER | |娱乐价值规范研究生| |规范一步曲线|γ|α|接受  | |====================================================================================================| | 0 | 2.469168 e + 00 e-01 | 1.266 | 0.000 e + 00 | | 4.741 e + 0.000 e + 00 00 | |是| | 1 | 2.375166 e + 00 e-02 | 8.265 | 7.268 e-01 |好01 | 1.000 | 1.054 e + e + 00 |是| | 2 | 2.293528 e + 00 e-02 | 2.067| 2.034 e + 00 |好01 | 1.000 | 1.569 e + e + 00 |是| | 3 | 2.286703 e + 00 e-02 | 1.031 | 3.158 e-01 |好01 | 1.000 | 2.213 e + e + 00 |是| | 4 | 2.279928 e + 00 e-02 | 2.023 | 9.374 e-01 |好01 | 1.000 | 1.953 e + e + 00 |是| | 5 | 2.276258 e + e 03 00 | 6.884 | 2.497 e-01 |好01 | 1.000 | 1.439 e + e + 00 |是| | 6 | 2.274358 e + e 03 00 | 1.792 | 4.010 e-01 |好01 | 1.000 | 3.109 e + e + 00 |是| | 7 | 2.274105 e + e 03 00 | 2.412 | 2.399 e-01 |好01 | 1.000 | 3.557 e + e + 00 |是| | 8 | 2.274073 e + e 03 00 | 1.459 | 7.684 e-02 | |1.356 e + 01 | 1.000 e + 00 |是| | 9 e + 00 | 2.274050 | 3.733 e-04 e-02 3.797 | |好01 | 1.000 | 1.725 e + e + 00 |是| | 10 | 2.274043 e + 00 e-04 | 2.750 | 1.379 e-02 |好01 | 1.000 | 2.445 e + e + 00 |是| | 11 | 2.274027 e + 00 e-04 | 2.682 | 5.701 e-02 |好01 | 1.000 | 7.386 e + e + 00 |是| | 12 | 2.274020 e + 00 e-04 | 1.712 | 4.107 e-02 |好01 | 1.000 | 9.461 e + e + 00 |是| | 13 | 2.274014 e + 00 e-04 | 2.633 | 6.720 e-02 |好01 | 1.000 | 7.469 e + e + 00 |是| | 14 | 2.274012 e + 00 e-05 | 9.818 | 2.263 e-02 | | 3.275 e + 01 |1.000 e + 00 |是| | 15 | 2.274012 e + 00 e-05 | 4.220 | 6.188 e 03 |好01 | 1.000 | 2.799 e + e + 00 |是| | 16 e + 00 | 2.274012 | 2.859 e-05 | 4.979 e 03 |好01 | 1.000 | 6.628 e + e + 00 |是| | 17 | 2.274011 e + 00 e-05 | 1.582 | 6.767 e 03 |好e + 02 | 1.439 | 1.000 e + 00 |是| | 18 e + 00 | 2.274011 | 7.623 e-06 | 4.311 e 03 |好e + 02 | 1.211 | 1.000 e + 00 |是| | 19 | 2.274011 e + 00 e-06 | 3.038 | 2.528 e-04 |好| 1.798 e + 01 | 5.000 e-01 | ||====================================================================================================| | ITER | |娱乐价值规范研究生| |规范一步曲线|γ|α|接受  | |====================================================================================================| | 20 | 2.274011 e + 00 e-07 | 6.710 | 2.325 e-04 |好01 | 1.000 | 2.721 e + e + 00 |是|最终梯度的无穷范数= 6.710 e-07最后一步= 2.325 e-04的两个标准,TolX = 1.000e-06最终梯度的相对无限范数= 6.710e-07, TolFun = 1.000e-06 EXIT:找到局部最小值。

绘制选定的特征图。

图(nca阴谋。FeatureWeights,“罗”)包含(“功能指数”) ylabel (“功能重量”网格)

不相关的特征权重为零。根据该图,特征1、3和9未被选中。

采用回归量子集法进行参数估计,采用完全独立条件法进行预测,拟合高斯过程回归模型。使用ARD平方指数核函数,它为每个预测器分配一个单独的权重。标准化预测器。

gprMdl = fitrgp(tbl,“NoShellRings”,“KernelFunction”,“ardsquaredexponential”,...“FitMethod”,“老”,“PredictMethod”,膜集成电路的,“标准化”,真正的)
gprMdl = RegressionGP PredictorNames:{'性别' '长度' '直径' '高度' 'WWeight' 'SWeight' 'VWeight' 'ShWeight'} ResponseName: 'NoShellRings'分类预测器:1 ResponseTransform: 'none' NumObservations: 4177 KernelFunction: 'ARDSquaredExponential' KernelInformation: [1×1 struct] BasisFunction: 'Constant' Beta: 11.4959 Sigma: 2.0282 PredictorLocation: [10×1 double] PredictorScale: [10×1 double] Alpha: [1000×1 double] ActiveSetVectors: [1000×10 double] PredictMethod:'FIC' ActiveSetSize: 1000 FitMethod: 'SR' ActiveSetMethod: 'Random' IsActiveSetVector: [4177×1 logical] LogLikelihood: -9.0019e+03 ActiveSetHistory: [1×1 struct] BCDInformation:[]属性,方法

计算训练模型在训练数据上的回归损失(再替换损失)。

L = resubLoss(gprMdl)
L = 4.0306

最小的交叉验证损耗使用fsrnca与使用带ARD内核的GPR模型获得的损失相当。

输入参数

全部折叠

预测变量值,指定为n——- - - - - -p矩阵,n观察的次数和p是预测变量的数量。

数据类型:|

响应值,指定为长度的数字实向量n,在那里n是观测的数量。

数据类型:|

名称-值对参数

的可选逗号分隔对名称,值参数。的名字参数名称和价值对应的值。的名字必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“规划求解”,“sgd”、“重量”,0.0003 W,“λ”指定解算器为随机梯度下降,观测权重为向量中的值W,并将正则化参数设置为0.0003。
合适的选项

全部折叠

拟合模型的方法,指定为逗号分隔的对,由“FitMethod”和以下其中之一:

  • “准确”-使用所有数据进行拟合。

  • “没有”-不合身。使用此选项可以使用调用fsrnca时提供的初始特征权重来评估NCA模型的泛化误差。

  • “平均”-将数据划分为多个分区(子集),使用确切的方法,并返回特征权重的平均值。属性指定分区的数量NumPartitions名称-值对参数。

例子:“FitMethod”、“没有”

用于分割数据的分区数“FitMethod”、“平均”选项,指定为逗号分隔的对,由“NumPartitions”和一个介于2和之间的整数值n,在那里n是观测的数量。

例子:“NumPartitions”,15

数据类型:|

正则化参数以防止过拟合,指定为由逗号分隔的对组成“λ”一个非负标量。

作为观察的数量n增加,过拟合的机会减少,所需的正则化量也减少。看到调整回归NCA中的正则化参数了解如何调优正则化参数。

例子:“λ”,0.002

数据类型:|

内核的宽度,指定为逗号分隔的对,由“LengthScale”和一个正的实标量。

当所有预测器都在同一尺度上时,长度尺度值1是合理的。如果预测器在X是非常不同的大小,然后考虑标准化预测值使用“标准化”,真的和设置“LengthScale”,1

例子:“LengthScale”,1.5

数据类型:|

初始特征权重,由逗号分隔的对组成“InitialFeatureWeights”和一个p-by-1向量的实正标量,其中p是训练数据中预测器的数量。

优化特征权值的正则化目标函数是非凸的。因此,使用不同的初始特征权重可以得到不同的结果。将所有初始特征权重设置为1通常效果很好,但在某些情况下,随机初始化使用兰特(p, 1)能给出更好的质量解决方案。万博 尤文图斯

数据类型:|

观察权重,由逗号分隔的对组成“ObservationWeights”和一个n-by-1向量的实正标量。使用观测权重来指定某些观测值比其他观测值更重要。默认权重赋予所有观察值同等重要。

数据类型:|

用于标准化预测器数据的指示器,指定为逗号分隔的对,由“标准化”,要么真正的.有关更多信息,请参见标准化的影响

例子:“标准化”,真的

数据类型:逻辑

收敛摘要显示的详细级别指示器,指定为由逗号分隔的对组成“详细”和以下其中之一:

  • 0 -没有收敛摘要

  • 1 -收敛总结,包括梯度范数和目标函数值

  • > 1 -更多的收敛信息,取决于拟合算法

    当使用“minibatch-lbfgs”求解器和详细级别> 1,收敛信息包括迭代日志从中间小批量LBFGS拟合。

例子:“详细”,1

数据类型:|

用于估计特征权重的求解器类型,指定为逗号分隔的对,由“规划求解”和以下其中之一:

  • “lbfgs”-有限内存Broyden-Fletcher-Goldfarb-Shanno (LBFGS)算法

  • “sgd”-随机梯度下降(SGD)算法

  • “minibatch-lbfgs”随机梯度下降与LBFGS算法应用于小批量

默认是“lbfgs”n≤1000,且“sgd”n> 1000。

例子:“规划求解”、“minibatch-lbfgs”

损失函数,指定为逗号分隔的对,由“LossFunction”和以下其中之一:

  • “疯了”-平均绝对偏差

    l y , y j | y y j |

  • mse的-均方误差

    l y , y j y y j 2

  • “epsiloninsensitive”- ε-不敏感损失函数

    l y , y j 马克斯 0 , | y y j | ϵ

    这个损失函数对于异常值比均方误差或平均绝对偏差更稳健。

  • @lossfun-自定义丢失函数句柄。损失函数是这样的。

    函数L = lossfun(Yu,Yv)损失百分比计算...
    是一个u-by-1向量和青年志愿是一个v1的向量。l是一个u——- - - - - -v矩阵的损失值L (i, j)损失的价值是什么Yu(我)而且青年志愿(j)

最小化的目标函数包括损失函数ly,yj如下:

f w 1 n 1 n j 1 , j n p j l y , y j + λ r 1 p w r 2 ,

在哪里w是特征权向量,n是观察数,和p是预测变量的数量。pij概率是xj参考点是什么x.详细信息请参见回归的NCA特征选择

例子:LossFunction, @lossfun

的值“LossFunction”、“epsiloninsensitive”选项,指定为逗号分隔的对,由“LossFunction”和一个非负的实标量。默认值是使用响应变量四分位范围的样本标准偏差的估计值。

例子:‘ε’,0.1

数据类型:|

内存大小(以MB为单位),用于目标函数和梯度计算,指定为逗号分隔的对,由“CacheSize”一个整数。

例子:“CacheSize”,1500 mb

数据类型:|

LBFGS选项

全部折叠

的Hessian近似的历史缓冲区大小“lbfgs”求解器,指定为逗号分隔的对,由“HessianHistorySize”一个正整数。在每次迭代中,函数使用最新的HessianHistorySize迭代来建立逆黑森的近似。

例子:“HessianHistorySize”,20

数据类型:|

的初始步长“lbfgs”求解器,指定为逗号分隔的对,由“InitialStepSize”和一个正的实标量。缺省情况下,该函数自动确定初始步长。

数据类型:|

行搜索方法,指定为由逗号分隔的对组成“LineSearchMethod”和以下其中之一:

  • “weakwolfe”-弱沃尔夫线搜索

  • “strongwolfe”-强沃尔夫线搜索

  • “回溯”—回溯线搜索

例子:“LineSearchMethod”、“回溯”

行搜索迭代的最大次数,指定为逗号分隔的对,由“MaxLineSearchIterations”一个正整数。

例子:“MaxLineSearchIterations”,25岁

数据类型:|

求解器在梯度范数上的相对收敛公差lbfgs,指定为逗号分隔的对,由“GradientTolerance”和一个正的实标量。

例子:“GradientTolerance”,0.000002

数据类型:|

SGD选项

全部折叠

的初始学习率“sgd”求解器,指定为逗号分隔的对,由“InitialLearningRate”和一个正的实标量。

使用求解器类型时“sgd”时,学习率从指定的值开始在迭代中衰减“InitialLearningRate”

默认的“汽车”意味着初始学习率是通过在小数据子集上的实验确定的。使用NumTuningIterations参数指定用于自动调优初始学习率的迭代次数。使用TuningSubsetSize名称-值对参数指定用于自动调优初始学习率的观察数。

求解器类型“minibatch-lbfgs”,您可以设置“InitialLearningRate”到一个很高的值。在这种情况下,该函数将LBFGS分别应用于每个小批,初始特征权重来自前一个小批。

为了确保所选择的初始学习率在每次迭代中都会降低目标值,请绘制迭代客观的保存在mdl。FitInfo财产。

您可以使用改装方法“InitialFeatureWeights”等于mdl。FeatureWeights从当前的解决方案开始并运行额外的迭代

例子:“InitialLearningRate”,0.9

数据类型:|

每批所使用的观察数“sgd”求解器,指定为逗号分隔的对,由“MiniBatchSize”从1到的正整数n

例子:“MiniBatchSize”,25岁

数据类型:|

通过所有通道的最大次数n求解器的观察“sgd”,指定为逗号分隔的对,由“PassLimit”一个正整数。每一次通过所有数据被称为一个epoch。

例子:“PassLimit”,10

数据类型:|

用于显示收敛摘要的批的频率“sgd”求解器,指定为逗号分隔的对,由“NumPrint”一个正整数。此论点适用于“详细”Value大于0。NumPrint对于显示在命令行上的收敛摘要的每一行,都将处理小批量。

例子:“NumPrint”,5

数据类型:|

的调优迭代次数“sgd”求解器,指定为逗号分隔的对,由“NumTuningIterations”一个正整数。此选项仅适用于“InitialLearningRate”、“汽车”

例子:“NumTuningIterations”,15

数据类型:|

用于调优初始学习率的观察数,指定为由逗号分隔的对组成“TuningSubsetSize”从1到的正整数n.此选项仅适用于“InitialLearningRate”、“汽车”

例子:“TuningSubsetSize”,25岁

数据类型:|

SGD或LBFGS期权

全部折叠

最大迭代次数,指定为由逗号分隔的对组成的“IterationLimit”一个正整数。SGD的默认值是10000,LBFGS和小批量LBFGS的默认值是1000。

每一次批处理都是一次迭代。每次通过所有数据都是一个epoch。如果将数据划分为k小批量,那么每个epoch都等价于k迭代。

例子:“IterationLimit”,250年

数据类型:|

步长上的收敛容差,指定为由逗号分隔的对组成“StepTolerance”和一个正的实标量。的“lbfgs”求解器使用绝对步长公差,并且“sgd”求解器使用相对步长公差。

例子:“StepTolerance”,0.000005

数据类型:|

小批量LBFGS选项

全部折叠

每个小批LBFGS步骤的最大迭代次数,指定为由逗号分隔的对组成“MiniBatchLBFGSIterations”一个正整数。

例子:“MiniBatchLBFGSIterations”,15

小批量LBFGS算法是SGD和LBFGS方法的结合。因此,适用于SGD和LBFGS求解器的所有名值对参数也适用于小批量LBFGS算法。

数据类型:|

输出参数

全部折叠

邻域成分分析模型为回归,返回为FeatureSelectionNCARegression对象。

参考文献

[1]拉斯穆森,C. E.尼尔,G. E.欣顿,D.范·坎普,M. Revow, Z. Ghahramani, R. Kustra, R. Tibshirani。DELVE手册,1996,http://mlg.eng.cam.ac.uk/pub/pdf/RasNeaHinetal96.pdf。

[2]多伦多大学计算机科学系。深入研究数据集。http://www.cs.toronto.edu/深入/数据/ datasets.html。

[3]纳什,w.j., T. L.塞勒斯,S. R.塔尔博特,A. J.考索恩,W. B.福特。鲍鱼种群生物学(石决明种)在塔斯马尼亚。I.黑唇鲍鱼(h . rubra)来自北海岸和巴斯海峡群岛。”海洋渔业司,1994年第48号技术报告。

[4]哇,S。级联相关的扩展和基准测试:前馈监督人工神经网络级联相关架构的扩展和基准测试。塔斯马尼亚大学计算机科学系论文, 1995年。

[5] Lichman, M. UCI机器学习库。加州尔湾:加州大学信息与计算机科学学院,2013年。http://archive.ics.uci.edu/ml。

在R2016b中引入