-
Quais são os algoritmos de construção
de sistema de recomendação?
-
Assim como todo
modelo de machine learning.
-
Quando temos que fazer,
por exemplo,
-
uma classificação de algo.
-
Nós temos diversos algoritmos
para adaptar e avaliar
-
qual melhor se adequa
aquele problema.
-
Aqui em sistema de recomendação
é a mesma coisa.
-
Nós temos diversos algoritmos
-
que podem ser aplicados
para estudar estratégias distintas
-
de achar relações
entre produtos e serviços e usuários
-
e que pode ser melhor aderência
nessa recomendação.
-
Vamos conhecer os principais.
-
Os métodos mais comuns são baseados
em filtragem, filtragem, item por item,
-
uma filtragem colaborativa,
uma filtragem por conteúdo.
-
Vamos conhecer as duas últimas que são bem
famosas na filtragem colaborativa.
-
Nós estamos utilizando dados de dois
ou mais usuários
-
para tentar achar uma relação entre eles.
-
Esses dados
podem ser hábitos de preferência
-
ou então, por exemplo,
perfis de consumo que são similares.
-
Ou então
quer dizer que as fotos demográficas
-
qualquer Fischer que pode ser utilizado
para caracterizar um indivíduo.
-
E nós vamos analisar essas fichas
para verificar usuários que são parecidos,
-
por exemplo, até aplicar aqui um canivete
para descobrir quem são os vizinhos
-
mais próximo determinado usuário.
-
Nessa abordagem, nós sabemos qual é qual
usuário é parecido com com quais outros.
-
Então, digamos, temos o usuário
A, usuário B, que, por exemplo,
-
por questões de históricos passados,
eles compram produtos similares
-
e a pessoa comprou um produto ou interagiu
-
com o produto que a pessoa B
ainda não viu.
-
Portanto, como eles são parecidos,
é uma boa ideia
-
recomendar esse
produto que a interagiu para a pessoa B.
-
Vamos ter certeza que esse método
funciona?
-
Não, mas é algo para ser abordado.
-
Então a ideia é trabalhar,
consumir comunicação e sempre sugerir
-
algo que pode agradar o usuário.
-
A nossa força de recomendação,
-
digamos assim, está baseado nesse perfil
semelhante entre pessoas.
-
Outra forma de filtragem
é filtragem por conteúdo,
-
onde a pessoa está interagindo
com o produto
-
e nós sabemos que existe outro produto
similares a esse.
-
Então nós podemos recomendar
para a mesma pessoa ou produtos similares
-
aqueles que ela já interagiu ou comprou.
-
Entre essas duas análise,
não há uma melhor ou pior.
-
Existem prós e contras de cada uma delas.
-
Por exemplo, na filtragem colaborativa
nós podemos ter conhecimento
-
nenhum dos dados.
-
O que interessa é conhecer
quem são as pessoas.
-
Já na abordagem por conteúdo e input,
é imprescindível ter informações
-
sobre os produtos. E nós?
-
Nós podemos dispensar conhecimento
sobre os usuários
-
Pensando no e-commerce, por exemplo.
-
Talvez a filtragem por conteúdo
pode ser mais fácil de ser implementada,
-
porque uma loja na teoria
sabe o que ela vende.
-
Então se ela sabe o que ela vende,
-
ela sabe descrever que produtos
ela tem no seu catálogo.
-
Então achar produtos similares pode ser
mais fácil para gerar uma recomendação.
-
No entanto, depender apenas de filtragem
baseada em conteúdo
-
pode levar a recomendações meio chata,
sem nenhuma novidade.
-
Por exemplo, a pessoa
sempre interage com filmes de ação,
-
então é mais natural recomendar
filme de ação para ela também.
-
Mas será que não tem nenhuma comédia
-
ou alguma outro tipo de tipo de filme
que pode ser interessante para ela,
-
que foge um pouco do que era óbvio,
mas recomendação?
-
Se eu fico baseado apenas
nesse algoritmo de filtragem por conteúdo,
-
eu fico refém de recomendações
muito similares.
-
Por outro lado, ser baseado
apenas em filtragem por colaboração
-
pode ser algo
não estão fáceis implementado
-
porque isso depende do usuário
dar informação sobre ele mesmo.
-
E mesmo que os usuários concedam
informações sobre eles mesmos, também
-
não há nenhuma garantia
-
que nós vamos encontrar
perfis similares naquela mesma loja.
-
Talvez em uma loja grande como esse grande
-
e onde a quantidade de usuários
seja bem volumosa.
-
A maior tendência a achar padrões,
perfis usuários parecidos.
-
Mas em comércios menores,
isso aqui pode não ser
-
real.
-
No nosso exemplo, nós tradicionalmente
usamos muito a ideia de um e-commerce,
-
mas uma recomendação também
pode ser empregado em lojas físicas.
-
Um exemplo disso é o supermercado.
-
O caso mais famoso é um caso do Walmart,
que identificou, por meio de compras
-
históricas, que fraldas e cervejas
deveriam ser colocadas próximo.
-
Porque quando o pai acaba, saem o pai
ou a mãe acaba saindo do trabalho
-
numa sexta feira a noite já passa
no mercado para levar fralda para casa.
-
Acha interessante levar uma cerveja também
para passar o final de semana?
-
Esse tipo de análise é chamada de análise
-
e quando você dá uma olhada
no senso de compra daquele usuário.
-
Outra coisa importante
que deriva desse tipo de análise
-
são as regras de associação
-
ou seja, aquela verificar quais produtos
estão mais associados entre si.
-
É basicamente pegar o histórico
de cada carrinho de compra
-
ou cada cesta de compra
e verificar para cada usuário
-
quais são o conjunto de produtos
que são comprados em conjunto.
-
Será que há alguma relação entre eles?
-
Na maior parte das vezes.
-
Assim, por exemplo,
comprar macarrão e molho de tomate.
-
Mas também essa compra em conjunto
pode não fazer muito sentido.
-
Essa falta de sentido
-
deriva de comprar produtos
que não têm muita relação entre eles.
-
Portanto,
para fazer uma boa regra de associação,
-
é importante ter um histórico
bem grande de transações para verificar
-
o que de fato faz sentido
e ter uma relação próxima
-
e real entre uma compra em conjunto
e não seja algo muito particular
-
de uma compra ou de um período do ano.
-
Também não podemos deixar de falar de
popularidade, ou seja, por isso populares
-
que todo mundo compra, todo mundo consome.
-
Também é uma forma de você recomendar
produtos
-
para usuários que você
tem pouco conhecimento sobre ele.
-
É claro que não podemos deixar de falar
das abordagens híbridas,
-
que é quando combinamos
dois ou mais algoritmos no mesmo sistema.
-
Basicamente, o motor de recomendação
fica muito mais sofisticado
-
porque ele está apoiado em diversas
estratégias.
-
Pode ser uma estratégia
baseada em popularidade
-
ou então uma regra de sucessão
ou uma filtragem colaborativa.
-
Quando esse usuário é parecido com outros,
ou então uma abordagem por conteúdo.
-
Quando nós olhamos
para produtos similares a ele
-
ou similares ao que ele já consumiu
para fazer novas recomendações.
-
Como em todo projeto de ciência de dados,
é muito importante
-
fazer um pré processamento dos dados
antes.
-
Essa modelagem, ou seja, limpar,
tirar da duplicado,
-
entender um pouco mais
o dado para prepará lo para modelagem.
-
Por outro lado, o pós processamento
também é muito relevante.
-
Não é porque o sistema
encontrou uma relação entre um produto
-
e um usuário que nós temos de fato
que ligar aquela regra, digamos assim.
-
Nós temos que recomendar
aquele produto para aquela pessoa.
-
Imagine o seguinte caso a pessoa
está interagindo com produtos aqui
-
de uma faculdade
para comprar uma pós graduação e aí,
-
uma vez alinhado no que é oferecido
informação sobre ela, existe uma série de
-
pós que podem ser recomendadas
para aquela pessoa.
-
Ela acabou de comprar um
uma pós específica,
-
fazer uma especialização,
por exemplo, e indicações
-
faz sentido como um outra porta.
-
Essa pessoa logo na sequência,
-
talvez não, porque ela acabou de adquirir
aquele produto muito parecido.
-
E essa limpeza do porta içamento
deve ser feita sempre à luz do negócio.
-
Ou seja, o que eu quero maximizar
com esse produto de recomendação?
-
Eu quero aumentar a venda.
-
Eu quero aumentar o engajamento.
-
Qual são as condições de contorno
que me ajudam a eliminar recomendações que
-
podem não ser válidas?