Reply is the place to meet an incredible variety of enthusiastic, passionate, ideas-driven people, who want to make a difference and an impact.Would you like to know more?
Sistemas de recomendação estão em todos os lugares. Os sistemas de recomendação são sistemas que sugerem conteúdo personalizado e relevante para usuários de sites ou aplicativos entre os milhares ou milhões de itens em um catálogo. Amazon, Netflix e Spotify são apenas alguns exemplos de grandes empresas globais que usam algoritmos de recomendação para tentar facilitar a nossa navegação e exploração do catálogo. Os objetivos são extremamente simples e abrangentes: cross-selling, up-selling,melhorando a fidelidade dos usuários, incentivando o uso de diferentes conteúdos e estimulando a curiosidade. Estima-se que cerca de 30% das visualizações de páginas na Amazon são devidas aos efeitos do sistema de recomendação; para a Netflix, 80% dos filmes são vistos como resultado de recomendações. Não há nenhum mistério por trás dos algoritmos colaborativostradicionais: eles simplesmente tentam sugerir conteúdo semelhante ao que já vimos anteriormente, ou o que outros usuários com gostos semelhantes aos nossos assistiram. Essas abordagens apresentaram resultados sólidos desde o início do novo milênio. No entanto, podemos ir ainda mais longe usando métodos de Deep Learning e Knowledge Graph que alavanquem dados contextuais e não estruturados.
Vivemos na era da inteligência artificial. Cada vez mais ouvimos sobre Deep Learning, que é um modo de aprendizagem que replica o raciocínio humano em forma algorítmica usando redes neurais artificiais profundas. Deep Learning não é o futuro, é o presente: se até alguns anos atrás só parecia aplicável no mundo acadêmico e de pesquisa, no ano passado vimos a transição do Deep Learning para o seu status atual como um produto,, com bibliotecas especializadas e ferramentas como Theano, Caffe, Lasagne e TensorFlow. A revolução inaugurada pela Deep Learning é evidente em várias frentes. Em 2015, por exemplo, os algoritmos que exploram redes neurais profundas superaram a capacidade humana em tarefas básicas, como reconhecimento de imagem e transcrição de áudio. Os méritos da Deep Learning estão na sua capacidade de produzir melhores resultados aumentando a complexidade da rede neural ou adicionando dados de input ao modelo. Do ponto de vista da performance, a capacidade de usar GPU para cálculos enormes também facilitou a introdução de algoritmos mais complexos em ambientes de produção. Embora não possuam a experiência técnica da ciência dos dados e recursos computacionais para treinar redes neurais em novos conjuntos de dados, já existem modelos pré-treinados que oferecem alta precisão em várias frentes. Do ponto de vista de Robotics for Customers, os algoritmos de Deep Learning permitem que dados não estruturados com um elevado conteúdo de informação sejam incorporados no modelo de recomendação, ao contrário das abordagens tradicionais, que, como mencionado anteriormente, usam apenas dados da interação item-usuário. Tente imaginar um sistema de recomendação que tenha recomendado uma nova música para uma playlist: usando RNN (Recurrent Neural Networks) e CNN (Convolutional Neural Networks), agora podemos adicionar o áudio de cada música como um input para nossos modelos de recomendação. Quando se trata de filmes ou livros, os vídeos e textos são usados diretamente como inputs de algoritmos. Em muitos sistemas on-line, interações usuário-sistema são organizadas em sessões, sequências de interações que ocorrem dentro de um determinado período de tempo e em uma ordem específica. Os Sistemas de Recomendação Tradicionais geram o seu output levando em consideração apenas a última interação do usuário, independentemente do seu histórico de navegação, ou a hora e a ordem em que o conteúdo é utilizado. As Redes Neurais Recorrentes (RNN), devido à sua capacidade de “memorizar” status passados, anunciam uma nova fronteira nos sistemas de recomendação. Estamos falando das chamadas “recomendações baseadas em sessão” que, com base na sequência de itens consultados durante uma sessão, através de redes LSTM (Long Short Term Memory), recomendam o próximo melhor item dependendo das preferências do usuário (problema de próximo melhor item).
De uma perspectiva data-driven, o building block básico é, obviamente, dados, a fonte a partir da qual a informação útil é extraída para gerar valor para o negócio. Quando os dados disponíveis não contêm conteúdo de informação suficiente, a única alternativa é tentar expandir o conhecimento disponível procurando em outros lugares, no mundo dos dados abertos: Word-Net e DBpedia são dois exemplos de ontologia (ou seja, a formalização de tipos, atributos e relações entre entidades pertencentes ao mesmo domínio) utilizados para a fase de enriquecimento de dados. Isso é essencial para fornecer recomendações precisas, antecipando as preferências do cliente. No contexto das recomendações dos clientes, informações adicionais são, portanto, organizadas de acordo com um Knowledge Graph, (ou, gráfico de conhecimento), coleções de entidades com um tipo e propriedades definidos, interconectados através de relacionamentos em uma típica estrutura de gráfico. As abordagens de Knowledge Graph são úteis para melhorar o desempenho das técnicas tradicionais, explorando informações contextuais – muitas vezes itens de catálogo (filmes, livros, músicas, etc.) – e fornecendo uma visão da correlação entre diferentes pares de itens-usuário. Os Knowledge Graphs são frequentemente usados em conjunto com o Deep Learning (modelos 2vec) para representar cada uma das relações do gráfico em um espaço bidimensional, onde é fácil aplicar um modelo colaborativo.
As inovações descritas são o resultado de pesquisa de dois anos em sistemas de recomendação, que só começaram a ficar badalados em 2017. Claramente, a revolução do Deep Learning e do Knowledge Graph está apenas começando. No entanto, a Reply – dada a experiência que desenvolveu ao produzir numerosos PoCs com tecnologia Big Data de código aberto – pode ser considerada uma vanguardista nesses conceitos, o que inevitavelmente moldará o futuro dos sistemas de recomendação, tanto do ponto de vista algorítmico quanto arquitetônico. A este respeito, a Reply definiu o framework de Robotics for Customers, que destila as abordagens das diferentes empresas da Reply e permite soluções de recomendação rápidas para serem integradas em cada plataforma. A abordagem é completamente data-driven e customer-oriented, com base em uma metodologia Ágil: a fase do projeto segue os ciclos iterativos de prototipagem e validação on-line dos resultados com o teste A/B, envolvendo diretamente os usuários finais no loop de validação do algoritmo. A sintonia contínua permite testar diferentes modelos, incentivando a implementação de técnicas inovadoras, como Deep Learning e Knowledge Graphs durante o ciclo de vida do projeto, usando uma abordagem sistemática que minimiza o time-to-market.