CoreML MLRecommender 问题

CoreML MLRecommender issues

我想创建 CoreML Recommender 模型,我的训练数据如下所示:

userID (UUID)  | itemID (UUID) | rating (Int)

用户可以评价 0 到 x 个项目,直到每个用户在训练数据中评价相同数量的项目(例如 10),一切正常。

但是当我尝试创建训练模型时:

我开始遇到这个错误:

Playground execution terminated: An error was thrown and was not caught:
▿ Item IDs in the recommender model must be numbered 0, 1, ..., num_items - 1.
  ▿ generic : 1 element
    - reason : "Item IDs in the recommender model must be numbered 0, 1, ..., num_items - 1."

我该如何解决这个问题?

完整的游乐场代码:

let trainingData = try MLDataTable(contentsOf: URL(fileURLWithPath: "/.../test.csv"))
let model = try MLRecommender (trainingData: trainingData, userColumn: "userID", itemColumn: "itemID", ratingColumn: "rating")
let recs = try model.recommendations(fromUsers: ["050510A3-0C96-4F57-8A45-433422680464"])

我已经通过使用大于 0 的归一化和虚拟分数设法解决了这个问题。更多信息在这里:https://pawel.madej.com/post/ml-recommender-in-practice