Обновить
64.14

Data Engineering *

Обсуждаем вопросы сбора и подготовки данных

Сначала показывать
Порог рейтинга
Уровень сложности

Почему Python — не лучший язык для data science. Часть 1 — опыт разработчика и исследователя

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели15K

Команда Python for Devs подготовила перевод статьи Клауса Вилке о том, почему Python, несмотря на статус языка №1 в data science, вовсе не идеален для анализа данных. Автор показывает на реальных примерах из лабораторной практики, что многие операции в Python оказываются куда более громоздкими, чем в R, — и это не вина программистов, а архитектурные особенности инструментов.

Читать далее

Как автоматизировать загрузку данных в DWH и не сойти с ума

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели7.1K

Привет! Меня зовут Андрей, я Data Engineer в компании GRI. Мы занимаемся заказной разработкой, и один из наших ключевых клиентов — Sunlight. Я расскажу, как не тратить время на рутину в процессах и автоматизировать всё, что только можно. Это будет особенно актуально тем, кто в компании solo Data Engineer.
 

Читать далее

Переход на event-driven интеграции — создаем устойчивую архитектуру с гарантией доставки

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели5.4K

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

Привет, я Саид Джабаров, системный аналитик в Далее. Сегодня расскажу и покажу на артефактах, как построить event-driven систему с гарантией доставки и прозрачным мониторингом. Так, чтобы она действительно помогала бизнесу, а не усложняла его.

Читать далее

Понимание и практические эксперименты с Tablet в StarRocks

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели4.5K

внутренняя структура, репликации и балансировка, бакетизация и партиционирование, восстановление и MVCC, загрузка данных (Stream Load). Разбираем типичные сценарии и даём рекомендации для Data Engineers и DBAs.

Читать далее

Часть 2. Иван Оселедец с докладом «Успехи и проблемы больших языковых моделей»

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели4.8K

Первая часть - https://habr.com/ru/articles/970614/

Но это отдельная история. Когда ты пытаешься решить сложную задачу, ты придумываешь, как языковая модель становится из самой цели сделать модель побольше, становится инструментом для создания мультиагентной системы. И на самом деле тут много новых инструментов появляется, как раз связанных с тем, что необходимо действительно писать достаточно сложный код. И в мае этого года вышла статья Alpha Evolve от компании DeepMind, которая показала, что большая языковая модель может на самом деле сама писать код и решать задачи, если ты можешь проверить решение этой задачи.

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

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

Дальше применяешь достаточно хитрые подходы, связанные с эволюционными алгоритмами, где фактически в качестве оператора мутации выступает большая языковая модель. У нее есть опыт предыдущий, память. в виде программы результатов, есть некоторые инсайты, что она придумала, и ее задача состоит в том, чтобы эти инсайты, соответственно, объединять в новые программы. Собственно, первый автор статьи «Альфа Эволф» Саша Новиков – это мой аспирант, который уехал довольно давно, но тем не менее очень много не менее талантливых людей работают в институте.

Читать далее

Иван Оселедец с докладом «Успехи и проблемы больших языковых моделей»

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7K

Я распечатал доклад, стараясь не поломать авторскую речь и мысль. Но всё таки доклад не читался, а произносился по памяти и слайдам, поэтому несколько слов убрал или заменил. Доклад на полчаса, выложу в двух частях.

Представление - Доктор физико-математических наук, профессор РАН, генеральный директор института Айри, декан факультета искусственного интеллекта МГУ Иван Оселедец с докладом «Успехи и проблемы больших языковых моделей».

Дальше говорит Оселедец.

Да, всем доброе утро. На самом деле у меня будет такое, с одной стороны, рассказ действительно об успехах, некоторые анонсы нашего института, и в конце я немножко порассуждаю о проблемах, которых много, и над чем, собственно, мы думаем, над чем работаем, какие были получены в этом году результаты. В целом, на самом деле, институт и наши сотрудники неплохо поработали в этом году. У нас мы считали 93 статьи на конференции, то есть больше, чем все остальные центры которые этим занимаются что приятно, но конечно статьи не является самой целью, у нас довольно много практических историй.

Если переходить к докладу, то недавно вышло интервью Андрея Карпаты. Очень интересный, кто не видел, посмотрите. Полтора часа, и не суммаризация . Много интересных мыслей. Одна из мыслей, за которую я так зацепился, которая была не очень очевидна.

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

Читать далее

DAT: новый способ гибридного поиска в RAG с динамической настройкой альфа-параметра

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели8.6K

Привет, Хабр! Недавно у меня появилась задача - собрать RAG-систему для интернет-энциклопедии. В поисках решения я вышел на новый подход к гибридному RAG - “DAT: Dynamic Alpha Tuning for Hybrid Retrieval in Retrieval-Augmented Generation” (Динамическая настройка Альфа-параметра для гибридного поиска в RAG). 

Поиск по Хабру и Рунету показал, про подход DAT на русском языке еще не рассказывали, поэтому спешу поделиться находкой с вами и обсудить преимущества и недостатки этого метода. Эта статья - упрощённый пересказ научной работы. Материал будет интересен как продвинутым, так и начинающим разработчикам RAG-систем.

Читать далее

Если данные — продукт, то какова цена плохого UX? Предлагаю систему оценок

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели6.6K

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

А что на счет самих данных, если мы их рассматриваем как продукт? Как будем оценивать их ценность, как будем планировать их развитие?

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

К метрикам

От минут к секундам, от ClickHouse к StarRocks: путь к real‑time в Hello

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели6.4K

Кейс Hello: миграция 100+ млрд строк с ClickHouse на StarRocks. Как ускорить аналитику в 5 раз, снизить расходы на инфраструктуру на 80% и построить real-time DWH. Разбор архитектуры, самописных инструментов валидации и подводных камней перехода.

Читать далее

Сравниваю Jupyter Notebook, Google Colab, Kaggle и Marimo глазами исследователя и начинающего Data Scientist

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели7.3K

Я пришел в Data Science не сразу. Учился в магистратуре по вечерам, работая в совершенно другой сфере (строительство). Осваивать машинное обучение и анализ данных было интересно, но один из самых неожиданных вопросов, который возник буквально сразу - в какой среде писать код?

На первый взгляд кажется, что Jupyter Notebook, Google Colab, Kaggle и сравнительно новая Marimo - это одно и то же, ноутбук с ячейками и Python (так же поддерживаются другие языки программирования). Но на практике каждая из этих сред подходит для разных задач, где-то удобнее учиться, а где-то работать командой.

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

Статья будет полезна:

Читать далее

Почему LLM не становятся субъектами

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели4.1K

Все вокруг спорят, станет ли крупная языковая модель субъектом.

Показывают скрины ответов, где модель рассуждает про себя, говорит что ей страшно или радостно, и делают выводы про зарождающееся сознание.Проблема в том, что на уровне инженерии там нет ни субъекта, ни траектории, ни устойчивого Я. Есть мощный условный распределитель по токенам. Все. В этой статье я разберу, почему так, что для субъектности не хватает и как это закрывает архитектура ENA как отдельный слой поверх LLM.

Прочитать статью

Пишем свой классификатор AI-generated статей для Хабра за ночь

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели8.1K

Изобретаем собственный велосипед для детекции AI-generated текстов на Хабре, используя SBERT классификатор. Нет, это не сложно :-)

Читать далее

СПРУТ 1 = TAP + DD

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели7.4K

Такая вот незатейливая формула. Спрут 1 – это Test Access Point и Data Diode в одном флаконе. КДПВ перед Вами.

Читать далее

Ближайшие события

Сравнение инструментов разметки данных для CV: Label Studio & CVAT & Roboflow — опыт разметки 6000+ изображений

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели9.4K

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

Читать далее

Расширяем функционал Apache NiFi 2.0: руководство к написанию своего процессора

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели6.2K

Привет, Хабр!

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

Apache NiFi — программный продукт с открытым исходным кодом, написанный на языке Java, предназначенный для автоматизации потоков данных между системами. Главная его задача: организовывать ETL-процессы. На GitHub у Apache NiFi имеется 5.9 тысяч звезд.

Эта статья посвящена написанию процессора для Apache NiFi на Java и требует базовых знаний в области Apache NiFi, опыт программирования на Java и IDE на борту компьютера.

Читать далее

Atomic insert in Clickhouse

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели6.1K

В этой статье мы поговорим о том, как реализовать поведение атомарной вставки в ClickHouse. Рассмотрим несколько вариантов, подсветим их сильные и слабые стороны, а также, когда каждый из них применять.

Читать далее

Как я собрал и подготовил датасет дефектов печатных плат для обучения моделей YOLO

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели9.7K

Когда пришло время выбирать тему диплома, я, как и многие студенты, понятия не имел, о чём писать. После мозгового штурма с одногруппниками родилась идея, которая из простого «варианта для защиты» превратилась в полноценный инженерный проект: «исследование и разработка системы автоматического распознавания дефектов печатных плат».

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

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

Статья будет полезна:

Читать далее

Adaptive Query Execution в Spark 3: как умная оптимизация покончила с ручными танцами с бубном

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели6.1K

Представим ситуацию: мы спланировали маршрут до точки назначения, предположили, по какой дороге будет быстрее добраться, даже вспомнили, где обычно бывают пробки, чтобы их объехать. Но, неожиданно, на самом свободном участке образовался затор из‑за аварии в правом ряду. В этот момент понимаем, что лучше бы мы ехали по навигатору, и какая‑нибудь «Анфиса» предупреждала о дорожной ситуации, чтобы в определенный момент можно было изменить траекторию движения. Именно так годами чувствовали себя пользователи Spark, когда их красиво оптимизированные запросы наталкивались на суровую реальность распределенных данных.

Читать далее

Подход к построению DWH, основанный на единой инфраструктуре данных Unified Data Infrastructure или модели a16z

Время на прочтение5 мин
Охват и читатели9.2K

В статье рассказываем о подходе к построению DWH на базе единой инфраструктуры данных (Unified Data Infrastructure), разработанной Andreessen Horowitz. 

Разбираемся, почему модель a16z полезна в быстрорастущих компаниях или тех, кто переходит к data-driven управлению.

Читать далее

Полное руководство по управлению привилегиями в StarRocks

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели5.4K

Статья — практическое руководство по управлению привилегиями в StarRocks: объектная модель (SYSTEM, CATALOG, DATABASE, TABLE, VIEW, MATERIALIZED VIEW, FUNCTION и др.), перечень привилегий для каждого типа сущности и соответствующие операции. Разбираем роль‑based доступ (RBAC): встроенные роли (root, cluster_admin, db_admin, user_admin, public), создание собственных ролей и выдачу прав через GRANT/REVOKE с наглядными SQL‑примерами. Отдельный блок — особенности StarRocks: ограничение ресурсов на пользователя (max_user_connections), роли по умолчанию и их активация при входе, массовая выдача прав через public, выполнение от имени другого пользователя (IMPERSONATE/EXECUTE AS). Материал полезен инженерам данных, DBA и разработчикам, работающим с OLAP/MPP‑СУБД и хранилищами данных, а также тем, кто внедряет контроль доступа в аналитических кластерах. Дополнительно освещены создание пользователей с разными методами аутентификации (включая LDAP), управление RESOURCE/RESOURCE GROUP, GLOBAL FUNCTION и STORAGE VOLUME, а также практики безопасной раздачи прав по ролям.

Читать далее