ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ

Зачем нейросетям столько данных и почему «много» — это очень много

Современные модели обучают на терабайтах текстов и миллионах картинок. Почему нельзя обойтись малым, как ребёнок, которому хватает пары примеров? Разбираемся, что для модели значат данные и откуда берётся их ненасытный аппетит.

Нейросеть не получает знаний из ниоткуда — всё, что она умеет, она вычитала из примеров; чем их больше и разнообразнее, тем шире её мир.
Для модели данные — это и учебник, и единственный источник опыта. Без них даже самая большая сеть остаётся пустой оболочкой из случайных чисел.

Откуда у сети вообще берётся «знание»

Сеть стартует со случайными весами и ничего не умеет. Всё её мастерство возникает в процессе подгонки этих весов под примеры. Если показать модели сто фотографий котов, она уловит лишь то, что было на этих ста снимках. Покажете миллион — и она увидит котов рыжих и чёрных, спящих и в прыжке, в темноте и на солнце. Каждый новый пример — это ещё один кусочек закономерности, которую она строит. Данные для модели буквально и есть её картина мира.

Почему мало — это плохо

На малом наборе модель почти неизбежно начинает зубрить — запоминать конкретные примеры вместо общего правила (об этом была отдельная статья про переобучение). У большой сети миллиарды параметров; чтобы они настроились на закономерность, а не на случайные совпадения, примеров нужно сопоставимо много. Грубое правило таково: чем больше у модели «ручек настройки», тем больше данных требуется, чтобы выкрутить их осмысленно.

Хвост важнее середины

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

Мало данныхМодель зубрит, валится на новом и редком
Много данныхУлавливает закономерность, держит редкие случаи

Количество — не единственное, что важно

Гнаться за объёмом вслепую опасно. Если в данных полно ошибок, перекосов и мусора, модель прилежно их выучит — принцип «мусор на входе, мусор на выходе» работает здесь безотказно. Качество и разнообразие данных зачастую важнее голого размера:

  • Чистота. Ошибки и неверные метки сбивают обучение.
  • Разнообразие. Однотипные примеры дают узкую, хрупкую модель.
  • Представительность. Если в данных перекос, модель унаследует его как предвзятость — и будет несправедлива к недопредставленным случаям.

Когда данных взять негде

Иногда настоящих примеров мало — скажем, снимков редкой болезни. Тогда выручают приёмы экономии. Аугментация создаёт новые примеры из имеющихся: картинку поворачивают, отражают, меняют яркость — и из одного снимка получается десяток. А дообучение позволяет взять модель, уже натренированную на гигантском общем наборе, и доучить её под узкую задачу всего на нескольких примерах — общие признаки она уже знает.

params = 1_000_000      # параметров в модели
per_param = 10          # эмпирически — примеров на параметр
print(f"нужно порядка {params * per_param:,} примеров")
# нужно порядка 10,000,000 примеров — отсюда и терабайты

Вот почему «много» — это очень много

Данные — это топливо обучения. Большая модель без больших данных похожа на мощный двигатель с пустым баком: потенциал есть, движения нет. Именно поэтому сбор, очистка и разметка данных — часто самая трудоёмкая и дорогая часть всей работы над ИИ, куда более кропотливая, чем сам код модели.

#данные#масштаб#нейросети#обучающая выборка