BR112018010165B1 - Método baseado em computador para recomendar um comerciante, sistema de recomendação para recomendar um comerciante e meios de armazenamento não transitórios legíveis por computador - Google Patents

Método baseado em computador para recomendar um comerciante, sistema de recomendação para recomendar um comerciante e meios de armazenamento não transitórios legíveis por computador Download PDF

Info

Publication number
BR112018010165B1
BR112018010165B1 BR112018010165-6A BR112018010165A BR112018010165B1 BR 112018010165 B1 BR112018010165 B1 BR 112018010165B1 BR 112018010165 A BR112018010165 A BR 112018010165A BR 112018010165 B1 BR112018010165 B1 BR 112018010165B1
Authority
BR
Brazil
Prior art keywords
merchant
merchants
computer
list
matching matrix
Prior art date
Application number
BR112018010165-6A
Other languages
English (en)
Other versions
BR112018010165A2 (pt
Inventor
Christopher John Merz
Walter F. Lo Faro
Peng Yang
Original Assignee
Mastercard International Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mastercard International Incorporated filed Critical Mastercard International Incorporated
Priority claimed from PCT/US2016/065977 external-priority patent/WO2017100677A1/en
Publication of BR112018010165A2 publication Critical patent/BR112018010165A2/pt
Publication of BR112018010165B1 publication Critical patent/BR112018010165B1/pt

Links

Abstract

SISTEMAS E MÉTODOS PARA GERAÇÃO DE RECOMENDAÇÕES COM A UTILIZAÇÃO DE UM CORPO DE DADOS. Um método e um sistema para recomendar um comerciante são fornecidos. O método inclui a recepção de dados de transações financeiras que documentam as transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes e gere uma matriz de correspondência de comerciantes que inclua a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes. A pluralidade de indicadores de interações que registram as transações financeiras conduzidas pela pluralidade de correntistas em ambos os comerciantes em um par da pluralidade de comerciantes. O método inclui ainda a recepção de uma consulta por uma recomendação de um comerciante a partir de um titular de conta e gera uma lista de classificação de comerciantes com base em um algoritmo de recomendação. O algoritmo de recomendação infere as preferências do usuário a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular do cartão.

Description

Referência Cruzada a Pedidos Relacionados
[0001] Este pedido reivindica a prioridade e o benefício da data de depósito da Solicitação Provisória dos Estados Unidos n° 62/266.419, arquivada em 11 de dezembro de 2015, a qual é incorporada por referência em sua totalidade.
Antecedentes
[0002] Esta descrição refere-se geralmente a redes de informação e, mais particularmente, a sistemas de computador e métodos baseados em computador para gerar recomendações e detectar comportamento fraudulento com base em um corpo de dados com elementos ligados.
[0003] Pelo menos alguns sistemas de recomendação conhecidos usam dados históricos para determinar as preferências de um usuário, que são então aplicados a novos dados para discernir informações potenciais nos novos dados que são de interesse para o usuário. Por exemplo, ao monitorar dados de transações financeiras a partir de transações financeiras de um titular de cartão de pagamento, é possível gerar um padrão de preferências do titular do cartão. Por exemplo, se um titular de conta fizer compras frequentes em lojas de departamentos voltadas para atividades ao ar livre e menos compras em livrarias, poderá ser feita uma inferência sobre as preferências das atividades recreativas favorecidas pelo titular do cartão. Esses sistemas de recomendação conhecidos tenderiam a fornecer outras lojas voltadas para atividades ao ar livre para o titular do cartão quando consultados, por exemplo, em uma nova localização geográfica.
[0004] No entanto, fornecer recomendações significativas de comerciantes para um usuário sem um perfil pessoal de preferências para esse usuário é difícil e, em alguns casos, não é possível.
Breve Descrição
[0005] Em uma modalidade, um método de recomendação de um comerciante inclui a recepção de dados de transações financeiras documentando transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes e gerando uma matriz de correspondência de comerciantes que inclua a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas com pares da pluralidade de comerciantes. A pluralidade de indicadores de interações registra as transações financeiras conduzidas pela pluralidade de correntistas em ambos dos comerciantes em um par da pluralidade de comerciantes. O método inclui ainda a recepção de uma consulta para uma recomendação de um comerciante de um titular de conta e gerar uma lista de classificação de comerciantes com base em um algoritmo de recomendação. O algoritmo de recomendação infere as preferências do usuário a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular do cartão.
[0006] Em outra modalidade, um sistema de recomendação para recomendar um comerciante compreende um ou mais processadores comunicativamente acoplados a um ou mais dispositivos de memória. O um ou mais processadores são configurados para receber os dados de transações financeiras documentando transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes e para gerar uma matriz de correspondência de comerciantes que inclua a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes, a pluralidade de indicadores de interações que registram as transações financeiras conduzidas pela pluralidade de correntistas em ambos os comerciantes em um par da pluralidade de comerciantes. O um ou mais processadores são ainda configurados para receber uma consulta de recomendação sobre um comerciante a partir de um titular de conta e gerar uma lista de classificação de comerciantes com base em um algoritmo de recomendação, o algoritmo de recomendação inferindo as preferências do usuário a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular do cartão.
[0007] Em ainda outra modalidade, um ou mais meios de arma zenamento não transitórios legíveis por computador incluem instruções executáveis por computador incorporadas nos mesmos. Quando executadas por pelo menos um processador, as instruções executáveis por computador fazem com que o processador receba os dados de transações financeiras que documentam as transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes e gere uma matriz de correspondência de comerciantes que inclua a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes, a pluralidade de indicadores de interações que registram as transações financeiras conduzidas pela pluralidade de titulares de conta em ambos os comerciantes em um par da pluralidade de comerciantes. As instruções executáveis por computador ainda fazem com que o processador receba uma consulta de recomendação sobre um comerciante a partir de um titular de conta e gere uma lista de classificação de comerciantes com base em um algoritmo de recomendação, o algoritmo de recomendação inferindo as preferências do usuário a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular do cartão.
Breve Descrição dos Desenhos
[0008] As Figs. 1-11 mostram exemplos de modalidades dos méto dos e sistemas descritos neste documento.
[0009] A FIG. 1 é um diagrama esquemático que ilustra um exemplo de sistema de rede de cartão de pagamento de múltiplas partes tendo um módulo de recomendação.
[0010] A FIG. 2 é um diagrama de blocos simplificado do sistema de rede de cartões de pagamento, que inclui uma pluralidade de dispositivos de computador, incluindo o módulo de recomendação.
[0011] A FIG. 3A é um diagrama de blocos expandido de uma modalidade de exemplo de uma arquitetura de um sistema de servidor do sistema de rede de cartões de pagamento mostrado na FIG. 1
[0012] A FIG. 3B mostra uma configuração do banco de dados no servidor de banco de dados do sistema do servidor com outros componentes do servidor relacionados.
[0013] A FIG. 4 ilustra uma configuração de exemplo de um sistema de usuário operado por um usuário, tal como o titular do cartão mostrado na FIG. 1.
[0014] A FIG. 5 ilustra um exemplo de configuração de um sistema de servidor, tal como o sistema de servidor mostrado nas FIGS. 2, 3A e 3B.
[0015] A FIG. 6 é um diagrama de uma matriz de correspondência de comerciantes esparsa que pode ser utilizada com o módulo de recomendação ChangeRank mostrado na FIG. 1 exibido como um gráfico.
[0001] A FIG. 7 é uma ilustração dos etapas realizados no módulo de recomendação 34.
[0002] A FIG. 8 é um mapa de uma área que contém os restaurantes da matriz de correspondência de comerciantes mostrada na FIG. 7.
[0003] A FIG. 9 é uma matriz de correspondência de comerciantes, incluindo as áreas metropolitanas de St. Louis e New York, usadas para determinar recomendações em uma área metropolitana com base em sementes de uma área metropolitana diferente.
[0004] A FIG. 10 é uma tabela que avalia cada variação do módulo de recomendação 34 através de uma variedade de medidas.
[0005] A FIG. 11 é um fluxograma de um exemplo de método para recomendar um comerciante.
Descrição Detalhada
[0006] As modalidades de um módulo de computador especialmente programado, referido como um módulo ChangeRank ou módulo de recomendação 34, são descritas neste documento. O módulo ChangeRank usa seletivamente um ou mais de uma pluralidade de algoritmos especializados, dependendo de uma quantidade de informação acessível ou fornecida ao módulo ChangeRank. O módulo ChangeRank usa uma matriz de compras feitas em uma pluralidade de comerciantes para gerar ligações entre os comerciantes, presumindo que, se um comprador compra mercadorias em um primeiro comerciante e depois um segundo comerciante, os comerciantes são relacionados por uma preferência do comprador. O módulo ChangeRank carrega essa suposição para centenas de milhares ou milhões de transações e relaciona os comerciantes nas transações uns com os outros com a utilização da matriz. As informações capturadas na matriz podem ser usadas para gerar recomendações de comerciante com poucos dados de preferência do comprador disponíveis. O módulo ChangeRank também pode aproveitar informações adicionais para melhorar a precisão das recomendações fornecidas em resposta a uma consulta.
[0007] O módulo ChangeRank é configurado para classificar os comerciantes com base em como os clientes os interligam através de compras com a utilização de um cartão de pagamento ou dispositivo similar. O módulo ChangeRank fornece recomendações relevantes, mesmo sem o conhecimento prévio das preferências de um usuário, inferindo preferências com base nos comerciantes frequentados pelo usuário. Os dados do comerciante são recuperados a partir de dados de transações financeiras tornados acessíveis ao módulo ChangeRank. Além de fornecer recomendações significativas sem conhecer as preferências do usuário, o ChangeRank é escalável para fornecer recomendações significativamente melhores com base nas informações adicionais do usuário recebidas, por exemplo, quando um usuário opta por permitir que os dados do produto sejam incluídos nos dados de transações financeiras disponíveis. O usuário também pode indicar explicitamente as preferências durante a solicitação de consulta para recomendações.
[0008] O módulo ChangeRank deriva a importância dos nós em um gráfico com base em como eles estão conectados. Como usado neste documento, um nó é um comerciante e uma borda mede o número de co-visitas do titular do cartão entre os comerciantes que a borda conecta.
[0009] O módulo ChangeRank estabelece a ordem de importância dos comerciantes unicamente na conectividade do gráfico, sem quaisquer preferências conhecidas do usuário. Então, no momento de uma consulta, apenas os comerciantes com termos de pesquisa correspondentes são retornados em uma ordem de classificação de pedidos.
[0010] Em uma primeira modalidade, o ChangeRank estabelece uma classificação de comerciantes, então a intenção do usuário (por exemplo, "Italiano", "familiar", NYC, etc.) serve como a consulta de pesquisa, e em seguida o módulo ChangeRank retorna os comerciantes que correspondem na ordem de sua classificação. Esta modalidade de exemplo do módulo ChangeRank é altamente escalonável, mas não usa o histórico de transações do usuário para fazer uma recomendação.
[0011] Em uma segunda modalidade, o módulo ChangeRank usa o histórico de transações reais de um titular da conta para influenciar diretamente os resultados (sem a abstração para tags como "italiano", "familiar", etc.). Esta modalidade deriva de personalização com base em comerciantes específicos visitados e não depende de qualquer processo de marcação para fazer as recomendações, no entanto, os cálculos do módulo ChangeRank nesta modalidade podem ser intensos em termos computacionais. As variações entre a primeira e a segunda versão do algoritmo permitem adaptar as necessidades da solicitação de recomendação atual e dos recursos de computação disponíveis quando a consulta é feita.
[0012] Como usado neste documento, os termos "cartão de tran sação", "cartão de transação financeira" e "cartão de pagamento" referem-se a qualquer cartão de transação adequado, tal como um cartão de crédito, um cartão de débito, um cartão pré-pago, um cartão de cobrança, um cartão de associado, um cartão promocional, um cartão de passageiro frequente, um cartão de identificação, um cartão pré-pago, um cartão de presente e/ou qualquer outro dispositivo que possa conter informações da conta de pagamento, tais como telefones celulares, telefones inteligentes, assistentes pessoais digitais (PDAs), chaveiros e/ou computadores. Cada tipo de cartão de transações pode ser usado como um método de pagamento para realizar uma transação.
[0013] Em uma modalidade, um programa de computador é for necido, e o programa é incorporado em um meio legível por computador. Em uma modalidade de exemplo, o sistema é executado em um único sistema de computador, sem requerer uma conexão com um computador servidor. Em um outro exemplo de modalidade, o sistema é executado em um ambiente Windows® (Windows é uma marca comercial registada da Microsoft Corporation, Redmond, Washington). Ainda em outra modalidade, o sistema é executado em um ambiente de mainframe e em um ambiente de servidor UNIX® (UNIX é uma marca registada da AT&T localizada em New York, New York). O aplicativo é flexível e projetado para ser executado em vários ambientes diferentes sem comprometer nenhuma funcionalidade importante. Em algumas modalidades, o sistema inclui múltiplos componentes distribuídos entre uma pluralidade de dispositivos de computação. Um ou mais componentes podem estar na forma de instruções executáveis por computador incorporadas em um meio legível por computador. Os sistemas e processos não estão limitados às modalidades específicas descritas neste documento. Além disso, os componentes de cada sistema e de cada processo podem ser praticados independentemente e separados de outros componentes e processos descritos neste documento. Cada componente e processo também pode ser usado em combinação com outros pacotes e processos de montagem.
[0014] Como usado neste documento, o termo "banco de dados" pode referir-se a um corpo de dados, a um sistema de gerenciamento de banco de dados relacional (RDBMS) ou a ambos. Um banco de dados pode incluir qualquer coleção de dados, incluindo bancos de dados hierárquicos, bancos de dados relacionais, bancos de dados de arquivos simples, bancos de dados relacionado a objetos, bancos de dados orientados a objetos, e qualquer outra coleção estruturada de registros ou dados armazenados em um sistema de computador. Os exemplos acima são apenas para exemplo, e portanto, não se destinam a limitar de qualquer forma a definição e/ou o significado do termo banco de dados. Exemplos de RDBMS incluem, entre outros, Oracle® Database, MySQL, IBM® DB2, Microsoft® SQL Server, Sybase® e PostgreSQL. No entanto, qualquer banco de dados pode ser usado para habilitar os sistemas e métodos descritos neste documento. (Oracle é marca registrada da Oracle Corporation, Redwood Shores, Califórnia; IBM é marca registrada da International Business Machines Corporation, Armonk, Nova York; Microsoft é marca registrada da Microsoft Corporation, Redmond, Washington; e Sybase é marca registrada de Sybase, Dublin, Califórnia.)
[0015] A seguinte descrição detalhada ilustra modalidades da descrição a título de exemplo e não como limitação. Está contemplado que a descrição tem aplicação geral ao processamento de dados de transações financeiras em aplicações industriais, comerciais e residenciais.
[0016] Como utilizado neste documento, um elemento ou etapa recitado no singular e seguido da palavra "um" ou "uma" deve ser entendido como não excluindo vários elementos ou etapas, a menos que tal exclusão seja explicitamente recitada. Além disso, as referências a "exemplo de modalidade" ou "uma modalidade" da presente descrição não se destinam a ser interpretadas como excluindo a existência de modalidades adicionais que também incorporam as características citadas.
[0017] A FIG. 1 é um diagrama esquemático que ilustra um exemplo de sistema de rede de cartões de pagamento de múltiplas partes 20 tendo um módulo de recomendação 34. No exemplo de modalidade, o módulo de recomendação 34 é também referido como o módulo ChangeRank. O sistema de rede de cartões de pagamento de múltiplas partes 20 permite transações com cartões de pagamento entre comerciantes e titulares de cartões ou titulares de contas. O módulo de recomendação 34 é um sistema de computador especialmente programado que permite que dados de localização do comerciante provenientes do sistema de rede de cartão de pagamento de múltiplas partes sejam usados para inferir as preferências do usuário quando o usuário consulta o módulo de recomendação 34 sobre um comerciante ao qual fazer uma compra. O módulo de recomendação 34 é especialmente programado com uma pluralidade de algoritmos que também são configurados para receber vários dados de preferência do usuário a partir do usuário na forma de dados de entrada de consulta, dados de comerciante, e dados inferidos a partir de outras fontes de informação ou comunicações. Os dados combinados são, em seguida, usados para fornecer recomendações de comerciantes. Em alguns casos, o usuário é um titular de conta que inicia transações processadas pelo sistema de rede de cartão de pagamento 20. Em outros casos, qualquer pessoa com acesso ao módulo de recomendação 34, através de um site ou aplicativo de telefone inteligente pode ser um usuário.
[0018] As modalidades descritas neste documento podem estar relacionadas a um sistema de cartão de transações financeiras, tal como um sistema de rede de cartões de pagamento operado pela MasterCard International Incorporated. A rede de cartões de pagamento, como descrita neste documento, é uma rede de cartão de pagamento de quatro partes que inclui uma pluralidade de processadores de propósito especial e estruturas de dados armazenados em um ou mais dispositivos de memória acoplados de modo comunicativo aos processadores, e um conjunto de padrões de comunicação proprietários promulgados pela MasterCard International Incorporated para a troca de dados de transações financeiras e a liquidação de fundos entre as instituições financeiras que são clientes da rede de cartões de pagamento. Como usado neste documento, os dados de transações financeiras incluem um número de conta exclusivo associado a um titular de conta que utiliza um cartão de pagamento emitido por um emissor, dados de compra representando uma compra feita pelo titular do cartão, incluindo um tipo de comerciante, quantidade de compra, data de compra, e outros dados, que podem ser transmitidos entre quaisquer partes do sistema de rede de cartões de pagamento de múltiplas partes 20.
[0019] Em um sistema típico de cartão de pagamento, uma insti tuição financeira chamada "emissor" emite um cartão de pagamento, tal como um cartão de crédito, para um consumidor ou titular do cartão 22, que usa o cartão de pagamento para propor o pagamento de uma compra a um comerciante 24. Para aceitar o pagamento com o cartão de pagamento, o comerciante 24 deve normalmente estabelecer uma conta com uma instituição financeira que faz parte do sistema de processamento de pagamento financeiro. Essa instituição financeira é geralmente chamada de "banco do comerciante", "banco adquirente" ou "adquirente". Quando o titular do cartão 22 faz a proposta de pagamento de uma compra com o cartão de pagamento, o comerciante 24 solicita a autorização de um banco do comerciante 26 para o valor da compra. A solicitação pode ser feita por telefone, mas geralmente é feita através do uso de um terminal de ponto de venda, que lê as informações da conta do titular do cartão 22 a partir de uma tarja magnética, um chip, ou caracteres em alto-relevo no cartão de pagamento e se comunica eletronicamente com os computadores de processamento de transações do banco do comerciante 26. Como alternativa, o banco do comerciante 26 pode autorizar um terceiro a realizar o processamento de transações em seu nome. Nesse caso, o terminal de ponto de venda será configurado para se comunicar com o terceiro. Esse terceiro geralmente é chamado de "processador de comerciante", "processador de aquisição" ou "processador de terceiros".
[0020] Utilizando uma rede de cartões de pagamento 28, os compu tadores do banco do comerciante 26 ou o processador do comerciante se comunicarão com os computadores de um banco emissor 30 para determinar se a conta 32 do titular do cartão 22 está em situação regular e se a compra está coberta pela linha de crédito disponível do titular do cartão 22. Com base nessas determinações, a solicitação de autorização será recusada ou aceita. Se a solicitação for aceita, um código de autorização será emitido para o comerciante 24.
[0021] Quando uma solicitação de autorização é aceita, a linha de crédito disponível da conta 32 do titular do cartão 22 é diminuída. Normalmente, uma cobrança por uma transação com cartão de pagamento não é lançada imediatamente na conta 32 do titular do cartão 22, porque as associações de cartões bancários, tais como a MasterCard International Incorporated®, promulgaram regras que não permitem ao comerciante 24 cobrar ou "capturar" uma transação até que as mercadorias sejam enviadas ou os serviços sejam entregues. No entanto, com relação a pelo menos algumas transações com cartão de débito, uma cobrança pode ser lançada no momento da transação. Quando o comerciante 24 envia ou entrega os bens ou serviços, o comerciante 24 captura a transação através, por exemplo, de procedimentos de entrada de dados apropriados no terminal de ponto de venda. Isso pode incluir o agrupamento de transações aprovadas diariamente para compras de varejo padrão. Se o titular do cartão 22 cancela uma transação antes que ela seja capturada, um "vazio" é gerado. Se o titular do cartão 22 devolver as mercadorias após a transação ter sido capturada, um "crédito" será gerado. A rede de cartões de pagamento 28 e/ou o banco emissor 30 armazena os dados de transações financeiras, tais como um tipo de comerciante, quantidade de compra, data de compra, em um banco de dados 120 (mostrado na FIG. 2).
[0022] Para transações com cartão de débito, quando uma solicitação de autorização de PIN é aprovada pelo emissor, a conta do consumidor é diminuída. Normalmente, uma cobrança é lançada imediatamente na conta do consumidor. O emissor 30, em seguida, transmite a aprovação para o banco do comerciante 26 através da rede de pagamento 28, com o comerciante 24 sendo finalmente notificado para a distribuição dos bens/serviços, ou informação ou dinheiro no caso de um caixa eletrônico.
[0023] Após uma compra ter sido feita, ocorre um processo de compensação para transferir os dados de transação adicionais relacionados à compra entre as partes da transação, como o banco do comerciante 26, a rede de cartões de pagamento 28 e o banco emissor 30. Mais especificamente, durante e/ou após o processo de compensação, os dados adicionais, tais como o horário da compra, o nome do comerciante, o tipo de comerciante, as informações de compra, as informações da conta do titular do cartão, o tipo de transação, o produto ou serviço para informação de venda, as informações sobre o item e/ou serviço comprado, e/ou outras informações adequadas, são associadas a uma transação e são transmitidas entre as partes da transação como dados da transação, e podem ser armazenadas por qualquer das partes da transação.
[0024] Depois que uma transação é autorizada e compensada, a transação é liquidada entre o comerciante 24, o banco do comerciante 26 e o banco emissor 30. A liquidação refere-se à transferência de dados financeiros ou fundos entre a conta do comerciante, o banco do comerciante 26 e o banco do emissor 30, relacionados à transação. Normalmente, as transações são capturadas e acumuladas em um "lote", que é liquidado como um grupo. Mais especificamente, uma transação é tipicamente liquidada entre o banco emissor 30 e a rede de cartões de pagamento 28, e depois entre a rede de cartões de pagamento 28 e o banco do comerciante 26, e depois entre o banco do comerciante 26 e o comerciante 24.
[0025] A rede de cartões de pagamento 28 é configurada para interagir com o módulo de recomendação 34. O módulo de recomendação 34 é configurado para receber os dados de transações financeiras a partir da rede de cartões de pagamento 28 com o objetivo de gerar uma matriz de correspondência de comerciantes esparsa. A matriz de correspondência de comerciantes esparsa inclui uma lista de uma pluralidade de comerciantes associados a cada eixo (eixo x e eixo y) de um gráfico bidimensional. Por outras palavras, a mesma lista de comerciantes está associada a um primeiro eixo (por exemplo, o eixo x) e a um segundo eixo (por exemplo, o eixo y) do gráfico. As interseções de linha e de coluna que incluem os comerciantes para os quais há uma co-visita serão computadas para cada co-visita. O gráfico tabula os pares de comerciantes em que um titular de conta visitou a ambos os comerciantes. Quando apenas algumas co-visitas são computadas, pouca informação é aparente no gráfico. No entanto, à medida que mais co-visitas são determinadas a partir dos dados de transações financeiras e registradas no gráfico, os padrões se tornam reconhecíveis e os dados se tornam mais úteis para fornecer recomendações ao usuário.
[0026] A FIG. 2 é um diagrama de blocos simplificado de um sistema de rede de cartão de pagamento exemplificativo 100 que inclui uma pluralidade de dispositivos de computador incluindo o módulo de recomendação 34. No exemplo de modalidade, a pluralidade de dispositivos de computador inclui, por exemplo, um sistema de servidor 112, sistemas de cliente 114, e um módulo de recomendação 34. Em uma modalidade, o sistema de rede de cartões de pagamento 100 implementa um processo para gerar recomendações de locais de comerciantes. Mais especificamente, o módulo de recomendação 34 em comunicação com o sistema de servidor 112 é configurado para receber pelo menos uma parte dos dados de transações financeiras relativas a transações financeiras entre uma pluralidade de comerciantes e titulares de cartões ou correntistas. Os dados da transação financeira incluem a informação sobre a localização do comerciante e o recebimento de pelo menos uma parte dos dados da transação financeira é armazenado em um dispositivo de memória.
[0027] Mais especificamente, na modalidade de exemplo, o sistema de rede de cartão de pagamento 100 inclui um sistema de servidor 112, e uma pluralidade de subsistemas de cliente, também referidos como sistemas de cliente 114, conectados ao sistema de servidor 112. Em uma modalidade, os sistemas de cliente 114 são computadores que incluem um navegador da Web, de modo que o sistema de servidor 112 seja acessível aos sistemas de cliente 114 com a utilização da Internet. Os sistemas de cliente 114 estão interligados à Internet através de muitas interfaces, incluindo uma rede, tal como uma rede de área local (LAN) ou uma rede de longa distância (WAN), conexões discadas, modems a cabo, e linhas de Rede Digital de Serviços Integrados de alta velocidade (ISDN) especiais. Os sistemas de cliente 114 podem ser qualquer dispositivo capaz de interconectar-se à Internet, o que inclui um telefone baseado na web, PDA, ou outro equipamento conectável baseado na web.
[0028] O sistema de rede de cartões de pagamento 100 também inclui terminais de ponto de venda (POS) 118, que podem ser conectados aos sistemas de clientes 114 e podem ser conectados ao sistema de servidor 112. Os terminais POS 118 são interconectados à Internet através de muitas interfaces, incluindo uma rede, tal como uma rede local (LAN) ou uma rede de longa distância (WAN), conexões discadas, modems a cabo, modems sem fio, e linhas ISDN especiais de alta velocidade. Os terminais POS 118 podem ser qualquer dispositivo capaz de interconectar-se à Internet e incluir um dispositivo de entrada capaz de ler a informação a partir do cartão de transação financeira de um consumidor.
[0029] Um servidor de banco de dados 116 é conectado ao banco de dados 120, que contém informações sobre uma variedade de assuntos, conforme descrito abaixo em maior detalhe. Em uma modalidade, o banco de dados centralizado 120 é armazenado no sistema de servidor 112 e pode ser acessado por potenciais utilizadores em um dos sistemas de cliente 114, ao entrar no sistema de servidor 112 através de um dos sistemas de cliente 114. Em uma modalidade alternativa, o banco de dados 120 é armazenado remotamente do sistema de servidor 112 e pode ser não centralizado.
[0030] O banco de dados 120 pode incluir um único banco de dados com seções separadas ou partições ou pode incluir vários bancos de dados, cada um sendo separado dos outros. O banco de dados 120 pode armazenar os dados de transação gerados como parte de atividades de vendas conduzidas através da rede de processamento, incluindo dados relativos a comerciantes, titulares de conta ou clientes, emitentes, adquirentes, compras efetuadas. O banco de dados 120 também pode armazenar os dados de conta, que incluem pelo menos um dos nomes de um titular de conta, um endereço do titular da conta, um número de conta principal (PAN) associado ao nome do titular da conta, e outro identificador de conta. O banco de dados 120 também pode armazenar os dados do comerciante, que incluem um identificador de comerciante que identifica cada comerciante registrado para usar a rede, e instruções para a liquidação das transações, incluindo as informações da conta bancária do comerciante. O banco de dados 120 também pode armazenar os dados de compra associados a itens que estão sendo comprados por um titular de conta de um comerciante, e dados de solicitação de autorização. O banco de dados 120 pode armazenar arquivos de imagem associados ao item ou serviço à venda pelo comerciante usuário, nome, preço, descrição, informações de envio e entrega, instruções para facilitar a transação, e outras informações para facilitar o processamento de acordo com o método descrito na presente descrição.
[0031] No exemplo de modalidade, um dos sistemas de cliente 114 pode estar associado ao banco adquirente 26 (mostrado na FIG. 1) enquanto outro dos sistemas clientes 114 pode estar associado ao banco emissor 30 (mostrado na FIG. 1). O terminal POS 118 pode estar associado a um comerciante participante 24 (mostrado na FIG. 1) ou pode ser um sistema de computador e/ou um sistema móvel utilizado por um titular de conta que efetua uma compra ou pagamento on-line. O sistema de servidor 112 pode estar associado à rede de cartão de pagamento 28. No exemplo de modalidade, o sistema de servidor 112 está associado a uma rede de processamento de transações financeiras, tal como a rede de cartão de pagamento 28, e pode ser referido como um sistema de computador de troca. O sistema de servidor 112 pode ser utilizado para processar os dados de transação. Além disso, os sistemas de cliente 114 e/ou o POS 118 podem incluir um sistema de computador associado a pelo menos um de um banco on-line, um contratante de pagamento de contas, um banco adquirente, um processador de adquirente, um banco emissor associado a um cartão de transação, um processador do emissor, um sistema de processamento de pagamento remoto, um faturador, e/ou um módulo de recomendação 34. O módulo de recomendação 34 pode estar associado à rede de cartões de pagamento 28 ou a um terceiro externo em uma relação contratual com a rede de cartões de pagamento 28. Nesse sentido, cada parte envolvida no processamento de dados de transações está associada a um sistema de computador mostrado no sistema de rede de cartões de pagamento 100, de tal modo que as partes possam comunicar entre si como descrito neste documento.
[0032] A FIG. 3A é um diagrama de blocos expandido de uma modalidade de exemplo de uma arquitetura de um sistema de servidor 122 do sistema de rede de cartões de pagamento 100. Os componentes no sistema 122, idênticos aos componentes do sistema de rede de cartão de pagamento 100 (mostrado na FIG. 2), são identificados na FIG. 3A com a utilização dos mesmos números de referência que os utilizados na FIG. 2. Por exemplo, o módulo de recomendação 34 é similarmente rotulado nas FIGS. 1, 2 e 3A. O sistema 122 inclui o sistema de servidor 112, os sistemas de cliente 114 e 115, os terminais POS 118, e pelo menos um dispositivo de entrada 119. O sistema de servidor 112 inclui ainda o servidor de banco de dados 116, um servidor de transações 124, um servidor de web 126, um servidor de fax 128, um servidor de diretórios 130, e um servidor de correio 132. Um dispositivo de armazenamento 134 é acoplado ao servidor de banco de dados 116 e ao servidor de diretórios 130. Os servidores 116, 124, 126, 128, 130 e 132 são acoplados em uma rede de área local (LAN) 136. Além disso, uma estação de trabalho do administrador do sistema 138, uma estação de trabalho do usuário 140, e uma estação de trabalho do supervisor 142 são acopladas à LAN 136. Como alternativa, as estações de trabalho 138, 140 e 142 são acopladas à LAN 136 com a utilização de um link de Internet ou conectadas através de uma Intranet.
[0033] Cada estação de trabalho, 138, 140 e 142 é um computador pessoal com um navegador da web. Embora as funções executadas nas estações de trabalho sejam tipicamente ilustradas como sendo executadas nas respectivas estações de trabalho 138, 140 e 142, tais funções podem ser executadas em um dos muitos computadores pessoais acoplados à LAN 136. As estações de trabalho 138, 140 e 142 são ilustradas como sendo associadas a funções separadas apenas para facilitar a compreensão dos diferentes tipos de funções que podem ser executadas por indivíduos com acesso à LAN 136.
[0034] O sistema de servidor 112 está configurado para ser comunicativamente acoplado ao módulo de recomendação 34 e a vários indivíduos, incluindo funcionários 144 e a terceiros, por exemplo, corren- tistas, clientes, auditores, desenvolvedores, consumidores, comerciantes, adquirentes, emissores, etc. 146 com a utilização de uma conexão à Internet ISP 148. A comunicação na modalidade de exemplo é ilustrada como sendo executada com a utilização da Internet, no entanto, qualquer outra comunicação do tipo de rede de longa distância (WAN) pode ser utilizada em outras modalidades, isto é, os sistemas e processos não são limitados a serem praticados com a utilização da Internet. Além disso, e em vez da WAN 150, a rede de área local 136 poderia ser usada no lugar da WAN 150.
[0035] No exemplo de modalidade, qualquer indivíduo autorizado que tenha uma estação de trabalho 154 pode acessar o sistema 122. Pelo menos um dos sistemas de cliente inclui uma estação de trabalho gerenciadora 156 localizada em um local remoto. As estações de trabalho 154 e 156 são computadores pessoais com um navegador da web. Além disso, as estações de trabalho 154 e 156 estão configuradas para se comunicar com o sistema de servidor 112. Além disso, o servidor de fax 128 se comunica com sistemas de clientes localizados remotamente, incluindo um sistema de cliente 158 com a utilização de uma ligação telefônica. O servidor de fax 128 está configurado para se comunicar também com outros sistemas de clientes 138, 140 e 142.
[0036] A FIG. 3B mostra uma configuração do banco de dados 120 dentro do servidor de banco de dados 116 do sistema de servidor 112 com outros componentes de servidor relacionados. Mais especificamente, a FIG. 3B mostra uma configuração do banco de dados 120 em comunicação com o servidor de banco de dados 116 do sistema de servidor 112 mostrado nas FIGS. 2 e 3A. O banco de dados 120 é acoplado a vários componentes separados dentro do sistema de servidor 112, que executam tarefas específicas.
[0037] O sistema de servidor 112 inclui um componente de recepção 160 para receber os dados de transações financeiras que documentam transações financeiras entre uma pluralidade de titulares de cartões ou correntistas e uma pluralidade de comerciantes, um componente de geração 162 para gerar uma matriz de correspondência de comerciantes que inclua a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes, a pluralidade de indicadores de interações que regsitram as transações financeiras conduzidas pela pluralidade de titulares de cartões ou correntistas em ambos os comerciantes em um par da pluralidade de comerciantes, um componente de recepção 164 para receber uma consulta por uma recomendação de um comerciante a partir de um titular de conta, e um componente de geração 166 para gerar uma lista de classificação de comerciantes com base em um algoritmo de recomendação, o algoritmo de recomendação inferindo as preferências do usuário a partir de atributos da pluralidade de comerciantes visitados pelo titular do cartão.
[0038] Em uma modalidade de exemplo, o sistema de rede de cartão de pagamento 100 inclui um componente administrativo (não mostrado) que fornece um componente de entrada, bem como um componente de edição, para facilitar as funções administrativas. O sistema de rede de cartões de pagamento 100 é flexível para fornecer outros tipos alternativos de relatórios e não está limitado às opções definidas acima.
[0039] Em uma modalidade exemplar, o banco de dados 120 é dividido em várias seções, incluindo, mas não limitado a, uma Seção de Dados de Transação e Compra 170, uma Seção de Dados do Comerciante 172, e uma Seção de Dados da Conta do Titular do Cartão 174. Estas seções dentro do banco de dados 120 são interconectadas para atualizar e recuperar as informações conforme necessário.
[0040] A FIG. 4 ilustra uma configuração de exemplo de um sistema de usuário 202 operado por um usuário 201, tal como o titular do cartão 22 (mostrado na FIG. 1). O sistema de usuário 202 pode incluir, mas não está limitado a, os sistemas de clientes 114, 115, 138, 140, 142, 144, 146, o terminal POS 118, a estação de trabalho 154, e a estação de trabalho gestora 156. No exemplo de modalidade, o sistema de usuário 202 inclui um processador 205 para executar instruções. Em algumas modalidades, as instruções executáveis são armazenadas em uma área de memória 210. O processador 205 pode incluir uma ou mais unidades de processamento, por exemplo, uma configuração de múltiplos núcleos. A área de memória 210 é qualquer dispositivo que permita que informações tais como instruções executáveis e/ou outros dados sejam armazenados e recuperados. A área de memória 210 pode incluir um ou mais meios legíveis por computador.
[0041] O sistema de usuário 202 também inclui pelo menos um componente de saída de mídia 215 para apresentar informações para o usuário 201. O componente de saída de mídia 215 é qualquer componente capaz de transmitir informações para o usuário 201. Em algumas modalidades, o componente de saída de mídia 215 inclui um adaptador de saída, tal como um adaptador de vídeo e/ou um adaptador de áudio. Um adaptador de saída é acoplado, de modo operacional, ao processador 205 e operacionalmente acoplável a um dispositivo de saída, tal como um dispositivo de exibição, um display de cristal líquido (LCD), um display de diodo de emissão de luz orgânica (OLED), ou um display de "tinta eletrônica", ou um dispositivo de saída de áudio, um alto- falante ou fones de ouvido.
[0042] Em algumas modalidades, o sistema de usuário 202 inclui um dispositivo de entrada 220 para receber uma entrada do usuário 201. O dispositivo de entrada 220 pode incluir, por exemplo, um teclado, um dispositivo apontador, um mouse, uma caneta, um painel sensível ao toque, um touch pad, uma tela sensível ao toque, um giroscópio, um acelerômetro, um detector de posição, ou um dispositivo de entrada de áudio. Um único componente, tal como uma tela sensível ao toque, pode funcionar tanto como um dispositivo de saída do componente de saída de mídia 215 quanto como um dispositivo de entrada 220. O sistema de usuário 202 também pode incluir uma interface de comunicação 225, que é comunicativamente acoplável a um dispositivo remoto tal como o sistema de servidor 112. A interface de comunicação 225 pode incluir, por exemplo, um adaptador de rede com ou sem fio ou um transceptor de dados sem fio para a utilização com uma rede de telefonia móvel, Sistema Global para Comunicações Móveis (GSM), 3G, 4G ou Bluetooth ou outra rede de dados móvel ou Interoperabilidade Mundial para o Acesso por Microondas (WIMAX).
[0043] Armazenadas na área de memória 210 estão, por exemplo, instruções legíveis por computador para fornecer uma interface de usuário ao usuário 201 por meio do componente de saída de mídia 215 e, opcionalmente, receber e processar uma entrada a partir do dispositivo de entrada 220. Uma interface de usuário pode incluir, entre outras possibilidades, um navegador da Web e um aplicativo de cliente. Os navegadores da Web permitem que usuários, tal como o usuário 201, exibam e interajam com a mídia e outras informações normalmente incorporadas em uma página da Web ou em um site do sistema de servidor 112. Um aplicativo de cliente permite que o usuário 201 interaja com um aplicativo de servidor do sistema de servidor 112.
[0044] A FIG. 5 ilustra uma configuração de exemplo de um sistema de servidor 301, tal como o sistema de servidor 112 (mostrado nas FIG. 2, 3A e 3B). O sistema de servidor 301 pode incluir, mas não está limitado a, um servidor de banco de dados 116, um servidor de transações 124, um servidor da web 126, um servidor de fax 128, um servidor de diretório 130 e um servidor de correio 132.
[0045] O sistema de servidor 301 inclui um processador 305 para executar instruções. As instruções podem ser armazenadas em uma área de memória 310, por exemplo. O processador 305 pode incluir uma ou mais unidades de processamento (por exemplo, em uma configuração de múltiplos núcleos) para executar as instruções. As instruções podem ser executadas dentro de uma variedade de sistemas operativos diferentes no sistema de servidor 301, tal como UNIX, LINUX, Microsoft Windows®, etc. Deve também ser apreciado que após a inicialização de um método baseado em computador, podem ser executadas várias instruções durante a inicialização. Algumas operações podem ser necessárias para executar um ou mais processos descritos neste documento, enquanto outras operações podem ser mais gerais e/ou específicas para uma linguagem de programação específica (por exemplo, C, C#, C++, Java, ou outras linguagens de programação adequadas, etc.).
[0046] O processador 305 é acoplado, de modo operacional, a uma interface de comunicação 315, de modo tal que o sistema de servidor 301 seja capaz de se comunicar com um dispositivo remoto, tal como um sistema de usuário ou outro sistema de servidor 301. Por exemplo, a interface de comunicação 315 pode receber solicitações do sistema de usuário 114 via Internet, como ilustrado nas FIGS. 2, 3A e 3B.
[0047] O processador 305 também pode ser acoplado, de modo operacional, a um dispositivo de armazenamento 134. O dispositivo de armazenamento 134 é qualquer hardware operado por computador adequado para armazenar e/ou recuperar os dados. Em algumas modalidades, o dispositivo de armazenamento 134 está integrado no sistema de servidor 301. Por exemplo, o sistema de servidor 301 pode incluir uma ou mais unidades de disco rígido como o dispositivo de armazenamento 134. Em outras modalidades, o dispositivo de armazenamento 134 é externo ao sistema de servidor 301 e pode ser acessado por uma pluralidade de sistemas de servidor 301. Por exemplo, o dispositivo de armazenamento 134 pode incluir várias unidades de armazenamento, tal como discos rígidos ou discos de estado sólido, em uma configuração de matriz redundante de discos de baixo custo (RAID). O dispositivo de armazenamento 134 pode incluir uma rede de área de armazenamento (SAN) e/ou um sistema de armazenamento anexado à rede (NAS).
[0048] Em algumas modalidades, o processador 305 é acoplado, de modo operacional, ao dispositivo de armazenamento 134 através de uma interface de armazenamento 320. A interface de armazenamento 320 é qualquer componente capaz de fornecer ao processador 305 acesso ao dispositivo de armazenamento 134. A interface de armazenamento 320 pode incluir, por exemplo, um Adaptador de Anexação de Tecnologia Avançada (ATA), um adaptador Serial ATA (SATA), um adaptador de Interface de Sistema de Pequenos Computadores (SCSI), um controlador RAID, um adaptador SAN, um adaptador de rede e/ou qualquer componente que forneça ao processador 305 acesso ao dispositivo de armazenamento 134.
[0049] As áreas de memória 210 e 310 podem incluir, mas não estão limitadas a, memória de acesso aleatório (RAM), como RAM dinâmica (DRAM) ou RAM estática (SRAM), memória somente de leitura (ROM), memória somente de leitura programável apagável (EPROM), memória somente de leitura programável apagável eletricamente (EEPROM), e RAM não volátil (NVRAM). Os tipos de memória acima são apenas exemplos e, por essa razão, não limitam os tipos de memória utilizáveis para o armazenamento de um programa de computador.
[0050] A FIG. 6 é um diagrama de uma matriz de correspondência de comerciantes esparsa 600 que pode ser usada com o módulo de recomendação ChangeRank 34 (mostrado na FIG. 1) exibido como um gráfico. Na matriz de correspondência de comerciantes esparsa 600, a entrada (i, j) contém uma contagem de co-visitas entre os comerciantes i e j (mostrada na FIG. 9). No exemplo de modalidade, o gráfico da matriz de correspondência de comerciantes esparsa 600 é derivado de restaurantes na área de St. Louis, com apenas os restaurantes de classificação mais alta sendo exibidos. Cada nó 602 representa um restaurante diferente. Cada borda 604 representa uma ligação entre dois nós 602. A ligação representa tipicamente um titular de conta que fez uma transação em ambos os restaurantes conectados ou representa uma transação que foi feita por um único titular de cartão. Uma espessura 606 de cada borda 604 representa a frequência de co-visitas aos restaurantes conectados, ou um número de clientes que fizeram uma transação em ambos os restaurantes ou um número de transações feitas pelo mesmo titular do cartão em ambos os restaurantes. Em geral, uma preferência de diferentes titulares de cartão em diferentes restaurantes pode ser inferida e pode ser usada para calcular a "espessura" das bordas. A preferência é inferida com base no número de vezes que um titular de cartão visita um restaurante, ajustado de acordo com outros clientes do mesmo restaurante, bem como as visitas do titular do cartão a outros restaurantes.
[0051] A FIG. 7 é uma ilustração 700 das etapas realizadas no módulo de recomendação 34.
[0052] Existem três etapas principais para os algoritmos usados no módulo de recomendação 34:
[0053] 1. Determinar a classificação de todos os comerciantes sem nenhuma preferência expressa do usuário.
[0054] 2. Determinar a classificação de todos os comerciantes com as preferências do usuário inferidas a partir da lista de comerciantes específicos visitados.
[0055] 3. Comparar os resultados das etapas 1 e 2 e retornar os comerciantes classificados pela diminuição da mudança na classificação.
[0056] As etapas 1 e 2 do algoritmo são realizadas como indicado na FIG. 7. O algoritmo começa com a matriz de correspondência de comerciantes 702 que inclui todos os pares de restaurantes representados, mas com um valor inicial preenchido em cada célula na interseção de colunas e linhas de comerciante (i, j) (mostrado na FIG. 9). Um vetor de entrada de preferência de usuário uniforme 704 é usado para gerar um primeiro vetor de resultados 706. Uma entrada i é configurada para 1 para cada entrada de usuário implícita ou explícita e é normalizada. Em uma segunda etapa, cada comerciante onde ocorreu uma transação recebe um valor maior no vetor de entrada de preferência do usuário 704.
[0057] Visualmente, a Etapa 2 equivale a colocar uma grande quantidade de ativação na rede de comerciantes nos locais visitados anteriormente. Repetindo os cálculos, um número selecionável de vezes, por exemplo, cinco vezes, tem o efeito de distribuir essa ativação pela rede.
[0058] Por fim, na Etapa 3, é determinada uma quantidade em que a ativação do histórico de transações do usuário muda a classificação geral de cada comerciante e os comerciantes com a maior mudança na classificação são retornados primeiro.
[0059] O método descrito acima é referido à abordagem "iterativa"; tem a vantagem de usar menos espaço (isto é, memória principal) à custa de mais computação. Seja A a denotar a matriz de co-visita normalizada em que cada coluna soma 1, v0 denota o vetor de preferência inicial (com a soma de 1), vk denota a pontuação após a k-enésima iteração, e d denota o fator de amortecimento, temos:
[0060] vk = dAvk-1 + (1-d)v0 (1)
[0061] O fator de amortecimento pode ser selecionado para ser de aproximadamente d = 0,85. O amortecimento selecionado afeta a pontuação e também afeta a velocidade com a qual o método iterativo converge.
[0062] Este cálculo da Eq. 1 envolve uma multiplicação matriz-vetor, o que contribui para a maior complexidade computacional. A implementação de multiplicação sobre solicitação deste método enfrenta potencialmente problemas de escalabilidade devido ao tamanho da matriz A e ao número de solicitações simultâneas.
[0063] Uma outra abordagem, chamada de método "power", pré- computa todos os caminhos (com pelo menos 5 iterações). O método power tem a vantagem de velocidade por causa de um custo de pré- cálculo off-line de uma só vez, em detrimento de ter uma matriz completa (vs. esparsa). O método power é tratável em grupos de comerciantes de até 30.000 a 50.000 comerciantes.
[0064] A FIG. 8 é um mapa 800 de uma área que contém os restaurantes da matriz de correspondência de comerciantes 702 (mostrada na FIG. 7). Na modalidade de exemplo, o mapa 800 é da região de St. Louis. Para cada iteração do módulo de recomendação 34 descrita acima, a ativação é distribuída através de toda a rede, conforme mostrado pelos ícones que representam os restaurantes que estão incluídos em cada iteração do algoritmo.
[0065] Medidas de ChangeRank Alternadas
[0066] Os dois principais métodos de cálculo de classificação incluem:
[0067] 1. Pontuação baseada em classificação - uma classificação final de um comerciante é diretamente proporcional a quantos slots ela subiu devido às preferências do usuário expressas em relação à posição de classificação original sem nenhuma preferência de usuário e, em seguida, escalonadas pelas classificações originais.
[0068] 2. Pontuação cumulativa baseada em energia - em vez de basear a pontuação em mudanças de slot como em (1) a classificação final é baseada na proporção de energia de classificação que existe acima do dado comerciante antes e depois das preferências do usuário serem consideradas, ou seja, os comerciantes com pontuações mais altas podem apenas subir acima de alguns outros comerciantes de alto escalão, no entanto, mais crédito é dado com base na "massa" associada aos comerciantes que foram ultrapassados na classificação.
[0069] A vantagem dos dados
[0070] O módulo de recomendação 34 não tem parâmetros para ajustar, é independente do domínio e é, por essa razão, completamente dependente dos dados alimentados para fazer boas recomendações. Além disso, não depende de nenhum metadado no processo de fazer uma recomendação. Conforme descrito em mais detalhes abaixo, um elemento de dados de transação financeira, "histórico", fornece um bom filtro de primeira passagem para os tipos de comerciantes a serem abrangidos pelo intervalo de intenções na interface do ChangeRank. O módulo de recomendação 34 aproveita os metadados implícitos capturados na matriz de correspondência de comerciantes, tal como culinária, custo, geografia, etc. As tags de metadados explícitas são usadas para pós-filtragem dos resultados classificados para atender à intenção expressa do usuário. Na modalidade de exemplo, foi gerada uma matriz de correspondência de comerciantes com a utilização de um ano de dados de transações financeiras dos titulares de cartões para a indústria definida acima para as MSAs de St. Louis e New York. Aproximadamente 38.000 comerciantes estão contidos na matriz.
[0071] Fazendo Recomendações Locais
[0072] Para demonstrar a capacidade de fazer recomendações locais, dois conjuntos de sementes (ou listas de seleção) foram gerados e alimentados no módulo de recomendação 34, uma lista de sementes de restaurantes italianos baratos e uma lista de sementes de restaurantes italianos caros.
[0073] O mapa para cada conjunto contém grupos de comerciantes, o grupo zero é a semente restaurantes. As recomendações são, em seguida, agrupadas e coloridas por cada camada, ou seja, grupo 1 = os dez primeiros, grupo 2 = 11-20, etc.
[0074] Cada lista de sementes gera recomendações que são comparáveis em qualidade e custo como as listas de sementes originais, e ambos os conjuntos se inclinam para o italiano. Isso mostra que o algoritmo está aproveitando os recursos implícitos capturados nos dados. As recomendações não são puramente orientadas pela proximidade das listas de sementes.
[0075] A FIG. 9 é uma matriz de correspondência de comerciantes 900, incluindo as áreas metropolitanas de St. Louis e Nova York, usada para determinar as recomendações em uma área metropolitana com base em sementes de uma área metropolitana diferente. A matriz de correspondência de comerciantes 900 ilustra as interações de titulares de cartão com pares de comerciantes, onde cada comerciante é representado ao longo de um eixo horizontal como um i-enésimo comerciante de i para m comerciantes e ao longo de um eixo vertical como um j-enésimo comerciante de j para n comerciantes. Uma interação é representada como uma marcação em uma interseção (i, j), que em algumas modalidades, é representada por um sombreado da célula na interseção (i, j) apropriada.
[0076] Fazendo Recomendações de Longa Distância
[0077] O núcleo do módulo de recomendação 34 é a matriz de correspondência de comerciantes 900. Uma diagonal 902 da matriz de correspondência de comerciantes 900 (do canto superior esquerdo para o inferior direito) contém blocos de comerciantes altamente conectados. Estas são geralmente áreas geográficas, por exemplo, as sub-matrizes 904 e 906 são comerciantes altamente conectados nas áreas de St. Louis e Nova York, respectivamente. Existe também uma submatriz fora da diagonal 908 que corresponde às ligações entre comerciantes nas duas áreas geográficas diferentes. Esses blocos tendem a ter menos co-visitas e precisam ser multiplicados por um simples "fator de amplificação" para tornar possíveis as recomendações de longa distância.
[0078] Algoritmos de Recomendação de Longa Distância
[0079] Em uma modalidade, um primeiro algoritmo de amplificação básica, as contagens nas sub-matrizes fora da diagonal 908 são multiplicadas por um fator que as torna mais proporcionais entre as regiões, fazendo como se os dois conjuntos de comerciantes estivessem no mesma área. Uma segunda amplificação qui-quadrada é um método estatisticamente mais rigoroso para definir o fator de amplificação. Um terceiro algoritmo de amplificação micro versus "regional" definiu o fator de amplificação no nível do comerciante, em vez de no nível do bloco.
[0080] Um exemplo de uma aplicação da recomendação de longa distância mostra como dois conjuntos de sementes de restaurantes em St. Louis podem ser usados para gerar recomendações personalizadas em New York; não apenas para restaurantes, mas para outras categorias de comerciantes em consideração.
[0081] Restaurantes como o Rigazzi da lista de sementes "Italianos Baratos STL" geram recomendações de longa distância como o Aperitivo em NY; ambos são restaurantes italianos de nível médio. Por outro lado, restaurantes como Trattoria Marcella na lista de sementes "Italianos Caros STL" levam a recomendações para NY como o Patsy’s Italian Restaurant.
[0082] Os cinco primeiros recomendados hotéis em Nova York para a lista de sementes "Italianos Caros STL" tiveram uma classificação média do TripAdvisor de 4,2 e uma taxa média de quarto de US$ 589/noite. Considerando que, para a lista de sementes "Italiano Barato STL", a classificação média do TripAdvisor para os cinco primeiros foi de 4,0, com um custo médio de US$ 177/noite.
[0083] A Fitflop USA produz sapatos de conforto acessíveis, como sandálias e tamancos, com uma localização de loja física em White Plains, NY. No grupo de sementes "Italiano de Alta Qualidade STL", esta loja ficou em 214° lugar; no entanto, no grupo de sementes "Italiano Barato STL", este comerciante entra no 12° lugar.
[0084] O Vineyard Theatre and Workshop Centre é o autoproclamado "lar do teatro arrojado" em Nova York. Esse comerciante ficou em segundo lugar no grupo de sementes "Italiano de Alta Qualidade STL" e em n° 57 no grupo de sementes "Italiano Barato STL". Os preços dos ingressos parecem ser um fator determinante.
[0085] Uma simples implementação do módulo de recomendação 34 pode ser desnecessariamente complicada, porque a implementação simples faz simultaneamente previsões para todas as possíveis áreas de destino. A esmagadora maioria das solicitações de recomendação provavelmente será local para os padrões de gastos usados para os dados de sementes. Variações do algoritmo podem ser selecionadas para compensar a complexidade computacional com a qualidade das classificações e a necessidade de meta-dados dos comerciantes externos. Abaixo estão quatro variações do algoritmo que variam do simples ao complexo.
[0086] Como descrito acima, a maneira mais simples e escalonável em que os dados de transações financeiras podem ser aproveitados seria apenas executar a etapa 1 do algoritmo e gerar a classificação geral de todos os comerciantes em uma primeira abordagem. Em seguida, a intenção do usuário (por exemplo, "Italiano", "familiar", NYC) seria usada para filtrar as recomendações finais. Quando os valores gerais de classificação tenham sido gerados como parte de uma consulta anterior, eles podem ser aplicados diretamente às áreas de NY e STL. Embora essa primeira abordagem use dados de transações financeiras para a matriz de correspondência de comerciantes, ela não usa dados específicos do titular do cartão para fazer recomendações personalizadas.
[0087] Uma primeira variação do algoritmo tende a escalonar bem quando um usuário solicita recomendações que são locais ao seu comportamento de transação observado. A primeira variação do algoritmo seria usar o algoritmo puro para as recomendações locais (tanto usando sub-matrizes alimentadas no método iterativo ou o método power descrito acima), e para recomendações de longa distância podemos usar a primeira abordagem descrita acima. Essa primeira variação tem a vantagem da personalização com base no comportamento do titular do cartão para a maioria das solicitações de recomendação. A principal desvantagem é que as recomendações de longa distância não são tão relevantes quanto poderiam ser.
[0088] Uma segunda variação do algoritmo que ajuda com a escalabilidade de longa distância é a abordagem de duas etapas de região cruzada. Embora o algoritmo, especialmente a etapa de amplificação, seja projetado para executar diretamente a recomendação de região cruzada, a recomendação de região cruzada de dois estágios melhora o desempenho do algoritmo. Na segunda variação, as sementes ou os comerciantes preferenciais penetram um pequeno número de iterações na região de origem e os comerciantes mais ativos na região de origem, em seguida, se conectam a sementes na região de destino, onde as recomendações locais são então calculadas. Em outras palavras, para realizar uma recomendação de região cruzada (por exemplo, sementes de St. Louis para a recomendação de New York), as principais recomendações no local de destino são anotadas e usadas para executar uma segunda etapa de recomendação local.
[0089] Para melhorar a escalabilidade, não é desejável usar uma matriz excessivamente grande, por exemplo, uma matriz de um milhão por milhão para as recomendações. Além da complexidade computacional, o dimensionamento inadequado de blocos fora da diagonal pode afetar significativamente até mesmo as recomendações locais. Desde que em quase todos os casos de uso, no máximo duas regiões serão usadas, matrizes de co-visita para pares de regiões são usadas para executar a recomendação.
[0090] As recomendações de longa distância podem ser feitas com a utilização de apenas uma pequena porção da matriz de correspondência de comerciantes, a MSA para a lista de sementes, a MSA para o destino e as ligações entre as duas MSAs. Essa terceira variação tem a vantagem da verdadeira personalização para todas as consultas, com a despesa de trabalhar em grande parte da matriz de correspondência de comerciantes. A seleção das partes relevantes da matriz de correspondência de comerciantes pode ser realizada por uma etapa de pré-multiplicação.
[0091] Com a utilização de pares de regiões, é possível usar algumas áreas metropolitanas como centros ou cidades centrais para recomendações de regiões cruzadas. As cidades centrais são análogas às cidades centrais em um contexto de companhia aérea. Da mesma forma, quanto à dificuldade de voar diretamente de uma cidade para outra, pode ser difícil gerar uma recomendação para uma cidade usando dados de sementes de uma determinada cidade semente. Pode ser difícil porque há uma correlação menor entre as duas cidades. Nesse caso, um processo de recomendação em duas etapas com a utilização de uma cidade ou região central intermediária pode melhorar a recomendação. Por exemplo, se uma recomendação for necessária para as vinte principais áreas metropolitanas nos Estados Unidos, cinco áreas metropolitanas podem ser selecionadas com base em localizações geográficas como centros. Cada uma das quinze áreas restantes emparelhadas com cada centro, resultando em um total de 15 * 5 = 75 pares. Além disso, 5 * 4/2 = 10 pares são gerados entre os centros. Um total de 85 pares são usados, em vez de 20 * 19/2 = 190 pares sem usar os centros. O número pode ser ainda mais reduzido se cada cidade restante estiver emparelhada com apenas um centro, caso em que 15 + 10 = 25 pares serão usados. O caso extremo é usar apenas um centro e criar um total de 19 pares. A recomendação de várias regiões é executada na forma de:
[0092] (cidade de origem) - (cidade de centro) - [opcional outra cidade de centro] - (cidade de destino)
[0093] onde, em cada transferência, as melhores K recomendações são usadas como a semente para a próxima rodada.
[0094] Uma abordagem diferente é manter uma matriz de co-visita local para cada área metropolitana e usá-las para recomendações locais. Para recomendações de várias regiões, selecionar um subconjunto "razoável" de comerciantes com base nas conexões entre regiões e outras medidas, incluindo centralidade, pontuações de pagerank, etc. Então, esse subconjunto de comerciantes de várias regiões pode ser usado para gerar sementes para recomendações de regiões cruzadas e, em seguida, as sementes são conectadas ao mecanismo de recomendação local para o local de destino.
[0095] A quarta variação é como descrito acima, onde o algoritmo estabelece a ordem de importância do comerciante apenas na conectividade do gráfico, sem qualquer preferência conhecida do usuário. Então, no momento da consulta, apenas as páginas com termos de pesquisa correspondentes são retornadas na ordem de sua classificação. Essa variação do algoritmo faz recomendações simultâneas para todos os comerciantes, o que em muitos casos é desnecessário e inviável.
[0096] Um exemplo que mostra uma recomendação para os restaurantes de New York que usam os favoritos de St. Louis decompõe as matrizes originais de co-visita de várias regiões e, em seguida, executa a recomendação de região cruzada. Com a utilização das escolhas de St. Louis, cria-se um vetor de preferência apenas para o mercado de restaurantes de St. Louis. Determina-se uma pontuação de pagerank resultante usando a submatriz apenas para os restaurantes de St. Louis. Utiliza-se a submatriz para os restaurantes de New York e St. Louis para calcular um vetor de preferência para o mercado de restaurantes de New York. Utiliza-se o vetor de preferência da cidade de New York gerado para fazer recomendações locais para a cidade de Nova York com a utilização da submatriz apenas para restaurantes da cidade de New York. A segunda etapa envolve a obtenção de um vetor de preferência razoável, v_STL usando a submatriz NYC-STL, que corresponde a um gráfico bipartido entre os restaurantes de New York e St. Louis. Uma abordagem simples e direta é executar uma caminhada de uma etapa a partir da parte da matriz de STL até a parte da matriz de NYC. Em primeiro lugar, normaliza-se as colunas da matriz B para ter a soma 1. Em seguida, gera-se o vetor de preferências de NYC usando:
[0097] v_NYC = Bv_STL
[0098] O benefício imediato deste método é que nenhuma amplificação de matriz de região cruzada é necessária. Além disso, dependendo de como o vetor de preferência da cidade de destino é gerado, pode não ser necessário executar a primeira etapa.
[0099] A FIG. 10 é uma tabela 1000 que avalia cada variação do módulo de recomendação 34 através de uma variedade de medidas. Embora uma variação possa não ser ideal para todas as consultas, as variações podem ser selecionáveis tanto pelo usuário ou automaticamente, dependendo dos critérios de limitação, tais como, mas não se limitando a, disponibilidade de computação, velocidade de rede, etc.
[0100] Cada medida é listada através de uma linha de cabeçalho 1002. Uma primeira medida 1004 refere-se a uma avaliação de quão bem cada variação aproveita os dados do usuário em sua execução. Os valores 1-4 indicam qual variação é menos desejável (1) para usar para a medida e qual variação é mais desejável (4) para a medida. Nesse caso, a quarta variação, às vezes chamada de variação "pura", é melhor quando se considera como cada variação aproveita os dados do usuário em sua execução. De modo semelhante, uma segunda medida 1006 indica que qualquer uma das segunda, terceira e quarta variações são mais desejáveis quando o desempenho de recomendação local das variações é considerado. Da mesma forma, as indicações para uma medida de longa distância 1008, uma medida de complexidade 1010 do algoritmo em cada variação, e uma dependência da medida de metadados 1012 também são mostradas.
Controles de Personalização Obtendo Preferências do Usuário
[0101] Em uma modalidade, um titular do cartão registra um PAN de cartão de pagamento para obter um histórico de usuário a partir dos vários códigos de indústria para os quais as recomendações são geradas. No entanto, existem outros métodos, por exemplo, o usuário pode selecionar uma lista de favoritos a partir de uma região especificada (isto é, lar) com a utilização de uma pesquisa de tipo de expressão. O vetor de preferência do usuário é, em seguida, preenchido a partir dessa lista. Uma frase de preferência de descoberta pode ser expandida para incluir a seleção da(s) culinária(s) a partir de uma lista. O vetor de preferência do usuário pode ser preenchido ao selecionar todos os restaurantes a partir da(s) culinária(s) escolhida(s). Se nenhuma preferência for obtida, então o algoritmo poderá proceder a recomendações com um vetor de entrada do usuário imparcial, revertendo efetivamente para a primeira variação de todos os restaurantes filtrados de acordo com o local e a sentença de preferência de descoberta.
Ponderação das preferências do usuário
[0102] Há duas maneiras pelas quais as preferências especificadas de um usuário podem ser ponderadas para maior ou menor personalização.
[0103] 1. Modificação do vetor de entrada do usuário. A configuração padrão fornece J / (J + 1) por cento do peso de entrada do usuário para os J comerciantes preferidos/visitados especificados; o outro 1 / (J + 1) por cento é distribuído entre os comerciantes restantes. De fato, o numerador poderia variar de 0 a J + 1, onde
[0104] 0 é puramente exploratório (e corresponde à terceira variação descrita acima), e
[0105] J foi escolhido de modo que às preferências seria dado um peso forte, mas que a todos os comerciantes são atribuídos uma classificação; e
[0106] J + 1 é puramente explorador e inclina os resultados fortemente para os favoritos dos usuários.
[0107] 2. Número de iterações no ciclo principal. A configuração padrão é executar o ciclo principal um número predeterminado de vezes, por exemplo, mas não limitado a, cinco vezes. Empiricamente, após cinco iterações, as preferências de um usuário se propagam para os confins da rede, e as classificações mais altas começam a convergir. O número de iterações pode variar de 0 a qualquer inteiro positivo (ou alguns critérios de convergência são atendidos), onde 0 ignora completamente as preferências/histórico do usuário e é equivalente a zero "Modificação de vetor de entrada do usuário" descrita acima, ou em outras palavras é apenas o módulo comum do ChangeRank; e 5 é a troca ideal entre a forte personalização e a escalabilidade. Algum número maior de iterações ou critérios de convergência também pode ser selecionado com base em outros critérios. Ambos os métodos variam de zero (sem personalização) a algum valor máximo (personalização máxima). Este intervalo é por vezes referido como a troca explorar vs. aproveitar. Deve-se notar que uma solução exata pode ser pré-computada, o que seria um cálculo equivalente para infinitas iterações. Essa pré-computação usa uma quantidade significativa de recursos de computação, mas só pode ser feita periodicamente para conservar recursos, e não para cada solicitação de recomendação.
Pré-filtragem para intenção do usuário
[0108] Uma outra forma de pré-filtragem é a filtragem geográfica. Quando um usuário tem um destino designado e uma região conhecida para as suas preferências, o algoritmo pode remover todas as outras regiões geográficas da matriz de correspondência de comerciantes para minimizar os cálculos, além de fazer com que as recomendações sejam conectadas mais diretamente à lista de preferência de origem.
Pós-filtragem para intenção do usuário
[0109] A interface do módulo de recomendação 34 captura a intenção do usuário, ao completar a seguinte sentença de "Descoberta":
[0110] "Estou com a opção 1 e quero a opção 2 com preços que são a opção 3 em um local que seja a opção 4." Em cada espaço em branco, uma opção selecionável é apresentada ao usuário. Por exemplo, para a opção 1, um usuário pode selecionar opções como "eu", "amigo", "colega", "cônjuge" e afins. A opção 2 pode apresentar opções como "explorar" e "aproveitar" para capturar o espírito de aventura do usuário naquele momento. A opção 3 pode apresentar opções como "barato", econômico e "caro". A opção 4 pode incluir opções tais como "um local favorito", "um local obscuro", "romântico" e "barulhento".
[0111] A execução da intenção do usuário é realizada através da filtragem da lista resultante de recomendações de comerciante. Cada tabela abaixo corresponde a uma parte da frase e contém um método proposto para filtrar essa parte da sentença:
[0112] Para "Estou com ..." os metadados do comerciante adquiridos ou inferidos são aproveitados ao mapear todas as etiquetas de propriedades de comerciantes, por exemplo, "familiar", "bom para grupos", "refeições ao ar livre", etc., para cada uma das possíveis escolhas. Por exemplo, "jantar ao ar livre" seria uma etiqueta que indica "Meu Encontro"
Tabela 1
[0113] Para a porção "e desejo..." pode ser determinada ao atribuir os códigos da indústria usados na formação da matriz de correspondência de comerciantes para cada uma das possíveis respostas, conforme mostrado na Tabela 2. Tabela 2 Tabela 3
[0114] Para lidar com a porção "com preços que são..." da sentença, usa-se duas etapas:
[0115] 1) para cada comerciante ou código de indústria, calcula-se os pontos de limite alto/médio/baixo, em que "alto" está nos 20% superiores, "médio" está no meio 20-80% e "baixo" está nos 20% inferiores.
[0116] 2) mapeia-se o histórico do usuário disponível pelo comer ciante em cada uma das três categorias alta/média/baixa e captura-se o nível de gasto mais frequente Tabela 4
[0117] A porção "em um lugar que é..." da sentença pode ser gerenciada ao utilizar atributos acrescentados ao nível do comerciante. Há uma definição de "local favorito" existente que pode ser tanto reutilizada ou reinventada; a opção "popular" poderia ser um repasse de recomendações do comerciante; e a porção "novo estabelecimento" pode ser suportada pelo campo "begin_date" no depósito de dados, mas alguns problemas de continuidade podem surgir e necessitar intervenção manual. Por exemplo, se um comerciante alterar os adquirentes, um novo ID de local poderá ser gerado; os processos de depuração existentes tentam corresponder o novo local com o original e reter o begin_date original. No entanto, há momentos em que uma revisão manual pode ser necessária. Tabela 5
[0118] A FIG. 11 é um fluxograma de um exemplo de método 1100 para a recomendação de um comerciante. O método 1100 é implementado com a utilização de um dispositivo de computador acoplado a um dispositivo de memória. O método 1100 inclui o recebimento de dados de transações financeiras 1102 que documentam as transações financeiras entre uma pluralidade de titulares de cartões ou correntistas e uma pluralidade de comerciantes e a geração 1104 de uma matriz de correspondência de comerciantes que inclui a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes. A pluralidade de indicadores de interações contabiliza as transações financeiras conduzidas pela pluralidade de titulares de cartões ou correntistas em ambos os comerciantes em um par da pluralidade de comerciantes. O método 1100 inclui ainda o recebimento 1106 de uma consulta para uma recomendação de um comerciante a partir de um titular de conta e a geração 1108 de uma lista de classificação de comerciantes com base em um algoritmo de recomendação, o algoritmo de recomendação inferindo as preferências de usuário a partir de atributos da pluralidade de comerciantes visitados pelo titular do cartão.
[0119] Descrito neste documento é um método baseado em computador para recomendar um comerciante a um titular de cartão com base no padrão de compra histórico do titular do cartão ou para detectar uma transação fraudulenta com um comerciante com base na transação ocorrendo fora do padrão de compra histórico ou com base na transação correspondente a um padrão fraudulento conhecido. O método é implementado com a utilização de um dispositivo de computador de recomendação acoplado a um dispositivo de memória. O dispositivo de computador de recomendação é comunicativamente acoplado a um dispositivo de computador do usuário e a um processador de pagamento por meio de uma rede. Adicionalmente, um processador de matriz, que pode ser uma estrutura de dados separada armazenada em um dispositivo de armazenamento e recuperação de dados separado, é também comunicativamente acoplado ao processador de pagamento através da rede ou através de uma rede privada, tal como, mas não limitada a uma LAN. O método inclui a recepção de dados de transações financeiras que documentam transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes. Em uma modalidade, os dados de transações financeiras são recebidos pelo dispositivo de computador de recomendação a partir do processador de pagamento através da rede. Em outras modalidades, o processador de matriz recebe os dados da transação financeira diretamente do processador de pagamento.
[0120] O método também inclui a geração de uma matriz de correspondência de comerciantes que inclui a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes. A pluralidade de indicadores de interações é usada para contabilizar as transações financeiras conduzidas pela pluralidade de correntistas em ambos os estabelecimentos comerciais em pelo menos um dos pares da pluralidade de comerciantes. Um resultado visual de tal contagem de interações é mostrado na FIG. 9. Uma pluralidade de comerciantes é representada ao longo de cada um dos eixos da matriz e as interações que o correntista tem com os dois comerciantes são computadas na interseção desses dois comerciantes, conforme encontrado na coluna que representa um comerciante e na linha que indica o segundo comerciante. Para cada interação proveniente de todos os titulares de conta nesses dois comerciantes, a célula na interseção é incrementada. A contagem, em seguida, pode ser usada em um esquema de recomendação ou de detecção de fraudes como uma indicação de vinculação dos comerciantes que o titular da conta provavelmente usará. A contagem pode ser usada em um sistema de recomendação ou em um esquema de detecção de fraudes como uma indicação do padrão de compra de um titular de conta. Além disso, quando são recebidos dados de transações financeiras fora do padrão histórico, os dados de transações financeiras podem ser comparados a modelos de fraude conhecidos para encontrar determinados padrões de transações fraudulentas que podem facilitar a confirmação de uma transação fraudulenta. Por exemplo, um padrão conhecido para transações fraudulentas pode incluir a compra fora de padrões para produtos pequenos caros e facilmente conversíveis, tais como, mas não limitado a produtos eletrônicos ou jóias. Se um titular de conta com um padrão específico que indica que compras de jóias é uma raridade, é observado fazendo uma compra fora de padrão em um comerciante de jóias, o dispositivo de computador de recomendação pode alertar o processador de pagamento e/ou titular da conta para a transação potencialmente fraudulenta.
[0121] O método também inclui a recepção de uma consulta para uma recomendação sobre um comerciante a partir de um titular de conta ou outro usuário. Normalmente, o titular da conta ou outro usuário, por exemplo, um não titular de conta que esteja usando o dispositivo do computador de recomendação como um serviço, solicita uma recomendação sobre um comerciante de um determinado produto ou serviço. O dispositivo de computador de recomendação ou módulo de recomendação gera uma lista de classificação de comerciantes com base nas preferências do usuário inferidas a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular da conta. O dispositivo de computador de recomendação ou o módulo de recomendação também pode responder a uma consulta sobre uma transação potencialmente fraudulenta para determinar a probabilidade de a transação ser fraudulenta.
[0122] O termo processador, como usado neste documento, refere- se a unidades de processamento central, microprocessadores, micro- controladores, circuitos de conjunto de instruções reduzido (RISC), circuitos integrados de aplicação específica (ASIC), circuitos lógicos, e qualquer outro circuito ou processador capaz de executar as funções descritas neste documento.
[0123] Como usado neste documento, os termos "software" e "firmware" são intercambiáveis, e incluem qualquer programa de computador armazenado na memória para a execução em dispositivos móveis, clusters, computadores pessoais, estações de trabalho, clientes, servidores e processadores 205, 305, em que a memória inclui memória RAM, memória ROM, memória EPROM, memória EEPROM, e memória RAM não volátil (NVRAM). Os tipos de memória acima são apenas exemplos e, portanto, não limitam os tipos de memória utilizáveis para o armazenamento de um programa de computador.
[0124] Como será apreciado com base na especificação anterior, as modalidades acima mencionadas da descrição podem ser implementadas com a utilização de técnicas de programação ou engenharia de computadores, incluindo software de computador, firmware, hardware ou qualquer combinação ou subconjunto dos mesmos. Qualquer desse programa resultante, possuindo instruções legíveis por computador e/ou executáveis por computador, pode ser incorporado ou fornecido dentro de um ou mais meios legíveis por computador, criando desta forma um produto de programa de computador, isto é, um artigo de fabricação, de acordo com as modalidades discutidas da descrição. A mídia legível por computador pode ser, por exemplo, uma unidade fixa (disco rígido), disquete, disco ótico, fita magnética, memória semicondutora, tal como a memória somente de leitura (ROM) ou uma memória flash, etc., ou qualquer meio de transmissão/recepção tal como como a Internet ou outra rede de comunicação ou link. O artigo de fabricação contendo o código de computador pode ser feito e/ou utilizado ao executar as instruções diretamente a partir de um meio, ao copiar o código de um meio para outro meio, ou ao transmitir o código através de uma rede. O efeito técnico dos métodos e sistemas pode ser alcançado através da realização de pelo menos uma das seguintes etapas: (a) receber um primeiro corpo de primeiros dados, os primeiros dados incluem um indicador de uma interação entre um primeiro elemento do primeiro corpo dos primeiros dados e um segundo elemento do primeiro corpo dos primeiros dados; (b) gerar uma primeira matriz que correlaciona as interações entre o primeiro elemento e o segundo elemento; (c) receber um segundo corpo de segundos dados, o segundo dado inclui uma indicação de uma interação entre um terceiro elemento do segundo corpo de segundos dados e um quarto elemento do segundo corpo de dados; (d) gerar uma segunda matriz que correlaciona as interações entre o terceiro elemento e o quarto elemento; e (e) gerar uma terceira matriz fundindo a primeira matriz e a segunda matriz com a utilização de uma chave definida pelas interações entre o primeiro e o segundo elementos e as interações entre o terceiro e o quarto elementos.
[0125] Como usado neste documento, o termo "mídia não transitória legível por computador" pretende ser representativo de qualquer dispositivo baseado em computador tangível implementado em qualquer método ou tecnologia para armazenamento a curto e longo prazo de informações, tais como, instruções legíveis por computador, estruturas de dados, módulos de programa e sub-módulos, ou outros dados em qualquer dispositivo. Por conseguinte, os métodos descritos neste documento podem ser codificados como instruções executáveis incorporadas em um meio tangível, não transitório, legível por computador, incluindo, sem limitação, um dispositivo de armazenamento e/ou um dispositivo de memória. Tais instruções, quando executadas por um processador, fazem com que o processador execute pelo menos uma parte dos métodos descritos neste documento. Além disso, como usado neste documento, o termo "mídia não transitória legível por computador" inclui todos os meios tangíveis, legíveis por computador, incluindo, sem limitação, dispositivos de armazenamento de computador não transitórios, incluindo, sem limitação, mídia volátil e não volátil, e mídia removível e não removível, tal como um firmware, armazenamento físico e virtual, CD-ROMs, DVDs, e qualquer outra fonte digital, tal como uma rede ou a Internet, bem como meios digitais ainda a serem desenvolvidos, com a única exceção sendo um sinal de propagação transitório.
[0126] Como usado neste documento, o termo "computador" e termos relacionados, por exemplo, "dispositivo de computação", não estão limitados a circuitos integrados referidos na tecnologia como um computador, mas amplamente refere-se a um microcontrolador, um microcomputador, um controlador lógico programável (PLC), um circuito integrado de aplicação específica, e outros circuitos programáveis, e estes termos são usados indistintamente neste documento.
[0127] Como usado neste documento, o termo "dispositivo de computação móvel" refere-se a qualquer dispositivo de computação que seja usado de maneira portátil, incluindo, sem limitação, telefones inteligentes, assistentes digitais pessoais ("PDAs"), tablets de computador, telefone híbrido / tablets de computador ("phablet"), ou outro dispositivo móvel semelhante capaz de funcionar nos sistemas descritos neste documento. Em alguns exemplos, os dispositivos de computação móvel podem incluir uma variedade de periféricos e acessórios, incluindo, sem limitação, microfones, alto-falantes, teclados, telas sensíveis ao toque, giroscópios, acelerômetros e dispositivos metrológicos. Além disso, como usado neste documento, "dispositivo de computação portátil" e "dispositivo de computação móvel" podem ser usados de forma intercambiável.
[0128] Linguagem de aproximação, como usado neste documento através de toda a especificação e reivindicações, pode ser aplicado para modificar qualquer representação quantitativa que poderia permis- sivelmente variar sem resultar em uma mudança na função básica à qual está relacionada. Consequentemente, um valor modificado por um termo ou termos, tal como "sobre" e "substancialmente", não deve ser limitado ao valor exato especificado. Em pelo menos alguns casos, a linguagem de aproximação pode corresponder à precisão de um instrumento para medir o valor. Aqui e ao longo da especificação e reivindicações, as limitações de alcance podem ser combinadas e/ou trocadas. Tais intervalos são identificados e incluem todos os sub-intervalos contidos nele, a menos que o contexto ou a linguagem indiquem o contrário.
[0129] Esta descrição escrita usa exemplos para descrever a descrição, incluindo o melhor modo, e também para permitir que qualquer perito na arte pratique a descrição, incluindo a criação e a utilização de quaisquer dispositivos ou sistemas e a execução de quaisquer métodos incorporados. O âmbito patenteável da solicitação é definido pelas reivindicações, e pode incluir outros exemplos que ocorram para os peritos na tecnologia. Pretende-se que estes outros exemplos estejam dentro do âmbito das reivindicações, se tiverem elementos estruturais que não diferem da linguagem literal das reivindicações, ou se incluírem elementos estruturais equivalentes com diferenças não substanciais das linguagens literais das reivindicações.

Claims (18)

1. Método baseado em computador para recomendar um comerciante, o método implementado com a utilização de um dispositivo de computador de recomendação acoplado a um dispositivo de memória, o método caracterizado por compreender: receber dados de transações financeiras que documentam as transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes; extrair uma lista de comerciantes da pluralidade de comerciantes nos dados de transação financeira; gerar uma matriz de correspondência de comerciantes tendo dimensão (i, j) em que a dimensão i está associada com a lista de comerciantes e a dimensão j também está associada com a lista de comerciantes, em que a matrix de correspondência de comerciantes inclui a pluralidade de comerciantes e uma pluralidade de indicadores de interações associados a pares da pluralidade de comerciantes, a pluralidade de indicadores de interações que registram as transações financeiras conduzidas pela pluralidade de correntistas em ambos os comerciantes em pelo menos um dos pares da pluralidade de comerciantes; ocupar cada célula (i, j) da matriz de correspondência com base em um número de co-visitas do comerciante i e do comerciante j, em que cada co-visita é definida como um titular de conta respectivo tendo pelo menos uma das transações financeiras documentadas no comerciante i e pelo menos uma das transações financeiras documentadas no comerciante j; receber uma consulta por recomendação sobre um comerciante a partir de um titular de conta ou outro usuário; e gerar uma lista de classificação de comerciantes usando um módulo de recomendação configurado para inferir as preferências do usuário a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular da conta, em que módulo de recomendação aplica pelo menos uma iteração de um vetor de preferência de usuário para a matriz de correspondência para obter a lista de classificação.
2. Método baseado em computador de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente a geração de um vetor de preferência de usuário com base em uma lista expressa de preferências do usuário.
3. Método baseado em computador de acordo com a reivindicação 2, caracterizado pelo fato de que a geração da lista expressa de preferências do usuário compreende receber as preferências de usuário de um número de conta principal (PAN) registrado de uma conta do titular da conta.
4. Método baseado em computador de acordo com a reivindicação 2, caracterizado pelo fato de que a geração da lista expressa de preferências do usuário compreende receber preferências de usuário da conta antes de receber a consulta por recomendação.
5. Método baseado em computador de acordo com a reivindicação 2, caracterizado pelo fato de que a geração da lista expressa de preferências do usuário compreende receber preferências de usuário de um titular de conta ou outro usuário contemporaneamente com a consulta por recomendação.
6. Método baseado em computador de acordo com a reivindicação 1, caracterizado pelo fato de que a aplicação de pelo menos uma iteração compreende aplicar um número selecionável de iterações do vetor de preferência do usuário à matriz de correspondência de comerciantes.
7. Método baseado em computador de acordo com a reivindicação 6, caracterizado pelo fato de que a aplicação do número selecionável de iterações do vetor de preferência do usuário à matriz de correspondência de comerciantes compreende a aplicação de uma primeira quantidade de ativação na pluralidade de estabelecimentos comerciais na matriz de correspondência de comerciantes nos locais visitados anteriormente, a primeira quantidade de ativação aumentando a classificação dos comerciantes com base no número de visitas anteriores.
8. Método baseado em computador de acordo com a reivindicação 6, caracterizado pelo fato de que a aplicação do número selecionável de iterações de um vetor de preferência do usuário à matriz de correspondência de comerciantes compreende a distribuição da primeira quantidade de ativação através da pluralidade de estabelecimentos comerciais na matriz de correspondência de comerciantes.
9. Método baseado em computador de acordo com a reivindicação 1, caracterizado pelo fato de que a geração da lista de classificação de comerciantes compreende: gerar uma primeira lista de classificação temporária de comerciantes com base na matriz de correspondência de comerciantes, antes de aplicar pelo menos uma iteração do vetor de preferência de usuário; gerar uma segunda lista de classificação temporária de comerciantes com base na matriz de correspondência de comerciantes, através da aplicação de pelo menos uma iteração do vetor de preferência de usuário; atribuir uma classificação final de um comerciante com base em um número de posições que o comerciante alterou entre a segunda lista de classificação temporária e a primeira lista de classificação temporária.
10. Método baseado em computador de acordo com a reivindicação 1, caracterizado pelo fato de que a geração da lista de classificação de comerciantes compreende: criar uma primeira lista de classificação de comerciantes para uma primeira área metropolitana; utilizar uma parte dos comerciantes melhor classificados para semear uma segunda matriz de correspondência de comerciantes; e criar uma segunda lista de classificação de comerciantes para uma segunda área metropolitana com a utilização da segunda matriz de correspondência de comerciantes semeada.
11. Sistema de recomendação para recomendar um comerciante, caracterizado por compreender um ou mais processadores comunicativamente acoplados a um ou mais dispositivos de memória, o referido um ou mais processadores são configurados para: receber os dados de transações financeiras que documentam as transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes; extrair uma lista de comerciantes da pluralidade de comerciantes nos dados de transação financeira; gerar uma matriz de correspondência de comerciantes tendo dimensão (i, j) em que a dimensão i está associada com a lista de comerciantes e a dimensão j também está associada com a lista de comerciantes, em que a matrix de correspondência de comerciantes inclui a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes, a pluralidade de indicadores de interações que registram as transações financeiras conduzidas pela pluralidade de correntistas em ambos os comerciantes em pelo pelo menos um dos pares da pluralidade de comerciantes; ocupar cada célula (i, j) da matriz de correspondência com base em um número de co-visitas do comerciante i e do comerciante j, em que cada co-visita é definida como um titular de conta respectivo tendo pelo menos uma das transações financeiras documentadas no comerciante i e pelo menos uma das transações financeiras documentadas no comerciante j; receber uma consulta por uma recomendação de um comerciante a partir de um titular de conta; e gerar uma lista de classificação de comerciantes usando um algoritmo de recomendação, o algoritmo de recomendação que infere as preferências do usuário a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular do cartão, em que módulo de recomendação aplica pelo menos uma iteração de um vetor de preferência de usuário para a matriz de correspondência para obter a lista de classificação.
12. Sistema de acordo com a reivindicação 11, caracterizado pelo fato de que o referido um ou mais processadores são configurados para gerar o vetor de preferência de usuário com base em uma lista expressa de preferências do usuário.
13. Sistema de acordo com a reivindicação 11, caracterizado pelo fato de que o referido um ou mais processadores são configurados para gerar o vetor de preferência de usuário com base nas preferências de usuário associadas a um número de conta principal (PAN) registado da conta de um titular de conta.
14. Meios de armazenamento não transitórios legíveis por computador, contendo instruções executáveis por computador incorporadas nos mesmos, caracterizado pelo fato de que quando executados por pelo menos um processador, as instruções executáveis pelo computador fazem com que o processador: receba os dados de transações financeiras que documentam as transações financeiras entre uma pluralidade de correntistas e uma pluralidade de comerciantes; extrair uma lista de comerciantes da pluralidade de comerciantes nos dados de transação financeira; gere uma matriz de correspondência de comerciantes tendo dimensão (i, j) em que a dimensão i está associada com a lista de comerciantes e a dimensão j também está associada com a lista de comerciantes, em que a matrix de correspondência de comerciantes inclua a pluralidade de comerciantes e uma pluralidade de indicadores de interações associadas a pares da pluralidade de comerciantes, a pluralidade de indicadores de interações que registram as transações financeiras conduzidas pela pluralidade de correntistas em ambos os comerciantes em pelo menos um dos pares da pluralidade de comerciantes; ocupar cada célula (i, j) da matriz de correspondência com base em um número de co-visitas do comerciante i e do comerciante j, em que cada co-visita é definida como um titular de conta respectivo tendo pelo menos uma das transações financeiras documentadas no comerciante i e pelo menos uma das transações financeiras documentadas no comerciante j; receba uma consulta por uma recomendação de um comerciante a partir de um titular de conta; e gere uma lista de classificação de comerciantes com base em um algoritmo de recomendação, o algoritmo de recomendação que infere as preferências do usuário a partir de atributos da pluralidade de comerciantes que foram visitados pelo titular do cartão em que módulo de recomendação aplica pelo menos uma iteração de um vetor de preferência de usuário para a matriz de correspondência para obter a lista de classificação.
15. Meios de armazenamento legíveis por computador de acordo com a reivindicação 14, caracterizado pelo fato de que as instruções executáveis por computador fazem ainda com que o processador aplique um número selecionável de iterações do vetor de preferência do usuário à matriz de correspondência de comerciantes.
16. Meios de armazenamento legíveis por computador de acordo com a reivindicação 15, caracterizado pelo fato de que as instruções executáveis por computador fazem ainda com que o processador aplique uma primeira quantidade de ativação na pluralidade de comerciantes na matriz de correspondência de comerciantes nos locais visitados anteriormente, a primeira quantidade de ativação aumentando a classificação de comerciantes com base no número de visitas anteriores.
17. Meios de armazenamento legíveis por computador de acordo com a reivindicação 15, caracterizado pelo fato de que as instruções executáveis por computador fazem ainda com que o processador distribua a primeira quantidade de ativação através da pluralidade de comerciantes na matriz de correspondência de comerciantes.
18. Meios de armazenamento legíveis por computador de acordo com a reivindicação 14, caracterizado pelo fato de que as instruções executáveis por computador fazem ainda com que o processador: gere uma primeira lista de classificação temporária de comer-ciantes com base na matriz de correspondência de comerciantes, antes de aplicar pelo menos uma iteração do vetor de preferência de usuário; gere uma segunda lista de classificação temporária de comer-ciantes com base na matriz de correspondência de comerciantes, através da aplicação de pelo menos uma iteração do vetor de preferência de usuário; atribua a classificação final de um comerciante com base em um número de posições que o comerciante alterou entre a segunda lista de classificação temporária e a primeira lista de classificação temporária.
BR112018010165-6A 2015-12-11 2016-12-09 Método baseado em computador para recomendar um comerciante, sistema de recomendação para recomendar um comerciante e meios de armazenamento não transitórios legíveis por computador BR112018010165B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562266419P 2015-12-11 2015-12-11
US62/266,419 2015-12-11
PCT/US2016/065977 WO2017100677A1 (en) 2015-12-11 2016-12-09 Systems and methods for generating recommendations using a corpus of data

Publications (2)

Publication Number Publication Date
BR112018010165A2 BR112018010165A2 (pt) 2018-11-21
BR112018010165B1 true BR112018010165B1 (pt) 2023-08-01

Family

ID=

Similar Documents

Publication Publication Date Title
CN108701313B (zh) 使用数据语料库生成推荐的系统和方法
US20230385841A1 (en) Systems and methods for detecting out-of-pattern transactions
US10423963B2 (en) Systems and methods for fraud detection by transaction ticket size pattern
US9600819B2 (en) Systems and methods for risk based decisioning
US11727407B2 (en) Systems and methods for detecting out-of-pattern transactions
US10909590B2 (en) Merchant and item ratings
US20190020557A1 (en) Methods and systems for analyzing entity performance
US9754289B2 (en) Systems and methods for providing recommendations to residential relocators
US20240112204A1 (en) Systems and methods for merging networks of heterogeneous data
US20150356575A1 (en) Methods and systems for predicting online and in-store purchasing
WO2017040578A1 (en) Method and system for sizing of demographic markets
US20170178165A1 (en) Method and system for generation of indices regarding neighborhood growth
US11861882B2 (en) Systems and methods for automated product classification
BR112018010165B1 (pt) Método baseado em computador para recomendar um comerciante, sistema de recomendação para recomendar um comerciante e meios de armazenamento não transitórios legíveis por computador
US20150371248A1 (en) Systems and methods for determining sales migration between merchant types
AU2015274478B2 (en) Systems and methods for transmitting messages through personal communication networks
US20170364577A1 (en) Search engine data validation method and system
JP6839241B2 (ja) 情報管理システム、情報管理方法及び情報管理プログラム
US20160328757A1 (en) Systems and Methods for Evaluating Service Providers
WO2014193585A1 (en) Recommendation machine
CN110268435A (zh) 用于计算真实性得分的系统和方法