Forwarded from Сиолошная
_________________________________________________________________________
<--ВЫСОКАЯ СЛОЖНОСТЬ, ТЕХНИЧЕСКИЕ ДЕТАЛИ И РАЗБОРЫ-->
Текст:
— гайд по промптингу LLM для генерации синтетических данных: Generating Synthetic Dataset for RAG и Tackling Generated Datasets Diversity
Видео:
—🔥 Детальнейшая видео-лекция про устройство трансформера, со всеми нюансами;
—🔥 (плейлист на YouTube) 10+ часовой мини-курс по NLP «Полная история семейства GPT»;
—🔥 Лекция «RLHF Intro: from Zero to Aligned Intelligent Systems» в рамках DataFest 2023 (была признана лучей лекцией ODS в 2023);
— Мини-серия комментариев к ML System Design Interviews, с Валерой Бабушкиным: (1) выбор рекламы к показу в ленте соцсети, (2) ценообразование на маркетплейсе, (3) матчинг товаров в онлайн-магазине;
— Лекция по деревьям решений, методам ансамблирования и (ГЛАВНОЕ) градиентным бустингам;
— Лекция про языковые модели, основанные на принципе поиска ближайших соседей: часть 1, часть 2;
— Вебинар по неградиентным методам оптимизации, с большим количеством практики;
<--ВЫСОКАЯ СЛОЖНОСТЬ, ТЕХНИЧЕСКИЕ ДЕТАЛИ И РАЗБОРЫ-->
Текст:
— гайд по промптингу LLM для генерации синтетических данных: Generating Synthetic Dataset for RAG и Tackling Generated Datasets Diversity
Видео:
—
—
—
— Мини-серия комментариев к ML System Design Interviews, с Валерой Бабушкиным: (1) выбор рекламы к показу в ленте соцсети, (2) ценообразование на маркетплейсе, (3) матчинг товаров в онлайн-магазине;
— Лекция по деревьям решений, методам ансамблирования и (ГЛАВНОЕ) градиентным бустингам;
— Лекция про языковые модели, основанные на принципе поиска ближайших соседей: часть 1, часть 2;
— Вебинар по неградиентным методам оптимизации, с большим количеством практики;
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Базы данных & SQL
Хабр
Руководство по построению коннекторов к СУБД на примере Tarantool
В сложных ИТ-системах важны не только основные модули, но и механизмы их взаимодействия — коннекторы (они же драйверы). Например, без них сложно выстроить связь приложения с базой данных. Но закрыть...
Forwarded from Kogut Ivan Tutoring
This media is not supported in your browser
VIEW IN TELEGRAM
Рюкзак
#АлгоЕжемесячныеТемы
1️⃣ 1️⃣
Предисловие + теория: TODO
По мотивам задачи C со 2 тура региона 2025 года...
Это классическая задача и алгоритм, который рассказывают почти сразу же после базовых задач на динамическое программирование и я уверен, что многие знают как его писать. НО! У него много разных вариаций и можно еще кучу похожих придумать. Поэтому, как и во всех других темах, нужно не заучить алгоритм, а осознать детально его принцип действия. Иначе случится задача C со 2 тура региона
Пререквизиты:
🔙 Базовые задачи ДП
🔙 Базовые задачи на двумерное ДП
Еще теория + первые задачи:
📚 Материал от Яндекс Кружка - кратко формулировки и решение 4 разновидностей рюкзака с кодом на C++
📼 Лекция Паши Маврина - до 28 минуты стандарт, а дальше как при мелком n решать (перебор и MITM)
💻 Задача с информатикса 1 - 0-1 рюкзак: точный вес
💻 Задача с информатикса 2 - 0-1 рюкзак: наибольший вес
💻 Задача с информатикса 3 - 0-1 рюкзак: минимум предметов
💻 Задача с информатикса 4 - рюкзак
💻 Задача с информатикса 5 - рюкзак с восстановлением ответа
KIT контест по теме с периодически пополняемыми задачами:
🔄 Контест - сейчас там пока 3 задачи, но будут еще. Для решения нужно вступить в группу на кф - ссылка
Вопросы на понимание темы:
❓ Задача: есть 2n игроков, у каждого свой скилл ai. Нужно разделить их на две команды равные по суммарному скиллу, но не обязательно равные по количеству игроков. Как решать?
❗️ Если сумма всех ai не делится на 2, то такого разделения точно нет. Иначе скилл каждой из команд = sum(ai) / 2. То есть, если соберем команду с таким суммарным скиллом, то вторая команда автоматически будет с таким же скиллом. А сборка одной команды это задача о рюкзаке 0-1: точный вес (в данном случае, скилл)
❓ Та же самая задача, что и сверху, но теперь команды должны быть равны еще и по количеству игроков. Как решать?
❗️ В добавку к прошлому решению в команде должно быть n игроков. Давайте в ДП добавим еще одно измерение: dp[i][w][k] - можем брать игроков с 0 по i, нужно набрать суммарно w скилла и уже k игроков взято. Тем самым, асимптотика O(n^2W)
Делитесь с друзьями, задачи будут интересны любому уровню!
💬 Следующие темы смело предлагайте в комментариях. Также, делитесь интересными задачами и материалами по этой теме, тут их точно еще полно)
#АлгоЕжемесячныеТемы
Предисловие + теория: TODO
По мотивам задачи C со 2 тура региона 2025 года...
Это классическая задача и алгоритм, который рассказывают почти сразу же после базовых задач на динамическое программирование и я уверен, что многие знают как его писать. НО! У него много разных вариаций и можно еще кучу похожих придумать. Поэтому, как и во всех других темах, нужно не заучить алгоритм, а осознать детально его принцип действия. Иначе случится задача C со 2 тура региона
Пререквизиты:
🔙 Базовые задачи ДП
🔙 Базовые задачи на двумерное ДП
Еще теория + первые задачи:
📚 Материал от Яндекс Кружка - кратко формулировки и решение 4 разновидностей рюкзака с кодом на C++
📼 Лекция Паши Маврина - до 28 минуты стандарт, а дальше как при мелком n решать (перебор и MITM)
💻 Задача с информатикса 1 - 0-1 рюкзак: точный вес
💻 Задача с информатикса 2 - 0-1 рюкзак: наибольший вес
💻 Задача с информатикса 3 - 0-1 рюкзак: минимум предметов
💻 Задача с информатикса 4 - рюкзак
💻 Задача с информатикса 5 - рюкзак с восстановлением ответа
KIT контест по теме с периодически пополняемыми задачами:
Вопросы на понимание темы:
Делитесь с друзьями, задачи будут интересны любому уровню!
💬 Следующие темы смело предлагайте в комментариях. Также, делитесь интересными задачами и материалами по этой теме, тут их точно еще полно)
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from ML Advertising
Продолжаем тему LLM. Сегодня речь пойдет про Mistral
Для справки, Mistral - это французский стартап серии B, разрабатывающий LLM. Поднял в 2024 году $640M. Релизят предобученные и затюненные модели и часть из них с открытыми весами. Также предоставляют бесплатный доступ к своим моделям по API.
Запустим из коробки бесплатную модельку Mistral NeMo (12B параметров и контекстное окно на 128k токенов). Не забываем получить API-key на сайте мистраля.
Лимиты такие:
- 1 запрос в секунду
- 500 000 токенов в минуту
- 1 миллиард токенов в месяц
Полный список моделей можно найти по ссылке
#llm
Для справки, Mistral - это французский стартап серии B, разрабатывающий LLM. Поднял в 2024 году $640M. Релизят предобученные и затюненные модели и часть из них с открытыми весами. Также предоставляют бесплатный доступ к своим моделям по API.
Запустим из коробки бесплатную модельку Mistral NeMo (12B параметров и контекстное окно на 128k токенов). Не забываем получить API-key на сайте мистраля.
#!pip install mistralai -q
from mistralai import Mistral
#free
#model_id = "pixtral-12b-2409"
#model_id = "open-codestral-mamba"
model_id = 'open-mistral-nemo'
api_key = 'XXX'
client = Mistral(api_key=api_key)
chat_response = client.chat.complete(
model= model_id,
messages = [{
"role": "user",
"content": "Ответ на Главный вопрос жизни, вселенной и вообще - 42. Докажи это через цепочку рассуждений."
}]
)
resp = chat_response.choices[0].message.content
print(resp)
Лимиты такие:
- 1 запрос в секунду
- 500 000 токенов в минуту
- 1 миллиард токенов в месяц
Полный список моделей можно найти по ссылке
#llm
mistral.ai
Frontier AI LLMs, assistants, agents, services | Mistral AI
The most powerful AI platform for enterprises. Customize, fine-tune, and deploy AI assistants, autonomous agents, and multimodal AI with open models.
Forwarded from grokaem себя
Моя жизнь за последние пару месяцев стала более занятой, менее нервозной и менее продуктивной на посты. Одна из штук, которыми я занималась и занимаюсь - это F5TTS для русского.
Так как париться с красивыми постами (а они когда-то были?) мне не хочется, будут посты более расслабленные и легкие. Вот давайте послушаем новые примеры с нового подхода, который я поставила.
В этот раз это смесь russian и english (total 268h) так как заметила сильный forgetting для английского при обучении чисто на русском.
До этого были эксперименты с IPA и ударениями. Сейчас русский стоит только с ударениями от ruaccent, ударения с пометкой на +. Хочется рассказать о том, как работает расширение, что не так с длинными записями и как сделать condition на source lang != target lang. А также про то, как я собственно проверяю модели, выбираю данные и колдую над генерацией без изменения моделей.
#grokaem_audio
Так как париться с красивыми постами (а они когда-то были?) мне не хочется, будут посты более расслабленные и легкие. Вот давайте послушаем новые примеры с нового подхода, который я поставила.
В этот раз это смесь russian и english (total 268h) так как заметила сильный forgetting для английского при обучении чисто на русском.
До этого были эксперименты с IPA и ударениями. Сейчас русский стоит только с ударениями от ruaccent, ударения с пометкой на +. Хочется рассказать о том, как работает расширение, что не так с длинными записями и как сделать condition на source lang != target lang. А также про то, как я собственно проверяю модели, выбираю данные и колдую над генерацией без изменения моделей.
#grokaem_audio
Forwarded from grokaem себя
Так как я за открытый research, прикладываю source записи, чтобы вы также могли их юзать 🦕
Forwarded from grokaem себя
Forwarded from r/ретранслятор
This media is not supported in your browser
VIEW IN TELEGRAM
И снова китайский удар по ChatGPT: Alibaba представили новую модель Qwen2.5-1M, которая поддерживает миллион токенов контекста.
Например, у самой продвинутой версии ChatGPT в подписке Pro за $200 количество токенов всего 128 тысяч.
Qwen2.5-1M может обрабатывать огромные объёмы кода, крупные документы, книги и базы данных практически без ограничений. Скорость обработки до 7 раз быстрее.
У модели открытый исходный код, который можно свободно использовать для своих проектов. Также там можно генерировать изображения и видео.
Самое главное — всё это бесплатно и без VPN.
Демо последней версии тут. Также можете пользоваться на официальном сайте (только выберите Qwen2.5-Turbo)
r/#LocalLLaMA
Например, у самой продвинутой версии ChatGPT в подписке Pro за $200 количество токенов всего 128 тысяч.
Qwen2.5-1M может обрабатывать огромные объёмы кода, крупные документы, книги и базы данных практически без ограничений. Скорость обработки до 7 раз быстрее.
У модели открытый исходный код, который можно свободно использовать для своих проектов. Также там можно генерировать изображения и видео.
Самое главное — всё это бесплатно и без VPN.
Демо последней версии тут. Также можете пользоваться на официальном сайте (только выберите Qwen2.5-Turbo)
r/#LocalLLaMA
Forwarded from я так понимаю, Роман Васильев
💼 Делегировать — сложно, но эффективно! Памятка юного руководителя.
Когда ты джун или мидл, всё просто: тебе дают задачки, ты их делаешь и закрываешь. Со стороны работа руководителя иногда кажется очень простой: сидишь, раздаешь задачки, чилишь, периодически пишешь «ну чё как там?». Однако всё совсем не так просто.
Один из самых важных навыков руководителя — умение делегировать.
В этом посте поделюсь с вами тем, как я это вижу и как можно развивать этот навык (на своём примере)
Чтобы грамотно делегировать, нужно:
1. Понять, какой формат взаимодействия с конкретным человеком будет наиболее эффективен. К примеру, если сотрудник опытный - с ним можно работать на уровне проблем ("у нас падают показатели - разберись, пожалуйста"), а если сотрудник впервые стакливается с проектом/задачей - нужно явно проговорить план решения задачи и контрольные точки
2. Довериться другому человеку. Сделать с ним план решения задачи такой, чтобы ему было комфортно (не уходить в гиперконтроль, но и не оставлять человека один на один с непонятной задачей)
3. Уметь максимально ясно и подробно объяснить, что от человека нужно и для чего это нужно сделать. На языке, который этот человек поймет!
4. Понять, что возможно, всё не получится с первой попытки. Заложить это в сроки проекта и воспринимать спокойно
5. В противовес пункту 3 – четко определить, какое качество и скорость работы приемлемы в этой ситуации, и явно донести это до человека. Иногда — весьма строго. Если сотрудник стабильно не справляется, четко ему об этом сказать
6. Давать возможность человеку ошибаться. Гиперконтроль над сотрудником не позволяет ему учиться на своих ошибках
Как лично я стараюсь развивать эти навыки (помимо основной работы):
1. Общаюсь с руководителями, на которых хочется равняться, и перенимаю лучшие практики от них
2. У меня есть команда, которая занимается проектом Start Career in DS. Стараюсь выстроить процессы в своих проектах максимально эффективно, чтобы ребята могли готовить хорошие посты, сами проверять метрики, делать контент-планы и т. д. Получается весьма хорошо!
3. Периодически беру дополнительные активности, которые позволяют поработать с новой командой. Например, в этом году мы делали Яндекс Кап, в котором пришлось собрать совершенно новую команду (которая не работала вместе ранее)
4. Преподаю. Преподавание позволяет развивать навык объяснения информации таким образом, чтобы люди могли быстро воспринимать абсолютный новый для них материал
5. Учусь. Курсы по управлению иногда кажутся набором максимально очевидных фактов, но среди них можно найти весьма полезные!
К слову, недавно я прошёл очень клёвый курс по менеджменту.
Оставляйте 🔥 если тема для вас интересна и стоит поделиться инсайтами из него 🙂
Когда ты джун или мидл, всё просто: тебе дают задачки, ты их делаешь и закрываешь. Со стороны работа руководителя иногда кажется очень простой: сидишь, раздаешь задачки, чилишь, периодически пишешь «ну чё как там?». Однако всё совсем не так просто.
Один из самых важных навыков руководителя — умение делегировать.
В этом посте поделюсь с вами тем, как я это вижу и как можно развивать этот навык (на своём примере)
Чтобы грамотно делегировать, нужно:
1. Понять, какой формат взаимодействия с конкретным человеком будет наиболее эффективен. К примеру, если сотрудник опытный - с ним можно работать на уровне проблем ("у нас падают показатели - разберись, пожалуйста"), а если сотрудник впервые стакливается с проектом/задачей - нужно явно проговорить план решения задачи и контрольные точки
2. Довериться другому человеку. Сделать с ним план решения задачи такой, чтобы ему было комфортно (не уходить в гиперконтроль, но и не оставлять человека один на один с непонятной задачей)
3. Уметь максимально ясно и подробно объяснить, что от человека нужно и для чего это нужно сделать. На языке, который этот человек поймет!
4. Понять, что возможно, всё не получится с первой попытки. Заложить это в сроки проекта и воспринимать спокойно
5. В противовес пункту 3 – четко определить, какое качество и скорость работы приемлемы в этой ситуации, и явно донести это до человека. Иногда — весьма строго. Если сотрудник стабильно не справляется, четко ему об этом сказать
6. Давать возможность человеку ошибаться. Гиперконтроль над сотрудником не позволяет ему учиться на своих ошибках
Как лично я стараюсь развивать эти навыки (помимо основной работы):
1. Общаюсь с руководителями, на которых хочется равняться, и перенимаю лучшие практики от них
2. У меня есть команда, которая занимается проектом Start Career in DS. Стараюсь выстроить процессы в своих проектах максимально эффективно, чтобы ребята могли готовить хорошие посты, сами проверять метрики, делать контент-планы и т. д. Получается весьма хорошо!
3. Периодически беру дополнительные активности, которые позволяют поработать с новой командой. Например, в этом году мы делали Яндекс Кап, в котором пришлось собрать совершенно новую команду (которая не работала вместе ранее)
4. Преподаю. Преподавание позволяет развивать навык объяснения информации таким образом, чтобы люди могли быстро воспринимать абсолютный новый для них материал
5. Учусь. Курсы по управлению иногда кажутся набором максимально очевидных фактов, но среди них можно найти весьма полезные!
К слову, недавно я прошёл очень клёвый курс по менеджменту.
Оставляйте 🔥 если тема для вас интересна и стоит поделиться инсайтами из него 🙂
Forwarded from ML for Value / Ваня Максимов
Ну ладно, начну первый ☝️
Еще до полноценной работы выше я стажировался на Мосбирже в отделе рисков. То, что мне потом нельзя было около года торговать акциями из-за возможной инсайдерской инфы - это отдельная история))
Зато я узнал, что можно строить линейные регрессии (и любые мл-модели) с заковыристым таргетом:
- q95% доходности (=CVaR, Conditional value at risk)
- Интеграл от q95 до +Inf доходности (=eCVaR, expected CVAR - сколько мы потеряем в среднем в 5% самых плохих сценариев)
Ну и в целом узнал на практике, что в мире рисков применения мат статистики и матана не меньше, чем в современном DL
Еще до полноценной работы выше я стажировался на Мосбирже в отделе рисков. То, что мне потом нельзя было около года торговать акциями из-за возможной инсайдерской инфы - это отдельная история))
Зато я узнал, что можно строить линейные регрессии (и любые мл-модели) с заковыристым таргетом:
- q95% доходности (=CVaR, Conditional value at risk)
- Интеграл от q95 до +Inf доходности (=eCVaR, expected CVAR - сколько мы потеряем в среднем в 5% самых плохих сценариев)
Ну и в целом узнал на практике, что в мире рисков применения мат статистики и матана не меньше, чем в современном DL
Forwarded from Data Secrets
У Google вышла крутая статья про новую архитектуру Titan, которая может победить проблему забывания в трансформерах
Традиционные трансформеры очень прожорливы. Архитектура масштабируется квадратично по мере увеличения длины последовательности. Это приводит к проблеме невозможности увеличения контекстного окна и так называемому забыванию, потому что трансформеры также часто склонны аллоцировать внимание на нерелевантный контекст и, чем он больше, тем больше такая накапливаемая ошибка и степень забывчивости модели.
В Titan же подход к памяти немного иной: помимо краткосрочной памяти attention исследователи добавили в архитектуру долгосрочную память (тут вы, возможно, поймали флешбек на LSTM, и не зря). То есть у нас есть некоторый core – стандартное внимание с ограниченным окном, и модуль, который хранит важную информацию из "далекого прошлого". Чтобы решать, какую информацию запоминать, в нем используется метрика сюрприза (чем "неожиданнее" новые данные для модели, тем важнее их запомнить) + есть коэффициент затухания. Все эффективно параллелится.
При этом в статье показали аж три варианта соединить текущее внимание с долгосрочной памятью:
➖ Memory as Context: долгосрочная память используется как контекст для текущего внимания.
➖ Memory as Gating: здесь прямо максимальный мэтч с LSTM, тот же механизм гейтов
➖ Memory as Layer: самый простой вариант, вся память соединена как слой в сетке
MAC оказался лучше всего по перплексии, а MAL чуть быстрее, но теряет в эффективности. В целом такая архитектура может легким движением руки масштабироваться до контекста в 2+ миллиона токенов, сохраняя стабильную точность (трансформеры начинают обычно фейлить уже после отметки 4096). Очень крутая работа получилась у Google, в общем.
Полный текст статьи здесь
P.S. Очень подробный и понятный разбор архитектуры LSTM от нас можно почитать здесь, а вот тут лежит наша большая статья про другие архитектуры-альтернативы трансформеру
Традиционные трансформеры очень прожорливы. Архитектура масштабируется квадратично по мере увеличения длины последовательности. Это приводит к проблеме невозможности увеличения контекстного окна и так называемому забыванию, потому что трансформеры также часто склонны аллоцировать внимание на нерелевантный контекст и, чем он больше, тем больше такая накапливаемая ошибка и степень забывчивости модели.
В Titan же подход к памяти немного иной: помимо краткосрочной памяти attention исследователи добавили в архитектуру долгосрочную память (тут вы, возможно, поймали флешбек на LSTM, и не зря). То есть у нас есть некоторый core – стандартное внимание с ограниченным окном, и модуль, который хранит важную информацию из "далекого прошлого". Чтобы решать, какую информацию запоминать, в нем используется метрика сюрприза (чем "неожиданнее" новые данные для модели, тем важнее их запомнить) + есть коэффициент затухания. Все эффективно параллелится.
При этом в статье показали аж три варианта соединить текущее внимание с долгосрочной памятью:
MAC оказался лучше всего по перплексии, а MAL чуть быстрее, но теряет в эффективности. В целом такая архитектура может легким движением руки масштабироваться до контекста в 2+ миллиона токенов, сохраняя стабильную точность (трансформеры начинают обычно фейлить уже после отметки 4096). Очень крутая работа получилась у Google, в общем.
Полный текст статьи здесь
P.S. Очень подробный и понятный разбор архитектуры LSTM от нас можно почитать здесь, а вот тут лежит наша большая статья про другие архитектуры-альтернативы трансформеру
Please open Telegram to view this post
VIEW IN TELEGRAM