我使用WALS方法来执行矩阵分解。最初在tensorflow 1.13中,我可以使用
from tensorflow.contrib.factorization.python.ops import factorization_ops
如documentation中所述
Wals模型可以从factorization_ops调用,方法是使用
^{pr2}$在TensorFlow2.0中使用相同的命令会出现以下错误
ModuleNotFoundError:没有名为'张量流贡献因子分解
经过issue之后,在TensorFlow2.0+中似乎没有办法使用WALSModel。在
在tensorflow版本更新中也提到了heretf.contrib公司已经被弃用,并且功能已经被迁移到核心的TensorFlow API中,或者迁移到一个生态系统项目中,比如TensorFlow/addons或TensorFlow/io,或者被完全删除。在
如何在TensorFlow2.0中使用WALS模型(目前我在windows机器上使用2.0.0-rc0)?WALSModel被删除了还是我漏掉了一些信息?在
我相信在tf2.0中不支持WALS…官方推荐模型是Neural Collaborative Filter (NCF)
我希望这有帮助。在
米
我已经将WALS的Tensorflow实现与其他实现在计算资源和精确度方面进行了比较(https://github.com/gtsoukas/cfzoo)。比较表明隐式Python包(https://github.com/benfred/implicit)是一个很好的替代品,可以提供更好的性能。在
我也有同样的问题,但不幸的是,我没有时间自己写一个库。我正在考虑几种可能的选择:
坚持使用TF1.X,直到有人创建了一个库
切换到使用lightfm继续使用WALS
切换到神经协作过滤使用嵌入层与keras和一个点积层。请参阅本文https://arxiv.org/abs/1708.05031,以及以下代码实现:
相关问题 更多 >
编程相关推荐