Обчислення другої похідної по одній змінній

Матеріал із MachineLearning.

Зміст

Постановка математичного завдання

Розглянемо задачу обчислення другої похідної функції. Якщо завдання точно вирішити або не вдається, або дуже складно, то доводиться використовувати методи чисельного диференціювання.

У цьому звіті теоретично обґрунтовуються наближені формули для обчислення похідної:

Ці формули можна використовувати для обчислення приватної похідної функції багатьох змінних.

Після цього наводяться оцінки помилок формул (1) та (2), а також розглядається питання про вибір оптимального кроку.

Виклад методу

Визначення

Нехай у певній околиці точки визначено функцію . Похідної функції в точці називається межа, якщо вона існує,

Другий похідний функції у точці називається похідна функції у точці . Аналогічно визначаються похідні та вищих порядків.

Поліноміальні формули

При чисельному диференціювання функцію апроксимують функцією, що легко обчислюється, і приблизно вважають. При цьому можна використовувати різні способи апроксимації. Розглянемо найпростіший випадок – апроксимацію інтерполяційним багаточленом Ньютона.

Нехай задана сітка – досліджувана функція. Введемо позначення і введемо поняття розділені різниці, що визначаються таким чином:

Можна довести, що

Запишемо інтерполяційний багаточлен Ньютона і продиференціюємо його почленно:

Загальна формула набуде наступного вигляду:

Обриваючи ряд деяких членів, отримаємо наближений вираз для відповідної похідної. Найбільш прості вирази отримаємо, залишаючи у формулі (3) тільки перший член:

Дослідження точності отриманих виразів за чисельних розрахунків зручноробити з допомогою апостеріорної оцінки, за швидкістю зменшення членів низки (3). Якщо крок сітки досить малий, похибка близька до першого відкинутому члену. Нехай ми використовуємо вузли. Тоді перший відкинутий член містить розділену різницю, яка згідно з (4) приблизно дорівнює. Перед нею стоїть сума творів різних множників; кожен твір містить множників, а вся сума складається із доданків. Звідси випливає оцінка похибки формули (3) з вузлами:

Зокрема, якщо сітка рівномірна, то звідки

Варто зауважити, що суворе апріорне дослідження похибки формули (3), аналогічне висновку залишкового члена багаточлена Ньютона у формі Коші, для довільного розташування вузлів призводить до тієї ж оцінки (5).

Таким чином, порядок точності формули (3) по відношенню до кроку сітки дорівнює числу залишених у ній членів, або, що те саме, він дорівнює числу вузлів інтерполяції мінус порядок похідної. Тому мінімальне число вузлів, необхідне обчислення -й похідної, дорівнює ; воно призводить до формул (4) та забезпечує перший порядок точності. Ці висновки відповідають загальному принципу: при почленном диференціюванні ряду швидкість його збіжності зменшується.

Найпростіші формули (випадок рівномірної сітки)

Розглянемо рівномірну сітку. При цьому вид формул (3) помітно спрощується, а точність нерідко підвищується.

Розглянемо спочатку причину підвищення точності. Залишковий член загальної формули (3) - це багаточлен ступеня щодо . Якщо дорівнює кореню цього многочлена, то головний залишковий член перетворюється на нуль, тобто у цій точці формула має порядок точності на одиниця більше, ніж згідно з оцінкою (6). Ці точки підвищеної точності позначатимемо , де - порядок похідної, а - число залишених у формулі(3) членів. Очевидно, -членна формула має p точок підвищеної точності.

У одночленної формули (4) для -ї похідної точка підвищеної точності на довільній сітці визначається учловием , що дає

у цій точці одночлена формула має похибку замість звичайної. Для двочленної формули завдання знаходження точок підвищеної точності призводить до квадратного рівняння, коріння якого дійсне, але формула для їх знаходження громіздка. Якщо 2" alt= "p>2" />, то знайти точки підвищеної точності дуже складно, за винятком одного окремого випадку, який ми зараз і розглянемо.

Твердження.Нехай непарно, а вузли у формулі (4) обрані так, що вони розташовані симетрично щодо точки ; тоді є однією з точок підвищеної точності.

На довільній сітці умова симетрії реалізується лише у виняткових випадках. Але якщо сітка рівномірна, кожен її вузол симетрично оточений сусідніми вузлами. Це дозволяється скласти нескладні формули хорошої точності обчислення похідних у вузлах сітки.

Наприклад, візьмемо три сусідні вузли , і . і обчислимо першу та другу похідну в середньому вузлі. Виражаючи в одночленних формулах (4) розділені різниці через вузлові значення функції легко отримаємо:

Аналогічно можна вивести формули вищого порядку або більш високих похідних. Наприклад, формула для другої похідної в центральній точці по п'яти вузлах:

Зауважимо, що формули (8) та (9) написані для випадку рівномірної сітки; застосування їх на нерівномірній сітці призведе до грубої помилки. Також формули (8) і (9) збігаються з формулами (1) та (2).

На рівномірній сітці для апріона оцінки точності формул часто застосовують спосіб розкладання за формулою Тейлора-Макрорена. Припустимо, наприклад, щофункція має безперервну четверту похідну, і виразимо значення функції у вузлах через значення функції та її похідних у центрі симетрії вузлів (у даному випадку цим центром є вузол):

де - то точка інтервалу , а - деяка точка ітервала . Підставляючи ці розкладання у другу різницю, що стоїть у правій частині формули (8) для другої похідної маємо:

Це підтверджує раніше зроблену оцінку та уточнює величину залишкового члена, який виявився рівним . Такий спосіб отримання залишкового члена простіший, ніж безпосереднє обчислення за формулою (3).

Вибір оптимального кроку (регуляризація методу)

обчислення

При чисельному диференціюванні доводиться віднімати одне з одного близькі значення функцій. Це призводить до знищення перших значущих цифр, тобто втрати частини достовірних знаків чила. Якщо значення функції відомі з малою точністю, то постає питання - чи залишиться у відповіді хоча б один достовірний знак?

Для відповіді це питання досліджуємо помилки при чисельному диференціюванні. При інтерполюванні узагальненим багаточленом похідна порядку визначається згідно (4), (5) формулою типу

Якщо формула має порядок точності, то, значить, її залишковий член дорівнює. Цей залишковий член визначає похибку методу, і він необмежено зменшується при . Його залежність від кроку зображено на рис.1 жирною лінією.

Але є ще непохитна похибка, пов'язана з похибкою функції. Оскільки точний вид цієї похибки невідомий, можна оцінити лише мажоранту непереборної похибки; вона необмежено зростає при (тонка лінія на рис.1). Фактично ж непереборна похибка нерегулярно залежатиме від величини кроку, безладно осцилюючи в межах, що визначаються мажорантою (крапки на рис.1).

Поки крок досить великий, при його спаданні непереборна похибка мала порівняно з похибкою методу; тому повна похибка зменшується. При подальшому зменшенні кроку непереборна похибка стає помітною, що проявляється в не зовсім регулярній залежності результатів обчислень від величини кроку. Нарешті, при досить малому кроці непереборна похибка стає переважаючою, і за подальшому зменшенні кроку результат обчислень стає менш достовірним.

Повна похибка мажорується сумою (штрихова крива на рис.1). Оптимальним буде крок, який відповідає цій кривій. Неважко підрахувати, що

Менший крок невигідний, а менша похибка, взагалі кажучи, недосяжна (хоча окремі обчислення випадково виявляться точнішими, але ми не зможемо цього дізнатися). Ця мінімальна помилка тим менша, чим менша похибка вхідних даних і порядок обчислюваної похідної і чим вищий порядок точності формули.

Очевидно, можна отримати як завгодно високу точність результату, якщо крок прагне до нуля, будучи завжди не менше . Але якщо припустити, то результат граничного переходу може бути неправильним.

Ця тонкість пов'язані з некоректністю завдання диференціювання. Розглянемо похибку вхідних даних виду. Вона призводить до похибки першої похідної. При похибці функції необмежено зменшується, а похибка похідної у тій нормі необмежено зростає. Отже, немає безперервної залежності похідної функції, тобто диференціювання некоректно. Особливо це позначається при знаходженні похідних високого порядку.

Викладений вище спосіб визначення оптимального кроку та заборона вести розрахунок кроком менше оптимального є деякий спосіб регуляризації диференціювання, такзвана регуляризація за кроком.

Варто зауважити, що зі зростанням кількості вузлів у сітці для обчислення похідних, константи і в формулах (10) підвищуються, тому збільшення розумно лише в певних межах.

Числові приклади

Далі наведено графіки залежності помилки обчислення від кроку: