Реалізація Похідних у 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)=ex та його похідної, що з наведеного є правильним?
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
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
Реалізація Похідних у 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)=ex та його похідної, що з наведеного є правильним?
Дякуємо за ваш відгук!