EasyData
950 subscribers
152 photos
10 videos
22 files
80 links
Добро пожаловать!
Меня зовут Мария Жарова, и это мой блог про науку о данных

Лайфхаки из будней MLщика, полезности по Data Science и ответы на вопросы, которые волнуют новичков и не только🌝

Автор @NaNCat
加入频道
Привет, друзья!👋
Пора менять закреп — недавно я начала новый этап в своей карьере, теперь работаю Data Scientist'ом в WildBerries🛍 Занимаюсь разработкой рекомендательных систем, поэтому приходите с любой обратной связью и пожеланиями к сервису😁
Рекомендательные алгоритмы играют важную роль в работе маркетплейса. Система довольно сложная и комплексная, даже определить точное количество моделей — задача не из простых🙈
С приходом в компанию первое, что я для себя открыла — несколько полезных лайфхаков для поиска нужных товаров, не могу не поделиться ими с вами!

🍒Похожие товары🍒
Часто случается, что вы ищете какой-то товар, но никак не получается найти тот самый, нужного размера, цвета и формы...
В этом случае переходим на карточку примерно подходящего товара и в правом нижнем углу фото нажимаем на "похожие". Нас тут же перекидывает на страничку рекомендаций, среди которых может оказаться что-то подходящее.

🫐Сопутствующие товары🫐
Для тех, кто любит интересные идеи, но не смотрит группы "находки с WB". Вдохновиться можно, перейдя на страничку корзины, в самом низу будет лента "с этим покупают..." Это рекомендации, составленные напрямую к товарам, лежащим в вашей корзине, но сами они из других категорий. Например, если хочется что-то для дома, можно собрать корзину из нескольких товаров похожей тематики и полистать рекомендации
(эту функцию лучше тестировать с веб-версии на сайте).

🍓Похожие по фотографии🍓
Это новая классная фишка, о которой пока не все знают, позволяет по фотографии предмета найти такой же или максимально похожий среди всего ассортимента маркетплейса. Достаточно нажать на значок фотоаппарата в строке поиска и загрузить в сервис изображение.


Не прощаюсь с любимой темой данных, а впереди нас ждёт ещё больше полезных постов 🐈
Спасибо, что остаётесь со мной!❤️
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
17👍6🤩5👏3
Привет, друзья! 👋
Важные новости из мира искусственного интеллекта — OpenAI представила свою новую модель Chat GPT o1, которая специализируется на логических рассуждениях и сложных задачах. Относительно уже неплохого GPT-4 она сделала ещё более серьёзный шаг в сторону имитации человеческого мышления.

🤖Что особенного в “o1”?
В отличие от предыдущих версий, “o1” не сразу начинает печатать результат, а некоторое время “думает” над ответом. Под капотом модель декомпозирует задачу на несколько шагов, анализирует различные подходы и исправляет собственные ошибки в процессе. Это похоже на то, как мы сами решаем сложные проблемы — разбиваем их на части и пытаемся найти оптимальные решения. Новая версия уже продемонстрировала высокие результаты на тестах: например, в задачах по программированию на Codeforces “o1” превзошла 89% человек и набрала 83% на Международной математической олимпиаде 🔥

🤔Как это работает?
Ключ к успеху “o1” — алгоритм обучения через "цепочку мыслей". В обучающие данные были добавлены примеры ошибочных рассуждений с выходом из них. Благодаря этому модель умеет ставить под сомнение сгенерированное (да-да, в этой версии уже не будет уверенного доказательства “2+2=5”). В алгоритме применяются методы Reinforcement learning — обучения с подкреплением. Логично, но любопытно, что качество ответа повышается с ростом времени, затраченного моделью на рассуждения, это отличает её от других LLM. Но и вычислительных ресурсов нужно существенно больше по сравнению с тем же GPT4-o.

🧑‍💻Где протестировать?
По платной подписке на официальном ресурсе или обходными путями:) Мне удалось запустить через телеграм-бота Syntx AI: после запуска в меню нужно выбрать GPTs/Claude/Gemini, затем нажать на “Управление” и во всплывающем окне включить новую модель. Судя по тому, как “o1” из бота справилась со сложной задачкой на код по сравнению с GPT-4o, есть основания полагать, что она там настоящая😁

📎 Ссылка на официальный релиз.

Продолжаем следить за нейросетями, пока всё под контролем 🧑‍💻

#nlp@data_easy
#полезный_ии@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍3😍3
Всем доброго вечера!👋
На вопрос: "Какая самая популярная библиотека для анализа данных?" - большинство ответит: "Pandas". Однако, когда дело доходит до больших объёмов информации (порядка млн строк) или важна скорость работы - Pandas может оказаться не лучшим выбором

Ранее мы разбирали, как распараллелить операции на Pandas, но есть кое-что получше - библиотека Polars В WB часто ей пользуются, т.к. она действительно намного превосходит Pandas по скорости и эффективности. По синтаксису она где-то на ~70% похожа Pandas и ~30% на Pyspark, сравнение десяти самых важных операций ловите в карточках ❤️

Главные преимущества Polars:

Написана на языке Rust, а он поддерживает многопоточность + использует память более эффективно.

Polars поддерживает ленивые операции (Lazy Execution, эта же фича есть в pyspark), что позволяет "откладывать" их выполнение до тех пор, пока не будет вызвана команда .collect(). Благодаря этому можно оптимизировать выполнение сразу нескольких шагов, минимизируя нагрузку на память и процессор.

Основной недостаток Pandas - то что он обрабатывает данные последовательно. Polars же без дополнительных "танцев с бубнами" может использовать несколько ядер процессора параллельно.

Ещё одно следствие из первого пункта: Polars гораздо меньше расходует память. За счёт этого он может работать с большими данными на уровне, который просто недостижим для Pandas.

🐈 Ссылка на официальную документацию
🐈 Репозиторий на GitHub

#аналитика@data_easy
#classic_ml@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥73👍21
В последнее время к каналу присоединилось довольно много новых подписчиков😊
Чтобы нам всем было проще общаться в одном месте, а не только в комментариях к постам - приглашаю присоединиться к чату канала https://yangx.top/+v1fdmoHV3JwyYTJi

Может, найдёте товарищей для хакатонов / друзей / будущих коллег😉
Please open Telegram to view this post
VIEW IN TELEGRAM
12🔥3
EasyData pinned «В последнее время к каналу присоединилось довольно много новых подписчиков😊 Чтобы нам всем было проще общаться в одном месте, а не только в комментариях к постам - приглашаю присоединиться к чату канала https://yangx.top/+v1fdmoHV3JwyYTJi Может, найдёте товарищей…»
Всем доброго дня!
По вашим просьбам собрала небольшой чек-лист самых популярных методов регуляризации😎
Главное, запомнить, что понятие регуляризации включает в себя не только L1 и L2, а целый класс методов для борьбы с переобучением😁

#classic_ml@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍53😍1🤝1
И для тех, кого нет в чатике - держите ссылку на хакатон ЕВРАЗа 3.0, который организуют мои знакомые🧑‍💻

🦾 Задача хакатона — создать ИИ-чатбота, который будет помощником для нас, разработчиков:) Кстати, можно участвовать не только дата-саентистам — решать задачу можно на Python, TypeScript или C#.

📆 Даты: 29 ноября – 1 декабря 2024.

🕺 Формат: гибридный (онлайн и офлайн).

💷 Призовой фонд: 500.000 рублей.

Если нет команды — организаторы помогут ее собрать!

🔸 Регистрация уже открыта! Подавайте заявку до 25 ноября 23:59 МСК по ссылке.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍643🆒1
Всем привет, друзья!
Как вы обычно ускоряете вычисления, если Python показывает ожидаемое время работы кода несколько часов или дней?😄
Есть простой способ сократить время и заставить процессор работать на полную мощность при помощи библиотеки joblib😎
Она умеет не только (де-)сериализовать объекты, но ещё и упрощает использование нескольких процессов или потоков на Python без необходимости углубляться в тонкости теории.

Ключевой инструмент для параллельного выполнения задач — Parallel. Попробуйте сравнить два варианта кода:


import time
from tqdm import tqdm

def slow_function(x):
time.sleep(1)
return x**2
results = [slow_function(x) for x in tqdm(range(100))]

и

from joblib import Parallel, delayed

# Обертка для распараллеливания
results = Parallel(n_jobs=4)(delayed(slow_function)(x) for x in tqdm(range(100)))


Как это работает:

🌟 Parallel(n_jobs) указывает, сколько процессов или потоков использовать. Например, при n_jobs=4 будут использоваться 4 ядра процессора, а при n_jobs=-1 — все доступные. Так что, если точно не знаете, какое число указать, попробуйте -1, т.к. если переборщить, код может не сработать🙈
🌟 delayed превращает функцию в "ленивую", откладывая её выполнение до тех пор, пока Parallel не передаст её в пул процессов.

Полезные ссылки:
🔗 Документация joblib
🔗 Репозиторий GitHub

Хорошей недели!❄️

#python@data_easy
🔥11👍97
Всем привет, друзья!
Пару дней назад выпустили новую статью на Habr про BERT и его товарищей ❤️
Материал в первую очередь рассчитан для новичков, так что если давно хотели узнать…
🐈 как устроен механизм внимания без математики, а на примерах;
🐈 в чём особенности BERT, чем он так хорош и для каких задач подходит;
🐈 какие у него разновидности;
- время настало😊

И держите практический шаблон в colab с использованием предобученного DistilBert для решения задачи классификации двумя способами😎

С первым днём зимы!☃️

#nlp@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1210🐳2🤔1
Чек-лист_собеседование_DS.pdf
72.2 KB
Привет, дорогие подписчики!
Поздравляю с Новым годом! 🎉 Пусть он принесет вдохновение, множество новых возможностей и ярких свершений Пусть каждый день будет наполнен теплом, радостью, а маленькие шаги ведут к большим победам!😊

Чтобы этот пост был не только праздничным, но и полезным, держите небольшой подарок: чек-лист вопросов с собеседований по Data Science 📋

Подобное может встречаться как на первичном звонке с HR, так и на полноценном техническом собеседовании, где могут попросить развернутые объяснения ключевых тем🤪


Всем успехов в карьере и уверенности в своих силах в 2025 году! 🎉

#карьера@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
🎄18🔥149🎉5