group-telegram.com/levels_of_abstraction/11
Last Update:
Пространство смыслов или как мыслит ИИ
Возможно, вы уже успели убедиться, что современный ИИ прекрасно воспринимает текстовую информацию — он "понимает" все, что вы ему напишете и "рассуждает" на уровне образованного собеседника. Однако удивительно мало внимания уделяется тому, как ИИ информацию обрабатывает и как образы, выраженные словами, превращаются в понятные машине нули и единицы. Серия постов, где я вместе с вами разбираюсь в возможностях и ограничениях GPT-подобных систем.
Начнем с того как воспринимаем информацию мы. Сознание человека привыкло оперировать словами и связанными с ними образами, позволяя нам складывать конструкции более высоких уровней абстракции. При этом помимо внутренней логики языка, мы осознаем логики причинно-следственных связей, эмоций и чувств, времени и пространства, звука, цвета и так далее. То есть наше сознание хотя и тексто-центрично, языком не исчерпывается (хотя философы на эту тему спорят).
ИИ не такой, кроме текста он не знает вообще ничего и только-только начинает добавлять в свою картину мира изображения. То есть он не понимает категории времени, но помнит все, что о времени было написано, например, с какой вероятностью после слова “время” встречается слово “идёт”, а с какой — “песок, время вода, скажи мне да”. И хотя интерфейсы для нашего взаимодействия с ИИ — это по сути слова, все расчеты в нейронных сетях сводятся к числам. Основой для "понимания" языка у ИИ являются не буквы и слова, а т.н. вектора в многомерном пространстве смыслов (vector embeddings). Поэтому при каждом запросе текст переносится в это пространство смыслов специального типа функцией (word2vec). Эту операцию можно представлять переводом с любого из человеческих языков на язык ИИ. В частном случае openAI у этого пространства 1536 измерений, у google - 768, но это детали. Главное здесь:
1. вектора в этом пространстве описывают все понятия и явлении, которые только могут быть выражены в языке
2. в том что для трехмерного сознания кожаных мешков размерность любого из этих пространств достаточно большое, чтобы не суметь осознать его примерно никогда. привет всем, кто пытался представить 4-мерый куб.
3. несмотря на семантическую природу пространства и привязку к языку, все операции над текстов сводятся к математическим операциям над векторами. их можно складывать и это равносильно сложению смысла слов в предложениях, или умножать — их скалярное произведение описывает, насколько два текста на любом из человеческих языков близки по смыслу между собой. причем для таких расчетов машине больше не нужно ничего "понимать", нужно (заткнуться) и считать.
Например, так выглядит слово “кот” в гугловском пространстве, определенном функцией BERT (фото 1).
Каждая координата этого вектора - число с плавающей точкой (float), которое уже записывается в память компьютера и занимает там 4 байта.
- Каждый такой вектор занимает 4 байта х размерность 768 = 3 кБ
- При этом слово занимает 2 байта на символ UTF-8 х 3 буквы в слове “кот” = 6 Б
Разница в 500 раз. Векторная запись одного слова занимаете памяти как целая страница текста. Дело в том, что помимо самого слова в нем хранится информация о понятии “кот” — сколько у него лап, какие он издает звуки и все, что нашлось в обучающей выборке, точнее какие слова встречались рядом со словом "кот" в текстах обучающей выборки .
Чудо в том, что после всех операций и обратной конвертации этих векторов на человеческий, получаются тексты связные не только на уровне последовательностей слов, но и на уровне причинно-следственных связей, о которых машина не имеет никакого представления. И чудо это заключено в конкретном способе трансформации текста в векторы, в количестве измерений и различных способах оптимизации. И уже существующие способы, хотя и хороши, все еще может быть улучшены значительно (до 40%). И это одна из точек активного приложения усилий ИИ-исследователей прямо сейчас.
Ссылки:
1. Демо - уровень абстракции #1 - скрины отсюда ниже
2. Как работает Google BERT
3. Документация openAI
BY уровни абстракции
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Share with your friend now:
group-telegram.com/levels_of_abstraction/11