Um sistema simple de recomendação baseados na aparência do produto. Para um dado produto, obtém-se uma quantidade pré-definida de outros produtos similares
É um sistema parecido com essas que vemos em buscadores ou em mídias sociais.
À partir do que fazemos uma perquisa o sistema nos mostra também podutos similares que talvez sejam de nosso interesse.
Para isso foi usado uma modelo CNN (Rede Neural Convolucional) pré-treinado do Keras para extrair features das imagens. Então são calculadas as similaridades entre produtos.
Nesse projeto foi usado o modelo VGG16 do imagenet.
Para não usar todo o modelo e recuperar apenas as informações que ele foi capaz de retirar das imagens, foi removida a última camada que é usada apenas para predição de classe.
O passo a passo:
- Imports e setup dos parâmetros
- Carregar o modelo VGG pre-traineda do Keras
- Pegar o caminho das imagens
- Inserir uma imagem no CNN (Rede Neural Convolucional)
- Alimentar a CNN com todas as imagens
- Calcular o cosseno das similaridades
- Através de uma função, encontrar os produtos mais similares