Про изменение языка
Не секрет, что мы стремимся к упрощению и автоматизации. Причем не только бизнес процессов, но и нашей речи.
Во многом это происходит из-за интернета: мы сами не замечаем как в наш обиход врываются заимствования, сокращения, мемы.
Это не хорошо и не плохо, это естественный процесс, ведь общество развивает язык (хотя и физиологические особенности надо учитывать).
Отражение этого можно увидеть и в данных. В чатах - короткие сообщения, а в разговорах по телефону: "да", "нет", "не знаю".
По сути это естественный датадрифт, который, вероятно, больше всего заметен в машинном переводе. Там и так есть свои проблемы с разными трактовками одной и той же фразы, а тут ещё и это.
Быть может старые модели вовсе не так плохи как кажутся?
Быть может результаты, что есть сейчас некорректно сравнивать и нужно переобучать каждую модель?
Быть может новые архитектуры просто учатся на "свежих" наборах и становятся SOTA?
Или же проблема немножко в другом? В том что данные подвергаются "временной коррозии" (устаревание слов, изменение конструкций текстов, тренды)?
Очень интересно узнать, что вы думаете про изменение языка в контексте нынешнего NLP.
И что думают Kali Novskaya, DL in NLP
Не секрет, что мы стремимся к упрощению и автоматизации. Причем не только бизнес процессов, но и нашей речи.
Во многом это происходит из-за интернета: мы сами не замечаем как в наш обиход врываются заимствования, сокращения, мемы.
Это не хорошо и не плохо, это естественный процесс, ведь общество развивает язык (хотя и физиологические особенности надо учитывать).
Отражение этого можно увидеть и в данных. В чатах - короткие сообщения, а в разговорах по телефону: "да", "нет", "не знаю".
По сути это естественный датадрифт, который, вероятно, больше всего заметен в машинном переводе. Там и так есть свои проблемы с разными трактовками одной и той же фразы, а тут ещё и это.
Быть может старые модели вовсе не так плохи как кажутся?
Быть может результаты, что есть сейчас некорректно сравнивать и нужно переобучать каждую модель?
Быть может новые архитектуры просто учатся на "свежих" наборах и становятся SOTA?
Или же проблема немножко в другом? В том что данные подвергаются "временной коррозии" (устаревание слов, изменение конструкций текстов, тренды)?
Очень интересно узнать, что вы думаете про изменение языка в контексте нынешнего NLP.
И что думают Kali Novskaya, DL in NLP
Telegram
Kali Novskaya
Нейросети, искусство, мысли. Поехали!
Разрабатываю LLM и веду команды
chatGPT, GPT-3, GPT-4
Разрабатываю LLM и веду команды
chatGPT, GPT-3, GPT-4
👍11🤔3
BetterTransformer
🔥 Ускорение инференса трансформеров в 2 раза из коробки
Совсем недавно PyTorch получил обновление 1.12, нам завезли
Разработчики интегрировали их в TorchText, причем для использования новой фичи не нужно переучивать или переделывать модели, достаточно указать один (!) параметр - enable_nested_tensor.
Фича работает как на GPU, так и на CPU.
В будущем добавят:
Кст, есть вроде как рабочий PR от разработчика из команды PyTorch в котором реализована работа для BERTа в HF.
@gradientdip
Блогпост
Колаб
Туториал
Issue
Pull Request
Nested Tensors
🔥 Ускорение инференса трансформеров в 2 раза из коробки
Совсем недавно PyTorch получил обновление 1.12, нам завезли
nested tensors
, способные хранить в себе тензоры разного размера и через некотрое время после этого представили их использование в TransformerEncoder
, а также MultiHeadAttention
.Разработчики интегрировали их в TorchText, причем для использования новой фичи не нужно переучивать или переделывать модели, достаточно указать один (!) параметр - enable_nested_tensor.
Фича работает как на GPU, так и на CPU.
В будущем добавят:
TransformerDecoder
для работы Seq2Seq моделей, использование новых тензоров для обучения и интеграцию в HuggingFace (!).Кст, есть вроде как рабочий PR от разработчика из команды PyTorch в котором реализована работа для BERTа в HF.
@gradientdip
Блогпост
Колаб
Туториал
Issue
Pull Request
Nested Tensors
👍28🔥6😱2
Forwarded from schizo machine learning 🎹🔫🤡 (accelotron)
pull.gif
17.9 MB
🔥MineDojo🔥
NVIDIA выпустила фреймворк для создания автономных агентов, которые могут играть в Minecraft, обучаясь на видео, текстах с вики и реддита.
Кроме того, команда MineDojo выложила свои датасеты:
- YouTube Database, на ~300 тысяч часов видео по майнкрафту, видео содержат английские субтитры.
- Wiki Database, ~7 тысяч страниц.
- Reddit Database, более 340 тысяч постов.
Страница проекта
NVIDIA выпустила фреймворк для создания автономных агентов, которые могут играть в Minecraft, обучаясь на видео, текстах с вики и реддита.
Кроме того, команда MineDojo выложила свои датасеты:
- YouTube Database, на ~300 тысяч часов видео по майнкрафту, видео содержат английские субтитры.
- Wiki Database, ~7 тысяч страниц.
- Reddit Database, более 340 тысяч постов.
Страница проекта
👍22🔥8
Про текстовые аугментации
Нашел классную статейку, в которой автор разобрал и визуализировал методы аугментаций текста, начиная от тех, что базируются на TF-IDF, заканчивая генерацией нейронками.
Лично для себя подчеркнул wordMixup и Instance Crossover Augmentation, думаю вам тоже понравится.
Статья 🔥
NLP AUG [полезное]
TextAttack [полезное]
Нашел классную статейку, в которой автор разобрал и визуализировал методы аугментаций текста, начиная от тех, что базируются на TF-IDF, заканчивая генерацией нейронками.
Лично для себя подчеркнул wordMixup и Instance Crossover Augmentation, думаю вам тоже понравится.
Статья 🔥
NLP AUG [полезное]
TextAttack [полезное]
Amit Chaudhary
A Visual Survey of Data Augmentation in NLP
An extensive overview of text data augmentation techniques for Natural Language Processing
🔥22👍5
tqdm-joblib
Любите прогресс бары? А многопоточный парсинг?
joblib - хорошая библиотека для удобной работы с многопроцессорностью, а также кешированием в питоне.
joblib.Parallel позволяет в пару действий запустить парсер, но при этом предоставляет ограниченный вывод информации о состоянии процесса.
Так вот, ребята со stackoverflow написали костыль, который в 2 клика делает более удобный вывод, формата обычного tqdm. Причем tqdm-telegram тоже работает 👀.
Все что нужно:
stackoverflow
Любите прогресс бары? А многопоточный парсинг?
joblib - хорошая библиотека для удобной работы с многопроцессорностью, а также кешированием в питоне.
joblib.Parallel позволяет в пару действий запустить парсер, но при этом предоставляет ограниченный вывод информации о состоянии процесса.
Так вот, ребята со stackoverflow написали костыль, который в 2 клика делает более удобный вывод, формата обычного tqdm. Причем tqdm-telegram тоже работает 👀.
Все что нужно:
pip install tqdm_joblibНужная в хозяйстве вещь.
stackoverflow
👍28🔥2
1. A yellow book and a red vase.
2. Hovering cow abducting aliens.
3. One cat and one dog sitting on the grass.
4. A black apple and a green backpack.
5. A banana on the left of an apple.
6. A sign that says 'Deep Learning'.
7. A wine glass on top of a dog.
8. A small blue book sitting on a large red book.
9. A brown bird and blue bear.
10. A panda making latte art.
Новая top1 text2image модель не может сгенерировать большую часть drawbench
2. Hovering cow abducting aliens.
3. One cat and one dog sitting on the grass.
4. A black apple and a green backpack.
5. A banana on the left of an apple.
6. A sign that says 'Deep Learning'.
7. A wine glass on top of a dog.
8. A small blue book sitting on a large red book.
9. A brown bird and blue bear.
10. A panda making latte art.
Новая top1 text2image модель не может сгенерировать большую часть drawbench
😁15👍4😢4🔥2🎉2👎1
Forwarded from Love. Death. Transformers.
Тут друзья просят заполнить формочку сравниения генеративных моделей.
https://forms.gle/5dvcCPtdemzfVuoz9
for science propouses как всегда.
https://forms.gle/5dvcCPtdemzfVuoz9
for science propouses как всегда.
Google Docs
Сравним генерации
👍10👎1
Forwarded from Градиент обреченный
#nlp #colab
⭐️ Сделал простой colab с визуализацией мультиязычного пословного выравнивания.
Выравнивание происходит при помощи mBERT эмбеддингов. Авторы статьи дообучили его на дополнительных задачах (objectives), чтобы улучшить качество (parallel sentence identification, consistency optimization, etc.).
В GitHub'е есть скрипты для дообучения на своем параллельном корпусе, так что можно расширить под ваш язык (в изначальном mBERT'е было 100+ языков).
Визуализацию сделал на graphviz.
👉 Colab | GitHub | Huggingface
⭐️ Сделал простой colab с визуализацией мультиязычного пословного выравнивания.
Выравнивание происходит при помощи mBERT эмбеддингов. Авторы статьи дообучили его на дополнительных задачах (objectives), чтобы улучшить качество (parallel sentence identification, consistency optimization, etc.).
В GitHub'е есть скрипты для дообучения на своем параллельном корпусе, так что можно расширить под ваш язык (в изначальном mBERT'е было 100+ языков).
Визуализацию сделал на graphviz.
👉 Colab | GitHub | Huggingface
👍22❤2
Forwarded from Борис опять
Немного негодования про ключевые слова.
Я очень любил собирать навыки когда начинал. Каждый как засечка. Выкатил контейнеры в прод и все, круто, теперь я владею Docker. Прям чувствуешь как зарплата растет с 299кк/сек до 300кк/сек.
Теперь это ощущается как цирк. "Какими навыками вы владеете?",- спрашивает форма отклика. Я впадаю в ступор. Представьте себе: столяр заполняет форму отклика. "Опыт работы с молотком пять лет, с пилой четыре года, со стамеской пять лет..." Чушь какая-то. Но в IT почему-то так принято: владею Python, SQL, HTML. Что мне писать? Я могу и фронт на JS сделать, и плагины для NGINX на LUA, могу даже C вспомнить, могу на контекстно-независимых грамматиках парсер SQL замутить. Если все базворды перечислять за сотню перевалит. Я инженер, блин, я не "владею технологиями", я решаю проблемы. Разберусь в COBOL, если надо будет. Буквально часть моей работы в том, чтобы выбирать подходящий инструмент для решения задачи и часто он будет не из тех, с которыми я работал раньше. Зачем оценивать инженера по инструментам? И с позициями так же: разве бывает "Python программист"? Звучит как как "молотком работник". Работа бить молотком, а гвозди это задача другой команды.
Но это так, ворчание, а по факту лучше ничего не придумали, надо с этим жить. Приходится так: с точки зрения резюме я владею теми навыками, которые нужны в интересных вакансиях, а всеми остальными не владею.
Я очень любил собирать навыки когда начинал. Каждый как засечка. Выкатил контейнеры в прод и все, круто, теперь я владею Docker. Прям чувствуешь как зарплата растет с 299кк/сек до 300кк/сек.
Теперь это ощущается как цирк. "Какими навыками вы владеете?",- спрашивает форма отклика. Я впадаю в ступор. Представьте себе: столяр заполняет форму отклика. "Опыт работы с молотком пять лет, с пилой четыре года, со стамеской пять лет..." Чушь какая-то. Но в IT почему-то так принято: владею Python, SQL, HTML. Что мне писать? Я могу и фронт на JS сделать, и плагины для NGINX на LUA, могу даже C вспомнить, могу на контекстно-независимых грамматиках парсер SQL замутить. Если все базворды перечислять за сотню перевалит. Я инженер, блин, я не "владею технологиями", я решаю проблемы. Разберусь в COBOL, если надо будет. Буквально часть моей работы в том, чтобы выбирать подходящий инструмент для решения задачи и часто он будет не из тех, с которыми я работал раньше. Зачем оценивать инженера по инструментам? И с позициями так же: разве бывает "Python программист"? Звучит как как "молотком работник". Работа бить молотком, а гвозди это задача другой команды.
Но это так, ворчание, а по факту лучше ничего не придумали, надо с этим жить. Приходится так: с точки зрения резюме я владею теми навыками, которые нужны в интересных вакансиях, а всеми остальными не владею.
🔥47👍9❤5❤🔥3👎3