Telegram Web
AlphaStar [2019] - мы упёрлись в лимит self-play learning?

С одной стороны, перед нами романтичная история о том, как Oriol Vinyals, будучи в юности крутым Starcraft-игроком, стал ML-исследователем и через полтора десятка лет изобрёл первую Grandmaster-level-систему для Starcraft. В этом подкасте у Lex Fridman он рассказывает много интересного об этом проекте, советую интересующимся.

С другой стороны, при переходе на такой уровень сложности среды мы начинаем видеть пределы такого метода обучения, который используется здесь (он похож на AlphaZero):

1) Без использования человеческих знаний и данных это не работает.
В отличие от Go, в Starcraft вы не можете обучить сильный алгоритм, плавно меняя вашу стратегию, начиная с рандомной. В Go вы можете начать из рандома, потом играть лучше рандома, потом ещё лучше и так далее. В Starcraft вы сразу же натыкаетесь на локальный максимум, в котором вы берёте всех своих стартовых юнитов и идёте бить морду противнику, а не строить базу.

2) Количество данных, которое тут требуется, безумно. Увеличение размерности печально влияет на способность алгоритмов обучаться. Тут мы и видим проблему низкого интеллекта таких систем - они не могут использовать данные так же эффективно, как это делает человек.

В общем, применение прикольное, но технологии у нас пока ещё совсем слабенькие.

@knowledge_accumulator
👍5🔥1
Почему интуиция это ключ к интеллекту?

Когда
мы проводим оптимизацию в большом пространстве для какой-то задачи, будь то Го или шахматы, Abstraction and Reasoning Challenge, или пытаемся придумать решение задачи по математике, ключом к успеху, как я уже говорил, является направленность поиска решения.

Есть 2 способа эту направленность получить:

1) Оракул
Если у нас есть фидбек от задачи, которую мы пытаемся решать, мы можем плавно двигаться нашим решением в сторону правильного, ориентируясь на то, насколько фидбек улучшается. Этот вариант имеет опасность - он может привести вас в локальный максимум, как это происходит в Starcraft, где в качестве оракула выступает то, выигрываете ли прошлые итерации себя. Но если оракул таков, что не допускает плохих локальных максимумов, он вам поможет. Эти случаи достаточно редки!

2) Интуиция
Я только недавно отрефлексировал её ключевую важность. Интуиция позволяет AlphaZero перебирать правильные ходы в Go. Интуиция позволяет математикам находить длинные доказательства теорем, хотя задача поиска доказательства является, в каком-то смысле, NP-задачей (экспоненциальное время на поиск решения, и маленькое время на проверку решения). Нерешённая проблема в сфере ИИ, то, что позволяет человеку обучаться так быстро - это универсальная интуиция, не привязанная к домену, которая позволяет посмотреть на картинку из Abstraction & Reasoning Challenge и мгновенно увидеть паттерн из жизни.

Никакие алгоритмы (пока что) на это не способны, и это является очевидным препятствием к тому, чтобы мы получили "Human-level intelligence".

@knowledge_accumulator
👍10
AutoML-Zero [2020] - когда оракул помогает поиску.

Можно ли с нуля и без априорных знаний сгенерировать код нейронной сети? Оказывается, в целом можно.

Применяем эволюционный поиск программ:
1) Задаём базовую структуру программы: нам нужно обучить 3 куска кода - для инициализации, для шага обучения и применения. То, как они используется, заранее задано, там простой train-loop. То есть одна программа это реализация трёх функций.
2) Определяем набор операций, которые можно использовать - берём базовые математические операции над скалярами, матрицами и векторами. И добавляем возможность самому инициализировать новые такие объекты.
3) Поддерживаем "популяцию" из N программ
4) В процессе оптимизации берём программы и применяем к ним мутации (случайно добавляем/удаляем/изменяем команду или другие случайные изменения)
5) Оцениваем новые программы, прогоняя процесс обучения, оставляем удачные варианты в популяции.
6) Прогоняем триллион программ в рамках оптимизации и готово!

Важно заметить, что несмотря на случайную природу мутаций, AutoML-Zero ищет программу быстрее (экспоненциально), чем нашёл бы простой случайный поиск программ. Ключом тут является способность эволюционного алгоритма закреплять локальный успех.

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

Но зато всё это крайне весело.

@knowledge_accumulator
👍6😁1🆒1
AlphaTensor [2022] - пример сверхчеловеческой интуиции в математике

Подход "поиск + нейросетевая интуиция" позволил AlphaZero планировать в играх с помощью с обученной на огромном разнообразном датасете аппроксиматором функции полезности, позволившим радикально сократить пространство перебора.

Оказывается, существуют области, полезные в жизни, где мы понимаем, как применить такой подход на текущем этапе развития технологий. Такой областью является перемножение матриц!

Говоря общими словами (глубокий часовой обзор есть тут):
1) Наша задача - разработать алгоритм, который можно применить к 2 матрицам, чтобы получить в результате их произведение.
2) Мы работаем с пространством алгоритмов, которые задаются последовательностью векторов-параметров. Эти векторы-параметры говорят нам (хитро), что на что умножать и что с чем складывать.
3) В терминах RL действиями являются эти векторы, наградой является то, насколько близкий результат будет давать алгоритм (со штрафом за кол-во действий), а состоянием среды является размерность матриц и прошлые действия.

К этому всему мы применяем в точности AlphaZero - нужно только реализовать "RL-среду" по правилам выше. В результате обучения алгоритм находит более быстрые способы перемножать матрицы, чем знало человечество!

Я в восторге от результатов данной работы, потому что система демонстрирует сверхчеловеческое понимание своей задачи, а я люблю такое. Она способна смотреть на данные той размерности, которые мы не способны воспринимать. Результаты на картинке говорят, что чем больше размерность, тем больше отрыв между ней и нами. Такие вот дела!

@knowledge_accumulator
👍10🔥3❤‍🔥1
Как пытаются подходить к автоматическому доказательству теорем с помощью ИИ?

К сожалению, у меня не получилось в небольшом посте одновременно объяснить задачу и подход, поэтому сегодня будет только про задачу. Итак, поехали.

Существует Metamath, где формализованы доказательства ~38к утверждений в математике, опираясь друг на друга, и в конечном счёте на базовые аксиомы.

Все доказательства теорем в Metamath базируются на подстановке - это когда мы применяем аксиому или уже доказанную ранее теорему к имеющимся "объектам", чтобы сгенерировать новое промежуточное утверждение. И так, пока не дойдём до теоремы. Этот подход называется forward manner.

Нас же интересует backward manner - это когда у нас есть доказываемое утверждение, и мы применяем к нему тактику, то есть предполагаем, какие промежуточные утверждения, при применении какой-нибудь аксиомы или теоремы, доказали бы желаемое.
Пример: чтобы доказать, что A=C, мы должны доказать, что A=B и B=C, и потом применить транзитивность. Теперь пытаемся доказать, что A=B и B=C.

Таким образом, в backward manner процесс доказательства - это построение дерева.
У каждого утверждения есть дети-тактики - попытки по-разному декомпозировать его на более базовые. И у каждой тактики есть дети-утверждения, все из которых мы должны доказать. Если какая-то вершина оказывается аксиомой или уже доказанным утверждением, то она автоматически доказана. Соответственно, шаг поиска это добавление тактики-ребёнка вместе с его детьми-утверждениями к уже существующей вершине. Это всё похоже на настольную игру. См. картинку.

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

А в следующих постах я расскажу о том, как поиск доказательств теорем ускоряют с помощью нейросетей, насколько плохо пока получается, и подумаем над фундаментальными причинами.

@knowledge_accumulator
👍14🔥1
GPT-f [2020] - LLM пытается доказывать теоремы.

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

Претрейн: помимо кучи текстов из интернета, модель учат на смеси GitHub, arXiv Math, и Math StackExchange.

Файнтюн: На основе базы доказательств Metamath строится датасет для файнтюна, состоящий из последовательностей вида <цель # шаг доказательства>, где нужно предсказать шаг доказательства по цели. Иначе говоря, учимся генерировать тактику доказательства заданного на вход утверждения.

Как работает процесс: мы храним в очереди с приоритетом все вершины дерева доказательства, которые мы ещё не пытались доказывать. Вначале в дереве только корень.
Выбираем вершину из очереди, пытаемся доказать, генерируя 32 тактики доказательства. Скорим их по сумме log-prob-ов всех токенов, и прибавляем скор родителя - это и будут приоритеты, с которыми мы их кладём в очередь.
На попытку доказательства выделяем до 128 таких шагов, и 4 попытки всего процесса, начиная с чистого листа.

После инференса модели на тренировочном датасете задач:
1) Учим value-функцию вида цель -> [0; 1] - предсказывает то, докажет ли модель данное утверждение.
2) Дообучаем генератор тактик на успешных тактиках

Весь процесс применения на трейнсете повторяем заново, теперь уже скоря вершины value-функцией. И потом повторяем 2 пункта выше. Так можно делать сколько угодно раз. То есть претрейн -> файнтюн -> инференс -> файнтюн на инференсе -> инференс №2 -> ...

Результат - 56% успешных док-в на тесте вместо 21% у предыдущего SOTA, и в ходе работы было сгенерировано 23 более коротких доказательств для базы Metamath, которые туда внедрили.

Это открыло ярмарку статей на эту тему, о которых мы ещё поговорим.

@knowledge_accumulator
👍13👏1
Thor [2022]: комбинируем языковую модель и молотки

Программы и инструменты для доказательства теорем это отдельная вселенная, которую я за короткое время не смог полностью осознать. Я мучил вопросами ChatGPT, перечитывал статью кругами, и в итоге вроде бы смог немного понять суть.

Есть тут такая вещь, как hammer-ы - это название для "традиционных" методов поиска доказательств утверждения. Они работают, получая на вход утверждение в формализованном виде, и какой-то эвристикой находя его доказательство. Конечно же, возможности молотков сильно ограничены, но простые леммы доказывать умеет.

В то же время, есть система типа GPT-f. В статье утверждается, что успех GPT-f и hammer-ов плохо скоррелирован, потому что GPT-f плохо умеет находить факт, который нужно использовать, а hammer-ы плохи в длинных док-вах. Поэтому их нужно использовать вместе!

Делают это так же, как языковые модели учат использовать API: в датасет для файнтюна GPT-f интегрируют токен вызова <hammer>, который будет просить молоток доказать данное утверждение. Такой гибрид и есть Thor. Генерируется датасет из тех утверждений, которые hammer успешно доказывает. Пример совместной работы человека и hammer-ов см. на картинке, нейросеть тут делает по сути кусок слева, строя своё дерево.

Результаты: в статьях после GPT-f используют уже не только Metamath. Все последние работы тестируют на miniF2F - интегрированном бенчмарке из разных сервисов / датасетов.

Молоток сам решает 10%, GPT-f без дообучения (в том посте описана эта процедура) 24%, объединение этих задач - это 27.5%. Thor решает 29.9% без дообучения. При этом GPT-f с дообучением решает 29.6%. Объединение Thor и дообучения на своих же доказательствах находится за рамками этой статьи.

В среду вас ждёт SOTA на miniF2F, пристегните ремни!

@knowledge_accumulator
🔥8🤯2👍1
Autoformalization with Large Language Models [2022] - собираем чемпиона по математике среди алгоритмов.

Продолжаем серию постов про док-ва теорем: раз, два, три.

В данной работе в качестве базовой модели используется Thor. Дополнительно применяется схема из статьи GPT-f - после начального претрейна и файнтюна модели мы запускаем процесс под названием Expert Iteration:
1) Применяем нашу модель на тренировочном датасете задач и пытаемся доказать каждую из них.
2) Собираем датасет из успешных доказательств, на котором мы дообучаем нашу языковую модель.
3) Повторяем процедуру, пока не надоест

В чём ключевая новизна статьи - авторы пытаются расширить тренировочный датасет: берут другой датасет задач по математике, написанных на естественном языке, и просят Codex перевести эти задачи на "формальный язык", с которым мы работаем. По словам авторов, они проверили качество перевода на случайных 150 задачках и получили 38 корректных переводов.

В остальном ничего сильно нового в статье нет, после 2-х итераций Expert Iteration с использованием "автоформализованных" задач получается 29.9% на miniF2F-test превратить в 35.2%!
К сожалению, я не нашёл ablation по поводу того, помогает ли тут именно добавление автоформализованных задач, а не только Expert Iteration.

В пятницу подведём итоги.

@knowledge_accumulator
👍6
Итак, в чём проблема с нейросетями в математике?

Мысли по результатам предыдущих постов.

Прежде всего обозначу критерий успеха - лично мне не будет особо интересно, если алгоритмы научатся хорошо решать простые задачи, описанные на естественном языке. Меня интересует возможность доказывать что-то новое, что ещё не было доказано. Как мы видим из AlphaTensor, это в целом осуществимо, и вопрос в том, почему успеха нет в более общем классе задач.

Я вижу 2 главные проблемы:

1) Неправильное представление данных
В эру хайпа языковых моделей решением на поверхности является рассмотрение математических утверждений как последовательности токенов на формальном языке. Однако, последовательность токенов не содержит в себе почти никакой априорной информации о структуре утверждений. В сфере языка эта проблема нивелируется огромным количеством данных, но на математическом языке таких данных нет и не может быть.
Простейшая иллюстрация - утверждение на формальном языке инвариантно к именам используемых переменных, тогда как с точки зрения языковой модели это разные высказывания.

2) Неправильная генерация действий
Я считаю, что генеративные авторегрессионные модели глобально обречены - генерировать формальные утверждения по 1 токену это плохая идея, но ничего лучше у нас пока что нет. Эта проблема тесно связана с первой, поскольку другой способ представлять утверждения может подсказать другой способ их генерации.
Доказать существование проблемы очень легко - GPT-f решает не все задачи, которые решает простой эвристикой молоток (писал тут в конце поста). Иначе бы молоток был не нужен и не помогал вообще.

Вообще, на мой взгляд, приложение языковых моделей к математике наглядно вскрывает проблемы, которые есть в языковых моделях в целом. Надеюсь, что перегрев ожиданий от ИИ не похоронит инвестиции в область через несколько лет, а исследователи не будут страдать от tunnel vision и забивать отвёрткой гвозди. Тогда мы, может быть, поймём наконец, равны ли P и NP.

@knowledge_accumulator
👍8🔥5🤔1💯1
В сегодняшний выходной предлагаю вам почитать расследование от @tech_priestess об одном из онлайн-курсов по нейросетям: https://habr.com/ru/articles/732556/

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

Хорошего вечера! ☕️
👍11
JEPA ЛеКуна [2022]

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

A Path Towards Autonomous Machine Intelligence (настоящее название статьи) содержит в себе несколько составляющих:

1) Про автономный интеллект
Это попытка представить, как могла бы выглядеть ИИ-система, которая способна так же, как человек, познавать мир, ставить себе цели и что-то делать. Эта часть интересна не столько тем, что в ней написано, а тем, что в ней обозначено как белые пятна - при детальном рассмотрении понятно, что есть куски, которые совершенно непонятно, как делать, и как к ним подступиться.

2) Обзор литературы
Мне, как желающему выбраться из пузыря невежества, очень зашёл верхнеуровневый взгляд на некоторые области ML. Кому, как не ЛеКуну, писать такое.

3) Сама JEPA
Это рассуждение о том, каким подходом можно пробовать учить полезную модель мира, и как её можно будет использовать.
Я уже писал о чём-то похожем в постах про MuZero и NGU - когда у нас нет задачи генерировать данные, нам не стоит пытаться учить генеративную модель - у этого слишком много подводных камней. Альтернативой является обучение энкодеров, которые выбрасывают ненужную информацию, абстрагируются от неё, и уже с такими эмбеддингами мы что-нибудь дальше делаем. Никаких экспериментов тут нет.

Если будете читать, мой совет - выделите себе заранее пару часов, заварите чаёк и погружайтесь - статья большая и охватывает очень широко ML, но без суперсложных деталей, так что должно быть познавательно.

@knowledge_accumulator
👍14😁3🔥1🤣1
Как нейросеть может хранить картину мира?

Современные языковые модели не имеют явной памяти, их картина мира хранится в весах модели. На мой взгляд, это может быть причиной ошибок в работе с фактами, их выдумывание. Есть ли этому альтернатива?

В статье Tracking the World State with Recurrent Entity Networks [2016] предлагается следующая концепция:

1) Будем хранить N ячеек памяти с векторами "состояния" мира.
2) Модель при чтении текста будет обновлять в этих ячейках состояния, по пути пропуская сигнал через обучаемые "гейты", чтобы модифицировать только те ячейки, относящиеся к тексту.
3) При ответе на вопрос мы из этих ячеек читаем информацию, в зависимости от вопроса решая, из каких ячеек, и декодируем ответ.

Интересно, что с помощью манипуляций ключами у этих ячеек можно добиться, например, чтобы нейросеть поддерживала состояние какой-то желаемой сущности отдельно в конкретной ячейке.

Мне кажется интересным потенциальный гибрид языковых моделей и подобной "памяти", потому что это позволит получить интерпретируемую картину мира внутри модели. Но есть непонятные моменты:
1) Как нам обеспечить интерпретируемость концептов? Как добиться их "дискретизации" в нужном виде?
2) Как можно учить такую память на неразмеченном тексте, который содержит противоречащие друг другу утверждения?
3) Можно ли как-то встроить логический вывод в эту схему, чтобы поддерживать непротиворечивость памяти?

Буду рад вашим мыслям на этот счёт или ссылкам на статьи, которые могут быть о чём-то подобном.

@knowledge_accumulator
👍9🤔2🔥1🤯1
Tree Transformer [2019] - учим грамматику языка без размеченных данных.

Инженеры много думают о способах ограничения мощности трансформера, так как оригинальная схема Self-Attention считается избыточной и потому излишне затратной.

Продажа качества за скорость это хорошо, но ещё интересна продажа качества за интерпретируемость - это интересно и с точки зрения исследования, и с точки зрения приложений. Один из вариантов купить интерпретируемость предлагается в данной работе.

Авторы предлагают слой под названием Constituent Attention, который заставляет модель разбивать токены на группы, которые составляют иерархию и обеспечивают многоэтажное разбиение предложения на смысловые части.
Как это работает?
1) Слой выдаёт query и key (другие) для каждого токена.
2) Между каждой парой соседних токенов считается score на основе этих query и key.
3) Эти скоры нормируются (чтобы как раз ограничить модель от полного attention), и далее из них считается альтернативная матрица attention - например, между 3 и 5 токеном attention равен произведению скоров между 3 и 4 и между 4 и 5. Интуитивный смысл этих чисел - вероятности того, что 2 токена принадлежат к 1 группе.
4) Чтобы получилась иерархия, с каждым слоем трансформера мы добавляем эти скоры к предыдущим.
5) Этот альтернативный attention домножается поэлементно на обычный attention.

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

Может быть, у подобной идеи есть потенциал и в других сферах ML. Кто его знает?

@knowledge_accumulator
👍12
A Generalist Agent (Gato) [2022] - путь к AGI или тупик?

На мой взгляд, проблема требуемого количества данных в RL не может быть решена только улучшением алгоритмов.

Человек учится избегать отрицательных наград, не получив ни разу такую награду (например, нам не нужно упасть на машине в обрыв, чтобы понять, что это плохая стратегия вождения). Это происходит благодаря обобщению опыта из прошлого, полученного при решении совершенно других задач.

Deepmind в данной работе делает систему, которая аккумулирует опыт из большого количества задач - они учат единый трансформер под названием Gato копировать поведение экспертов в >500 различных задач в области RL, включая игры, управление роботом и т.д.

Сработала ли магия? К сожалению, не совсем.

На картинке вы можете увидеть графики из ablation studies о том, насколько хорошо помогает в обучении на конкретной задаче предобучение на других задачах.
Имеет смысл смотреть на худший случай - Atari Boxing, в котором модель со случайном инициализацией обучается лучше предобученного Gato.
Это показывает, что обобщающей способности такого подхода не хватает, чтобы учиться быстрее на достаточно простой, но не похожей задаче.

Думаю, что мы нуждаемся в другом способе извлечения знаний из данных, если хотим добиться out-of-the-distribution обобщения, способностью к которому обладаем мы с вами.

@knowledge_accumulator
👍116🔥3
Causal Inference - как делать правильные выводы из данных

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

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

Этот феномен играет роль и в ML, например, в рекомендательных системах. Часть алгоритмов уязвима к ситуации, когда некоторые объекты в данных встречаются сильно чаще других, у них больше положительных откликов, и алгоритмы начинают выбирать популярные объекты для пользователя просто из-за их популярности, а это плохо.

Вы можете очень сильно прокачать своё критическое мышление и способность делать правильные выводы, посмотрев хотя бы треть этого прекрасного плейлиста про Сausal Inference. Это короткие видео, в которых автор подробно объясняет основы этой области. Требуется базовая грамотность в теории вероятностей. Добавляйте себе в закладки, запишите просмотр в цели на 2023 ✍️

Посмотрев, вы поймёте, почему надёжный вывод можно сделать только в условиях эксперимента с фактором случайности, в чём математический смысл "поправок" в исследованиях, и почему даже с ними вывод не становится надёжным.

@knowledge_accumulator
👍153🔥3
Language Models are Open Knowledge Graphs [2020] - строим графы знаний с помощью языковой модели

Уже многие десятилетия в сфере ИИ существует понятие графов знаний - в них вершины это сущности (то, что описывается существительными), а рёбра это "отношения" между ними. Например, могут быть вершины "Альберт Эйнштейн" и "Нобелевская премия", и между ними может быть ребро "получить награду".

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

В рассматриваемой работе применяется LLM для извлечения фактов, записанных в тексте:
1) С помощью утилиты spaCy находим в предложениях пары сущностей head и tail, между которыми потом будем извлекать отношение.
2) См. картинку. Применяем любую LLM к куску текста от head до tail включительно. Берём матрицу attention. Теперь начинаем набирать по 1 токену в текст их отношения.
- Изначально у нас только токен [head].
- Смотрим на attention между последним добавленным токен и остальными токенами, которые ещё не добавляли. Добавляем тот, у которого наибольший attention. Если это токен tail, то поиск завершается.
3) Получившихся "кандидатов" [head, some text, tail] мы дополнительно фильтруем различными эвристиками и пытаемся их соотносить (с помощью сторонних NLP-утилит) с сущностями из существующих графов знаний для валидации фактов.
Я здесь упростил много деталей, но не нахожу их важными. Тут часовой обзор статьи от Янника.

Результаты не представляют особого интереса - обилие костылей и алгоритм, который использует матрицу внимания, которая учится совсем для другого, не позволяют совершить прорыв - результат немного превышает SOTA 2015-го года. Видимо, картину мира нам нужно строить совсем другим образом.

@knowledge_accumulator
👍73🔥3😁2😢1
К чему приведут регуляции ИИ?

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

С одной стороны, специалисты в технологиях чувствуют своё превосходство в экспертизе. Часть шутит с долей издёвки о глупости политиков в технологиях, а кто-то снисходительно пытается им помочь разобраться. Ведь это просто наивные немолодые люди, которые хотят понять, что происходит, чтобы сделать, как лучше.

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

Эти инженеры-мечтатели встречаются с людьми, для которых манипулировать людьми ради зарабатывания денег и власти - это работа, в которой они лучшие специалисты в мире. Они находятся в постоянной борьбе с конкурентами и их умения максимально отточены.

И чем всё закончится? А как обычно бывало в других сферах - создадут правила, которые ни от чего не будут защищать, но которые заставят всех выполнять. Выиграют крупные компании, которым ничего не стоит потратить ресурсы на выполнение бесполезных "тестов на безопасность", зато мелкие компании будут задушены - тратить 6 месяцев на то, чтобы просить свою языковую модель сгенерировать текст для обмана человека на фрилансе, они не смогут.

Вы считаете, что регулирование будет продумано так, чтобы ничему не повредить? Регулировать будут только крупные модели у больших компаний, не ограничив творческую среду и развитие?

Тогда перечитайте этот пост.

@knowledge_accumulator
👍29🥴43👏1🖕1
Приглашаю в свой твиттер!

Так бывает, что у меня возникают интересные мысли на ту или иную тему, но писать про это целый пост нецелесообразно. Поэтому я недавно начал вести твиттер.

https://twitter.com/al_fritzler

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

Пишите в комментариях, если есть какие-то пожелания по содержанию ✍️
👍8💩4
Symbolic Knowledge Distillation: from General Language Models to Commonsense Models [2021]

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

В работе используется база знаний ATOMIC, состоящая из триплетов: <событие, отношение, вывод>, где событие и вывод - это какие-то 2 текстовых утверждения, а отношение - это один из нескольких видов причинно-следственной связи между ними. Например, отношение xNeed - это когда вывод является условием для события.

Авторы используют GPT-3, чтобы расширить эту базу знаний:
1) Сначала генерируются события, подавая в качестве промпта отобранный сет из хороших существующих событий из ATOMIC.
2) Для каждого отношения подбираются примеры пар <событие, вывод> из ATOMIC, и составляется промпт следующего вида:
— Вопрос. Например, для xNeed: "что должно произойти, чтобы произошло событие?"
— Примеры пар из базы atomic
— Сгенерированные события из пункта 1
Таким образом генерируются соответствующие выводы для событий.
3) Обучают дополнительную RoBERTa, которая отличает ложные триплеты от истинных, и фильтруют сгенерированные триплеты по ней
4) Дистиллируют маленькую языковую модель (GPT-2 😁) на этих триплетах

Качество триплетов оценивается людьми - просят поставить Accept/Reject/NA. Исходный ATOMIC это полмиллиона триплетов с рейтингом 87%, дополнительно генерируется 6 миллионов триплетов с рейтингом 78%, но после отсечения RoBERTa остаётся 2.5 миллиона с рейтингом 96%. Авторы исследуют датасет и делают вывод, что с качеством данных и их разнообразием всё в порядке. А дистиллированная GPT-2 показывает лучший результат на commonsense-вопросах, чем исходная модель - вероятно, засчёт увеличения качества датасета.

Мне эта история нравится, я думаю, что это шаг в правильную сторону. Кроме того, сама идея триплетов с причинно-следственными отношениями это, на мой взгляд, круто, я думаю, что поверх подобных данных можно учить нейросетевую картину мира, и в комбинации с логическим выводом мы получим протооракула.

@knowledge_accumulator
👍12👏1
2025/07/14 03:25:28
Back to Top
HTML Embed Code: