БЕЗ ЧУЖОЙ РЕКЛАМЫ Авторский канал Александра Дьяконова (dyakonov.org) машинное (machine learning) и глубокое обучение (deep learning) анализ данных (data mining) наука о данных (data science) ИИ (artificial intelligence) математика (math) и др. ЕСТЬ ЧАТ;)
#чужие_блоги
Есть такой не очень часто упоминаемый блог Amit Chaudhary. С 2021 года он, к сожалению, не пополняется, но там есть очень неплохие посты с качественными авторскими рисунками. Вот, например, рисунок из поста про подсчёт Average Precision (AP).
#забавно
Потестил новую отечественную генеративную модель.
Слева генерация по запросу "Сотрудница Cбера пишет ruDALL-E", справа - "Сотрудник Сбера не пишет ruGPT4".
#история (которую я часто рассказываю в своём курсе)
На одном из хакатонов, который проводила крупная нефтяная компания, в финале участники выступали с презентациями о своих решениях задачи прогнозирования дебита нефти... Почти все настраивали бустинг (различались лишь библиотеки), генерировали признаки, искали лики и т.п.
Предпоследним вышел парень из Уфы, который занял 2е место в лидерборде, и сказал: я не очень понимаю смысл всего, что тут говорилось, такие слова как "бустинг" я слышу в первый раз. Я учусь "в нефтянке", нас учили, что есть такая формула для дебита (выводит на слайд небольшую формулу), я просто в неё подставил известные значения, а неизвестные прикинул, какими они могли бы быть.
#книга
Наконец-то я дочитал книгу Яна Лекуна "Как учится машина: Революция в области нейронных сетей и глубокого обучения" (вышла давно, но я к ней возвращался урывками).
Что касается названия, то, на мой взгляд, в книге не раскрывается полностью и ясно "как учится машина". Есть некоторые наброски - как может быть устроен сильный ИИ, что для этого потребуется, но тут собраны довольно известные (для специалистов) мысли.
Но самое ценное в ней - автобиографичность, автор подробно рассказывает, где работал, чем занимался и как. Хотелось бы, чтобы её прочитали все "организаторы науки". Я многое узнал, например, о происхождении некоторых фото или крылатых фраз в ML.
Много чего можно процитировать из книги. Вот лишь один фрагмент...
"Если вы сталкиваетесь со стартапом, руководители которого заявляют, что они обладают какими-либо секретными результатами, относящимися к ИИ чуть ли не человеческого уровня, они или лгут вам, или обманывают сами себя. Не доверяйте им!"
Читать обязательно!
#поздравление
Всех читательниц канала с праздником! Весеннего настроения и удачи! 🌹
П.С. На рис. "девушка в DL" по версии генеративной нейронки;)
#соревнования
Самые популярные показатели качества, которые были использованы в соревновательных задачах на платформе Kaggle. В лидерах - площадь по ROC-кривой. [источник]
#забавно
Есть такая старая картинка с колодой карт, на которой изображены математики. Интересно, что есть и другие подобные колоды в интернете, довольно качественно оформленные.
#термин
Есть такое интересное понятие - Цена анархии. По простому, это во сколько раз эгоистичное поведение хуже согласованного. Например, есть 3 грибника и 2 удалённых грибницы в разных сторонах, в одной ~ 300 грибов, в другой ~ 150. Согласованное поведение: двое идут к первой, третий ко второй, в результате все набирают по ~ 150 грибов. Эгоистичное поведение: все бросаются к большей грибнице и каждый набирает по ~ 100 грибов. Цена анархии = 150/100 = 1.5.
Это понятие возникает в и DS-задачах. Часто бизнес-продукты оптимизируются в рамках "идеального мира" (скажем, прогнозируем продажу N единиц товара - и столько завозим на склад), но пользователи не будут действовать согласованно, они чаще эгоистичны (приходит перекупщик и скупает все N), поэтому нужно заранее уметь оценивать, насколько меньше может быть их удовлетворённость, наши доходы и т.п.
Иногда цена анархии появляется и в совсем ML-ных статьях, например в статьях про RL.
#код
Забавляет, что в библиотеках, которыми пользуется DS сообщества, при более-менее стандартных именах функций на ровном месте возникают несогласованности. Например, конкатенация матриц / датафреймов / тензоров:
в нумпае - numpy.concatenate
,
в пандасе - pandas.concat
,
в пайторче - torch.cat
.
Некоторые особенности разного именования вызваны разными концепциями средств программирования (например, пометка inplace-методов с помощью аргумента inplace или с помощью знака подчёркивания).
Некоторые просто авторские (например, последний слой предобученных нейросетевых моделей: fc / classifier / head).
Но вот зачем конкатенацию по-разному называть? :)
#новости
Президент в прошлом году побывал на конференции Artificial Intelligence Journey 2022, и вот по итогам подписал перечень поручений.
Там много интересного: обязательные программы по ИИ, рейтинги вузов, премии учёным и поддержка компаний, открытые данные. Вообще, примечательно, что всё это по итогу конференции.
Из забавного: в официальных документах впервые появилось слово «датасет», вот точная цитата: «формирование открытых баз больших данных (дата-сетов) обезличенных медицинских данных пациентов в целях их использования для развития технологий искусственного интеллекта в здравоохранении». Так скоро и «переобучение» появится;)
#забавно
Игра, в которой надо стрелять в противников, описывая уравнение кривой полёта снаряда, т.е., исходя из желаемой траектории, Вы учитесь придумывать для неё уравнение.
www.graphwar.com
Кстати, аналогичное и в стиле ML можно сделать (итерационно делить своих/чужих, выбирая классификатор и гиперпараметры, за ошибки - штрафы).
#забавно
В прошлом году на reddit-е в разделе ML cамая популярная заметка - об "ИИ", который наказывает, если человек отвлекается от работы.
В лидерах также машинный перевод speech2speech и прикреплённая картинка с типами ML-статей.
А уже потом идут Stable Diffusion, ArcaneGAN и т.п.
#интервью
Иногда просят "что-то прокомментировать" или "дать экспертное мнение". Интересно, что когда соглашаешься, то в 90% случаев потом это мнение куда-то пропадает. В сентябре меня попросили кратко (за 2-3 предложения) ответить на "модные вопросы по ИИ". Удивительно, но тут мои комментарии таки проникли в сеть, правда через 4 месяца (сам случайно нашёл в рекомендациях vk;)
Оригинал скриншота взял здесь.
#образование
Вдруг кому-то будет полезно...
Вопросы тестов по курсу «Глубокое обучение»
https://github.com/Dyakonov/BOOKs/blob/main/DLtest_Dyakonov.pdf
#код
Демки разных методов, есть код на Python, R, Julia и Matlab. Ничего сверхполезного вроде нет, но для новичков будет в самый раз.
http://www.numerical-tours.com/
#приёмы
На своих курсах я часто сообщаю такой приём: не выбрасывать плохие данные, а примерить их пусть не для моделирования, но для служебных задач. Например, у Вас есть кусок данных, где много неизвестных значений, а в целевых значениях много выбросов. Можно изъять его из обучения (допустим это повышает качество), но использовать, например, для mean target encoding категориальных признаков (и утечки не будет и кодирование будет вполне нормальным).
#к_вопросу
В одной из статей авторы добавили к названию предложенной нейронки (трансформеру) такой забавный значок. Ниже вопрос;)
#конференция
Года 3 назад постил эту ссылку, но если кто-то не добавил в закладки...
Список научных школ по машинному обучению (в том числе будущих):
https://github.com/sshkhr/awesome-mlss
#визуализация
Немного красоты свёрток перед первым рабочим днём на неделе;)
https://animatedai.github.io/
Здесь не изображены векторы смещения (bias), но это не значит, что их нет;)
П.С. Спасибо коллеге Сергею за ссылку.
#забавно
Как в том анекдоте (хочу поехать в Новгород - в какой? - а что их несколько?). На коротком промежутке времени нескольким коллективам авторов пришло в голову назвать их метод "DEAR" (и на скриншоте далеко не все работы, остальные просто не вынесли это в заголовок). Если так подумать, то кризис свободных запоминающихся аббревиатур уже начался...
#длясправки
Есть несколько стандартных модификаций метода k-средних, наиболее известная - алгоритм Ллойда, именно он реализован в scikit-learn. А вот на R реализованы:
* Lloyd,
* Forgy,
* MacQueen,
* Hartigan and Wong.
И много чего ещё. Там отличия в инициализации и пересчёте, очень неплохо написано здесь (хотя это не прям ценные знания). Но в очередной раз поражаюсь, сколько всего в разных библиотеках языка R...
#термин
Есть такой феномен "Банерная слепота" - если человек долго пользуется сайтом с рекламой, то его внимание к рекламе притупляется и она перестаёт на него эффективно действовать. Постоянно появляются исследования подтверждающие, уточняющие или опровергающие этот эффект. Например, в работе Small percentage of users is able to reliably distinguish between ads and organic results утверждается, что пользователи не особо различают рекламные и органические ссылки в поисковой выдаче, а в работе Investigating the influence of ads on user search performance, behaviour, and experience during information seeking, что наличие рекламы сильно вредит работе (притупляется внимание и т.п.)
#забавно
Заинтересовался темой - как генерировать бессмысленные входы для нейронок, которые не воспринимались бы ей бессмысленными. Отсюда родилась игра - придумать последовательность букв, которая не является словом русского языка, но переводится переводчиком в слово английского языка, это свойство сохраняется при удалении любого количества букв из последовательности.
Тут можно ещё конкретизировать:
- какие буквы допустимо удалять,
- потребовать, чтобы все слова в переводах были разными,
- потребовать, чтобы при добавлении любой буквы, это свойство уже терялось,
- найти максимальное по длине / по числу задействованных букв слово
и т.п.
Пример с гугл-переводчиком на картинке, с ним правда есть совсем вырожденная стратегия в составлении подобных слов:(
#книга
Есть такая немного старенькая (2016 года), но классная книга «Как стать современным учёным». Очень полезна, причём не важно, в какой области Вы специализируетесь. В ней кратко и по делу:
- как и где читать статьи,
- как и где их публиковать,
- как их писать, выкладывать код и данные,
- как докладывать о результатах и многое другое.
Много ссылок на конкретные инструменты, начиная с волшебного Overleaf, заканчивая платформами для личного блога (хотя некоторые инструменты уже устарели и нет учёта последних трендов типа онлайн-конференций). Всем молодым исследователям рекомендую хотя бы посмотреть;)
#обзор
Подборка затравок и ответов ChatGPT. Удобна для ответа на вопрос "а что она вообще может?"
#интересно
Многие знают про игру "Жизнь", в которой наблюдают за поведением клеточного автомата. Есть много обобщений, например "непрерывная жизнь". В ней получаются очень красивые визуализации, можно посмотреть, например, здесь.
#интервью
Я в канале уже давал ссылки на видеоинтервью с представителями ВШЭ, МФТИ и т.д. Для поддержание баланса - интервью с деканом мехмата МГУ (с руководителями мехмата интервью вообще большая редкость: до 2006го Лупанов интервью не давал, потом 13 лет на факультете не было декана, Шафаревича тоже особо не слышно, хотя в интернете много его онлайн-лекций).
https://youtu.be/hwW_t9ojglo
#книга
Сет Вейдман "Глубокое обучение: Лёгкая разработка проектов на питон"
По задумке книга такая, как и должна быть: сначала показывается, как сделать нейросеть «с нуля», причём отдельно по модулям, потом переходят к Pytorch. Мне только не понравилось, что предлагаемые способы реализации не имитируют высокоуровневые способы самого Pytorch. Лучше бы было просто разбираться, что внутри у nn.Linear, nn.Dropout и т.п. Потенциальна полезна для новичков, которые знают питон.
#визуализация
Из лучших визуализаций прошлого года мне больше всего понравились:
* анализ крупнейшего наводнения в Австралии
https://www.smh.com.au/interactive/2022/lismore-flooding/
* яркая статистика гонок F1 (правда за 2021 год), даже со звуковыми эффектами
https://f1.obumbratta.com/
#интересно
Шмидхубер написал очередную версию истории искусственного интеллекта.
https://people.idsia.ch/~juergen/deep-learning-history.html