Small Data Science for Russian Adventurers
11.2K subscribers
300 photos
3 videos
13 files
702 links
БЕЗ ЧУЖОЙ РЕКЛАМЫ Авторский канал Александра Дьяконова (dyakonov.org)
машинное (machine learning) и
глубокое обучение (deep learning)
анализ данных (data mining)
наука о данных (data science)
ИИ (artificial intelligence)
математика (math)
и др.
ЕСТЬ ЧАТ;)
加入频道
#планы
Я тут задумал покинуть ВМК МГУ (в котором работал ровно 19 лет) – и было хорошее предложение и даже запасной вариант, но последние события внесли коррективы, в том числе и в мои планы. Поэтому, по крайней мере, на следующий учебный год я ещё остаюсь на прежнем месте работы (добью стаж до 20;). Однако есть несколько предложений в образовательно-академической среде, над которыми я буду думать, в том числе руководство административными единицами (кафедра в вузе, лаборатория и даже целый академический институт).
Основная проблема в том, что почти во всех хороших предложениях нужна команда, которой у меня сейчас нет (в том числе, из-за отъездов компетентных людей за границу в последнее время). Но может, среди читателей канала есть желающие посотрудничать;) Например, я знаю, что есть много ведущих самостоятельные интересные проекты – есть возможность реализовать их в рамках исследовательской группы или получить какой-нибудь допресурс (например, вычислительные мощности). Короче, до осени я открыт на обсуждение всяких авантюр (с перерывом на отпуск, когда я буду просто думать и выбирать...).

И не менее важное обращение - по возрождению "_ _ _ _ Мастерс" - всё хорошо, но наша команда (курсов ML и DL) тоже поредела, поэтому ищем в неё пополнение. Если хотите и умеете преподавать - добро пожаловать к нам (особая надежда на бывших выпускников программы ;).
#критика
В одном из каналов решили сделать тему "вопросы с собеседований"... просто взял последние 3 сообщения (специально не выбирал).

"Графическое изображение" - интересно, а может ли изображение быть не графическим?

"изображение контраста" - вот этой фразы я совсем не понимаю. Почему не написать просто "график зависимости такого-то от такого-то"?

ЗБЧ "это принцип". Самое забавное, что это взято из русской Википедии (в английском варианте написано нормально и строго). Странно закон называть принципом, т.к. согласно той же Вики на основе принципов выводят законы.

"Ансамбль - это использование". Тут явно пытаются определить не ансамбль, а ансамблирование.

Вообще, ещё в школе учат: определение начинается с чёткого указания природы объекта. Например,
треугольник - это геометрическая фигура... (дальше уже говорится какая).

Если же давать определение так...
треугольник - это когда три разные точки соединяют отрезками, то получается совсем не определение, хотя суть почти верна.
#код
Сижу тут, пытаюсь тексты кластеризовать, взял представления из трансформеров, решил посмотреть, как в пространстве главных компонент будет получаться... а получается какая-то ерунда, качество то высокое, то низкое. Хорошо, что люблю всё визуализировать - ошибка сразу нашлась - обратил внимание, что порядок сингулярных значений какой-то странный.

Что в итоге... Если Вы пользуетесь функцией scipy.sparse.linalg.svds, то в помощи есть забавная фраза "The order in which the singular values are returned is not guaranteed". Вроде как её раньше не было (я часто пользовался этой функцией, так как она получает нужное количество компонент, и проблем не возникало).
#код
Вот вам простейшая, но хорошая для собеседования DL-исследователей/инженеров задача. Попробуйте решить сами прежде, чем посмотреть ответ.

Даны два тензора - X размера MxN и Y размера KxN, нужно получить тензор размера MxK, ij-й элемент которого норма разности i-й строки X и j-й строки Y.

Понятно, что задачка возникает на практике и должна решаться на автомате;)

Пример: для входа
tensor([[0., 0., 0., 0.],
[1., 1., 1., 1.],
[1., 2., 3., 4.]])
tensor([[1., 0., 0., 0.],
[0., 0., 0., 1.]])

выход
tensor([[1.0000, 1.0000],
[1.7321, 1.7321],
[5.3852, 4.7958]])

Решение (для PyTorch): (X.unsqueeze(1) - Y).norm(dim=2)
#критика
Есть довольно много формулировок, "фактов", графиков, которые кочуют из курса в курс и уже стали привычными, но формально неверны. Вот простой пример - иллюстрация критериев расщепления. Очень часто приводят именно такой график (этот взят из курса Харварда по CS), но если придираться, то максимум энтропии равен 1 (и её график лежит выше), если брать основание логарифма равным 2. Чтобы график энтропии прошёл так, как показано, надо взять основание равным 4 (но кто и когда так делает?!) Собственно, эти графики в учебных курсах нужны для иллюстрации общих идей и на их правильность не влияют, но забавно, что такие ошибки живут своей жизнью и не исправляются.
#термин
Есть некоторые простые понятия ML, которые мало кто знает, поскольку их нет в стандартных курсах. Например, в теме решающие деревья (Decision Trees) редко рассказывают про суррогатные расщепления (Surrogate Splits), а это очень эффективный приём обработки пропусков... Суть очень простая, пусть при построении дерева в некоторой ветке мы дошли до такой подвыборки

A B C Y=target
0 ? 0 0
1 5 1 0
2 ? 0 0
3 8 1 1
? 7 1 1
? 7 1 1

Здесь напрашивается сделать расщепление A > 2.5, но не понятно, в какое поддерево класть последние два объекта. Есть стандартные стратегии:
- положить в обе ветви дерева (не очень выгодно при большом числе пропусков и долгая работа алгоритма),
- выбрать наиболее подходящую ветвь дерева, в данном случае ту, куда попал объект с меткой 1 (но тут мы «уравниваем» объекты с пропуском),
- для неизвестных значений применить другое "запасное" расщепление, которое и называется суррогатным.

Нетрудно заметить, что расщепление B > 6 на объектах с известными значениями признаков совпадает с исходным, при этом определено для тех объектов, у которых были неизвестны значения признака A.

Теперь, если Вы пользователь R, понимаете, что выводит код
tm <- rpart(Y ~ weight + height, data = tmp_df, control = rpart.control(minsplit =1, minbucket=1, cp=0, maxdepth = 1))
summary(tm)

Primary splits:
weight < 5.5 to the left, improve=4.444444, (1 missing)
height < 4.5 to the left, improve=3.333333, (0 missing)
Surrogate splits:
height < 3.5 to the left, agree=0.889, adj=0.75, (1 split)
#юмор
И демотивирующая, но милая картинка на вечер пятницы;)
#книга
Матоушек И. "Тридцать три миниатюры. Применения линейной алгебры в математике и информатике"
Люблю такие книги-подборки: здесь собраны задачи из разных разделов математики, которые решаются методами линейной алгебры (ЛА). Часто когда преподают классические математические дисциплины до конца не понятно "зачем это всё"... потом понятия вектор, матрица и т.п. возникают в других курсах и вроде как понятно, но остаётся осадочек (а надо ли было так подробно, а зачем Жордановы формы, а зачем доказывать эти теоремы и т.д.) Здесь же берутся конкретные кейсы и внезапно простые и красивые решения возникают с помощью каких-то фактов из ЛА. Например, число всех остовных деревьев неожиданно равно определителю специально построенной матрицы (и не надо делать перебор, и есть красивая формула). Кейсы берутся из топологии, комбинаторики, геометрии и т.п. Из минусов - в кейсах виден перекос в сторону интересов автора, но зато подробно указываются происхождения задач и ссылки на другие методы решения и обобщённые варианты
#приёмы
В гарвардском курсе продвинутого DS иногда попадаются забавные приёмы. Например, при изучении RNN их необходимость объясняется тем, что свёрточные сети на последовательностях используют ограниченный контекст - для чего используют задачу "угадай следующий кадр" и рисуют сценки с заходом в помещение и выходом. Очень неплохо и запоминается, а главное - сразу показывают, что обрабатывается произвольная последовательность (обычно RNN привязывают к текстам и всё). Ещё интересный пример - показывается длинное письмо, написанное студентом, и подсвечиваются основные конструкции в нём - намекая, что нейронная сеть тоже должна реализовывать подобный механизм, иначе "запутается" в тексте. Кстати, текст с пометками реально проще читать;)

П.С. Но такие интересности только в отдельных лекциях (зависит от того, кто готовил материалы).
#опрос
Вопрос для практикующих NLPшников - "Любимая модель классификации".

Сваливается на Вас задача классификации небольших текстов (скажем, это реплики). Выборка не слишком большая ~ 100 000 текстов, классов ~ 3-10 (конечно, есть дисбаланс). Вы хотите быстренько прикинуть, какое качество в задаче можно получить. Какую предобученную модель Вы возьмёте для тюнинга на этом датасете?

Напишите в комментарии (чем подробнее ответ - тем полезнее читающим, хотя лично меня интересуют современные предпочтения).
#образование
____Masters возродился!
На новый набор регистрация до конца месяца - спешите;)
http://aimasters.ru/

Жизнь всегда с треском ломает все формулы. И разгром, как бы он ни был уродлив, может оказаться единственным путём к возрождению.
(Антуан де Сент-Экзюпери)
#перепосты
Страшная история о «современном ИИ»… в разных источниках по-разному описываются последствия случившегося, по официальной версии палец не ломали, но гипс всё-таки наложили…
Forwarded from Baza
This media is not supported in your browser
VIEW IN TELEGRAM
В Москве шахматный робот сломал палец мальчику во время шахматного турнира.

Chessrobot'a создали специально для игры в шахматы. По заявлению создателей, он оснащён искусственным интеллектом и может играть сразу три партии. 19 июля он играл три матча с юными дарованиями — в том числе и с 7-летним Кристофером, который входит в 30-ку сильнейших шахматистов Москвы до 9 лет.

Робот съел фигуру мальчика и ставил на её место свою, но Кристофер чуть поторопился и уже делал ответный ход. Роботу не понравилась такая спешка — он ухватил указательный палец мальчика и сильно его сдавил. Окружающие кинулись на помощь и вытащили палец юного игрока, однако перелома избежать не удалось.

Усыпят ли после этого робота — неизвестно.
#книга
Christoph Hanck, Martin Arnold, Alexander Gerber, and Martin Schmelzer «Introduction to Econometrics with R»
Эконометрика (регрессия, проверка гипотез, временные ряды). Есть примеры на R и упражнения.
https://www.econometrics-with-r.org
#статьи
Лучшие российские журналы, в которых есть DS-тематика.
Как был сформирован список:
- издаётся в России, подходит по тематике (есть какие-то статьи по прикладным задачам, ML, моделированию и т.п.)
- входит в список ВАК, РИНЦ, Scopus, WoS (ну, до санкций входил)
- статьи лежат в открытом доступе (и можно почитать!)

1. Компьютерная оптика
(много статей по компьютерному зрению)
2. Вестник Самарского государственного технического университета. Серия «Физико-математические науки»
(статей по DL вроде совсем нет, в основном, матмоделирование)
3. Известия Саратовского университета. Новая серия. Серия: Математика. Механика. Информатика
(в разделе "Информатика" есть USL, CV и т.п.)
4. Прикладная дискретная математика
(криптография, безопасность, есть анализ текстов )
5. Вестник Томского государственного университета. Управление, вычислительная техника и информатика
(есть релевантный раздел "Информатика и программирование")

Интересно, что тут два Томских, два Самарских и один Саратовский журнал - Московских нет! В журналах "второй категории" (не выполняется какой-то пункт) довольно много Питерских.
#ссылки
Телеграм-каналы подписчиков
Поскольку сейчас лето, отпуск и моя лень что-то писать, предлагаю в комментарии накидать ссылки на свои телеграм-каналы с небольшим представлением;)
Можно попиариться и почитать друг друга!
(тематика каналов может быть любой - главное в представлении опишите)
#книга
Mykel J. Kochenderfer Tim A. Wheeler Kyle H. Wray «Algorithms for Decision Making»
Свежая книга (2022), которую я сегодня полистал. Очень симпатичная, много хороших картинок. Немного удивило название, т.к. книга о статистике, байесовских штуках, структурном обучении и об RL (в основном!). Я надеялся найти что-то о принятии решений в бизнесе (смесь теории игр, DS и экономики), но тут обучение с подкреплением. Примеры кода даны на Julia.

Книга выложена в открытый доступ: https://algorithmsbook.com
#ссылки
Хороший образовательный ресурс про RL
https://spinningup.openai.com/en/latest/
(довольно известный, но в этом канале пока ссылки на него не было)
#визуализация
Сайт с очень красивыми визуализациями и небольшими исследованиями со сводными таблицами на темы экономики, торговли, технологий и демографии.
https://www.visualcapitalist.com
#вакансия
И совсем немного про работу мечты;) Всё-таки лето… пора подумать об улучшении морального климата, N-кратном увеличении зарплаты и адекватном руководстве.
В легендарную команду Дзен (где работают Андрей Зимовнов и Евгений Соколов) нужен целый руководитель исследовательской группы!
Возможно самая большая рекомендательная система в России, уникальная возможность опробовать мощные алгоритмы не на MovieLens и увидеть профит в АБ на десятках миллонов пользователях!
Вилка формально не указана, но она гигантская;)
Вакансия по ссылке:
https://yandex.ru/jobs/vacancies/руководитель-исследовательской-группы-в-дзен-9424
(Как обычно, не возбраняется накидать в комменты другие вкусные вакансии, но эта категорично одобрена создателем канала).