Слово «нейронная» в нейронной сети — историческая метафора. С настоящими нейронами мозга у этих моделей мало общего: это просто удобная вычислительная структура, на которой хорошо работает обучение.
Из чего состоит
- Слои нейронов — входной, несколько скрытых, выходной.
- Веса связей — числа, которые подбираются во время обучения.
- Функция активации — нелинейность, без которой сеть была бы просто линейной формулой.
- Функция потерь — измеряет, насколько ответ сети далёк от правильного.
Как учится
Сеть видит пример, делает предсказание, получает значение функции потерь и корректирует веса с помощью метода обратного распространения ошибки. Этот цикл повторяется миллионы раз на огромных наборах данных.
- Данные сложные: изображения, текст, звук, временные ряды
- Простые модели исчерпали себя
- Есть достаточно данных и вычислительных ресурсов
- Небольшая таблица с понятными признаками — часто хватит логистической регрессии или градиентного бустинга
- Нужно объяснить каждое решение в терминах входных данных — нейросети плохо поддаются объяснению
Свёрточная нейросеть рассматривает картинку слоями: первые слои находят простые линии и края, средние — детали вроде глаз и колёс, последние — целые объекты. На выходе сеть выдаёт распределение вероятностей: «это кот с вероятностью 0,92, собака — 0,06, всё остальное — 0,02».
Если только начинаете, берите готовые библиотеки — PyTorch, TensorFlow, JAX — и предобученные модели из открытых репозиториев. Свою сеть с нуля имеет смысл писать только для исследований или для нестандартных задач, под которые нет готовых решений.