(sci)Berloga Всех Наук и Технологий
6.57K subscribers
211 photos
3 videos
249 links
Мультидисциплинарный канал о науке и технологиях.
Data Science, Bioinformatics, Biology, Mathematics, Physics, IT, Computer Science.

@sberlogabio био и дата сайнс
@sberlogasci математика, физика и ДС

https://www.youtube.com/c/SciBerloga
Download Telegram
#HMS #акакстакать
Поступил вопрос про пункт 3 и заявление, что там ничего не ясно. А там с одной стороны классика, с другой не совсем интуитивно:
Допустим у нас есть 150 моделей на одинаковых OOF и мы по ним хотим построить какой-то ансамбль, который будет лучше каждой индивидуальной.
1. Возьмем оптимизатор L-BFGS-B (знаю, в подписчиках есть фанаты) и на OOF построим оптимум заданной лосс функции. Это для нас будет линейная комбинация с положительными весами. Ну например [0.0001, 0.95, 0.003 ..., 0.0]
2. У какой-то доли моделей веса будут близкими к нулю, потому что они не слишком хорошо перформят относительно прочих. Так давайте установим трешхолд, например 0.01, и все модели с весом меньше этого из списка выкинем и пользоваться ими не будем
3. На оставшихся повторим процедуру и будем делать до тех пор, пока у всех моделей веса не будут больше, чем заданный наперед трешхолд
4. ...
5. Profit! У нас остались только уверенные и разнообразные модели

В этом смысле прием похож на совсем уж античную классику: отобрать фичи с помощью L1-регрессии и на выбраных фичах обучить уже обычную линейную/гребневую регрессию
хм, классные ребята из OpenDILab (которые ведут много awesome листиков по RLю и делают либу LightZero) начали делать библиотеку с алгоритмами на диффузионках и flow моделях для принятия решений:

GenerativeRL
https://github.com/opendilab/GenerativeRL

и сразу awesome по диффузионкам в RLе

https://github.com/opendilab/awesome-diffusion-model-in-rl

(сохранять)
🚀 @SBERLOGASCI webinar on data science:
👨‍🔬 Н. Бухал "Алгоритм MCTS, Monte Carlo Tree Search".
⌚️ Четверг 20 июня 19.00 по Москве

Алгоритм MCTS одна из основных составляющих АльфаГо. В данном докладе будет разобрана имплементация.

Попробуем шаг за шагом реализовать MCTS для крестиков ноликов.

Код который будем разбирать/переписывать: https://www.kaggle.com/code/tttzof351/alphazerotictac

Ожидаемый результат: https://youtu.be/F7qOV8xonfY?si=MXQgN-kwHD9D8oqd

Напоминание: мы организуем активность применить машинное обучение к математическим задачам теории групп. MCTS один из рассматриваемых методов. Если вам интересна активность - добавляйтесь в https://t.me/sberlogasci/10989 и напишите @Alexander_v_c , если вы хотите поучаствовать - требование - знать Питон - остальное научим.

Zoom link will be in @sberlogabig just before start. Video records: https://www.youtube.com/c/SciBerloga - subscribe !
Forwarded from человек наук
Когда я учился в Институте биоинформатики, в домашних заданиях по статистике встречались курьёзные распределения необычной формы. Они были созданы преподавателем искусственно, чтобы подсветить особенности разных методов. Я как-то заметил, что было бы странно увидеть такое в реальных данных, а преподаватель ответил, что всякое бывает

За время работы я насмотрелся на этакое всякое сполна. Реальные данные бывают страннее, чем может придумать любой преподаватель. Вот пример распределения площади жилья во Франции построенного в 2010 году. Угадайте, с какого количества квадратных метров закон обязует нанимать лицензированного архитектора для построения плана?

Но самая неприятная ситуация – когда неизвестны объясняющие картину факты, а на руках только странные данные

#статистика
Коллеги из ИТМО организуют интересное комьюнити: присоединяйтесь:

🚀 Всех, кто интересуется разработкой и использованием наукоёмких решений с отрытым кодом - приглашаем присоединяться и участвовать в нашем сообществе ITMO.OpenSource - https://ods.ai/hubs/opensource_itmo + чат https://t.me/itmo_opensource

Проводят онлайн- и оффлайн- митапы, представляем площадку для популяризации интересных академических открытых проектов, помогаем рекомендациями и менторством. Специализируемся в области AI/ML, но ей не ограничиваемся. Результаты из своих публикаций также активно опенсорсим.

👨‍🔬 По всем вопросам - Николай Никитин @nicl_nno (к.т.н, руководитель научной группы в NSS Lab ИТМО)
Воскресная загадка )

Какой самый искрометный и остроумный телеграм канал о науке ?)

Кто расскажет вам всё - от последних статей в Nature , до событий в самой глубинке ?

Все, наверно, и так знают, но мы рады порекомендовать - @ivoryzoo - подписывайтесь!

Ваше руководство по выживанию в науке: https://t.me/ivoryzoo
🚀 Хотите стать экспертом в Qlik Sense?
👨‍🔬 Тогда подпишитесь на канал нашего знакомого - @chernovdev!

Станислав уже более 11 лет работает с продуктами компании QlikTech и продолжает развиваться в этом направлении каждый день. Здесь вы найдёте всё о скриптах, архитектуре, API, визуализациях и прочих секретах продукта.

А если вам не достаточно просто канала, то есть библиотека по Qlik расположенная по адресу https://chernovdev.ru/docs в наполнении которой вы тоже можете принимать участие, пишите @chernov за подробностями, сайт находится в open source проекте на GitHub - https://github.com/bintocher/chernovdev-site
🚀 @SBERLOGASCI webinar on data science:
👨‍🔬 Евгений Дурыманов "Cayley2vec - эмбединги для бесконечных графов"
⌚️ Cреда, 26 июня, 19.00 (по Москве). (Среда - нестандартный день!)

Рассказ основан на паре ноутбуков:

https://www.kaggle.com/code/eugenedurymanov/the-permutohedron-node-embeddings-distance-distr

https://www.kaggle.com/code/eugenedurymanov/heizenberg-embeddings-with-generators-perspective

В докладе будет рассказано об идее получения эмбеддингов вершин бесконечных графов Кэли с помощью MLP на случайных блужданиях. За основу взята Node2vec, модель обучающаяся на случайных блужданиях по графу, она разобрана в первом ноутбуке — показана ее пригодность для задачи получения хороших ембеддингов с точки зрения сохранения расстояний. На докладе также более подробно поглядим на ее код в пакете pytorch geometric (https://causalai.github.io/pytorch_geometric/_modules/torch_geometric/nn/models/node2vec.html)

Для оценки бесконечных (или просто больших) графов Кэли такая модель непригодна, так как требует уже построенный граф как входные данные (на личной машине H_3(Z/20) — циклическая целая трехмерная группа Гейзенберга порядка 20 уже не считается), поэтому было решено перейти к собственной модели, которая получает на вход только координаты случайных блужданий на графе Кэли группы. Модель в основном повторяет Node2Vec, но работает только с вектором длины размерности группы, а не с целым графом (координаты вершины). Случайные блуждания для такого концепта работы генерируются через генераторы группы (по имеющимся координатам знаем, куда блуждание может пойти дальше, зная образующие).

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

📹 Video: https://youtu.be/pjrea6Hat9U?si=8HbhlasmIRwbfp_s

Zoom link will be in @sberlogabig just before start. Video records: https://www.youtube.com/c/SciBerloga - subscribe !
3 июля - пройдёт бесплатная онлайн-конференция DataStart по Data Science, машинному обучению и нейросетям. Вас ждут увлекательные доклады, море дискуссий и нетворкинга. Скорей регистрируйтесь - clck.ru/kPirN

Более 1000 участников, крутой состав спикеров, возможность задавать вопросы, найти ментора и многое другое. 🔥

Что будет:
- 2 трека, 16 часов докладов;
- годнота от талантливых практиков;
- нетворкинг;
- высокий уровень программы;
- бесплатная онлайн-трансляция;
- видеозаписи и презентации;
- высокий уровень программы.

Для кого:
- Data Scientist, Data Analyst и Data Engineer.
- Computer Vision Engineer и NLP Engineer.
- Machine Learning Engineer.
- Руководителям бизнеса.

Кейсы, практика и четкие схемы, которые вы можете применить уже сегодня. То, что актуально прямо сейчас. Знания, которые можно внедрить в любой бизнес, и при возможности масштабировать.

Встречаемся 3 июля - https://clck.ru/kPirN. Трансляция будет бесплатной, но если вы хотите купить видеозаписи, то воспользуйтесь промокодом специально для наших подписчиков: Sberloga500
🗓 Программа пройдет в Санкт-Петербурге с 20 по 30 августа. Подать заявку можно по ссылке до 23:59 14 июля 2024 года.
Питание, обучение и проживание бесплатное, оплатить самим нужно будет только проезд.

Подавайте заявки и делитесь постом с друзьями и коллегами!
Forwarded from LightAutoML framework (Alex Ryzhkov)
Всем привет!

На прошедшем вчера третьем этапе AutoML Grand Prix на Kaggle команде Лаборатории AI "LightAutoML testers" удалось занять 3-е место, уступив только командам из H2O с решениями на базе платного решения Driveless AI и опередив коллег из Amazon, Microsoft, MLJAR и других компаний.

Полное решение с описанием будет выложено в ближайшие дни (следите за обновлениями 🤓), однако уже сейчас публично доступно сверхбыстрое решение на основе одной табличной нейронной сети из LightAutoML, способное занять 5-ое место: https://www.kaggle.com/code/simakov/lightautoml-denselight (вы знаете, что делать ⭐️)

Happy Kaggling 🦙
Please open Telegram to view this post
VIEW IN TELEGRAM
🚀 @SBERLOGASCI webinar on data science:
👨‍🔬 Кирилл Хоружий "Введение в методы поиска короткого пути на больших графах"
⌚️ Четверг 4 июня, 19.00 (по Москве)

Мы с коллегами организуем проект по применению методов МЛ/RL к задачам теории групп и графов Кэли - если Вы хотите присоединиться - напишите - @alexander_v_c. В четверг Кирилл Хоружий сделает вводный доклад по этой теме - приходите ! (А также подписывайтесь на замечательный канал Кирилла - @diagrams_every_day ).

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

На вебинаре мы рассмотрим методы решения задачи поиска пути в крупных перестановочных графах, таких как Кубик Рубика или Пятнашки, где задача поиска пути становится весьма сложной. Мы обсудим state-of-art подходы, показанные в работах DeepCubeA (2019) (Nature) и Self-Supervision methods (2023) (arXiv).

Возможные варианты решения задачи о поиске пути:
1. Оценка дистанции случайными блужданиями. Из целевой вершины делаем K шагов и обучаем модель предсказывать K, которое хорошо коррелирует с реальной дистанцией (d). Используем эту модель как эвристику для алгоритма A*.
2. DQ-learning. Предсказывать моделью реальную дистанцию, в лучших традициях DQN основываясь на уравнение Беллмана улучшать после обучения предсказанные расстояния и обучаться заново. Затем также на А* искать путь.
3. Обратная диффузия. Делая случайные шаги, мы почти гарантировано отдаляемся от целевой вершины. Научимся по вершине, предсказывать откуда в неё мы пришли, случайно блуждая. Затем через beam search находим наиболее вероятный путь в целевую вершину (самый короткий ~ самый вероятный).

Также обсудим возможные упрощения жизни для модели через алгоритм Метрополиса и существующие эвристики.

Zoom link will be in @sberlogabig just before start. Video records: https://www.youtube.com/c/SciBerloga - subscribe !

📖 Presentation: https://t.me/sberlogasci/10989/15283
📹 Video: https://youtu.be/2J3eGGH-uiM?si=9xgHtcCpBj0wKXC0
Игра была придумана Г. Бальбо в 1974 году и впервые описана в французском шахматном журнале Le Courrier des Echecs в сентябре того же года.

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

Правила для пешек (их всего семь) также были изменены в соответствии с новой геометрией доски:

Пешка, достигшая дальнего конца d-, e-, f-, g- или h-колонки, может превратиться в ферзя, ладью, слона или коня.
Пешка, достигшая дальнего конца c- или i-колонки, может превратиться только в слона или коня.
Пешка, достигшая дальнего конца a-, b-, j- или k-колонки, не может превращаться и остается на месте как препятствие, пока её не захватят или не появится возможность захвата, который уберёт её с этой клетки, после чего она может продвигаться дальше.
Forwarded from Борис опять
Недавно BM25, алгоритм поиска из 80-х, победил нейросетевой поиск на LLM.

Мне стало очень интересно разобраться, как это работает, и я написал статью на Хабр, где этот алгоритм реализуется с нуля.

https://habr.com/ru/articles/823568/

Материал подойдет начинающим: ничего кроме знания Python не нужно.

Просьба читать, лайкать и кричать об этой статье на улицах. 😇
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Борис опять
#работа

# Методичка по поиску работы в ML/DS и IT в целом

В канале накопилось немало материала про поиск работы. Я собрал, дополнил и превратил всё в небольшую книжку.

Все кратко и по делу. Чтения минут на 30. Внутри рассматриваю поиск работы с самых азов и до деталей с примерами из жизни.

https://btseytlin.github.io/intro.html

Если вы давно читаете этот канал и хотели бы ему помочь, то вот лучший способ: скиньте методичку кому-то из друзей.

@boris_again
Forwarded from DevFM
The ultimate docker compose cheat sheet

Хорошая статья, охватывающая основные аспекты docker compose. Автор начинает с базовых концепций, но будет полезна даже тем, кто хорошо знаком с компоузом.

Из интересного:
– параметр, позволяющий рестартить сервис, если он завалился
– как одному сервису дождаться запуска другого сервиса с использованием определенных условий. Бывает полезно, когда веб-сервис дожидается старта базы данных
– как задавать healthcheck сервисов с различными параметрами
– также автор разжёвывает тему volumes и networks

У нас был отдельный пост с практическими советами по докеру.

#skills #docker
Почему ты теряешь деньги и время на вкат в Data Science

При вкате в Data Science ребята допускают кучу ошибок на своём пути, например:

1️⃣ Я не знаю какую область мне выбрать? 🎮
2️⃣ Где и как мне учить материалы по Data Science? 🇺🇸
3️⃣ Допустим я учусь, но как мои знания будут применяться на работе ?  🙈
4️⃣ А где и как нужно искать вакансии ? А что учить на собесах ? А почему мне не пишут HR`ы ? А что спрашивают на собесах ? Мне страшно ходить на собесы, вдруг я обсренькаюсь и что дальше ??? 🎮

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

Как менторство может помочь именно тебе?
Отвечая на этот вопрос, буду приводить основываться на данных из своей практики ментора.

1️⃣ Экономия времени и денег.
Средняя зп джуна ~110к, без ментора вы будете заниматься около года-полтора (12-18 месяцев), а с ментором около (6-8 месяцев, по личному опыту знаю). Простая математика: вы экономите 6-10 месяцев, а как следствие 6 * 110 - 10* * 110= 660к - 1100к. А если вы ещё и сразу на мидла идёте, то экономия около 1200к - 2200к... 🍑

2️⃣ Вы приобретёте более глубокие навыки, если будете учиться с ментором.
Ментор, как человек опытный, даёт вам всю свою накопленную экспертизу: как получить первый оффер, как уничтожать собеседования, как правильно торговаться, как правильно себя показывать на собесах и тд. Самим вам придётся кровью и потом выбивать эти навыки и опыт, поэтому для сокращения пути ментор - самый лучший вариант. 📞

3️⃣ Сообщество единомышленников
У меня есть группа, в которой я ребят довожу вплоть до оффера, на данный момент там около 20 человек. Мы регулярно устраиваем созвоны, на которых я разбираю основные ошибки, пробелы и затыки ребят на пути приобретения оффера. Также ребята активно переписываются и проводят МОКи между собой. 🎲

4️⃣ Кукухология.
Зачастую так бывает, что основным затыком являются страхи. Именно это и прорабатывается на менторстве, чтобы вы смогли идти и уничтожать собесы 💪

Итог:
Если вы хотите получить оффер, или вам необходимо сделать продающее резюме, роадмап, накинуть материалов, то приглашаю к себе на менторство
Вот видео, в котором я рассказываю про себя и свои услуги.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Empty Set of Ideas (Arsenii)
Про функторы и кластеризацию

В работе "An Impossibility Theorem for Clustering" (2002) Jon Kleinberg определяет три простых свойства, которым должна удовлетворять любая кластеризация, а затем доказывает, что ни один алгоритм кластеризации не может обладать всеми тремя свойствами одномоментно. Пусть дано множество S, состоящие из n ≥ 2 точек и некоторая полуметрика (без неравенства треугольника) на нем d:S×S→R. Пусть D(S) — множество полуметрик на S, а Π(S) — множество разбиений S на дизъюнктные подмножества. Тогда кластеризацией назовем функцию f: D(S) → Π(S), которая каждой полуметрике на S ставит в соответствие некоторое диз.разбиение. Kleinberg предложил следующие три свойства, которым должна отвечать каждая такая функция f:

1. Инвариантность относительно гомотетии (scale invariance): f(d) = f(alpha * d) для любых d из D(S) и alpha > 0 из R;
2. Насыщенность (?) или richness: f сюръекция;
3. Непротиворечивость или consistency: пусть есть две полуметрики d и d', а Г некоторое разбиение S. d' это Г-трансформация d, если d'(i,j)≤d(i,j) для всех пар из одного кластера в Г, аналогично d'(i,j) ≥ d(i,j) для всех пар в различных кластерах, тогда d и d' не противоречат друг друг, если d' это f(d) трансформация d, то f(d) = f(d'), т.е. кластеры уплотняются и расползаются при замене метрики d на d';

Существуют алгоритмы кластеризации, которые сочетают в себе любые 2 из 3 перечисленных свойств. Допустим S — множество вершина графа, а d(i,j) — вес ребра. Рассмотрим три функции кластеризации, которые находят подграфы, выбирая некоторое подмножество ребер:

1. выберем произвольное 1<k<n и упорядочим ребра по весу, будем добавлять ребра в подграф из упорядоченного списка ребер, пока он не будет иметь ровно k связных компонент;
2. выберем произвольное r и будем добавлять ребра с весом не меньшим r, полученные компоненты связности и назовем кластерами;
3. выберем произвольное 1 > alpha > 0 и пусть R это max(d). Будем сохранять ребра с весом не более alpha * d;

Утверждение: Функция 1 удовлетворяет 1 и 3 (число кластеров ограничено k сверху), функция 2 удовлетворяет 2 и 3 (варьируем r, получаем разные разбиения и теряем инвариантность относительно гомотетии), а функция 3 удовлетворяет 1 и 2.

И тут в дело врывается топологический анализ данных, с уже классической статьей "Classifying Clustering Schemes" (2013) by Gunnar Carlsson & Facundo Memoli. Ключевая идея их работы заключается в том, что эти свойства кластеризации могут быть закодированы как морфизмы в категории конечных метрических пространств таким образом, что ответом будет не функция кластеризации, а функтор кластеризации в подходящую категорию и он будет обладать уже всеми желанными свойствами.