TensorFlow Recommenders

import tensorflow_datasets as tfds
import tensorflow_recommenders as tfrs

# Load data on movie ratings.
ratings = tfds.load("movielens/100k-ratings", split="train")
movies = tfds.load("movielens/100k-movies", split="train")

# Build flexible representation models.
user_model = tf.keras.Sequential([...])
movie_model = tf.keras.Sequential([...])

# Define your objectives.
task = tfrs.tasks.Retrieval(metrics=tfrs.metrics.FactorizedTopK(
    movies.batch(128).map(movie_model)
  )
)

# Create a retrieval model.
model = MovielensModel(user_model, movie_model, task)
model.compile(optimizer=tf.keras.optimizers.Adagrad(0.5))

# Train.
model.fit(ratings.batch(4096), epochs=3)

# Set up retrieval using trained representations.
index = tfrs.layers.ann.BruteForce(model.user_model)
index.index_from_dataset(
    movies.batch(100).map(lambda title: (title, model.movie_model(title)))
)

# Get recommendations.
_, titles = index(np.array(["42"]))
print(f"Recommendations for user 42: {titles[0, :3]}")
TensorFlow Recommenders (TFRS) 是一个用于构建 Recommender 系统模型的库,

在 Recommender 系统的整个构建流程 - 无论是数据准备、模型构建、训练、评估还是部署 - 都可以起到很大的帮助。

它基于 Keras 构建而成,旨在提供温和的学习曲线,同时仍能让您灵活地构建复杂模型。

TFRS 使您能够:
  • 构建和评估灵活的推荐检索模型。
  • 在推荐模型中随意添加项目、用户和背景信息
  • 训练可共同优化多个推荐目标的多任务模型
TFP 是开源的,可在 GitHub 上找到源代码。

如需了解详情,请参阅有关如何构建影片 Recommender 系统的教程或参阅 API 参考文档