18+
реклама
18+
Бургер менюБургер меню

Максим Байтович – Нейросети. Роадмап (страница 3)

18

Данные — это таблицы чисел. Все ваши тексты, картинки и видео для компьютера — скучная числовая матрица.

Результат — это всегда вероятность. Нейросеть не «знает», она «предполагает». Иногда — очень удачно.

Всё, математика на сегодня закончилась. Выдыхайте.

В следующей главе мы перейдем к самому интересному — к анатомии. Мы посмотрим, как устроены разные типы нейросетей. Почему одни сети умеют видеть, другие — писать, а третьи — рисовать. Вы узнаете, чем сверточные сети отличаются от трансформеров, и почему «Внимание» — это не просто слово из заголовков статей, а механизм, который перевернул мир.

Обещаю: будет интересно. И ни одной формулы... почти.

Глава 3. Архитектуры: Анатомия мозга машины

или «Почему одни сети рисуют, а другие считают налоги»

Не все нейросети одинаково полезны

Когда в разговоре кто-то говорит: «Нейросеть сгенерировала картинку», — на самом деле за этим стоит конкретная архитектура. Это как сказать «автомобиль перевёз груз», не уточняя, был это Ferrari или КамАЗ. И то, и другое — транспорт, но задачи у них разные.

Нейросети тоже бывают разные. Одни лучше работают с таблицами, другие — с фотографиями, третьи — с текстом. И если вы хотите понимать, что происходит внутри ChatGPT или Midjourney, вам нужно познакомиться с тремя-четырьмя главными «породами».

Мы пройдемся по эволюции: от простых трудяг до гениальных болтунов.

1. Полносвязные сети: Старые добрые трудяги

Самый простой и самый старый тип. Мы с вами уже встречались с ними в первой главе.

Представьте себе колонну солдат, стоящих в несколько шеренг.

Первая шеренга получает данные (например, размер дома и район).

Вторая шеренга получает сигналы от первой.

Третья — от второй.

Последняя шеренга выдает ответ (например, цену дома).

Главное правило: каждый нейрон в одной шеренге связан с каждым нейроном в следующей. Поэтому такие сети называются полносвязными.

Где они хороши?

Они прекрасно решают задачи, где данные уже разложены по полочкам: таблицы Excel, списки параметров, финансовые показатели. Если у вас есть таблица с данными о клиентах и вы хотите предсказать, кто из них уйдет к конкурентам, — полносвязная сеть справится отлично.

Где они бесполезны?

Покажите полносвязной сети фотографию кота. Она посмотрит на каждый пиксель отдельно. Пиксель 1 — серый. Пиксель 2 — серый. Пиксель 3 — белый. Но она не поймет, что эти пиксели складываются в ухо. Для неё это просто мешанина из миллиона независимых чисел.

И это главная трагедия полносвязных сетей: они не видят структуру. Не понимают, что пиксели, стоящие рядом, образуют контур. Поэтому для картинок пришлось изобрести кое-что получше.

2. Сверточные сети (CNN): Глаза машины

В 1980-х годах один умный француз по имени Ян Лекун посмотрел на полносвязные сети и сказал: «Ребята, вы неправильно смотрите на картинки». И он придумал свертку.

Как видит сверточная сеть?

Представьте, что вы смотрите на картину через маленькое окошко размером 3×3 пикселя. Вы смотрите на уголок картины, находите там диагональную линию. Затем передвигаете окошко на один пиксель вправо — опять линия. Ещё вправо — опять линия. Вы сканируете всю картину этим окошком и составляете карту линий.

Потом берете другое окошко и ищете на картине круги. Третье окошко ищет углы. Четвертое — пятна.

Потом вы берете результаты первого сканирования и сканируете их новыми окошками. Теперь вы ищете не просто линии, а комбинации линий: например, «две диагональные линии, сходящиеся под углом» — это крыша дома.

Зачем это нужно?

Потому что кошачье ухо — это не случайный набор пикселей. Это структура: изогнутая линия, которая находится в определенном месте относительно глаза. Сверточная сеть учится выхватывать эти структуры автоматически.

Где они живут сейчас?

Распознавание лиц в вашем телефоне.

Автопилот в машине (видит разметку, знаки, пешеходов).

Медицина: поиск опухолей на снимках МРТ (да, сети находят рак лучше некоторых врачей).

Но у сверточных сетей есть слабость: они видят пространство, но не видят время. Они не понимают последовательности. Поэтому для текста и речи понадобился другой зверь.

3. Рекуррентные сети (RNN): Память золотой рыбки

Когда вы читаете предложение «Я люблю свою собаку, потому что она...», — вы понимаете, что «она» — это собака. Вы помните начало предложения.

А полносвязная сеть не помнит. Она читает каждое слово как новое, с чистого листа. Ей скажешь «она» — и она спросит: «Кто — она?»

Рекуррентная сеть решает эту проблему элегантным образом:

У неё есть петля. Нейрон передает сигнал не только следующему слою, но и самому себе. Это как короткая память. Сеть получает слово «собака», кладет его себе в карман, а когда приходит слово «она» — залезает в карман и говорит: «Ага, раньше была собака, значит она — это про неё».

Проблемы с памятью

Одна беда: карман у такой сети маленький. Если вы спросите её: «В начале этого абзаца я упомянул серую кошку. О ком я говорю в последнем предложении?» — она уже забудет. Пять-десять шагов назад она ещё помнит, а вот сто — уже нет. Это называется проблемой долгой краткосрочной памяти.

Инженеры придумали улучшение — LSTM (Long Short-Term Memory). Это как рекуррентная сеть, но с отдельным механизмом «решать, что запомнить, а что выбросить». Как умный блокнот: что-то записал в черновик, что-то вычеркнул.

Рекуррентные сети долго были королями перевода и распознавания речи. Но потом пришли они.

4. Трансформеры: Революция внимания

В 2017 году группа инженеров из Google опубликовала статью с дерзким названием «Attention is All You Need» — «Внимание — это всё, что вам нужно».

Они предложили архитектуру, которая отказалась от петель и памяти. Вместо этого — механизм внимания.

Что такое внимание?

Когда вы читаете фразу: «The animal didn't cross the street because it was too tired», — как вы понимаете, к чему относится «it»? К животному или к улице?

Вы это делаете не просто запоминая предыдущие слова. Вы взвешиваете все слова одновременно. Ваш мозг смотрит на всё предложение целиком и подсвечивает: «animal» — важно, «street» — менее важно, «tired» — важно. Вы расставляете акценты.

Трансформер делает то же самое.

Он берет предложение и для каждого слова вычисляет: «Насколько слово А связано со словом Б?»

Он не читает текст слева направо, как рекуррентная сеть. Он смотрит на весь текст одновременно и строит карту связей.

Почему это гениально?

Во-первых, скорость. Рекуррентная сеть читает по одному слову, как человек, который водит пальцем по строчке. Трансформер видит всю страницу разом. Это можно распараллелить на видеокартах, что делает обучение в сотни раз быстрее.

Во-вторых, глубина понимания. Трансформер может уловить связь между словами, которые находятся друг от друга на расстоянии в тысячу слов. Потому что он «внимателен» ко всему тексту сразу.

Кто живет внутри трансформера?

Все современные звезды — это трансформеры:

GPT (Generative Pre-trained Transformer) — та самая модель, которая пишет тексты.

BERT — модель, которая отлично понимает запросы в поисковиках.

CLIP — модель, которая связывает текст и картинки (поэтому мы можем написать «кот в космосе» и получить картинку).

Когда вы пользуетесь ChatGPT, вы общаетесь с гигантским трансформером, который прошёл через механизм внимания миллиарды раз.

5. Диффузия: Художники, которые рисуют из шума