Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Реалізація Похідних у Python | Математичний Аналіз
Математика для науки про дані

bookРеалізація Похідних у Python

У Python можна обчислювати похідні символічно за допомогою sympy та візуалізувати їх за допомогою matplotlib.

1. Символічне обчислення похідних

# Define symbolic variable x
x = sp.symbols('x')
# Define the functions
f1 = sp.exp(x)  
f2 = 1 / (1 + sp.exp(-x))  
# Compute derivatives symbolically
df1 = sp.diff(f1, x)  
df2 = sp.diff(f2, x)

Пояснення:

  • Ми визначаємо x як символічну змінну за допомогою sp.symbols('x');
  • Функція sp.diff(f, x) обчислює похідну функції f за змінною x;
  • Це дозволяє алгебраїчно маніпулювати похідними у Python.

2. Обчислення та побудова графіків функцій і їхніх похідних

# Convert symbolic functions to numerical functions for plotting
f1_lambda = sp.lambdify(x, f1, 'numpy')
df1_lambda = sp.lambdify(x, df1, 'numpy')
f2_lambda = sp.lambdify(x, f2, 'numpy')
df2_lambda = sp.lambdify(x, df2, 'numpy')

Пояснення:

  • sp.lambdify(x, f, 'numpy') перетворює символьну функцію на числову функцію, яку можна обчислювати за допомогою numpy;
  • Це необхідно, оскільки matplotlib та numpy працюють з числовими масивами, а не з символьними виразами.

3. Виведення значень похідних у ключових точках

Для перевірки обчислень виводимо значення похідних при x = [-5, 0, 5].

# Evaluate derivatives at key points
test_points = [-5, 0, 5]
for x_val in test_points:
    print(f"x = {x_val}: e^x = {f2_lambda(x_val):.4f}, e^x' = {df2_lambda(x_val):.4f}")
    print(f"x = {x_val}: sigmoid(x) = {f4_lambda(x_val):.4f}, sigmoid'(x) = {df4_lambda(x_val):.4f}")
    print("-" * 50)

1. Чому ми використовуємо sp.lambdify(x, f, 'numpy') при побудові графіків похідних?

2. Порівнюючи графіки f(x)=exf(x) = e^x та його похідної, що з наведеного є правильним?

question mark

Чому ми використовуємо sp.lambdify(x, f, 'numpy') при побудові графіків похідних?

Select the correct answer

question mark

Порівнюючи графіки f(x)=exf(x) = e^x та його похідної, що з наведеного є правильним?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 4

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

Can you explain the difference between symbolic and numerical differentiation?

How does the derivative of the sigmoid function behave at different x values?

Can you summarize the key points from the video explanation?

Awesome!

Completion rate improved to 1.96

bookРеалізація Похідних у Python

Свайпніть щоб показати меню

У Python можна обчислювати похідні символічно за допомогою sympy та візуалізувати їх за допомогою matplotlib.

1. Символічне обчислення похідних

# Define symbolic variable x
x = sp.symbols('x')
# Define the functions
f1 = sp.exp(x)  
f2 = 1 / (1 + sp.exp(-x))  
# Compute derivatives symbolically
df1 = sp.diff(f1, x)  
df2 = sp.diff(f2, x)

Пояснення:

  • Ми визначаємо x як символічну змінну за допомогою sp.symbols('x');
  • Функція sp.diff(f, x) обчислює похідну функції f за змінною x;
  • Це дозволяє алгебраїчно маніпулювати похідними у Python.

2. Обчислення та побудова графіків функцій і їхніх похідних

# Convert symbolic functions to numerical functions for plotting
f1_lambda = sp.lambdify(x, f1, 'numpy')
df1_lambda = sp.lambdify(x, df1, 'numpy')
f2_lambda = sp.lambdify(x, f2, 'numpy')
df2_lambda = sp.lambdify(x, df2, 'numpy')

Пояснення:

  • sp.lambdify(x, f, 'numpy') перетворює символьну функцію на числову функцію, яку можна обчислювати за допомогою numpy;
  • Це необхідно, оскільки matplotlib та numpy працюють з числовими масивами, а не з символьними виразами.

3. Виведення значень похідних у ключових точках

Для перевірки обчислень виводимо значення похідних при x = [-5, 0, 5].

# Evaluate derivatives at key points
test_points = [-5, 0, 5]
for x_val in test_points:
    print(f"x = {x_val}: e^x = {f2_lambda(x_val):.4f}, e^x' = {df2_lambda(x_val):.4f}")
    print(f"x = {x_val}: sigmoid(x) = {f4_lambda(x_val):.4f}, sigmoid'(x) = {df4_lambda(x_val):.4f}")
    print("-" * 50)

1. Чому ми використовуємо sp.lambdify(x, f, 'numpy') при побудові графіків похідних?

2. Порівнюючи графіки f(x)=exf(x) = e^x та його похідної, що з наведеного є правильним?

question mark

Чому ми використовуємо sp.lambdify(x, f, 'numpy') при побудові графіків похідних?

Select the correct answer

question mark

Порівнюючи графіки f(x)=exf(x) = e^x та його похідної, що з наведеного є правильним?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 4
some-alt