我计算包含 UserId、ProductName 两列的文件的余弦相似度。我使用 DIMSUM 计算相似的列。当我改变阈值时,MAE 的值保持不变。
代码:
val approx = mat.columnSimilarities(0.5)
val exactEntries = exact.entries.map { case MatrixEntry(i, j, u) => ((i, j), u) }
val approxEntries = approx.entries.map { case MatrixEntry(i, j, v) => ((i, j), v) }
val MAE = exactEntries.leftOuterJoin(approxEntries).values.map {
case (u, Some(v)) =>
math.abs(u - v)
case (u, None) =>
math.abs(u)
}.mean()
println(s"Average absolute error: $MAE")
如何改变不同阈值的 MAE 值?