я обучала одну модель
4.58K subscribers
457 photos
29 videos
21 files
379 links
Shitposting on various subjects

PS рекламы в канале нет
Download Telegram
я обучала одну модель
Интересный папирус, в котором авторы воспроизводят увиденное человеком изображание по сканам активности мозга • Сначала людям показывают видео нескольких категорий (абстрактные геометрические фигуры, лица людей, эктремальный спорт и тд) • Проводят…
А вот и логичное продолжение идеи про реконструкцию изображений по мозговой активности, про которую тут давно был пост. В статье 2019 года брали сканы ЭЭГ, получали эмбеддинг с помощью LSTM и разворачивали его в картинку с помощью convolutional сетки, а в 2022 для декодинга картинки используют диффьюжн модель

https://t.me/abstractDL/176
3
This media is not supported in your browser
VIEW IN TELEGRAM
Papers with code x Meta внезапно выпустили свою модель под названием Galactica – LLM, но с уклоном в академию и науку

Она может саммаризировать статьи, генерировать обзоры литературы и выжимки лекций, предлагать цитирования и писать сниппеты кода (и много чего еще)

Секрет успеха, как это часто бывает, в датасете: 48M статей, 2M файлов с кодом, и много энциклопедий, учебников, баз знаний и т.д. Авторы утверждают, что гораздо тщательнее фильтровали и отбирали данные для датасета по сравнению с предыдущими scientific LLM

Одна интересная новация, которую они предалагают в сопровождающей статье, – токен <work> для создания working memory. Чтобы обеспечить возможность chain-of-thought для решений сложных примеров (где нужны промежуточные вычисления для ответа на вопрос) обычно используют промтинг по типу ‘Let’s think step by step’, чтобы модель расписывала свои шаги. Здесь же авторы помещают все входные данные и последовательность вычислений между <work>-токенами, что больше заточено под математические операции, чем описание словами после промта

Потыкать демо можно тут – https://galactica.org/

Только кажется, что там выставлен сильный лимит на длину генерации, и так же впечатляюще, как на их демонстрации, не получится 🤡 зато веса публичные!
Please open Telegram to view this post
VIEW IN TELEGRAM
15👏2
This media is not supported in your browser
VIEW IN TELEGRAM
PivotTableJS – библиотека для быстрого исследования данных в Jupyter Notebook. Все с drag-n-drop, дата саентисты советуют.
16👍5
Деды снова схлестнулись
😁21🥱18
Как заставить LLM использовать внешние инструменты (например, поиск в гугле, калькулятор, Википедию) при генерации текста

Известная проблема LM в том, что вместо точной информации они зачастую генерят полную отсебятину. Как было и со скоропостижно скончавшейся Galactica, которая выдумывала цитирования или факты. Понятно, что хочется сделать так, чтобы модель ходила за точной инфой в базу данных, поисковый движок или python script

Для этого нужно несколько шагов:
1. Специфичный промтинг (как всегда). Про это был пост в канале DL in NLP. Модели на вход подается большой промт, где объясняется, что она может инициировать IPython session (чтобы в том числе импортировать модуль Википедии), чтобы ответить на вопрос. Выглядит промт примерно так:

«If you can answer directly, use this format:
Question: ${Question}
Answer: ${Answer}
You are unable to directly answer any question <…>
In these cases, consult Python. Use this format:
Question: ${Question}
IPython session:
${IPython commands and output needed to find answer}»


+ далее сам вопрос

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

2. Self-ask. Логичное продолжение идеи «let’s think step by step» из этой статьи. Для ответа на сложные вопросы, нужно заставить модель здавать сначала промежуточные. Пример промта выглядит примерно так:
«Question: When was the founder of craigslist born?
Are follow up questions needed here: Yes.
Follow up: Who was the founder of craigslist?
Intermediate answer: Craigslist was founded by Craig Newmark.
Follow up: When was Craig Newmark born?
Intermediate answer: Craig Newmark was born on December 6, 1952.
So the final answer is: December 6, 1952»


+ далее сам вопрос

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

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

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

Работает это так, что модель генерирует follow-up вопросы, и для ответа на них может быть выбрано то или иное действие (Search/Calculate). Результат этого действия подставляется как ответ на этот промежуточный вопрос («Intermediate answer»), и с его учетом модель продолжает дальше свою генерацию. Например, после этого она может вызвать какое-то другое следующее действие, как в задании на скрине. Весь тяжелый промтинг, нужный для того, что это работало, происходит на стороне LangChain, и руками это прописывать не нужно (удобно!).

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

Possibilities are endless короче 🌈
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🥰52🥱1
Вот теперь правда возможности безграничны
👍18😁10🥰85🤔2
Превратится ли этот канал в постинг мемов из chatgpt? Да, на время
👍14🥴8👏1
К опросу не прикрепился пост, ну что поделать он будет отдельно

У меня лично первая волна интереса и восторга сменилась какой-то апатией довольно быстро. В плане, вообще не понятно, что теперь делать в NLP, и в коммерческой разработке, и в ресерче. Кажется, что самая главная проблема (убедительный и похожий на человеческий fluent текст + фактологичность) была решена, ну и что теперь дальше? Хотя понятно, что это временное, и новые ниши для исследований и улучшений появятся довольно быстро
При этом, я сама юзаю теперь ChatGPT для разных задач, которые я не очень люблю делать, например, для написания длинных и хорошо связанных текстов, так что нельзя отрицать, что в жизни эта штука помогает сильно

Пишите ваши опиньонс вне рамок опроса сюда в коменты 😘
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍1😢1
Forwarded from DL in NLP (Vlad Lialin)
Deep Learning был одним из немногих источников хороших новостей в 2022 году, поэтому хотелось составить список статей которые запомнились и сильно на меня повлияли (лучше поздно чем никогда):

1. Latent Diffusion — он же Stable Diffusion, который сделал text2image доступным для обычных людей
1. OPT: Open Pre-trained Transformer — неожиданный и очень приятный релиз целой линейки 0.1B-175B языковых моделей от фейсбука (пост)
1. 🌸 BLOOM — результат работы BigScience, показавший, что DL сообщество может коллабораровать at scale (пост)
1. 8-bit Matrix Multiplication for Transformers at Scale — квантизованные трансформеры которые позволяют впихать невпихуемое и комфортно рабоать с 15B моделями на одной 3090. Абсолютный game changer для меня и для всей индустрии.
1. 🦩 Flamingo — статья которая показала что склеивать замороженые предтренированные модели это хорошо, а также дала рецепт к огромным мультимодальным датасетам через использование структуры HTML.
1. LAION-5B — image-text датасет примерно бесконечного размера. Думаю мы увидим много интересных статей на его основе в 2023.

Демократизация больших моделей была сильным трендом, мы получили не одну а две 175B+ оперсонсных модели. И с помощью int8 обычные рисёчеры даже могут инферить их на одной машине с ~8GPU. Или даже не своей картошке с помощью petals.

Добавим в список ещё пару менее попсовых статей:
1. Training a Helpful and Harmless Assistant with RLHF — предвесник ChatGPT от Anthropic который остался незаслуженно незамеченым
1. Simple Local Attentions Remain Competitive for Long-Context Tasks — мы либо всё ещё не придумали хороший long attention, либо ничего лучше local window + a few global tokens и не надо (пост)

Кроме этого я был приятно удивлён Neural Networks: Zero to Hero от Andrej Karpathy, очень рекомендую.

И воспользуясь случаем сделаю shameless plug моих статей, вдруг кому будет интересно:
1. Large scale probing of pre-trained langauge models
1. Learning to Ask Like a Physician
1. Pseudolabeling for video captioning pre-training works better than existing video-text datasets
8👍3
Наконец-то кто-то сделал сайт, который давно напрашивался, а именно обновляемый сборник всяких AI инструментов, разбитый по тегам (чтобы не приходилось вам самим шерстить продактхант)
https://favird.com/l/ai-tools-and-applications
🔥26👏2🙏1
Все уже много раз написали, что сейчас развернется настоящая гонка между развитием генеративных сетей и алгоритмов, которые детектят сгенерированный контент. Буквально вчера вышла первая (из тех, что я видела) статья на этот счет конкретно в домене генерации языка – A Watermark for Large Language Models

Для решения задачи авторы предлагают добавлять в генерацию модели сигнал, который не может быть считан людьми, но при этом позволяет алгоритмически определить текст как синтетический. Пока это достаточно простой алгоритм:
1. Генерируем авторегрессивно токены как обычно t-1
2. Берем токен t и для него с заранее заданной хеш-функцией генерим хеш. Используем его как сид для генерации случайного числа
3. По случайному числу разбиваем словарь модели для whilelist и blacklist. Для слов из whitelist докидываем заданную константу в векторе с вероятностями, чтобы повысить шанс их сгенерировать

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

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

В целом статья кажется мне очень качественной и продуманной, adversarial attacks они тоже разбирают, и особенно любителям матстата зайдет
👍223🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Еще одно направление, набирающее актуальность на фоне взлета языковых моделей, – как заставить их пользоваться внешними инструментами и/или внешними данными при генерации. Вот тут я уже писала про LangChainAI (я кстати уверена, что это очень недооцененный пока фреймворк, который должен взлететь), которые позволяют оффлоудить некоторые задачи, которые необходимы для нахождения ответа. Например, языковая модель может сама посмотреть что-то в Википедии, что-то посчитать в питоньем скрипте, можно и стекать эти операции, чтобы получить достаточно сложное поведение агента

Теперь сделали еще и либу GPT Index, которая позволяет модель легко использовать какие-то внешние мультимодальные (!) данные. Можно считать массив текстов и использовать его как долгосрочную память для чатбота. Или сделать из этого базу знаний для QA-системы. Можно распарсить текст с фотографий – вот тут например модель получает инфу с фотографии чека, и может ответить на вопросы по его содержанию (раньше для такого нужна была бы мультимодальная модель типа Flamingo). Можно парсить презентации, pdf, можно парсить Твиттер, Notion и Слэк, можно парсить аудио и видео даже!

По сути можно создать базу данных из чего угодно и оправлять к ней запросы в natural language, плюс, снимаются ограничения, наложенные размером контекстного окна модели. А еще это может помочь модели меньше галлюцинировать факты, раз их нужно не сгенерить, а просто найти
И интеграция с LangChainAI у них тоже есть, чтобы можно было эмулировать сложную последовательность работы с данными

А на хакатоне Scale AI (очень много AI на один пост) недавнем уже набросали поверх GPT Index тулзу, чтобы можно было передавать GPT большие папиры и потом вместе с ней их обсуждать и задавать по ним вопросы (видео собственно с ней)
13🔥4👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Когда-то у меня в коментах спрашивали, можно ли попросить LLM наскрейпить что-то с сайта и использовать эту инфу. И вот сегодня нашла демку, где ChatGPT можно попросить написать и прогнать код для selenium (работает все снова на LangChainAI)

Хочется, чтобы это еще могло сложную серию запросов выполнять и сохранять промежуточные результаты как объекты 🤔
🤯7🔥3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Гугл выпустил* Text-to-Music модель MusicLM, которая видимо новая SOTA в этой области (и хайпит в AI Твиттере сейчас)

Принципиальных отличий там несколько:
1. Взяли CLIP-подобную модель MuLan, где общее эмбеддинговое пространство между текстом и аудо-треками (44M семплов тренировочных!)
2. Стали генерировать иерархически – на инференсе переводят текст в аудио-токены через эту модель MuLan, с помощью них получают семантические токены (можно о них думать как о маппинге между аудио-токенами и их семантикой), и потом они вместе обуславливают генерацию финальных акустических токенов
3. Выпустили видимо первый бенчмарк в этой области, где 5.5k треков были вручную размечены живыми (!) музыкантами

Понравилось их демо – во-первых, можно очень сильно изощряться в описании треков (как на скрине). Во-вторых, можно генерировать музыку по описанию картин из Википедии (для совсем эстетов). В-третьих, там можно полушать как звучит accordion rap и accordion death metal 💃
*как всегда с моделями для музыки релизнули пока ток датасет

https://google-research.github.io/seanet/musiclm/examples/
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍2🤯1
Состояние генерации аудио на 2023 (пока влезает на один скриншот)

https://github.com/archinetai/audio-ai-timeline
👍155