Este é um post cruzado do Math SE .
Eu tenho alguns dados (tempo de execução de um algoritmo) e acho que segue uma lei de energia
Eu quero determinar e . O que fiz até agora é fazer uma regressão linear (mínimos quadrados) através de e determinar e partir de seus coeficientes.
Meu problema é que, como o erro "absoluto" é minimizado para os "dados do log-log", o que é minimizado quando você olha para os dados originais é o quociente.
Isso leva a um grande erro absoluto para grandes valores de . Existe alguma maneira de fazer uma "regressão da lei do poder" que minimize o erro "absoluto" real? Ou pelo menos faz um trabalho melhor em minimizá-lo?
Exemplo:
A curva vermelha é ajustada em todo o conjunto de dados. A curva verde é ajustada apenas nos últimos 21 pontos.
Aqui estão os dados para o gráfico. A coluna da esquerda são os valores de ( eixo ), a coluna da direita são os valores de ( eixo )
1.000000000000000000e+02,1.944999820000248248e-03
1.120000000000000000e+02,1.278203080000253058e-03
1.250000000000000000e+02,2.479853309999952970e-03
1.410000000000000000e+02,2.767649050000500332e-03
1.580000000000000000e+02,3.161272610000196315e-03
1.770000000000000000e+02,3.536506440000266715e-03
1.990000000000000000e+02,3.165302929999711402e-03
2.230000000000000000e+02,3.115432719999944224e-03
2.510000000000000000e+02,4.102446610000356694e-03
2.810000000000000000e+02,6.248937529999807478e-03
3.160000000000000000e+02,4.109296799998674206e-03
3.540000000000000000e+02,8.410178100001530418e-03
3.980000000000000000e+02,9.524117600000181830e-03
4.460000000000000000e+02,8.694799099998817837e-03
5.010000000000000000e+02,1.267794469999898935e-02
5.620000000000000000e+02,1.376997950000031709e-02
6.300000000000000000e+02,1.553864030000227069e-02
7.070000000000000000e+02,1.608576049999897034e-02
7.940000000000000000e+02,2.055535920000011244e-02
8.910000000000000000e+02,2.381920090000448978e-02
1.000000000000000000e+03,2.922614199999884477e-02
1.122000000000000000e+03,1.785056299999610019e-02
1.258000000000000000e+03,3.823622889999569313e-02
1.412000000000000000e+03,3.297452850000013452e-02
1.584000000000000000e+03,4.841355780000071440e-02
1.778000000000000000e+03,4.927822640000271981e-02
1.995000000000000000e+03,6.248602919999939054e-02
2.238000000000000000e+03,7.927740400003813193e-02
2.511000000000000000e+03,9.425949999996419137e-02
2.818000000000000000e+03,1.212073290000148518e-01
3.162000000000000000e+03,1.363937510000141629e-01
3.548000000000000000e+03,1.598689289999697394e-01
3.981000000000000000e+03,2.055201890000262210e-01
4.466000000000000000e+03,2.308686839999722906e-01
5.011000000000000000e+03,2.683506760000113900e-01
5.623000000000000000e+03,3.307920660000149837e-01
6.309000000000000000e+03,3.641307770000139499e-01
7.079000000000000000e+03,5.151283440000042901e-01
7.943000000000000000e+03,5.910637860000065302e-01
8.912000000000000000e+03,5.568920769999863296e-01
1.000000000000000000e+04,6.339683309999486482e-01
1.258900000000000000e+04,1.250584726999989016e+00
1.584800000000000000e+04,1.820368430999963039e+00
1.995200000000000000e+04,2.750779816999994409e+00
2.511800000000000000e+04,4.136365994000016144e+00
3.162200000000000000e+04,5.498797844000023360e+00
3.981000000000000000e+04,7.895301083999981984e+00
5.011800000000000000e+04,9.843239714999981516e+00
6.309500000000000000e+04,1.641506008199996813e+01
7.943200000000000000e+04,2.786652209900000798e+01
1.000000000000000000e+05,3.607965075100003105e+01
1.258920000000000000e+05,5.501840400599996883e+01
1.584890000000000000e+05,8.544515980200003469e+01
1.995260000000000000e+05,1.273598972439999670e+02
2.511880000000000000e+05,1.870695913819999987e+02
3.162270000000000000e+05,3.076423412130000088e+02
3.981070000000000000e+05,4.243025571930002116e+02
5.011870000000000000e+05,6.972544795499998145e+02
6.309570000000000000e+05,1.137165088436000133e+03
7.943280000000000000e+05,1.615926472178005497e+03
1.000000000000000000e+06,2.734825116088002687e+03
1.584893000000000000e+06,6.900561992643000849e+03
(desculpe pela notação científica confusa)
fonte
Respostas:
Se você quiser uma variação de erro igual em todas as observações na escala não transformada, poderá usar mínimos quadrados não lineares.
(Isso geralmente não é adequado; erros em muitas ordens de magnitude raramente são constantes em tamanho.)
Se seguirmos em frente e usá-lo, teremos um ajuste muito mais próximo aos valores posteriores:
E se examinarmos os resíduos, podemos ver que meu aviso acima é inteiramente fundamentado:
Isso mostra que a variabilidade não é constante na escala original (e que o ajuste dessa curva de potência única também não se encaixa muito bem na extremidade alta, pois há uma curvatura distinta no terceiro trimestre da faixa dos valores de log em a escala x - entre cerca de 0 e 5 no eixo x acima). A variabilidade é mais próxima da constante na escala de log (embora seja um pouco mais variável em termos relativos, com valores baixos do que altos).
O que seria melhor fazer aqui depende do que você está tentando alcançar.
fonte
Um artigo de Lin e Tegmark resume bem as razões pelas quais as distribuições de processos lognormal e / ou markov não se ajustam aos dados que exibem comportamentos críticos da lei de energia ... https://ai2-s2-pdfs.s3.amazonaws.com/5ba0/3a03d844f10d7b4861d3b116818afe2b75f2 .pdf . Como eles observam: "Os processos de Markov ... falham épicamente ao prever informações mútuas decaídas exponencialmente ..." Sua solução e recomendação é empregar redes neurais de aprendizado profundo, como modelos de memória de longo prazo (LSTM).
Sendo velha escola e nem familiarizada nem confortável com NNs ou LSTMs, darei uma dica da abordagem não-linear de @ glen_b. No entanto, prefiro soluções alternativas mais tratáveis e de fácil acesso, como a regressão quantílica baseada em valor. Tendo usado essa abordagem em reivindicações de seguro de cauda pesada, sei que ela pode fornecer um ajuste muito melhor às caudas do que os métodos mais tradicionais, incluindo modelos multiplicativos de log-log. O desafio modesto no uso do QR é encontrar o quantil apropriado em torno do qual basear o (s) modelo (s). Normalmente, isso é muito maior que a mediana. Dito isto, não quero vender em excesso esse método, pois permaneceu uma falta significativa de ajuste nos valores mais extremos da cauda.
Hyndman, et al. ( Http://robjhyndman.com/papers/sig-alternate.pdf ), propõem um QR alternativo que eles denominam, aumentando a regressão quantílica aditiva . Sua abordagem constrói modelos em toda uma gama ou grade de quantis, produzindo estimativas ou previsões probabilísticas que podem ser avaliadas com qualquer uma das distribuições de valor extremo, por exemplo, Cauchy, Levy-stable, qualquer que seja. Ainda não empreguei o método deles, mas parece promissor.
Outra abordagem para modelagem de valor extremo é conhecida como POT ou modelos de pico acima do limite. Isso envolve definir um limite ou ponto de corte para uma distribuição empírica de valores e modelar apenas os maiores valores que ficam acima do ponto de corte com base em um GEV ou distribuição generalizada de valores extremos. A vantagem dessa abordagem é que qualquer possível valor extremo futuro pode ser calibrado ou localizado com base nos parâmetros do modelo. No entanto, o método tem a desvantagem óbvia de não estar usando o PDF completo.
Finalmente, em um artigo de 2013, JP Bouchaud propõe o RFIM (modelo de isenção de campo aleatório) para modelar informações complexas, exibindo criticidade e comportamentos de cauda pesada, como pastoreio, tendências, avalanches e assim por diante. Bouchaud se enquadra em uma classe de polímatos que deve incluir nomes como Mandelbrot, Shannon, Tukey, Turing etc. Eu posso afirmar que estou muito intrigado com a discussão dele e, ao mesmo tempo, ser intimidado pelos rigores envolvidos na implementação de suas sugestões. . https://www.researchgate.net/profile/Jean-Philippe_Bouchaud/publication/230788728_Crises_and_Collective_Socio-Economic_Phenomena_Simple_Models_and_Challenges/links/5682d40008ae051f9aee7or9=pdf?inViewer&et=pt_BR
fonte