10 идиоматических приемов для эффективного программирования на Python
Программирование само по себе очень увлекательное занятие, а программирование на Python увлекательнее вдвойне, поскольку в данном языке существует много разных способов реализации одних и...
Топ-5 ошибок при объявлении функций в Python
Функции являются критическим компонентом в любом программном проекте. Написанные должным образом, они представляют собой практичный способ написания читаемого и поддерживаемого кода. Однако, если функции...
Как импортировать наборы данных Kaggle в Google Colab?
Хотите поработать с набором данных Kaggle в блокноте Colab? Предлагаем простейший пошаговый алгоритм загрузки набора данных Kaggle в Colab-среду.
Пересечение 3D-лучей (ближайшая точка)
Хотите разобраться в математической теории, лежащей в основе 3D-лучей? Предлагаем простое руководство по применению таких математических инструментов, как псевдообратные матрицы, оптимизация с помощью наименьших квадратов, метод Крамера, смешанное произведение.
Алгоритм поиска A*
Пошаговый разбор алгоритма поиска А*
Поиск короткого пути — это то, чем каждый занимается ежедневно. Алгоритм А *— один из самых популярных методов решения задач на поиск кратчайшего...
Четыре метода, которые повысят качество работы с Pandas
Знакомьтесь с "великолепной четверкой" методов - assign, map, query и explode. Это самые крутые фичи Pandas. Они сделают ваш код более ясным, элегантным и эффективным.
Bamboolib — изучайте и используйте Pandas без написания кода
Установка Bamboolib
Установка достаточно проста:
pip install bamboolib
Чтобы Bamboolib работал с Jupyter и Jupyterlab, нужно установить дополнительные расширения. С помощью следующей команды устанавливаются расширения для Jupyter...
MongoDB : проекция (Projection)
В MongoDB проекция означает выбор не всех данных документа, а только нужных. Например, эта операция позволяет из 5-ти полей, содержащихся в документе, отобразить только 3.
Статистика - это грамматика науки о данных. Часть 2
Повторение статистики для начала путешествия по науке о данных
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
Функции распределения вероятностей
Функция распределения вероятностей — это...
Менеджеры контекста в Python - выходим за пределы «with open() file»
Введение
В Python при работе с файлами наиболее распространённой функция open(), создающая объект типа файл, который в зависимости от ситуации позволяет читать или записывать данные....
BERT - коротко о главном
Предварительно обученные модели представления языка
Существует два способа использования предобученных языковых моделей: извлечение признаков (feature-based), когда представления предварительно обученной модели используются в качестве дополнительных функций...
Как автоматизировать сравнение датасетов с Terraform и BigQuery
Автоматизация проверки датасетов значительно упрощает жизнь. Узнаем, как же это сделать с помощью инструмента для управления облачной инфраструктурой Terraform и сервиса для анализа больших наборов данных BigQuery.
Завораживающая последовательность Фибоначчи
Занимаясь изучением обработки данных, расчётами, а также другими компьютерными и математическими операциями, мы сталкиваемся со многими алгоритмами. Несмотря на то, что иногда мы недолюбливаем...
25 прикольных вопросов для собеседования по машинному обучению
Могут ли вопросы на собеседовании по машинному обучению быть одновременно прикольными и глубокими?
25 вопросов, которые не просто проверят знания и навыки кандидата, но и...
4 пакета Python для причинно-следственного анализа данных
Эти 4 пакета Python - Causalinference, Causallib, Causalimpact и DoWhy - помогут овладеть навыками причинно-следственного анализа. Изучив эту область экспериментальной статистики, вы сможете устанавливать и обосновывать причинно-следственные связи при исследовании самых различных данных.
Как получить данные в нужном формате с помощью Pandas
Дата-сайентистам приходится работать с данными разных форматов. Разбираемся, в чем заключается разница между длинным и широким форматами данных, а также в том, как перейти от одного формата к другому в Pandas.
Создание локального озера данных с нуля
Настроим все необходимые службы и компоненты, в том числе оркестратор конвейера данных и SQL-движок, инициируем сеанс Spark для Apache-форматов Iceberg и Delta и выполним простой ETL-процесс. Заложим основу для более сложных конвейеров.
Байесовская статистика для специалистов по данным
Возможно, вы помните теорему Байеса как громоздкое уравнение из курса статистики, которое вам нужно было заучить. Но за ним кроется нечто большее. Эта теорема...
Пять направлений применения исследования операций
В последние годы область исследования операций процветала наряду с развитием вычислительной мощности. Сейчас многие организации используют этот подход, чтобы разрабатывать оперативные, тактические и даже...
Топ — 9 фреймворков в мире искусственного интеллекта
Сначала были роботы, затем ассистенты Google Now и Siri, а сегодня новый ИИ — Google Duplex. Похоже, искусственный интеллект добился определенных успехов в том чтобы стать...
Настройка Data Science окружения на вашем компьютере
После прохождения различных курсов и обучения на различных образовательных платформах, вроде Datacamp, вашим следующим шагом станет использование полученных знаний о Python, R, Git или...
К подготовке и публикации первого пакета Python готовы!
Python стал одним из самых широко используемых языков программирования. Главным образом объясняется это тем, что мы, его обычные пользователи, можем поделиться своим кодом, обеспечивая...
80 практических вопросов по Python для собеседования
Многие начинающие ученые в области данных начали свое путешествие по науке о данных с языка программирования Python. Почему Python? Потому что он легок в...
GraphSAGE: как масштабировать графовые нейронные сети до миллиардов соединений
GraphSAGE - это алгоритм обучения с индуктивным представлением, который применяется для работы с графами. Посмотрим, как он работает, и сравним его с аналогичными инструментами, чтобы выявить преимущества и недостатки.
Как учатся машины
С каждым днём машины становятся умнее. Когда вы заходите на YouTube, Amazon, или Facebook, то для вас автоматически подбираются рекомендованные видео, товары и посты....
29 сниппетов Pytorch для ускорения цикла машинного обучения
Мне очень нравится задействовать фрагменты кода для создания более быстрых циклов итераций по сравнению с традиционными конвейерами машинного обучения. Pytorch уже давно стал важной...
Анализ независимых компонент в Python
Предположим, вы на вечеринке беседуете с милой девушкой. Вас атакует множество звуков: разговоры людей по всему дому, громко играющая на фоне музыка. Тем не...
Реализация base64 на Rust
Практически каждый разработчик так или иначе использует base64. Но каков механизм работы этого алгоритма? Я считаю, что самый простой способ по-настоящему понять, как работает...
Статистические типы данных, используемые в машинном обучении
Введение в статистику
Статистика — это наука об изучении данных. Знания в этой области позволяют использовать подходящие методы сбора и анализа данных, а также эффективно представлять результаты...
Python: как заменить циклы For на Map, Filter и Reduce
Вы когда-нибудь смотрели на свой код и видели водопад из циклов for? Вам приходилось щурить глаза и наклоняться к монитору, чтобы рассмотреть его поближе?
Я...
11 шагов на пути к работе дата-сайентиста
Получить работу в области науки о данных, МО и ИИ сложно. Эти 11 шагов помогут стратегически подойти к решению этой проблемы (спойлер: Kaggle не относится к их числу).
Изучение нового языка для работы с данными
В постоянно меняющейся экосистеме инструментов для анализа данных вам придется часто изучать все новые и новые языки, чтобы идти в ногу со временем и...
Как добиться от моделей глубокого обучения большей генерализации?
Вы можете использовать IRM практически в любой базовой модельной структуре. Однако эта система наиболее эффективна, когда ее применяют к моделям черного ящика, оперирующим большим...
MLOps: как внедрить систему рекомендаций товаров на ecommerce-сайт
Умные инструменты - алгоритм Word2Vec и МО-сервис Layer - помогут быстро и дешево создать и внедрить модель рекомендаций и категоризации товаров на сайте электронной коммерции. В итоге пользователи платформы получат персонализированный опыт, а ее владелец сможет повысить конверсии и увеличить продажи.
Анализ аудиоданных с помощью глубокого обучения и Python (часть 1)
Введение
Аудиоанализ - область, включающая автоматическое распознавание речи (ASR), цифровую обработку сигналов, а также классификацию, тегирование и генерацию музыки - представляет собой развивающийся поддомен приложений...
Моделирование связей графа в DynamoDB
В основе Koan лежат его цели и то, как эти цели взаимосвязывают людей и команды внутри компании. Эти связи зачастую оказываются сложными, потому что...
Контейнеры это просто. Контейнерные технологии для начинающих
Вступление
Будь вы студент или уже состоявшийся разработчик, вы наверняка слышали о «контейнерах». Более того, вероятно вы слышали, что контейнеры — это «лёгкие» виртуальные машины....
Стоит ли винить Python в низкой производительности?
Признаюсь, что сейчас на работе я занимаюсь разработкой на Python, в связи с чем вы можете счесть мое мнение предвзятым. И все же мне...
Python 3.9
Что нового ожидает нас в этой версии и в будущих релизах?
Вышел полный релиз Python 3.9!
Очевидно, что эта версия знаменует собой переломный момент в эволюции Python....
Проект инженерии данных с DAG Airflow «от и до». Часть 2
Проверим корректность данных, отправим письмо и сообщение в Slack с информацией об адресе почты и пароле. Объединим все части проекта, создадим и запустим DAG Airflow со всеми задачами.
Классы данных в Python и их ключевые особенности
Значимым компонентом любого проекта в программировании являются данные, с которыми неизбежно взаимодействуют все программы. Например, при разработке веб-сайта вы должны представить тексты и изображения...
Слабо контролируемое обнаружение объектов - сквозной цикл обучения
Обнаружение объектов — широко известная задача компьютерного зрения, по которой было проведено огромное число исследований. Методы же контролируемого обнаружения объектов стали в этой области...
Я хочу изучать AI и машинное обучение. С чего мне начать?
Когда-то я работал в Apple Store и мечтал изменить свою жизнь: вместо обслуживания техники Apple, мне хотелось ее создавать.
Я начал изучать машинное обучение (ML)...
Пошаговое построение логистической регрессии в Python
Логистическая регрессия — это алгоритм классификации машинного обучения, используемый для прогнозирования вероятности категориальной зависимой переменной. В логистической регрессии зависимая переменная является бинарной переменной, содержащей данные, закодированные...
7 советов для эффективной визуализации данных
Одним из важных аспектов работы в области науки о данных является способность эффективно передавать результаты анализа с помощью разных способов визуализаций.
Данные — это история...
Теория графов в кратком и практичном изложении
Графы являются очень полезной в программировании структурой, поскольку зачастую задачи компьютерной науки можно представить в виде графа и решить с помощью одной из его...
Анализ текста средствами языка программирования R
“Люди часто восхваляют классические произведения, даже не читая их”, — Марк Твен.
Надеюсь, что ваш опыт опровергает это высказывание Марка Твена, а также верю, что вы всё-таки...
Структуры данных: кольцевой (циклический, замкнутый) связный список
Кольцевой связный список - это разновидность связного списка, при которой первый элемент указывает на последний, а последний - на первый. Кольцевой связный список можно сделать как из односвязного , так и из двусвязного списка.
Сумасшедший способ проверить, является ли число простым, используя регулярное выражение
В поисках алгоритмов для выявления простых чисел, вы где-нибудь, да встречали подобное выражение:
Что это? Это способ проверки, является ли число простым. Вам даже не...
Под покровом капустного листа: шаблон Декоратор
Я родилась в городке, расположенном на западном берегу реки Амур на Дальнем востоке России. Эта область известна своим влажным континентальным климатом, для которого характерны...
Структуры данных: массивы
Предыдущая часть: "Структуры данных: основные понятия"
Массив — это контейнер, содержащий фиксированное количество элементов одного типа. В большинстве структур данных массивы используются для реализации алгоритмов.
Вот термины, необходимые...
Как я устроил пожизненный запас чесночных пицца-палочек с помощью Python и Selenium
Не знаю как вы, а я обожаю пиццу, особенно вместе с чесночными палочками от «Папа Джонс». И когда мне пришло это сообщение после последнего...
Анализ автоаварий в Барселоне с использованием Pandas, Matplotlib и Folium
Open Data Barcelona - это сервис, предоставляющий наборы данных Барселоны, который содержит около 400 наборов, охватывающих широкий спектр тем, таких как население, бизнес и...
Python: 5 ошибок в применении охвата списка
Охват списка, (далее ОС), бесспорно, самая мощная возможность Python, которая может оказаться невероятно эффективным инструментом, но может и сильно снизить читаемость кода. Рассмотрим несколько...
Шардинг как паттерн архитектуры базы данных
Представляем полезный инструмент для работы с базами данных - шардинг. Узнайте, что это такое, какие типы и стратегии шардинга используются, в чем преимущества и сложности этого архитектурного паттерна.
Структуры данных: основные понятия
Предыдущая часть: "Структуры данных: динамическое программирование"
Определение данных
Это определение конкретных данных со следующими характеристиками:
атомарность, то есть определяется единое понятие.отслеживаемость, т. е. определение должно сопоставляться с...
MongoDB: создание и удаление коллекции
Рассмотрим создание и удаление коллекции с помощью команд createCollection() и drop().
Статистика - это грамматика науки о данных. Часть 1
Повторение статистики для начала путешествия по науке о данных
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
«Статистика — это грамматика науки»
Данное высказывание приписывают английскому математику...
Как удалить одинаковые данные из отсортированного массива
Задача
Имеется отсортированный массив nums. Необходимо удалить из него одинаковые данные так, чтобы один элемент появлялся только один раз и возвращал новое число элементов.
Не нужно...
Как инструменты дизайна интерфейса и визуализации способствуют развитию Machine Teaching?
Разметка данных для машинного обучениянесет в себе ряд проблем и сложностей. Поэтому нам понадобится лучший подход, который ценит человеческий опыт и управляет расходами, а...
Настоящие беспилотные такси выезжают на улицы города
Компания Waymo официально запускает парк беспилотных автомобилей в городе Финикс
Waymo — компания по производству беспилотных автомобилей, вышедшая из Google в 2016 году, наконец выполнит своё...
8 способов “настроить” Data-команду на успех. Часть вторая
Предыдущие части: Часть 1
Другие лучшие практики
Далее я привожу вымышленные сценарии, рассматривая общие стратегии, которые менеджеры должны использовать, чтобы не навредить своей Data-команде.
2) Ищите «Систематические ошибки...
Моделирование данных в мире современного стека данных 2.0
Сравнивать моделирование данных со стеком данных - все равно что уподоблять автомобили интеллектуальным навигационным системам. Предлагаем на практических примерах убедиться в том, что технологии современного стека данных позволяют аналитикам успешно вести исследования без моделирования.
Автоматическое создание музыки с помощью искусственного интеллекта
Раз уж мы в начале 2021 года, то должны затронуть тему, о которой много говорилось в последнее время. По мере того, как всё больше...
ClickHouse + Kafka = ❤
Узнаем, как внедрить в проект средство аналитики, на что способен ClickHouse в сочетании с Kafka и для чего нужны здесь материализованные представления. Построим небольшую аналитическую систему.
Apache Spark: гайд для новичков
Что такое Apache Spark?
Специалисты компании Databricks, основанной создателями Spark, собрали лучшее о функционале Apache Spark в своей книге Gentle Intro to Apache Spark (очень рекомендую...
Как с помощью Python создавать математическую мультипликацию типа 3Blue1Brown
Для чего нужна математическая мультипликация?
Вы когда-нибудь пытались освоить математические концепции алгоритма машинного обучения с помощью образовательного ресурса 3Blue1Brown? 3Blue1Brown — это знаменитый математический канал...
Что такое большие данные: комплексный обзор
Большие данные появились в конце 2000-х годов и стали настоящим технологическим прорывом. Предлагаем поразмышлять над тем, в чем суть этого феномена, как он позволяет оптимизировать бизнес-процессы и как им можно управлять.
DetectoRS - новейшее средство обнаружения объектов от Google Research
В области компьютерного зрения не прекращается поиск новых техник, алгоритмов и сквозных обучаемых конвейеров для задач по обнаружению объектов и сегментации изображений. Каждый год...
Тестирование больших данных: руководство для начинающих
Что такое тестирование больших данных, и с какими проблемами можно столкнуться в этом процессе? Расскажем про основные типы, способы и инструменты тестирования больших данных.
Развёртывание модели машинного обучения в виде REST API
В статье вы узнаете, как разворачивать модели машинного обучения и составлять прогнозы при помощи любого языка программирования, который вам нравится. Конечно, за основу вы...
Сложные ИИ-модели созданы с помощью некачественных данных
Те, кто занят в сфере искусственного интеллекта, в том числе и в проекте Deepnews, часто презентуют свои новейшие модели как инновационные и эффективные средства...
4 способа добавления колонок в датафреймы Pandas
Pandas — это библиотека для анализа и обработки данных, написанная на языке Python. Она предоставляет множество функций и способов для управления табличными данными. Основная структура данных...
Система инженерии данных «от и до» с Kafka, Spark, Airflow, Postgres и Docker. Часть 1
Создадим простой, но функциональный конвейер, подробно рассмотрим каждый его компонент: от настройки Kafka для потоковой передачи данных и оркестрации задач с Airflow до обработки данных со Spark и их сохранения в PostgreSQL. Сделаем акцент на практическом применении инструментов с Docker.
ИИ: постижение законов сверхразума
Термин “искусственный интеллект” похож на чемодан: каждый набивает его своим содержанием. Ученые тоже не могут достичь консенсуса в определении машинного разума. От этого в...
Алгоритмы ограничения скорости
Для чего нужно ограничение скорости API
Ограничение скорости помогает защитить сервисы от злонамеренных поведений, нацеленных на протоколы прикладного уровня. К числу таких поведений относятся DoS-атаки (атаки...
Как за месяц создать систему учета посещаемости на базе распознавания лиц
Нестандартные решения - верные помощники в разработке инноваций. Представляем инновационный проект управления посещаемостью, созданный двумя инженерами-программистами менее чем за месяц.
Автоматизация Doom с глубоким Q-обучением: реализация в Tensorflow
Введение
Методы онлайнового обучения машин (ОО) — это семейство динамических алгоритмов обучения с подкреплением, которое стоит за кулисами многих достижений во всей области ИИ за последние десять...
Руководство к использованию деревьев решений в машинном обучении и науке о данных
Деревья решений являются классом очень эффективной модели машинного обучения, позволяющей получить высокую точность в решении многих задач, сохраняя при этом высокий уровень интерпретации. Четкость...
Почему точные модели не всегда полезны
Утверждение, которое кажется парадоксальным: точность модели - не главный признак ее эффективности! Важно также разработать продукт, оправданный с денежной точки зрения. Сегодня поговорим о том, как функции экономической полезности помогают связать МО-модели с нуждами клиентов.
Как обнаружить выбросы в проекте по исследованию данных
Что такое выбросы в статистике? Как их обнаружить? Всегда ли их надо исключать из набора данных? Существуют ли критерии исключения выбросов? Предлагаем ответы на все эти вопросы, а в качестве бонуса - примеры кода на Python.
Как вычислить миллионное число Фибоначчи на Python
Как-то раз я захотел найти оптимальное решение для вычисления чисел Фибоначчи и решил попробовать вычислить стотысячное число в последовательности, а потом подумал: если бы...
ТОП-4 официальных сайта МО-библиотек и способы их использования
Ознакомьтесь с обзором 4 лучших сайтов машинного обучения: Scikit-learn, TensorFlow, Keras и PyTorch. Предлагаем также освоить эффективные способы применения каждого из этих ресурсов.
Оценка производительности нейронной сети Keras с помощью визуализаций Yellowbrick
Если вы когда-то использовали Keras для создания модели машинного обучения, то скорее всего перед этим вы строили примерно такие графики:
Здесь представлена матрица потери при...
10 актуальных профессий в области науки о данных
С одной стороны, поиск работы — это суровая игра, в которой нужно выделиться среди сотен, а иногда и тысяч других соискателей. С другой стороны,...
Когда ИИ или машинное обучение неуместны
Вообразите, что вам только что удалось заполучить набор данных клинических испытаний. Превосходно! Чтобы помочь вам войти в роль, я подготовила следующие данные:
Представьте, что эти...
За гранью HCD: нужен ли новый подход в дизайне для ИИ?
Сетевая технология имеет сетевые эффекты. Зачастую они являются неосязаемыми и усиливаются через систему во время использования машинного обучения. Но есть ли смысл создавать ориентированный...
Где и как применить Python на практике? Три основные сферы его применения
Если вы собираетесь изучать такой язык программирования, как Python, или уже изучаете — у вас может возникнуть резонный вопрос:
«Для решения каких конкретных задач я могу использовать...
Как работает GPT3
Обученная языковая модель генерирует текст. В качестве входных данных при желании ей можно также передать некоторый текст, влияющий на выходные данные. Выходные данные генерируются...
Эффективное итерирование по строкам в Pandas DataFrame
Рассмотрим продвинутые методы итерирования по строкам, которые заменят iterrows и itertuples. Некоторые из них позволяют повышать производительность почти в две тысячи раз, не снижая при этом читабельности кода.
7 критериев выбора подходящего фреймворка для глубокого обучения
Обработка данных эффективна в тандеме с адекватным фреймворком для глубокого обучения. Возможно, вы тоже находитесь в поисках идеальной для себя библиотеки? В любом случае не пропустите сравнительный анализ самых популярных платформ - Pytorch, Keras и Tensorflow.
Моделирование логистического роста
Часть 1, Часть 2
В прошлой статье мы рассмотрели пример моделирования первой вспышки коронавируса с помощью экспоненциального роста. Следующая ступень анализа — логистический рост. Воспользуйтесь Python notebook...
3 случая, когда линейная модель может ошибаться
Введение
В этой статье я покажу три случая, когда линейные модели могут привести к неверным результатам. Основное внимание будет уделено сравнению линейных моделей с моделируемыми...
Python в 2021: расписание релизов и основные функции
На данный момент мы используем Python 3.8, а последняя стабильная версия 3.8.4 была выпущена совсем недавно. Python 3.9 уже находится на стадии бета-тестирования, а...
Креативное программирование: методы и инструменты для JavaScript, Python и других языков
Креативное программирование
Задача этого вида программирования состоит в создании не функционального, а выразительного продукта. В этом процессе немаловажную роль играет эстетика, и именно поэтому он...
Лучшие фреймворки для ИИ и машинного обучения в веб-разработке
Конкуренция на технологическом рынке чрезвычайно высока, и компании стремятся получить преимущество с помощью веб-дизайна и разработки.
Чтобы веб-приложение для бизнеса было современным и конкурентоспособным, при...
Суперсила индексов для оптимизации SQL-запросов
Введение
Вы любите SQL и хотите улучшить свои навыки выполнения SQL-запросов? Вы знаете, что индексация — отличный инструмент для оптимизации запросов, но при этом не...
Погружение в графы
Графы в большинстве своем представляют собой неупорядоченные деревья. В основном это утверждение касается ненаправленных и невзвешенных графов. Однако оно остается в силе и в...
Стоит ли учить Julia?
Julia — это новейший IT-язык, поэтому я решил его попробовать. Вопрос в том, стоит ли добавлять его в арсенал специалиста по данным?
Установка
Первое, что стоит знать о...
Разведочный анализ данных в одной строке кода
В программировании важно уметь пользоваться инструментами, которые обеспечивают удобное выполнение сложных функций. Сегодня познакомимся с разведочным анализом данных и полезной библиотекой sweetviz.
Как работает маршрутизация Express
Как в приложении Node.js происходит обработка клиентских запросов? Какая функция помогает обрабатывать тот или иной запрос? Чтобы ответить на эти вопросы, заглянем в "закулисье" маршрутизации фреймворка Express.
Овладей Python, создавая реальные приложения. Часть 1
Создаем интерактивный словарь
В этой серии из 10 статей мы будем использовать Python для написания 10 реальных приложений. И в процессе создания этих приложений мы...
Большой языковой модели недостаточно: пример использования Merkle Genai. Часть 2
Ознакомьтесь с примером применения голосового помощника Merkle Genai, предоставляющего высокоточные и релевантные ответы на запросы клиентов. Воспользуйтесь передовыми контекстными ИИ-решениями, чтобы совершить революцию в своем бизнесе уже сегодня.
7 способов ускорить ревью кода
Зачем мучиться, когда можно работать с удовольствием! Поделимся 7 продуктивными рекомендациями о том, как ускорить и оптимизировать ревью кода.
Обзор функциональностей CSS, которые появились в 2022 году
Познакомимся с новыми функциональностями CSS 2022 года. Они отражают современные тенденции в развитии языка и нацелены на улучшение стилизации веб-страниц.








































































































