Quais algoritmos de aprendizado supervisionado estão disponíveis para correspondência?

7

Estou trabalhando em uma organização sem fins lucrativos, na qual tentamos ajudar possíveis candidatos a universidades, combinando-os com ex-alunos que desejam compartilhar sua experiência / sabedoria e, no momento, isso está acontecendo manualmente. Portanto, terei duas tabelas, uma com alunos e outra com ex-alunos (eles podem ter alguns recursos em comum, mas não necessariamente todos)

NomeGêneroAlturaKathyF165TommyM182RuthF163......... NomeGêneroPesoMiss LucyF65Miss GeraldineF70Miss EmilyF60.........

Atualmente, estamos combinando manualmente os membros da tabela 1 com os da tabela 2. Também coletamos informações após a partida ("Foi uma boa correspondência? Classifique-a em uma escala de 1 a 10"). Portanto, será algo como isto:

Pessoa # 1Pessoa # 2Combine?RuthMiss LucyNTommyMiss EmilyYKathyMiss GeraldineNRuthMiss EmilyN.........

Eu gostaria de usar um algoritmo de aprendizado para esse processo. Conheço um pouco de aprendizado de máquina, mas ainda sou muito novato (também é uma oportunidade para aprender mais sobre ele), mas não consigo entender como você faria esse tipo de aprendizado supervisionado. quando você tem dois conjuntos, ambos com vários recursos. Que tipo de algoritmos correspondentes estão disponíveis para fazer isso? (Além disso, prefiro trabalhar em R)

(A propósito, eu ficaria muito grato se você pudesse me apontar na direção certa e vou tentar ler sobre isso e resolvê-lo pessoalmente. Além disso, eu sei como é profundamente frustrante ver perguntas que já foram respondidas - se esse for o caso, não hesite em me informar sem responder à pergunta.Eu já tentei pesquisar várias strings no Google e no StackExchange, mas na maioria das vezes encontro slides de palestras sobre teoria de grafos que não parecem ser o que estou procurando (embora possa ser apenas porque está um pouco demais) Muito obrigado!)

Granizo caesar
fonte
11
Você está tremendo seus recursos ou algo assim, porque a sanidade de combinar os alunos com os mentores com base em seu nome, sexo, altura e peso tem uma baixa probabilidade de sucesso e pode ser ilegal. As pessoas geralmente tentam obter mais anonimato ao fazer perguntas, alterando ou simplificando o problema, mas é muito mais fácil responder à pergunta real do que transformá-la. Por exemplo, se você não tem a resposta, provavelmente não sabe como para transformá-lo corretamente.
AN6U5
Veja o algoritmo de correspondência de Gale e Shapley da literatura e veja se você pode aplicá-lo aqui.
Deepak Pahwa

Respostas:

2

Você pode tentar enquadrar esse problema como uma situação de sistema de recomendação. Onde você tem seus usuários (alunos em potencial) e itens (ex-alunos) e deseja recomendar aos usuários um item.

Não é um ajuste perfeito, pois você deseja apenas um item para cada usuário e não possui dados de correspondência anteriores para cada usuário. No entanto, você pode investigar essa idéia um pouco mais. Estou aplicando essas técnicas ao problema de recrutamento, combinando usuários com ofertas de emprego e obtendo algum sucesso.

Tente ler um pouco sobre os sistemas de recomendação, para começar, recomendo o capítulo 9 da mineração de conjuntos de dados massivos, é realmente introdutório, mas fornece uma boa visão geral das técnicas mais comuns.

João Almeida
fonte
+1 por tentar tratar isso como um sistema recomendado. Eu acrescentaria que você provavelmente precisará fazer algum tipo de engenharia e extração de recursos para adicionar um sinal adicional ao seu problema.
AN6U5
0

Eu teria separado o problema em dois:

  1. Prever se um determinado par será uma boa combinação.
  2. Combinando os pares.

Primeiro, vamos discutir o problema de previsão. Eu acho que você deve tratar a combinação dos pares como um problema de aprendizado supervisionado e não como um problema de recomendação. Como João Almeida escreveu, o novo aluno não terá relações anteriores com ex-alunos.
Mesmo o aluno terá muito poucas relações anteriores. Eu acrescentaria a cada ex-aluno alguns recursos baseados em agregações (por exemplo, o número de relações passadas, a proporção de boas correspondências passadas).

Depois disso, você deve criar um conjunto de dados dos pares anteriores, usando 'Corresponder?' como o conceito. Não está claro se você será capaz de aprender uma boa regra de correspondência, mesmo que ela exista. Eu acho que seu conjunto de dados é bem pequeno. Se a probabilidade de uma correspondência for baixa, você pode ter um problema de desequilíbrio. Como comentou o AN6U5, altura e peso são características bastante estranhas para combinar os alunos com o ex-aluno. Calcule as relações entre os recursos e o conceito (por exemplo , informações mútuas , correlação de Pearson ) para verificar se você possui recursos úteis.

Quanto à segunda pergunta, mesmo que você consiga prever bem se um par será uma boa correspondência, você ainda tem um problema algorítmico de qual par usar. Considere um "superalunos" que será uma boa combinação para qualquer aluno. Você não gostaria de associá-lo a um "super estudante", mas a um aluno que será difícil encontrar outros alunos. Felizmente, existem algoritmos correspondentes que você pode usar. Crie um gráfico com os alunos e o aluno como nós. Crie uma vantagem se você prever uma boa correspondência e executar um algoritmo de correspondência nela.

DaL
fonte