主要内容

incrementalLearner

将二进制分类的核模型转换为增量学习器

    描述

    例子

    IncrementalMdl= incrementalLearner (Mdl返回的二进制高斯核分类模型增量学习,IncrementalMdl,使用传统训练的内核模型对象或内核模型模板对象Mdl

    如果您指定了一个传统训练的模型,那么它的属性值反映了从中获得的知识Mdl(模型参数和超参数)。因此,IncrementalMdl给出新的观察结果就能预测标签,是吗温暖的,这意味着它的预测性能是被跟踪的。

    例子

    IncrementalMdl= incrementalLearner (Mdl,名称=值使用一个或多个名称-值参数指定的其他选项。有些选择需要你训练IncrementalMdl在它的预测性能被跟踪之前。例如,MetricsWarmupPeriod = 50, MetricsWindowSize = 100指定在跟踪性能指标之前的50个观察值的初步增量训练期,并指定在更新窗口性能指标之前处理100个观察值。

    例子

    全部折叠

    训练一个用于二进制学习的内核分类模型fitckernel,然后将其转换为增量学习器。

    加载和预处理数据

    加载人类活动数据集。

    负载humanactivity

    关于数据集的详细信息,请输入描述在命令行。

    响应可以是以下五类之一:坐着,,,运行,或跳舞.通过识别被测者是否在移动(actid> 2)。

    Y = actid > 2;

    训练核分类模型

    为整个数据集拟合一个内核分类模型。

    Mdl = fitckernel(壮举,Y)
    Mdl = ClassificationKernel ResponseName: 'Y' ClassNames: [0 1] Learner: 'svm' NumExpansionDimensions: 2048 KernelScale: 1 Lambda: 4.1537e-05 BoxConstraint: 1 Properties, Methods

    Mdl是一个ClassificationKernel模型对象表示传统训练的内核分类模型。

    转换训练模型

    将传统训练的内核分类模型转换为增量学习模型。

    IncrementalMdl = incrementalLearner(Mdl,求解器=“sgd”LearnRate = 1)
    IncrementalMdl = incrementalClassificationKernel IsWarm: 1 Metrics: [1x2 table] ClassNames: [0 1] ScoreTransform: 'none' NumExpansionDimensions: 2048 KernelScale: 1 Properties, Methods

    IncrementalMdl是一个incrementalClassificationKernel为增量学习准备的模型对象。

    • incrementalLearner函数通过将模型参数和其他信息传递给增量学习器来初始化增量学习器Mdl从训练数据中提取。

    • IncrementalMdl是温暖的(IsWarmIs 1),这意味着增量学习函数可以开始跟踪性能指标。

    • incrementalClassificationKernel使用自适应尺度不变求解器训练模型,而fitckernel训练有素的Mdl使用有限内存Broyden-Fletcher-Goldfarb-Shanno (LBFGS)求解器。

    预测的反应

    通过转换传统训练模型创建的增量学习器可以生成预测,而无需进一步处理。

    使用这两种模型预测所有观察的分类分数。

    [~,ttscores] = predict(Mdl,壮举);[~,ilscores] = predict(IncrementalMdl,feat);compareScores = norm(ttscores(:,1) - ilscores(:,1))
    compareScores = 0

    模型生成的分数之间的差值为0。

    使用训练过的内核分类模型初始化增量学习器。通过指定指标预热期和指标窗口大小来准备增量学习者。

    加载人类活动数据集。

    负载humanactivity

    关于数据集的详细信息,请输入描述在命令行。

    反应可以分为五类:坐着、站着、走着、跑着和跳舞。通过识别被测者是否在移动(actid> 2)。

    Y = actid > 2;

    因为数据集是按活动分组的,所以为了简单起见,可以对其进行随机排序。然后,随机将数据分成两半:前半部分用于传统的模型训练,后半部分用于增量学习。

    n =数字(Y);rng (1)%用于再现性cvp = cvpartition(n,Holdout=0.5);Idxtt =训练(cvp);Idxil = test(cvp);Shuffidx = randperm(n);X = feat(shuffidx,:);Y = Y(shuffidx);数据的前半部分Xtt = X(idxtt,:);Ytt = Y(idxtt);数据的后半部分Xil = X(idxil,:);Yil = Y(idxil);

    对数据的前半部分拟合一个内核分类模型。

    Mdl = fitckernel(Xtt,Ytt);

    将传统训练的内核分类模型转换为增量学习模型。指定以下内容:

    • 2000个观测值的性能指标预热期

    • 度量窗口大小为500个观测值

    • 利用分类误差和铰链损耗来衡量模型的性能

    IncrementalMdl =增量学习者...MetricsWarmupPeriod = 2000, MetricsWindowSize = 500,...指标= [“classiferror”,“枢纽”]);

    方法将增量模型拟合到数据的后半部分updateMetricsAndFit函数。在每次迭代中:

    • 通过一次处理20个观测来模拟一个数据流。

    • 将先前的增量模型覆盖为一个适合于新观测值的新模型。

    • 存储累积指标、窗口指标和训练观察的数量,以查看它们在增量学习期间如何发展。

    %预先配置nil =数字(Yil);numObsPerChunk = 20;nchunk = cell (nil/numObsPerChunk);ce = array2table(0 (nchunk,2),VariableNames=[“累积”,“窗口”]);hinge = array2table(0 (nchunk,2),VariableNames=[“累积”,“窗口”]);Numtrainobs = [0 (nchunk,1)];%增量拟合j = 1:nchunk ibegin = min(nil,numObsPerChunk*(j-1) + 1);iend = min(nil,numObsPerChunk*j);Idx = ibegin:iend;IncrementalMdl = updateMetricsAndFit(增量mdl,Xil(idx,:),Yil(idx));ce{j,:} = IncrementalMdl。指标{“ClassificationError”,:};hinge{j,:} = IncrementalMdl。指标{“HingeLoss”,:};numtrainobs(j) = incrementalmll . numtrainingobservations;结束

    IncrementalMdl是一个incrementalClassificationKernel在流中的所有数据上训练的模型对象。在增量学习期间和模型预热后,updateMetricsAndFit检查模型在传入观测数据上的性能,然后将模型与这些观测数据拟合。

    在单独的瓷砖上绘制训练观察数和性能指标的跟踪图。

    T = tiledlayout(3,1);Nexttile plot(numtrainobs) xlim([0 nchunk]) ylabel([“数量”,“训练观察”)参照线(IncrementalMdl。MetricsWarmupPeriod/numObsPerChunk,”——“nexttile plot(ce.Variables) xlim([0 nchunk])“分类错误”)参照线(IncrementalMdl。MetricsWarmupPeriod/numObsPerChunk,”——“=)传说(ce.Properties.VariableNames位置“最佳”nexttile plot(hinge.Variables) xlim([0 nchunk])“铰链损失”)参照线(IncrementalMdl。MetricsWarmupPeriod/numObsPerChunk,”——“)包含(t)“迭代”

    图中包含3个轴对象。坐标轴对象1包含2个line、constantline类型的对象。坐标轴对象2包含3个line、constantline类型的对象。这些对象代表累积、窗口。坐标轴对象3包含3个line、constantline类型的对象。

    情节表明updateMetricsAndFit做以下事情:

    • 在所有增量学习迭代期间拟合模型。

    • 仅在指标预热期之后计算性能指标。

    • 在每次迭代期间计算累计度量。

    • 在处理500个观察结果(25次迭代)后计算窗口度量。

    的默认解算器incrementalClassificationKernel是自适应比例不变求解器,在拟合模型之前不需要超参数调优。然而,如果您指定标准随机梯度下降(SGD)或平均SGD (ASGD)求解器,您还可以指定一个估计周期,在此期间增量拟合函数调整学习率。

    加载人类活动数据集。

    负载humanactivity

    关于数据集的详细信息,请输入描述在命令行。

    响应可以是以下五类之一:坐着,,,运行,跳舞.通过识别被测者是否在移动(actid> 2)。

    Y = actid > 2;

    随机将数据分成两半:前半部分用于传统的模型训练,后半部分用于增量学习。

    n =数字(Y);rng (1)%用于再现性cvp = cvpartition(n,Holdout=0.5);Idxtt =训练(cvp);Idxil = test(cvp);数据的前半部分Xtt = feat(idxtt,:);Ytt = Y(idxtt);数据的后半部分Xil = feat(idxil,:);Yil = Y(idxil);

    对数据的前半部分拟合一个内核分类模型。

    TTMdl = fitckernel(Xtt,Ytt);

    将传统训练的内核分类模型转换为增量学习模型。指定标准SGD求解器和的估计周期2000观察结果(默认为1000当需要学习率时)。

    IncrementalMdl = incrementalLearner(TTMdl,求解器=“sgd”EstimationPeriod = 2000);

    IncrementalMdl是一个incrementalClassificationKernel为增量学习配置的模型对象。

    方法将增量模型拟合到数据的后半部分适合函数。在每次迭代中:

    • 通过一次处理10个观测数据来模拟数据流。

    • 将先前的增量模型覆盖为一个适合于新观测值的新模型。

    • 存储初始学习率和训练观察的数量,以查看它们在训练过程中如何演变。

    %预先配置nil =数字(Yil);numObsPerChunk = 10;nchunk = floor(nil/numObsPerChunk);Learnrate = [0 (nchunk,1)];Numtrainobs = [0 (nchunk,1)];%增量拟合j = 1:nchunk ibegin = min(nil,numObsPerChunk*(j-1) + 1);iend = min(nil,numObsPerChunk*j);Idx = ibegin:iend;IncrementalMdl = fit(IncrementalMdl,Xil(idx,:),Yil(idx));learnrate(j) = incrementalmll . solveroptions . learnrate;numtrainobs(j) = incrementalmll . numtrainingobservations;结束

    IncrementalMdl是一个incrementalClassificationKernel在流中的所有数据上训练的模型对象。

    在单独的瓷砖上绘制训练观察数和初始学习率的迹图。

    T = tiledlayout(2,1);nexttile plot(numtrainobs) xlim([0 nchunk]) xline(IncrementalMdl。EstimationPeriod / numObsPerChunk,“-”。);ylabel (“训练观察次数”nexttile plot(learn) xlim([0 nchunk]) ylabel(“初始学习率”)参照线(IncrementalMdl。EstimationPeriod/numObsPerChunk,“-”。);包含(t)“迭代”

    图中包含2个轴对象。坐标轴对象1包含2个line、constantline类型的对象。坐标轴对象2包含2个line、constantline类型的对象。

    情节表明适合函数在估计期间不能将模型与流数据拟合。初始学习率从0.7到估计周期后的自动调优值。在训练过程中,软件使用一个学习率,该学习率从中指定的初始值逐渐衰减LearnRateSchedule的属性IncrementalMdl

    输入参数

    全部折叠

    传统训练的高斯核模型或核模型模板,指定为ClassificationKernel返回的模型对象fitckernel返回的模板对象templateKernel,分别。

    请注意

    增量学习函数只支持数字输入预测数据。金宝app如果Mdl在分类数据上进行训练后,必须准备分类数据的编码版本以使用增量学习函数。使用dummyvar将每个分类变量转换为虚拟变量的数字矩阵。然后,以训练函数编码分类数据的相同方式,连接所有虚拟变量矩阵和任何其他数值预测器。详情请参见虚拟变量

    名称-值参数

    指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

    例子:解算器= " sgd ", MetricsWindowSize = 100指定用于目标优化的随机梯度下降求解器,并指定在更新窗口性能指标之前处理100个观测值。

    一般选择

    全部折叠

    目标函数最小化技术,在本表中指定一个值。

    价值 描述 笔记
    “扇区”

    增量学习的自适应尺度不变求解器[1]

    • 该算法不受参数影响,能适应预测器尺度的差异。在使用SGD或ASGD之前,请尝试此算法。

    • 方法之前对传入数据块进行洗牌适合函数拟合模型,集洗牌真正的

    “sgd” 随机梯度下降(SGD)[2][3]

    • 为了有效地使用SGD进行训练,请使用中列出的选项为超参数指定适当的值SGD和ASGD求解器选项

    • 适合函数总是在拟合模型之前打乱传入的数据块。

    “asgd” 平均随机梯度下降(ASGD)[4]

    • 为了有效地使用ASGD进行训练,请使用中列出的选项为超参数指定适当的值SGD和ASGD求解器选项

    • 适合函数总是在拟合模型之前打乱传入的数据块。

    例子:解算器= " sgd "

    数据类型:字符|字符串

    增量模型处理的用于在训练或跟踪性能指标之前估计超参数的观察数,指定为非负整数。

    请注意

    • 如果Mdl为增量学习做好准备(指定了训练所需的所有超参数),incrementalLearner部队EstimationPeriod0

    • 如果Mdl没有为增量学习做好准备,incrementalLearnerEstimationPeriod1000

    详情请参见估计时间

    例子:EstimationPeriod = 100

    数据类型:|

    SGD和ASGD求解器选项

    全部折叠

    小批处理大小,指定为正整数。在训练的每个学习周期中,incrementalLearner使用BatchSize观察计算次梯度。

    的每个函数调用的最后一个学习周期中,最后一个小批中的观察数适合updateMetricsAndFit)可以小于BatchSize.例如,如果你提供25个观测值给适合updateMetricsAndFit,该函数前两个学习周期使用10个观测值,最后一个学习周期使用5个观测值。

    例子:BatchSize = 5

    数据类型:|

    脊(l2)正则化项强度,指定为非负标量。

    例子:λ= 0.01

    数据类型:|

    初始学习率,指定为“汽车”或者一个正标量。

    学习率通过缩放目标次梯度来控制优化步长。LearnRate指定学习率的初始值,和LearnRateSchedule确定后续学习周期的学习率。

    当你指定“汽车”

    • 初始学习率为0.7

    • 如果EstimationPeriod>0,适合而且updateMetricsAndFit将速率更改为1 /√(1 + max (sum (x ^ 2, 2)))在最后EstimationPeriod

    例子:LearnRate = 0.001

    数据类型:||字符|字符串

    学习率计划,指定为本表中的值,其中LearnRate初始学习率ɣ0

    价值 描述
    “不变” 学习率为ɣ0对于所有的学习周期。
    “腐烂”

    学习周期的学习率t

    γ t γ 0 1 + λ γ 0 t c

    • λ的值λ

    • 如果解算器“sgd”,然后c= 1。

    • 如果解算器“asgd”,然后c= 0.75[4]

    例子:LearnRateSchedule = "不变"

    数据类型:字符|字符串

    自适应比例不变求解器选项

    全部折叠

    标记,用于在每次迭代中变换观察结果,指定为逻辑1真正的)或0).

    价值 描述
    逻辑1真正的 该软件对输入数据块中的观察结果进行洗牌适合函数符合模型。这个动作减少了抽样方案引起的偏差。
    逻辑0 软件按接收到的顺序处理数据。

    例子:洗牌= false

    数据类型:逻辑

    性能指标选项

    全部折叠

    方法在增量学习期间建模要跟踪的性能指标updateMetricsupdateMetricsAndFit函数,指定为内置损失函数名称,名称的字符串向量,函数句柄(@metricName),函数句柄的结构数组,或名称、函数句柄或结构数组的单元格向量。

    下表列出了内置的损失函数名称。您可以使用字符串向量指定多个。

    的名字 描述
    “binodeviance” 二项异常
    “classiferror” 分类错误
    “指数” 指数损失
    “枢纽” 铰链的损失
    “分对数” 物流损失
    “二次” 二次损失

    有关内置损失函数的详细信息,请参见损失

    例子:指标=(“classiferror”、“枢纽”)

    若要指定返回性能指标的自定义函数,请使用函数句柄表示法。函数必须是这样的形式:

    度量= customMetric(C,S)

    • 输出参数度规是一个n-by-1数值向量,其中每个元素是增量学习函数在一个学习周期中处理的数据中相应观测值的损失。

    • 您可以指定函数名(customMetric).

    • C是一个n-by-2逻辑矩阵,行表示对应观测值所属的类。列的顺序对应于增量学习模型中的类的顺序。创建C通过设置C (p,1,如果观察p在课堂上,为指定数据中的每个观测值。在行中设置另一个元素p0

    • 年代是一个n-by-2预测分类分数的数值矩阵。年代类似于分数的输出预测,其中行对应于数据中的观察值,列顺序对应于增量学习模型中的类顺序。S (p,是观察分级评分吗p按班级分类

    若要指定多个自定义指标并为每个指标分配自定义名称,请使用结构数组。要指定内置指标和自定义指标的组合,请使用单元格向量。

    例子:指标=结构(Metric1 = @customMetric1 Metric2 = @customMetric2)

    例子:指标= {@customMetric1 @customMetric2,“分对数”,结构(Metric3 = @customMetric3)}

    updateMetrics而且updateMetricsAndFit将指定的指标存储在属性中的表中IncrementalMdl。指标.的数据类型指标确定表的行名。

    指标数据类型 的描述指标属性行名称 例子
    字符串或字符向量 对应的内置度量的名称 行名称“classiferror”“ClassificationError”
    结构数组 字段名 行名称结构(Metric1 = @customMetric1)“Metric1”
    存储在程序文件中的函数的函数句柄 函数名称 行名称@customMetric“customMetric”
    匿名函数 CustomMetric_j,在那里j是度量j指标 行名称@ (C, S) customMetric (C, S)……CustomMetric_1

    有关性能度量选项的详细信息,请参见性能指标

    数据类型:字符|字符串|结构体|细胞|function_handle

    增量模型在跟踪其性能指标之前必须适合的观察数指标属性,指定为非负整数。增量拟合函数拟合后,增量模型为暖型(EstimationPeriod+MetricsWarmupPeriod)对增量模型的观测。

    有关性能度量选项的详细信息,请参见性能指标

    例子:MetricsWarmupPeriod = 50

    数据类型:|

    用于计算窗口性能指标的观察数,指定为正整数。

    有关性能度量选项的详细信息,请参见性能指标

    例子:MetricsWindowSize = 250

    数据类型:|

    输出参数

    全部折叠

    二进制高斯核分类模型用于增量学习,返回为incrementalClassificationKernel模型对象。IncrementalMdl还配置为在给定新数据的情况下生成预测(参见预测).

    incrementalLearner函数初始化IncrementalMdl中的模型信息用于增量学习Mdl.下表显示了Mdl属性,incrementalLearner的对应属性IncrementalMdl.该函数还传递初始化所需的其他模型信息IncrementalMdl,如学习的模型系数,正则化项强度,和随机数流。

    输入对象Mdl类型 财产 描述
    ClassificationKernel模型对象或内核模型模板对象 KernelScale 核尺度参数,一个正标量
    学习者 线性分类模型类型,一个特征向量
    NumExpansionDimensions 扩展空间的维数,为正整数
    ClassificationKernel模型对象 一会 类标签用于二进制分类,一个两元素列表
    NumPredictors 预测数,正整数
    之前 先验类标签分布,一个数值向量
    ScoreTransform 积分转换函数,函数名或函数句柄

    请注意,incrementalLearner不使用成本中传统训练模型的性质Mdl因为incrementalClassificationKernel不支持此属性。金宝app

    更多关于

    全部折叠

    增量学习

    增量学习,或在线学习是机器学习的一个分支,涉及处理来自数据流的传入数据,可能很少或根本不知道预测变量的分布、预测或目标函数的各个方面(包括调优参数值),或者观察结果是否被标记。增量学习与传统的机器学习不同,传统的机器学习有足够的标记数据来拟合模型,执行交叉验证来调优超参数,并推断预测器分布。

    给定传入的观察结果,增量学习模型以以下任何一种方式处理数据,但通常按以下顺序:

    • 预测标签。

    • 测量预测性能。

    • 检查模型中的结构断裂或漂移。

    • 将模型与观测结果相吻合。

    详情请参见增量学习概述

    增量学习的自适应尺度不变求解器

    增量学习的自适应尺度不变求解器,介绍于[1],是一个基于梯度下降的目标求解器,用于训练线性预测模型。该解算器是无超参数的,对预测变量尺度的差异不敏感,并且不需要预测变量分布的先验知识。这些特点使它非常适合增量学习。

    增量拟合函数适合而且updateMetricsAndFit使用更激进的ScInOL2版本的算法。

    随机特征扩展

    随机扩展功能,如随机厨房水槽[5]或快餐[6],是一种近似高斯核的核分类算法,以计算效率高的方式用于大数据。随机特征扩展对于拥有大型训练集的大数据应用更为实用,但也可以应用于适合内存的较小数据集。

    内核分类算法在将特征映射到高维空间后,寻找一个最优超平面,将数据分成两类。在低维空间中不可线性分离的非线性特征可以在扩展的高维空间中被分离。超平面分类的所有计算都只使用点积。下载188bet金宝搏你可以通过替换点积得到一个非线性分类模型x1x2用非线性核函数 G x 1 , x 2 φ x 1 , φ x 2 ,在那里x观测值(行向量)和φx是映射的变换吗x到高维空间(称为“核技巧”)。然而,评估Gx1,x2(克矩阵)对于一个大数据集(大n).

    随机特征展开方案寻找一个随机变换,使其点积近似于高斯核。也就是说,

    G x 1 , x 2 φ x 1 , φ x 2 T x 1 T x 2 ,

    在哪里Tx地图x p 到高维空间( ).随机厨房水槽方案使用随机转换

    T x 1 / 2 经验值 Z x ,

    在哪里 Z × p 样品是从哪里抽取的 N 0 , σ 2 而且σ是核标度。这个方案需要Op计算和存储。

    快餐计划引入了另一种随机基础V而不是Z使用阿达玛矩阵结合高斯尺度矩阵。这种随机基将计算成本降低到O日志p并将存储减少到O

    incrementalClassificationKernel采用Fastfood模式进行随机特征扩展,采用线性分类训练高斯核分类模型。可以为指定值而且σ使用NumExpansionDimensions而且KernelScale在使用创建传统训练模型时,分别使用名称-值参数fitckernel或者当你打电话的时候incrementalClassificationKernel直接创建模型对象。

    算法

    全部折叠

    估计时间

    在估计期间,增量拟合函数适合而且updateMetricsAndFit使用第一个传入的EstimationPeriod用于调整增量训练所需的超参数的观察。只有在以下情况下才进行估计EstimationPeriod是正的。该表描述了超参数以及何时估计或调优它。

    Hyperparameter 模型属性 使用 条件
    学习速率 LearnRate领域的SolverOptions 调整求解器步长

    当这两个条件都适用时,超参数将被估计:

    • 您可以指定解算器名称-值参数为“sgd”“asgd”

    • 没有指定LearnRate作为正标量的名称-值参数。

    在估算期间,适合不符合模型,和updateMetricsAndFit不符合模型或不更新性能指标。在估计周期结束时,函数更新存储超参数的属性。

    性能指标

    • updateMetrics而且updateMetricsAndFit函数是跟踪模型性能指标的增量学习函数(指标),仅当增量模型为时温暖的IsWarm属性是真正的).增量模型之后变暖适合updateMetricsAndFit拟合增量模型MetricsWarmupPeriod观察,也就是指标预热期

      如果EstimationPeriod> 0,这个适合而且updateMetricsAndFit函数在模型与数据拟合之前估计超参数。因此,函数必须处理附加项EstimationPeriod模型开始度量预热期之前的观察。

    • 指标属性将每个性能度量的两种形式存储为表的变量(列),累积而且窗口,将单个指标列成行。当增量模型为温模型时,updateMetrics而且updateMetricsAndFit以以下频率更新指标:

      • 累积-函数计算自模型性能跟踪开始的累积度量。每次调用函数时,函数都会更新度量,并基于整个提供的数据集进行计算。

      • 窗口-函数根据窗口内的所有观察结果计算指标MetricsWindowSize,这也决定了软件更新的频率窗口指标。例如,如果MetricsWindowSize为20时,函数根据所提供数据中的最后20个观察结果计算度量(X((end - 20 + 1):end,:)而且Y((end - 20 + 1):end)).

        跟踪窗口内性能指标的增量函数使用以下过程:

        1. 存储一个长度的缓冲区MetricsWindowSize对于每个指定的度量,并存储一个观察权重的缓冲区。

        2. 用基于批量传入观察的模型性能填充度量缓冲区的元素,并在权重缓冲区中存储相应的观察权重。

        3. 当缓冲区已满时,覆盖窗口字段指标属性中使用指标窗口中的加权平均性能。如果函数处理一批观测值时缓冲区溢出,则最新的传入MetricsWindowSize观测值进入缓冲区,最早的观测值从缓冲区中删除。例如,假设MetricsWindowSize为20时,度量缓冲区中有10个来自先前处理的批处理的值,15个值是传入的。为了组成长度为20的窗口,函数使用来自15个传入观测值的测量值和来自前一批的最新5个测量值。

    • 该软件省略了一个观察计算累积而且窗口性能度量值。

    参考文献

    [1]肯普卡,米夏拉,沃伊切赫·科茨沃斯基和曼弗雷德·k·瓦穆斯。线性模型学习的自适应比例不变在线算法预印本,提交于2019年2月10日。https://arxiv.org/abs/1902.07528

    [2] Langford, J., Li ., and T. Zhang。“通过截断梯度的稀疏在线学习。”j·马赫。学习。Res。, Vol. 10, 2009, pp. 777-801。

    [3]沙利夫-施瓦兹,S. Y.辛格和N.斯雷布罗。Pegasos:支持向量机的原始估计次梯度求解器第24届机器学习国际会议论文集,ICML ' 07, 2007,第807-814页。

    徐伟。“用平均随机梯度下降法实现最优一次大规模学习”相关系数, abs/1107.2490, 2011。

    [5]拉希米,A.和B.雷希特。大规模核机器的随机特征。神经信息处理系统研究进展.Vol. 20, 2008, pp. 1177-1184。

    [6] Le, Q, T. Sarlós和A. Smola。“快餐-在对数线性时间内近似核扩展。”第30届机器学习国际会议论文集.Vol. 28 No. 3, 2013, pp. 244-252。

    [7]黄,P. S., H. Avron, T. N. Sainath, V. Sindhwani和B. Ramabhadran。“核方法匹配TIMIT上的深度神经网络。”2014年IEEE声学、语音和信号处理国际会议.2014,第205-209页。

    版本历史

    R2022a中引入