Escrito em
Estatística
Aprendizagem Estatística e Sistemas de Recomendação

Aprendizado Estatístico e Sistemas de Recomendação

O aprendizado estatístico está para a revolução digital como a máquina à vapor está para a revolução industrial. Programas de edição de texto, reconhecimento de imagens, recomendação de produtos em sites de compras, recomendação de filmes em plataformas de streaming, todos têm em comum os algoritmos de aprendizagem estatística. Alguns desses sistemas usam aprendizagem supervisionada, outros implementam modelos de aprendizagem não supervisionada, as possibilidades são muitas.

O que é aprendizado estatístico?

Para responder tal pergunta, nada melhor que um exemplo. A maneira como aprendemos o mundo ao longo da vida não é constante. Quando crianças, aprendemos por meio do reconhecimento de cores e formas, quase sempre acompanhados de um adulto que aponta e nomeia o objeto de nosso interesse. Com o tempo, vamos nos familiarizando com os objetos ao nosso redor. Por exemplo, aquele objeto de borracha, colorido, que chutamos durante as brincadeiras com os irmãos, é uma bola. À medida que crescemos, aprendemos que existem bolas pequenas, grandes e de variadas cores e estruturas. Somente após muitos anos de aprendizado lúdico, começamos a questionar a validade e o sentido do conhecimento.

Um elemento comum ao processo de aprendizado estatístico descrito é o dado. Aprendemos pela observação e absorvemos informações ao vermos ou ouvirmos, por exemplo. Esse é um processo de compreensão bem diferente do aprendizado epistemológico; trata-se, na verdade, de um processo estatístico.

O aprendizado estatístico não é uma novidade em si, mas o que realmente mudou foi o poder computacional que nos trouxe um mundo de possibilidades, permitindo a implementação e melhoria de modelos estatísticos em escalas que antes eram apenas sonhadas, dando origem a áreas inteiramente novas, que passaram a evoluir de maneira independente da estatística, como é o caso da aprendizagem de máquina. Da previsão do tempo a sistemas de recomendação de produtos em canais de streaming, para cada problema real, a teoria do aprendizado estatístico provavelmente terá um bom algoritmo para solucioná-lo.

Sistemas de Recomendação

Vamos considerar um sistema de recomendação de livros. Suponha que temos uma livraria e desejamos criar um bom modelo de recomendação para nossos clientes. Esse exemplo nos permitirá explorar o processo de aprendizado estatístico, ainda que de forma simplificada.

Imaginemos que possuímos um histórico contendo cinco características do enredo de cada romance que vendemos no passado: se é um romance de ação, investigativo, com enredo complexo, longo e se o protagonista é do sexo masculino. Vamos usar uma escala de 0 a 5, onde 0 representa a total ausência da característica e 5 representa a presença forte dela. Além disso, temos um registro com as preferências dos clientes em relação a essas características. Por exemplo, de zero a cinco, quão forte é o interesse do cliente por romances investigativos?

CaracterísticasAçãoInvestigativoEnredo ComplexoLongoProtagonista Masculino
Filme42542
Preferências de Cliente51010

A tabela resume a estrutura dos registros disponíveis. Em relação aos gostos do cliente, percebemos que ele gosta de livros de ação, mas não de enredos investigativos. Ele também prefere histórias simples, curtas e com protagonistas que não sejam do sexo masculino. Como podemos usar essa estrutura de dados para resolver esse problema?

Considerando o exemplo acima, qual é a probabilidade de esse cliente gostar desse filme? Baseando-nos nas características alinhadas aos gostos do cliente, podemos estimar que a chance é de 40%. O que fazemos, então, é utilizar essa grande quantidade de registros para treinar o algoritmo. A probabilidade de o cliente gostar da recomendação será calculada com base na comparação entre as quantidades.

O algoritmo compara as características de um romance, devidamente representadas em um vetor de sequências numéricas, com as preferências dos clientes. Ele verifica quais características o romance apresenta e como elas seriam avaliadas pelo cliente, considerando suas preferências. O resultado dessa comparação é mensurado por uma função de erro: quanto menor o erro, melhor a recomendação. Neste contexto, medir o erro seria equivalente a saber o quão longe uma recomendação calculada pelo modelo estaria da realidade.

Agora que entendemos o que são os sistemas de recomendação, vamos explorar como a função de erro é fundamental para garantir que essas recomendações sejam precisas e relevantes.

Em nosso exemplo, podemos escolher a função de erro que melhor se adequa ao nosso caso. Poderíamos considerar a proporção de características que não se alinham às preferências do cliente em relação ao total de características. Alternativamente, poderíamos adotar como medida de erro a soma do valor absoluto das diferenças entre cada uma das características. Para o nosso problema, essa função de erro seria igual a doze. Se o critério de decisão for não recomendar o livro caso a função de erro seja maior que 2, não faríamos essa recomendação ao cliente.

Essencialmente, expomos o algoritmo ao maior número de dados possíveis, repetindo várias vezes esse processo comparativo, e então o erro vai diminuindo ao longo de várias iterações até que atinja um valor ótimo. Depois disso, quando as preferências de um cliente são apresentadas ao algoritmo, ele recomendará o livro que possui a maior probabilidade de estar alinhado aos gostos desse cliente, dado que agora ele já tem o “conhecimento” do histórico desse cliente ou dos clientes com preferências semelhantes.

Aprendizagem Supervisionada ou Não Supervisionada?

O processo de aprendizado estatístico empregado no exemplo descrito é denominado de aprendizagem supervisionada, uma vez que expomos ao algoritmo amostras contendo variáveis de entrada e de saída. Imagine que apresentamos para uma criança várias fotos de árvores, descrevendo seus nomes e propriedades e depois mostramos uma árvore para essa criança, no parque, e pedimos que ela diga de qual espécie ela é. 

Além disso, temos também a aprendizagem não supervisionada, por meio da qual o algoritmo aprende identificando padrões nos dados, sem que sejam fornecidos dados de saídas. Tudo o que ele precisa já está contido nos dados de maneira latente. Um exemplo lúdico seria entregar uma caixa de bolinhas coloridas a uma criança e a pedíssemos que ela classificasse as bolas em diferentes grupos considerando alguma característica comum, como tamanho ou cores.

Cada problema será mais bem solucionado com um modelo ou outro de aprendizagem. Algoritmos de aprendizagem supervisionada são ideais para problemas cujos dados disponíveis contém variáveis de saída. Como as características de filmes, livros e outros produtos quando são fornecidas com a avaliação de clientes. A aprendizagem não supervisionada é uma alternativa para dados não rotulados, quando a saída de uma unidade amostral não é previamente conhecida. Útil em situações onde você precisa segmentar um catálogo inteiro baseado apenas no conteúdo textual ali presente.

Resumindo, entender o domínio do problema, suas particularidades e os dados disponíveis é essencial para o sucesso do aprendizado estatístico. Um modelo bem calibrado, alimentado com dados relevantes aprimora a precisão dos resultados como também, no caso do sistema de recomendação, enriquece a experiência do usuário, garantindo a eficácia nas interações personalizadas.

Leia também