对高维数据拟合线性分类模型
fitclinear
为减少在包含许多预测变量的高维数据集上的计算时间,利用训练线性分类模型 通过使用纠错输出码组合支持向量机或逻辑回归二元分类器,训练用于多类学习的线性分类模型,请参见fitcecoc
使用表中的预测器变量返回线性分类模型Mdl
= fitclinear (资源描述
ResponseVarName
使用表中的样例数据返回一个线性分类模型Mdl
= fitclinear (资源描述
公式
使用表中的预测器变量返回线性分类模型Mdl
= fitclinear (资源描述
Y
除前面语法中的任何输入参数组合外,还使用一个或多个名称-值对参数指定选项。例如,您可以指定预测器矩阵的列对应于观察结果,实现逻辑回归,或指定交叉验证。的交叉验证是一个很好的实践Mdl
= fitclinear (X
Y
名称,值
[
还使用以前的语法返回优化细节。你不能要求Mdl
FitInfo
[
参数传递时,还返回超参数优化细节Mdl
FitInfo
HyperparameterOptimizationResults
OptimizeHyperparameters
使用支持向量机、双SGD和脊正则化训练二元线性分类模型。万博1manbetx 加载NLP数据集。 确定与统计和机器学习工具箱™文档网页对应的标签。 训练一个二进制的线性分类模型,它可以识别文档网页中的字数是否来自统计和机器学习工具箱™文档。使用整个数据集训练模型。通过提取拟合摘要,确定优化算法对模型与数据的拟合程度。负载
X
Ystats = Y ==
rng (1);
Mdl = ClassificationLinear ResponseName: 'Y' ClassNames: [0 1] ScoreTransform: 'none' Beta: [34023x1 double]偏差:-1.0059 Lambda: 3.1674e-05学习者:'svm'属性,方法
FitInfo =
Mdl
FitInfo
为了确定使用逻辑回归学习器的线性分类模型的良好套索惩罚强度,实现5倍交叉验证。 加载NLP数据集。 模型应该确定网页中的字数是否来自统计和机器学习工具箱™文档。因此,确定与统计和机器学习工具箱™文档网页对应的标签。 创建一组11个对数间距的正则化强度 交叉验证模型。要提高执行速度,可以调换预测器数据,并将观察结果指定为列。使用SpaRSA估计系数。降低目标函数梯度上的公差 显示第一个训练的线性分类模型。 估计交叉验证的分类误差。 因为有11种正则化优势, 的更高值 在同一幅图中,绘制交叉验证、分类错误率和每个正则化强度的非零系数的频率。在对数尺度上画出所有变量。 选择正则化强度指标,平衡预测器变量稀疏性和低分类误差。在本例中,取值介于 选择模型负载
X
Ystats = Y ==
λ = logspace(-6,-0.5,11);
X = X';rng (10);
CVMdl = ClassificationPartitionedLinear CrossValidatedModel: 'Linear' ResponseName: 'Y' NumObservations: 31572 KFold: 5 Partition: [1×1 cvpartition] ClassNames: [0 1] ScoreTransform: 'none'属性,方法
numCLModels = numel(cvmdl . encrypted)
numCLModels = 5
CVMdl
Mdl1 = CVMdl。训练有素的{1}
Mdl1 = ClassificationLinear ResponseName: 'Y' ClassNames: [0 1] ScoreTransform: 'logit' Beta: [34023×11 double] Bias: [-13.2559 -13.2559 -13.2559 -13.2559 -9.1017 -7.1128 -5.4113 -4.4974 -3.6007 -3.1606 -2.9794] Lambda: [1.0000e-06 3.5481e-06 1.2589e-05 4.4668e- 04 5.6234e-04 0.0020 0.0071 0.0251 0.0891 0.3162] Learner: 'logistic'属性,方法
Mdl1
ce = kfoldLoss(CVMdl);
Mdl = fitclinear(X,Ystats,
图;[h,hL1,hL2] = plotyy(log10(Lambda),log10(ce),
idxFinal = 7;
MdlFinal = selectModels(Mdl,idxFinal);
MdlFinal
这个例子展示了如何最小化线性分类器中的交叉验证错误 加载NLP数据集。 模型应该确定网页中的字数是否来自统计和机器学习工具箱™文档。识别相关标签。 方法优化分类 为了再现性,设置随机种子并使用负载
X
X = X';Ystats = Y ==
rng
|=====================================================================================================| | Iter | Eval客观客观| | | BestSoFar | BestSoFar |λ|学生| | |结果| |运行时| | (estim(观察) .) | | | |=====================================================================================================| | 最好1 | | 0.041619 | 4.0257 | 0.041619 | 0.041619 | 0.077903 |物流|
| 2 | Best |.00072849 | 3.8245 | 0.00072849 | 0.0028767 | 2.1405e-09 |后勤|
| 3 |接受| 0.049221 | 4.6777 | 0.00072849 | 0.00075737 | 0.72101 |支持|
| 4 |接受| 0.00079184 | 4.299 | 0.00072849 | 0.00074989 | 3.4734e-07 |支持|
| 5 |接受| 0.00082351 | 3.9102 | 0.00072849 | 0.00072924 | 1.1738e-08 |后勤|
| 6 |接受| 0.00085519 | 4.2132 | 0.00072849 | 0.00072746 | 2.4529e-09 |支持|
| 7 |接受| 0.00079184 | 4.1282 | 0.00072849 | 0.00072518 | 3.1854e-08 |支持|
| 8 |接受| 0.00088686 | 4.4564 | 0.00072849 | 0.00072236 | 3.1717e-10 |支持|
| 9 |接受| 0.00076017 | 3.7918 | 0.00072849 | 0.00068304 | 3.1837e-10 |后勤|
| 10 |接受| 0.00079184 | 4.4733 | 0.00072849 | 0.00072853 | 1.1258e-07 |支持|
| 11 |接受| 0.00076017 | 3.9953 | 0.00072849 | 0.00072144 | 2.1214e-09 |后勤|
| 12 |接受| 0.00079184 | 6.7875 | 0.00072849 | 0.00075984 | 2.2819e-07 |后勤|
| 13 |接受| 0.00072849 | 4.2131 | 0.00072849 | 0.00075648 | 6.6161e-08 |后勤|
| 14 |最佳|.00069682 | 4.3785 | 0.00069682 | 0.00069781 | 7.4324e-08 |后勤|
| 15 |最佳|.00066515 | 4.3717 | 0.00066515 | 0.00068861 | 7.6994e-08 |后勤|
| 16 |接受| 0.00076017 | 3.9068 | 0.00066515 | 0.00068881 | 7.0687e-10 |后勤|
| 17 |接受| 0.00066515 | 4.5966 | 0.00066515 | 0.0006838 | 7.7159e-08 |后勤|
| 18 |接受| 0.0012353 | 4.6723 | 0.00066515 | 0.00068521 | 0.00083275 |支持|
| 19 |接受| 0.00076017 | 4.2389 | 0.00066515 | 0.00068508 | 5.0781e-05 |支持|
| 20 |接受| 0.00085519 | 3.2483 | 0.00066515 | 0.00068527 | 0.00022104 |支持|
|=====================================================================================================| | Iter | Eval客观客观| | | BestSoFar | BestSoFar |λ|学生| | |结果| |运行时| | (estim(观察) .) | | | |=====================================================================================================| | 21日|接受| 0.00082351 | 6.7163 | 0.00066515 | 0.00068569 | 4.5396 e-06 svm | |
| 22 |接受|.0010769 | 15.946 | 0.00066515 | 0.00070107 | 5.1931e-06 |后勤|
| 23 |接受| 0.00095021 | 17.989 | 0.00066515 | 0.00069594 | 1.3051e-06 |后勤|
| 24 |接受| 0.00085519 | 5.5831 | 0.00066515 | 0.00069625 | 1.6481e-05 |支持|
| 25 |接受| 0.00085519 | 4.5366 | 0.00066515 | 0.00069643 | 1.157e-06 |支持|
| 26 |接受| 0.00079184 | 3.6968 | 0.00066515 | 0.00069667 | 1.0016e-08 |支持|
| 27 |接受| 0.00072849 | 3.9655 | 0.00066515 | 0.00069848 | 4.2234e-08 |后勤|
| 28 |接受| 0.049221 | 0.49611 | 0.00066515 | 0.00069842 | 3.1608 |后勤|
| 29 |接受| 0.00085519 | 4.3911 | 0.00066515 | 0.00069855 | 8.5626e-10 |支持|
| 30 |接受| 0.00076017 | 3.8952 | 0.00066515 | 0.00069837 | 3.1946e-10 |后勤|
__________________________________________________________ 优化完成。最大目标:达到30。总运行时间:173.5287秒。最佳观测可行点:Lambda Learner __________ ________ 7.6994e-08 logistic观测目标函数值= 0.00066515估计目标函数值= 0.00069859函数评估时间= 4.3717最佳估计可行点(根据模型):Lambda Learner __________ ________ 7.4324e-08 logistic估计目标函数值= 0.00069837估计函数评估时间= 4.3951
Mdl = ClassificationLinear ResponseName: 'Y' ClassNames: [0 1] ScoreTransform: 'logit' Beta: [34023×1 double]偏差:-10.1723 Lambda: 7.4324 -08学习者:'logistic'属性,方法
X- - - - - -预测数据
完整的矩阵|稀疏矩阵
预测数据,指定为 的长度 请注意 如果你定位你的预测矩阵,使观察结果对应列和指定 数据类型:单
Y- - - - - -类标签
分类数组|字符数组|字符串数组|逻辑向量|数值向量|字符向量的单元格数组
分类模型要训练到的类标签,指定为类别、字符或字符串数组、逻辑或数字向量或字符向量的单元格数组。 如果 的长度 方法指定类顺序是一个好的实践 数据类型:
fitclinear
fitcecoc
X
资源描述
一会
字符
资源描述- - - - - -样本数据
表格
用于训练模型的样例数据,指定为表。每一行 如果 如果 如果 数据类型:ResponseVarName
公式
Y
表格
ResponseVarName- - - - - -响应变量名
变量的名称资源描述
中指定为变量名的响应变量名 您必须指定 响应变量必须是类别、字符或字符串数组、逻辑或数字向量,或者字符向量的单元格数组。如果 类指定类的顺序是一个好的实践 数据类型:资源描述
一会
字符
公式- - - - - -响应变量和预测变量子集的解释模型
特征向量|字符串标量
响应变量和预测变量子集的解释模型,在形式中指定为字符向量或字符串标量 中指定变量的子集 公式中的变量名必须是 中的变量名可以进行验证资源描述
isvarname
cellfun (@isvarname Tbl.Properties.VariableNames)
matlab.lang.makeValidName
table . properties . variablenames = matlab.lang.makeValidName(table . properties . variablenames);
数据类型:字符
请注意
软件处理 响应变量中缺少值(例如, 预测器观察中至少缺少一个值(例如,行) 为了节省内存使用,最好的做法是在训练前手动从训练数据中删除包含缺失值的观察值。
{2}
南
指定逗号分隔的可选对“ObservationsIn”、“列”、“学习者”,“物流”、“CrossVal”,“上”
请注意
方法不能使用任何交叉验证名值对参数
“λ”- - - - - -正则化期限强度
“汽车”
(默认)|负的标量|非负值的向量
正则化术语强度,指定为逗号分隔的对,由 为 如果你指定一个交叉验证,名值对参数(例如, 否则, 对于一个非负值的向量, 如果 如果 例子: 数据类型:
CrossVal
解算器
正则化
fitclinear
“λ”,10 ^ (- (10:2:2))
字符
“学习者”- - - - - -线性分类模型类型
“支持向量机”
(默认)|“物流”
线性分类模型类型,指定为逗号分隔对组成 在这个表格中, β x b 例子:
价值 算法 响应范围 损失函数
“支持向量机”
万博1manbetx支持向量机 y 铰链:
“物流”
逻辑回归 一样
异常(物流):
“学习者”,“物流”
“ObservationsIn”- - - - - -预测器数据观测维数
“行”
(默认)|“列”
预测器数据观测维数,指定为逗号分隔的对,由 请注意 如果你定位你的预测矩阵,使观察结果对应列和指定
“正规化”- - - - - -复杂性惩罚类型
“套索”
|“岭”
复杂度惩罚类型,指定为逗号分隔的对,由 该软件由平均损失函数的和组成最小化目标函数 来指定正则化项强度,也就是 该软件排除了偏差项( 如果 提示 对于预测变量选择,指定 对于优化精度,请指定 例子:学习者
价值 描述
“套索”
套索(L1)惩罚:
“岭”
脊(L2)刑:
λ
解算器
“正规化”、“套索”
“规划求解”- - - - - -目标函数最小化技术
“sgd”
|“asgd”
|“双重”
|“蓄热”|“lbfgs”|“sparsa”|字符串数组|字符向量的单元格数组
目标函数最小化技术,指定为逗号分隔对,由 如果你指定: 山脊惩罚(见 支持向量机模型(参见 一个套索惩罚和 否则,默认的求解器为 如果指定求解器名称的字符串数组或单元格数组,则软件将按指定的顺序使用所有求解器 有关要选择哪个求解器的详细信息,请参见 例子:
价值 描述 限制
“sgd”
随机梯度下降(SGD)
“asgd”
平均随机梯度下降(ASGD)
“双重”
支持向量机的双SGD
正则化
必须学习者
“蓄热”
Broyden-Fletcher-Goldfarb-Shanno准牛顿算法(BFGS)
效率低下,如果 X
“lbfgs”
有限内存BFGS (LBFGS)
正则化
“sparsa”
可分离近似稀疏重建(SpaRSA)
正则化
λ
“规划求解”,{‘sgd’,‘lbfgs}
“β”- - - - - -初始线性系数估计
0 (p, 1)
(默认)|数值向量|数字矩阵
初始线性系数估计( 如果指定 软件优化使用 该软件再次优化使用的结果估计从以前的优化作为 软件执行第2步,直到耗尽所有值 如果指定 如果你设置 数据类型:X
λ
j
j
j
单
“偏见”- - - - - -初始截距估计
数字标量|数值向量
初始截距估计( 如果指定一个标量,那么软件将优化目标函数 软件优化使用 该方法使用得到的估计值作为下一个优化迭代的温暖开始,并使用中的下一个最小值 软件执行第2步,直到耗尽所有值 如果指定 默认情况下: 如果 如果 数据类型:λ
j
j
j
学习者
j
单
“FitBias”- - - - - -线性模型截距包含标志
真正的
(默认)|假
线性模型截距包含标志,指定为逗号分隔的对,由 例子: 数据类型:
价值 描述
真正的
该软件包括偏差项
假
软件设置 “FitBias”,假的
逻辑
“PostFitBias”- - - - - -标志以适合优化后的线性模型截距
假
(默认)|真正的
标志来拟合优化后的线性模型截距,指定为逗号分隔的对,由 估计 估计 评估分类分数 不菲 如果你指定 例子: 数据类型:
价值 描述
假
软件估计偏差项
真正的
FitBias
“PostFitBias”,真的
逻辑
“详细”- - - - - -冗长的水平
0
(默认)|非负整数
冗长级别,指定为逗号分隔的对,由 例子: 数据类型:
价值 描述
0
fitclinear
1
fitclinear
其他正整数 fitclinear
“详细”,1
双
“BatchSize”- - - - - -Mini-batch大小
正整数
小批处理大小,指定为逗号分隔的对,由 如果 如果 例子: 数据类型:
X
“BatchSize”,100年
单
“LearnRate”- - - - - -学习速率
积极的标量
学习率,指定为逗号分隔的对,由 如果
λ 如果 如果 如果 默认情况下, 例子: 数据类型:
正则化
λ
解算器
“LearnRate”,0.01
单
“OptimizeLearnRate”- - - - - -标志降低学习速率
真正的
(默认)|假
标志,以在软件检测到发散(即超过最小值)时降低学习率,指定为逗号分隔的对,由 如果 对于少数优化迭代,软件开始优化使用 如果目标函数的值增加,则软件重新启动,使用当前学习率值的一半。 软件迭代第2步,直到目标函数减小。 例子: 数据类型:
LearnRate
“OptimizeLearnRate”,真的
逻辑
“TruncationPeriod”- - - - - -套索截断运行之间的小批次数量
10
(默认)|正整数
套索截断运行之间的小批次数量,指定为逗号分隔的对,由 在截断运行后,软件对线性系数应用软阈值。也就是说,经过加工
SGD, ASGD, 如果 例子: 数据类型:
λ
正则化
“TruncationPeriod”,100年
单
“CategoricalPredictors”- - - - - -分类预测器列表
正整数向量|逻辑向量|字符矩阵|字符串数组|字符向量的单元格数组|“所有”
类别预测器列表,指定为逗号分隔的对,由 默认情况下,如果预测器数据在表中( 对于已识别的类别预测因子, 例子: 数据类型:
价值 描述
正整数向量 向量中的每个条目都是一个索引值,对应于预测器数据的列( X
资源描述
逻辑向量 一个
字符矩阵 矩阵的每一行都是一个预测变量的名称。中的条目名称必须匹配 PredictorNames
字符向量的字符串数组或单元格数组 数组中的每个元素都是一个预测变量的名称。中的条目名称必须匹配
“所有”
所有的预测都是绝对的。 “CategoricalPredictors”、“所有”
单
“类名”- - - - - -用于培训的类的名称
分类数组|字符数组|字符串数组|逻辑向量|数值向量|字符向量的单元格数组
用于训练的类名,指定为逗号分隔的对,由 如果 使用 在培训期间订购课程。 指定与类顺序对应的任何输入或输出参数维度的顺序。例如,使用 选择培训类的一个子集。例如,假设所有不同的类名的集合 的默认值。 例子: 数据类型:Y
成本
“类名”,{' b ', ' g '}
分类
“成本”- - - - - -误分类代价
方阵|结构数组
错误分类代价,指定为逗号分隔的对组成 如果你指定了方阵 如果指定了结构 的默认值。 例子: 数据类型:
一会
S.ClassNames
Y
S.ClassificationCosts
K
K
K
fitclinear
之前
“成本”,[0 2;1 0]
单
“PredictorNames”- - - - - -预测器变量名
唯一名称的字符串数组|唯一字符向量的单元格数组
预测器变量名,指定为逗号分隔的一对,由 如果你提供 名字的顺序 默认情况下, 如果你提供 默认情况下, 一个好的实践是使用任意一种方法指定训练的预测器 例子: 数据类型:
X
Y
资源描述
PredictorNames
公式
PredictorNames,{‘SepalLength’,‘SepalWidth’,‘PetalLength’,‘PetalWidth}
字符串
“之前”- - - - - -先验概率
“经验”
(默认)|“统一”
|数值向量|结构数组
每个类的先验概率,指定为逗号分隔的对,由 下表总结了设置先验概率的可用选项。 一个结构 例子: 数据类型:
价值 描述
“经验”
类的先验概率是类的相对频率 Y
“统一”
所有类的先验概率都等于1/ K
K
数值向量 每个元素都是一个类先验概率。根据元素入的顺序对它们排序
结构数组
S.ClassNames
S.ClassProbs
fitclinear
“之前”,结构(“类名”,{{“setosa”、“癣”}},ClassProbs, 1:2)
字符
“ResponseName”- - - - - -响应变量名
“Y”
(默认)|特征向量|字符串标量
响应变量名,指定为逗号分隔的对 如果你提供 如果你提供 例子: 数据类型:
Y
ResponseVarName
公式
“ResponseName”、“响应”
字符
“ScoreTransform”- - - - - -分数转换
“没有”
(默认)|“doublelogit”
|“invlogit”
|“ismax”|分对数的|函数处理|……
分数转换,指定为逗号分隔的对组成 这个表总结了可用的字符向量和字符串标量。 对于MATLAB函数或您定义的函数,使用它的函数句柄进行分数变换。函数句柄必须接受一个矩阵(原始分数)并返回一个相同大小的矩阵(转换后的分数)。 例子: 数据类型:
价值 描述
“doublelogit”
1 / (1 +
“invlogit”
日志(
“ismax”
将分数最大的类的分数设置为1,并将所有其他类的分数设置为0
分对数的
1 / (1 +
“没有”
x
“标志”
1
“对称”
2
“symmetricismax”
将分数最大的类的分数设置为1,并将所有其他类的分数设置为-1
“symmetriclogit”
2 / (1 + “ScoreTransform”、“分对数的
字符
“重量”- - - - - -观察权重
正数值向量|变量的名称资源描述
观察权值,用逗号分隔的对表示 如果将输入数据指定为表 默认情况下, 软件规范化 数据类型:资源描述
X
单
“CrossVal”- - - - - -交叉验证标志
“关闭”
(默认)|“上”
交叉验证标志,指定为逗号分隔的对,由 如果你指定 要覆盖此交叉验证设置,请使用以下名称-值对参数之一: 例子:CVPartition
坚持
KFold
“Crossval”,“上”
“坚持”- - - - - -保留验证的部分数据
(0,1)范围内的标量值
用于抵制验证的数据的一部分,指定为逗号分隔的对,由 随机储备 存储紧凑,训练的模型在 要创建一个交叉验证的模型,你只能使用以下四个选项之一: 例子: 数据类型:p
,然后软件:
p
* 100CVPartition
'
坚持
'
KFold
'
“坚持”,0.1
双
“KFold”- - - - - -折叠数
10
(默认)|大于1的正整数
在交叉验证的分类器中使用的折叠数,指定为逗号分隔的对,由 将数据随机划分为 对于每个集合,保留该集合作为验证数据,并使用另一个集合训练模型 存储 要创建一个交叉验证的模型,你只能使用以下四个选项之一: 例子: 数据类型:
k
k
CVPartition
'
坚持
'
KFold
'
“KFold”,8
单
“BatchLimit”- - - - - -最大批号
正整数
要处理的最大批次数,指定为逗号分隔的对,由 默认情况下: 软件通过这些数据 如果指定多个求解器,并使用(A)SGD获得下一个求解器的初始近似,则默认值为 如果你指定 如果你指定 例子: 数据类型:
PassLimit
BatchSize
'
PassLimit
'
“BatchLimit”,100年
单
“BetaTolerance”- - - - - -线性系数和偏差项的相对公差
1的军医
(默认)|负的标量
线性系数和偏差项(截距)上的相对公差,指定为逗号分隔的对,由 让 中指定的最后一个求解器,如果该软件收敛 例子: 数据类型:解算器
e-6 BetaTolerance, 1
单
“NumCheckConvergence”- - - - - -下次收敛检验前要处理的批次数量
正整数
在下一次收敛检查之前要处理的批数,指定为逗号分隔的对,由 要指定批处理大小,请参见 默认情况下,软件每次通过整个数据集大约检查10次收敛性。 例子: 数据类型:BatchSize
“NumCheckConvergence”,100年
单
“PassLimit”- - - - - -最大通过次数
1
(默认)|正整数
通过数据的最大次数,指定为逗号分隔的对,由 当 如果你指定 例子: 数据类型:fitclinear
BatchLimit
'
“PassLimit”,5
单
“ValidationData”- - - - - -优化收敛检测验证数据
单元阵列|表格
用于优化收敛检测的验证数据,指定为逗号分隔的对,由 在优化过程中,软件定期估计损失 你可以指定 如果你指定 您可以选择指定 如果你指定 中指定的最后一个求解器,如果该软件收敛 默认情况下,软件不会通过监控验证数据丢失来检测收敛性。CrossVal
资源描述
ValidationData {1}
X
ValidationData {2}
Y
ResponseVarName
公式
详细的
解算器
“BetaTolerance”- - - - - -线性系数和偏差项的相对公差
1的军医
(默认)|负的标量
线性系数和偏差项(截距)上的相对公差,指定为逗号分隔的对,由 让 如果你还指定了 中指定的最后一个求解器,如果该软件收敛 例子: 数据类型:DeltaGradientTolerance
解算器
e-6 BetaTolerance, 1
单
“DeltaGradientTolerance”- - - - - -Gradient-difference宽容
1
(默认)|负的标量
上下池之间的梯度差公差 如果KKT违规者的规模小于 中指定的最后一个求解器,如果该软件收敛 例子: 数据类型:
解算器
依照“DeltaGapTolerance”,1
双
“NumCheckConvergence”- - - - - -在下一次收敛检查前,通过整个数据集处理的次数
5
(默认)|正整数
在下一次收敛检查之前通过整个数据集要处理的次数,指定为逗号分隔的对,由 例子: 数据类型:“NumCheckConvergence”,100年
单
“PassLimit”- - - - - -最大通过次数
10
(默认)|正整数
通过数据的最大次数,指定为逗号分隔的对,由 当软件完成一次数据传输后,它就处理了所有的观察结果。 当软件通过数据时 例子: 数据类型:“PassLimit”,5
单
“ValidationData”- - - - - -优化收敛检测验证数据
单元阵列|表格
用于优化收敛检测的验证数据,指定为逗号分隔的对,由 在优化过程中,软件定期估计损失 你可以指定 如果你指定 您可以选择指定 如果你指定 中指定的最后一个求解器,如果该软件收敛 默认情况下,软件不会通过监控验证数据丢失来检测收敛性。CrossVal
资源描述
ValidationData {1}
X
ValidationData {2}
Y
ResponseVarName
公式
详细的
解算器
“BetaTolerance”- - - - - -线性系数和偏差项的相对公差
1的军医
(默认)|负的标量
线性系数和偏差项(截距)上的相对公差,指定为逗号分隔的对,由 让 如果你还指定了 中指定的最后一个求解器,如果该软件收敛 例子: 数据类型:GradientTolerance
解算器
e-6 BetaTolerance, 1
单
“GradientTolerance”- - - - - -绝对梯度公差
1 e-6
(默认)|负的标量
绝对梯度公差,用逗号分隔的对表示 让 如果你还指定了 如果软件收敛于软件中指定的最后一个求解器,则优化终止。否则,软件将使用中指定的下一个求解器 例子: 数据类型:BetaTolerance
解算器
e-5 GradientTolerance, 1
单
“HessianHistorySize”- - - - - -Hessian近似的历史缓冲区大小
15
(默认)|正整数
Hessian近似的历史缓冲区的大小,指定为逗号分隔的对,由 软件不支持万博1manbetx 例子: 数据类型:“HessianHistorySize”,10
单
“IterationLimit”- - - - - -优化迭代的最大次数
1000
(默认)|正整数
优化迭代的最大次数,指定为逗号分隔的对,由 例子: 数据类型:解算器
“IterationLimit”,500年
单
“ValidationData”- - - - - -优化收敛检测验证数据
单元阵列|表格
用于优化收敛检测的验证数据,指定为逗号分隔的对,由 在优化过程中,软件定期估计损失 你可以指定 如果你指定 您可以选择指定 如果你指定 中指定的最后一个求解器,如果该软件收敛 默认情况下,软件不会通过监控验证数据丢失来检测收敛性。CrossVal
资源描述
ValidationData {1}
X
ValidationData {2}
Y
ResponseVarName
公式
详细的
解算器
“OptimizeHyperparameters”- - - - - -待优化参数
“没有”
(默认)|“汽车”
|“所有”
|合格参数名称的字符串数组或单元格数组|向量的optimizableVariable对象
参数要优化,指定为逗号分隔的对,由 合格参数名称的字符串数组或单元格数组。 向量的 优化尝试最小化交叉验证的损失(错误) 请注意 符合条件的参数 通过传递vector来设置非默认参数 通过 默认情况下,迭代显示出现在命令行中,并根据优化中的超参数的数量显示图形。对于优化和绘图,目标函数为 示例请参见 例子:
“没有”
“汽车”
“所有”
hyperparameters
HyperparameterOptimizationOptions
“OptimizeHyperparameters”
负载
“OptimizeHyperparameters”、“汽车”
“HyperparameterOptimizationOptions”- - - - - -优化选项
结构
选项,指定为逗号分隔的对,由 获取函数,其名称包括 时间限制,指定为正实数。时间限制以秒为单位,用 显示到命令行。 详细信息请参见 指示是否在每次迭代时重新划分交叉验证的逻辑值。如果 例子: 数据类型:OptimizeHyperparameters
字段名 值 默认的
优化器
“bayesopt”
bayesopt
“gridsearch”
“randomsearch”
“gridsearch”
“bayesopt”
AcquisitionFunctionName
“expected-improvement-per-second-plus”
“expected-improvement”
“expected-improvement-plus”
“expected-improvement-per-second”
“lower-confidence-bound”
“probability-of-improvement”
“expected-improvement-per-second-plus”
MaxObjectiveEvaluations
目标函数评价的最大次数。 30.
MaxTime
抽搐
toc
正
NumGridDivisions
为 10
ShowPlots
指示是否显示图形的逻辑值。如果 真正的
SaveIntermediateResults
指示何时是否保存结果的逻辑值 BayesianOptimization
假
详细的
0
1
2
详细的
名称-值对参数。1
UseParallel
指示是否并行运行贝叶斯优化的逻辑值,这需要并行计算工具箱™。由于并行时序的不可再现性,并行贝叶斯优化不一定产生可再现的结果。详情请参见 假
重新分区
真正的
假
使用以下三个字段名称中的一个。
CVPartition
一个 cvpartition
“Kfold”,5
坚持
范围内的标量
Kfold
大于1的整数。 “HyperparameterOptimizationOptions”、结构(MaxObjectiveEvaluations, 60)
结构体
Mdl-训练过的线性分类模型ClassificationLinear模型对象|ClassificationPartitionedLinear交叉验证的模型对象
训练的线性分类模型,返回为 如果设置任何名称-值对参数 的属性来引用 请注意 与其他分类模型不同的是,为了节省内存使用,KFold
坚持
CrossVal
CVPartition
FitInfo-优化细节结构数组
优化细节,作为结构数组返回。 字段指定最终值或名值对参数规范,例如, 该表描述了一些值得注意的字段。 优化终止原因 中的值 每个迭代的优化信息的结构数组。这个领域 要访问字段,请使用点符号。例如,要访问每次迭代的目标函数值的向量,输入 检查是一种很好的做法λ
解算器
场 描述
TerminationStatus
FitTime
流逝,挂钟时间以秒为单位
历史
整数 解算器
1 SGD
2 ASGD
3. 支持向量机的双SGD
4 LBFGS
5 高炉煤气
6 SpaRSA
HyperparameterOptimizationResults-超参数交叉验证优化BayesianOptimization对象|超参数和相关值的表
超参数的交叉验证优化,返回为BayesianOptimization
的价值 的价值
“bayesopt”
类目对象
BayesianOptimization
“gridsearch”
使用的超参数表,观测到的目标函数值(交叉验证损失),以及观测值从最低(最好)到最高(最差)的排名
一个
高维线性分类和回归模型相对快速地最小化目标函数,但以一定的准确性为代价,预测变量只有数字限制,且模型必须与参数线性相关。如果您的预测器数据集是低到中维的,或者包含异构变量,那么您应该使用适当的分类或回归拟合函数。为了帮助您决定哪个拟合函数适合您的低维数据集,请使用此表。 二进制分类: 多类分类: 回归: 计算预测变量的Gram矩阵,便于进行非线性核变换。 使用SMO、ISDA或 无正则化最小二乘: 使用套索惩罚的正则化最小二乘: 岭回归: 无正则化的逻辑回归: 使用套索惩罚的正则化逻辑回归:
拟合模型 函数 显著的算法差异
支持向量机
fitcsvm
fitcecoc
fitrsvm
quadprog
线性回归
fitlm
套索
脊
套索
套索
逻辑回归
fitglm
lassoglm
fitglm
lassoglm
最好的做法是调整预测矩阵的方向,使观察结果与列对应,并进行指定
当你有高维预测器数据和 其他选项可能导致较差的优化精度。正则化
解算器
“sgd”
“asgd”
“双重”
学习者
{“sgd”、“lbfgs”}
{“asgd”、“lbfgs”}
{“双”、“lbfgs”}
为了获得更好的优化精度,当您有中至低维预测器数据和
如果
“sgd”
“asgd”
“sparsa”
{“sgd”、“sparsa”}
{“asgd”、“sparsa”}
在选择SGD和ASGD时,请考虑: SGD每次迭代花费更少的时间,但是需要更多的迭代才能收敛。 ASGD需要更少的迭代才能收敛,但是每次迭代需要更多的时间。
如果你的预测数据有很少的观察结果但有很多预测变量,那么: 指定 对于SGD或ASGD求解器,设置
PassLimit
对于SGD和ASGD求解者, 如果 如果BatchSize
较高的学习率(参见LearnRate
当使用套索惩罚,试验不同的值TruncationPeriod
为了提高效率, 的行和列要求您将预测器和观察定向为X
X = bsxfun (@rdivide bsxfun (@minus X,意味着(X, 2)),性病(0,2));
在训练一个模型之后,您可以生成预测新数据标签的C/ c++代码。生成C/ c++代码需要
如果你指定 当 当后续验证损失估算超过最小估算5倍时,ValidationData
fitclinear
如果你指定 一次 如果你实现 否则, 您可以确定交叉验证模型的质量。例如: 为了使用第1步中的保持值或折叠外数据确定验证损失,将交叉验证模型传递给 为了预测第1步中对保持率或折叠外数据的观察结果,将交叉验证的模型传递给CrossVal
CVPartition
坚持
KFold
fitclinear
X
Y
资源描述
fitclinear
[1]谢振杰,张锦文,林锦杰,s.s. Keerthi, s.s Sundararajan。大规模线性支持向量机的双坐标下降方法。
[2]兰福德,J.,李丽,张泰。基于截断梯度的稀疏在线学习。
[3]诺塞达尔,J.和S. J.赖特。
sherv - schwartz, S, Y. Singer, N. Srebro。Pegasos:支持向量机的原始估计亚梯度求解器。
[5]赖特,S. J. R. D.诺瓦克,M. A. T.菲格雷多。"可分近似稀疏重建"
小林。正则化随机学习和在线优化的双平均方法。
[7]徐伟。"基于平均随机梯度下降的最优单次大规模学习"
使用注意事项和限制: 与内存中的默认值相比,一些名值对参数具有不同的默认值 对于高数组, 的初始值 有关更多信息,请参见
fitclinear
“ObservationsIn”
“λ”
“学习者”
“正规化”
“规划求解”
“FitBias”
“详细”
“β”
“偏见”
“类名”
“成本”
“之前”
“重量”
“HessianHistorySize”
“BetaTolerance”
“GradientTolerance”
“IterationLimit”
“OptimizeHyperparameters”
“HyperparameterOptimizationOptions”
要执行并行超参数优化,请使用 有关并行超参数优化的更多信息,请参见 有关并行计算的更多一般信息,请参见
ClassificationLinear
|ClassificationPartitionedLinear
|fitcecoc
|fitckernel
|fitcsvm
|fitglm
|fitrlinear
|kfoldLoss
|kfoldPredict
|lassoglm
|预测
|templateLinear
|testcholdout
你点击了一个对应于这个MATLAB命令的链接: 在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,在可用的地方获得翻译的内容,并查看当地的活动和优惠。根据您的地理位置,我们建议您选择:
您也可以从以下列表中选择网站: 选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。如何获得最佳的网站性能
欧洲