Suponha que eu esteja trabalhando com o seguinte modelo
.
O é um gaussiano com média zero e estou tentando encontrar os melhores valores de ajuste de .
Para concretização, digamos que este seja um modelo para a quantidade total de algumas espécies bacterianas com duas subespécies que crescem no tempo de acordo com o primeiro e o segundo termos no RHS, mas apenas medimos a população total. Nota: essa não é a configuração real, mas é suficiente para a pergunta.
O modelo não é identificável no sentido usual, pois sempre posso trocar e por exemplo, e obter exatamente a mesma densidade / probabilidade.
Como você pode esperar, se eu executar um MCMC, acabo com posteriores terrivelmente amplos, e qualquer abordagem de mínimos quadrados não lineares é incrivelmente sensível às suposições iniciais - temos um grande platô na função de probabilidade.
Um melhor projeto experimental não é uma opção nesta fase - obviamente medir a subespécie separadamente seria a melhor opção.
Existe algo que eu possa fazer com esse problema ou o melhor design experimental é a única opção?
Respostas:
Não há problema de identificabilidade, exceto no sentido trivial de que qualquer modelo em particular pode ter duas descrições. O problema real parece ser a dificuldade de ajustar o modelo - mas isso se deve à maneira como os modelos são parametrizados, e não à falta de identificabilidade.
Esse problema tem uma solução igualmente trivial: declare, sem qualquer perda de generalidade, que . Se você quer ser realmente exigente, insista também que, se , então .β≥δ β=δ α≥γ
Infelizmente, isso requer qualquer procedimento para ajustar o modelo a respeitar essas restrições. A introdução de uma restrição aqui não é tão ruim, porque o aplicativo é tal que obviamente todos os parâmetros não são negativos de qualquer maneira: o espaço do parâmetro já possui limites nítidos. A inclusão de mais uma restrição não forçará nenhuma alteração na forma como ajustamos o modelo.
Um método conhecido para converter uma otimização restrita em uma irrestrita é remetereter o problema para que, no novo espaço de parâmetro, os limites sejam empurrados para o infinito. Existem muitas maneiras de conseguir isso aqui. Uma consideração do significado dos parâmetros nos guiará. Em particular, é o máximo atingido pela função para . Dado , então necessariamente eν=α+γ
A partir de estimativas desses parâmetros (que, a propósito, não são "identificáveis" devido à ambiguidade nos ângulos e ), é possível recuperar os originais comoa d
As propriedades das funções exponencial e trigonométrica asseguram todas as restrições: , e . (Como os flutuadores de precisão dupla podem se tornar astronomicamente pequenos, não há distinção prática entre e nessas restrições.)α>0 β≥δ>0 γ>0 > ≥
Nesse sentido bem definido, o modelo é identificável, mesmo que os parâmetros usados para ajustá-lo não sejam identificáveis.
Embora se possa usar o MCMC, se o objetivo é apenas ajustar a curva, é mais simples usar um solucionador numérico como Newton-Raphson. O truque é encontrar um bom valor inicial . O máximo de seria uma leve superestimação de ; então comece, talvez com . Você pode começar com , supondo que cada componente faça uma contribuição substancial ao todo. Faça algumas suposições razoáveis sobre e base nas taxas esperadas de decaimento. Por exemplo, se o intervalo de for razoável, considere como uma fração da maioryi en n=log(max(yi)/2) a=π/4 eb ed t b t talvez, escolha arbitrariamente ; talvez use um valor inicial menor. (Muitas vezes você vai ter diferentes valores para as estimativas de parâmetros, dependendo estas escolhas, mas normalmente eles não afetará significativamente o função em si .)d=π/4 f
Em muitas circunstâncias, essa abordagem funciona muito bem. Exceto quando a variação dos erros é do mesmo tamanho que ou maior (onde será difícil discernir qualquer sinal sem uma grande quantidade de dados), o ajuste funciona mesmo com pequenas quantidades de dados: todos precisa é de quatro.maxyi
Observe que, independentemente de como o modelo é adequado, normalmente haverá uma grande incerteza nos parâmetros: essa família de curvas é essencialmente uma pequena perturbação da família exponencial de dois parâmetros . Em muitas circunstâncias, então, dois dos parâmetros (correspondentes à amplitude e à maior taxa de decaimento ) podem ser identificados com razoável precisão, mas os outros dois parâmetros, que refletem pequenas variações dessa forma exponencial, geralmente são altamente incertos.t→Ae−Bt A B
A figura mostra um exemplo de um ajuste desafiador. A curva subjacente é mostrada em preto. Por fim, atinge um máximo de , muito lentamente. Apenas pontos de dados estão disponíveis, plotados como pontos cinza. O desvio padrão dos erros aleatórios é , uma proporção considerável desse máximo. Muitos dos erros foram positivos, fazendo com que a curva ajustada em vermelho seja um pouco maior. Os dois componentes exponenciais da curva ajustada são mostrados como linhas cinza tracejadas e pontilhadas. Um mostra um rápido aumento para um limiar de no momento ; o outro reflete o outro exponencial subindo ao seu limite de4/3 24 1/2 1/3 t=1 1 . (Você terá pouca esperança de reproduzir esse "ombro" afiado próximo de até ter pontos de dados ou mais: experimente variando no código abaixo.)t=1 1000
n
Seu sucesso em qualquer problema específico dependerá da magnitude dos erros; a faixa de valores de que são amostrados; como esses valores são espaçados; quantos valores estão disponíveis; e escolha dos valores iniciais. No entanto, este parece ser um problema tratável em geral, com soluções que podem ser obtidas rapidamente. Além disso, qualquer ajustador de probabilidade máxima procederá de maneira semelhante para minimizar a soma dos quadrados dos resíduos - e, além disso, fornecerá regiões de confiança para os parâmetros.t
Este é o
R
código que usei para testar esta proposta. Ele reproduz a figura e é facilmente modificado - altere os valores das variáveis no início - para estudar dados parecidos com os que você possa ter.fonte