Start Career in DS @start_ds Channel on Telegram

Start Career in DS

@start_ds


Тут публикуются материалы для прокачки скиллов в DS и подготовки к собеседованиям.

Пишем про технические тулзы, визуализацию данных, бизнесовые задачи, разбираем ML-алгоритмы и обсуждаем смежные темы :)

Автор: @RAVasiliev

Start Career in DS (Russian)

Хотите начать карьеру в области Data Science? Тогда канал "Start Career in DS" (@start_ds) идеально подойдет для вас! Здесь публикуются материалы для развития навыков в области Data Science и подготовки к собеседованиям.

На канале вы найдете полезные статьи и советы по работе с техническими инструментами, визуализации данных, решению бизнесовых задач, а также разборы ML-алгоритмов. Автором канала является @RAVasiliev, который делится своим опытом и знаниями в этой области.

Присоединяйтесь к каналу "Start Career in DS" и начните свой путь в Data Science прямо сейчас!

Start Career in DS

20 Nov, 15:33


ℹ️ Всё про токенизацию и токенизаторы в языковых моделях

Токен -
это минимальная единица текста, с которой работают современные языковые модели. В качестве токена могут выступать как полноценные слова, так и части слов, слоги или отдельные символы.
✂️ Например, в некоторых моделях слово «привет» может разбиваться на токены: [«при», «вет»].

Токенизация — процесс предобработки входного текста в список токенов. Обычно далее каждый токен векторизуется и весь этот массив векторов подаётся модели на вход, с чем она начинает работать.

🤯 В моделях Transformer токенизаторы обучаемы. Обучение токенизаторов не схоже с тем, как обучаются ML-модели, наоборот, это статистический процесс, который определяет, какие сочетания символов (подслов, слов) лучше всего выбрать для корпуса текста, с которым мы работаем.

🔝Современные токенизаторы можно разделить по следующим видам:

1. Byte-Pair Encoding (используется в GPT-like моделях, обучается слиянием символов из основного корпуса, выбирая пары по наибольшей частоте встречаемости, подробно про алгоритм и реализацию кода обучения читайте тут)
2. WordPiece (используется преимущественно в BERT-like моделях, также обучается слиянием, но используется не частота встречаемости, а более универсальная формула, также подробно читайте про реализацию и формулу тут)
3. Unigram (не так применим, однако, для полноты картины читайте о нем тут)

❗️Почему это важно:

1️⃣ Фертильность
(мера, показывающая среднее количество токенов на одно слово после токенизации предложения):
Напрямую влияет на стоимость использования любой модели: больше токенов после токенизации предложения -> больше входная последовательность в LLM -> больше стоимость.

2️⃣ Качество работы
:
Правильно токенизированная последовательность также сильно влияет на качество модели из-за появления символов, которых модель не видела или из-за особенностей некоторых языков, где нет, например, пробелов.
Очень грамотно и подробно этот нюанс описан тут.

3️⃣ Скорость работы:
Следствие из первого пункта: чем больше последовательность токенов, тем больше вычислений стоит делать, что также влияет на скорость ответа модели.

🔥 Дополнительная информация по теме:

-
Краткий обзор токенизаторов на Хабре
-
О токенизаторах с NLP-курса на Hugging Face
-
«Насколько хорош Ваш Токенайзер» - статья на arxiv [ENG]
- Статья на английском для начинающих о токенах в LLM [ENG]

Теперь вы знаете, как работают токенизаторы🔥
Ждём ваших лайков и обратной связи❤️
До встречи👋🏻

Start Career in DS

18 Nov, 13:59


Привет! На связи создатель канала Рома Васильев и команда канала Start Career in DS 🙂

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

Start Career in DS

15 Nov, 09:52


🔥 Материалы для подготовки к собеседованиям от Start Career in DS и Alfa Advanced Analytics
Добавляем в избранное!

Вместе с Telegram-каналом Центра продвинутой аналитики Альфа-Банка подготовили для вас гайд по собеседованиям для Data Scientist’ов 🔥

В подборке — советы и инсайты от экспертов, а также примеры реальных заданий, которые могут встретиться вам на интервью в Альфа-Банк и не только. Будут полезны как новичкам в DS, так и опытным специалистам!

Сохраняйте подборку и заглядывайте в канал Alfa Advanced Analytics 🙂
А в канале Start Career in DS вы сможете найти много полезных материалов для развития в Data Sceince, а также регулярные квизы с призами!

Материалы для подготовки. Сохраняйте, чтобы не потерять:

🔗 Как вспоминать базовую математику - часть 1, часть 2
🔗 Пет-проекты для начинающего Data Scientist'а - ссылка
🔗 Открытый курс по прикладной статистике от Академии Аналитиков Авито - ссылка
🔗 Deep Learning: теоретический справочник по базовым концепциям - ссылка
🔗 Классический ML – база: справочник основных алгоритмов - ссылка
🔗 Учебник Школы анализа данных — смотреть  
🔗 Семестровый курс DLS — смотреть
🔗 Искусственный интеллект в финтехе — смотреть
🔗 Kaggle — смотреть
🔗 GitHub курса ML-1 в ВШЭ — смотреть

Start Career in DS

13 Nov, 16:54


🦜RAG: Классический подход и современные улучшения [Ч.2]

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

🔍 Базовая архитектура RAG:

❗️Пререквизит:
В своей системе RAG использует так называемые векторные представления — способ представления текста в виде вектора (точки в многомерном пространстве). Чем ближе друг к другу в этом пространстве находятся две точки, тем больше их текстовые представления похожи по смыслу. Это позволяет находить релевантные части контекста, даже если они используют другие слова или фразы.

1️⃣ Чанкинг базы знаний
Чанкинг — разбиение больших документов на маленькие части (чанки). Например, длинный текст книги можно разбить на абзацы или предложения. Таким образом, система может искать ответ в средних отрывках текста и получать более конкретные результаты без потери контекста или его избыточности. Ответы по большим или очень маленьким блокам зачастую ухудшают RAG-систему.

2️⃣ Сохранение векторов чанков в векторную БД
После этапа чанкирования необходимо векторизовать все полученные куски и сохранить их в векторную базу данных для дальнейшего семантического поиска и извлечения наиболее релевантных.

3️⃣ Получение пользовательского запроса и его векторизация
Для того, чтобы сравнивать пользовательский запрос с теми частями, которые мы сохранили в базу данных, нам также необходимо его векторизовать.

4️⃣ Отбор релевантных чанков
Здесь начинается процесс семантического поиска. В RAG-системе вектор пользовательского запроса сравнивается со всеми векторами в БД через какую-либо меру сходства. Куски, имеющие наибольшую величину сходства, передаются на следующий этап.

5️⃣ Передача найденных чанков в генеративную модель
После отбора самых релевантных чанков RAG передает их в LLM, которая генерирует ответ на все тот же пользовательский запрос, но уже с использованием полученного контекста.

🔝 Однако, такой классический подход не всегда даёт должного результата, и в таком случае стоит переходить к более продвинутым техникам и улучшениям:

- Подробная статья про Advanced RAG
- Про хитрости и улучшения RAG на ODS
- Совсем недавний подход от Anthropic по построению контекстного поиска в RAG
- Статья с набором придвинутых техник в RAG
- Серия постов на Хабре про RAG

📚 Ещё дополнительной литературы на эту тему:

- Простое и понятное объяснение RAG
Дополнительная статья про векторные БД
- Advanced RAG [ENG]
- Алгоритм BM25, который иногда используется для поиска в RAG

Обязательно ставьте лайки❤️
До скорых встреч👋🏻

Start Career in DS

11 Nov, 15:25


📊 Обзор инструментов BI - систем для построения дашбордов

Мы уже делали обзор библиотек по визуализации данных. Сегодня хотим рассказать про BI инструменты:

🔘 Power BI
Отличается быстрой интеграцией с Excel и другими продуктами Microsoft, что упрощает построение регулярных отчётов и аналитики. Хорош для средних и крупных компаний, где важна удобная работа с данными внутри Microsoft Office.
Пример: маркетинговый отчёт

🔘 Tableau

Популярен в крупных компаниях, помогает обрабатывать и визуализировать большие массивы данных из разных источников. Доступен функционал сложных интерактивных отчётов. Однако, он ушёл из РФ и для многих компаний России больше недоступен
Пример дашборда: [ENG]Time Series Analyse in Tableau

🔘 DataLens
BI-система от ребят Яндекса, работающая в Yandex Cloud.
Очень быстро развивается, особенно в последние годы (после ухода tableau), т.к. многие компании перешли на него.
Отлично интегрируется с облаком и позволяет быстро собирать практически любые базовые отчёты
Примеры: DataLens Demo Dashboard и Обзор дашборда Yandex DataLens от LeftJoin

🔘 Metabase
Бесплатная и простая платформа с минимальными настройками для небольших команд. Особенность: фокус на SQL-запросах, которые пользователи могут писать прямо в интерфейсе, и лёгкость получения отчётов без сложных технических навыков. Подходит для небольших компаний, которым нужен быстрый анализ данных.
Пример: [ENG] Metabase Tutorials - можно посмотреть как созадавать графики и дашборды

🔘 Redash
Сделан для команд, которые хотят быстро визуализировать данные на основе SQL-запросов. Отличие от Metabase — в фокусе на минималистичном интерфейсе и возможности получать быстрые результаты по запросам в базах данных. Подходит небольшим командам, знакомым с SQL, но не требует глубоких технических знаний.
Пример: Как создать дашборд в Redash?

🔘 Apache Superset
Инструмент с большим потенциалом для настройки, отличающийся гибкостью и мощной поддержкой SQL для опытных аналитиков. В отличие от Metabase и Redash, поддерживает более сложные визуализации и кастомные отчёты, что делает его идеальным для проектов с нестандартными запросами и профессиональных команд.
Пример: Обзор визуализаций в Apache Superset



Что ещё можно почитать про BI-системы:
- Канал Ромы Бунина - гуру визуализаций - @revealthedata
- Вводную статью про datalens тут
- Туториал по tableau тут
- Статью
Как найти сокровища в данных, или Зачем нужна BI-система

Start Career in DS

02 Nov, 14:22


📹 Рекомендуем серию видео от 3Blue1Brown про нейронные сети. Как всегда красивые визуализации и понятное объяснение принципов работы нейронных сетей.

Видео 1: объясняет что такое нейронная сеть на примере решения классической задачи по распознаванию рукописных цифр. Видео показывает что такое скрытые слои, веса и сдвиги.

Видео 2: показывает как обучаются сети. Понятная визуализация градиентного спуска, функции ошибки и того, что происходит с весами при активации нейрона.

Видео 3: как найти отрицательный градиент функции оценки с помощью метода обратного распространения, объяснение с иллюстрациями и без формул.

Видео 4: объяснение механики метода обратного распространения уже с формулами и с точки зрения математического анализа.

Start Career in DS

29 Oct, 15:58


🏆 Авито ML Cup

Ребята из Авито проводят турнир по машинному обучению с призовым фондом.

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

🔴 Старт соревнования: 5 ноября
🔴 Команды до 4 человек
🔴 Призовой фонд: 600 000 рублей!

Зарегистрироваться можно по ссылке

Start Career in DS

25 Oct, 15:47


🦜🔗LangСhain - библиотека, расширяющая возможности LLM

Недавно в нашем канале был опубликован пост Hugging Face Hub и библиотека transformers, а сегодня мы хотим расширить тему наиболее популярных инструментов при работе с LLM и расскажем про ключевые особенности библиотеки и всей экосистемы LangChain.

LangСhain - популярная библиотека, которая упрощает разработку LLM-Driven приложений, предоставляя все необходимые инструменты для создания агентских систем, цепочек вызовов и взаимодействия языковых моделей с внешними API.

Основные особенности LangChain:

1️⃣ RAG (Retrieval Augmented Generation)
В нашем предыдущем посте мы рассказывали про концепцию создания RAG-систем. LangChain оснащен всеми необходимыми инструментами для построения классического RAG.
Например, перед вами поставили задачу построить QnA чат-бота в онлайн-поддержке. С помощью LangChain вы сможете сформировать правильную базу знаний из источников, по которым должен отвечать бот, и на пользовательский запрос находить релевантные части потенциальных ответов для дальнейшей генерации конечного ответа LLM’кой.

2️⃣ Chains (цепочки)

LangСhain запросто позволяет создавать последовательности операций (цепочки) для задач обработки естественного языка, которые могут состоять из различных этапов обращений к LLM, использованию внешних API и составления промптов.
Такой подход может использоваться абсолютно в любой задаче, где процесс обработки пользовательского запроса моделью имеет цепочечный вид: запрос пользователя -> формирование промптов для модели -> получение ответа модели -> преобразование ответа и вывод.
Более детально про цепочки в LangChain читайте из официальной документации.

3️⃣ Агентские системы
Концепция Агентов сейчас набирает большую популярность в задачах, где LLM могут использоваться для решения более сложных задач, нежели просто генерация текста.
Например, дать возможность LLM вызывать API прогноза погоды для предоставления актуальной информации пользователю по данному вопросу. В роли API может выступать более продвинутые инструменты - базы данных, несколько API, пользовательские функции. LangChain расширяет возможности работы LLM в такой роли и упрощает разработку агентских-систем.

4️⃣ LangGraph
Это дополнительная библиотека в экосистеме LangChain, которая позволяет создавать рабочие процессы на основе графов. Сюда может входить, как создание рабочих цепочек, исполняющихся агентом, так и формирование графов знаний, который могут выступать заменой классическим базам знаний в RAG.
🔥Введение в LangGraph смотрите тут и тут

5️⃣ LangSmith
Среда для создания LLM-Driven приложений, которая объединяет все инструменты экосистемы LangChain, а также даёт возможность визуально отслеживать и улучшать разработку таких приложений.
Например, отображает RAG-пайплайн и выводит логи на каждом шаге.
🔥 Изучение LangSmith можете начать тут и тут

📌 Что ещё стоит изучить:
- Серия практикоориентированных постов на Хабре по созданию AI-агентов с помощью LangChain
- Официальный LangChain CookBook с огромным количеством реализаций различных задачек с LLM под капотом
- Как создана концепция экосистемы из официальной страницы
-
Дополнительно про агенты читайте здесь

В следующем посте хотим рассказать про особенности AI-Агентов на базе LLM!
Ставьте:
🔥 - если текущий пост был полезен!
❤️ - если ждете следующий!
До встречи👋🏻