Я пробовал для каждой пары (модель, задача) cls и пулинг, и выбирал лучший из двух вариантов. Для вашей модели у меня на STS и интентах пулинг дал более хороший результат, а на токсичности и сентименте, внезапно, cls.
Точно реплицировать действительно сложно, т.к. я много менял коней методы в процессе обучения модели. Но сложности в поддержке я не вижу: созданную странным образом модель дальше можно использовать для своих задач, не задумываясь, как именно она была обучена.
Может я пропустил в статье метрики, но вроде сетка делалась для какой-то конкретной бизнес задачи.
Исходная мотивация была использовать эту сетку для классификации интентов чат-бота, и на этой задаче она работает нормально - капельку лучше, чем fasttext и пара русских BERT'ов. Будучи при этом заметно меньше их. Но датасет, на котором я качество мерял, принадлежит не мне, а клиенту, и непубличен, поэтому про него писать не стал.
1 процентный пункт прироста качества против FastText сложно обосновать.
С посылом согласен: я тоже люблю простоту. Поэтому сам долго сидел на FastText'е и на трансформеры не переходил. Но сейчас таки понемногу на них пересаживаюсь, ибо нравится лёгкость дообучения на смежные задачи.
Но фидбек принят: в следующий раз включу в бенчмарк более простые бейзлайны.
Я склонен думать, что качество все-таки надо оценивать на каких-то сложных "больших" задачах.
Да, я собираюсь на RussianSuperGlue тоже померяться.
Перестал ли банить и почему, я не знаю, не слежу за этим. Но в правилах сайта сказано, что упоминание авторами "своих персональных блогов на крупных медиа-ресурсах" допустимо.
А джинсой, насколько я знаю, называется "необъективный материал, публикация которого была тайно оплачена". За написание этого поста мне никто не платил (хоть было бы и неплохо).
В tgalice я хочу прийти рано или поздно примерно к этому: сценарии навыка описываются конфигами в yaml, которые потом запускаются питонячим кодом. Эти конфиги можно править вручную, а можно — в графическом интерфейсе.
Если интересно подобным заняться — подключайся к проекту :)
Похоже вы не очень хотели использовать Aimylogic, любопытно узнать почему?
Если честно, я просто люблю писать код самостоятельно и иметь полный контроль над ним.
Кажется, это вопрос эстетики.
Возможно, если бы конструктор Aimylogic был опенсорсным, я остановился бы на нём.
Или, кстати, можно в гугл колабе запускать бота (в режиме polling, как и на локальном компе). Кажется, это самый дешёвый вариант. Вот минимальный пример.
Я знаю, что есть учёные, которые работают над поиском формулы оптимальной размерности, но, кажется, серебряной пули пока не придумали. Так что, наверное, перебор.
Да можно и без атеншна, CNN с двумя башнями (для контекста и для ответа) уже сильно лучше работает. Но интересно было, чего можно получить без нейронок и вообще без супервижна.
Любопытно, а что создаёт такое впечатление? :)
В каком-то смысле это действительно перевод — это слепленные и немножко переписанные 5 постов из блога. Но они и исходно были на русском.
Мне кажется, правильное решение — сделать это настраиваемым. Чтобы по умолчанию показывались все статьи, но можно было снимать галочки с языков, на которых читать не хочешь.
Надеюсь, разработчики Хабра так и сделают.
На самом деле, целью текста было ответить на конкретный вопрос «what are typical applications of LA in ML» (возникший у не-русскоязычной аудитории). А потом я решил его расшарить публично, и посмотреть, что будет :)
Что аудитория не-русскоязычная — это, наверное, существенно. Всё-таки на постсоветском пространстве существует культ математики, согласно которому математика крайне важна, если не доказано обратное. А вопрошали меня иностранные разработчики, которые про машинку знают больше на уровне from xgboost import * или красивых картинок, а теорию никогда особо и не изучали. И если многие наши студенты привычны к формулкам и побаиваются кода, то где-нибудь в Штатах или в Израиле чаще наоборот.
Я пробовал для каждой пары (модель, задача) cls и пулинг, и выбирал лучший из двух вариантов. Для вашей модели у меня на STS и интентах пулинг дал более хороший результат, а на токсичности и сентименте, внезапно, cls.
Под Сбертом ты понимаешь модель sberbank-ai/sbert_large_nlu_ru и пост "Обучение модели естественного языка с BERT и Tensorflow"? Если да, то расчёта метрик по STS для русского языка я там не нашёл (может быть, проглядел). Если поделишься ссылкой, буду весьма благодарен.
Точно реплицировать действительно сложно, т.к. я много менял
конейметоды в процессе обучения модели. Но сложности в поддержке я не вижу: созданную странным образом модель дальше можно использовать для своих задач, не задумываясь, как именно она была обучена.Исходная мотивация была использовать эту сетку для классификации интентов чат-бота, и на этой задаче она работает нормально - капельку лучше, чем fasttext и пара русских BERT'ов. Будучи при этом заметно меньше их. Но датасет, на котором я качество мерял, принадлежит не мне, а клиенту, и непубличен, поэтому про него писать не стал.
С посылом согласен: я тоже люблю простоту. Поэтому сам долго сидел на FastText'е и на трансформеры не переходил. Но сейчас таки понемногу на них пересаживаюсь, ибо нравится лёгкость дообучения на смежные задачи.
Но фидбек принят: в следующий раз включу в бенчмарк более простые бейзлайны.
Да, я собираюсь на RussianSuperGlue тоже померяться.
Перестал ли банить и почему, я не знаю, не слежу за этим. Но в правилах сайта сказано, что упоминание авторами "своих персональных блогов на крупных медиа-ресурсах" допустимо.
А джинсой, насколько я знаю, называется "необъективный материал, публикация которого была тайно оплачена". За написание этого поста мне никто не платил (хоть было бы и неплохо).
Мне кажется, это свойство вообще людей в целом.
Если интересно подобным заняться — подключайся к проекту :)
Если честно, я просто люблю писать код самостоятельно и иметь полный контроль над ним.
Кажется, это вопрос эстетики.
Возможно, если бы конструктор Aimylogic был опенсорсным, я остановился бы на нём.
Когда попробуешь — расскажи в чатике)
Да можно и без атеншна, CNN с двумя башнями (для контекста и для ответа) уже сильно лучше работает. Но интересно было, чего можно получить без нейронок и вообще без супервижна.
В каком-то смысле это действительно перевод — это слепленные и немножко переписанные 5 постов из блога. Но они и исходно были на русском.
Надеюсь, разработчики Хабра так и сделают.
Что аудитория не-русскоязычная — это, наверное, существенно. Всё-таки на постсоветском пространстве существует культ математики, согласно которому математика крайне важна, если не доказано обратное. А вопрошали меня иностранные разработчики, которые про машинку знают больше на уровне
from xgboost import *
или красивых картинок, а теорию никогда особо и не изучали. И если многие наши студенты привычны к формулкам и побаиваются кода, то где-нибудь в Штатах или в Израиле чаще наоборот.