Интеграл — это одно из двух понятий. Неопределенный интеграл — семейство первообразных функции (именно первообразная, а не интеграл в целом, есть операция, обратная дифференцированию). Определенный интеграл на отрезке [a, b] измеряет накопленную величину (например, площадь под графиком) и связан с первообразной формулой Ньютона-Лейбница при выполнении ее условий. Ниже разберем два вида интегралов и чем они отличаются, основные свойства с условиями применимости, методы расчета и примеры с числами, которые проверены прогоном кода. В конце — где интегралы встречаются в программировании и машинном обучении.
Содержание
Два вида интегралов: не путать функцию и число
Слово «интеграл» покрывает два разных объекта, и их постоянно смешивают. Развести их проще всего так: неопределенный интеграл — это функция (точнее, целое семейство функций), а определенный — это число.
| Признак | Неопределенный интеграл | Определенный интеграл |
|---|---|---|
| Что это | семейство функций F(x) + C | одно число |
| Запись | ∫ f(x) dx | ∫ f(x) dx от a до b |
| Что дает | все первообразные функции f | значение накопления на [a, b] |
| Геометрия | — | площадь под графиком на [a, b] |
Здесь важно не смешать еще одну пару понятий. Первообразная — это конкретная функция F, у которой F'(x) = f(x). А неопределенный интеграл — это все первообразные сразу, они отличаются на константу: если F подходит, то и F + 5, и F — 100 тоже. Поэтому в ответе всегда пишут «+ C»: производная константы равна нулю, и восстановить ее по одной лишь f(x) нельзя.
Например, для f(x) = 2x первообразной будет x², но также x² + 1 и x² — 7. Записывают это как ∫ 2x dx = x² + C.
Определенный интеграл: площадь под кривой
Определенный интеграл ∫ f(x) dx от a до b — это предел интегральных сумм. Отрезок [a, b] делят на мелкие части, на каждой берут значение функции и умножают на длину куска, а затем складывают. Чем мельче разбиение, тем точнее сумма прямоугольников приближает площадь фигуры под графиком. Предел этих сумм при стремлении длин всех кусков к нулю и есть определенный интеграл.
Числа a и b называют пределами интегрирования (нижним и верхним). Если f(x) ≥ 0 на [a, b], интеграл равен площади криволинейной трапеции — фигуры между графиком, осью абсцисс и вертикальными прямыми x = a и x = b. В общем случае определенный интеграл дает знаковую (ориентированную) площадь: участки, где график ниже оси, вычитаются. Геометрическую площадь считают с учетом модуля и смены знака — по интегралу от |f(x)| или по кускам с разными знаками.
Интеграл существует не всегда. Достаточное условие: функция ограничена и непрерывна на [a, b] (или имеет на нем лишь конечное число разрывов). Для непрерывной функции определенный интеграл заведомо существует.
Формула Ньютона-Лейбница
На практике определенный интеграл почти никогда не считают через предел сумм вручную. Связь между двумя видами интегралов дает формула Ньютона-Лейбница:
∫ f(x) dx от a до b = F(b) — F(a),
где F — любая первообразная функции f. Строго: если f непрерывна на [a, b] и F′ = f, то ∫ f dx от a до b = F(b) — F(a). Алгоритм расчета сводится к трем шагам:
- Найти первообразную F(x) (то есть неопределенный интеграл без C).
- Подставить верхний предел b и нижний предел a.
- Вычесть: из F(b) вычесть F(a).
Константа C здесь не нужна: при вычитании F(b) + C — (F(a) + C) она сокращается.
Основные свойства
Свойства делятся по виду интеграла. Для неопределенного интеграла:
- производная интеграла равна подынтегральной функции: (∫ f(x) dx)’ = f(x);
- интеграл суммы равен сумме интегралов: ∫ (f + g) dx = ∫ f dx + ∫ g dx;
- постоянный множитель выносится за знак: ∫ k·f(x) dx = k·∫ f(x) dx.
Для определенного интеграла:
- линейность: ∫ (k·f + m·g) dx = k·∫ f dx + m·∫ g dx;
- при перестановке пределов знак меняется: ∫ f dx от a до b = -∫ f dx от b до a;
- интеграл по нулевому отрезку равен нулю: ∫ f dx от a до a = 0;
- аддитивность по отрезку: ∫ f dx от a до b = ∫ f dx от a до c + ∫ f dx от c до b.
Линейность работает всегда, когда обе функции интегрируемы. А вот вынести за знак интеграла можно только постоянный множитель: ∫ f·g dx в общем случае не равен произведению интегралов — это частая ошибка.
Методы расчета
Универсального рецепта «взять любой интеграл» нет: часть интегралов не выражается через элементарные функции вообще. Выбор метода зависит от вида подынтегрального выражения.
- Таблица интегралов. Для базовых функций первообразные известны и сведены в таблицу: ∫ x^n dx = x^(n+1)/(n+1) + C (при n не равном -1), ∫ dx/x = ln|x| + C, ∫ e^x dx = e^x + C, ∫ cos x dx = sin x + C.
- Замена переменной (подстановка). Помогает, когда под интегралом видно «функцию и ее производную». Например, ∫ 2x·e^(x²) dx: замена u = x² дает du = 2x dx, интеграл превращается в ∫ e^u du = e^u + C, то есть e^(x²) + C.
- Интегрирование по частям. Применяют для произведений разного типа функций (степень на экспоненту, на логарифм и т. п.): ∫ u dv = u·v — ∫ v du.
- Численное интегрирование. Когда первообразной в элементарных функциях нет или функция задана таблицей значений, интеграл считают приближенно — методом трапеций, методом Симпсона или Монте-Карло. Точность растет с числом разбиений.
Примеры расчета
Начнем с неопределенных интегралов — здесь достаточно таблицы и свойств.
∫ (3x² + 2x) dx = x³ + x² + C. Проверка обратным ходом: производная x³ + x² равна 3x² + 2x, совпадает с подынтегральной функцией.
Теперь определенный интеграл по формуле Ньютона-Лейбница.
∫ x² dx от 0 до 2. Первообразная F(x) = x³/3. Тогда F(2) — F(0) = 8/3 — 0 = 8/3, то есть примерно 2.667. Это площадь под параболой y = x² на отрезке [0, 2].
∫ 2x dx от 1 до 3. Первообразная x². Ответ: 3² — 1² = 9 — 1 = 8.
∫ 2x·e^(x²) dx от 0 до 1 (та же замена u = x²). Первообразная e^(x²), значит e^1 — e^0 = e — 1, примерно 1.718.
∫ x·e^x dx от 0 до 1 (по частям, u = x, dv = e^x dx). Первообразная e^x·(x — 1), поэтому e^1·(1 — 1) — e^0·(0 — 1) = 0 + 1 = 1.
Численный расчет кодом
Определенный интеграл задает математическое значение накопленной величины; при численном вычислении мы получаем его приближение с погрешностью. Интеграл ∫ e^(-x²) dx не выражается через элементарные функции, поэтому его считают численно. Метод трапеций на Python приближает площадь суммой трапеций под графиком. Для контроля рядом посчитан интеграл x² на [0, 2], у которого известно математическое значение 8/3:
import math
def trapz(f, a, b, n):
h = (b - a) / n
s = 0.5 * (f(a) + f(b))
for i in range(1, n):
s += f(a + i * h)
return s * h
# контроль: x^2 на [0, 2], точное значение 8/3 = 2.6667
print(round(trapz(lambda x: x * x, 0, 2, 1000), 4)) # Вывод: 2.6667
# e^(-x^2) на [0, 1]: элементарной первообразной нет
print(round(trapz(lambda x: math.exp(-x * x), 0, 1, 100000), 6)) # Вывод: 0.746824
Здесь n — число разбиений отрезка: для x² на [0, 2] взято n = 1000 (получаем 2.6667), для e^(-x²) на [0, 1] — n = 100000 (получаем 0.746824). Чем больше n, тем меньше погрешность: у метода трапеций на гладкой функции ошибка убывает примерно как 1/n².
Тот же интеграл можно оценить методом Монте-Карло: усреднить значения функции в случайных точках отрезка. Сид зафиксирован, чтобы результат воспроизводился:
import random, math
random.seed(42)
N = 1_000_000
total = sum(math.exp(-x * x) for x in (random.random() for _ in range(N)))
print(round(total / N, 4)) # Вывод: 0.7468
Пример выше написан для отрезка длины 1 ([0, 1]), поэтому достаточно среднего значений функции. На произвольном [a, b] среднее нужно умножить на длину отрезка (b — a):
import random
def mc_integral(f, a, b, n):
# среднее значений функции в случайных точках, умноженное на длину (b - a)
return (b - a) * sum(f(random.uniform(a, b)) for _ in range(n)) / n
random.seed(42)
# контроль: x^2 на [0, 2], точное значение 8/3 = 2.6667
print(round(mc_integral(lambda x: x * x, 0, 2, 1_000_000), 4)) # Вывод: 2.6659
То есть Монте-Карло оценивает среднее значение функции на отрезке, а интеграл получается умножением этого среднего на (b — a); при [0, 1] множитель равен 1 и пропадает. Оба метода дают около 0.7468 — это и есть приближение интеграла. Метод трапеций сходится быстрее на гладких функциях, а Монте-Карло выигрывает в задачах большой размерности, где сетку строить дорого.
Где интегралы нужны программисту и в ML
В машинном обучении и анализе данных интеграл появляется там, где величина «накапливается» по непрерывному диапазону.
- Вероятность и плотности. Для непрерывной случайной величины площадь под графиком плотности p(x) по всей области равна единице: ∫ p(x) dx = 1. Вероятность попасть в интервал — интеграл плотности по этому интервалу.
- Математическое ожидание. Среднее значение непрерывной величины — это интеграл E[X] = ∫ x·p(x) dx. Дисперсия и другие моменты считаются похоже.
- Нормировка нормального распределения. Множитель перед экспонентой в формуле гауссианы берется как раз из интеграла: ∫ e^(-x²) dx по всей оси равен √π (примерно 1.7725).
- Метрики качества. Площадь под ROC-кривой (AUC) — это интеграл. ROC AUC можно интерпретировать как вероятность того, что случайный положительный объект получит оценку выше случайного отрицательного; метрика оценивает качество ранжирования, а не выбирает рабочий порог и не отвечает за калибровку вероятностей.
Освойте тему на практике
Освоить эти сюжеты на практике помогает курс Базовая математика для цифровых профессий: производные, интегралы и основы теории вероятностей на задачах, близких к работе с данными. Посмотреть формат занятий и разобрать тему с преподавателем можно на бесплатных открытых уроках.
Смежные темы: Исследование и построение графиков функций, Случайные числа в Python, Как создать нейросеть.
Выводы
Неопределенный интеграл дает семейство первообразных F(x) + C (нахождение первообразной — операция, обратная дифференцированию), а определенный — число, равное накоплению величины на отрезке (для неотрицательной функции это площадь под графиком, в общем случае — знаковая площадь). Связывает их формула Ньютона-Лейбница: ∫ f dx от a до b = F(b) — F(a). Простые интегралы берут по таблице и свойствам, сложные — заменой переменной или по частям, а когда первообразной в элементарных функциях нет — численно. В программировании и ML интегралы описывают вероятности, средние значения и метрики качества.
FAQ
Чем интеграл отличается от производной? Производная показывает мгновенную скорость изменения функции, а интеграл суммирует (накапливает) значения по диапазону. Это взаимно обратные операции: дифференцирование интеграла возвращает исходную функцию.
Почему в ответе неопределенного интеграла всегда стоит «+ C»? Потому что производная любой константы равна нулю, и функции, отличающиеся на константу, имеют одну и ту же производную. По одной лишь f(x) восстановить эту константу нельзя, поэтому записывают все первообразные сразу.
Может ли определенный интеграл быть отрицательным? Да. На участках, где функция ниже оси абсцисс, вклад в интеграл отрицательный. Поэтому определенный интеграл равен площади только для неотрицательной функции; в общем случае это разность площадей над осью и под ней.



