🚀 Experimente o Zilliz Cloud, o Milvus totalmente gerenciado, gratuitamente—experimente um desempenho 10x mais rápido! Experimente Agora>>

milvus-logo
LFAI
  • Home
  • Blog
  • Como a plataforma de vídeos curtos Likee remove vídeos duplicados com Milvus

Como a plataforma de vídeos curtos Likee remove vídeos duplicados com Milvus

  • Scenarios
June 23, 2022
Xinyang Guo, Baoyu Han

Cover image Imagem da capa

Este artigo foi escrito por Xinyang Guo e Baoyu Han, engenheiros da BIGO, e traduzido por Rosie Zhang.

A BIGO Technology (BIGO) é uma das empresas tecnológicas de Singapura com crescimento mais rápido. Alimentados por tecnologia de inteligência artificial, os produtos e serviços baseados em vídeo da BIGO ganharam imensa popularidade em todo o mundo, com mais de 400 milhões de utilizadores em mais de 150 países. Estes incluem o Bigo Live (transmissão em direto) e o Likee (vídeo de curta duração).

O Likee é uma plataforma global de criação de vídeos curtos onde os utilizadores podem partilhar os seus momentos, expressar-se e ligar-se ao mundo. Para melhorar a experiência do utilizador e recomendar-lhe conteúdos de maior qualidade, o Likee tem de eliminar os vídeos duplicados de uma enorme quantidade de vídeos gerados pelos utilizadores todos os dias, o que não é uma tarefa fácil.

Este blogue apresenta a forma como o BIGO utiliza o Milvus, uma base de dados vetorial de código aberto, para remover eficazmente vídeos duplicados.

Saltar para:

O Milvus é um banco de dados vetorial de código aberto que oferece pesquisa vetorial ultra-rápida. Com o Milvus, o Likee é capaz de concluir uma pesquisa em 200 ms, garantindo uma alta taxa de recuperação. Entretanto, ao escalar o Milvus horizontalmente, o Likee aumenta com sucesso o rendimento das consultas vectoriais, melhorando ainda mais a sua eficiência.

Como é que o Likee identifica vídeos duplicados? Sempre que um vídeo de consulta é introduzido no sistema do Likee, é cortado em 15-20 fotogramas e cada fotograma é convertido num vetor de caraterísticas. Em seguida, o Likee pesquisa numa base de dados de 700 milhões de vectores para encontrar os K vectores mais semelhantes. Cada um dos K vectores de topo corresponde a um vídeo da base de dados. O Likee efectua ainda pesquisas refinadas para obter os resultados finais e determinar os vídeos a remover.

Vejamos em pormenor como funciona o sistema de desduplicação de vídeos do Likee utilizando o Milvus. Como se mostra no diagrama abaixo, os novos vídeos carregados no Likee serão escritos no Kafka, um sistema de armazenamento de dados, em tempo real e consumidos pelos consumidores do Kafka. Os vectores de caraterísticas destes vídeos são extraídos através de modelos de aprendizagem profunda, em que os dados não estruturados (vídeo) são convertidos em vectores de caraterísticas. Estes vectores de caraterísticas serão empacotados pelo sistema e enviados para o auditor de semelhanças.

Architechure of Likee's video de-duplication system Arquitetura do sistema de desduplicação de vídeo do Likee

Os vectores de caraterísticas extraídos serão indexados pelo Milvus e armazenados no Ceph, antes de serem carregados pelo nó de consulta do Milvus para posterior pesquisa. Os IDs de vídeo correspondentes a estes vectores de caraterísticas também serão armazenados simultaneamente no TiDB ou no Pika, de acordo com as necessidades reais.

Ao procurar vectores semelhantes, os milhares de milhões de dados existentes, juntamente com grandes quantidades de novos dados gerados todos os dias, colocam grandes desafios à funcionalidade do motor de pesquisa de vectores. Após uma análise exaustiva, o Likee acabou por escolher o Milvus, um motor de pesquisa vetorial distribuído de elevado desempenho e elevada taxa de recuperação, para efetuar a pesquisa de semelhanças vectoriais.

Como se pode ver no diagrama abaixo, o procedimento de uma pesquisa por semelhança é o seguinte:

  1. Primeiro, o Milvus efectua uma pesquisa em lote para recuperar os 100 principais vectores semelhantes para cada um dos múltiplos vectores de caraterísticas extraídos de um novo vídeo. Cada vetor semelhante é associado ao seu ID de vídeo correspondente.

  2. Em segundo lugar, ao comparar os IDs dos vídeos, o Milvus remove os vídeos duplicados e recupera os vectores de caraterísticas dos restantes vídeos a partir do TiDB ou do Pika.

  3. Por fim, o Milvus calcula e pontua a semelhança entre cada conjunto de vectores de caraterísticas recuperados e os vectores de caraterísticas do vídeo consultado. O ID do vídeo com a pontuação mais elevada é devolvido como resultado. Assim, a pesquisa por semelhança de vídeo é concluída.

Procedure of a similarity search Procedimento de uma pesquisa por semelhança

Enquanto motor de pesquisa vetorial de elevado desempenho, o Milvus fez um trabalho extraordinário no sistema de desduplicação de vídeo do Likee, impulsionando grandemente o crescimento do negócio de vídeos curtos do BIGO. Em termos de negócios de vídeo, há muitos outros cenários em que o Milvus pode ser aplicado, como o bloqueio de conteúdo ilegal ou a recomendação personalizada de vídeos. Tanto a BIGO como a Milvus estão ansiosas por uma futura cooperação em mais áreas.

    Try Managed Milvus for Free

    Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

    Get Started

    Like the article? Spread the word

    Continue Lendo