Crie e treine um sistema de recomendação em 10 minutos usando o Keras e o JAX

13 DE MAIO DE 2025
Yufeng Guo Developer Advocate
Monica Song Product Manager

Hoje, temos o prazer de anunciar o lançamento do Keras Recommenders, uma nova biblioteca que coloca técnicas de recomendação de última geração ao seu alcance.


Habilitação de experiências digitais com sistemas de recomendação

Os sistemas de recomendação habilitam muitas das interações que você tem atualmente com a tecnologia. Abra qualquer app em seu smartphone, e você provavelmente acabará interagindo com um modelo de recomendação imediatamente, desde o feed inicial de sua plataforma de rede social até sugestões de vídeos no YouTube e os anúncios que aparecem em seu jogo favorito. Com a evolução contínua do mundo da IA, oferecer experiências personalizadas é mais importante do que nunca. Os modelos de linguagem grandes não podem fazer tudo, e os sistemas de recomendação são responsáveis por criar muitas das experiências digitais de alto nível de hoje.

Para ajudar os desenvolvedores a criar sistemas de recomendação precisos e de alto de desempenho, o Keras Recommenders (KerasRS) contém um conjunto de APIs com elementos básicos projetados para tarefas como classificação e recuperação. Por exemplo, no Google, usamos o KerasRS para ajudar a habilitar o feed no Google Play.


Instale o KerasRS com JAX, TensorFlow ou PyTorch

Para começar, instale o pacote keras-rs via pip. Em seguida, defina o back-end como JAX (ou TensorFlow ou PyTorch). Você estará no caminho certo para criar seu próprio sistema de recomendação de última geração.

import os
os.environ["KERAS_BACKEND"] = "jax"
 
import keras
import keras_rs
 
class SequentialRetrievalModel(keras.Model):
    def __init__(self):
        self.query_model = keras.Sequential([
            keras.layers.Embedding(query_count, embed_dim),
            keras.layers.GRU(embed_dim),
        ])
        self.candidate_model = keras.layers.Embedding(candidate_count, embed_dim)
        self.retrieval = keras_rs.layers.BruteForceRetrieval(k=10)
        self.loss_fn = keras.losses.CategoricalCrossentropy(from_logits=True)
 
    def call(self, inputs):
        query_embeddings = self.query_model(inputs)
        predictions = self.retrieval(query_embeddings)
        return {"query_embeddings": query_embeddings, "predictions": predictions}
Python

Neste exemplo, mostramos uma arquitetura popular de recuperação na qual identificamos um conjunto de recomendações de candidatos. O KerasRS fornece tudo o que você precisa para implementar essa arquitetura, com camadas especializadas, perdas e métricas projetadas especificamente para tarefas de recomendação. Você também pode acompanhar este notebook do colab.

E, obviamente, todos esses elementos básicos funcionam com as APIs Keras padrão de model.compile para criar o modelo e de model.fit para configurar facilmente seu loop de treinamento.

model.compile(
    loss=keras_rs.losses.PairwiseHingeLoss(),
    metrics=[keras_rs.metrics.NDCG(k=8, name="ndcg")],
    optimizer=keras.optimizers.Adagrad(learning_rate=3e-4),
)
model.fit(train_ds, validation_data=val_ds, epochs=5)
Python

Nos próximos meses, planejamos lançar a classe keras_rs.layers.DistributedEmbedding a fim de aproveitar chips SparseCore em TPU para fazer pesquisas de incorporação grandes distribuídas entre várias máquinas. Além disso, adicionaremos implementações de modelos populares à nossa biblioteca continuamente, facilitando ainda mais a criação de sistemas de recomendação de última geração.


Explore a documentação e os exemplos do KerasRS

Também queremos destacar toda a documentação que temos para o Keras Recommenders em nosso site keras.io recentemente renovado. Em keras.io/keras_rs, você pode encontrar exemplos iniciais envolvendo o clássico Deep and Cross Network (DCN) e o modelo de incorporação em duas torres que mostram passo a passo os processos para escrever e treinar seu primeiro recomendador. Há também tutoriais mais avançados, como o SASRec, que mostra um exemplo completo de treinamento de um modelo de transformador.

Primeiros passos

Visite nosso site hoje mesmo para obter mais exemplos, a documentação e os guias para criar seu próprio sistema de recomendação. Você também pode navegar pelo código e contribuir em https://github.com/keras-team/keras-rs (sinta-se à vontade para dar uma estrela ⭐ também, enquanto estiver lá!).

Mal podemos esperar para ver todos os excelentes sistemas de recomendação que serão criados com o Keras Recommenders.



Agradecimentos

Agradecemos a Fabien Hertschuh e Abheesht Sharma pela criação do Keras Recommenders. Também queremos agradecer às equipes do Keras e do ML Frameworks, bem como a todos os nossos colaboradores e à liderança por nos ajudarem nesta tarefa.