Os prós e os contras de suavizar o spline

11

Eu tenho uma pergunta geral. Recentemente, acabei de aprender Expansão e Regularização Básica. Existem várias técnicas interessantes, incluindo: spline cúbico, spline natural, spline b e spline de suavização .

A questão é: quais são os prós e os contras (se houver) do spline de suavização em comparação com o spline cúbico e natural "típico" em que os usuários precisam selecionar os nós?

Bem, geralmente é estúpido perguntar às pessoas qual método é melhor sem o contexto dos problemas reais. Portanto, estou apenas perguntando, com base em suas experiências, qual é a melhor?

Um dos profissionais que posso ver é: a técnica de suavização de spline evita selecionar os nós.

penpen926
fonte

Respostas:

7

A terminologia dos splines pode ser confusa (pelo menos eu acho), pois exatamente o que as pessoas querem dizer quando usam "spline cúbico", por exemplo, depende do tipo de spline cúbico; podemos ter, por exemplo, splines de suavização cúbicos e splines de regressão cúbicos (penalizados).

O que esboço abaixo é retirado das seções 5.1.2 e 5.2 de Wood (2017).

Um spline interpolado diz que , pois interpola as observações por meio de uma função composta de seções de polinômios cúbicos unidos, de modo que o spline seja contínuo para a segunda derivada.g ( x i ) = y i y ig(xi)g(xi)=yiyi

Um spline de suavização cúbica visa equilibrar o ajuste dos dados com a produção de uma função suave; o objetivo não é interpolar os dados que surgem na interpolação de splines. Em vez de definir , um spline de suavização cúbico atua como parâmetros livres a serem estimados para minimizar (Wood, 2017) ng(xi)=yin

i=1n{yig(xi)}2+λg(x)2dx

onde a primeira parte é uma medida do ajuste dos dados, enquanto a segunda parte é uma penalidade contra a ondulação (a integral resume a segunda derivada ao quadrado do spline como uma medida da curvatura ou ondulação, com que rapidez a curva é mudança de inclinação). Podemos pensar em wiggliness como complexidade, de modo que a função inclua uma penalidade contra suavizações excessivamente complexas.

Pode-se mostrar que uma spline cúbica de suavização , de todas as funções possíveis , é a função que minimiza o critério acima (uma prova é fornecida em Wood, 2017, seção 5.1.2 pp. 198).fg(x)f

Como em uma spline interpoladora, uma spline de suavização cúbica possui nós localizados em cada par de observação , . Mencionei anteriormente que um spline de suavização tem parâmetros livres; existem tantos parâmetros quanto dados. No entanto, o efeito de , a penalidade contra suavizações excessivamente onduladas, é produzir um spline que é muito mais suave do que o implícito se usasse graus de liberdade (Wood 2017).y i n λ nxiyinλn

Esse é o principal negativo do lado de suavizar splines. Você precisa estimar quantos parâmetros tiver dados e, no entanto, o efeito de muitos desses parâmetros geralmente será baixo devido à penalidade contra ajustes excessivamente complexos (ondulados).

Equilibrar isso é o fato de que a escolha de nós no spline de suavização é atendida, porque não há escolha.

Passando para a configuração de spline de regressão penalizada, agora temos a escolha de onde colocar os nós, mas podemos escolher quantos nós usar. Como podemos decidir se essa é uma compensação útil, se é benéfico ajustar o spline com um número reduzido de nós, mesmo que tenhamos que decidir quantos e onde colocá-los?

Em uma spline de regressão penalizada, em vez de pensar em nós, pense na spline como sendo composta de funções básicas; essas são pequenas funções, cada uma com um coeficiente, cuja combinação linear fornece o valor do spline para um dado . A escolha agora é quantas funções serão usadas para modelar a resposta com o número sendo muito menor que o número de dados . A teoria subjacente a essa escolha é um pouco limitada ou restrita a casos ou abordagens especiais para estimar o valor de mas a idéia geral é que o número de funções básicas necessárias cresce apenas lentamente com k nxiknnλn para alcançar o desempenho ideal representado pela suavização de splines (resumido em Wood 2017).

Em geral, onde os nós são realmente distribuídos pelos dados de uma spline de regressão cúbica não tem muito efeito sobre a spline ajustada. As escolhas típicas são colocar nós uniformemente ao longo do intervalo de , ou colocar nós nos quantis da distribuição de . Se você tiver uma distribuição muito desigual de observações no intervalo de , seria um desperdício colocar nós uniformemente sobre para que você possa concentrá-los onde tiver dados. Alternativamente, transformar de alguma maneira pode uniformizar a distribuição, de modo que é possível colocar nós de maneira uniforme novamente.x x x xk1xxxxx

Ao ajustar um modelo de spline em grandes dimensões, digamos, uma spline de duas variáveis, a colocação do nó é mais problemática se os pares de estiverem limitados a alguma região do espaço abrangido por e ; se os dados não se originarem em grandes partes do espaço, a colocação de nós uniformemente resultará em muitos nós localizados longe do suporte dos dados. O que é um desperdício. Estão disponíveis estratégias para lidar com, como algoritmos de preenchimento de espaço ou usando splines-P e penalidades esparsas baseadas em derivadas que permitem uma estimativa eficiente, mesmo em dados distribuídos de maneira desigual (por exemplo, Wood 2016) x 1 x 2x1i,x2ix1x2

Referências

Wood, SN 2016. P-splines com penalidades baseadas em derivativos e suavização do produto tensorial de dados desigualmente distribuídos. Estado. Comput. 1–5. doi: 10.1007 / s11222-016-9666-x ( acesso aberto )

Wood, SN 2017. Modelos Aditivos Generalizados: Uma Introdução com R, Segunda Edição, CRC Press.

Gavin Simpson
fonte
Uma pergunta de acompanhamento sobre a afirmação "um spline de suavização possui 𝑛 parâmetros livres; há tantos parâmetros quanto dados". E se eu tiver duas variáveis ​​no modelo aditivo, f (x1) ef (x2), ambas são splines de suavização. Isso significa que o número de parâmetros a serem estimados é 2n?
vtshen 01/07/19
Acredito que isso deva ser mais geralmente declarado, pois existem tantos parâmetros para estimar quanto combinações únicas dos dados. Se duas ou mais observações tiverem os mesmos valores um do outro para e , precisamos apenas de um nó para essa combinação de dados. x 2x1x2
Gavin Simpson