主要内容

incrementalLearner

线性回归模型转换为增量学习

描述

例子

IncrementalMdl= incrementalLearner (Mdl)返回一个线性回归模型增量学习,IncrementalMdl使用hyperparameters和传统训练的线性回归模型的回归系数Mdl。因为它的属性值反映而获得的知识Mdl,IncrementalMdl可以预测标签给新观测,它是什么温暖的,这意味着其预测性能跟踪。

例子

IncrementalMdl= incrementalLearner (Mdl,名称,值)使用附加选项指定一个或多个参数名称-值对。一些选项需要你火车IncrementalMdl之前预测性能跟踪。例如,“MetricsWarmupPeriod”, 50岁,“MetricsWindowSize”, 100指定了一个初步的增量训练时期的前50观测性能指标跟踪,并指定处理100年观测之前更新性能指标。

例子

全部折叠

火车通过使用线性回归模型fitrlinear,然后把它转换成一个增量学习。

加载和数据预处理

加载数据集2015纽约住房。更详细的数据,看看纽约市公开的数据

负载NYCHousing2015

提取反应变量SALEPRICE从表中。数值稳定、规模SALEPRICE通过1 e6

Y = NYCHousing2015.SALEPRICE / 1 e6;NYCHousing2015。SALEPRICE = [];

创建虚拟变量分类预测矩阵。

catvars = [“区”“BUILDINGCLASSCATEGORY”“社区”];dumvarstbl = varfun (@ (x) dummyvar(分类(x)), NYCHousing2015,“数据源”,catvars);dumvarmat = table2array (dumvarstbl);NYCHousing2015 (:, catvars) = [];

对所有其他表中的数值变量的线性预测销售价格。连接矩阵的虚变量的预测数据。

idxnum = varfun (@isnumeric NYCHousing2015,“OutputFormat”,“统一”);X = [dumvarmat NYCHousing2015 {:, idxnum});

火车线性回归模型

适合整个数据集的线性回归模型。

TTMdl = fitrlinear (X, Y)
TTMdl = RegressionLinear ResponseName:‘Y’ResponseTransform:“没有一个”测试:[312 x1双]偏见:0.0956λ:1.0935 e-05学习者:“支持向量机”属性,方法

TTMdl是一个RegressionLinear模型对象代表了一个传统上训练有素的线性回归模型。

转换训练模型

传统训练的线性回归模型转换为一个线性回归模型的增量学习。

IncrementalMdl = incrementalLearner (TTMdl)
IncrementalMdl = incrementalRegressionLinear IsWarm: 1指标:[1 x2表]ResponseTransform:“没有一个”测试:[312 x1双]偏见:0.0956学习者:“支持向量机”属性,方法

IncrementalMdl是一个incrementalRegressionLinear模型对象准备使用SVM增量学习。

  • incrementalLearner函数初始化增量学习者通过学习系数,以及其他信息TTMdl从训练数据中提取。

  • IncrementalMdl是温暖的IsWarm1),这意味着可以开始跟踪性能指标增量学习功能。

  • incrementalLearner函数火车模型使用自适应尺度不变的解决者,而fitrlinear训练有素的TTMdl使用双重SGD解算器。

预测的反应

增量学习者从转换创建一个传统训练模型可以生成预测没有进一步处理。

所有观测使用这两种模型预测销售价格。

ttyfit =预测(TTMdl X);ilyfit =预测(IncrementalMdl X);compareyfit =规范(ttyfit - ilyfit)
compareyfit = 0

模型拟合值之间的差异产生的是0。

默认的解算器是自适应尺度不变的解决者。如果指定这个解算器,您不需要调整任何参数进行训练。然而,如果你指定标准SGD或ASGD解决者相反,你也可以指定一个评估期,在此期间,增量拟合函数调整学习速率。

负载和洗牌2015年纽约市住房数据集。更多细节数据,看看纽约市公开的数据

负载NYCHousing2015rng (1)%的再现性n =大小(NYCHousing2015, 1);shuffidx = randsample (n, n);NYCHousing2015 = NYCHousing2015 (shuffidx:);

提取反应变量SALEPRICE从表中。数值稳定、规模SALEPRICE通过1 e6

Y = NYCHousing2015.SALEPRICE / 1 e6;NYCHousing2015。SALEPRICE = [];

创建虚拟变量分类预测矩阵。

catvars = [“区”“BUILDINGCLASSCATEGORY”“社区”];dumvarstbl = varfun (@ (x) dummyvar(分类(x)), NYCHousing2015,“数据源”,catvars);dumvarmat = table2array (dumvarstbl);NYCHousing2015 (:, catvars) = [];

对所有其他表中的数值变量的线性预测销售价格。连接矩阵的虚变量的预测数据。

idxnum = varfun (@isnumeric NYCHousing2015,“OutputFormat”,“统一”);X = [dumvarmat NYCHousing2015 {:, idxnum});

随机数据分割成5%和95%组:第一组训练模型传统上,和第二组增量学习。

本量利= cvpartition (n,“坚持”,0.95);idxtt =培训(cvp);idxil =测试(cvp);% 5%为传统培训Xtt = X (idxtt:);Ytt = Y (idxtt);% 95%增量学习自= X (idxil:);Yil = Y (idxil);

适合5%的数据的线性回归模型。

TTMdl = fitrlinear (Xtt Ytt);

传统训练的线性回归模型转换为一个线性回归模型的增量学习。指定的标准SGD解算器和一个估计的时期2 e4观察(默认1000年当一个学习速率是必需的)。

IncrementalMdl = incrementalLearner (TTMdl,“规划求解”,“sgd”,“EstimationPeriod”2 e4);

IncrementalMdl是一个incrementalRegressionLinear模型对象。

适应增量式模型通过使用其余的数据适合函数。在每一次迭代:

  • 模拟数据流处理10观测一次。

  • 覆盖前面的增量式模型与一个新安装的观察。

  • 存储率和学习 β 1 的系数在训练和学习速率发展。

%预先配置nil =元素个数(Yil);numObsPerChunk = 10;nchunk =地板(nil / numObsPerChunk);learnrate = [IncrementalMdl.LearnRate;0 (nchunk 1)];beta1 = [IncrementalMdl.Beta (1);0 (nchunk 1)];%增量式拟合j = 1: nchunk ibegin = min (nil, numObsPerChunk * (j - 1) + 1);iend = min (nil, numObsPerChunk * j);idx = ibegin: iend;IncrementalMdl =适合(IncrementalMdl自(idx:), Yil (idx));beta1 (j + 1) = IncrementalMdl.Beta (1);learnrate (j + 1) = IncrementalMdl.LearnRate;结束

IncrementalMdl是一个incrementalRegressionLinear模型对象培训中的所有数据流。

如何学习速率和 β 1 进化在训练,放到单独的次要情节。

次要情节(2,1,1)情节(beta1)ylabel (“\ beta_1”)参照线(IncrementalMdl.EstimationPeriod / numObsPerChunk,r -。);次要情节(2,1,2)情节(learnrate) ylabel (学习速率的)参照线(IncrementalMdl.EstimationPeriod / numObsPerChunk,r -。);包含(“迭代”)

图包含2轴对象。坐标轴对象1包含2线类型的对象,constantline。坐标轴对象2包含对象类型的线,constantline。

后的学习速率跳到它的变种价值评估。

因为适合不符合模型的流数据在评估期间, β 1 是恒定的第一2000次迭代(20000观察)。然后, β 1 轻微的变化适合适合每个新块10观测模型。

使用一个训练有素的线性回归模型初始化增量学习。准备学习者通过指定一个增量指标预热期,在此期间updateMetricsAndFit功能只适合模型。指定一个指标500观察的窗口大小。

加载机械臂的数据集。

负载robotarm

细节的数据集,输入描述在命令行中。

随机数据分割成5%和95%组:第一组训练模型传统上,和第二组增量学习。

n =元素个数(ytrain);rng (1)%的再现性本量利= cvpartition (n,“坚持”,0.95);idxtt =培训(cvp);idxil =测试(cvp);% 5%为传统培训Xtt = Xtrain (idxtt:);Ytt = ytrain (idxtt);% 95%增量学习自= Xtrain (idxil:);Yil = ytrain (idxil);

符合第一组的线性回归模型。

TTMdl = fitrlinear (Xtt Ytt);

传统训练的线性回归模型转换为一个线性回归模型的增量学习。指定以下:

  • 一个性能指标预热期2000年的观察。

  • 一个指标500观察的窗口大小。

  • 使用ε不敏感损失、MSE和平均绝对误差(MAE)测量模型的性能。该软件支持ε不敏感损失和M金宝appSE。创建一个匿名函数,每个新观测的绝对误差的措施。创建一个结构数组包含这个名字MeanAbsoluteError和其相应的功能。

zfit maefcn = @ (z), abs (z - zfit);maemetric =结构(“MeanAbsoluteError”,maefcn);IncrementalMdl = incrementalLearner (TTMdl,“MetricsWarmupPeriod”,2000,“MetricsWindowSize”,500,“指标”,{“epsiloninsensitive”mse的maemetric});

适应增量式模型通过使用其余的数据updateMetricsAndFit函数。在每一次迭代:

  • 模拟数据流处理50观测一次。

  • 覆盖前面的增量式模型与一个新安装的观察。

  • 商店 β 1 、累积度量和窗口指标增量学习期间看到他们如何演变。

%预先配置nil =元素个数(Yil);numObsPerChunk = 50;nchunk =地板(nil / numObsPerChunk);(nchunk ei = array2table (0, 2),“VariableNames”,(“累积”“窗口”]);(nchunk mse = array2table (0, 2),“VariableNames”,(“累积”“窗口”]);美= array2table (0 (nchunk, 2),“VariableNames”,(“累积”“窗口”]);beta1 = 0 (nchunk, 1);%增量式拟合j = 1: nchunk ibegin = min (nil, numObsPerChunk * (j - 1) + 1);iend = min (nil, numObsPerChunk * j);idx = ibegin: iend;IncrementalMdl = updateMetricsAndFit (IncrementalMdl自(idx:), Yil (idx));ei {j:} = IncrementalMdl.Metrics {“EpsilonInsensitiveLoss”,:};mse {j:} = IncrementalMdl.Metrics {“MeanSquaredError”,:};美{j:} = IncrementalMdl.Metrics {“MeanAbsoluteError”,:};beta1 (j + 1) = IncrementalMdl.Beta (10);结束

IncrementalMdl是一个incrementalRegressionLinear模型对象培训中的所有数据流。在增量学习模型是热身之后,updateMetricsAndFit检查模型的性能的观察,然后符合模型观察。

性能指标和 β 1 进化在训练,放到单独的次要情节。

图;次要情节(2、2、1)情节(beta1) ylabel (“\ beta_1”)xlim ([0 nchunk]);参照线(IncrementalMdl.MetricsWarmupPeriod / numObsPerChunk,r -。);包含(“迭代”次要情节(2,2,2)h =情节(ei.Variables);xlim ([0 nchunk]);ylabel (“ε不敏感损失”)参照线(IncrementalMdl.MetricsWarmupPeriod / numObsPerChunk,r -。);传奇(h, ei.Properties.VariableNames)包含(“迭代”次要情节(2,2,3)h =情节(mse.Variables);xlim ([0 nchunk]);ylabel (MSE的)参照线(IncrementalMdl.MetricsWarmupPeriod / numObsPerChunk,r -。);传奇(h, mse.Properties.VariableNames)包含(“迭代”次要情节(2,2,4)h =情节(mae.Variables);xlim ([0 nchunk]);ylabel (“美”)参照线(IncrementalMdl.MetricsWarmupPeriod / numObsPerChunk,r -。);传奇(h, mae.Properties.VariableNames)包含(“迭代”)

图包含4轴对象。坐标轴对象1包含2线类型的对象,constantline。轴2包含3线类型的对象,对象constantline。这些对象代表累积,窗口。坐标轴对象3包含对象类型的线,constantline。这些对象代表累积,窗口。坐标轴对象4包含3线类型的对象,constantline。这些对象代表累积,窗口。

情节表明updateMetricsAndFit以下:

  • 适合 β 1 在增量学习迭代。

  • 计算性能指标度量后预热期。

  • 在每一次迭代计算累积度量。

  • 计算指标在500年处理的观察窗口。

输入参数

全部折叠

传统的训练有素的线性回归模型,指定为一个RegressionLinear模型对象返回的fitrlinear

请注意

  • 如果Mdl.Lambda是一个数值向量,您必须选择模型对应一个正规化的力量通过正规化的道路selectModels

  • 增量学习功能只支持数字输入预测数据。金宝app如果Mdl是适合分类数据,使用dummyvar每个分类变量转换为一个数字矩阵的虚变量,然后把所有哑变量矩阵和任何其他数值预测。更多细节,请参阅虚拟变量

名称-值参数

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

例子:“规划求解”、“扇区”,“MetricsWindowSize”, 100指定为目标优化自适应尺度不变的解算器,并指定处理100年观测之前更新性能指标。
一般选择

全部折叠

目标函数最小化技术,指定为逗号分隔组成的“规划求解”在这个表和一个值。

价值 描述 笔记
“扇区”

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

  • 该算法参数是免费的,可以适应不同的预测。试试这个算法使用SGD或ASGD之前。

  • 前洗牌传入的批次适合函数的模型,设置洗牌真正的

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

  • 培训有效地与SGD,标准化数据并指定适当的值hyperparameters使用选项中列出SGD和ASGD解算器选项

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

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

  • 培训有效地与ASGD,标准化数据并指定适当的值hyperparameters使用选项中列出SGD和ASGD解算器选项

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

例子:“规划求解”、“sgd”

数据类型:字符|字符串

数量的观察处理的增量式模型来估计hyperparameters培训或跟踪性能指标之前,指定为逗号分隔组成的“EstimationPeriod”和一个非负整数。

请注意

  • 如果Mdl是准备增量学习(指定所有必需hyperparameters培训),incrementalLearner部队“EstimationPeriod”0

  • 如果Mdl不是准备增量学习,incrementalLearner“EstimationPeriod”1000年

更多细节,请参阅估计时间

例子:“EstimationPeriod”, 100年

数据类型:|

标志标准化预测数据,指定为逗号分隔组成的“标准化”在这个表和一个值。

价值 描述
真正的 标准化的软件预测数据。更多细节,请参阅标准化数据
不规范的软件预测数据。

例子:“标准化”,真的

数据类型:逻辑

SGD和ASGD解算器选项

全部折叠

Mini-batch大小,指定为逗号分隔组成的“BatchSize”和一个正整数。在每个迭代训练,incrementalLearner使用min (BatchSize numObs)观察计算次梯度,numObs观察的数量在训练数据传递给吗适合updateMetricsAndFit

  • 如果Mdl.ModelParameters.Solver“sgd”“asgd”,你不能设置“BatchSize”。相反,incrementalLearner“BatchSize”Mdl.ModelParameters.BatchSize

  • 否则,BatchSize10

例子:“BatchSize”, 1

数据类型:|

脊(l2)正则化项,指定为逗号分隔组成的“λ”和一个负的标量。

Mdl.Regularization“岭(L2)”:

  • 如果Mdl.ModelParameters.Solver“sgd”“asgd”,你不能设置“λ”。相反,incrementalLearner“λ”Mdl.Lambda

  • 否则,λ1 e-5

请注意

incrementalLearner不支持套索正规化。金宝app如果Mdl.Regularization“套索(L1)”,incrementalLearner使用脊正规化相反,和设置“规划求解”名称-值对参数“扇区”默认情况下。

例子:“λ”,0.01

数据类型:|

学习速率,指定为逗号分隔组成的“LearnRate”“汽车”或积极的标量。LearnRate控制的优化步长扩展目标次梯度。

  • 如果Mdl.ModelParameters.Solver“sgd”“asgd”,你不能设置“LearnRate”。相反,incrementalLearner“LearnRate”Mdl.ModelParameters.LearnRate

  • 否则,LearnRate“汽车”

“汽车”:

  • 如果EstimationPeriod0,最初的学习速率0.7

  • 如果EstimationPeriod>0,最初的学习速率1 /√(1 + max (sum (x ^ 2, obsDim))),在那里obsDim1如果观测组合预测的列数据,和2否则。适合updateMetricsAndFit设置值时传递函数模型和训练数据。

名称-值对的观点“LearnRateSchedule”决定了学习速率对后续学习周期。

例子:“LearnRate”, 0.001

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

学习速率的时间表,指定为逗号分隔组成的“LearnRateSchedule”在这张桌子和一个值,LearnRate指定初始学习速率ɣ0

价值 描述
“不变” 学习速率是ɣ0学习周期。
“腐烂”

学习速率的学习周期t

γ t = γ 0 ( 1 + λ γ 0 t ) c

  • λ的值是λ

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

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

如果Mdl.ModelParameters.Solver“sgd”“asgd”,你不能设置“LearnRateSchedule”

例子:“LearnRateSchedule”、“不变”

数据类型:字符|字符串

自适应尺度不变的解算器选项

全部折叠

国旗洗牌的观察在批处理在每个迭代中,指定为逗号分隔组成的“洗牌”在这个表和一个值。

价值 描述
真正的 软件打乱观察每个传入之前批数据处理。这一行动减少偏见引起的抽样方案。
软件处理数据的顺序接收。

例子:“洗牌”,假的

数据类型:逻辑

性能指标的选择

全部折叠

性能指标来跟踪在增量学习模型updateMetricsupdateMetricsAndFit,指定为逗号分隔两人组成的“指标”和一个内置的损失函数的名字,名字,函数的字符串向量处理(@metricName)、结构的功能处理或细胞向量的名字,函数处理,或结构数组。

下表列出了内置的损失函数名称和学习者,在指定的Mdl.Learner,支金宝app持他们。您可以指定多个损失函数通过使用一个字符串向量。

的名字 描述 学习者支持度规金宝app
“epsiloninsensitive” ε不敏感损失 “支持向量机”
“mse” 加权均方误差 “支持向量机”“leastsquares”

内置的损失函数的更多细节,请参阅损失

例子:“指标”,(“epsiloninsensitive”“mse”)

指定一个自定义函数,返回一个性能指标,使用函数处理符号。函数必须有这种形式:

度量= customMetric (Y, YFit)

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

  • 你指定函数名(customMetric)。

  • Y是一个长度n观察到的响应的数值向量,n是样本容量。

  • YFit是一个长度n数字矢量预测相应的反应。

指定多个自定义指标和分配自定义名称,使用结构数组。指定一个内置的和自定义指标的组合,使用细胞向量。

例子:“指标”,结构(‘Metric2’,‘Metric1’, @customMetric1 @customMetric2)

例子:“指标”,{@customMetric1 @customeMetric2 mse的结构(Metric3, @customMetric3)}

updateMetricsupdateMetricsAndFit在属性存储表中指定的度量IncrementalMdl.Metrics。的数据类型指标决定了行表的名称。

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

默认情况下:

  • 指标“epsiloninsensitive”如果Mdl.Learner“支持向量机”

  • 指标“mse”如果Mdl.Learner“leastsquares”

性能指标选择的更多细节,请参阅性能指标

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

数量的观察增量式模型之前必须适合其跟踪性能指标指标属性,指定为逗号分隔组成的“MetricsWarmupPeriod”和一个非负整数。增量模型是适合温暖的增量后拟合函数MetricsWarmupPeriod观察到增量式模型(EstimationPeriod+MetricsWarmupPeriod观察)。

性能指标选择的更多细节,请参阅性能指标

数据类型:|

数量的观察使用性能指标计算窗口,指定为一个正整数。

性能指标选择的更多细节,请参阅性能指标

数据类型:|

输出参数

全部折叠

线性回归模型的增量学习,作为一个返回incrementalRegressionLinear模型对象。IncrementalMdl也配置为生成了新的预测数据(看到了吗预测)。

初始化IncrementalMdl增量学习,incrementalLearner传递的值Mdl这个表的属性的属性IncrementalMdl

财产 描述
β 线性模型系数,数值向量
偏见 拦截模型,数字标量
ε ε不敏感频带的宽度的一半,一个负的标量
学习者 线性回归模型类型
ModelParameters.FitBias 线性模型拦截包含国旗
μ 预测变量的含义,一个数值向量
σ 预测变量标准差,数字向量

更多关于

全部折叠

增量学习

增量学习,或在线学习,是机器学习的一个分支关心处理传入的数据从数据流,可能没有知识的预测变量的分布方面的预测或目标函数(包括调优参数值),或者观察是否标示。增量学习有别于传统机器学习,足够的标签数据可用来适应一个模型,优化hyperparameters进行交叉验证,推断预测分布。

鉴于传入的观察,增量学习模型处理数据在下列方面,但通常在这个顺序:

  • 预测标签。

  • 测量预测性能。

  • 检查结构性突变或漂移模型。

  • 符合模型的观测。

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

增量学习的自适应尺度不变的解算器,介绍了[1],是一个gradient-descent-based目标规划求解线性预测模型进行训练。解算器hyperparameter自由,对预测变量尺度上的差异,并且不需要先验知识的分布预测变量。这些特点使其适合增量学习。

标准SGD和ASGD动力学预测变量对不同尺度敏感,导致模型可以表现不佳。使用SGD和ASGD取得更好的精度,可以规范预测数据,和调优正则化和学习速率参数需要调整。对于传统的机器学习,足够的数据可以使hyperparameter调优交叉验证和预测标准化。然而,对于增量学习,足够的数据可能不可用(例如,观察可能只能一次一个),预测的分布可能是未知的。这些特征使参数优化和预测标准化在增量学习困难或不可能。

增量回归拟合函数适合updateMetricsAndFit使用更保守ScInOL1版本的算法。

算法

全部折叠

估计时间

在评估期间,增量式拟合函数适合updateMetricsAndFit使用第一个进来的EstimationPeriod观察评估(曲调)hyperparameters增量所需的培训。此表描述了hyperparameters当他们估计或调整。

Hyperparameter 模型属性 使用 Hyperparameters估计
预测均值和标准差

μσ

标准化预测数据

当您设置“标准化”,真的(见标准化数据)

学习速率 LearnRate 解算器调整步长

当这两个条件:

功能只适合最后评估期间观察到增量模型,他们不使用任何观测模型的跟踪性能。在估计期的结束,更新的属性存储hyperparameters功能。

标准化数据

如果增量学习功能配置标准化预测变量,他们使用中存储的均值和标准差μσ增量学习模型的属性IncrementalMdl

  • 当您设置“标准化”,真的,IncrementalMdl.MuIncrementalMdl.Sigma是空的,适用下列条件:

    • 如果评估是积极的(参见时期EstimationPeriod的属性IncrementalMdl均值和标准差),增量式拟合函数估计使用评估期间的观察。

    • 如果估计时间为0,incrementalLearner部队估计时期1000年。因此,增量式拟合函数估计均值和标准差新预测变量强制评估期间。

  • 当增量拟合函数均值和标准差估计预测,计算加权手段和功能使用评估期间观察加权标准差。具体来说,功能规范预测j(xj)使用

    x j = x j μ j σ j

    在哪里

    • xj是预测j,xjk是观察k的预测j在评估期间。

    • μ j = 1 k w k k w k x j k

    • ( σ j ) 2 = 1 k w k k w k ( x j k μ j ) 2

    • wj是观察体重j

性能指标

  • updateMetricsupdateMetricsAndFit函数增量学习函数跟踪模型性能指标(“指标”从新的数据增量式模型时)温暖的(IsWarm属性)。增量模型是温暖的适合updateMetricsAndFit增量模型“MetricsWarmupPeriod”观察,这是度量预热期

    如果“EstimationPeriod”> 0,hyperparameters估计函数拟合模型的数据。因此,必须处理一个额外的功能EstimationPeriod观察模型开始前预热期的指标。

  • 指标增量模型的属性存储两种形式的各性能指标作为一个表的变量(列),累积窗口行,个别指标。当增量模型是温暖的,updateMetricsupdateMetricsAndFit更新后频率的指标:

    • 累积——函数计算累积度量模型以来的跟踪性能。更新指标的函数每次调用函数和基地提供的计算对整个数据集。

    • 窗口——函数计算基于一个窗口内的所有观测指标决定的“MetricsWindowSize”名称-值对的论点。“MetricsWindowSize”也决定了软件更新的频率窗口指标。例如,如果MetricsWindowSize是20,函数计算指标根据过去的20的观察提供的数据(X((结束- 20 + 1):,:)Y((- 20 + 1)结束:结束))。

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

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

      2. 填充的元素指标基于批次缓冲与模型性能的观察,并存储相应的权重观察权重缓冲区。

      3. 当缓冲区满,覆盖IncrementalMdl.Metrics.Window窗口的加权平均性能指标。如果缓冲区溢出时,函数过程一批观察,最新的传入MetricsWindowSize观察输入缓冲区,和最早的观察从缓冲区中删除。例如,假设MetricsWindowSize是20,缓冲区的指标有10个值从一个以前批处理,和15值传入的。组成20窗口长度的函数使用15传入的观察和测量的最新5测量前一批。

引用

[1]Kempka、MichałWojciech Kotłowski,曼弗雷德·k·Warmuth。“自适应尺度不变的在线学习算法的线性模型”。相关系数(2019年2月)。https://arxiv.org/abs/1902.07528

[2]兰福德,J。,l。li, and T. Zhang. “Sparse Online Learning Via Truncated Gradient.”j·马赫。学习。Res。10卷,2009年,页777 - 801。

[3]Shalev-Shwartz, S。,Y。Singer, and N. Srebro. “Pegasos: Primal Estimated Sub-Gradient Solver for SVM.”《24日国际会议在机器学习,ICML ' 07,2007年,页807 - 814。

[4]徐,魏。“对最优传递规模与平均随机梯度下降学习。”相关系数、abs / 1107.2490, 2011年。

介绍了R2020b