Недавно мне попался предпринт книги по байесовской оптимизации Романа Гарнетта (Roman Garnett), доцента Вашингтонского университета св. Льюиса (Washington University in St. Louis). Это черновик монографии ученого, которая будет официально опубликована издательством Cambridge University Press в начале 2022 года. Основное содержание книги уже сейчас доступно на Github, куда ее выложил сам автор: https://github.com/bayesoptbook/bayesoptbook.github.io/tree/master/book
Почти 350 страниц англоязычного текста полностью охватывают математические основы оптимизации вообще и байесовского подхода в частности. Книга предназначена для студентов, аспирантов и специалистов Data Science, включая области машинного обучения и статистики. Хотя в целом текст написан достаточно сухим математическим языком, внимательный читатель даже без глубокого опыта в математике сможет освоить материал благодаря обилию наглядных иллюстраций и подробному объяснению формул.
Книга охватывает основные 3 темы:
• теоретические и практические аспекты моделирования гауссовских процессов,
• байесовский подход к последовательному принятию решений,
• реализация практических и эффективных политик оптимизации.
Также затронуты несколько дополнительных тем:
• обзор результатов теоретической сходимости,
• обзор заметных расширений,
• всесторонняя история байесовской оптимизации,
• аннотированная библиография приложений.
На мой взгляд книга пригодится не только студентам и преподавателям, но и практикующим DS-исследователям, которым нужно подтянуть математику, вспомнить некоторые темы или углубить свои знания теории оптимизации.
Почти 350 страниц англоязычного текста полностью охватывают математические основы оптимизации вообще и байесовского подхода в частности. Книга предназначена для студентов, аспирантов и специалистов Data Science, включая области машинного обучения и статистики. Хотя в целом текст написан достаточно сухим математическим языком, внимательный читатель даже без глубокого опыта в математике сможет освоить материал благодаря обилию наглядных иллюстраций и подробному объяснению формул.
Книга охватывает основные 3 темы:
• теоретические и практические аспекты моделирования гауссовских процессов,
• байесовский подход к последовательному принятию решений,
• реализация практических и эффективных политик оптимизации.
Также затронуты несколько дополнительных тем:
• обзор результатов теоретической сходимости,
• обзор заметных расширений,
• всесторонняя история байесовской оптимизации,
• аннотированная библиография приложений.
На мой взгляд книга пригодится не только студентам и преподавателям, но и практикующим DS-исследователям, которым нужно подтянуть математику, вспомнить некоторые темы или углубить свои знания теории оптимизации.
GitHub
bayesoptbook.github.io/book at master · bayesoptbook/bayesoptbook.github.io
Companion webpage for the book "Bayesian Optimization" by Roman Garnett - bayesoptbook/bayesoptbook.github.io
✈️Математика для Data Scientist’а: меры измерения расстояния, часть 3
• Индекс Жаккара или Пересечение над объединением (Jaccard index or Intersection over Union) – это показатель для расчета сходства и разнообразия нескольких выборок – размер пересечения, деленный на размер их объединения. На практике это общее количество похожих объектов между наборами, деленное на общее количество объектов. Например, если у двух наборов 1 общая сущность и всего 5 разных сущностей, то индекс Жаккара будет 1/5 = 0,2. Главный недостаток этой меры – зависимость от объема данных: чем больше выборка, тем больше значение индекса. Индекс Жаккара часто используется в приложениях, где используются двоичные данные. Например, DL-модель прогнозирует сегменты изображения. В этом случае индекс Жаккара можно использовать для расчета, насколько точно прогноз соответствует реальности. Точно эту меру можно применять для анализа сходств текста, чтобы измерить, насколько часто выбираются слова между документами и сравнения наборов нескольких шаблонов.
• Индекс Соренсена-Дайса (Sørensen-Dice index) очень похож на индекс Жаккара – он также измеряет сходство и разнообразие нескольких выборок. Хотя они рассчитываются аналогично, индекс Соренсена-Дайса немного более интуитивно понятен, потому что его можно рассматривать как процент перекрытия между двумя наборами, который представляет собой значение от 0 до 1. Как и индекс Жаккара, индекс Соренсена-Дайса преувеличивают важность наборов, в которых практически отсутствуют достоверные положительные результаты, взвешивая каждый элемент обратно пропорционально размеру его выборки. Эта мера часто применяется в задачах сегментации изображений и в анализе текстового сходства.
• Расстояние Хаверсинуса (Haversine distance) – это расстояние между двумя точками на сфере с учетом их долготы и широты. Это похоже на евклидово расстояние в том, что вычисляет самую короткую линию между двумя точками, которые находятся на сфере. С этим связан главный недостаток этой меры – идеальных сфер в реальности не существует. Например, из-за неровностей ландшафта планеты расчеты могут быть искажены. Вместо этого можно использовать расстояние Винсенти (Vincenty distance), которое вместо сферы работает с эллипсоидом. Неудивительно, что расстояние Хаверсинуса часто используется в навигации. Например, для расчета расстояния между двумя странами при перелете между ними. На небольших расстояниях применять эту меру нет смысла, т.к. малый радиус кривизны не дает большого эффекта.
• Индекс Жаккара или Пересечение над объединением (Jaccard index or Intersection over Union) – это показатель для расчета сходства и разнообразия нескольких выборок – размер пересечения, деленный на размер их объединения. На практике это общее количество похожих объектов между наборами, деленное на общее количество объектов. Например, если у двух наборов 1 общая сущность и всего 5 разных сущностей, то индекс Жаккара будет 1/5 = 0,2. Главный недостаток этой меры – зависимость от объема данных: чем больше выборка, тем больше значение индекса. Индекс Жаккара часто используется в приложениях, где используются двоичные данные. Например, DL-модель прогнозирует сегменты изображения. В этом случае индекс Жаккара можно использовать для расчета, насколько точно прогноз соответствует реальности. Точно эту меру можно применять для анализа сходств текста, чтобы измерить, насколько часто выбираются слова между документами и сравнения наборов нескольких шаблонов.
• Индекс Соренсена-Дайса (Sørensen-Dice index) очень похож на индекс Жаккара – он также измеряет сходство и разнообразие нескольких выборок. Хотя они рассчитываются аналогично, индекс Соренсена-Дайса немного более интуитивно понятен, потому что его можно рассматривать как процент перекрытия между двумя наборами, который представляет собой значение от 0 до 1. Как и индекс Жаккара, индекс Соренсена-Дайса преувеличивают важность наборов, в которых практически отсутствуют достоверные положительные результаты, взвешивая каждый элемент обратно пропорционально размеру его выборки. Эта мера часто применяется в задачах сегментации изображений и в анализе текстового сходства.
• Расстояние Хаверсинуса (Haversine distance) – это расстояние между двумя точками на сфере с учетом их долготы и широты. Это похоже на евклидово расстояние в том, что вычисляет самую короткую линию между двумя точками, которые находятся на сфере. С этим связан главный недостаток этой меры – идеальных сфер в реальности не существует. Например, из-за неровностей ландшафта планеты расчеты могут быть искажены. Вместо этого можно использовать расстояние Винсенти (Vincenty distance), которое вместо сферы работает с эллипсоидом. Неудивительно, что расстояние Хаверсинуса часто используется в навигации. Например, для расчета расстояния между двумя странами при перелете между ними. На небольших расстояниях применять эту меру нет смысла, т.к. малый радиус кривизны не дает большого эффекта.
📚Введение в разработку фичей для прогнозирования временных рядов - отрывок из книги доктора Francesca Lazzeri «Машинное обучение для прогнозирования временных рядов с помощью Python» (Machine Learning for Time Series Forecasting with Python), опубликованной в декабре 2020 года
Разработка ML-моделей часто занимает много времени и требует учета множества факторов: повторение алгоритмов, настройка гиперпараметров и feature engineering. Эти варианты дополнительно умножаются на данные временных рядов, поскольку DS-специалисты должны еще учитывать тенденции, сезонность, праздники и внешние экономические переменные. Каждый ML-алгоритм ожидает данные в качестве входных данных, которые должны быть отформатированы. Поэтому наборы данных временных рядов требуют предварительной очистки и определения фичей, прежде чем запустить моделирование.
Особенность анализа временных рядов в том, что точки данных привязываются ко времени. Например, необходимо построить выходные данные ML-модели, определив переменную, которую необходимо предсказать (будущее количество продаж в следующий понедельник), а затем использовать исторические данные и набор фичей для создания входных переменных. Это нужно для достижения следующих целей:
• создание корректного набора входных данных для ML-алгоритма, чтобы создать входные фичи из исторических данных и сформировать датасет как задачу контролируемого обучения;
• повышение производительности ML-моделей – создание действительных отношений между входными фичами и целевой переменной, которую необходимо прогнозировать.
Основными категориями данных, полезных для анализа временных рядов, являются следующие:
• Дата и время - фичи на основе значения отметки времени каждого наблюдения, например, часы, месяц и день недели для каждого наблюдения. Сюда же относятся выходные и праздники, время года и пр.
• Запаздывание - значения на предыдущих временных шагах, которые считаются полезными, потому что они созданы на основе предположения, что то, что произошло в прошлом, может влиять или содержать своего рода внутреннюю информацию о будущем. Например, может быть полезно создавать функции для продаж, которые произошли в предыдущие дни в 16:00, если нужно предсказать аналогичные продажи в это же время на следующий день.
• Статистика скользящего окна, чтобы вычислить статистику по значениям из заданной выборки данных путем определения диапазона, который включает сам выборку, а также некоторое заданное количество значений до и после используемой выборки.
• Статистика расширяемого окна из фичей, которые включают все предыдущие данные.
Посмотреть иллюстрации и примеры Python-функций можно здесь: https://medium.com/data-science-at-microsoft/introduction-to-feature-engineering-for-time-series-forecasting-620aa55fcab0
Разработка ML-моделей часто занимает много времени и требует учета множества факторов: повторение алгоритмов, настройка гиперпараметров и feature engineering. Эти варианты дополнительно умножаются на данные временных рядов, поскольку DS-специалисты должны еще учитывать тенденции, сезонность, праздники и внешние экономические переменные. Каждый ML-алгоритм ожидает данные в качестве входных данных, которые должны быть отформатированы. Поэтому наборы данных временных рядов требуют предварительной очистки и определения фичей, прежде чем запустить моделирование.
Особенность анализа временных рядов в том, что точки данных привязываются ко времени. Например, необходимо построить выходные данные ML-модели, определив переменную, которую необходимо предсказать (будущее количество продаж в следующий понедельник), а затем использовать исторические данные и набор фичей для создания входных переменных. Это нужно для достижения следующих целей:
• создание корректного набора входных данных для ML-алгоритма, чтобы создать входные фичи из исторических данных и сформировать датасет как задачу контролируемого обучения;
• повышение производительности ML-моделей – создание действительных отношений между входными фичами и целевой переменной, которую необходимо прогнозировать.
Основными категориями данных, полезных для анализа временных рядов, являются следующие:
• Дата и время - фичи на основе значения отметки времени каждого наблюдения, например, часы, месяц и день недели для каждого наблюдения. Сюда же относятся выходные и праздники, время года и пр.
• Запаздывание - значения на предыдущих временных шагах, которые считаются полезными, потому что они созданы на основе предположения, что то, что произошло в прошлом, может влиять или содержать своего рода внутреннюю информацию о будущем. Например, может быть полезно создавать функции для продаж, которые произошли в предыдущие дни в 16:00, если нужно предсказать аналогичные продажи в это же время на следующий день.
• Статистика скользящего окна, чтобы вычислить статистику по значениям из заданной выборки данных путем определения диапазона, который включает сам выборку, а также некоторое заданное количество значений до и после используемой выборки.
• Статистика расширяемого окна из фичей, которые включают все предыдущие данные.
Посмотреть иллюстрации и примеры Python-функций можно здесь: https://medium.com/data-science-at-microsoft/introduction-to-feature-engineering-for-time-series-forecasting-620aa55fcab0
Medium
Introduction to feature engineering for time series forecasting
Transforming raw data to prepare it for use in ML algorithms to discover insights and, eventually, make predictions.
🙌🏻Простое комбо для дата-аналитика: 3 фреймворка Python + электронные таблицы
На практике любой аналитик данных работает с датасетами не только в Jupyter Notebook или Google Colab. Иногда приходится табличные файлы открывать Excel и Google Spreadsheets. Поэтому есть потребность в объединении Python-скриптов со встроенными инструментами электронных таблиц. Для этого пригодятся следующие фреймворки:
• XLWings – Python-пакет, который фактически предустановлен на Anaconda и чаще всего используется для автоматизации процессов Excel. Он похож на Openpyxl, но более надежен и удобен. Например, можно написать собственную UDF-функцию на Python для парсинга веб-страниц, машинного обучения или решения NLP-задач для данных в электронной таблице. https://www.xlwings.org/tutorials/
• Mito – интерфейс электронных таблиц для Python, электронная таблица внутри Jupyter, которая генерирует код. Mito поддерживает основные функции Python, как: слияние, соединение, pivot, фильтрация, сортировка, визуализация, добавление столбцов, использование формул электронных таблиц и пр. https://docs.trymito.io/
• Openpyxl – Python-пакеты для чтения из Excel и записи в него. Например, можно подключиться к локальному файлу Excel и получить доступ к определенной ячейке или их группе, извлекая данные в DataFrame. А после обработки можно отправить данные обратно в Excel-файл. На практике этот пакет чаще всего применяется в финансовой сфере, т.к. обработка больших наборов данных в Excel происходит слишком медленно. https://foss.heptapod.net/openpyxl/openpyxl
На практике любой аналитик данных работает с датасетами не только в Jupyter Notebook или Google Colab. Иногда приходится табличные файлы открывать Excel и Google Spreadsheets. Поэтому есть потребность в объединении Python-скриптов со встроенными инструментами электронных таблиц. Для этого пригодятся следующие фреймворки:
• XLWings – Python-пакет, который фактически предустановлен на Anaconda и чаще всего используется для автоматизации процессов Excel. Он похож на Openpyxl, но более надежен и удобен. Например, можно написать собственную UDF-функцию на Python для парсинга веб-страниц, машинного обучения или решения NLP-задач для данных в электронной таблице. https://www.xlwings.org/tutorials/
• Mito – интерфейс электронных таблиц для Python, электронная таблица внутри Jupyter, которая генерирует код. Mito поддерживает основные функции Python, как: слияние, соединение, pivot, фильтрация, сортировка, визуализация, добавление столбцов, использование формул электронных таблиц и пр. https://docs.trymito.io/
• Openpyxl – Python-пакеты для чтения из Excel и записи в него. Например, можно подключиться к локальному файлу Excel и получить доступ к определенной ячейке или их группе, извлекая данные в DataFrame. А после обработки можно отправить данные обратно в Excel-файл. На практике этот пакет чаще всего применяется в финансовой сфере, т.к. обработка больших наборов данных в Excel происходит слишком медленно. https://foss.heptapod.net/openpyxl/openpyxl
xlwings: Python in Excel done right
Tutorials
The xlwings tutorials bring light into the dark on how to automate Excel with Python.
🌧🍁Проведи ноябрь с пользой! ТОП-15 DS-событий следующего месяца:
1. 2 ноября - DataOps Community Meetup от Яндекса https://cloud.yandex.ru/events/460
2. 3-4 ноября - Financial Evolution: AI, Machine Learning & Sentiment Analysis - Международная конференция в сфере финансов, искусственного интеллекта и машинного обучения https://conference.unicom.co.uk/sentiment-analysis/2021/uk-zurich/
3. 9-10 ноября – AI & Big Data – мультиформатная конференция по искусственному интеллекту и большим данных на службе у бизнеса https://techweek.moscow/aiday
4. 9-11 ноября - Конференция "Telecoms Europe 5G" https://telecomseurope5g.com/
5. 10-12 ноября - Artificial Intelligence Journey 2021 международная онлайн-конференция по искусственному интеллекту и анализу данных от Сбера https://ai-journey.ru/
6. 11 ноября - Форум "Customer Day 2021" о клиентском опыте, маркетинге, программах лояльности и CRM https://fb-forum.com/cd
7. 11 ноября - Конференция "Smart Cars & Roads 2021" - IV Федеральный форум «Smart Cars & Roads – цифровая трансформация экосистемы «автомобиль-дорога» в Российской Федерации» https://www.comnews-conferences.ru/ru/conference/smartcr2021/
8. 12 ноября - Форум Вымпелком "B2CDTO: бизнес-практики для цифрового государства" https://forum.digital/b2cdto_2021/
9. 17 ноября - форум «Инфраструктура цифрового предприятия 2021» https://www.osp.ru/iz/infrastructure2021
10. 17-18 ноября - CDO/CDTO Summit&Award 2021 - II Российский Саммит и Премия года https://cdosummit.ru/
11. 17-19 ноября – Матемаркетинг – крупнейшая в РФ, СНГ и всей Восточной Европе конференция по маркетинговой и продуктовой аналитике https://matemarketing.ru/
12. 19-20 ноября - Первый Конвент создателей сильного ИИ (LOMOTrueAI) https://ai.lomoclub.ru/lomotrueaikonvent/
13. 23 ноября - Конференция "TAdviser SummIT" https://summit.tadviser.ru/
14. 24-25 ноября - Онлайн-конференция Digital Mining & Metallurgy Online Conf: решения для интеллектуальной добычи и металлургии https://smartgopro.com/digitalminemet/
15. 27 ноября – DataStart – конференция по ML, AI и DS https://datastart.ru/
1. 2 ноября - DataOps Community Meetup от Яндекса https://cloud.yandex.ru/events/460
2. 3-4 ноября - Financial Evolution: AI, Machine Learning & Sentiment Analysis - Международная конференция в сфере финансов, искусственного интеллекта и машинного обучения https://conference.unicom.co.uk/sentiment-analysis/2021/uk-zurich/
3. 9-10 ноября – AI & Big Data – мультиформатная конференция по искусственному интеллекту и большим данных на службе у бизнеса https://techweek.moscow/aiday
4. 9-11 ноября - Конференция "Telecoms Europe 5G" https://telecomseurope5g.com/
5. 10-12 ноября - Artificial Intelligence Journey 2021 международная онлайн-конференция по искусственному интеллекту и анализу данных от Сбера https://ai-journey.ru/
6. 11 ноября - Форум "Customer Day 2021" о клиентском опыте, маркетинге, программах лояльности и CRM https://fb-forum.com/cd
7. 11 ноября - Конференция "Smart Cars & Roads 2021" - IV Федеральный форум «Smart Cars & Roads – цифровая трансформация экосистемы «автомобиль-дорога» в Российской Федерации» https://www.comnews-conferences.ru/ru/conference/smartcr2021/
8. 12 ноября - Форум Вымпелком "B2CDTO: бизнес-практики для цифрового государства" https://forum.digital/b2cdto_2021/
9. 17 ноября - форум «Инфраструктура цифрового предприятия 2021» https://www.osp.ru/iz/infrastructure2021
10. 17-18 ноября - CDO/CDTO Summit&Award 2021 - II Российский Саммит и Премия года https://cdosummit.ru/
11. 17-19 ноября – Матемаркетинг – крупнейшая в РФ, СНГ и всей Восточной Европе конференция по маркетинговой и продуктовой аналитике https://matemarketing.ru/
12. 19-20 ноября - Первый Конвент создателей сильного ИИ (LOMOTrueAI) https://ai.lomoclub.ru/lomotrueaikonvent/
13. 23 ноября - Конференция "TAdviser SummIT" https://summit.tadviser.ru/
14. 24-25 ноября - Онлайн-конференция Digital Mining & Metallurgy Online Conf: решения для интеллектуальной добычи и металлургии https://smartgopro.com/digitalminemet/
15. 27 ноября – DataStart – конференция по ML, AI и DS https://datastart.ru/
yandex.cloud
DataOps Community Meetup
Эксперты Yandex.Cloud, Glowbyte Consulting, Beeline, Lamoda и Anabar рассказали об опыте использования актуальных инструментов работы с данными.
👆🏻Не только CoPilot: обнаружение аномалий при разработке ПО с ControlFlag от IntelLabs
Корпорация Intel представила свой ответ ИИ-системе помощи разработчикам от OpenAI. Встречайте ControlFlag - самоконтролируемая система обнаружения шаблонов, которая изучает типичные шаблоны в управляющих структурах языков программирования высокого уровня типа C/C ++ через извлечение их из репозиториев GitHub и пр. Далее эти шаблоны применяются для обнаружения аномальных шаблонов в пользовательском коде. ControlFlag можно использовать для обнаружение опечаток, пропущенных проверок NULL и пр.
Впервые представив продукт в конце 2020-го года, в 2021 году Intel открыла исходный код ControlFlag, основанный на методе обучения без учителя. После изучения более миллиарда строк кода, система с высокой точностью находит ошибки и способна адаптироваться к стилю отдельных разработчиков, чтобы отличить аномалию от особенностей написания кода.
https://github.com/IntelLabs/control-flag
Корпорация Intel представила свой ответ ИИ-системе помощи разработчикам от OpenAI. Встречайте ControlFlag - самоконтролируемая система обнаружения шаблонов, которая изучает типичные шаблоны в управляющих структурах языков программирования высокого уровня типа C/C ++ через извлечение их из репозиториев GitHub и пр. Далее эти шаблоны применяются для обнаружения аномальных шаблонов в пользовательском коде. ControlFlag можно использовать для обнаружение опечаток, пропущенных проверок NULL и пр.
Впервые представив продукт в конце 2020-го года, в 2021 году Intel открыла исходный код ControlFlag, основанный на методе обучения без учителя. После изучения более миллиарда строк кода, система с высокой точностью находит ошибки и способна адаптироваться к стилю отдельных разработчиков, чтобы отличить аномалию от особенностей написания кода.
https://github.com/IntelLabs/control-flag
🚀Простая интерполяция в Scipy вместо сложной оптимизации
SciPy - это набор математических алгоритмов и вспомогательных функций на расширении Python-библиотеки NumPy. Он добавляет множество высокоуровневых команд и классов для управления и визуализации данных, позволяя DS-специалисту обойтись обычной средой разработки кода на Python без сложных математических систем типа MATLAB, IDL, Octave, R-Lab и SciLab.
Например, интерполяция экспериментальных данных в сложных научных или бизнес-исследованиях. Получив функцию интерполяции из Scipy, можно использовать ее в дальнейших вычислениях. Это полезно, когда дополнительный сбор и проведение экспериментов стоят дорого или занимают много времени, например, разработка полупроводников, оптимизация химических процессов, планирование производства и пр.
Интерполяция поможет провести моделирование с датасетом, где точки данных собраны с большим интервалом. Например, можно создать функцию интерполяции с использованием линейных, квадратичных или кубических сплайнов и запустить функцию интерполяции для оценки результатов эксперимента или моделирования на плотной сетке.
Этот метод не гарантирует наилучшего результата во всех ситуациях, но подходит для большинства реальных случаев. Несмотря на то, что интерполяция требует гладкости (непрерывности) функции, это предположение можно приложить к большинству реальных, которые не слишком скачкообразные, а достаточно гладкие для методов интерполяции.
Процедуры интерполяции Scipy работают как в двухмерных случаях, так и в одномерных. К примеру, можно получить гладкую интерполированную 2D-поверхность из разреженных данных с помощью интерполяции Scipy, создав из 400 фактических точек данных матрицу на 4900 точек.
В Scipy за интерполяцию отвечает пакет scipy.interpolate, который содержит сплайн-функции и классы, одномерные и многомерные классы интерполяции, полиномиальные интерполяторы Лагранжа и Тейлора, а также оболочки для функций FITPACK и DFITPACK.
https://towardsdatascience.com/optimizing-complex-simulations-use-scipy-interpolation-dc782c27dcd2
https://docs.scipy.org/doc/scipy/reference/tutorial/interpolate.html
SciPy - это набор математических алгоритмов и вспомогательных функций на расширении Python-библиотеки NumPy. Он добавляет множество высокоуровневых команд и классов для управления и визуализации данных, позволяя DS-специалисту обойтись обычной средой разработки кода на Python без сложных математических систем типа MATLAB, IDL, Octave, R-Lab и SciLab.
Например, интерполяция экспериментальных данных в сложных научных или бизнес-исследованиях. Получив функцию интерполяции из Scipy, можно использовать ее в дальнейших вычислениях. Это полезно, когда дополнительный сбор и проведение экспериментов стоят дорого или занимают много времени, например, разработка полупроводников, оптимизация химических процессов, планирование производства и пр.
Интерполяция поможет провести моделирование с датасетом, где точки данных собраны с большим интервалом. Например, можно создать функцию интерполяции с использованием линейных, квадратичных или кубических сплайнов и запустить функцию интерполяции для оценки результатов эксперимента или моделирования на плотной сетке.
Этот метод не гарантирует наилучшего результата во всех ситуациях, но подходит для большинства реальных случаев. Несмотря на то, что интерполяция требует гладкости (непрерывности) функции, это предположение можно приложить к большинству реальных, которые не слишком скачкообразные, а достаточно гладкие для методов интерполяции.
Процедуры интерполяции Scipy работают как в двухмерных случаях, так и в одномерных. К примеру, можно получить гладкую интерполированную 2D-поверхность из разреженных данных с помощью интерполяции Scipy, создав из 400 фактических точек данных матрицу на 4900 точек.
В Scipy за интерполяцию отвечает пакет scipy.interpolate, который содержит сплайн-функции и классы, одномерные и многомерные классы интерполяции, полиномиальные интерполяторы Лагранжа и Тейлора, а также оболочки для функций FITPACK и DFITPACK.
https://towardsdatascience.com/optimizing-complex-simulations-use-scipy-interpolation-dc782c27dcd2
https://docs.scipy.org/doc/scipy/reference/tutorial/interpolate.html
Towards Data Science
Optimizing complex simulations? Use Scipy interpolation | Towards Data Science
Instead of using fancy optimization algorithms, in many cases, we can use simple interpolation (Scipy) for fast optimization
✈️Зачем вам Optuna: как автоматизировать настройку гиперпараметров
Настройка гиперпараметров ML-модели занимает много времени и сил. Упростить эту задачу можно с помощью специальных фреймворков, одним из которых является Optuna. Появившись в 2019 году, эта платформа отличается следующими достоинствами:
• совместимость с PyTorch, Chainer, TensorFlow, Keras, MXNet, Scikit-Learn, XGBoost, LightGBM и другими ML-фреймворками;
• работа на понятном DS-языке с использованием условных выражений, циклов и синтаксиса Python;
• способность обрабатывать непрерывные значения гиперпараметров, настраивая альфа- и лямбда-регуляризацию на любые значения с плавающей точкой в заданном диапазоне;
• использование байесовских алгоритмов подбора с возможностью удаления заведомо проигрышного пространства заданных гиперпараметров из анализа, чтобы ускорить оптимизацию;
• распараллеливание поиска гиперпараметров по нескольким потокам или процессам без изменения кода;
• работает быстрее аналогов (RandomSearch, GridSearch, hyperopt, scikit-optimize);
• подробная документация.
https://optuna.org/
https://habr.com/ru/post/563494/
https://towardsdatascience.com/kagglers-guide-to-lightgbm-hyperparameter-tuning-with-optuna-in-2021-ed048d9838b5
Настройка гиперпараметров ML-модели занимает много времени и сил. Упростить эту задачу можно с помощью специальных фреймворков, одним из которых является Optuna. Появившись в 2019 году, эта платформа отличается следующими достоинствами:
• совместимость с PyTorch, Chainer, TensorFlow, Keras, MXNet, Scikit-Learn, XGBoost, LightGBM и другими ML-фреймворками;
• работа на понятном DS-языке с использованием условных выражений, циклов и синтаксиса Python;
• способность обрабатывать непрерывные значения гиперпараметров, настраивая альфа- и лямбда-регуляризацию на любые значения с плавающей точкой в заданном диапазоне;
• использование байесовских алгоритмов подбора с возможностью удаления заведомо проигрышного пространства заданных гиперпараметров из анализа, чтобы ускорить оптимизацию;
• распараллеливание поиска гиперпараметров по нескольким потокам или процессам без изменения кода;
• работает быстрее аналогов (RandomSearch, GridSearch, hyperopt, scikit-optimize);
• подробная документация.
https://optuna.org/
https://habr.com/ru/post/563494/
https://towardsdatascience.com/kagglers-guide-to-lightgbm-hyperparameter-tuning-with-optuna-in-2021-ed048d9838b5
Optuna
Optuna - A hyperparameter optimization framework
Optuna is an automatic hyperparameter optimization software framework, particularly designed for machine learning. It features an imperative, define-by-run style user API.
🦋Самоконтролируемое обратимое обучение с подкреплением: новый подход от Google AI
Обучение с подкреплением (RL) отлично решает задачи с нуля, но обучить агента понимать обратимость его действий не так-то просто. Например, роботам следует избегать действий, которые могут привести к их поломке. Чтобы оценить обратимость действия, нужны практические знания и понимание физики среды, в которой существует RL-агент. Поэтому исследователи Google AI на конференции NeurIPS 2021 представляем новый способ аппроксимации обратимости действий RL-агентов. Этот подход добавляет отдельный компонент оценки обратимости к самоконтролируемой процедуре обучения с подкреплением на немаркированных данных, собранных агентами. Модель можно обучать онлайн (совместно с агентом RL) или офлайн (из набора данных взаимодействий), чтобы направлять политику RL в сторону обратимого поведения. Так можно значительно повысить производительность агентов RL при выполнении нескольких задач.
Компонент обратимости, добавленный к процедуре RL, извлекается из взаимодействий и представляет собой модель, которую можно обучать отдельно от самого агента. Обучение модели проходит самостоятельно и не требует разметки данных с указанием обратимости действий: модель сама узнает о том, какие типы действий имеют тенденцию быть обратимыми, из контекста обучающих данных. При этом учитывается вероятность возникновения событий и приоритет как прокси-мера истинной обратимости, которую можно узнать из набора данных взаимодействий, даже без вознаграждения RL-агента.
Этот метод позволяет агентам RL прогнозировать обратимость действия путем обучения моделированию временного порядка случайно выбранных событий траектории, что приводит к лучшему исследованию и контролю. Метод является самоконтролируемым, т.е. не требует предварительных знаний об обратимости действий, что подходит для различных сред.
https://ai.googleblog.com/2021/11/self-supervised-reversibility-aware.html
Обучение с подкреплением (RL) отлично решает задачи с нуля, но обучить агента понимать обратимость его действий не так-то просто. Например, роботам следует избегать действий, которые могут привести к их поломке. Чтобы оценить обратимость действия, нужны практические знания и понимание физики среды, в которой существует RL-агент. Поэтому исследователи Google AI на конференции NeurIPS 2021 представляем новый способ аппроксимации обратимости действий RL-агентов. Этот подход добавляет отдельный компонент оценки обратимости к самоконтролируемой процедуре обучения с подкреплением на немаркированных данных, собранных агентами. Модель можно обучать онлайн (совместно с агентом RL) или офлайн (из набора данных взаимодействий), чтобы направлять политику RL в сторону обратимого поведения. Так можно значительно повысить производительность агентов RL при выполнении нескольких задач.
Компонент обратимости, добавленный к процедуре RL, извлекается из взаимодействий и представляет собой модель, которую можно обучать отдельно от самого агента. Обучение модели проходит самостоятельно и не требует разметки данных с указанием обратимости действий: модель сама узнает о том, какие типы действий имеют тенденцию быть обратимыми, из контекста обучающих данных. При этом учитывается вероятность возникновения событий и приоритет как прокси-мера истинной обратимости, которую можно узнать из набора данных взаимодействий, даже без вознаграждения RL-агента.
Этот метод позволяет агентам RL прогнозировать обратимость действия путем обучения моделированию временного порядка случайно выбранных событий траектории, что приводит к лучшему исследованию и контролю. Метод является самоконтролируемым, т.е. не требует предварительных знаний об обратимости действий, что подходит для различных сред.
https://ai.googleblog.com/2021/11/self-supervised-reversibility-aware.html
research.google
Self-Supervised Reversibility-Aware Reinforcement Learning
Posted by Johan Ferret, Student Researcher, Google Research, Brain Team An approach commonly used to train agents for a range of applications from ...
В Петербурге сегодня гроза ⚡️⚡️
Ой не, не сегодня. С 12 по 14 ноября!
Хакатон по искусственному интеллекту 8/116 ⚡️
На этот раз 3 задачи на выбор.
Кейс №1: Доступные лекарства для всех
Кейсодержатель: МинПромТорг России
Призовой фонд: 400 000 рублей 🤑
На основе представленных датасетов и открытых данных разработать модель машинного обучения для анализа складских запасов лекарственных препаратов по регионам России в целях нормализации потребительского рынка за счет прогнозирования потребности, спроса и предложения лекарств.
Кейс №2: Умные покупки от МТС
Кейсодержатель: MTS AI
Призовой фонд: 400 000 рублей 🤑
На основе представленных датасетов и открытых данных создать модель машинного обучения, рекомендующую льготные покупки карточным клиентам МТС-банка с указанием места, где можно совершить покупку, срока действия предложения, с учетом потребностей клиента и приоритетов банка.
Кейс №3: Лучшие проекты Рунета по мнению ИИ
Кейсодержатель: Премия Рунета
Призовой фонд: 200 000 рублей 🤑
Разработать алгоритм, способный самостоятельно выбирать по суммарным значениям всех показателей победителя в каждой номинации на основе критериев, используемых в оценке проектов, а также публичной активности каждой организации-номинанта и других открытых данных.
В этом кейсе участие возможно только онлайн. По итогам будет выбран один победитель.
Офлайн-площадка: Технопарк Ленполиграфмаш
️⚡️⚡️Это уникальная возможность:
▫️ внести вклад в развитие цифровой экономики страны;
▫️ прокачать скиллы;
▫️ пополнить портфолио крутым проектом;
▫️ пообщаться с экспертами
▫️ и вообще познакомиться с людьми, разделяющими твои интересы!
Стань частью российского ИИ-сообщества!
https://hacks-ai.ru/hakaton/sankt-peterburg
Ой не, не сегодня. С 12 по 14 ноября!
Хакатон по искусственному интеллекту 8/116 ⚡️
На этот раз 3 задачи на выбор.
Кейс №1: Доступные лекарства для всех
Кейсодержатель: МинПромТорг России
Призовой фонд: 400 000 рублей 🤑
На основе представленных датасетов и открытых данных разработать модель машинного обучения для анализа складских запасов лекарственных препаратов по регионам России в целях нормализации потребительского рынка за счет прогнозирования потребности, спроса и предложения лекарств.
Кейс №2: Умные покупки от МТС
Кейсодержатель: MTS AI
Призовой фонд: 400 000 рублей 🤑
На основе представленных датасетов и открытых данных создать модель машинного обучения, рекомендующую льготные покупки карточным клиентам МТС-банка с указанием места, где можно совершить покупку, срока действия предложения, с учетом потребностей клиента и приоритетов банка.
Кейс №3: Лучшие проекты Рунета по мнению ИИ
Кейсодержатель: Премия Рунета
Призовой фонд: 200 000 рублей 🤑
Разработать алгоритм, способный самостоятельно выбирать по суммарным значениям всех показателей победителя в каждой номинации на основе критериев, используемых в оценке проектов, а также публичной активности каждой организации-номинанта и других открытых данных.
В этом кейсе участие возможно только онлайн. По итогам будет выбран один победитель.
Офлайн-площадка: Технопарк Ленполиграфмаш
️⚡️⚡️Это уникальная возможность:
▫️ внести вклад в развитие цифровой экономики страны;
▫️ прокачать скиллы;
▫️ пополнить портфолио крутым проектом;
▫️ пообщаться с экспертами
▫️ и вообще познакомиться с людьми, разделяющими твои интересы!
Стань частью российского ИИ-сообщества!
https://hacks-ai.ru/hakaton/sankt-peterburg
🧐ИИ предсказывает, сколько лет детям. Насколько это безопасно?
Сегодня любой контент принято ограничивать по возрасту, указывая минимальное количество лет его потенциального потребителя. Всем известна маркировка фильмов 18+. А в большинстве соцсетей самостоятельно создавать учетные записи могут пользователи старше 13 лет. Неудивительно, что технологии распознавания лиц применяются и для определения возраста потребителей контента или пользователей. Если смотреть дальше, ИИ может спрогнозировать, как человек будет выглядеть в старости: вспомним недавний бум FaceApp.
Аналогично, решения компании Yoti для оценки возраста имеют погрешность менее 3-х лет для диапазона от 6 до 60 лет. Для пользователей младше 25 лет допустимая погрешность составляет менее 1,5 лет. В ближайшие несколько недель они запустятся в крупных сетях супермаркетов в Великобритании, чтобы, например, чтобы предупредить продажу алкоголя несовершеннолетним. Yoti обучила свои нейронные сети с помощью сотен тысяч изображений лиц людей из их официальных документов (паспорта и водительские права). Из-за высокой опасности утечки таких конфиденциальных данных очень значима другие игроки рынка распознавания лиц заявляют, что проверка возраста по возможности должна производиться без анализа самого лица или других биометрических данных.
https://www.wired.com/story/ai-predicts-how-old-children-are/
Сегодня любой контент принято ограничивать по возрасту, указывая минимальное количество лет его потенциального потребителя. Всем известна маркировка фильмов 18+. А в большинстве соцсетей самостоятельно создавать учетные записи могут пользователи старше 13 лет. Неудивительно, что технологии распознавания лиц применяются и для определения возраста потребителей контента или пользователей. Если смотреть дальше, ИИ может спрогнозировать, как человек будет выглядеть в старости: вспомним недавний бум FaceApp.
Аналогично, решения компании Yoti для оценки возраста имеют погрешность менее 3-х лет для диапазона от 6 до 60 лет. Для пользователей младше 25 лет допустимая погрешность составляет менее 1,5 лет. В ближайшие несколько недель они запустятся в крупных сетях супермаркетов в Великобритании, чтобы, например, чтобы предупредить продажу алкоголя несовершеннолетним. Yoti обучила свои нейронные сети с помощью сотен тысяч изображений лиц людей из их официальных документов (паспорта и водительские права). Из-за высокой опасности утечки таких конфиденциальных данных очень значима другие игроки рынка распознавания лиц заявляют, что проверка возраста по возможности должна производиться без анализа самого лица или других биометрических данных.
https://www.wired.com/story/ai-predicts-how-old-children-are/
Wired
This AI Predicts How Old Children Are. Can It Keep Them Safe?
Yoti’s tech may be enticing for Big Tech companies: It works out if you’re under or over 13, the age most social media platforms require to create an account.
😜ML для защиты детей
В США каждый седьмой ребенок за последний год подвергся жестокому обращению или пренебрежению. Американские агентства по защите детей ежегодно получают несколько миллионов сообщений о предполагаемом пренебрежении или жестоком обращении. Поэтому некоторые агентства внедряют ML, чтобы помочь специалистам проверять дела и определять, какие следует расследовать дальше. Но эти ML-модели бесполезны, если пользователи не понимают их результатов и не доверяют им.
Поэтому учение из MIT и других организаций разработали инструмент визуальной аналитики, который использует гистограммы, чтобы показать, как конкретные факторы дела влияют на прогнозируемый риск того, что ребенок останется без дома в течение ближайших двух лет. Эта оценка риска основана на более чем 100 демографических и исторических факторах, включая возраст родителей и наличие судимостей. Протестировав созданное решение, разработчики сделали выводы о необходимости улучшить визуализацию и интерпретируемость прогнозов, чтобы избежать опасных искажений в принятии важных решений.
https://news.mit.edu/2021/machine-learning-high-stakes-1028
В США каждый седьмой ребенок за последний год подвергся жестокому обращению или пренебрежению. Американские агентства по защите детей ежегодно получают несколько миллионов сообщений о предполагаемом пренебрежении или жестоком обращении. Поэтому некоторые агентства внедряют ML, чтобы помочь специалистам проверять дела и определять, какие следует расследовать дальше. Но эти ML-модели бесполезны, если пользователи не понимают их результатов и не доверяют им.
Поэтому учение из MIT и других организаций разработали инструмент визуальной аналитики, который использует гистограммы, чтобы показать, как конкретные факторы дела влияют на прогнозируемый риск того, что ребенок останется без дома в течение ближайших двух лет. Эта оценка риска основана на более чем 100 демографических и исторических факторах, включая возраст родителей и наличие судимостей. Протестировав созданное решение, разработчики сделали выводы о необходимости улучшить визуализацию и интерпретируемость прогнозов, чтобы избежать опасных искажений в принятии важных решений.
https://news.mit.edu/2021/machine-learning-high-stakes-1028
MIT News
Making machine learning more useful to high-stakes decision makers
Researchers from MIT and elsewhere studied the machine learning usability challenges in child welfare screening and then developed a tool to help social workers understand and trust the risk predictions generated by a machine learning model.
3 декабря в Москве (и онлайн) пройдет конференция по разговорному AI для разработчиков и бизнеса Conversations 🔥 В этом году ключевые темы конференции — machine learning, синтез речи, речевая аналитика. Среди спикеров Conversations’21 — эксперты Yandex.Cloud, Сколтеха, Replika.ai, DeepPavlov, Skyeng, Speechmate, Huawei, SmartMarket и других компаний.
Вот 5 докладов конференции, которые ну просто нельзя пропустить:
☝🏻Сколтех — о том, как устроена автоматическая детоксикация текстов для борьбы с ненормативной лексикой и как можно фильтровать и перефразировать токсичные реплики в диалоговых системах.
✌️Skyeng — про то, как на основе даже короткой речи оценить уровень знания английского языка и произношение: как устроен препроцессинг с применением эвристик и 1dConv-сетей, зачем потребовалась оптимизация на Rust и как делить на части длинное аудио использования языка на разных уровнях владения (и почему BERT и Fasttext не подошли).
🤟🏻 Yandex.Cloud — о том, сколько MLOps можно оставить на датасайентисте на примере речевых технологий.
🖖🏼 Replika.ai — о том, как они отказались от Open AI и теперь радуются жизни (интригующе!).
🖐 Speechmate — о технологических новшествах smart-аудиоустройств с точки зрения «железа» на примере умных бейджей и о том, как подружить сервисы речевой аналитики с хардверной платформой.
Больше тем и спикеров на сайте Conversations.
🥳 Всем читателям канала организаторы предлагают специальный промокод на покупку билета с 10% скидкой: CONVS*BdS
https://conversations-ai.com/?utm_source=bds_ru&utm_medium=posttelegram&utm_campaign=conversations
Вот 5 докладов конференции, которые ну просто нельзя пропустить:
☝🏻Сколтех — о том, как устроена автоматическая детоксикация текстов для борьбы с ненормативной лексикой и как можно фильтровать и перефразировать токсичные реплики в диалоговых системах.
✌️Skyeng — про то, как на основе даже короткой речи оценить уровень знания английского языка и произношение: как устроен препроцессинг с применением эвристик и 1dConv-сетей, зачем потребовалась оптимизация на Rust и как делить на части длинное аудио использования языка на разных уровнях владения (и почему BERT и Fasttext не подошли).
🤟🏻 Yandex.Cloud — о том, сколько MLOps можно оставить на датасайентисте на примере речевых технологий.
🖖🏼 Replika.ai — о том, как они отказались от Open AI и теперь радуются жизни (интригующе!).
🖐 Speechmate — о технологических новшествах smart-аудиоустройств с точки зрения «железа» на примере умных бейджей и о том, как подружить сервисы речевой аналитики с хардверной платформой.
Больше тем и спикеров на сайте Conversations.
🥳 Всем читателям канала организаторы предлагают специальный промокод на покупку билета с 10% скидкой: CONVS*BdS
https://conversations-ai.com/?utm_source=bds_ru&utm_medium=posttelegram&utm_campaign=conversations
Conversations-Ai
Conversations – конференция по генеративному AI в бизнесе, продуктах и разработке.
Кейсы и стратегии, ROI и масштабирование GenAI-решений, AI-агенты и MAS, AI-инфраструктура и безопасность, SLM, экономика и жизненный цикл AI-продуктов, UX и метрики GenAI.
📝👀Fastparquet: читаем Parqufet-файлы с помощью Python
Apache Parquet – это бинарный колоночно-ориентированный формат хранения данных, изначально созданный для экосистемы Hadoop. Благодаря сжатому и эффективному представлению данных по столбцам, он очень популярен в мире Big Data. Однако, прочитать данные в формате Parquet – не самая простая задача. PySpark, конечно, справится с этим, но далеко не каждый Data Scientist работает с данными в Apache Spark. В этом случае поможет fastparquet - реализация формата Parquet на Python, которая используется проектами Dask, Pandas и др., обеспечивая высокую производительность при малом размере дистрибутива и небольшой кодовой базе. Fastparquet зависит от набора Python-библиотек (numpy, pandas, cramjam, fsspec), поэтому их следует установить заранее.
После установки через PIP-менеджер пакетов (pip install fastparquet) или с Github (pip install git+https://github.com/dask/fastparquet) содержимое Parquet-файла можно без труда передать в датафрейм в вашей привычной DS-IDE, например, Jupiter Notebook:
from fastparquet import ParquetFile
pf = ParquetFile('myfile.parq')
df = pf.to_pandas()
df2 = pf.to_pandas(['col1', 'col2'], categories=['col1'])
Или записать датафрейм в Parquet-файл, указав количество логических сегментов, кодек сжатия и схему данных:
from fastparquet import write
write('outfile.parq', df)
write('outfile2.parq', df, row_group_offsets=[0, 10000, 20000],
compression='GZIP', file_scheme='hive')
https://github.com/dask/fastparquet
https://www.anaconda.com/blog/whats-new-with-fastparquet
https://blog.datasyndrome.com/using-the-python-ml-stack-inside-pyspark-de1223942c32
https://fastparquet.readthedocs.io/en/latest/
Apache Parquet – это бинарный колоночно-ориентированный формат хранения данных, изначально созданный для экосистемы Hadoop. Благодаря сжатому и эффективному представлению данных по столбцам, он очень популярен в мире Big Data. Однако, прочитать данные в формате Parquet – не самая простая задача. PySpark, конечно, справится с этим, но далеко не каждый Data Scientist работает с данными в Apache Spark. В этом случае поможет fastparquet - реализация формата Parquet на Python, которая используется проектами Dask, Pandas и др., обеспечивая высокую производительность при малом размере дистрибутива и небольшой кодовой базе. Fastparquet зависит от набора Python-библиотек (numpy, pandas, cramjam, fsspec), поэтому их следует установить заранее.
После установки через PIP-менеджер пакетов (pip install fastparquet) или с Github (pip install git+https://github.com/dask/fastparquet) содержимое Parquet-файла можно без труда передать в датафрейм в вашей привычной DS-IDE, например, Jupiter Notebook:
from fastparquet import ParquetFile
pf = ParquetFile('myfile.parq')
df = pf.to_pandas()
df2 = pf.to_pandas(['col1', 'col2'], categories=['col1'])
Или записать датафрейм в Parquet-файл, указав количество логических сегментов, кодек сжатия и схему данных:
from fastparquet import write
write('outfile.parq', df)
write('outfile2.parq', df, row_group_offsets=[0, 10000, 20000],
compression='GZIP', file_scheme='hive')
https://github.com/dask/fastparquet
https://www.anaconda.com/blog/whats-new-with-fastparquet
https://blog.datasyndrome.com/using-the-python-ml-stack-inside-pyspark-de1223942c32
https://fastparquet.readthedocs.io/en/latest/
GitHub
GitHub - dask/fastparquet: python implementation of the parquet columnar file format.
python implementation of the parquet columnar file format. - dask/fastparquet
Какой город зачастую называют «Воротами в Сибирь»?
Конечно, это Челябинск ⚡️⚡️
Хакатон по искусственному интеллекту 9/116
👁 Кейс №1 от Росаккредитации: ИИ на страже качества российских товаров
Создать модель для выявление ошибок валидации товаров производителем и автоматического присвоения кода Единого перечня продукции Российской Федерации (ЕП РФ) для новой выпускаемой продукции на основе следующих данных:
▪️текстовое описание продукции (~1 предложение/ абзац) от производителя;
▪️ код, присвоенный производителем (может содержать до 5% ошибок);
▪️ категория и подкатегория.
Код ЕП РФ определяет, какие тесты на безопасность для потребителей проходит тот или иной товар, поэтому очень важно точно определять его тип. Модель машинного обучения позволит полностью автоматизировать этот процесс и снизить процент ошибок.
👁 Кейс №2 от АО «ЧРЗ Полет»: Цифровой авиадиспетчер
Создать систему автоматического видеосопровождения воздушного судна при заходе на посадку с применением элементов ИИ, определяющего отклонения самолета от заданной траектории курса и глиссады по одному каналу видеоизображения. Существующие системы определения дальности применяют активные технические средства в виде радаров, лазерных дальномеров или требуют разворачивания распределенной системы триангуляционного определения (стереозрение и т.д.).
Общий призовой фонд: 800 000 рублей 😈
Офлайн: Radisson Blu Hotel Chelyabinsk, ул. Труда, 179
Регистрируйся на сайте до 17 ноября!
Стань частью российского ИИ-сообщества ⚡️⚡️
#hacksai #хакатоныИИ #ИскусственныйИнтеллект
https://hacks-ai.ru/hakaton/chelyabinsk
Конечно, это Челябинск ⚡️⚡️
Хакатон по искусственному интеллекту 9/116
👁 Кейс №1 от Росаккредитации: ИИ на страже качества российских товаров
Создать модель для выявление ошибок валидации товаров производителем и автоматического присвоения кода Единого перечня продукции Российской Федерации (ЕП РФ) для новой выпускаемой продукции на основе следующих данных:
▪️текстовое описание продукции (~1 предложение/ абзац) от производителя;
▪️ код, присвоенный производителем (может содержать до 5% ошибок);
▪️ категория и подкатегория.
Код ЕП РФ определяет, какие тесты на безопасность для потребителей проходит тот или иной товар, поэтому очень важно точно определять его тип. Модель машинного обучения позволит полностью автоматизировать этот процесс и снизить процент ошибок.
👁 Кейс №2 от АО «ЧРЗ Полет»: Цифровой авиадиспетчер
Создать систему автоматического видеосопровождения воздушного судна при заходе на посадку с применением элементов ИИ, определяющего отклонения самолета от заданной траектории курса и глиссады по одному каналу видеоизображения. Существующие системы определения дальности применяют активные технические средства в виде радаров, лазерных дальномеров или требуют разворачивания распределенной системы триангуляционного определения (стереозрение и т.д.).
Общий призовой фонд: 800 000 рублей 😈
Офлайн: Radisson Blu Hotel Chelyabinsk, ул. Труда, 179
Регистрируйся на сайте до 17 ноября!
Стань частью российского ИИ-сообщества ⚡️⚡️
#hacksai #хакатоныИИ #ИскусственныйИнтеллект
https://hacks-ai.ru/hakaton/chelyabinsk
🌏Цифровой двойник Земли от NVIDIA
Чтобы бороться с климатическими катастрофами, NVIDIA собирается создать самый мощный в мире ИИ-суперкомпьютер для прогнозирования изменения климата. Эта система создаст цифрового двойника Земли во Вселенной и станет аналогом Cambridge-1, самого мощного в мире суперкомпьютера с искусственным интеллектом для медицинских исследований. Объединив три технологии: вычисления с ускорением на GPU, глубокое обучение на нейросетях и суперкомпьютеры AI с множеством наблюдаемых и модельных данных, ученые и инженеры собираются добиться точного моделирования физических, биологических и химических процессов на Земле. Это поможет формировать ранние предупреждения для адаптации и повышения устойчивости городской инфраструктуры, чтобы люди и страны действовали оперативно, предупреждая климатические катастрофы.
https://blogs.nvidia.com/blog/2021/11/12/earth-2-supercomputer/
Чтобы бороться с климатическими катастрофами, NVIDIA собирается создать самый мощный в мире ИИ-суперкомпьютер для прогнозирования изменения климата. Эта система создаст цифрового двойника Земли во Вселенной и станет аналогом Cambridge-1, самого мощного в мире суперкомпьютера с искусственным интеллектом для медицинских исследований. Объединив три технологии: вычисления с ускорением на GPU, глубокое обучение на нейросетях и суперкомпьютеры AI с множеством наблюдаемых и модельных данных, ученые и инженеры собираются добиться точного моделирования физических, биологических и химических процессов на Земле. Это поможет формировать ранние предупреждения для адаптации и повышения устойчивости городской инфраструктуры, чтобы люди и страны действовали оперативно, предупреждая климатические катастрофы.
https://blogs.nvidia.com/blog/2021/11/12/earth-2-supercomputer/
NVIDIA Blog
NVIDIA to Build Earth-2 Supercomputer to See Our Future
NVIDIA plans to build the world’s most powerful AI supercomputer dedicated to predicting climate change, named Earth-2.
🕸🐅Более 50 новых графовых алгоритмов в TigerGraph: осенний релиз 2021
TigerGraph - это популярная быстрая и масштабируемая графовая СУБД с массивно параллельной обработкой и поддержкой ACID-транзакций, что делает ее самой быстрой и самой масштабируемой графической платформой. Благодаря эффективному сжатию данных и MPP-архитектуре она может анализировать огромные объемы информации в режиме реального времени. А внутренний язык запросов GSQL очень похож на стандартный SQL, знакомый каждому аналитику.
Октябрьский релиз 2021 года включает 50 новых алгоритмов, например, встроенные графы node2vec и FastRP, алгоритмы подобия («Аппроксимация ближайших соседей», «Евклидово сходство», «Сходство с перекрытием» и «Сходство Пирсона»), алгоритмы структурного подобия для прогнозирования топологических связей и алгоритмы случайного пути. В первой половине 2022 года разработчики обещают добавить нейросети и другие ML-методы для построения аналитических конвейеров на графах. При том, что TigerGraph позиционируется как мощное корпоративное решение, исходный код этой системы открыт и доступен для свободного скачивания с Github.
https://www.tigergraph.com/blogs/about-tigergraph/graph-data-science-library/
https://github.com/tigergraph
TigerGraph - это популярная быстрая и масштабируемая графовая СУБД с массивно параллельной обработкой и поддержкой ACID-транзакций, что делает ее самой быстрой и самой масштабируемой графической платформой. Благодаря эффективному сжатию данных и MPP-архитектуре она может анализировать огромные объемы информации в режиме реального времени. А внутренний язык запросов GSQL очень похож на стандартный SQL, знакомый каждому аналитику.
Октябрьский релиз 2021 года включает 50 новых алгоритмов, например, встроенные графы node2vec и FastRP, алгоритмы подобия («Аппроксимация ближайших соседей», «Евклидово сходство», «Сходство с перекрытием» и «Сходство Пирсона»), алгоритмы структурного подобия для прогнозирования топологических связей и алгоритмы случайного пути. В первой половине 2022 года разработчики обещают добавить нейросети и другие ML-методы для построения аналитических конвейеров на графах. При том, что TigerGraph позиционируется как мощное корпоративное решение, исходный код этой системы открыт и доступен для свободного скачивания с Github.
https://www.tigergraph.com/blogs/about-tigergraph/graph-data-science-library/
https://github.com/tigergraph
TigerGraph
TigerGraph Graph Algorithms | Obtain Insights at Scale
Graph algorithms are essential building blocks for analyzing your connected data and for AI methods which gain deeper insights from that data
🚨Серия митапов про Data Science в геосервисах, логистике и приложениях Smart City продолжается!
📆 23 ноября ждём всех на 4-й Citymobil Data Meetup!
Если перед вами стоят задачи, которые связаны с городской мобильностью, системой маршрутизации доставки, то вам точно будет интересно!
🚕 Михаил Дьячков, Data Science Team Lead Ситимобил
«Поисковые подсказки в Ситимобил: от эвристики до машинного обучения».
Миша расскажет, как работает алгоритм формирования поисковых подсказок конечных пунктов назначения в приложении Ситимобил.
🚗 Алексей Венжега, Head of Analytics Wheely
«Системный подход к разработке целевых метрик улучшения качества шоферской базы».
🚙 Алексей Кудинов, Product Manager Почтатех
«Как мы разбираемся с адресными данными, которым больше 100 лет»
Алексей напомнит о сложностях, с которыми компания сталкивалась при внедрении автоматической маршрутизации: о несуществующих адресах, неизвестных геокординатах и проблемы определения габаритов отправлений для оптимального заполнения транспорта.
После докладов будет сессия Q&A.
Регистрация для бесплатного участия по ссылке ниже
https://citymobil.timepad.ru/event/1838143/
📆 23 ноября ждём всех на 4-й Citymobil Data Meetup!
Если перед вами стоят задачи, которые связаны с городской мобильностью, системой маршрутизации доставки, то вам точно будет интересно!
🚕 Михаил Дьячков, Data Science Team Lead Ситимобил
«Поисковые подсказки в Ситимобил: от эвристики до машинного обучения».
Миша расскажет, как работает алгоритм формирования поисковых подсказок конечных пунктов назначения в приложении Ситимобил.
🚗 Алексей Венжега, Head of Analytics Wheely
«Системный подход к разработке целевых метрик улучшения качества шоферской базы».
🚙 Алексей Кудинов, Product Manager Почтатех
«Как мы разбираемся с адресными данными, которым больше 100 лет»
Алексей напомнит о сложностях, с которыми компания сталкивалась при внедрении автоматической маршрутизации: о несуществующих адресах, неизвестных геокординатах и проблемы определения габаритов отправлений для оптимального заполнения транспорта.
После докладов будет сессия Q&A.
Регистрация для бесплатного участия по ссылке ниже
https://citymobil.timepad.ru/event/1838143/
citymobil.timepad.ru
Citymobil Data Meetup №4 / События на TimePad.ru
Ситимобил каждый месяц проводит митапы о применении Data science в городских и геосервисах, логистике и технологиях умных городов.
Добавляйтесь в наш телеграм-канал, чтобы быть в курсе новостей https://t.me/citymobiltech .
Добавляйтесь в наш телеграм-канал, чтобы быть в курсе новостей https://t.me/citymobiltech .
🙌🏻Анализ главных компонент: 7 методов сокращения размерности в Scikit-Learn
Одна из главных проблем машинного обучения на больших наборах данных – это огромный размер вычислительных векторов. Поэтому способы снижения размерности для уменьшения количества переменных очень актуальны. Таким способом является анализ главных компонентов (PCA, Principal Component Analysis), суть которого в уменьшении размерности набора данных, сохранив при этом как можно больше «изменчивости», т.е. статистической информации.
PCA - это статистический метод преобразования данных большой размерности в данные низкой размерности путем выбора наиболее важных фич, которые собирают максимум информации о датасете. Фичи выбираются на основе отклонений, которые они вызывают в выходных данных. Признак, вызывающий наибольшую дисперсию, - это первый главный компонент. Признак, отвечающий за вторую по величине дисперсию, считается вторым главным компонентом и пр. Важно, что главные компоненты никак не связаны друг с другом. Помимо ускорения ML-алгоритмов, PCA позволяет визуализировать данные, проецируя их в более низкое измерение, чтобы отобразить в двухмерном или трехмерном пространстве.
Популярная Python-библиотека Scikit-learn включает модуль sklearn.decomposition.PCA, который реализован как объект-преобразователь для множества компонентов в методе fit(). Его также можно использовать для новых данных, чтобы проецировать их на эти компоненты. Чтобы воспользоваться методом PCA в библиотеке Scikit-Learn, следует выполнить 2 шага:
1. Инициализировать класс PCA, передав нужное количество компонентов конструктору;
2. вызвать методы подгонки, а затем преобразовать их, передав им набор фичей. Метод преобразования возвращает указанное количество основных компонентов.
Scikit-learn поддерживает несколько вариантов метода PCA:
• Kernel Principal Component Analysis (KPCA) - метод нелинейного уменьшения размерности с использованием ядра. Ядро PCA было разработано, чтобы помочь с классификацией данных, границы решения которых описываются нелинейной функцией. Идея состоит в том, чтобы перейти в пространство более высокого измерения, в котором граница принятия решения становится линейной. В модуле sklearn.decomposition есть разные ядра: линейное (linear), полиномиальное (poly), ядро гауссовой радиальной базисной функции (rbf), сигмоидальное (sigmoid') и пр. По умолчанию используется линейное (linear), что подходит, если данные линейно разделимы.
• Sparse PCA – разреженный вариант PCA, целью которого является извлечение набора разреженных компонентов, которые наилучшим образом восстанавливают данные. Обычно компоненты, извлеченные методом PCA, имеют исключительно плотные выражения, т.е. ненулевые коэффициенты как линейные комбинации исходных переменных. Это затрудняет интерпретацию результатов. На практике реальные главные компоненты можно более естественно представить как разреженные векторы, например, при распознавании лиц они могут отображать части лиц.
• Incremental Principal Component Analysis (IPCA) - инкрементный метод PCA, когда набор данных для декомпозиции слишком велик для размещения в памяти. IPCA строит приближение низкого ранга для входных данных, используя объем памяти, не зависящий от объема входной выборки. Он по-прежнему зависит от входных фичей, но изменение размера пакета позволяет контролировать использование памяти.
• Fast Independent Component Analysis (ICA) – быстрый независимый PCA используется для оценки источников с учетом зашумленных измерений и восстановления источников, поскольку классический PCA не работает с негауссовскими процессами.
Одна из главных проблем машинного обучения на больших наборах данных – это огромный размер вычислительных векторов. Поэтому способы снижения размерности для уменьшения количества переменных очень актуальны. Таким способом является анализ главных компонентов (PCA, Principal Component Analysis), суть которого в уменьшении размерности набора данных, сохранив при этом как можно больше «изменчивости», т.е. статистической информации.
PCA - это статистический метод преобразования данных большой размерности в данные низкой размерности путем выбора наиболее важных фич, которые собирают максимум информации о датасете. Фичи выбираются на основе отклонений, которые они вызывают в выходных данных. Признак, вызывающий наибольшую дисперсию, - это первый главный компонент. Признак, отвечающий за вторую по величине дисперсию, считается вторым главным компонентом и пр. Важно, что главные компоненты никак не связаны друг с другом. Помимо ускорения ML-алгоритмов, PCA позволяет визуализировать данные, проецируя их в более низкое измерение, чтобы отобразить в двухмерном или трехмерном пространстве.
Популярная Python-библиотека Scikit-learn включает модуль sklearn.decomposition.PCA, который реализован как объект-преобразователь для множества компонентов в методе fit(). Его также можно использовать для новых данных, чтобы проецировать их на эти компоненты. Чтобы воспользоваться методом PCA в библиотеке Scikit-Learn, следует выполнить 2 шага:
1. Инициализировать класс PCA, передав нужное количество компонентов конструктору;
2. вызвать методы подгонки, а затем преобразовать их, передав им набор фичей. Метод преобразования возвращает указанное количество основных компонентов.
Scikit-learn поддерживает несколько вариантов метода PCA:
• Kernel Principal Component Analysis (KPCA) - метод нелинейного уменьшения размерности с использованием ядра. Ядро PCA было разработано, чтобы помочь с классификацией данных, границы решения которых описываются нелинейной функцией. Идея состоит в том, чтобы перейти в пространство более высокого измерения, в котором граница принятия решения становится линейной. В модуле sklearn.decomposition есть разные ядра: линейное (linear), полиномиальное (poly), ядро гауссовой радиальной базисной функции (rbf), сигмоидальное (sigmoid') и пр. По умолчанию используется линейное (linear), что подходит, если данные линейно разделимы.
• Sparse PCA – разреженный вариант PCA, целью которого является извлечение набора разреженных компонентов, которые наилучшим образом восстанавливают данные. Обычно компоненты, извлеченные методом PCA, имеют исключительно плотные выражения, т.е. ненулевые коэффициенты как линейные комбинации исходных переменных. Это затрудняет интерпретацию результатов. На практике реальные главные компоненты можно более естественно представить как разреженные векторы, например, при распознавании лиц они могут отображать части лиц.
• Incremental Principal Component Analysis (IPCA) - инкрементный метод PCA, когда набор данных для декомпозиции слишком велик для размещения в памяти. IPCA строит приближение низкого ранга для входных данных, используя объем памяти, не зависящий от объема входной выборки. Он по-прежнему зависит от входных фичей, но изменение размера пакета позволяет контролировать использование памяти.
• Fast Independent Component Analysis (ICA) – быстрый независимый PCA используется для оценки источников с учетом зашумленных измерений и восстановления источников, поскольку классический PCA не работает с негауссовскими процессами.
• Linear Discriminant Analysis (LDA) - линейный дискриминантный анализ, как и классический PCA, является методом линейного преобразования. Но PCA не контролируется, т.е. игнорирует метки классов, а LDA - это контролируемое машинное обучение, которое используется для различения двух классов или групп. LDA подходит для контролируемого уменьшения размерности путем проецирования входных данных в линейное подпространство из направлений, которые максимизируют разделение между классами. Размерность вывода обязательно меньше количества классов. В scikit-learn LDA реализуется с помощью LinearDiscriminantAnalysis, где параметр n_components указывает количество возвращаемых функций.
• Non-negative Matrix Factorization (NMF) - неотрицательная матричная факторизация, альтернативный подход к декомпозиции, который предполагает, что данные и компоненты неотрицательны. NMF - это неконтролируемый метод уменьшения линейной размерности. В NMF исходные данные (матрица признаков) разбиваются на несколько матриц (т.е. разлагаются на множители), представляющие скрытые отношения между наблюдениями и их характеристиками. NMF можно подключить вместо PCA, когда матрица данных не содержит отрицательных значений. NMF не предоставляет объясненную дисперсию, как PCA и другие методы, поэтому лучший способ найти оптимальное значение n_components - это попробовать диапазон значений.
• Truncated Singular Value Decomposition (TSVD) - усеченное разложение по сингулярным значениям похоже на PCA. Этот метод выполняет уменьшение линейной размерности с помощью усеченного сингулярного разложения. В отличие от PCA, этот оценщик не центрирует данные перед вычислением разложения по сингулярным значениям и может эффективно работать с разреженными матрицами.
https://medium.com/@deepak.engg.phd/dimensionality-reduction-with-scikit-learn-ee5d2b69225b
• Non-negative Matrix Factorization (NMF) - неотрицательная матричная факторизация, альтернативный подход к декомпозиции, который предполагает, что данные и компоненты неотрицательны. NMF - это неконтролируемый метод уменьшения линейной размерности. В NMF исходные данные (матрица признаков) разбиваются на несколько матриц (т.е. разлагаются на множители), представляющие скрытые отношения между наблюдениями и их характеристиками. NMF можно подключить вместо PCA, когда матрица данных не содержит отрицательных значений. NMF не предоставляет объясненную дисперсию, как PCA и другие методы, поэтому лучший способ найти оптимальное значение n_components - это попробовать диапазон значений.
• Truncated Singular Value Decomposition (TSVD) - усеченное разложение по сингулярным значениям похоже на PCA. Этот метод выполняет уменьшение линейной размерности с помощью усеченного сингулярного разложения. В отличие от PCA, этот оценщик не центрирует данные перед вычислением разложения по сингулярным значениям и может эффективно работать с разреженными матрицами.
https://medium.com/@deepak.engg.phd/dimensionality-reduction-with-scikit-learn-ee5d2b69225b
Medium
Dimensionality Reduction with Scikit-Learn
As a matter of fact, when compression technology came along, we thought the future in 1996 was about voice. We got it wrong. It is about…