Essa questão foi inspirada por uma consulta de um cliente sobre duas de nossas funções de ajuste de dados não paramétricos: NxLOCREG(.) e NxKREG(.). O cliente escreveu:
Consulta 1:
"Preciso de ajuda para entender as funções NxLOCREG e NxKREG.
- Para NxLOCREG e NxKREG - Se Y tiver 100 pontos de dados e Alpha = 0,333, isso significa que o algoritmo está analisando os últimos 33 pontos de dados ou uma distribuição a cada três pontos?
- Só posso usar até a ordem polinomial 3 (cúbica). Qualquer ordem maior retorna como #NUM! Os algoritmos permitem ordens mais altas?
- Não sei bem a diferença entre NxLOCREG e NxKREG. Você pode me dar uma breve explicação?"
A função NxLOCREG(.) implementa um algoritmo de regressão localizada - LOESS, também conhecido como filtro Savitzky-Golay.
A função NxKREG(.) implementa uma regressão de mínimos quadrados ponderados.
As duas funções são muito semelhantes, mas NxLOCREG(.) tem um argumento adicional: Alpha ou H, que pode assumir um valor entre zero (exclusivo) e 1 (inclusivo). Como resultado, a função NxLOCREG seleciona os pontos de dados H*N mais próximos, enquanto NxKREG (.) sempre inclui todo o conjunto de dados (ou seja, N).
Em mais detalhes, dado um valor-alvo X, o procedimento de regressão do kernel é o seguinte:
- Calcule a distância entre o valor-alvo e os pontos de dados na amostra.
- Classifique os pontos de dados com base em sua distância em ordem crescente.
- Selecione o conjunto de dados de entrada da regressão:
- (Caso NxLOCREG) Selecione os pontos de dados H*N mais próximos (ou seja, os primeiros).
- (Caso NxKREG) Selecione todos os N pontos de dados.
- Calcule os pesos dos pontos de dados selecionados usando a função Kernel fornecida.
- Conduzir o modelo de regressão de mínimos quadrados ponderados.
- Calcule o valor da regressão no valor X.
O procedimento/algoritmo usa os pontos de dados H*N que estão mais próximos do valor-alvo, de modo que cada valor construirá seu próprio modelo de regressão com um conjunto de dados (possivelmente) diferente.
Se Alpha = 1,0, mantendo todos os outros argumentos iguais, as funções NxKREG(.) e NxLOCREG(.) retornarão resultados idênticos.
Atualmente, as funções NxLOCREG(.) e NxKREG(.) suportam polinômios de ordem até 3 (cúbicos).
Independentemente da função de kernel de ponderação escolhida, precisamos de um valor para a largura de banda (também conhecida como parâmetro de suavização). O NumXL usa um método de seleção de largura de banda baseado em dados, minimizando o RMSE para validação cruzada.
Em resumo, para uma determinada largura de banda, calculamos o valor de regressão para cada ponto de dados (usando a validação cruzada leave-one-out) e calculamos o RMSE entre os valores de regressão e os valores reais.
Consulta 2:
"Portanto, se tivermos um pico em nossos dados, alguns dos pontos do pico podem não estar no conjunto de dados da regressão."
Isso dependerá de como você define "Spike". Se Spike for uma referência a um outlier (um valor Y grande), então esse método incluirá pontos de dados com outliers. Ainda assim, esses pontos de dados podem ser ponderados com base em sua distância euclidiana do valor-alvo.
Por outro lado, se Spike for uma referência a um ponto de dados remoto ao longo do domínio x, esses pontos de dados remotos serão significativamente ponderados na regressão.
Consulta 3:
"Parece que a suavização padrão do gráfico de dispersão do Excel se baseia em uma função LOESS. Se eu quiser calcular os valores intermediários manualmente, qual é a abordagem da função padrão do Excel para produzir essa suavização localizada?"
Sim, acreditamos que o Microsoft Excel usa um algoritmo LOESS para gerar as linhas suavizadas no gráfico de dispersão. Você pode usar a função NxLOCREG(.), mas não podemos ter certeza dos valores dos parâmetros usados, por exemplo, a função kernel, a ordem polinomial ou o valor alfa.
Faça o download de um aplicativo totalmente funcional e gratuito Teste de 14 dias do NumXL para testar ou aplicar essas funções a seus próprios dados.
Certifique-se de dar uma olhada no Dicas e truques e Ajuste de dados para obter mais artigos que possam lhe interessar.
Comentários
iniciar sessão para comentar.