MatrixFactorizationTrainer.Options.Alpha 字段

定义

在单类矩阵分解中未观察到的条目丢失的重要性。 如果设置为 ,则 LossFunction 适用 SquareLossOneClass

public double Alpha;
val mutable Alpha : double
Public Alpha As Double 

字段值

注解

未观察到 (的重要性,即单类矩阵分解中负) 条目丢失。 通常,只有少数矩阵条目 (例如,在训练中观察到少于 1% ) , (即正) 。 为了平衡总体损失函数中未观测到和观察到的贡献,此参数通常是一个较小的值,以便求解器能够找到与未观察到的条目和观察到的条目相同的分解。 如果 200000 x 300000 训练矩阵中仅存在 10000 个观察到的条目,则可以尝试 Alpha = 10000 / (200000*300000 - 100000) 。 当观察到训练矩阵中的大多数条目时,可以使用 Alpha >> 1;例如,如果未观察到上一个矩阵中的 10000,则可以尝试 Alpha = (200000 * 300000 - 10000) / 10000。 因此,alpha = (# 的观察项) / (# 的未观察项) 可以使观测到的条目和未观察到的条目在最小化损失函数中同等重要。 但是,机器学习中的最佳设置始终依赖于数据,因此用户仍需要尝试多个值。

适用于