- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания Как устроен ChatGPT? Полное погружение в принципы работы и спектр возможностей самой известной нейросети в мире - Стивен Вольфрам
Шрифт:
Интервал:
Закладка:
Нужно понимать, что не существует модели без модели. То есть любая модель, которую вы используете, имеет определенную базовую структуру и набор параметров, которые вы можете установить и которые соответствуют вашим данным. И в случае с ChatGPT тоже используется множество параметров (на самом деле их 175 миллиардов).
Примечательно, что лежащая в основе ChatGPT структура (с таким «небольшим» количеством параметров) способна создавать модель, которая вычисляет вероятности следующего слова достаточно хорошо, чтобы у нас получились фрагменты текста размером с настоящее эссе.
Модели для человеческих задач
Пример, который мы привели выше, предполагает создание модели числовых данных, которая, по сути, основана на простой физике и старой доброй прикладной математике. Но для ChatGPT мы должны создать модель текста, который будет подобен тому, что написал бы человек. И для этого у нас нет (по крайней мере, пока) ничего похожего на базовую прикладную математику. Итак, что же это за модель?
Прежде чем мы поговорим о языке, давайте обсудим другую сугубо человеческую задачу – распознавание образов. И в качестве простого примера предлагаю рассмотреть изображения цифр (это классический пример машинного обучения):
Мы можем взять ряд изображений каждой цифры:
Затем, чтобы выяснить, соответствует ли изображение, полученное нами в качестве входных данных, определенной цифре, мы могли бы сравнить его с имеющимися у нас образцами пиксель за пикселем. Но мы, люди, выполняем эту задачу намного лучше, потому что способны распознать цифры, даже если они написаны от руки и имеют всевозможные модификации и искажения:
Создавая описанную выше модель для наших числовых данных, мы взяли определенное числовое значение x и просто вычислили a + bx для конкретных a и b. В данном случае, если мы определим цвет каждого пикселя как некую переменную xi, есть ли какая-то функция всех этих переменных, которая – при вычислении – скажет нам, какая цифра изображена в этом случае? Оказывается, такую функцию можно построить. Однако это не так-то просто. И типичный пример может включать в себя, возможно, полмиллиона математических операций.
Если мы введем весь набор значений пикселей в эту функцию, то на выходе появится число, указывающее, какая цифра изображена на рисунке. Далее мы поговорим о том, как можно сконструировать такую функцию, и о самом принципе работы нейронных сетей. Но пока давайте рассмотрим функцию как черный ящик, куда мы вводим изображения, скажем, рукописных цифр (в виде массивов значений пикселей), чтобы на выходе получить числа, которым они соответствуют:
In[]:= NetModel[
][{ }]Out[]= {7, 0, 9, 7, 8, 2, 4, 1, 1, 1}
Но что на самом деле тут происходит? Допустим, мы постепенно начнем размывать изображение цифры (в нашем примере – цифры 2). Некоторое время наша функция все еще будет распознавать ее. Но вскоре функция начнет выдавать «неправильный» результат:
In[]:= NetModel[
][{ }]Out[]= {2, 2, 2, 1, 1, 1, 1, 1, 1}
Но почему мы рассматриваем этот результат как неправильный? В данном случае мы знаем, что получили изображения, просто размыв цифру 2. Но если наша цель состоит в том, чтобы создать модель того, как люди распознают изображения, то нужно задать следующий вопрос: что сделал бы человек, не знающий, откуда взялись эти размытые изображения?
Наша модель может считаться хорошей, если результаты, которые выдает наша функция, совпадают с ответами человека. И мы знаем, как создавать функции для распознавания изображений, подобные этой.
Можем ли мы математически доказать, что эти модели работают? В целом – нет. Потому что для этого у нас должно быть математическое описание того, что делаем мы, люди. Возьмите изображение цифры 2 и измените в нем несколько пикселей. Мы можем представить, что с несколькими пикселями не на своих местах мы все равно сумеем считать изображение. Но как долго мы сможем передвигать пиксели и при этом распознавать изображение? Это вопрос зрительного восприятия человека. Ответ, без сомнения, был бы другим для пчел или осьминогов – и совершенно отличался для гипотетических инопланетян.
Нейронные сети
Итак, как же на самом деле работают типичные модели распознавания изображений? В настоящее время самый популярный – и успешный – подход задействует нейронные сети. Изобретенные в 1940-х годах (хотя их форма до сих пор очень близка к современной) нейронные сети можно рассматривать как упрощенное представление того, как, по-видимому, работает наш мозг.
В человеческом мозге находится около 100 миллиардов нейронов (нервных клеток), каждый из которых способен генерировать электрический импульс, возможно, до тысячи раз в секунду. Нейроны соединены в сложную сеть, причем каждый имеет древовидные отростки, позволяющие ему передавать электрические сигналы тысячам других нейронов. Электронный импульс зависит от того, какие импульсы данный нейрон получил от других, при этом разные связи имеют разный вес.
Когда мы видим некое изображение, происходит следующее: фотоны света, отразившиеся от изображения, попадают на особые клетки – фоторецепторы – в задней части глаза, после чего эти клетки передают импульс в виде электрического сигнала нервным клеткам. Эти нервные клетки соединены с другими нейронами, так что в итоге сигналы проходят через целый их ряд. Именно во время этого процесса распознается изображение, и в завершение формируется мысль о том, что мы видим цифру 2 (и, возможно, в конце мы произносим слово «два» вслух).
«Черный ящик» из предыдущего раздела является «математизированной» версией такой нейронной сети. Оказывается, она имеет одиннадцать слоев (четыре из которых считаются основными):
В этой нейронной сети нет ничего теоретически выведенного; все в 1998 году было сконструировано как часть инженерной разработки и оказалось работоспособным. (Это не сильно отличается от ситуации, когда мы описываем мозг как нечто созданное в ходе биологической эволюции.)
Хорошо, но как подобная нейронная сеть распознаёт изображения? Ключевым моментом является понятие аттрактора. Представьте, что у нас есть изображения рукописных цифр 1 и 2:
Мы как бы хотим, чтобы все единицы «притянулись» в одно место, а все двойки – в другое. Иными словами, если изображение больше похоже на единицу, чем на двойку, мы хотим, чтобы оно оказалось единицей, и наоборот. Эти «зоны притяжения» и называются аттракторами (от англ. attract – привлекать, притягивать).
В качестве простой аналогии предположим, что есть определенные позиции на плоскости, отмеченные точками (в реальной жизни это могут быть кафе, обозначенные на карте). Предположим, что, двигаясь из любого места, мы хотим оказаться в ближайшей к нам точке, то есть в ближайшем кафе. Мы можем представить эту плоскость разделенной на области – зоны аттракторов, разграниченные чем-то вроде водоразделов:
Это можно рассматривать как своего рода задачу на распознавание, где мы не пытаемся понять, на какую цифру похоже изображение, а стараемся увидеть, к какой точке определенная точка находится ближе всего.
(Диаграмма Вороного, которую мы здесь построили, разделяет точки в двумерном евклидовом пространстве; задачу распознавания цифр можно рассматривать как нечто очень похожее, но в 784-мерном пространстве, сформированном из уровней серого всех пикселей на каждом изображении.)
Итак, как мы можем заставить нейронную сеть «распознать» что-то? Давайте рассмотрим такой случай:
Наша цель состоит в том, чтобы получить входные данные, соответствующие позиции {x, y}, а затем «распознать» их, то есть отнести к той из трех точек, к которой они находятся ближе