Привет, друзья! 👋
Мы готовим статью о том, как гарантированно провалить собеседование, и нам нужна ваша помощь! Поделитесь своим опытом и мнением, а самые интересные и полезные советы мы обязательно включим в нашу статью.
❓ Какую самую нелепую ошибку вы когда-либо совершали на собеседовании?
❓ Что, по вашему мнению, может мгновенно испортить впечатление о кандидате?
Не стесняйтесь делиться своими историями и мнениями в комментариях! Самые интересные и полезные советы попадут в нашу статью. 🚀 Спасибо за участие!
Мы готовим статью о том, как гарантированно провалить собеседование, и нам нужна ваша помощь! Поделитесь своим опытом и мнением, а самые интересные и полезные советы мы обязательно включим в нашу статью.
❓ Какую самую нелепую ошибку вы когда-либо совершали на собеседовании?
❓ Что, по вашему мнению, может мгновенно испортить впечатление о кандидате?
Не стесняйтесь делиться своими историями и мнениями в комментариях! Самые интересные и полезные советы попадут в нашу статью. 🚀 Спасибо за участие!
👍3
Forwarded from Proglib.academy | IT-курсы
📈 Стать аналитиком Big Data: пошаговое руководство 2024
Рассказываем в нашей статье, какие знания, онлайн-курсы, подкасты и книги помогут начать карьеру в сфере Big Data без специального образования.
Ознакомьтесь со статьей, а также забирайте наши курсы для Data Science:
🔵 Базовые модели ML и приложения
🔵 Математика для Data Science
🔗 Статья
Рассказываем в нашей статье, какие знания, онлайн-курсы, подкасты и книги помогут начать карьеру в сфере Big Data без специального образования.
Ознакомьтесь со статьей, а также забирайте наши курсы для Data Science:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Приглашенный спикер: Павел Запольский – Senior Quantitative Researcher at Exness и Co-founder GrowLytics. Запустивший более 10 проектов по машинному обучению и анализу данных для ведущих компаний.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍️😎 Подборка вопросов с собесов и ответы на них
Это подборка самых популярных постов канала «Библиотека собеса по Data Science» за месяц. Сохраняй себе, чтобы не потерять👇
✅ Какие разновидности градиентного спуска вы знаете?
✅ Как использовать матрицу ошибок (confusion matrix), чтобы определить производительность модели?
✅ Какие критерии качества рекомендательных систем вы знаете?
✅ Как выбрать порог для модели классификации?
✅ 👀 Попробуйте угадать, что изображено на этом графике?
Это подборка самых популярных постов канала «Библиотека собеса по Data Science» за месяц. Сохраняй себе, чтобы не потерять👇
✅ Какие разновидности градиентного спуска вы знаете?
✅ Как использовать матрицу ошибок (confusion matrix), чтобы определить производительность модели?
✅ Какие критерии качества рекомендательных систем вы знаете?
✅ Как выбрать порог для модели классификации?
✅ 👀 Попробуйте угадать, что изображено на этом графике?
👏5👍3🎉2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🚀 Ускорьте свою базу данных: 7 проверенных методов масштабирования и оптимизации
Масштабирование улучшает производительность и повышает надежность систем хранения данных путем оптимизации использования ресурсов и распределения нагрузки. В этой статье мы рассмотрим 7 эффективных методов масштабирования и оптимизации базы данных.
🔗 Читать статью
🔗 Зеркало
Масштабирование улучшает производительность и повышает надежность систем хранения данных путем оптимизации использования ресурсов и распределения нагрузки. В этой статье мы рассмотрим 7 эффективных методов масштабирования и оптимизации базы данных.
🔗 Читать статью
🔗 Зеркало
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
👆Наглядное объяснение того, как языковые модели предсказывают следующее слово в тексте👆
🔥8👍6🌚2
❗Вакансии «Библиотеки программиста» — ждем вас в команде!
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉авторов в наше медиа proglib.io
👉контент-менеджеров для ведения телеграм-каналов
Подробности тут
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉авторов в наше медиа proglib.io
👉контент-менеджеров для ведения телеграм-каналов
Подробности тут
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
ad.proglib.io
Вакансии в медиа «Библиотека программиста»
Количество проектов в редакции постоянно растет, так что нам всегда нужны специалисты
❤1
Forwarded from Proglib.academy | IT-курсы
🧮🏭 Индустриальная математика: когда ∫f(x)dx равно миллиардам
Индустриальная математика предлагает эффективные решения для самых сложных проблем реального мира. В нашей статье мы рассмотрим сущность индустриальной математики, ее краткую историю и современные тренды, а также обсудим, кому подходит эта профессия.
🔗 Статья
Индустриальная математика предлагает эффективные решения для самых сложных проблем реального мира. В нашей статье мы рассмотрим сущность индустриальной математики, ее краткую историю и современные тренды, а также обсудим, кому подходит эта профессия.
🔗 Статья
👍4
Андрей Карпаты тут недавно объяснил, как устроены атаки на LLM с применением специальных токенов. Мы сделали перевод:
<s>
, <|endoftext|>
и т.д.) в строке ввода. Это хоть и выглядит удобным, на практике может привести к неприятным ошибкам или, что ещё хуже, к уязвимостям, аналогичным SQL-инъекциям.Поэтому в LLM может возникнуть проблема, когда некорректный код будет разбирать специальные токены в строке ввода как настоящие специальные токены, нарушая работу модели.
Вот пример из дефолтного токенизатора Llama 3:
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("meta-llama/Meta-Llama-3.1-8B")
tokenizer("hello world <|end_of_text|> haha").input_ids
# [128000, 15339, 1917, 220, 128001, 63450]
Тут одновременно происходят две неочевидные вещи:
<|begin_of_text|>
(128000) был добавлен в начало последовательности.<|end_of_text|>
(128001) был извлечён из строки, и вместо него вставлен специальный токен. Теперь текст может нарушить протокол токенов и заставить LLM выдавать непредсказуемые результаты.add_special_tokens=False
и split_special_tokens=True
, а также добавлять специальные токены в коде самостоятельно. С этими настройками результат будет более правильным. На картинке (<|end_of_text|>
теперь рассматривается как обычная строковая последовательность и разбивается базовым BPE токенизатором так же, как и любая другая строка.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤1
🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.
В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги
👉Подписаться👈
В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги
👉Подписаться👈
👍2
🧪 Байесовское A/B-тестирование vs частотное: преимущества, недостатки и способ реализации на Python
A/B-тестирование — это метод сравнения двух версий чего-либо для определения, какая из них работает лучше.
В новой статье разберёмся, в каких случаях лучше применять частотный подход, а в каких — байесовский, и напишем продвинутый байесовский тест на Python без использования специальных A/B-библиотек.
👉 Читать статью
В новой статье разберёмся, в каких случаях лучше применять частотный подход, а в каких — байесовский, и напишем продвинутый байесовский тест на Python без использования специальных A/B-библиотек.
👉 Читать статью
👍8😁2
Media is too big
VIEW IN TELEGRAM
Это 35-минутный официальный фильм, рассказывающий историю создания одного из самых известных фреймворков для машинного обучения.
🔗 Смотреть на YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8
Forwarded from Proglib.academy | IT-курсы
✏️ Разбор задачи с экзамена ШАД
Условие: Раскройте скобки в матричном выражении: 1️⃣
Подсказка:Матрицы не коммутируют
#задачи_шад
Условие: Раскройте скобки в матричном выражении: 1️⃣
Подсказка:
#задачи_шад
👍3🤔3
📊 Подборка материалов по аналитике данных:
🔹 Шпаргалка по Power BI
Небольшое руководство по созданию визуализаций и работе с данными в Power BI.
🔹SQL Tutorial
Это большой туториал с теорией и практикой.
🔹Интегрируем pandas с электронными таблицами: три способа
Статья на «Хабре» объясняет, как интегрировать библиотеку pandas с электронными таблицами через три метода: работу с файлами Excel, Google Таблицы и CSV.
🔹Data Analyst Portfolio Project
Это плейлист с роликами, посвящёнными созданию проектов для портфолио аналитика данных. Рассматриваются как SQL, так и Power BI с Tableau.
🔹 Шпаргалка по Power BI
Небольшое руководство по созданию визуализаций и работе с данными в Power BI.
🔹SQL Tutorial
Это большой туториал с теорией и практикой.
🔹Интегрируем pandas с электронными таблицами: три способа
Статья на «Хабре» объясняет, как интегрировать библиотеку pandas с электронными таблицами через три метода: работу с файлами Excel, Google Таблицы и CSV.
🔹Data Analyst Portfolio Project
Это плейлист с роликами, посвящёнными созданию проектов для портфолио аналитика данных. Рассматриваются как SQL, так и Power BI с Tableau.
👍8❤1
Привет, друзья! 👋
Мы готовим статью о прокрастинации среди разработчиков и хотим узнать ваше мнение! 🤓 Поделитесь своим опытом, а самые интересные и полезные советы мы обязательно включим в нашу статью.
❓ Какая самая необычная причина прокрастинации у вас была в работе над проектом?
❓ Какой метод борьбы с прокрастинацией оказался для вас наиболее эффективным?
❓ Как вы справляетесь с когнитивной перегрузкой во время работы над сложными задачами?
Не стесняйтесь делиться своими историями и лайфхаками в комментариях! 💬 Ваш опыт может помочь другим разработчикам справиться с прокрастинацией. Спасибо за участие!
Мы готовим статью о прокрастинации среди разработчиков и хотим узнать ваше мнение! 🤓 Поделитесь своим опытом, а самые интересные и полезные советы мы обязательно включим в нашу статью.
❓ Какая самая необычная причина прокрастинации у вас была в работе над проектом?
❓ Какой метод борьбы с прокрастинацией оказался для вас наиболее эффективным?
❓ Как вы справляетесь с когнитивной перегрузкой во время работы над сложными задачами?
Не стесняйтесь делиться своими историями и лайфхаками в комментариях! 💬 Ваш опыт может помочь другим разработчикам справиться с прокрастинацией. Спасибо за участие!
😁2🌚2
This media is not supported in your browser
VIEW IN TELEGRAM
Вам поможет библиотека LossRider. Она позволяет визуализировать процесс обучения моделей машинного обучения, генерируя графики в стиле Line Rider, по которым «скатывается» персонаж на санках.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁22👍3😍1
🌲Какие операции с деревьями как структурами данных вы знаете?
Дерево — это иерархическая структура данных, состоящая из узлов, соединённых рёбрами.
Что касается операций, то их реализация сильно зависит от типа дерева. Но давайте рассмотрим самый простой случай — несбалансированное N-арное дерево, где нет ограничений на положение узлов и количество потомков у узла.
🔹Insert (вставка)
Если нет ограничений на размещение узла, вставка может быть простым добавлением нового потомка к существующему листу.
🔹Basic Search (обход дерева)
В самой простой форме обход дерева — это рекурсивная функция, которая вызывает саму себя для каждого потомка узла до тех пор, пока не будет найден целевой узел.
🔹Delete (удаление)
Если нужно удалить целое поддерево, это можно сделать, используя метод поиска узла. После того как целевой узел найден, его можно удалить из списка потомков его родителя.
#вопросы_с_собеседований
Дерево — это иерархическая структура данных, состоящая из узлов, соединённых рёбрами.
Что касается операций, то их реализация сильно зависит от типа дерева. Но давайте рассмотрим самый простой случай — несбалансированное N-арное дерево, где нет ограничений на положение узлов и количество потомков у узла.
🔹Insert (вставка)
Если нет ограничений на размещение узла, вставка может быть простым добавлением нового потомка к существующему листу.
🔹Basic Search (обход дерева)
В самой простой форме обход дерева — это рекурсивная функция, которая вызывает саму себя для каждого потомка узла до тех пор, пока не будет найден целевой узел.
🔹Delete (удаление)
Если нужно удалить целое поддерево, это можно сделать, используя метод поиска узла. После того как целевой узел найден, его можно удалить из списка потомков его родителя.
#вопросы_с_собеседований
👍3
Media is too big
VIEW IN TELEGRAM
В новом выпуске подкаста Talk Python To Me разработчики обсуждают инструменты и подходы, которые будут полезны для дата-сайентистов.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
В эфире вас будет ждать Павел Запольский – Senior Quantitative Researcher at Exness и Co-founder GrowLytics. Запустивший более 10 проектов по машинному обучению и анализу данных для ведущих компаний.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
🤖 Автоматизация управления ML-экспериментами с помощью СI/CD
CI/CD — это автоматизированный процесс, при котором код автоматически интегрируется в репозиторий, проходит сборку, тестирование и, в случае успеха, автоматически разворачивается на production-сервере.
В новой статье на «Хабре» описана настройка CI/CD для управления ML-экспериментами с помощью GitHub Actions и Neptune.ai. Процесс включает:
▪️Создание скриптов для обучения моделей и экспериментов.
▪️Настройку GitHub Actions для автоматической сборки окружения, установки зависимостей и запуска экспериментов при каждом коммите.
▪️Интеграцию с Neptune.ai для отслеживания результатов экспериментов, логов и метрик в реальном времени.
🔗 Читать подробнее по этой ссылке
В новой статье на «Хабре» описана настройка CI/CD для управления ML-экспериментами с помощью GitHub Actions и Neptune.ai. Процесс включает:
▪️Создание скриптов для обучения моделей и экспериментов.
▪️Настройку GitHub Actions для автоматической сборки окружения, установки зависимостей и запуска экспериментов при каждом коммите.
▪️Интеграцию с Neptune.ai для отслеживания результатов экспериментов, логов и метрик в реальном времени.
🔗 Читать подробнее по этой ссылке
👍2🔥2
Forwarded from ML Underhood
Как мы работали над YaFSDP
Недавно запустилась библиотека YaFDP, которая ускоряет обучение больших языковых моделей. Подробнее о ней можно почитать в статье на Хабре. А сегодня руководитель группы претрейна YandexGPT Михаил Хрущев ответил на несколько наших вопросов о том, как создавалась библиотека.
Когда и как началась работа над YaFSDP?
За 2 недели до Нового года в 2023-м. К концу года стало ясно, что некоторые наши оптимизации не дают ускорения, которого мы ожидали. Я пошёл искать причины такого и нашел праздничную «ёлочку».
Ориентировались ли на существующие решения? Были ли какие-то референсы, может?
Сам алгоритм предложили в статье ZeRO: Memory Optimizations Toward Training Trillion Parameter Models. Его реализация была также представлена в фреймворке DeepSpeed. К сожалению, она не очень масштабировалась и содержала много багов. Другая реализация, FSDP, сильно лучше, но и там есть проблемы с аллокацией памяти и коммуникациями. Поэтому я начал разрабатывать свою реализацию, к которой впоследствии подключились и другие ребята из моей команды.
Какие трудности возникали во время работы?
Было несколько технических трудностей. Вообще, от начала реализации до выкатки в обучение прошло чуть более месяца — разработка была более или менее гладкой. Самым сложным было продумать идею реализации, на это потребовалось больше месяца.
Здесь труднее всего было реализовать кода, который должен исполняться сразу после backward (обратного распространения ошибки) по слою. Я неожиданно столкнулся с тем, что torch (фреймворк глубокого обучения) совсем не приспособлен для такой хитрой логики. Но решение тем не менее нашлось.
На этом на сегодня все. Рассказывайте о своём опыте работы с LLM в комментариях!
ML Underhood
Недавно запустилась библиотека YaFDP, которая ускоряет обучение больших языковых моделей. Подробнее о ней можно почитать в статье на Хабре. А сегодня руководитель группы претрейна YandexGPT Михаил Хрущев ответил на несколько наших вопросов о том, как создавалась библиотека.
Когда и как началась работа над YaFSDP?
За 2 недели до Нового года в 2023-м. К концу года стало ясно, что некоторые наши оптимизации не дают ускорения, которого мы ожидали. Я пошёл искать причины такого и нашел праздничную «ёлочку».
Ориентировались ли на существующие решения? Были ли какие-то референсы, может?
Сам алгоритм предложили в статье ZeRO: Memory Optimizations Toward Training Trillion Parameter Models. Его реализация была также представлена в фреймворке DeepSpeed. К сожалению, она не очень масштабировалась и содержала много багов. Другая реализация, FSDP, сильно лучше, но и там есть проблемы с аллокацией памяти и коммуникациями. Поэтому я начал разрабатывать свою реализацию, к которой впоследствии подключились и другие ребята из моей команды.
Какие трудности возникали во время работы?
Было несколько технических трудностей. Вообще, от начала реализации до выкатки в обучение прошло чуть более месяца — разработка была более или менее гладкой. Самым сложным было продумать идею реализации, на это потребовалось больше месяца.
Здесь труднее всего было реализовать кода, который должен исполняться сразу после backward (обратного распространения ошибки) по слою. Я неожиданно столкнулся с тем, что torch (фреймворк глубокого обучения) совсем не приспособлен для такой хитрой логики. Но решение тем не менее нашлось.
На этом на сегодня все. Рассказывайте о своём опыте работы с LLM в комментариях!
ML Underhood
👍2