Pull to refresh
13
0
Илья Козиев @inkoziev

Разработчик NLP

Send message

Статья была бы кхм чуть более полезна для коллег по цеху, если бы вы хотя бы написали, сколько своих данных вы добавили в файнтюн и какая там была разбивка по доменам/темам.

А то пока содержимое статьи можно кратко прорезюмировать так: 1) взяли чужие инструктивные данные, 2) взяли чужие диалоговые данные, 3) нагенерили диалоги через апишку openai 4) отфайнтюнили чужую foundation model, причем максимального размера из доступных, стандартным способом с LoRA. 5) на сотне тестовых вопросах как-то проверили, что она выдает. PROFIT!

Извините за токсичность ;)

Как думаете, есть ли у Chper.ai шанс стать самой популярной соцсетью? Без надоедливых кожаных мешков.

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

Забавная попытка двух чуваков поиметь немного с хайпа "рисков AI", так вижу)

А чем это отличается от "угол=0"?

Я немного сломался, пытаясь понять, что означает "угол 180 градусов относительно плоскости галактики" применительно к этим нитям :( Я бы понял 90 градусов, это значит вертикально. Но 180?

Самая главная угроза со стороны ИИ это невероятный рост количества статей на хабре на тему "угроза ИИ".
Иронично, что подходит под пункт "зашумление информационного пространства".

озвучивать
По теме "sounds of strange attractor" нашел https://vimeo.com/281153379
Забавно :)

Возможно, стоит подкинуть ему первые две-три строчки — а дальше нейронки обычно неплохо подхватывают.

Да, годное уточнение :)

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

Похоже, на наших глазах действительно зарождаются новые религии в виде всяких апокрифов Пришествия Диавола ИИ. Вроде все атрибуты налицо - звучное, хотя и бессмысленное название, привязка к мнению хайпового Юдковского (впрочем, он уже заработал себе вечные муки в цифровой вселенной за обещание бомбить датацентры), нагнетание неизбежности. Покайтесь, ибо грядет...

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

Спасибо :)

Могу сказать, что на моей задаче FRED T5 XL оказался объективно круче старушки ai-forever/rugpt3large_based_on_gpt2.

Игорь, а можете уточнить, какая именно MLM модель использовалась в вашей оценке "BertScore"? Ибо их много и ведут они себя на этой задаче очень по-разному.

Для Paraphraser тоже были бы интересны какие-то технические детали, как минимум какая модель под капотом, какие параметры генерации, как ранжировались кандидаты.

Нет, я не против философии как таковой. Недавно с удовольствием прочитал работу Метцингера "Искусственное страдание" ссылка. Кстати, рекомендую всем, там неожиданно логичные рассуждения в первой половине, причем с необычного ракурса. Я прямо не ожидал такого владения темой ML от автора "Being No one".

Просто меня, человека с инженерным профилем, огорчает, что вокруг "искусственного интеллекта", и особенно проблемы сознания, слишком много схоластики, журналистики и маркетинга, а вот обоснованных умозаключений и фальсифицируемых гипотез - днем с огнем :(

Вообще-то, для обоснования вышеприведенного тезиса достаточно сослаться на Канта

Попридираюсь к деталям: вообще-то обосновывать тезис ссылкой на философскую концепцию это не очень хороший прием. Философия все-таки не имеет доказательной силы. С таким же успехом можно сослаться на апокрифическое евангелие или фильм "Бегущий по лезвию".

Хех, Пушкин + нейросетка:

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

Кругом равнина, лес и горы,
Цветы, деревья и трава,
И всё вокруг ласкает взоры,
Ведь это зимушка-зима.

Нейросетки трудолюбивы и не ведают усталости, так что на тему "Мороз и солнце" могут выдавать много всякого:

Мороз и солнце, день чудесный,
Кругом красиво и тепло.
Округа нас встречает с песней,
Округу снегом замело.

Природа светится, сверкает,
И побелела вся земля.
Зима нас снегом укрывает,
Цветы, деревья и дома.

Еще? Да пожалуйста:

Мороз и солнце, день чудесный
В России за ночь выпал снег,
И нас укрыл покров небесный
Под хмурый двадцать первый век.

Зима заглядывает в лица,
Врываясь в души и дома,
России снег ночами снится,
Зима, холодная зима.

На самом деле этих примеров у меня с десяток:

Мороз и солнце, день чудесный,
Так ярко светит и тепло,
Вдали грохочет гром небесный,
И капли бьются о стекло.

Кружится легкая поземка,
И ветер воет в тишине,
И ручейки смеются звонко,
И отражаются в окне.

Финальным аккордом:

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

Жизнь без прозрения, без Бога,
И без отравленной души,
Жизнь, как бесцельная дорога,
Не проданная за гроши.

:)

>А зачем для диалогов генератор "вектор в текст" вообще?

В качестве примера - допустим, я хочу, чтобы чатбот умел динамически адаптировать свою речь под текущего собеседника, максимизируя понимаемость и минимизируя длину своих ответов. Или чтобы собеседник чаще ставил смайлики на его ответах. Люди ведь так делают, меняют "речевой регистр", говорят более простыми словами или простыми предложениями, если видят, что собеседник их не понимает. Или чаще шутят, если общаются с условным любителем юмора. Чтобы управлять генерацией в диалоговой gpt, я (в силу кривизны рук и скудоумия) использую всякие костыли в затравке, переключаемые ручными правилами. А так бы этим занималась rl-моделька и декодер "вектор-текст".

>Кажется, RL можно повесить на ту же самую GPT, предобученную на диалоговом корпусе?

Я пока не нашел хорошего способа управлять генерацией в GPT с помощью RL/whatever. Он наверняка есть, но я пока не наткнулся на такой :(

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

1) манипулировать с входным текстом, например добавлять туда спецтокены эмоций, предварительно отфайнтюнив модель на корпусе, который размечен чем-то типа cointegrated/rubert-tiny2-cedr-emotion-detection.

2) лезть руками в вектор на выходе модели, гася вероятности ненужных токенов и повышая вероятности нужных. Тут все сложно, так как русский текст часто при bpe-токенизации разваливается на малобуквенные кусочки, и надо филигранно рулить вероятностями служебных частей речи типа предлогов, окончаниями и т.д.:

У Лу ком ор ья дуб зелё ный , З ла тая цепь на ду бе том : И днём и ночью кот учёный Всё ходит по цепи кругом

Первый способ понятно как сформулировать в терминах rl: эмоции это action'ы, мы будем учиться динамически переключать эмоциональную окраску каждой новой реплики для оптимизации цели диалога. Второй способ уложить в RL я не знаю как, 50k action'ов это слишком.

Круто! Вот я давно ждал такой модели. Была у меня задумка взять (ну то есть сначала кхм сделать) такой генератор "вектор в текст", повесить на него RL и пусть этот франкенштейн учится выдавать диалоги. Думал начать с чего-то совсем простого, типа Deep Deterministic Policy Gradient, который умеет в continuous actions, и пусть он рулит компонентами эмбеддинга. 768 это конечно многовато, но надо попробовать. А уж reward'ы мы накрутим, начиная с хоть с https://huggingface.co/tinkoff-ai/response-quality-classifier-base. Ну или даже брать перплексию на гэпэтэхе, натрененной на куче диалогов (детских, смешных и т.д.). Спасибо, моя мечта стала ближе :)

Спасибо, скачал,
действительно кажется это просто что-то типа анкет, а не диалоги.

>Кстати у меня есть архив постов овощного треда из /soc/ с 2019-11-08 по 2022-04-19, чуть больше 104 тысяч постов. Готов поделиться, если кому нужно.

Привет! Если выложите в паблик или пришлете архив с постами (можно в личку в моих контактах) - буду безмерно благодарен. Добавлю эти диалоги в сырье для эксперимента с "беседующими ботами". Там очень не хватает "свежей крови", чтобы появилось немного ярости, грубости и неуважения, как у живых человеков в интернете. А то сейчас слишком часто диалог вырождается во взаимное сюсюкание такого типа:

- Добрый день! Как дела?
- У меня всё хорошо. А у тебя?
- Неплохо
- Это хорошо. Значит, ты всё делаешь правильно
- Да, все делаю правильно
- Значит, у тебя всё хорошо)
- Ага, а как твои дела?
- Хорошо)
- Значит, ты просто хочешь меня спросить, когда у меня всё хорошо будет
- Да, примерно так 🙂
- Вот и отлично. Давай, спрашивай


Спасибо за cointegrated/rubert-tiny2!

Я не мог отказать себе в удовольствии посмотреть, как она в сравнении с "старшей сестрой" cointegrated/rubert-tiny и со sberbank-ai/ruBERT-base на задачке определения релевантных/нерелевантных вопросов к коротким текстам. Сиамская сетка с замороженными весами bert, и пара обучаемых слоев работают с эмбеддингами токенов, 3-fold кроссвалидация.

cointegrated/rubert-tiny   mean f1 = 0.9474928352184623

cointegrated/rubert-tiny2 mean f1 = 0.9597176177090234

sberbank-ai/ruBERT-base mean f1 = 0.975931134016122

Получается, что увеличение размера в ~2 раза (45Мб у rubert-tiny и 112Мб у rubert-tiny2) докидывает одну сотую, а потом увеличение в 6 раз (680 Мб у ruBERT-base) докидывает еще полторы сотых в f1. Интересный trade-off. Можно еще учесть разницу на обучении, там затраты на инференс данных через эти берты примерно соотносится с их размером.

Справедливости ради надо сказать, что именно это четверостишье - человеческое, оно в обучающем датасете (надо было наверное в тексте статьи это отметить, чтобы не было недоразумений).

Но вообще есть такая проблема с генеративными стихами - плагиат. Иногда (ох не всегда, увы) модельки выдают настолько хорошие стихи, что возникает подозрение, не переобучились ли она и просто выдает то, что запомнила. Приходится перепроверять, гуглить и яндексить.

1

Information

Rating
Does not participate
Location
Череповец, Вологодская обл., Россия
Date of birth
Registered
Activity