Vídeo: Seleção de atributos no Weka 2024
Os dados de classificação têm suas limitações na aprendizagem em máquina. Para que os sistemas de recomendação funcionem bem, eles precisam saber sobre você, bem como outras pessoas, como você e diferente de você. A aquisição de dados de classificação permite que um sistema de recomendação seja aprendido com as experiências de vários clientes. Os dados de classificação podem derivar de um julgamento (como classificar um produto usando estrelas ou números) ou um fato (um binário 1/0 que simplesmente afirma que você comprou o produto, viu um filme ou parou de navegar em uma determinada página da web).
Independentemente da fonte ou tipo de dados, os dados de classificação são sempre sobre comportamentos. Para classificar um filme, você deve decidir vê-lo, assisti-lo e avalie-o com base na sua experiência de ver o filme. Os sistemas de recomendação reais aprendem com os dados de classificação de diferentes maneiras:
- Filtragem colaborativa: Jogos avaliadores com base em semelhanças de filmes ou produtos usados no passado. Você pode obter recomendações com base em itens gostou de pessoas semelhantes a você ou em itens semelhantes aos que você gosta.
- Filtragem baseada em conteúdo: Vai além do fato de ter assistido a um filme. Ele examina os recursos relativos a você e ao filme para determinar se existe uma correspondência com base nas categorias maiores que os recursos representam. Por exemplo, se você é uma mulher que gosta de filmes de ação, o recomendador procurará sugestões que incluem a interseção dessas duas categorias.
- Recomendações baseadas no conhecimento: Com base em metadados, como preferências expressadas pelos usuários e descrições de produtos. Baseia-se no aprendizado da máquina e é eficaz quando você não possui dados comportamentais suficientes para determinar as características do usuário ou do produto. Isso é chamado de início a frio e representa uma das tarefas de recomendação mais difíceis porque você não tem acesso a filtragem colaborativa ou a filtragem baseada em conteúdo.
Ao usar a filtragem colaborativa, você precisa calcular a similaridade. Além das distâncias de Euclidean, Manhattan e Chebyshev, o resto desta informação discute a semelhança de coseno. A semelhança do coseno mede a distância do coseno angular entre dois vetores, o que pode parecer um conceito difícil de entender, mas é apenas uma maneira de medir ângulos nos espaços de dados.
Imagine um espaço feito de recursos e com dois pontos. Você pode medir a distância entre os pontos. Por exemplo, você poderia usar a distância euclidiana, que é uma escolha perfeita quando você tem poucas dimensões, mas que falha miseravelmente quando você tem várias dimensões por causa da maldição da dimensionalidade.
A idéia por trás da distância do coseno é usar o ângulo criado pelos dois pontos conectados à origem do espaço (o ponto onde todas as dimensões são zero). Se os pontos estão próximos, o ângulo é estreito, independentemente de quantas dimensões haja. Se eles estão longe, o ângulo é bastante grande.
A semelhança do coseno implementa a distância do coseno como uma porcentagem e é bastante eficaz para dizer se um usuário é semelhante a outro ou se um filme pode ser associado a outro porque os mesmos usuários o favorecem. O exemplo a seguir localiza os filmes que são os filmes mais parecidos ao filme 50, Star Wars.
print (colnames (MovieLense [50]))
[1] "Star Wars (1977)"
similar_movies <- similarity (MovieLense [50],
MovieLense [-50],
method = "cosine",
que = "itens")
colnames (similar_movies) [que (similar_movies> 0. 70)]
[1] "Toy Story (1995)" < "Empire Strikes Back, The (1980)"
[3] "Raiders of the Lost Ark (1981)"
"Return of the Jedi (1983)"