#интересно
Нашёл тут перевод hinge loss как петлевой. И в данном случае такой дословный перевод, на мой взгляд, не совсем удачен. В английском языке слово hinge имеет значение петля в смысле "крепление дверей и окон", в разрезе это приспособление напоминает соответствующую функцию. У нас слово "петля" ассоциируется в первую очередь с "петлёй для висельника", во вторую - с "мёртвой петлёй" (можете провести эксперимент, опросив знакомых). Если вбить в гугл-картинки "петлевой", то в первой сотне не будет чего-то похожего на соответствующую функцию.
Нашёл тут перевод hinge loss как петлевой. И в данном случае такой дословный перевод, на мой взгляд, не совсем удачен. В английском языке слово hinge имеет значение петля в смысле "крепление дверей и окон", в разрезе это приспособление напоминает соответствующую функцию. У нас слово "петля" ассоциируется в первую очередь с "петлёй для висельника", во вторую - с "мёртвой петлёй" (можете провести эксперимент, опросив знакомых). Если вбить в гугл-картинки "петлевой", то в первой сотне не будет чего-то похожего на соответствующую функцию.
#визуализация
Немного секса в ленту… исследование интимной жизни по результатам опроса более 50 тыс. человек. Результаты опроса можно скачать;)
https://www.russiainbed.ru
Немного секса в ленту… исследование интимной жизни по результатам опроса более 50 тыс. человек. Результаты опроса можно скачать;)
https://www.russiainbed.ru
#курс
В этом году мой образовательный проект по глубокому обучению пополнился видеозаписями лекций. Записал не всё, что хотел, но я никогда и не успеваю всё прочитывать:)
Семинары пока не выложены (по хорошему лучше сделать параллельный практический курс "не вылезая из пайторча").
В этом году мой образовательный проект по глубокому обучению пополнился видеозаписями лекций. Записал не всё, что хотел, но я никогда и не успеваю всё прочитывать:)
Семинары пока не выложены (по хорошему лучше сделать параллельный практический курс "не вылезая из пайторча").
GitHub
DL/README.md at master · Dyakonov/DL
Курс "Глубокое обучение (Deep Learning)" (ВМК, МГУ имени М.В. Ломоносова) - Dyakonov/DL
#книга
Ив Хилпиш "Python для финансовых расчетов"
В книгу попытались включить всё, что только можно: тут есть и про питон и про менеджеры пакетов и про докер и про разные библиотеки и про визуализацию. Последняя треть книги непосредственно про финансовые задачи. Я книгу внимательно не читал, но всю просмотрел. Не смотря на "солянку" вроде получилось неплохо: много примеров кода, картинок, пояснений финансовой теории.
Ив Хилпиш "Python для финансовых расчетов"
В книгу попытались включить всё, что только можно: тут есть и про питон и про менеджеры пакетов и про докер и про разные библиотеки и про визуализацию. Последняя треть книги непосредственно про финансовые задачи. Я книгу внимательно не читал, но всю просмотрел. Не смотря на "солянку" вроде получилось неплохо: много примеров кода, картинок, пояснений финансовой теории.
#интервью
Не так давно поговорили с Романом Васильевым - автором канала «Start Career in DS» @start_ds
https://youtu.be/0sa8XT0oC9o
Не так давно поговорили с Романом Васильевым - автором канала «Start Career in DS» @start_ds
https://youtu.be/0sa8XT0oC9o
YouTube
Александр Дьяконов: История развития Data Science в России
SCiDS в tg: https://yangx.top/start_ds
Канал Александра в tg: https://yangx.top/smalldatascience
Как зарождались первые вакансии в DS? Зачем нужно понимание теории в машинном обучении? Как некоторые курсы играют на том, что создают впечатление обучения? Что ждёт аналитику…
Канал Александра в tg: https://yangx.top/smalldatascience
Как зарождались первые вакансии в DS? Зачем нужно понимание теории в машинном обучении? Как некоторые курсы играют на том, что создают впечатление обучения? Что ждёт аналитику…
#забавно
Есть сайт с объяснением смысла xkcd-комиксов.
Вот, например, объяснение последнего. Надо заметить, что многие объяснения очень качественные - прям заморачивались.
Есть сайт с объяснением смысла xkcd-комиксов.
Вот, например, объяснение последнего. Надо заметить, что многие объяснения очень качественные - прям заморачивались.
#поздравление
Мы сегодня сделали последний выпуск ОзонМастерс! Всем выпускникам удачной карьеры и много новых открытий!
П.С. Нашу образовательную программу мы сохраним. Она скоро возродится немного под другим названием;)
Мы сегодня сделали последний выпуск ОзонМастерс! Всем выпускникам удачной карьеры и много новых открытий!
П.С. Нашу образовательную программу мы сохраним. Она скоро возродится немного под другим названием;)
#забавно
На выпускном ОзонМастер мы проводим разные конкурсы-викторины, например, один из конкурсов - ML-quiz. Есть серия задания про мемы, пример на картинке - догадаться, что скрыто за маской.
Другой набор заданий - цитаты. Например, назвать автора (писателя) цитаты
“Data! Data! Data!" he cried impatiently. "I can't make bricks without clay.”
Кстати, вроде бы это единственный случай в мировой литературе, когда слово "данные" повторено три раза.
Или вот ещё, мой любимый вопрос... В рассказе Фредерика Брауна все компьютеры галактики собрали в одну сеть. Первый вопрос, который задали получившемуся суперкомпьютеру был "Есть ли бог?", что ответил этот "ИИ"?
На выпускном ОзонМастер мы проводим разные конкурсы-викторины, например, один из конкурсов - ML-quiz. Есть серия задания про мемы, пример на картинке - догадаться, что скрыто за маской.
Другой набор заданий - цитаты. Например, назвать автора (писателя) цитаты
“Data! Data! Data!" he cried impatiently. "I can't make bricks without clay.”
Кстати, вроде бы это единственный случай в мировой литературе, когда слово "данные" повторено три раза.
Или вот ещё, мой любимый вопрос... В рассказе Фредерика Брауна все компьютеры галактики собрали в одну сеть. Первый вопрос, который задали получившемуся суперкомпьютеру был "Есть ли бог?", что ответил этот "ИИ"?
#интересно
Кстати про мемы (вообще говоря, не связанные с ML), нашёл мало кому известный канал, в котором описывается, что взято за основу мема (большей частью про картины). Наверняка, есть другие специализированные ресурсы, объясняющие мемы (можно написать в комментариях).
Кстати про мемы (вообще говоря, не связанные с ML), нашёл мало кому известный канал, в котором описывается, что взято за основу мема (большей частью про картины). Наверняка, есть другие специализированные ресурсы, объясняющие мемы (можно написать в комментариях).
#интересно
Вот какой MNIST "сложный" датасет! Столько лет понадобилось, чтобы превзойти точность человека. График - доработка графика из этой статьи.
Вот какой MNIST "сложный" датасет! Столько лет понадобилось, чтобы превзойти точность человека. График - доработка графика из этой статьи.
#математика
Объявлены Филдсовские лауреаты этого года (по ссылке можно посмотреть CV победителей, публикации, краткое описание научных работ). Области в которых работали лауреаты: комбинаторика, теория чисел, статфиз.
https://www.mathunion.org/imu-awards/fields-medal/fields-medals-2022
Объявлены Филдсовские лауреаты этого года (по ссылке можно посмотреть CV победителей, публикации, краткое описание научных работ). Области в которых работали лауреаты: комбинаторика, теория чисел, статфиз.
https://www.mathunion.org/imu-awards/fields-medal/fields-medals-2022
#термин
В последнее время мне несколько раз попался термин трансвычислительная задача - задача, которая не могла бы быть решена, если бы решалась компьютером размером с нашу планету на предельной скорости всё время существования планеты. Есть даже константа 10^93 т.н. предел Бремерманна - число бит, которое этот компьютер успеет обработать. Термин, конечно, условный и почти бесполезный, однако, задаёт некоторый "бенчмарк" для сравнения различных задачи. Например, задача коммивояжёра при числе городов n=67 становится трансвычислительной (если решать тупым перебором - что почему-то не всегда оговаривают). Что интуитивно совсем немного (когда на практике возникала такая задача, то чаще n>100).
В последнее время мне несколько раз попался термин трансвычислительная задача - задача, которая не могла бы быть решена, если бы решалась компьютером размером с нашу планету на предельной скорости всё время существования планеты. Есть даже константа 10^93 т.н. предел Бремерманна - число бит, которое этот компьютер успеет обработать. Термин, конечно, условный и почти бесполезный, однако, задаёт некоторый "бенчмарк" для сравнения различных задачи. Например, задача коммивояжёра при числе городов n=67 становится трансвычислительной (если решать тупым перебором - что почему-то не всегда оговаривают). Что интуитивно совсем немного (когда на практике возникала такая задача, то чаще n>100).
Wikipedia
Transcomputational problem
Class of computational problems
#планы
Я тут задумал покинуть ВМК МГУ (в котором работал ровно 19 лет) – и было хорошее предложение и даже запасной вариант, но последние события внесли коррективы, в том числе и в мои планы. Поэтому, по крайней мере, на следующий учебный год я ещё остаюсь на прежнем месте работы (добью стаж до 20;). Однако есть несколько предложений в образовательно-академической среде, над которыми я буду думать, в том числе руководство административными единицами (кафедра в вузе, лаборатория и даже целый академический институт).
Основная проблема в том, что почти во всех хороших предложениях нужна команда, которой у меня сейчас нет (в том числе, из-за отъездов компетентных людей за границу в последнее время). Но может, среди читателей канала есть желающие посотрудничать;) Например, я знаю, что есть много ведущих самостоятельные интересные проекты – есть возможность реализовать их в рамках исследовательской группы или получить какой-нибудь допресурс (например, вычислительные мощности). Короче, до осени я открыт на обсуждение всяких авантюр (с перерывом на отпуск, когда я буду просто думать и выбирать...).
И не менее важное обращение - по возрождению "_ _ _ _ Мастерс" - всё хорошо, но наша команда (курсов ML и DL) тоже поредела, поэтому ищем в неё пополнение. Если хотите и умеете преподавать - добро пожаловать к нам (особая надежда на бывших выпускников программы ;).
Я тут задумал покинуть ВМК МГУ (в котором работал ровно 19 лет) – и было хорошее предложение и даже запасной вариант, но последние события внесли коррективы, в том числе и в мои планы. Поэтому, по крайней мере, на следующий учебный год я ещё остаюсь на прежнем месте работы (добью стаж до 20;). Однако есть несколько предложений в образовательно-академической среде, над которыми я буду думать, в том числе руководство административными единицами (кафедра в вузе, лаборатория и даже целый академический институт).
Основная проблема в том, что почти во всех хороших предложениях нужна команда, которой у меня сейчас нет (в том числе, из-за отъездов компетентных людей за границу в последнее время). Но может, среди читателей канала есть желающие посотрудничать;) Например, я знаю, что есть много ведущих самостоятельные интересные проекты – есть возможность реализовать их в рамках исследовательской группы или получить какой-нибудь допресурс (например, вычислительные мощности). Короче, до осени я открыт на обсуждение всяких авантюр (с перерывом на отпуск, когда я буду просто думать и выбирать...).
И не менее важное обращение - по возрождению "_ _ _ _ Мастерс" - всё хорошо, но наша команда (курсов ML и DL) тоже поредела, поэтому ищем в неё пополнение. Если хотите и умеете преподавать - добро пожаловать к нам (особая надежда на бывших выпускников программы ;).
#критика
В одном из каналов решили сделать тему "вопросы с собеседований"... просто взял последние 3 сообщения (специально не выбирал).
"Графическое изображение" - интересно, а может ли изображение быть не графическим?
"изображение контраста" - вот этой фразы я совсем не понимаю. Почему не написать просто "график зависимости такого-то от такого-то"?
ЗБЧ "это принцип". Самое забавное, что это взято из русской Википедии (в английском варианте написано нормально и строго). Странно закон называть принципом, т.к. согласно той же Вики на основе принципов выводят законы.
"Ансамбль - это использование". Тут явно пытаются определить не ансамбль, а ансамблирование.
Вообще, ещё в школе учат: определение начинается с чёткого указания природы объекта. Например,
треугольник - это геометрическая фигура... (дальше уже говорится какая).
Если же давать определение так...
треугольник - это когда три разные точки соединяют отрезками, то получается совсем не определение, хотя суть почти верна.
В одном из каналов решили сделать тему "вопросы с собеседований"... просто взял последние 3 сообщения (специально не выбирал).
"Графическое изображение" - интересно, а может ли изображение быть не графическим?
"изображение контраста" - вот этой фразы я совсем не понимаю. Почему не написать просто "график зависимости такого-то от такого-то"?
ЗБЧ "это принцип". Самое забавное, что это взято из русской Википедии (в английском варианте написано нормально и строго). Странно закон называть принципом, т.к. согласно той же Вики на основе принципов выводят законы.
"Ансамбль - это использование". Тут явно пытаются определить не ансамбль, а ансамблирование.
Вообще, ещё в школе учат: определение начинается с чёткого указания природы объекта. Например,
треугольник - это геометрическая фигура... (дальше уже говорится какая).
Если же давать определение так...
треугольник - это когда три разные точки соединяют отрезками, то получается совсем не определение, хотя суть почти верна.
#код
Сижу тут, пытаюсь тексты кластеризовать, взял представления из трансформеров, решил посмотреть, как в пространстве главных компонент будет получаться... а получается какая-то ерунда, качество то высокое, то низкое. Хорошо, что люблю всё визуализировать - ошибка сразу нашлась - обратил внимание, что порядок сингулярных значений какой-то странный.
Что в итоге... Если Вы пользуетесь функцией scipy.sparse.linalg.svds, то в помощи есть забавная фраза "The order in which the singular values are returned is not guaranteed". Вроде как её раньше не было (я часто пользовался этой функцией, так как она получает нужное количество компонент, и проблем не возникало).
Сижу тут, пытаюсь тексты кластеризовать, взял представления из трансформеров, решил посмотреть, как в пространстве главных компонент будет получаться... а получается какая-то ерунда, качество то высокое, то низкое. Хорошо, что люблю всё визуализировать - ошибка сразу нашлась - обратил внимание, что порядок сингулярных значений какой-то странный.
Что в итоге... Если Вы пользуетесь функцией 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.
Понятно, что задачка возникает на практике и должна решаться на автомате;)
Пример: для входа
(X.unsqueeze(1) - Y).norm(dim=2)
Вот вам простейшая, но хорошая для собеседования 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],Решение (для PyTorch):
[1.7321, 1.7321],
[5.3852, 4.7958]])
#критика
Есть довольно много формулировок, "фактов", графиков, которые кочуют из курса в курс и уже стали привычными, но формально неверны. Вот простой пример - иллюстрация критериев расщепления. Очень часто приводят именно такой график (этот взят из курса Харварда по CS), но если придираться, то максимум энтропии равен 1 (и её график лежит выше), если брать основание логарифма равным 2. Чтобы график энтропии прошёл так, как показано, надо взять основание равным 4 (но кто и когда так делает?!) Собственно, эти графики в учебных курсах нужны для иллюстрации общих идей и на их правильность не влияют, но забавно, что такие ошибки живут своей жизнью и не исправляются.
Есть довольно много формулировок, "фактов", графиков, которые кочуют из курса в курс и уже стали привычными, но формально неверны. Вот простой пример - иллюстрация критериев расщепления. Очень часто приводят именно такой график (этот взят из курса Харварда по CS), но если придираться, то максимум энтропии равен 1 (и её график лежит выше), если брать основание логарифма равным 2. Чтобы график энтропии прошёл так, как показано, надо взять основание равным 4 (но кто и когда так делает?!) Собственно, эти графики в учебных курсах нужны для иллюстрации общих идей и на их правильность не влияют, но забавно, что такие ошибки живут своей жизнью и не исправляются.
#термин
Есть некоторые простые понятия ML, которые мало кто знает, поскольку их нет в стандартных курсах. Например, в теме решающие деревья (Decision Trees) редко рассказывают про суррогатные расщепления (Surrogate Splits), а это очень эффективный приём обработки пропусков... Суть очень простая, пусть при построении дерева в некоторой ветке мы дошли до такой подвыборки
- положить в обе ветви дерева (не очень выгодно при большом числе пропусков и долгая работа алгоритма),
- выбрать наиболее подходящую ветвь дерева, в данном случае ту, куда попал объект с меткой 1 (но тут мы «уравниваем» объекты с пропуском),
- для неизвестных значений применить другое "запасное" расщепление, которое и называется суррогатным.
Нетрудно заметить, что расщепление B > 6 на объектах с известными значениями признаков совпадает с исходным, при этом определено для тех объектов, у которых были неизвестны значения признака A.
Теперь, если Вы пользователь R, понимаете, что выводит код
Есть некоторые простые понятия ML, которые мало кто знает, поскольку их нет в стандартных курсах. Например, в теме решающие деревья (Decision Trees) редко рассказывают про суррогатные расщепления (Surrogate Splits), а это очень эффективный приём обработки пропусков... Суть очень простая, пусть при построении дерева в некоторой ветке мы дошли до такой подвыборки
A B C Y=targetЗдесь напрашивается сделать расщепление A > 2.5, но не понятно, в какое поддерево класть последние два объекта. Есть стандартные стратегии:
0 ? 0 0
1 5 1 0
2 ? 0 0
3 8 1 1
? 7 1 1
? 7 1 1
- положить в обе ветви дерева (не очень выгодно при большом числе пропусков и долгая работа алгоритма),
- выбрать наиболее подходящую ветвь дерева, в данном случае ту, куда попал объект с меткой 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)
#юмор
И демотивирующая, но милая картинка на вечер пятницы;)
И демотивирующая, но милая картинка на вечер пятницы;)
#книга
Матоушек И. "Тридцать три миниатюры. Применения линейной алгебры в математике и информатике"
Люблю такие книги-подборки: здесь собраны задачи из разных разделов математики, которые решаются методами линейной алгебры (ЛА). Часто когда преподают классические математические дисциплины до конца не понятно "зачем это всё"... потом понятия вектор, матрица и т.п. возникают в других курсах и вроде как понятно, но остаётся осадочек (а надо ли было так подробно, а зачем Жордановы формы, а зачем доказывать эти теоремы и т.д.) Здесь же берутся конкретные кейсы и внезапно простые и красивые решения возникают с помощью каких-то фактов из ЛА. Например, число всех остовных деревьев неожиданно равно определителю специально построенной матрицы (и не надо делать перебор, и есть красивая формула). Кейсы берутся из топологии, комбинаторики, геометрии и т.п. Из минусов - в кейсах виден перекос в сторону интересов автора, но зато подробно указываются происхождения задач и ссылки на другие методы решения и обобщённые варианты
Матоушек И. "Тридцать три миниатюры. Применения линейной алгебры в математике и информатике"
Люблю такие книги-подборки: здесь собраны задачи из разных разделов математики, которые решаются методами линейной алгебры (ЛА). Часто когда преподают классические математические дисциплины до конца не понятно "зачем это всё"... потом понятия вектор, матрица и т.п. возникают в других курсах и вроде как понятно, но остаётся осадочек (а надо ли было так подробно, а зачем Жордановы формы, а зачем доказывать эти теоремы и т.д.) Здесь же берутся конкретные кейсы и внезапно простые и красивые решения возникают с помощью каких-то фактов из ЛА. Например, число всех остовных деревьев неожиданно равно определителю специально построенной матрицы (и не надо делать перебор, и есть красивая формула). Кейсы берутся из топологии, комбинаторики, геометрии и т.п. Из минусов - в кейсах виден перекос в сторону интересов автора, но зато подробно указываются происхождения задач и ссылки на другие методы решения и обобщённые варианты