创建一个包含函数名称和参数的列表,以使用 rxEnsemble 定型 Fast Linear 模型。
用法
fastLinear(lossFunction = NULL, l2Weight = NULL, l1Weight = NULL,
trainThreads = NULL, convergenceTolerance = 0.1, maxIterations = NULL,
shuffle = TRUE, checkFrequency = NULL, ...)
参数
lossFunction
指定要优化的经验损失函数。 对于二元分类,可以选择以下选项:
- logLoss:对数损失。 这是默认值。
- hingeLoss:SVM 合页损失。 该函数的参数表示差额大小。
-
smoothHingeLoss:平滑合页损失。 该函数的参数表示平滑常数。
对于线性回归,目前支持平方损失 squaredLoss。 如果将此参数设置为NULL,其默认值取决于学习类型: - logLoss 用于二元分类。
- squaredLoss 用于线性回归。
l2Weight
指定 L2 正则化权重。 该值必须为非负数或 NULL。 如果指定了 NULL,将根据数据集自动计算实际值。 默认值为 NULL。
l1Weight
指定 L1 正则化权重。 该值必须为非负数或 NULL。 如果指定了 NULL,将根据数据集自动计算实际值。 默认值为 NULL。
trainThreads
指定可用于运行算法的并发线程数。 如果将此参数设置为 NULL,则根据进程可用的逻辑处理器数以及数据的稀疏度来确定所使用的线程数。 如果要在单个线程中运行算法,请将其设置为 1。
convergenceTolerance
指定用作收敛标准的容差阈值。 该值必须介于 0 和 1 之间。 默认值是 0.1。 如果相对对偶间隙(对偶间隙与原始损失之间的比率)低于指定的收敛容差,则认为该算法已经收敛。
maxIterations
指定训练迭代次数的上限。 该参数值必须为正数或 NULL。 如果指定了 NULL,将根据数据集自动计算实际值。 每次迭代都需要对训练数据进行一次完整传递。 训练在总迭代次数达到指定上限或损失函数收敛后终止(以较早发生者为准)。
shuffle
指定是否随机选择训练数据。 如果要随机选择训练数据,请将其设置为 TRUE;否则设置为 FALSE。 默认值是 TRUE。 SDCA 是一种随机优化算法。 如果启用随机选择,则每次迭代时都会随机选择训练数据。
checkFrequency
迭代次数,迭代后计算和检查损失函数以确定是否收敛。 指定的值必须是正整数或 NULL。 如果指定为 NULL,则根据数据集自动计算实际值。 否则,例如,如果指定了 checkFrequency = 5,则每 5 次迭代计算一次损失函数并检查收敛性。 若要计算损失函数,则需要对训练数据执行单独的完整传递。
...
其他参数。