ЛЕКЦИЯ 2. От биологии к графу: Нейрон, Синапс, Слой
- 11.10.26 г.
- 9772225665000 26019
Общие положения
Все, что будет изучаться дальше – сверточные сети, трансформеры, большие языковые модели – есть не что иное, как усложнение одного и того же базового элемента: искусственного нейрона, соединенного с другими в сеть.
Задача лекции – объяснить, как биологический нейрон превращается в математическую абстракцию, как эта абстракция описывается на языке графов, и почему из простых элементов может возникнуть сложное поведение.
В предыдущей лекции было рассказано, почему символьный подход уперся в принципиальные ограничения. Теперь мы переходим к альтернативе – к коннекционизму. И начинаем с самого простого: с одного нейрона.
Сразу подчеркнем главное: нейрон не «думает». Это вычислительный элемент, а не мыслящая сущность. Его задача – принять входы, сложить их с весами и выдать результат. Вся «интеллектуальность» нейросети возникает из организации связей между миллионами таких простых элементов.
1. Биологический нейрон
Прежде чем говорить об искусственных нейронах, нужно хотя бы кратко взглянуть на нейрон биологический – тот, из которого все началось.
Нейрон – это клетка, специализированная для передачи электрических сигналов. У него есть три основные части:
- дендриты – разветвленные отростки, которые принимают сигналы от других нейронов. Это входные каналы,
- тело клетки (сома) – центральная часть, где сигналы суммируются. Если суммарный сигнал превышает определенный порог, нейрон «срабатывает»,
- аксон – длинный отросток, по которому сигнал передается дальше. Это выходной канал.
На конце аксона находятся синапсы – места контакта с дендритами других нейронов. Здесь сигнал передается от одной клетки к другой.
Ключевая деталь: синапс – не просто «провод». Это взвешенная связь. Один нейрон может передать сигнал другому с разной силой. Где-то связь сильная – сигнал влияет значительно. Где-то слабая – почти не влияет.
Вес связи может быть не только положительным, но и отрицательным. Положительный вес означает возбуждение: сигнал усиливает активность следующего нейрона. Отрицательный – торможение: сигнал подавляет ее. В биологическом мозге есть и возбуждающие, и тормозные синапсы. В искусственных сетях это различие выражается знаком веса.
Важно подчеркнуть: веса – это числа. Например, 0.5, −0.3, 2.1. Нейросеть – это огромная таблица чисел, которые перемножаются и складываются. Никакой магии, только арифметика.
Именно в весах синапсов хранится «знание» биологического мозга. Когда происходит обучение, меняются веса связей так, что определенные комбинации входов начинают вызывать правильный выход. Знание – это распределенный паттерн весов, а не локальная запись.
В 1949 году Д.Хебб сформулировал правило, которое описывает этот процесс: «клетки, которые возбуждаются вместе, связываются вместе». Если два нейрона активны одновременно, связь между ними усиливается. Просто, элегантно – и это правило до сих пор вдохновляет многих исследователей.
Правило Хебба – исторически первая гипотеза о том, как работает обучение. Оно вдохновило первые модели, но современные сети используют другой механизм. Тем не менее понимание правила Хебба важно: оно объясняет, откуда взялась сама идея, что веса можно менять в процессе обучения.
Важно подчеркнуть: большинство современных глубоких сетей обучаются не по правилу Хебба. Они используют совсем другой механизм – обратное распространение ошибки. Правило Хебба – это биологическая идея, а не алгоритм, на котором работают ChatGPT или системы распознавания изображений. Однако хеббовские принципы сохраняются в некоторых архитектурах – например, в спайковых сетях и самоорганизующихся картах Кохонена.
Здесь необходимо сделать предупреждение: биологический нейрон неизмеримо сложнее искусственного. В нем десятки типов ионных каналов, тысячи синапсов, нейромедиаторы, глия, дендритные вычисления, электрические синапсы. Он ведет себя не как простой сумматор, а как сложная вычислительная система.
Когда строится искусственный нейрон, берется только один принцип: вход → взвешенное суммирование → нелинейный выход. Все остальное остается за бортом. Это не недостаток – это осознанный выбор: строится не мозг, а вычислительная система, вдохновленная мозгом.
2. Математическая модель Мак-Каллока–Питтса (1943)
В 1943 году У.Мак-Каллок и У.Питтс опубликовали работу, которая войдет во все учебники. Они предложили первую формальную модель искусственного нейрона.
Идея была радикально простой: давайте представим нейрон как устройство, которое:
- принимает несколько входов,
- умножает каждый вход на свой вес,
- складывает результаты,
- сравнивает сумму с порогом,
- если сумма больше или равна порогу – выдает 1, если меньше – выдает 0.
Это все. Никакой магии. Только арифметика.
Формально: пусть у нас есть входы x₁, x₂, ..., xₙ и веса w₁, w₂, ..., wₙ.
Вычисляется взвешенная сумма: S = x₁·w₁ + x₂·w₂ + ... + xₙ·wₙ.
Затем сумма сравнивается с порогом F:
- если S ≥ F – выход равен 1,
- если S < F – выход равен 0.
Это бинарный классификатор. Нейрон принимает решение «да/нет». Как выключатель: либо включен, либо выключен.
Уже на этом простом уровне нейрон может реализовывать базовые логические функции (например, AND и OR). Но одной прямой «границы решения» (в двумерном случае – прямой линии) недостаточно для более сложных задач.
Порог F можно переписать и в другой форме, которая стала стандартной в современных нейросетях. Вместо «сумма должна быть больше порога»: «сумма плюс смещение должна быть больше нуля».
Смещение (bias) – это сдвиг, который позволяет нейрону срабатывать даже при нулевых входах. Смещение – это изначальная предвзятость: решение может быть принято (или отклонено) в зависимости от «настроения».
Формула нейрона в компактном виде выглядит так: y = f(Σ xᵢwᵢ + b), где f – функция активации, b – смещение. Это стандартная запись.
Модель Мак-Каллока–Питтса – это первая демонстрация того, что нейрон можно описать математически. Она показала: работа нервной клетки может быть формализована, а значит, воспроизведена на машине.
Это был философский прорыв не меньше, чем технический. Он открыл дорогу всей будущей нейронауке и искусственному интеллекту.
Но у модели были ограничения:
- бинарный выход. Нейрон может выдать только 0 или 1. Никаких промежуточных значений. Это делает модель грубой,
- пороговая функция недифференцируема. Это означает, что нельзя использовать градиентный спуск для обучения. А без градиентного спуска – нет обратного распространения ошибки,
- нет обучения. В оригинальной модели Мак-Каллока–Питтса веса задавались вручную. Сеть не училась – она просто вычисляла.
Несмотря на это, модель стала отправной точкой. Все последующие архитектуры – ее усложнения.
3. Графовое представление
Один нейрон – это просто. Но что такое сеть из тысяч или миллионов нейронов?
Формально, нейросеть – это взвешенный направленный граф:
- вершины – искусственные нейроны,
- ребра – синаптические связи,
- веса ребер – числа, определяющие силу влияния одного нейрона на другой,
- направление – сигнал идет от одного нейрона к другому (в большинстве архитектур – от входов к выходам).
Такое представление позволяет описать любую нейросеть единообразно. Будь то простой перцептрон с тремя нейронами или GPT-4 с сотнями миллиардов (а по некоторым оценкам – до триллиона) параметров – это все графы.
Параметры – это обучаемые величины сети: веса и смещения. Их количество определяет «размер» модели. GPT-3 имеет 175 млрд параметров, GPT-4 – предположительно больше триллиона.
Графовое представление дает язык для описания архитектур: «сверточная сеть», «рекуррентная сеть», «трансформер»означает, что описываются разные способы организации связей в графе.
Оно также объясняет, почему нейросети могут быть такими мощными. Граф с миллиардами взвешенных связей – это вычислительная структура огромной сложности. Из простых элементов возникает эмерджентное поведение.
Можно указать аналогии:
- социальная сеть. Люди – это вершины. Дружеские связи – это ребра. У каждого человека есть «вес» – насколько он влияет на других. Информация распространяется по этой сети: каждый человек передает ее дальше, но с разной силой. Через несколько шагов информация может усилиться, ослабнуть или исказиться. Именно так работает нейросеть: сигнал проходит через слои, усиливаясь и ослабляясь в зависимости от весов,
- схема метро. Станции – это нейроны. Линии – это связи. Пересадки – это взвешенные переходы. Сигнал идет от станции к станции, и его «сила» зависит от того, по какому маршруту он идет.
4. Структура сети: слои
Нейроны в сети организованы в слои. Слой – это множество вершин графа, которые не соединены между собой, но соединены с вершинами предыдущего и следующего слоев. Такая организация называется слоистой архитектурой.
Базовая структура выглядит так:
- входной слой. Принимает данные из внешнего мира. Если мы работаем с изображением 28×28 пикселей, во входном слое будет 784 нейрона (по одному на каждый пиксель). Каждый нейрон получает одно число – яркость пикселя,
- скрытые слои. Промежуточные слои, которые обрабатывают информацию. Их может быть один, два, десять, сто. Чем больше скрытых слоев, тем «глубже» сеть. Именно они создают ассоциации и извлекают признаки. Входной слой видит пиксели, скрытые слои видят линии и формы, а выходной – готовый ответ,
- выходной слой. Выдает результат. Если задача – классификация на 10 классов (цифры от 0 до 9), в выходном слое будет 10 нейронов. Каждый нейрон соответствует одному классу. Тот, у которого значение выхода больше, – «победитель».
В базовой архитектуре нейроны одного слоя соединены с нейронами следующего полностью: каждый с каждым. Такой слой называется полносвязным (fully connected). Если в предыдущем слое 100 нейронов, а в следующем – 50, то между ними 5000 связей, и у каждой свой вес. Именно это делает сеть такой параметрически емкой: количество весов растет как произведение размеров слоев.
Стоит упомянуть, что полносвязный слой – не единственный тип. Бывают сверточные слои (для изображений), рекуррентные (для последовательностей), слои внимания (для трансформеров). О них мы поговорим в следующих лекциях.
Глубина сети – это число слоев между входом и выходом. Сеть с одним скрытым слоем называют «мелкой», с десятью – «глубокой». Именно глубина позволяет строить иерархии признаков: каждый слой добавляет новый уровень абстракции. Отсюда и название – «глубокое обучение» (deep learning).
Однако сама по себе глубина ничего не дает, если сеть нельзя эффективно обучать. Именно поэтому переход к дифференцируемым функциям активации оказался таким важным.
Тут ключевая идея такая: каждый следующий слой создает все более абстрактные представления. Если мы работаем с изображением, то
- первый слой видит пиксели,
- второй слой видит края и линии,
- третий слой видит формы (круги, квадраты),
- четвертый слой видит части объектов (глаза),
- пятый слой видит объекты целиком (лица).
Это называется иерархией признаков. И это одна из причин, почему глубокие сети работают так хорошо: они автоматически строят иерархию абстракций.
Можно привести такую аналогию: представьте, что вы смотрите на картину.
Сначала вы видите отдельные мазки краски (пиксели).
Потом вы замечаете линии и контуры (края).
Затем узнаете формы – вот дерево, вот дом (объекты).
И наконец понимаете: это пейзаж, лето, деревня (сцена).
Нейросеть делает то же самое, но в своих внутренних слоях. И никто не программирует ее видеть именно так – она учится этому сама.
5. Функция активации
В модели Мак-Каллока–Питтса использовалась пороговая функция: выход 0 или 1. Это простейшая функция активации.
Но зачем вообще нужна функция активации? Почему бы просто не складывать входы с весами?
Ответ: без функции активации сеть – это просто линейная регрессия: сколько бы слоев не добавлялось, если в каждом слое будет только взвешенная сумма, и вся сеть сводится к одной линейной функции. А линейная функция не может решать нелинейные задачи.
Классический пример нелинейной задачи – XOR, «исключающее ИЛИ» . Это логическая функция от двух входов. Она выдает 1, только если входы разные : (0,1) → 1, (1,0) → 1, но (0,0) → 0 и (1,1) → 0.
Если нарисовать эти точки на плоскости, они образуют две диагонали. Точки (0,1) и (1,0) – одного цвета (выход 1). Точки (0,0) и (1,1) – другого (выход 0). Их невозможно разделить одной прямой линией. Любая прямая разделит их неправильно: либо обе диагонали попадут в одну область, либо разделение будет неполным.
А однослойный перцептрон умеет только проводить прямые. Отсюда – его принципиальное ограничение, доказанное Мински и Пейпертом в 1969 году.
Функция активации вносит нелинейность. Именно она позволяет сети моделировать сложные зависимости.
Исторически первой была пороговая (ступенчатая) функция:
- если взвешенная сумма ≥ порога – выход 1,
- если меньше – выход 0.
Она проста, но у нее есть проблема: она недифференцируема. В точке порога у нее разрыв. Это означает, что мы не можем вычислить градиент – а без градиента нет обучения.
Именно это ограничение мешало обучать многослойные сети (хотя главной причиной «зимы» нейросетей в 1970-е годы стало не оно, а математическое доказательство ограничений однослойных перцептронов (Мински и Пейперт)).
Современные функции активации – Sigmoid, Tanh, ReLU – дифференцируемы. Это позволяет обучать глубокие сети через обратное распространение ошибки.
ReLU (Rectified Linear Unit) – самая популярная сегодня. Она проста: max(0, x). Если вход положительный – пропускаем как есть. Если отрицательный – заменяем на ноль. Просто, быстро, эффективно.
6. Пример
Представьте, что нейрон – это совещание.
У вас есть несколько друзей, каждый из которых высказывает свое мнение по вопросу. Но не все голоса равны:
- один друг – эксперт, его мнение весит много (большой вес),
- другой – просто знакомый, его мнение почти не влияет (маленький вес),
- третий – вообще не в теме, но что-то говорит (нулевой вес).
Каждый друг голосует «за» или «против». Голоса умножаются на веса (авторитет). Сумма всех взвешенных голосов – это общее мнение.
И вот наступает момент решения: если сумма голосов превышает определенный порог, решение принимается (выход 1). Если нет – отклоняется (выход 0).
Это и есть работа искусственного нейрона. Просто, но из таких «совещаний», соединенных в сеть, возникает сложное поведение.
Эта аналогия помогает понять главное: нейрон не «думает». Он просто суммирует входы с весами и сравнивает с порогом. Вся «интеллектуальность» возникает из организации связей между миллионами таких простых элементов.
7. Как нейрон обучается?
Мы говорили, что веса меняются в процессе обучения. Но как именно это происходит?
Обучение – это итеративный процесс. Сеть делает предсказание, сравнивает его с правильным ответом, вычисляет ошибку и корректирует веса так, чтобы в следующий раз ошибиться меньше.
Представьте, что вы настраиваете радиоприемник. Вы крутите ручку (вес), чтобы поймать четкий сигнал (уменьшить ошибку). Если крутить слишком быстро – пропустите станцию. Если слишком медленно – будете долго искать. Так и нейросеть: она постепенно подстраивает веса, пока не найдет оптимальную конфигурацию.
Алгоритм, который это делает, называется обратным распространением ошибки (Backpropagation). Но общая идея такова: ошибка распространяется от выхода к входу, и каждый вес корректируется пропорционально его вкладу в ошибку.
Аналогия с командой. Представьте, что команда провалила проект. Менеджер выясняет, кто внес какой вклад в провал, и корректирует работу каждого. Backpropagation делает то же самое: он выясняет, какой вес внес какую ошибку, и корректирует его. Чем больше вклад в ошибку – тем сильнее корректировка.
8. Пример из жизни
Представьте, что вы собираетесь купить машину. Вы оцениваете несколько вариантов по разным критериям:
- цена (важный критерий, вес 0.4),
- расход топлива (важный, вес 0.3),
- внешний вид (средний, вес 0.2),
- цвет (неважный, вес 0.1).
Вы оцениваете каждую машину по этим критериям от 0 до 10. Умножаете оценки на веса, складываете. Если сумма превышает ваш «порог приемлемости» – вы покупаете. Если нет – ищете дальше.
Это и есть работа искусственного нейрона. Только у нейросети таких «критериев» могут быть миллионы, а веса она подбирает сама в процессе обучения.