Os estatísticos assumem que não se pode regar demais uma planta, ou estou apenas usando os termos de pesquisa incorretos para a regressão curvilínea?

18

Quase tudo o que li sobre regressão linear e GLM se resume a isso: y=f(x,β) onde f(x,β) é uma função não-crescente ou não-decrescente de x e é o parâmetro que você estima e testar hipóteses sobre. Existem dezenas de funções de link e transformações de e para fazer uma função linear de .yβyxyf(x,β)

Agora, se você remover o requisito que não aumenta / não diminui para , conheço apenas duas opções para ajustar um modelo linearizado paramétrico: funções trigonométricas e polinômios. Ambos criam dependência artificial entre cada previsto e o conjunto inteiro de , tornando-os um ajuste muito não robusto, a menos que haja razões anteriores para acreditar que seus dados são realmente gerados por um processo cíclico ou polinomial.f(x,β)yX

Este não é um tipo de argumento esotérico. É a relação real e de bom senso entre a água e o rendimento das colheitas (quando as parcelas estiverem suficientemente profundas sob a água, o rendimento das colheitas começará a diminuir) ou entre as calorias consumidas no café da manhã e o desempenho em um teste de matemática ou o número de trabalhadores em uma fábrica e o número de widgets que eles produzem ... em suma, quase qualquer caso da vida real para o qual modelos lineares são usados, mas com os dados cobrindo uma faixa suficientemente ampla para que você passe por retornos decrescentes em retornos negativos.

Tentei procurar os termos 'côncavo', 'convexo', 'curvilíneo', 'não monotônico', 'banheira' e esqueço quantos outros. Poucas perguntas relevantes e ainda menos respostas úteis. Portanto, em termos práticos, se você tivesse os seguintes dados (código R, y é uma função da variável contínua x e do grupo de variáveis ​​discretas):

updown<-data.frame(y=c(46.98,38.39,44.21,46.28,41.67,41.8,44.8,45.22,43.89,45.71,46.09,45.46,40.54,44.94,42.3,43.01,45.17,44.94,36.27,43.07,41.85,40.5,41.14,43.45,33.52,30.39,27.92,19.67,43.64,43.39,42.07,41.66,43.25,42.79,44.11,40.27,40.35,44.34,40.31,49.88,46.49,43.93,50.87,45.2,43.04,42.18,44.97,44.69,44.58,33.72,44.76,41.55,34.46,32.89,20.24,22,17.34,20.14,20.36,24.39,22.05,24.21,26.11,28.48,29.09,31.98,32.97,31.32,40.44,33.82,34.46,42.7,43.03,41.07,41.02,42.85,44.5,44.15,52.58,47.72,44.1,21.49,19.39,26.59,29.38,25.64,28.06,29.23,31.15,34.81,34.25,36,42.91,38.58,42.65,45.33,47.34,50.48,49.2,55.67,54.65,58.04,59.54,65.81,61.43,67.48,69.5,69.72,67.95,67.25,66.56,70.69,70.15,71.08,67.6,71.07,72.73,72.73,81.24,73.37,72.67,74.96,76.34,73.65,76.44,72.09,67.62,70.24,69.85,63.68,64.14,52.91,57.11,48.54,56.29,47.54,19.53,20.92,22.76,29.34,21.34,26.77,29.72,34.36,34.8,33.63,37.56,42.01,40.77,44.74,40.72,46.43,46.26,46.42,51.55,49.78,52.12,60.3,58.17,57,65.81,72.92,72.94,71.56,66.63,68.3,72.44,75.09,73.97,68.34,73.07,74.25,74.12,75.6,73.66,72.63,73.86,76.26,74.59,74.42,74.2,65,64.72,66.98,64.27,59.77,56.36,57.24,48.72,53.09,46.53),
                   x=c(216.37,226.13,237.03,255.17,270.86,287.45,300.52,314.44,325.61,341.12,354.88,365.68,379.77,393.5,410.02,420.88,436.31,450.84,466.95,477,491.89,509.27,521.86,531.53,548.11,563.43,575.43,590.34,213.33,228.99,240.07,250.4,269.75,283.33,294.67,310.44,325.36,340.48,355.66,370.43,377.58,394.32,413.22,428.23,436.41,455.58,465.63,475.51,493.44,505.4,521.42,536.82,550.57,563.17,575.2,592.27,86.15,91.09,97.83,103.39,107.37,114.78,119.9,124.39,131.63,134.49,142.83,147.26,152.2,160.9,163.75,172.29,173.62,179.3,184.82,191.46,197.53,201.89,204.71,214.12,215.06,88.34,109.18,122.12,133.19,148.02,158.72,172.93,189.23,204.04,219.36,229.58,247.49,258.23,273.3,292.69,300.47,314.36,325.65,345.21,356.19,367.29,389.87,397.74,411.46,423.04,444.23,452.41,465.43,484.51,497.33,507.98,522.96,537.37,553.79,566.08,581.91,595.84,610.7,624.04,637.53,649.98,663.43,681.67,698.1,709.79,718.33,734.81,751.93,761.37,775.12,790.15,803.39,818.64,833.71,847.81,88.09,105.72,123.35,132.19,151.87,161.5,177.34,186.92,201.35,216.09,230.12,245.47,255.85,273.45,285.91,303.99,315.98,325.48,343.01,360.05,373.17,381.7,398.41,412.66,423.66,443.67,450.39,468.86,483.93,499.91,511.59,529.34,541.35,550.28,568.31,584.7,592.33,615.74,622.45,639.1,651.41,668.08,679.75,692.94,708.83,720.98,734.42,747.83,762.27,778.74,790.97,806.99,820.03,831.55,844.23),
                   group=factor(rep(c('A','B'),c(81,110))));

plot(y~x,updown,subset=x<500,col=group);

Gráfico de dispersão

Você pode primeiro tentar uma transformação de Box-Cox e ver se fazia sentido mecanicista e, na sua falta, pode ajustar um modelo de mínimos quadrados não linear com uma função de link logístico ou assintótico.

Então, por que você deve desistir completamente de modelos paramétricos e recorrer a um método de caixa preta como splines quando descobre que o conjunto de dados completo se parece com isso ...

plot(y~x,updown,col=group);

Minhas perguntas são:

  • Quais termos devo procurar para encontrar funções de link que representam essa classe de relacionamentos funcionais?

ou

  • O que devo ler e / ou procurar para me ensinar como projetar funções de link para essa classe de relações funcionais ou estender as existentes que atualmente são apenas para respostas monotônicas?

ou

  • Caramba, mesmo que tag StackExchange é mais apropriada para esse tipo de pergunta!
f1r3br4nd
fonte
4
Não faço ideia do que você está perguntando. Você deseja ajustar uma função não-monotônica de ... qual é exatamente o seu problema com regressão polinomial ou regressão seno novamente? Além disso ... "função de link" ... você continua usando essa palavra ... eu não acho que significa o que você pensa que significa. x
21413 Jake Westfall
5
(1) Seu Rcódigo possui erros de sintaxe: groupnão deve ser citado. (2) O gráfico é bonito: os pontos vermelhos exibem uma relação linear, enquanto os pretos podem ser ajustados de várias maneiras, incluindo uma regressão linear por partes (obtida com um modelo de ponto de mudança) e possivelmente até como exponencial. Estou não recomendando estes, no entanto, porque as escolhas de modelagem deve ser informado por uma compreensão do que produziu os dados e motivado por teorias em disciplinas relevantes. Eles podem ser um começo melhor para sua pesquisa.
whuber
1
@whuber thanks! Corrigido o código. Em relação à motivação teórica: de onde elas vêm? Meus colaboradores de bancada cientificamente dicotomizam as variáveis ​​preditoras e fazem testes t nelas. Portanto, cabe a mim encontrar uma maneira de parar de desperdiçar dados, encontrando um relacionamento matemático que captura a transição de "y correlaciona-se positivamente com x" para "y tem pouca resposta de x" para "y correlaciona-se negativamente com x". Caso contrário, terei de recapitular o que Michaelis e Menten fizeram quando encontraram uma relação entre enzima, substrato e produto.
F1r3br4nd
1
Os pontos em que essas coisas "doem" são conhecidos com antecedência?
Glen_b -Reinstate Monica
3
+1 para o título provocador e um acompanhamento que realmente faz sentido
Stumpy Joe Pete

Respostas:

45

As observações na pergunta sobre funções de link e monotonicidade são um arenque vermelho. Subjacente a eles parece haver uma suposição implícita de que um modelo linear generalizado (GLM), ao expressar a expectativa de uma resposta como uma função monotônica f de uma combinação linear X β das variáveis ​​explicativas X , não é suficientemente flexível para explicar respostas monotônicas. Isso não é verdade.YfXβX


Talvez um exemplo elaborado ilumine esse ponto. Em um estudo de 1948 (publicado postumamente em 1977 e nunca revisado por pares), J. Tolkien relatou os resultados de um experimento de rega de plantas em que 13 grupos de 24 girassóis ( Helianthus Gondorensis ) receberam quantidades controladas de água, começando na germinação por três meses de crescimento. As quantidades totais aplicadas variaram de uma polegada a 25 polegadas em incrementos de duas polegadas.

figura 1

Existe uma resposta positiva clara à rega e uma forte resposta negativa à rega excessiva. Trabalhos anteriores, baseados em modelos cinéticos hipotéticos de transporte de íons, tinham a hipótese de que dois mecanismos concorrentes poderiam explicar esse comportamento: um resultou em uma resposta linear a pequenas quantidades de água (como medido nas chances de sobrevivência logarítmicas), enquanto o outro - -um fator inibidor - agiu exponencialmente (que é um efeito fortemente não linear). Com grandes quantidades de água, o fator inibidor sobrecarregaria os efeitos positivos da água e aumentaria consideravelmente a mortalidade.

Seja a taxa de inibição (desconhecida) (por quantidade unitária de água). Este modelo afirma que o número Y de sobreviventes em um grupo de tamanho n que recebe x polegadas de água deve ter uma distribuição Binomial ( n , f ( β 0 + β 1 x - β 2 exp ( κ x ) ) ) , onde f é a função de link convertendo as probabilidades do log de volta para uma probabilidade. Este é um GLM binomial. Como tal, embora seja manifestamente não linear em xκYnx

Binomial(n,f(β0+β1xβ2exp(κx)))
fx, dado qualquer valor de , é linear em seus parâmetros β 0 , β 1 e β 2 . "Linearidade" na configuração GLM deve ser entendida no sentido de que f - 1 ( E [ Y ] ) é uma combinação linear desses parâmetros cujos coeficientes são conhecidos para cada x . E eles são: eles são iguais a 1 (o coeficiente de β 0 ), x em si (o coeficiente de β 1 ) e - expκβ0β1β2f1(E[Y])x1β0xβ1 (o coeficiente de β 2 ).exp(κx)β2

Esse modelo - embora seja um pouco novo e não completamente linear em seus parâmetros - pode ser ajustado usando o software padrão, maximizando a probabilidade de arbitrário e selecionando o k para o qual esse máximo é maior. Aqui está o código para fazer isso, começando com os dados:κκR

water <- seq(1, 25, length.out=13)
n.survived <- c(0, 3, 4, 12, 18, 21, 23, 24, 22, 23, 18, 3, 2)
pop <- 24
counts <- cbind(n.survived, n.died=pop-n.survived)
f <- function(k) {
  fit <- glm(counts ~ water + I(-exp(water * k)), family=binomial)
  list(AIC=AIC(fit), fit=fit)
}
k.est <- optim(0.1, function(k) f(k)$AIC, method="Brent", lower=0, upper=1)$par
fit <- f(k.est)$fit

Não há dificuldades técnicas; o cálculo leva apenas 1/30 segundo.

Figura 2

A curva azul é a expectativa ajustada da resposta, .E[Y]

E[Y]xR

x.0 <- seq(min(water), max(water), length.out=100)
p.0 <- cbind(rep(1, length(x.0)), x.0, -exp(k.est * x.0))
logistic <- function(x) 1 - 1/(1 + exp(x))
predicted <- pop * logistic(p.0 %*% coef(fit))

plot(water, n.survived / pop, main="Data and Fit",
     xlab="Total water (inches)", 
     ylab="Proportion surviving at 3 months")
lines(x.0, predicted / pop, col="#a0a0ff", lwd=2)

As respostas para as perguntas são:

Quais termos devo procurar para encontrar funções de link que representam essa classe de relacionamentos funcionais?

Nenhum : esse não é o objetivo da função de link.

O que devo procurar para estender as [funções de link] existentes que atualmente são apenas para respostas monotônicas?

Nada : isso é baseado em um mal-entendido de como as respostas são modeladas.

Evidentemente, deve-se primeiro focar em quais variáveis ​​explicativas usar ou construir ao construir um modelo de regressão. Conforme sugerido neste exemplo, procure orientação de experiências e teorias passadas.

whuber
fonte
resposta incrível! Esses dados reais são tolkien do romance?
Cam.Davidson.Pilon
1
@Cam Os dados não chegaram ao corte final :-). (O contexto é bastante
irônico
1
κ
5
κκχ2(1)
1
@zipzapboing O exemplo que eu dou aqui é especial porque foi informado por uma teoria subjacente. Quando essas informações estão disponíveis, pode ser um guia poderoso para a seleção de um modelo. Em muitos casos, porém, não existe essa informação, ou apenas se espera que a resposta esperada possa variar monotonicamente com os regressores. Talvez a razão mais fundamental para a qual se possa apontar seja a esperança de que a resposta varie de maneira diferente dos regressores e que, para o intervalo de regressores nos dados, a mudança na derivada seja pequena: uma resposta linear se aproximaria muito bem disso.
whuber
9

Parece culpado pela planta moribunda em sua mesa ... aparentemente não

Nos comentários, o @whuber diz que "as escolhas de modelagem devem ser informadas por um entendimento do que produziu os dados e motivado pelas teorias em disciplinas relevantes", para o qual você perguntou como alguém faz isso.

A cinética de Michaelis e Menten é realmente um exemplo bastante útil. Essas equações podem ser derivadas começando com algumas suposições (por exemplo, o substrato está em equilíbrio com seu complexo, a enzima não é consumida) e alguns princípios conhecidos (a lei da ação em massa). A Biologia Matemática de Murray: Uma Introdução analisa a derivação no capítulo 6 (eu aposto que muitos outros livros também!).

De um modo mais geral, ajuda a criar um "repertório" de modelos e suposições. Tenho certeza de que seu campo tem alguns modelos comumente aceitos e testados pelo tempo. Por exemplo, se algo estiver carregando ou descarregando, eu procuraria um exponencial para modelar sua tensão em função do tempo. Por outro lado, se eu vir uma forma exponencial em um gráfico de tensão-tempo, meu primeiro palpite seria que algo no circuito está sendo capacitivamente descarregado e, se eu não soubesse o que era, tentaria encontrá-lo. Idealmente, a teoria pode ajudá-lo a construir o modelo e sugerir novos experimentos.

y=k(x+h)2CO2 captura de menos transpiração?) e inundação (bactérias que comem as raízes?) podem sugerir uma forma específica para cada peça.

Matt Krause
fonte
8

Eu tenho uma resposta bastante informal do ponto de vista de alguém que passou metade de sua vida científica no banco e a outra metade no computador, brincando com estatísticas. Tentei colocar um comentário, mas era muito longo.

Veja bem, se eu fosse um cientista observando o tipo de resultado que você está obtendo, ficaria emocionado. As várias relações monotônicas são chatas e dificilmente distinguíveis. No entanto, o tipo de relacionamento que você nos mostra sugere um efeito muito particular. Isso nos dá um maravilhoso playground para o teórico, ao apresentar hipóteses sobre qual é o relacionamento, como ele muda nos extremos. Ele oferece um ótimo playground para o cientista de bancada descobrir o que está acontecendo e experimentar amplamente as condições.

Em certo sentido, eu prefiro ter o caso que você está mostrando e não saber como ajustar um modelo simples (mas ser capaz de elaborar uma nova hipótese) do que ter um relacionamento simples, fácil de modelar, mas mais difícil de investigar mecanicamente. No entanto, ainda não encontrei um caso como esse em minha prática.

Finalmente, há mais uma consideração. Se você está procurando um teste que mostre que o preto é diferente do vermelho (nos seus dados) - como ex-cientista de bancada, digo por que me incomodar? É claro o suficiente da figura.

janeiro
fonte
5

Para dados como esse, eu provavelmente estaria considerando pelo menos splines lineares.

Você pode fazer isso em lm ou glm com bastante facilidade.

Se você adotar essa abordagem, seu problema será escolher o número de nós e a localização dos nós; uma solução pode ser considerar um número razoável de locais possíveis e usar algo como o laço ou outros métodos de regularização e seleção para identificar um pequeno conjunto; você precisará levar em consideração o efeito dessa seleção na inferência.

Glen_b -Reinstate Monica
fonte
Mas a regressão spline não está basicamente dizendo "existe uma função desconhecida que descreve a forma da resposta e apenas testaremos hipóteses sobre como as outras variáveis ​​mudam essa curva para cima / para baixo ou inclinam-na"? E se um tratamento alterar a forma em si - como alguém interpreta esse termo de interação se é significativo?
F1r3br4nd
2
Quão geral é a alternativa? Mesmo no caso geral, há uma variedade de abordagens nas quais você pode fazer uma comparação do ajuste assumindo funções não paramétricas idênticas em comparação com as separadas. Modelos aditivos e modelos aditivos generalizados podem lidar com essas comparações.
Glen_b -Reinstala Monica
Como exemplo de um caso mais geral do que você discute (com referências discutindo uma variedade de outras abordagens), se você conseguir se apossar dele, dê uma olhada neste artigo J.Roca-Pardiñas et al (2006) "Bootstrap-based métodos para testar interações fator-por-curva em modelos aditivos generalizados: avaliação da atividade neural do córtex pré-frontal relacionada à tomada de decisão ", Statistics in Medicine , 30 de julho; 25 (14): 2483-501. Nesse artigo, eles usam bootstrapping (e binning para reduzir a carga computacional), mas há outras abordagens mencionadas lá.
Glen_b -Reinstala Monica
Uma referência mais básica e mais antiga seria algo como Hastie e Tibshirani (1990), Modelos Aditivos Generalizados (por exemplo, consulte a pág. 265). Além disso, dê uma olhada aqui , especificamente, a última equação no slide 34. Por lá também explica como encaixar esse modelo usando gamno pacote de R mgcv.
Glen_b -Reinstar Monica
2

Não tive tempo de ler todo o seu post, mas parece que sua principal preocupação é que as formas funcionais de respostas possam mudar com os tratamentos. Existem técnicas para lidar com isso, mas elas usam muitos dados.
Para o seu exemplo específico:

G é crescimento W é água T é tratamento

library(mgcv)
mod = gam(G~T+s(W,by=T))
plot(mod,pages=1,all=TRUE)
?gam

A última década viu uma tonelada de pesquisas em regressão semiparamétrica, e essas discussões sobre formas funcionais estão se tornando cada vez mais gerenciáveis. Mas no final do dia, as estatísticas estão jogando com números e são úteis apenas na medida em que constroem intuição sobre os fenômenos sob observação. Isso, por sua vez, requer a compreensão de como os números estão sendo reproduzidos. O tom do seu post indica uma vontade de jogar o bebê fora com a água do banho.

generic_user
fonte