Estou tentando prever o sucesso ou fracasso dos alunos com base em alguns recursos com um modelo de regressão logística. Para melhorar o desempenho do modelo, já pensei em dividir os alunos em grupos diferentes com base em diferenças óbvias e em criar modelos separados para cada grupo. Mas acho que pode ser difícil identificar esses grupos por exame, então pensei em dividir os alunos agrupando seus recursos. Esta é uma prática comum na construção de tais modelos? Você sugeriria que eu a dividisse em grupos óbvios (por exemplo, alunos do primeiro ano versus alunos que retornam) e depois realizasse agrupamentos nesses grupos ou agrupasse desde o início?
Para tentar esclarecer:O que quero dizer é que estou pensando em usar um algoritmo de agrupamento para dividir meu conjunto de treinamento para a regressão logística em grupos. Eu faria então regressões logísticas separadas para cada um desses grupos. Então, ao usar a regressão logística para prever o resultado de um aluno, eu escolheria qual modelo usar com base em qual grupo eles se encaixam melhor.
Talvez eu pudesse fazer a mesma coisa incluindo um identificador de grupo, por exemplo, 1 se o aluno está retornando e 0 se não.
Agora, você me fez pensar se seria vantajoso agrupar o conjunto de dados de treinamento e usar seu rótulo de cluster como um recurso na regressão logística, em vez de criar modelos de regressão logística separados para cada população.
Se for útil incluir um identificador de grupo para aqueles que retornam e novos alunos, também pode ser útil expandir a lista de grupos? O agrupamento parece ser uma maneira natural de fazer isso.
Espero que esteja claro ...
Respostas:
Acredito que se você tiver uma diferença significativa na sua variável dependente entre os seus clusters, a abordagem do cluster primeiro será DEFINITIVAMENTE útil. Independentemente do seu algoritmo de aprendizado escolhido.
É minha opinião que a execução de um algoritmo learnign em uma base inteira pode encobrir diferenças significativas em um nível mais baixo de agregação.
Qualquer um que tenha ouvido falar do paradoxo de simpson, é um caso difícil de um problema mais profundo, onde você tem correlações diferentes em grupos diferentes, que são encobertas por um ruído amostral maior e ou correlações mais fracas de um grupo maior.
fonte
Sua abordagem geral proposta - usando partições latentes para atribuir diferentes pontos de dados a diferentes classificadores de base - é uma abordagem bem pesquisada em relação à classificação.
A razão pela qual esses métodos não são amplamente utilizados é provável porque são relativamente complicados e têm tempos de execução mais longos que a regressão logística ou SVMs. Em muitos casos, parece que eles podem levar a um melhor desempenho de classificação.
Aqui estão algumas referências:
Shahbaba, B. e Neal, R. "Modelos não lineares usando misturas de processo de Dirichlet"
Zhu, J. e Chen, N. e Xing, EP "SVM latente infinito para classificação e aprendizado de múltiplas tarefas"
Rasmussen, CE e Ghahramani, Z. "Misturas infinitas de especialistas em processos gaussianos"
Meeds, E. e Osindero, S. "Uma mistura infinita alternativa de especialistas em processos gaussianos"
fonte
Quero reconhecer desde o início que sei relativamente pouco sobre agrupamentos. No entanto, não vejo o objetivo do procedimento que você descreve. Se você acha, por exemplo, que o primeiro semestre versus os alunos que retornam pode ser diferente, por que não incluir uma covariável que indexe isso? Da mesma forma, se você acha que outro recurso dos alunos é relevante, você pode incluí-lo também. Se você está preocupado que o relacionamento entre seu preditor primário de interesse e a taxa de sucesso possa diferir, inclua também a interação entre esse preditor e o primeiro mandato x o retorno, etc. A regressão logística está bem equipada para resolver essas questões, incluindo tais termos no modelo.
Por outro lado, desde que você apenas agrupe esses recursos e faça isso primeiro (sem olhar para a resposta), não vejo nenhum problema surgindo. Suspeito que essa abordagem seja ineficiente, com cada modelo tendo menor poder porque é adequado apenas a um subconjunto dos dados, mas não acho que isso influencie os parâmetros ou invalide os testes. Então, suponho que você poderia tentar isso, se realmente quiser.
Atualizar:
Meu palpite é que seria melhor (ou seja, mais eficiente) ajustar um modelo a todos os dados. Você pode incluir algumas covariáveis adicionais (como retorno versus não) além do seu interesse principal e um indicador de agrupamento que você descobriu ao executar uma análise de cluster anteriormente. No entanto, se as covariáveis inseridas na análise de cluster também forem disponibilizadas para o modelo de regressão logística, não tenho certeza se consigo ver o que seria ganho com a inclusão de todas as covariáveis no modelo LR semo indicador de cluster. Pode haver uma vantagem nisso com a qual não estou familiarizado, já que não sou especialista em análise de cluster, mas não sei o que seria. Parece-me que a CA não geraria informações adicionais que ainda não estavam presentes nas covariáveis e, portanto, não acrescentaria nada ao modelo LR. Você poderia tentar; talvez eu esteja errado. Mas meu palpite é que você apenas queimaria alguns graus extras de liberdade.
Uma abordagem diferente seria inserir o indicador de cluster no modelo LR, em vez das covariáveis nas quais ele se baseia. Duvido que isso seria benéfico. A CA não será perfeita, assim como qualquer outra análise já realizada, e, portanto, passar das covariáveis originais para o indicador de cluster derivado provavelmente acarretará uma certa perda de informações . (Novamente, eu não sei disso, mas suspeito fortemente que isso seja verdade.) Novamente, você pode tentar dos dois lados e comparar como um exercício acadêmico, embora apenas tentando um monte de coisas e decidindo o resultado que parece melhor esteja desaprovado. se você quiser levar seus resultados a sério.
Eu não quero apenas trabalhar com análises de cluster. Pode haver muitos benefícios em geral, e pode haver um bom uso para eles aqui. No entanto, como entendo sua situação, acho que apenas o caminho a seguir é construir um modelo de RL com as covariáveis que você acha que podem ser relevantes.
fonte
Se você não está vinculado à regressão logística, sugiro que você use um classificador de floresta aleatório porque ele possui um tipo de agrupamento incorporado. A idéia seria usar a matriz de proximidade para agrupar. A matriz de proximidade é a matriz N_Obs por N_Obs para a fração de árvores fora do saco, onde as observações estão no mesmo nó terminal. Você pode então agregar isso em um nível de recurso por matriz de nível de recurso, onde os elementos são a média da fração na matriz de proximidade. Em seguida, você agruparia todos os níveis quando eles ultrapassassem um limite e veria se isso melhora sua previsão. Provavelmente, é melhor adotar uma abordagem iterativa passo a passo para encontrar o cluster ideal, mas você pode escolher um limite de outras maneiras. Quando esse cluster estiver concluído, você poderá substituir o recurso pelos rótulos do cluster ou adicioná-los como um novo recurso. Suponho que, nesse ponto, você possa voltar à regressão logística, se realmente quiser.
fonte
Ao criar modelos multissegmentados, acho que a melhor abordagem é criar segmentos que falem com diferenças reais nas distribuições subjacentes. Alunos do primeiro ano versus alunos que retornam é um ótimo exemplo, pois as distribuições de preditores provavelmente serão muito diferentes para essas duas populações. Mais importante, essas diferenças têm uma explicação intuitiva.
fonte