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

milvus-logo
LFAI
  • Home
  • Blog
  • Zhentu - o detetor de fraudes fotográficas baseado em Milvus

Zhentu - o detetor de fraudes fotográficas baseado em Milvus

  • Scenarios
June 20, 2022
Yan Shi, Minwei Tang

cover image imagem da capa

Este artigo foi escrito por Yan Shi e Minwei Tang, engenheiros de algoritmos sénior da BestPay, e traduzido por Rosie Zhang.

Nos últimos anos, à medida que o comércio eletrónico e as transacções em linha se tornaram comuns em todo o mundo, a fraude no comércio eletrónico também floresceu. Ao utilizarem fotografias geradas por computador em vez de fotografias reais para passarem na verificação da identidade nas plataformas comerciais em linha, os autores de fraudes criam contas falsas em grande escala e aproveitam as ofertas especiais das empresas (por exemplo, ofertas de adesão, cupões, fichas), o que traz prejuízos irreparáveis tanto para os consumidores como para as empresas.

Os métodos tradicionais de controlo do risco já não são eficazes face a uma quantidade substancial de dados. Para resolver o problema, a BestPay criou um detetor de fraudes fotográficas, o Zhentu (que significa detetar imagens em chinês), baseado em tecnologias de aprendizagem profunda (DL) e de processamento digital de imagens (DIP). O Zhentu é aplicável a vários cenários que envolvem o reconhecimento de imagens, sendo uma importante ramificação a identificação de licenças comerciais falsas. Se a fotografia da licença comercial submetida por um utilizador for muito semelhante a outra fotografia já existente na biblioteca de fotografias de uma plataforma, é provável que o utilizador tenha roubado a fotografia algures ou tenha forjado uma licença para fins fraudulentos.

Os algoritmos tradicionais para medir a semelhança de imagens, como o PSNR e o ORB, são lentos e imprecisos, sendo apenas aplicáveis a tarefas offline. A aprendizagem profunda, por outro lado, é capaz de processar dados de imagem em grande escala em tempo real e é o melhor método para fazer corresponder imagens semelhantes. Com os esforços conjuntos da equipa de I&D da BestPay e da comunidade Milvus, foi desenvolvido um sistema de deteção de fraudes fotográficas como parte do Zhentu. Este sistema funciona convertendo grandes quantidades de dados de imagem em vectores de caraterísticas através de modelos de aprendizagem profunda e inserindo-os no Milvus, um motor de pesquisa de vectores. Com o Milvus, o sistema de deteção é capaz de indexar triliões de vectores e recuperar eficazmente fotografias semelhantes entre dezenas de milhões de imagens.

Saltar para:

Uma visão geral do Zhentu

O Zhentu é o produto de controlo de risco visual multimédia concebido pela BestPay, profundamente integrado com tecnologias de aprendizagem automática (ML) e de reconhecimento de imagem de rede neural. O seu algoritmo integrado pode identificar com precisão os autores de fraudes durante a autenticação do utilizador e responder ao nível dos milissegundos. Com a sua tecnologia líder na indústria e solução inovadora, a Zhentu ganhou cinco patentes e dois direitos de autor de software. Atualmente, está a ser utilizado em vários bancos e instituições financeiras para ajudar a identificar antecipadamente potenciais riscos.

Estrutura do sistema

Atualmente, a BestPay tem mais de 10 milhões de fotografias de licenças comerciais e o volume real continua a aumentar exponencialmente à medida que a empresa cresce. Para recuperar rapidamente fotografias semelhantes de uma base de dados tão grande, a Zhentu escolheu o Milvus como motor de cálculo de semelhança de vectores de caraterísticas. A estrutura geral do sistema de deteção de fraudes fotográficas é apresentada no diagrama abaixo.

img img

O procedimento pode ser dividido em quatro etapas:

  1. Pré-processamento da imagem. O pré-processamento, que inclui a redução do ruído, a remoção do ruído e o melhoramento do contraste, assegura a integridade da informação original e a remoção de informação inútil do sinal de imagem.

  2. Extração do vetor de caraterísticas. Um modelo de aprendizagem profunda especialmente treinado é utilizado para extrair os vectores de caraterísticas da imagem. A conversão de imagens em vectores para posterior pesquisa de semelhanças é uma operação de rotina.

  3. Normalização. A normalização dos vectores de caraterísticas extraídos ajuda a melhorar a eficiência do processamento subsequente.

  4. Pesquisa de vectores com Milvus. Inserção dos vectores normalizados na base de dados Milvus para pesquisa de semelhanças vectoriais.

Implementação

Segue-se uma breve descrição de como o sistema de deteção de fraudes fotográficas da Zhentu é implementado.

Milvus system architecture Arquitetura do sistema Milvus

Implementámos o nosso cluster Milvus em Kubernetes para garantir uma elevada disponibilidade e sincronização em tempo real dos serviços na nuvem. Os passos gerais são os seguintes:

  1. Ver os recursos disponíveis. Execute o comando kubectl describe nodes para ver os recursos que o cluster do Kubernetes pode alocar para os casos criados.

  2. Alocar recursos. Execute o comando kubect`` -- apply xxx.yaml para alocar recursos de memória e CPU para os componentes do cluster Milvus usando o Helm.

  3. Aplicar a nova configuração. Execute o comando helm upgrade my-release milvus/milvus --reuse-values -fresources.yaml.

  4. Aplique a nova configuração ao cluster do Milvus. O cluster implementado desta forma não só nos permite ajustar a capacidade do sistema de acordo com as diferentes necessidades comerciais, como também satisfaz melhor os requisitos de elevado desempenho para a recuperação massiva de dados vectoriais.

É possível configurar o Milvus para otimizar o desempenho da pesquisa para diferentes tipos de dados de diferentes cenários empresariais, como se mostra nos dois exemplos seguintes.

Na construção do índice vetorial, parametrizamos o índice de acordo com o cenário real do sistema, como se segue:

index = {"index_type": "IVF_PQ", "params": {"nlist": 2048}, "metric_type": "IP"}

O IVF_PQ efectua o agrupamento do índice IVF antes de quantificar o produto de vectores. Apresenta uma consulta de disco de alta velocidade e um consumo de memória muito baixo, o que satisfaz as necessidades da aplicação real do Zhentu.

Além disso, definimos os parâmetros de pesquisa óptimos da seguinte forma:

search_params = {"metric_type": "IP", "params": {"nprobe": 32}}

Como os vectores já estão normalizados antes de serem introduzidos no Milvus, o produto interno (PI) é escolhido para calcular a distância entre dois vectores. As experiências provaram que a taxa de recuperação é aumentada em cerca de 15% utilizando o PI do que utilizando a distância euclidiana (L2).

Os exemplos acima mostram que podemos testar e definir os parâmetros do Milvus de acordo com diferentes cenários empresariais e requisitos de desempenho.

Para além disso, Milvus não só integra diferentes bibliotecas de índices, como também suporta diferentes tipos de índices e métodos de cálculo de similaridade. O Milvus também fornece SDKs oficiais em vários idiomas e APIs ricas para inserção, consulta, etc., permitindo que os nossos grupos comerciais de front-end utilizem os SDKs para chamar o centro de controlo de riscos.

Desempenho no mundo real

Até agora, o sistema de deteção de fraudes com fotografias tem funcionado de forma constante, ajudando as empresas a identificar potenciais autores de fraudes. Em 2021, detetou mais de 20 000 licenças falsas ao longo do ano. Em termos de velocidade de consulta, uma única consulta de vetor entre dezenas de milhões de vetores leva menos de 1 segundo, e o tempo médio de consulta em lote é inferior a 0,08 segundos. A pesquisa de alto desempenho do Milvus satisfaz as necessidades das empresas em termos de precisão e simultaneidade.

Referências

Aglave P, Kolkure V S. Implementação de um método de extração de caraterísticas de elevado desempenho utilizando o algoritmo de resumo orientado rápido e rodado [J]. Int. J. Res. Eng. Technol, 2015, 4: 394-397.

Sobre a BestPay

A China Telecom BestPay Co., Ltd é uma subsidiária integral da China Telecom. Opera os negócios de pagamento e finanças. A BestPay está empenhada em utilizar tecnologias de ponta, como big data, inteligência artificial e computação em nuvem, para potenciar a inovação empresarial, fornecendo produtos inteligentes, soluções de controlo de risco e outros serviços. Até janeiro de 2016, a aplicação denominada BestPay atraiu mais de 200 milhões de utilizadores e tornou-se o terceiro maior operador de plataformas de pagamento na China, seguindo de perto a Alipay e a WeChat Payment.

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