Градиентное погружение
4.61K subscribers
179 photos
11 videos
10 files
164 links
Обсуждаем новости, рассказываем про ML с кодом и колабом, выигрываем соревы 🏆

Контакты: @Cene655, @Cucu_LaPraline
Download Telegram
Аналитика онлайн курсов

История о том как понять, что поведение пользователей - одна из 7 загадок тысячелетия, а команда - не просто рандомные люди.

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

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

💪 Нас было пятеро прогеров, под руководством аналитика из Сириус.Курсов мы проводили брифинги, писали "отчеты" о проделанной работе и делились опытом.

😅 Первое время мы втыкали в таблички и пытались понять их устройство/связь, начали придумывать гипотезы о "сложности" задачи/модуля/курса, задумались над архитектурой будущего приложения.

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

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

После первой предзащиты мы поняли одну важную вещь - мы не знаем как объяснить "сложность" в качестве понятия. Решили делить на 2 вида: та что полезная/естественная и та что "затык" (неправильные цифры, учебного материала недостаточно чтобы решить задачу). Искали второе.

😐 В какой-то момент перешли к валидации, ждали пока дадут результаты опросника на платформе, но в итоги не уложились в сроки.

😕 Ну что же, пришлось размечать самим, открывать каждую задачу, просматривать материалы, бр.. За все время собрали 534 задачи по инфе и матану и только единицы из них были сложными. Будем считать, что качество курсов высокое.

🙃 Собрав сет и проанализировав результаты метрик на данных, поняли ошеломляющую вещь - наши метрики описывают поведение пользователя, а не саму сложность.

👀 Ну ок, а почему вы не смотрели на текст задачи?

1️⃣ Он специфичный, так ещё в markdown, нейронки тупо не работали на таком домене, а учить не вариант, доступ мне не дали)

2️⃣ Много работы, скажем на условной лингвистике могли найтись иноязычные слова, которые руберт токсисити отмечал плохими)

3️⃣ Нашел инфу по индексам текста (о чем писал ранее), но оказалось что они частично описывали только возможность задавания вопроса.

🤷‍♀️ Ну ладно, вот у нас табличка с чиселками есть, давайте обучать катбуст. Но он не обучался, вот вообще, тут же переучивался, та же история с деревом, логрегом.

У нас тупо было слишком мало данных, связи с чем пришлось делать костыли, получили recall 0.5 и precision 0.1, не густо, но тоже неплохо.

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

Из этого я вынес урок: датасаентист не может заменить аналитика, это две разные и по своему сложные профессии.

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

И да, датасаентисов не бывает, это вымысел.
👍14
*К посту выше, обязателен к прочтению*

*Вместо того, чтобы размечать данные я смотрел цены на коворкинги в Чебоксарах и это заметили*
🔥16😁3👍2👎2🎉2🤔1
Forwarded from Время Валеры
Мой близкий друг Саша Сахнов - человек который на мой взгляд лучше всех разбирается в а/б тестах

Еще в далеком 2018 году мы с ним и рядом других людей начали писать на Хабр про А/Б.
Сейчас он запустил цикл статей про А/Б, где каждая статья будет сложнее предыдущей - первая довольно базовая статья про Бутстрап (Обратите внимание на центральный доверительный интервал)

Еще интересен небольшой разбор стратификации для повышения чувствительности тестов
Еще можно посмотреть это видео
👍15👎1
Про изменение языка

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

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

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

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

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

Быть может старые модели вовсе не так плохи как кажутся?

Быть может результаты, что есть сейчас некорректно сравнивать и нужно переобучать каждую модель?

Быть может новые архитектуры просто учатся на "свежих" наборах и становятся SOTA?

Или же проблема немножко в другом? В том что данные подвергаются "временной коррозии" (устаревание слов, изменение конструкций текстов, тренды)?

Очень интересно узнать, что вы думаете про изменение языка в контексте нынешнего NLP.

И что думают Kali Novskaya, DL in NLP
👍11🤔3
BetterTransformer

🔥 Ускорение инференса трансформеров в 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 тысяч постов.

Страница проекта
👍22🔥8
Про текстовые аугментации

Нашел классную статейку, в которой автор разобрал и визуализировал методы аугментаций текста, начиная от тех, что базируются на TF-IDF, заканчивая генерацией нейронками.

Лично для себя подчеркнул wordMixup и Instance Crossover Augmentation, думаю вам тоже понравится.

Статья 🔥
NLP AUG [полезное]
TextAttack [полезное]
🔥22👍5
Сделала мем про свою жизу.

@sonya_aesthetics
🔥8👍21
tqdm-joblib

Любите прогресс бары? А многопоточный парсинг?

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

joblib.Parallel позволяет в пару действий запустить парсер, но при этом предоставляет ограниченный вывод информации о состоянии процесса.

Так вот, ребята со stackoverflow написали костыль, который в 2 клика делает более удобный вывод, формата обычного tqdm. Причем tqdm-telegram тоже работает 👀.

Все что нужно:
pip install tqdm_joblib

Нужная в хозяйстве вещь.

stackoverflow
👍28🔥2
stable diffusion
😁21👍1
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
😁15👍4😢4🔥2🎉2👎1