Приведите два различных способа аппроксимации функции f(x) на отрезке: полиномиальная интерполяция и разложение по ортонормированному базису. Объясните случаи переобучения и колебаний (Runge), предложите критерии выбора степени полинома или числа базисных функций
Два распространённых способа аппроксимации функции f(x)f(x)f(x) на отрезке и связанные с ними вопросы (переобучение, колебания) — кратко, с формулами и критериями выбора порядка. 1) Полиномиальная интерполяция - Интерполяционный многочлен в форме Лагранжа: pn(x)=∑i=0nf(xi) ℓi(x),ℓi(x)=∏j≠ix−xjxi−xj.
p_n(x)=\sum_{i=0}^n f(x_i)\,\ell_i(x),\qquad \ell_i(x)=\prod_{j\ne i}\frac{x-x_j}{x_i-x_j}. pn(x)=i=0∑nf(xi)ℓi(x),ℓi(x)=j=i∏xi−xjx−xj.
- Оценка погрешности (для гладкой fff): f(x)−pn(x)=f(n+1)(ξ)(n+1)!∏i=0n(x−xi),ξ∈отрезок.
f(x)-p_n(x)=\frac{f^{(n+1)}(\xi)}{(n+1)!}\prod_{i=0}^n (x-x_i),\quad \xi\in\text{отрезок}. f(x)−pn(x)=(n+1)!f(n+1)(ξ)i=0∏n(x−xi),ξ∈отрезок.
- Проблема Runge: при равномерных узлах и росте nnn интерполянты могут сильно колебаться на концах (пример: f(x)=11+25x2f(x)=\frac{1}{1+25x^2}f(x)=1+25x21). Причина — большая величина произведения ∏(x−xi)\prod(x-x_i)∏(x−xi) и плохая обусловленность системы (матрица Вандермонда Vij=xijV_{ij}=x_i^jVij=xij имеет быстро растущую обусловленность). - Практические приёмы уменьшения колебаний: - выбирать узлы Чебышёва (например, Чебышёвские–Лобatto или Гаусса): xk=coskπnx_k=\cos\frac{k\pi}{n}xk=cosnkπ или xk=cos(2k+1)π2(n+1)x_k=\cos\frac{(2k+1)\pi}{2(n+1)}xk=cos2(n+1)(2k+1)π; - использовать численно устойчивые формы (Ньютон с делёнными разностями) или ортогональные базисы вместо степеней; - заменить глобальный многочлен на кусочно-полиномиальную аппроксимацию (сплайны). - Критерии выбора степени nnn (интуитивно и практически): - условие на остаток: если можно оценить ∥f(n+1)∥∞\|f^{(n+1)}\|_\infty∥f(n+1)∥∞, выбрать nnn так, чтобы максимум правой части удовлетворял требуемой точности; - следить за обусловленностью: не допускать слишком большого κ(V)\kappa(V)κ(V); - кросс-валидация/контроль остатков на валидационной сетке — выбирать минимальный nnn, при котором остатки не уменьшаются существенно или начинают расти (признак переобучения); - когда данные шумные — ограничивать nnn или использовать регуляризацию / сплайны. 2) Разложение по ортонормированному базису (спектральные разложения / аппроксимация по ортогональным многочленам) - Модель: fN(x)=∑k=0Nckϕk(x),⟨ϕi,ϕj⟩=δij.
f_N(x)=\sum_{k=0}^N c_k\phi_k(x),\qquad \langle\phi_i,\phi_j\rangle=\delta_{ij}. fN(x)=k=0∑Nckϕk(x),⟨ϕi,ϕj⟩=δij.
Для непрерывного проекции в L2L^2L2: ck=⟨f,ϕk⟩c_k=\langle f,\phi_k\rangleck=⟨f,ϕk⟩. - В дискретном случае (данные в узлах xjx_jxj) — задача МНК: minc∥Ac−b∥22,Ajk=ϕk(xj), bj=f(xj).
\min_{c}\|A c-b\|_2^2,\qquad A_{jk}=\phi_k(x_j),\ b_j=f(x_j). cmin∥Ac−b∥22,Ajk=ϕk(xj),bj=f(xj).
При плохой обусловленности используют ортогонализацию или регуляризацию. - Преимущества: при гладкой функции коэффициенты ckc_kck быстро убывают (спектральная сходимость), численная устойчивость выше при ортонормальном базисе; можно легко отсекать высокочастотные члены (тракция) для борьбы с шумом. - Ограничения: при разрывных/негладких функциях — явления типа Гиббса; при шумных данных — высокие порядки будут подгонять шум (переобучение). - Регуляризация (Tikhonov): минимизировать ∥Ac−b∥22+λ∥Lc∥22
\|A c-b\|_2^2+\lambda\|L c\|_2^2 ∥Ac−b∥22+λ∥Lc∥22
(часто L=IL=IL=I), решает проблему усиления шума при больших NNN. - Критерии выбора числа базисных функций NNN: - анализ убывания коэффициентов: выбрать наименьшее NNN, при котором ∣ck∣|c_k|∣ck∣ стали малы (например, ∣ck∣<ε|c_k|<\varepsilon∣ck∣<ε); - "энергетический" критерий: выбрать NNN такое, что ∑k=0N∣ck∣2∑k=0∞∣ck∣2≥1−ε\displaystyle\frac{\sum_{k=0}^N |c_k|^2}{\sum_{k=0}^\infty |c_k|^2}\ge 1-\varepsilon∑k=0∞∣ck∣2∑k=0N∣ck∣2≥1−ε (практически суммируют до численного порога); - кросс-валидация / L-curve (график ∥Ac−b∥\|Ac-b\|∥Ac−b∥ против ∥c∥\|c\|∥c∥) — выбирать поворот кривой; - если известен уровень шума σ\sigmaσ, применять принцип несоответствия: выбирать NNN (или λ\lambdaλ), при котором остаток примерно равен уровню шума; - информационные критерии (AIC/BIC) при статистической постановке. Краткая сводка по переобучению и Runge: - Переобучение: модель (слишком большой nnn или NNN) повторяет шум данных; проявляется в малых остатках на обучении и больших на валидации. Борьба: кросс-валидация, регуляризация, ограничение числа базисных функций. - Runge: специфическая проблема глобальной интерполяции на равномерных узлах — колебания из-за структуры полинома и плохой обусловленности; борются выбором узлов (Чебышёв), заменой на сплайны или использованием ортонормированных базисов с отсечением старших членов. Практическое правило: - Если функция гладкая и без разрывов — спектральные/ортонормированные разложения с усечением (truncation) дают очень быструю сходимость. - Если имеются локальные особенности/много данных — предпочтительнее кусочно-полиномиальные подходы (сплайны) или локальные аппроксимации. - Всегда контролируйте остаток на отложенной выборке и поведение коэффициентов; применяйте регуляризацию при шумных данных.
1) Полиномиальная интерполяция
- Интерполяционный многочлен в форме Лагранжа:
pn(x)=∑i=0nf(xi) ℓi(x),ℓi(x)=∏j≠ix−xjxi−xj. p_n(x)=\sum_{i=0}^n f(x_i)\,\ell_i(x),\qquad
\ell_i(x)=\prod_{j\ne i}\frac{x-x_j}{x_i-x_j}.
pn (x)=i=0∑n f(xi )ℓi (x),ℓi (x)=j=i∏ xi −xj x−xj . - Оценка погрешности (для гладкой fff):
f(x)−pn(x)=f(n+1)(ξ)(n+1)!∏i=0n(x−xi),ξ∈отрезок. f(x)-p_n(x)=\frac{f^{(n+1)}(\xi)}{(n+1)!}\prod_{i=0}^n (x-x_i),\quad \xi\in\text{отрезок}.
f(x)−pn (x)=(n+1)!f(n+1)(ξ) i=0∏n (x−xi ),ξ∈отрезок. - Проблема Runge: при равномерных узлах и росте nnn интерполянты могут сильно колебаться на концах (пример: f(x)=11+25x2f(x)=\frac{1}{1+25x^2}f(x)=1+25x21 ). Причина — большая величина произведения ∏(x−xi)\prod(x-x_i)∏(x−xi ) и плохая обусловленность системы (матрица Вандермонда Vij=xijV_{ij}=x_i^jVij =xij имеет быстро растущую обусловленность).
- Практические приёмы уменьшения колебаний:
- выбирать узлы Чебышёва (например, Чебышёвские–Лобatto или Гаусса): xk=coskπnx_k=\cos\frac{k\pi}{n}xk =cosnkπ или xk=cos(2k+1)π2(n+1)x_k=\cos\frac{(2k+1)\pi}{2(n+1)}xk =cos2(n+1)(2k+1)π ;
- использовать численно устойчивые формы (Ньютон с делёнными разностями) или ортогональные базисы вместо степеней;
- заменить глобальный многочлен на кусочно-полиномиальную аппроксимацию (сплайны).
- Критерии выбора степени nnn (интуитивно и практически):
- условие на остаток: если можно оценить ∥f(n+1)∥∞\|f^{(n+1)}\|_\infty∥f(n+1)∥∞ , выбрать nnn так, чтобы максимум правой части удовлетворял требуемой точности;
- следить за обусловленностью: не допускать слишком большого κ(V)\kappa(V)κ(V);
- кросс-валидация/контроль остатков на валидационной сетке — выбирать минимальный nnn, при котором остатки не уменьшаются существенно или начинают расти (признак переобучения);
- когда данные шумные — ограничивать nnn или использовать регуляризацию / сплайны.
2) Разложение по ортонормированному базису (спектральные разложения / аппроксимация по ортогональным многочленам)
- Модель:
fN(x)=∑k=0Nckϕk(x),⟨ϕi,ϕj⟩=δij. f_N(x)=\sum_{k=0}^N c_k\phi_k(x),\qquad \langle\phi_i,\phi_j\rangle=\delta_{ij}.
fN (x)=k=0∑N ck ϕk (x),⟨ϕi ,ϕj ⟩=δij . Для непрерывного проекции в L2L^2L2: ck=⟨f,ϕk⟩c_k=\langle f,\phi_k\rangleck =⟨f,ϕk ⟩.
- В дискретном случае (данные в узлах xjx_jxj ) — задача МНК:
minc∥Ac−b∥22,Ajk=ϕk(xj), bj=f(xj). \min_{c}\|A c-b\|_2^2,\qquad A_{jk}=\phi_k(x_j),\ b_j=f(x_j).
cmin ∥Ac−b∥22 ,Ajk =ϕk (xj ), bj =f(xj ). При плохой обусловленности используют ортогонализацию или регуляризацию.
- Преимущества: при гладкой функции коэффициенты ckc_kck быстро убывают (спектральная сходимость), численная устойчивость выше при ортонормальном базисе; можно легко отсекать высокочастотные члены (тракция) для борьбы с шумом.
- Ограничения: при разрывных/негладких функциях — явления типа Гиббса; при шумных данных — высокие порядки будут подгонять шум (переобучение).
- Регуляризация (Tikhonov): минимизировать
∥Ac−b∥22+λ∥Lc∥22 \|A c-b\|_2^2+\lambda\|L c\|_2^2
∥Ac−b∥22 +λ∥Lc∥22 (часто L=IL=IL=I), решает проблему усиления шума при больших NNN.
- Критерии выбора числа базисных функций NNN:
- анализ убывания коэффициентов: выбрать наименьшее NNN, при котором ∣ck∣|c_k|∣ck ∣ стали малы (например, ∣ck∣<ε|c_k|<\varepsilon∣ck ∣<ε);
- "энергетический" критерий: выбрать NNN такое, что ∑k=0N∣ck∣2∑k=0∞∣ck∣2≥1−ε\displaystyle\frac{\sum_{k=0}^N |c_k|^2}{\sum_{k=0}^\infty |c_k|^2}\ge 1-\varepsilon∑k=0∞ ∣ck ∣2∑k=0N ∣ck ∣2 ≥1−ε (практически суммируют до численного порога);
- кросс-валидация / L-curve (график ∥Ac−b∥\|Ac-b\|∥Ac−b∥ против ∥c∥\|c\|∥c∥) — выбирать поворот кривой;
- если известен уровень шума σ\sigmaσ, применять принцип несоответствия: выбирать NNN (или λ\lambdaλ), при котором остаток примерно равен уровню шума;
- информационные критерии (AIC/BIC) при статистической постановке.
Краткая сводка по переобучению и Runge:
- Переобучение: модель (слишком большой nnn или NNN) повторяет шум данных; проявляется в малых остатках на обучении и больших на валидации. Борьба: кросс-валидация, регуляризация, ограничение числа базисных функций.
- Runge: специфическая проблема глобальной интерполяции на равномерных узлах — колебания из-за структуры полинома и плохой обусловленности; борются выбором узлов (Чебышёв), заменой на сплайны или использованием ортонормированных базисов с отсечением старших членов.
Практическое правило:
- Если функция гладкая и без разрывов — спектральные/ортонормированные разложения с усечением (truncation) дают очень быструю сходимость.
- Если имеются локальные особенности/много данных — предпочтительнее кусочно-полиномиальные подходы (сплайны) или локальные аппроксимации.
- Всегда контролируйте остаток на отложенной выборке и поведение коэффициентов; применяйте регуляризацию при шумных данных.