Простое и быстрое обнаружение аномалий методом Z-скоринга
Обнаружение аномалий — довольно распространенная проблема, которая охватывает множество сценариев, от финансовых мошенничеств до сбоев в компьютерной сети. Некоторые проблемы требуют сложных моделей машинного обучения, но чаще всего достаточно каких-то более простых и дешевых методов. Например, есть данные о продажах за период времени, где нужно отметить дни с аномально высокими объемами или выделить клиентов с аномально большим количеством считываний кредитной карты для проверки рисков.
Для таких случаев подойдет простой статистический метод отметки выбросов, называемый Z-скоринг. Оценка равна разнице текущего и среднего значений, разделенной на стандартное отклонение. Z-скоринг предполагает классическое нормальное распределение случайных величин. Преобразование значений в номинальной шкале в логарифмическую шкалу улучшит способность большинства ML-моделей различать взаимосвязи и улучшит способность Z-показателей отмечать выбросы.
Обнаружение аномалий — довольно распространенная проблема, которая охватывает множество сценариев, от финансовых мошенничеств до сбоев в компьютерной сети. Некоторые проблемы требуют сложных моделей машинного обучения, но чаще всего достаточно каких-то более простых и дешевых методов. Например, есть данные о продажах за период времени, где нужно отметить дни с аномально высокими объемами или выделить клиентов с аномально большим количеством считываний кредитной карты для проверки рисков.
Для таких случаев подойдет простой статистический метод отметки выбросов, называемый Z-скоринг. Оценка равна разнице текущего и среднего значений, разделенной на стандартное отклонение. Z-скоринг предполагает классическое нормальное распределение случайных величин. Преобразование значений в номинальной шкале в логарифмическую шкалу улучшит способность большинства ML-моделей различать взаимосвязи и улучшит способность Z-показателей отмечать выбросы.
👍5
С практической точки зрения особенно важно, что реализация Z-скоринга очень проста: ее можно написать как небольшой программный скрипт или даже набор SQL-запросов, чтобы быстро получить легковесный MVP и оперативно проверить гипотезу.
https://towardsdatascience.com/anomaly-detection-in-sql-2bcd8648f7a8
https://towardsdatascience.com/anomaly-detection-in-sql-2bcd8648f7a8
Medium
Anomaly Detection in SQL
How to implement fast, powerful, anomaly detection models directly in the data warehouse
🔥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
Задача обработки 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
GitHub
GitHub - aio-libs/yarl: Yet another URL library
Yet another URL library. Contribute to aio-libs/yarl development by creating an account on GitHub.
👍2
Forwarded from Digital Dinner
Канадский художник Барри создал артбук из 1000 необычных изображений роботов.
Автор создал все изображения в этой книге, написав оригинальные подсказки для DALL·E 2, системы искусственного интеллекта OpenAI, которая может создавать реалистичные изображения и рисунки из описания на естественном языке. После создания изображений автор курировал и размещал изображения по своему вкусу.
https://archive.org/details/1111101000-robots/page/198/mode/2up
Автор создал все изображения в этой книге, написав оригинальные подсказки для DALL·E 2, системы искусственного интеллекта OpenAI, которая может создавать реалистичные изображения и рисунки из описания на естественном языке. После создания изображений автор курировал и размещал изображения по своему вкусу.
https://archive.org/details/1111101000-robots/page/198/mode/2up
🔥2
#тест
Чем плоха мультиколлинеарность признаков в обучающем датасете для ML?
Чем плоха мультиколлинеарность признаков в обучающем датасете для ML?
Anonymous Quiz
25%
зависимые признаки не влияют на результат моделирования, засоряя пространство признаков
2%
их сложно определить и исключить из обучающего датасета
67%
зависимые признаки дублируют друг друга, увеличивая объем вычислений и снижая точность результатов
7%
повышается сложность вычислений в алгоритмах обучении ML-модели
🔥4
👆🏻Тонкости дедубликации с DISTINCT
Исключить дубли из выборки можно просто добавив к SQL-запросу ключевое слово DISTINCT. Однако, это простое решение не всегда будет верным. Чтобы гарантировать отсутствие дубликатов в наборе данных, СУБД необходимо сравнить все строки друг с другом, отсеяв повторы. Это требует много ресурсов ЦП и памяти для хранения всех строк, т.к. их нужно сравнивать друг с другом в памяти, даже если на низком уровне идет работа с хэшем. Кроме того, DISTINCT уменьшает параллелизм вычислений, снижая скорость выполнения запроса.
DISTINCT удаляет дубликаты, но не разрешает неправильные соединения и фильтры, которые на практике чаще всего и приводят к повторам, например, из-за CROSS JOIN или использования RANK вместо ROW_NUMBER, что приводит к дублированию из-за плохо определенного окна раздела. Подробности с примерами кода смотрите здесь: https://jmarquesdatabeyond.medium.com/sql-like-a-pro-please-stop-using-distinct-31bdb6481256
Исключить дубли из выборки можно просто добавив к SQL-запросу ключевое слово DISTINCT. Однако, это простое решение не всегда будет верным. Чтобы гарантировать отсутствие дубликатов в наборе данных, СУБД необходимо сравнить все строки друг с другом, отсеяв повторы. Это требует много ресурсов ЦП и памяти для хранения всех строк, т.к. их нужно сравнивать друг с другом в памяти, даже если на низком уровне идет работа с хэшем. Кроме того, DISTINCT уменьшает параллелизм вычислений, снижая скорость выполнения запроса.
DISTINCT удаляет дубликаты, но не разрешает неправильные соединения и фильтры, которые на практике чаще всего и приводят к повторам, например, из-за CROSS JOIN или использования RANK вместо ROW_NUMBER, что приводит к дублированию из-за плохо определенного окна раздела. Подробности с примерами кода смотрите здесь: https://jmarquesdatabeyond.medium.com/sql-like-a-pro-please-stop-using-distinct-31bdb6481256
Medium
SQL Like a Pro: Please Stop Using Distinct!!
Every time I see a “DISTINCT” I ask the same question: Why??
🤯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/
Не хватает удобства полноценной среды разработки в легковесном Jupyter Notebook? Хотите писать Python-код в надежной IDE со всеми DS-библиотеками? Попробуйте DataSpell от JetBrains – профессиональная IDE наподобие PyCharm, которое содержит множество популярных библиотек для анализа данных и ML, сочетая их с мощью комплексного инструмента разработчика.
Выпущенный впервые в 2020 году, сегодня DataSpell пользуется спросом у ML-разработчиков и дата-аналитиков по всему миру.
https://www.jetbrains.com/ru-ru/dataspell/
JetBrains
JetBrains DataSpell: The IDE for Data Scientists.
JetBrains DataSpell is an IDE for data science with intelligent Jupyter notebooks, interactive Python scripts, and lots of other built-in tools.
🔥3🤔1
Forwarded from Digital Dinner
This media is not supported in your browser
VIEW IN TELEGRAM
Нейросеть, которая меняет время суток на фото
Исследователи из Apple, Adobe и Университетского коллежа Лондона совместными усилиями разработали нейросеть, которая может менять время дня на фотографиях.
Принцип работы такой: нейронная сеть определят источник света на снимке и объекты, которые отбрасываю тень. В итоге, чтобы поменять освещение на фото, нужно только передвинуть ползунок.
Попробовать новую сеть в действии можно по ссылке https://www.dgriffiths.uk/outcast
Исследователи из Apple, Adobe и Университетского коллежа Лондона совместными усилиями разработали нейросеть, которая может менять время дня на фотографиях.
Принцип работы такой: нейронная сеть определят источник света на снимке и объекты, которые отбрасываю тень. В итоге, чтобы поменять освещение на фото, нужно только передвинуть ползунок.
Попробовать новую сеть в действии можно по ссылке https://www.dgriffiths.uk/outcast
👍2
#тест
Предупредить переобучения ML-модели поможет
Предупредить переобучения ML-модели поможет
Anonymous Quiz
10%
Нормализация входных данных
3%
Стандартизация входных данных
82%
Регуляризация
5%
Оптимизация
👍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/
• 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
Нужно внедрить 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
GitHub
GitHub - iterative/cml: ♾️ CML - Continuous Machine Learning | CI/CD for ML
♾️ CML - Continuous Machine Learning | CI/CD for ML - iterative/cml
👍3
#тест
Какой метод Apache Spark работает с файловой системой, а НЕ с памятью?
Какой метод 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
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
Эта библиотека пригодится 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
GitHub
GitHub - Delgan/loguru: Python logging made (stupidly) simple
Python logging made (stupidly) simple. Contribute to Delgan/loguru development by creating an account on GitHub.
🔥3
#тест
Главное отличие выполнения операций MapReduce в Hadoop и Spark
Главное отличие выполнения операций MapReduce в Hadoop и Spark
Anonymous Quiz
9%
Hadoop быстрее
23%
никаких отличий нет, все одинаково
39%
Spark быстрее
29%
отличия только в объеме обрабатываемых данных
🔥3
🔥ТОП-5 новинок Python Alpha 5
В апреле 2022 года вышла новая версия Python - Alpha 5 (3.11). Главные фичи:
• Улучшение отладки с цепочкой исключений и сообщениях. В Python 2022 исключения будут включать в себя подробное свойство с местоположением обратной трассировки, указывающее прямо туда, где произошла ошибка. Python 2 имел аналогичную функцию, но требовал добавления context в код, что усложняло реализацию. Теперь__context__ добавляется автоматически.
• Вариативная обработка исключений – теперь можно по-разному обрабатывать исключение в зависимости от того, с какими другими исключениями оно связано. Можно использовать несколько операторов исключений с явным числом отдельных исключений в каждом. Просто создайте большой блок try/except со всеми возможными именами исключений, а затем добавьте в него дополнительные операторы exclude. Именно для этого и предназначены группы исключений, которые позволяют логически сгруппировать множество различных исключений вместе и применить единую функцию-обработчик, вызываемую только если внутри программы возникает какое-либо из этих отдельных исключений.
• Variadic Generics — теперь можно создавать функции, которые принимают переменное количество аргументов (до 22). Раньше нужно было определить функцию, которая могла бы принимать любое количество аргументов, а затем явно передавать каждый параметр. Variadic Generics в Python 3.6 позволяет отправлять любое количество параметров за один раз, что полезно при повторе нескольких операций.
• Оптимизация производительности CPython. Изменения для функций, связанных с вызовами и поиском ключевых слов, должны уменьшить накладные расходы, вызванные стеком C, ускоряя все, от разработки объектно-ориентированного кода до доступа к словарям данных.
• Упрощение работы других языков, таких как JavaScript, поверх Python, за счет высокопроизводительных и параллельных вычислений.
https://morioh.com/p/af7debd024e2
https://medium.com/@Sabrina-Carpenter/python-alpha-5-is-here-5-promising-features-that-will-blow-your-mind-a4abd406d0ad
В апреле 2022 года вышла новая версия Python - Alpha 5 (3.11). Главные фичи:
• Улучшение отладки с цепочкой исключений и сообщениях. В Python 2022 исключения будут включать в себя подробное свойство с местоположением обратной трассировки, указывающее прямо туда, где произошла ошибка. Python 2 имел аналогичную функцию, но требовал добавления context в код, что усложняло реализацию. Теперь__context__ добавляется автоматически.
• Вариативная обработка исключений – теперь можно по-разному обрабатывать исключение в зависимости от того, с какими другими исключениями оно связано. Можно использовать несколько операторов исключений с явным числом отдельных исключений в каждом. Просто создайте большой блок try/except со всеми возможными именами исключений, а затем добавьте в него дополнительные операторы exclude. Именно для этого и предназначены группы исключений, которые позволяют логически сгруппировать множество различных исключений вместе и применить единую функцию-обработчик, вызываемую только если внутри программы возникает какое-либо из этих отдельных исключений.
• Variadic Generics — теперь можно создавать функции, которые принимают переменное количество аргументов (до 22). Раньше нужно было определить функцию, которая могла бы принимать любое количество аргументов, а затем явно передавать каждый параметр. Variadic Generics в Python 3.6 позволяет отправлять любое количество параметров за один раз, что полезно при повторе нескольких операций.
• Оптимизация производительности CPython. Изменения для функций, связанных с вызовами и поиском ключевых слов, должны уменьшить накладные расходы, вызванные стеком C, ускоряя все, от разработки объектно-ориентированного кода до доступа к словарям данных.
• Упрощение работы других языков, таких как JavaScript, поверх Python, за счет высокопроизводительных и параллельных вычислений.
https://morioh.com/p/af7debd024e2
https://medium.com/@Sabrina-Carpenter/python-alpha-5-is-here-5-promising-features-that-will-blow-your-mind-a4abd406d0ad
Morioh
Python Alpha 5 - 5 Promising Features that will blow your mind 🤯
Python, the popular high-level programming language, has just released its Alpha 5 version (3.11). This new version comes with 5 promising new features that wil
🔥1
💫Визуализация графов с PyGraphistry
PyGraphistry — это ИИ-библиотека Python для визуальных графов, позволяющая извлекать, преобразовывать, анализировать и визуализировать большие графы вместе со сквозными сеансами графического сервера Graphistry. Graphistry создан специально для больших графов. Пользовательский механизм рендеринга WebGL клиента рендерит до 8 миллионов узлов + ребер за раз, а большинство клиентских GPU поддерживают от 100 000 до 2 миллионов элементов. Механизм аналитики графического процессора на стороне сервера поддерживает графы еще большего размера. Graphistry сглаживает графические рабочие процессы в экосистеме PyData, включая датафреймы Pandas/Spark/Dask, графического процессора Nvidia RAPIDS, графы GPU, графовые нейросети DGL/PyTorch и различные коннекторы данных.
PyGraphistry — это дружественный и оптимизированный нативный интерфейс PyData для API-интерфейсов REST Graphistry, не зависящих от языка. Можно использовать PyGraphistry с традиционными источниками данных Python, такими как CSV, SQL, Neo4j, Splunk и другими.
Клиент PyGraphistry Python пригодится следующим категориям пользователей:
• Data scientist: переходите от данных к ускоренным визуальным исследованиям за пару строк, делитесь результатами в реальном времени, создавайте сложные представления в Jupyter Notebook и Google Colab.
• Разработчик: быстро создавайте прототипы потрясающих решений Python с помощью PyGraphistry, встраивайте независимый от языка способ с помощью API REST, настраивая цвета, значки, макеты, JavaScript и пр.
• Аналитик: стройте наглядные дэшборды, используя интерактивный поиск, фильтры, временные шкалы, гистограммы и др., встраивая их в любые фреймворки.
https://github.com/graphistry/pygraphistry
PyGraphistry — это ИИ-библиотека Python для визуальных графов, позволяющая извлекать, преобразовывать, анализировать и визуализировать большие графы вместе со сквозными сеансами графического сервера Graphistry. Graphistry создан специально для больших графов. Пользовательский механизм рендеринга WebGL клиента рендерит до 8 миллионов узлов + ребер за раз, а большинство клиентских GPU поддерживают от 100 000 до 2 миллионов элементов. Механизм аналитики графического процессора на стороне сервера поддерживает графы еще большего размера. Graphistry сглаживает графические рабочие процессы в экосистеме PyData, включая датафреймы Pandas/Spark/Dask, графического процессора Nvidia RAPIDS, графы GPU, графовые нейросети DGL/PyTorch и различные коннекторы данных.
PyGraphistry — это дружественный и оптимизированный нативный интерфейс PyData для API-интерфейсов REST Graphistry, не зависящих от языка. Можно использовать PyGraphistry с традиционными источниками данных Python, такими как CSV, SQL, Neo4j, Splunk и другими.
Клиент PyGraphistry Python пригодится следующим категориям пользователей:
• Data scientist: переходите от данных к ускоренным визуальным исследованиям за пару строк, делитесь результатами в реальном времени, создавайте сложные представления в Jupyter Notebook и Google Colab.
• Разработчик: быстро создавайте прототипы потрясающих решений Python с помощью PyGraphistry, встраивайте независимый от языка способ с помощью API REST, настраивая цвета, значки, макеты, JavaScript и пр.
• Аналитик: стройте наглядные дэшборды, используя интерактивный поиск, фильтры, временные шкалы, гистограммы и др., встраивая их в любые фреймворки.
https://github.com/graphistry/pygraphistry
GitHub
GitHub - graphistry/pygraphistry: PyGraphistry is a Python library to quickly load, shape, embed, and explore big graphs with the…
PyGraphistry is a Python library to quickly load, shape, embed, and explore big graphs with the GPU-accelerated Graphistry visual graph analyzer - graphistry/pygraphistry
👍4
#тест
Ключевое отличие оконных и агрегатных функций в том, что
Ключевое отличие оконных и агрегатных функций в том, что
Anonymous Quiz
1%
разницы в результате нет, но оконные функции сложнее агрегатных
34%
оконные функции сворачивают результат вычислений над группой строк в одно значение
52%
оконные функции не сворачивают результат вычислений над группой строк в одно значение
13%
в агрегатных функциях все строки сохраняют исходную идентичность, результат возвращается для каждой
🔥2
🗣Сколько информации в ваших данных? Ответ от MIT
Информация и данные – это разные вещи. Не все данные одинаковы. Но сколько информации может содержать любой фрагмент данных? Впервые этот вопросы был раскрыт в статье 1948 года «Математическая теория коммуникации» почетного профессора MIT Клода Шеннона. Одним из прорывных результатов Шеннона является идея энтропии, которая позволяет количественно оценить количество информации, присущей любому случайному объекту, включая случайные величины, которые моделируют наблюдаемые данные. Результаты Шеннона заложили основы теории информации и современных телекоммуникаций. Концепция энтропии также оказалась центральной в информатике и машинном обучении.
Но использование формулы Шеннона может быстро стать неразрешимым с вычислительной точки зрения. Это требует точного расчета вероятности данных и всех возможных способов возникновения данных в рамках вероятностной модели. Это становится проблемой в реальных случаях, например, медицинское тестирование, где положительный результат теста является результатом сотен взаимодействующих переменных, и все они неизвестны. Имея всего 10 неизвестных, у данных уже есть 1000 возможных объяснений. С несколькими сотнями возможных объяснений больше, чем атомов в известной Вселенной, что делает вычисление энтропии абсолютно неразрешимой проблемой.
Исследователи MIT разработали новый метод оценки приближений ко многим информационным величинам, таким как энтропия Шеннона, с помощью вероятностного вывода. Работа представлена в статье конференции AISTATS 2022. Ключевой вывод в том, чтобы вместо перечисления всех объяснений, использовать алгоритмы вероятностного вывода. Это поможет сначала сделать вывод, какие объяснения вероятны, а затем использовать их для построения высококачественных оценок энтропии. Доказано, что этот подход, основанный на выводах, может быть намного быстрее и точнее, чем предыдущие подходы.
Оценка энтропии и информации в вероятностной модели принципиально сложна, поскольку часто требует решения многомерной задачи интегрирования. Во многих предыдущих работах были разработаны оценки этих величин для некоторых особых случаев, но новые оценки энтропии через вывод (EEVI) предлагают первый подход, который может дать точные верхние и нижние границы для широкого набора величин, основанных на теории информации. Верхняя и нижняя границы означают, что, хотя мы не знаем истинной энтропии, мы можем получить число, которое меньше ее, и число, которое выше ее. Разница между верхней и нижней границами дает количественное представление о том, насколько мы должны быть уверены в оценках. Используя больше вычислительных ресурсов, можно свести разницу между двумя границами к нулю, что «сжимает» истинное значение с высокой степенью точности. Также можно составить эти границы, чтобы сформировать оценки многих других величин, которые говорят, насколько информативны разные переменные в модели друг для друга.
Новый метод особенно полезен для запроса вероятностных моделей в таких областях, как медицинская диагностика. Например, решать новые запросы, используя богатые генеративные модели для сложных заболеваний, ранее изученных медицинскими экспертами.
https://news.mit.edu/2022/estimating-informativeness-data-0425
Информация и данные – это разные вещи. Не все данные одинаковы. Но сколько информации может содержать любой фрагмент данных? Впервые этот вопросы был раскрыт в статье 1948 года «Математическая теория коммуникации» почетного профессора MIT Клода Шеннона. Одним из прорывных результатов Шеннона является идея энтропии, которая позволяет количественно оценить количество информации, присущей любому случайному объекту, включая случайные величины, которые моделируют наблюдаемые данные. Результаты Шеннона заложили основы теории информации и современных телекоммуникаций. Концепция энтропии также оказалась центральной в информатике и машинном обучении.
Но использование формулы Шеннона может быстро стать неразрешимым с вычислительной точки зрения. Это требует точного расчета вероятности данных и всех возможных способов возникновения данных в рамках вероятностной модели. Это становится проблемой в реальных случаях, например, медицинское тестирование, где положительный результат теста является результатом сотен взаимодействующих переменных, и все они неизвестны. Имея всего 10 неизвестных, у данных уже есть 1000 возможных объяснений. С несколькими сотнями возможных объяснений больше, чем атомов в известной Вселенной, что делает вычисление энтропии абсолютно неразрешимой проблемой.
Исследователи MIT разработали новый метод оценки приближений ко многим информационным величинам, таким как энтропия Шеннона, с помощью вероятностного вывода. Работа представлена в статье конференции AISTATS 2022. Ключевой вывод в том, чтобы вместо перечисления всех объяснений, использовать алгоритмы вероятностного вывода. Это поможет сначала сделать вывод, какие объяснения вероятны, а затем использовать их для построения высококачественных оценок энтропии. Доказано, что этот подход, основанный на выводах, может быть намного быстрее и точнее, чем предыдущие подходы.
Оценка энтропии и информации в вероятностной модели принципиально сложна, поскольку часто требует решения многомерной задачи интегрирования. Во многих предыдущих работах были разработаны оценки этих величин для некоторых особых случаев, но новые оценки энтропии через вывод (EEVI) предлагают первый подход, который может дать точные верхние и нижние границы для широкого набора величин, основанных на теории информации. Верхняя и нижняя границы означают, что, хотя мы не знаем истинной энтропии, мы можем получить число, которое меньше ее, и число, которое выше ее. Разница между верхней и нижней границами дает количественное представление о том, насколько мы должны быть уверены в оценках. Используя больше вычислительных ресурсов, можно свести разницу между двумя границами к нулю, что «сжимает» истинное значение с высокой степенью точности. Также можно составить эти границы, чтобы сформировать оценки многих других величин, которые говорят, насколько информативны разные переменные в модели друг для друга.
Новый метод особенно полезен для запроса вероятностных моделей в таких областях, как медицинская диагностика. Например, решать новые запросы, используя богатые генеративные модели для сложных заболеваний, ранее изученных медицинскими экспертами.
https://news.mit.edu/2022/estimating-informativeness-data-0425
MIT News
Estimating the informativeness of data
MIT researchers discovered a new way to estimate the amount of information contained in a piece of data using probabilistic programming and probabilistic inference. The breakthrough entropy estimators open up new applications in medicine, scientific discovery…