Big Data Science [RU]
1.62K subscribers
80 photos
9 videos
545 links
Big Data Science [RU] — канал о жизни Data Science.
Для сотрудничества: a.chernobrovov@gmail.com
🌏 — https://t.me/bdscience — Big Data Science channel (english version)
💼 — https://t.me/bds_job — channel about Data Science jobs and career
Download Telegram
После переноса знаний из большой модели в более эффективную модель меньшего размера, чтобы преобразовать модель Pegasus в гибридную архитектуру кодировщика Transformer и декодера RNN, для повышения эффективности было уменьшено количество слоев декодера RNN. В полученной модели улучшены задержки и объем памяти, сохранив исходное качество.
https://ai.googleblog.com/2022/03/auto-generated-summaries-in-google-docs.html
👍3
📝Валидация датафреймов с Python-библиотекой Pandera
В крупных DS-проектах для валидации датасета и проверки качества данных можно использоваться фреймворк Great Expectations. Однако, для более мелких задач нужны более простые инструменты. Например, легковесная Python-библиотека Pandera, которая явно проверяет информацию в датафреймах во время выполнения. Pandera позволяет определить схему данных один раз с помощью API на основе классов с pydantic-синтаксисом и использовать ее для проверки различных типов датафреймов, включая pandas, dask, modin и pyspark.pandas. Можно проверять типы и свойства столбцов в pd.DataFrame или значения в pd.Series, выполняйте более сложную статистическую проверку, например проверку гипотез. Из объектов схемы можно синтезировать данные для тестирования на основе свойств с помощью структур данных pandas.
Декораторы функций позволяют интегрироваться с существующими конвейерами анализа/обработки данных с помощью декораторов функций. Благодаря отложенной проверке, можно валидировать датафреймы до возникновения ошибок. Наконец, совместимость с другими Python-инструментами, таких как pydantic, fastapi и mypy, делают Pandera полезным средством для ML-разработчика и аналитика данных.
Документация: https://pandera.readthedocs.io/en/stable/
Практический пример: https://towardsdatascience.com/validate-your-pandas-dataframe-with-pandera-2995910e564
👍4🔥1
💥Зачем вам Modin: альтернатива Pandas для быстрой обработки Big Data
Обработка больших датафреймов с помощью Pandas происходит медленно, поскольку эта Python-библиотека не поддерживает работу с данными, которые не помещаются в доступную память. В результате рабочие процессы Pandas, которые хорошо работают для прототипирования нескольких МБ данных, не масштабируются до десятков или сотен ГБ реального датасета. Поэтому из-за однопоточного выполнения операций в оперативной памяти Pandas не очень подходит для обработки действительно больших наборов данных. с большими наборами данных. Есть альтернатива – Python-библиотека Modin с Pandas-подобным API, которая масштабируется по всем ядрам процессора, используя Dask или Ray движок.
Modin поддерживает работу с данными, которые не помещаются в памяти, так что вы можете комфортно работать с сотнями ГБ, не беспокоясь о существенном замедлении или ошибках памяти. Благодаря поддержке кластера и вне ядра Modin представляет собой библиотеку DataFrame с отличной производительностью на одном узле и высокой масштабируемостью в кластере.
В локальном режиме (без кластера) Modin создаст и будет управлять локальным (Dask или Ray) кластером для выполнения. При этом не нужно указывать, как распределять данные, или даже знать, сколько ядер у системы. Фактически, можно продолжать использовать код с Pandas, просто изменив оператор импорта библиотек с pandas на modin.pandas и получая значительное ускорение даже на одной машине. Modin обеспечивает ускорение до 4 раз на ноутбуке с 4 физическими ядрами.
Документация: https://modin.readthedocs.io/en/latest/index.html
Github: https://github.com/modin-project/modin
🔥5👍1
Простое и быстрое обнаружение аномалий методом Z-скоринга
Обнаружение аномалий — довольно распространенная проблема, которая охватывает множество сценариев, от финансовых мошенничеств до сбоев в компьютерной сети. Некоторые проблемы требуют сложных моделей машинного обучения, но чаще всего достаточно каких-то более простых и дешевых методов. Например, есть данные о продажах за период времени, где нужно отметить дни с аномально высокими объемами или выделить клиентов с аномально большим количеством считываний кредитной карты для проверки рисков.
Для таких случаев подойдет простой статистический метод отметки выбросов, называемый Z-скоринг. Оценка равна разнице текущего и среднего значений, разделенной на стандартное отклонение. Z-скоринг предполагает классическое нормальное распределение случайных величин. Преобразование значений в номинальной шкале в логарифмическую шкалу улучшит способность большинства ML-моделей различать взаимосвязи и улучшит способность Z-показателей отмечать выбросы.
👍5
С практической точки зрения особенно важно, что реализация Z-скоринга очень проста: ее можно написать как небольшой программный скрипт или даже набор SQL-запросов, чтобы быстро получить легковесный MVP и оперативно проверить гипотезу.
https://towardsdatascience.com/anomaly-detection-in-sql-2bcd8648f7a8
🔥5👍1
🕸✍🏻3 Python- библиотеки для работы с URL
Задача обработки URL-адресов на практике встречается довольно часто. Например, составить список наиболее часто посещаемых сайтов или тех, визиты на которые разрешены в рабочее время с корпоративных компьютеров. Для автоматизации подобных кейсов пригодятся следующие Python- библиотеки:
• Yarl – позволяет извлекать фичи из URL-адреса, предоставляет удобный класс для анализа и изменения адреса веб-ресурса. Но работает только с Python 3 и не принимает логические значения в API – необходимо самостоятельно преобразовывать логические значения в строки, используя нужный протокол перевода. https://github.com/aio-libs/yarl
• Furl – упрощает разбор и манипулирование URL-адресами. Библиотека имеет широкий набор возможностей, но и ряд ограничений. В частности, объект furl может изменяться, поэтому могут случиться проблемы при передаче его во вне. https://github.com/gruns/furl
• URLObject – служебный класс для управления URL-адресами с помощью понятного API с фокусом на правильных именах методов, а не на переопределениях операторов. Сам объект здесь неизменяем, каждое изменение URL-адреса создает новый объект URL-адреса. Но библиотека не выполняет никаких преобразований декодирования/кодирования, с чем приходится пользователю разбираться самостоятельно. https://github.com/zacharyvoase/urlobject
👍2
Forwarded from Digital Dinner
Канадский художник Барри создал артбук из 1000 необычных изображений роботов.

Автор создал все изображения в этой книге, написав оригинальные подсказки для DALL·E 2, системы искусственного интеллекта OpenAI, которая может создавать реалистичные изображения и рисунки из описания на естественном языке. После создания изображений автор курировал и размещал изображения по своему вкусу.
https://archive.org/details/1111101000-robots/page/198/mode/2up
🔥2
👆🏻Тонкости дедубликации с DISTINCT
Исключить дубли из выборки можно просто добавив к SQL-запросу ключевое слово DISTINCT. Однако, это простое решение не всегда будет верным. Чтобы гарантировать отсутствие дубликатов в наборе данных, СУБД необходимо сравнить все строки друг с другом, отсеяв повторы. Это требует много ресурсов ЦП и памяти для хранения всех строк, т.к. их нужно сравнивать друг с другом в памяти, даже если на низком уровне идет работа с хэшем. Кроме того, DISTINCT уменьшает параллелизм вычислений, снижая скорость выполнения запроса.
DISTINCT удаляет дубликаты, но не разрешает неправильные соединения и фильтры, которые на практике чаще всего и приводят к повторам, например, из-за CROSS JOIN или использования RANK вместо ROW_NUMBER, что приводит к дублированию из-за плохо определенного окна раздела. Подробности с примерами кода смотрите здесь: https://jmarquesdatabeyond.medium.com/sql-like-a-pro-please-stop-using-distinct-31bdb6481256
🤯2👍1🔥1
💥DataSpell: профессиональная IDE для Data Science от JetBrains
Не хватает удобства полноценной среды разработки в легковесном Jupyter Notebook? Хотите писать Python-код в надежной IDE со всеми DS-библиотеками? Попробуйте DataSpell от JetBrains – профессиональная IDE наподобие PyCharm, которое содержит множество популярных библиотек для анализа данных и ML, сочетая их с мощью комплексного инструмента разработчика.
Выпущенный впервые в 2020 году, сегодня DataSpell пользуется спросом у ML-разработчиков и дата-аналитиков по всему миру.
https://www.jetbrains.com/ru-ru/dataspell/
🔥3🤔1
Forwarded from Digital Dinner
This media is not supported in your browser
VIEW IN TELEGRAM
Нейросеть, которая меняет время суток на фото

Исследователи из Apple, Adobe и Университетского коллежа Лондона совместными усилиями разработали нейросеть, которая может менять время дня на фотографиях.

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

Попробовать новую сеть в действии можно по ссылке https://www.dgriffiths.uk/outcast
👍2
🌸Май и труд еще никто не отменил! Выбирайте подходящее DS-событие, чтобы повысить свой профессиональный уровень:
• 13- 14 мая - HighLoad++ - крупнейшая профессиональная конференция для разработчиков высоконагруженных систем. Москва, Крокус-Экспо https://highload.ru/foundation/2022
• 18–19 мая - Positive Hack Days - выступления отечественных и зарубежных профессионалов в области информационной безопасности, закрытые и открытые круглые столы с участием лидеров мнений, мастер-классы и лабораторные практикумы известных экспертов. Центр международной торговли, Москва, Краснопресненская наб., 12, подъезд 4 https://www.phdays.com/ru/
• 18 - 19 мая - онлайн-конференция «DIGITAL MINING & METALLURGY» https://smartgopro.com/digitalminemet/
• 23-25 мая - Пространственные Данные – ежегодная международная научная конференция в Московском Государственном Университете Геодезии и Картографии https://scidata.ru/
• 25 – 27 мая - XXV Международная конференция по мягким вычислениям и измерениям (SCM'2022) в Санкт-Петербургском государственном электротехническом университете «ЛЭТИ» им. В.И. Ульянова (Ленина) https://scm.etu.ru/2022/ru/
• 28-29 мая – CodeFest 2022, Новосибирск, Экспоцентр, Станционная, 104 https://12.codefest.ru/
• 31 мая - 2 июня Tech Week 2022 - прикладная конференция и выставка об инновационных технологиях для решения задач бизнеса. Технопарк «Сколково» https://techweek.moscow/
🔥1
💫Непрерывное машинное обучение: CML для CI/CD
Нужно внедрить CI/CD в разработку ML-систем? Попробуйте CML - CLI-средство с открытым исходным кодом от Iterative.ai для реализации CI/CD в рамках MLOps. ОноCML подходит для автоматизации рабочих процессов разработки ML-моделей, включая их предоставление, обучение и оценку, сравнение экспериментов в истории проекта и мониторинг меняющихся наборов данных. CML основан на следующих принципах:
• GitLab или GitHub для управления экспериментами ML, мониторинга обучения моделей и изменения данных с помощью DVC;
• автоматические отчеты для экспериментов машинного обучения с метриками и графиками в каждом pull-запросе Git, чтобы принимать обоснованные решения на основе данных;
• отсутствие дополнительных сервисов – только GitLab, Bitbucket или GitHub, Docker и DVC. При желании можно добавить облачные хранилища, а также самостоятельные или облачные исполнители типа AWS EC2 или MS Azure.
CML внедряет в рабочий процесс автоматизацию в стиле CI/CD: большинство конфигураций определены в файле cml.yaml, хранящемся в репозитории. Этот файл указывает, какие действия должны быть выполнены, когда новая функциональная ветка готова к слиянию с основной. Когда создается pull-запрос, действия GitHub используют этот рабочий процесс и выполняют действия, указанные в файле конфигурации.
Исходный код: https://github.com/iterative/cml
Документация: https://cml.dev/doc
Практический пример: https://towardsdatascience.com/continuous-machine-learning-e1ffb847b8da
👍3
#тест
Какой метод Apache Spark работает с файловой системой, а НЕ с памятью?
Anonymous Quiz
20%
coelesce()
34%
repartition()
46%
partitionBy()
🔥3
💥YDB: масштабируемая отказоустойчивая NewSQL-СУБД от Яндекса. Теперь open-source
19 апреля 2022 года. Яндекс опубликовал исходный код распределённой NewSQL-СУБД YDB, которая позволяет создавать масштабируемые отказоустойчивые сервисы, способные выдерживать большую операционную нагрузку. Код доступен по лицензии Apache 2.0.
YDB сочетает в себе высокую доступность и масштабируемость со строгой согласованностью и транзакциями ACID. СУБД способна обрабатывать миллионы запросов в секунду и сохраняет работоспособность в случае выхода из строя сервера или даже целого датацентра. Надёжность YDB проверена на сервисах Яндекса (Алиса, Такси, Маркет, Метрика и еще почти 500 проектов). Развернуть YDB можно как на собственных, так и на сторонних серверах, включая Yandex Cloud или провайдеров.
https://ydb.tech/
https://github.com/ydb-platform/ydb
https://habr.com/ru/company/yandex/blog/660271/
https://yandex.ru/company/press_releases/2022/2022-04-19
🔥4👍1
🗒Loguru для логгирования Python-скриптов
Эта библиотека пригодится ML-специалистам и дата-инженерам, которые часто пишут на Python. Она автоматизирует логирование и упрощает процесс отладки. Кроме того, Loguru включает ряд полезных функций, которые устраняют предостережения стандартных средств ведения журнала.
Loguru работает по принципу plug-and-play и имеет такие функции, как свертывание журналов несколькими способами, автоматическое сжатие лог-файлов и регулярное их удаление. А также поддерживает многопоточную безопасность и подсветку логов. Эту open-source библиотеку можно использовать вместе со средствами уведомлений по электронной почте для получения электронных писем при сбое программ или для отправки других типов уведомлений.
Наконец, Loguru поддерживает совместимость с собственным модулем ведения журнала Python, позволяя передавать всю информацию, записанную исходным стандартным регистратором, в Loguru.
Исходный код: https://github.com/Delgan/loguru
Пример использования: https://medium.com/geekculture/python-loguru-a-powerful-logging-module-5f4208f4f78c
🔥3