relgam: Ajustando modelos aditivos generalizados relutantes

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


Introdução e motivação

tl; dr: Modelagem aditiva generalizada relutante (RGAM) produz modelos esparsos altamente interpretáveis ​​que permitem relacionamentos não lineares entre a resposta e cada recurso individual. No entanto, relacionamentos não lineares são incluídos apenas se considerados importantes para melhorar o desempenho da previsão. Os RGAMs trabalham com respostas quantitativas, binárias, de contagem e sobrevivência e são computacionalmente eficientes.

Considere o ambiente de aprendizado supervisionado, onde temos n

observações de p características { bf X} =  {x_ {ij} } para i = 1,2,  pontos, n e j = 1,2  pontos, p, junto com n respostas y = (y_1,  pontos, y_n). Deixei X_j  in  mathbb {R} ^ n denotar os valores do jth característica. Modelos lineares generalizados (GLMs) suponha que a relação entre a resposta e os recursos seja

 begin {alinhado}  eta (y) =  sum_ {j = 1} ^ p  beta_j X_j +  epsilon,  end {align}

Onde  eta

é uma função de link e  epsilon é um termo de erro com média zero. Modelos de aditivos generalizados (GAMs) são uma classe de modelos mais flexível, assumindo que o verdadeiro relacionamento seja

 begin {alinhado}  eta (y) =  sum_ {j = 1} ^ p f_j (X_j) +  epsilon,  end {align}

onde o f_j

Are s são funções desconhecidas a serem determinadas pelo modelo.

Essas duas classes de modelos incluem todos p

recursos no modelo que geralmente são indesejáveis, especialmente quando temos vários recursos. (Normalmente, esperamos que apenas uma pequena fração dos recursos tenha influência na variável resposta). Isso é especialmente problemático com os GAMs, pois o ajuste excessivo pode ocorrer com muito mais facilidade. Surgiram vários métodos para criar escasso GAMs, ou seja, GAMs que envolvem apenas alguns recursos. Exemplos anteriores de tais exemplos incluem COSSO (Lin & Zhang 2006) e Spam (Ravikumar et al. 2007).

Ao fornecer escarsidade, esses métodos determinavam que os recursos incluídos tivessem que ter um relacionamento não linear com a resposta, mesmo que um relacionamento linear fosse suficiente para capturar o relacionamento. Métodos mais sofisticados foram desenvolvidos para fornecer escassez e a possibilidade de relações lineares ou não lineares entre os recursos e a resposta. Exemplos de tais métodos são GAMSEL (Chouldechova e Hastie 2015), SPLAM (Lou et al. 2016) e SPLAT (Petersen e Witten 2019). GAMSEL está disponível em R no gamsel package (veja minha vinheta não oficial aqui) e não consegui encontrar pacotes R para os outros dois métodos.

Leia Também  creditshelf expande ainda mais sua oferta de produtos e entra em parceria estratégica com o principal gestor de ativos, BNP Paribas Asset Management
cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

Modelos aditivos generalizados relutantes (RGAM) caem na mesma classe que esse último grupo de métodos. Está disponível em R no relgam pacote. Os RGAMs são computacionalmente rápidos e trabalham com variáveis ​​quantitativas, binárias, de contagem e de resposta de sobrevivência. (Que eu saiba, o software existente funciona apenas para variáveis ​​quantitativas e binárias.)

RGAM: O que é isso?

A relutante generalização da modelagem aditiva foi inspirada em modelagem de interação relutante (Yu et al. 2019). A ideia é que

Deve-se preferir um termo linear a um termo não linear, se tudo o resto for igual.

Um exemplo simples

A vinheta do CRAN é o melhor lugar para começar a aprender como encaixar os RGAMs na prática. Abaixo, dou um exemplo dos tipos de modelos que podem sair do RGAM. (O código deste exemplo pode ser encontrado aqui.)

Simulamos dados com n = 100

observações e p = 12 características. Cada entrada no  bf X matriz é um desenho independente da distribuição normal padrão, e a verdadeira resposta é

 begin {alinhado} y = X_1 + X_2 + X_3 +  left (2X_4 ^ 2 + 4X_4 - 2  right) +  left (-2X_5 ^ 2 + 2  right) +  frac {1} {2} X_6 ^ 3 + epsilon.  end {alinhado}

Ajustamos um RGAM a esses dados para uma sequência de  lambda

valores. Quanto maior o  lambda quanto menor for o índice  lambda valor, menos penalidade imposta no laço na Etapa 3, resultando em modelos mais flexíveis.

Para cada  lambda

valor, as previsões da RGAM têm a forma

 begin {alinhado}  hat {y} =  sum_ {j = 1} ^ p  left ( hat { beta} _j X_j +  hat {f} _j (X_j)  right).  end {alinhado}

Deixei  hat {g} _j (X_j) =  hat { beta} _j X_j +  hat {f} _j (X_j)

. Traçamos o modelo adequado para os primeiros 30  lambda valores na animação abaixo. Em cada um dos 12 painéis, vemos a estimativa  hat {g} _j para cada variável (em azul, verde ou vermelho) e o verdadeiro relacionamento g_j de preto.

índices (ou seja, grandes

Está sendo zero ou linear. Enquanto o

Quando o índice aumenta, vemos que o modelo RGAM se encaixa cada vez mais perto dos verdadeiros relacionamentos. Passado alguns

índice, começamos a ver algumas adaptações acontecendo. O valor ideal de

Leia Também  Modelos de previsão de tendências e sazonalidade com séries temporais

pode ser escolhido por métodos como validação cruzada.

Eu acho que o RGAM é uma extensão interessante do GAM e de outros modelos aditivos esparsos. Pode nem sempre ter um desempenho melhor, mas acho que é uma boa ferramenta para adicionar ao seu arsenal de modelos interpretáveis ​​para tentar problemas de aprendizado supervisionado!



cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br