Вадим | Оффер & Удалёнка
Тут мой старый знакомый, Александр Червов, автор sberloga, делает какой-то большой научный проект по нейронкам, которые собирают кубик рубика 👨🔬 Проект В общем, ему нужны волонтёры для написания моделей и проведения экспериментов. Взамен вы получите опыт…
История с продвижением математики вперед с помощью ML пока не закончилась
Скоро будет онлайн-доклад от известного математического физика Сергея Гукова , где они решили один из вопросов в теории групп , который стоял 39 лет с помощью МЛ
https://news.1rj.ru/str/sberlogabig/514
Скоро будет онлайн-доклад от известного математического физика Сергея Гукова , где они решили один из вопросов в теории групп , который стоял 39 лет с помощью МЛ
https://news.1rj.ru/str/sberlogabig/514
🔥14❤3🤔3
Apache Parquet: как Twitter и Cloudera развивали дата инжиниринг
Apache Parquet начинался как совместный проект Twitter (ныне X) и Cloudera — компании, известной своими дистрибутивами Hadoop и инструментами для работы с ним. Многие, кто работал с Hadoop, вероятно, сталкивались с Cloudera и пользовались их решениями. Например, в Сбербанке используют их софт для обработки больших данных (Сбер за рекламу не платил, а мог бы).
Теперь давайте наглядно сравним Parquet с традиционным CSV-файлом, чтобы понять его преимущества. Возьмем простой пример CSV:
1. Колоночный формат
Первая ключевая особенность Parquet — это колоночное хранение данных. В CSV данные хранятся построчно, и для вычисления среднего значения, скажем, веса, вам нужно пройти по каждой строке, извлекая из нее данные. Это требует времени, особенно для больших наборов данных.
Parquet же хранит данные по колонкам. Сначала записываются все значения первой колонки, затем второй, и так далее. Например, для расчета среднего роста нужно считать только колонку с ростом, не затрагивая остальные данные. Это заметно ускоряет обработку.
Более того, в Parquet применяется метод сжатия RLE (Run Length Encoding), что эффективно для хранения повторяющихся значений и пропусков. Например:
Таким образом, можно обрабатывать большие объемы данных быстрее и с меньшими затратами памяти. Библиотеки вроде Polars, благодаря колоночному формату, не будут загружать лишние данные при ленивых вычислениях, что делает их работу еще эффективнее.
Типизация данных, схемы и партиционирование
Каждый Parquet-файл сопровождается схемой, которая описывает структуру данных: какие есть поля, их типы, и где начинается блок с данными. Так как данные типизированы, можно сэкономить место. Например, колонку "Пол" можно хранить в виде числовых значений, а в схеме — просто словарь, который сопоставляет числа с реальными значениями ("М" и "Ж"). Помните, в CSV каждый символ весит минимум байт!
Теперь представим, что наш CSV-файл содержит миллиард строк. Это около 100 ГБ данных, что вполне помещается на обычный компьютер, но работать с таким файлом будет неудобно. Чтобы оптимизировать работу с большими данными, применяют партиционирование. Это разделение файла на несколько частей по какому-то признаку — например, по дате записи.
Разделив данные по дням, вы сможете, например, быстро посчитать средний рост людей только за вчерашний день, не обрабатывая весь миллиард строк. Более того, партиции можно читать параллельно в разных потоках, что еще больше ускоряет вычисления на современных многопроцессорных архитектурах. Библиотеки Pandas, Polars и Spark поддерживают такое параллельное чтение с помощью Apache Arrow.
Parquet — это мощный инструмент для работы с большими объемами данных благодаря колоночному хранению, эффективным алгоритмам сжатия и возможностям партиционирования. Для задач, связанных с большими данными, Parquet сильно удобнее и быстрее, чем традиционный CSV. Используя такие библиотеки как Polars и Spark, можно значительно ускорить обработку данных и снизить затраты на вычисления. А еще можно каждый день дописывать новую партицию за день и не менять структуру файлов и избежать дублирования
Apache Parquet начинался как совместный проект Twitter (ныне X) и Cloudera — компании, известной своими дистрибутивами Hadoop и инструментами для работы с ним. Многие, кто работал с Hadoop, вероятно, сталкивались с Cloudera и пользовались их решениями. Например, в Сбербанке используют их софт для обработки больших данных (Сбер за рекламу не платил, а мог бы).
Теперь давайте наглядно сравним Parquet с традиционным CSV-файлом, чтобы понять его преимущества. Возьмем простой пример CSV:
Имя, Пол, Год рождения, Вес, Рост, Дата записи
Владимир, М, 1954, 74, 179, 01/01/2024
Борис, М, 1931, 88, 187, 01/01/2024
None, М, None, 77, 178, 02/01/2024
Валерия, Ж, 1950, 150, 168, 02/01/2024
1. Колоночный формат
Первая ключевая особенность Parquet — это колоночное хранение данных. В CSV данные хранятся построчно, и для вычисления среднего значения, скажем, веса, вам нужно пройти по каждой строке, извлекая из нее данные. Это требует времени, особенно для больших наборов данных.
Parquet же хранит данные по колонкам. Сначала записываются все значения первой колонки, затем второй, и так далее. Например, для расчета среднего роста нужно считать только колонку с ростом, не затрагивая остальные данные. Это заметно ускоряет обработку.
Более того, в Parquet применяется метод сжатия RLE (Run Length Encoding), что эффективно для хранения повторяющихся значений и пропусков. Например:
Имя: (Владимир, [0]), (Борис, [1]), (Валерия, [3])
Пол: (М, [0, 1, 2]), (Ж,[3])
Таким образом, можно обрабатывать большие объемы данных быстрее и с меньшими затратами памяти. Библиотеки вроде Polars, благодаря колоночному формату, не будут загружать лишние данные при ленивых вычислениях, что делает их работу еще эффективнее.
Типизация данных, схемы и партиционирование
Каждый Parquet-файл сопровождается схемой, которая описывает структуру данных: какие есть поля, их типы, и где начинается блок с данными. Так как данные типизированы, можно сэкономить место. Например, колонку "Пол" можно хранить в виде числовых значений, а в схеме — просто словарь, который сопоставляет числа с реальными значениями ("М" и "Ж"). Помните, в CSV каждый символ весит минимум байт!
Теперь представим, что наш CSV-файл содержит миллиард строк. Это около 100 ГБ данных, что вполне помещается на обычный компьютер, но работать с таким файлом будет неудобно. Чтобы оптимизировать работу с большими данными, применяют партиционирование. Это разделение файла на несколько частей по какому-то признаку — например, по дате записи.
Разделив данные по дням, вы сможете, например, быстро посчитать средний рост людей только за вчерашний день, не обрабатывая весь миллиард строк. Более того, партиции можно читать параллельно в разных потоках, что еще больше ускоряет вычисления на современных многопроцессорных архитектурах. Библиотеки Pandas, Polars и Spark поддерживают такое параллельное чтение с помощью Apache Arrow.
Parquet — это мощный инструмент для работы с большими объемами данных благодаря колоночному хранению, эффективным алгоритмам сжатия и возможностям партиционирования. Для задач, связанных с большими данными, Parquet сильно удобнее и быстрее, чем традиционный CSV. Используя такие библиотеки как Polars и Spark, можно значительно ускорить обработку данных и снизить затраты на вычисления. А еще можно каждый день дописывать новую партицию за день и не менять структуру файлов и избежать дублирования
1👍31❤4🔥3
Forwarded from adapt compete evolve or die
оверфит начинается с головы, а ощущается гораздо ниже
🤣14💯8
Обожаю датавиз, особенно функциональный. У кого-нибудь есть пины на пинтересте с красивыми дашбордами?
Одно из самых крутых, что я видел- это вот это резюме:
Одно из самых крутых, что я видел- это вот это резюме:
🤣11
Глупый телеграм пережимает, вот вам оригинал:
https://www.linkedin.com/posts/astratoanalytics_datadna-dataviz-datadna-activity-7003783958660292608-da5X?utm_source=share&utm_medium=member_desktop
Безумно красивая визаулизация опыта и плотность инофрмации на пиксель. А еще визуальная метафора роста крутая, хотя там не только рост на самом деле
Единственная проблема, что в резюме вложено непропорционально больше времени, чем потратит на него хоть какой-то рекрутер
https://www.linkedin.com/posts/astratoanalytics_datadna-dataviz-datadna-activity-7003783958660292608-da5X?utm_source=share&utm_medium=member_desktop
Безумно красивая визаулизация опыта и плотность инофрмации на пиксель. А еще визуальная метафора роста крутая, хотя там не только рост на самом деле
Единственная проблема, что в резюме вложено непропорционально больше времени, чем потратит на него хоть какой-то рекрутер
Linkedin
#datadna #dataviz #datadna #datachallenge #astrato | Astrato Analytics
Check out this awesome entry to this month's #datadna challenge from Emily Cline! 🤩
Emily said: "I designed this interactive resume using Astrato Analytics. I was able to add in a few actions to maximize space & information."
Amazing work, Emily! 🚀
#DataViz…
Emily said: "I designed this interactive resume using Astrato Analytics. I was able to add in a few actions to maximize space & information."
Amazing work, Emily! 🚀
#DataViz…
👎18❤9🫡4🆒2
На Kaggle случилось два апдейта.
Во первых, следуя за гитом и прочими платформами выкатили награды и бейджи:
Награды это какие-то ДОСТИЖЕНИЯ.
Например за то, что я был хостом соревнования Инстамарта (Сбермаркета (Купера)) на стажировку, я получил от Kaggle награду. Еще вот Сергею Фиронову дали ачивку за топ 100.
Бейджи дают за более доступные штуки:
Возраст акаунта
Стрики логинов
Форк ноутбуков
etc
Жду сториз и удаление стены!
Полный список бейджей
Во первых, следуя за гитом и прочими платформами выкатили награды и бейджи:
Награды это какие-то ДОСТИЖЕНИЯ.
Например за то, что я был хостом соревнования Инстамарта (Сбермаркета (Купера)) на стажировку, я получил от Kaggle награду. Еще вот Сергею Фиронову дали ачивку за топ 100.
Бейджи дают за более доступные штуки:
Возраст акаунта
Стрики логинов
Форк ноутбуков
etc
Жду сториз и удаление стены!
Полный список бейджей
👍8😁6
Во-вторых, теперь можно наконец-то нормально устанавливать пакеты через специальный интерфейс Package manager.
Представьте, теперь не надо создавать датасеты с source кодом и устанавливать все в ноутбук через магические команды jupyter. Самое полезное- это то, что теперь можно устанавливать пакеты в Code Competitions, когда код должен быть отправлен в ноутбуке, у которого нет доступа к интернету. Теперь код из Package Manager выполнится и установит нужные пакеты заранее и с интернетом. Кстати поддерживается только pip, никакого вам poetry и uv
Я очень давно ждал эту штуку, и теперь буду со всей силы ждать возможность качать данные не из tar.gz архива, а через что-нибудь с поддержкой разбивки частей архива и rsync или даже может быть с торрентов, потому что качать террабайт данных со скорость 5мб/сек одним большим куском- очень больно и слишком 2011. Тем более с текущей надежностью серверов с данными на каггле.
https://www.kaggle.com/discussions/product-feedback/532336tart
Представьте, теперь не надо создавать датасеты с source кодом и устанавливать все в ноутбук через магические команды jupyter. Самое полезное- это то, что теперь можно устанавливать пакеты в Code Competitions, когда код должен быть отправлен в ноутбуке, у которого нет доступа к интернету. Теперь код из Package Manager выполнится и установит нужные пакеты заранее и с интернетом. Кстати поддерживается только pip, никакого вам poetry и uv
Я очень давно ждал эту штуку, и теперь буду со всей силы ждать возможность качать данные не из tar.gz архива, а через что-нибудь с поддержкой разбивки частей архива и rsync или даже может быть с торрентов, потому что качать террабайт данных со скорость 5мб/сек одним большим куском- очень больно и слишком 2011. Тем более с текущей надежностью серверов с данными на каггле.
https://www.kaggle.com/discussions/product-feedback/532336tart
👍14🔥8
Сутра:
1. Kaggle решат
2. Соревы обозреват
3. Gold фармить
4. Социальност
Канал о пути к Kaggle competitionsMaster Grandmaster, баварских сосисках и пиве, которым обливаешься в процессе
https://www.kaggle.com/asimandia
Для вопросов: @dimitriy_rudenko
1. Kaggle решат
2. Соревы обозреват
3. Gold фармить
4. Социальност
Канал о пути к Kaggle competitions
https://www.kaggle.com/asimandia
Для вопросов: @dimitriy_rudenko
Kaggle
Pizzaboi
LMU Munich student
Author: https://news.1rj.ru/str/pseudolabeling
Author: https://news.1rj.ru/str/pseudolabeling
❤13👍2😁2
Запрети мне псевдолейблить
Сутра: 1. Kaggle решат 2. Соревы обозреват 3. Gold фармить 4. Социальност Канал о пути к Kaggle competitions Master Grandmaster, баварских сосисках и пиве, которым обливаешься в процессе https://www.kaggle.com/asimandia Для вопросов: @dimitriy_rudenko
Обновил превьюшку в тг. Вы вот знали, что тг один раз генерит превью для ссылки и потом не обновляет, пока не попросишь специального бота это сделать? В смысле старое превью моей ссылки на кэггл не обновлялось больше года :0
@WebpageBot
@WebpageBot
👍4🤯3❤2