Лёгкое пополнение баз данных в приложениях платформы .NET
Пополнение базы данных может быть довольно сложной задачей. Ниже вашему вниманию предлагаются инструменты, помогающие облегчить эту операцию.
Проблема
Когда мы распределяем проект платформы .NET (Core), часто бывает...
7 библиотек Python для вашего первого проекта по науке о данных
Pandas
Данные играют первостепенную роль в разработке продуктов, задействующих науку о данных и машинное обучение. Однако информация часто нуждается в предварительной очистке и некоторых манипуляциях,...
Байесовский вывод - интуиция и примеры
Часть 1, Часть 2, Часть 3
Зачем кто-то вообще изобрел байесовский вывод?
Чтобы обновлять вероятность по мере поступления новых данных.
Суть байесовского вывода в том, чтобы объединить...
Инновационный алгоритм глубокого обучения в Google Translate
Современный Google Translate просто потрясает своими возможностями. Для реализации способности выполнять перевод между любой парой из десятков поддерживаемых языков создатели этого инструмента очень находчиво...
Что такое тензор?
Концепция тензора была создана в 1900 году двумя итальянскими математиками — Туллио Леви-Чивита и Грегорио Риччи-Курбастро, и, как это обычно бывает, основывалась на работе других математиков....
Четыре метода, которые повысят качество работы с Pandas
Знакомьтесь с "великолепной четверкой" методов - assign, map, query и explode. Это самые крутые фичи Pandas. Они сделают ваш код более ясным, элегантным и эффективным.
5 секретов наилучшего использования кортежей в Python
Python, являясь языком программирования общего назначения, предоставляет набор встроенных типов данных, включая int, str, tuple, list, dict и set. Четыре последних считаются контейнерами, так...
Для чего нужны стеки?
Когда я узнал, что такое стек, мне стало интересно его практическое применение. Оказалось, что чаще всего эта структура используется для имплементации операции “Отмена” (...
ML-инженер или специалист по обработке данных? (Закат науки о данных?)
Привет, меня зовут Джейсон
Я специалист по обработке данных (чуть позже в статье это понятие будет определено конкретнее) в Кремниевой долине, и мне очень нравится расширять...
Разработка виртуального помощника для удовлетворения основных потребностей пользователей
В этой статье мы расскажем о том, как организовать пользовательские потребности в соответствии со сложностью и частотой возникновения, а также расставим приоритеты в поэтапном...
Инженерия геопространственных данных: пространственное индексирование
Слышали ли вы о пространственном индексировании? Эта технология обладает мощным потенциалом: она способна оптимизировать производительность запросов, сэкономить время обработки данных и упростить задачи машинного обучения.
Как найти три наибольших числа в JavaScript
Подсказка
Создайте функцию, которая при вводе массива, состоящего минимум из трех целых чисел, возвращает отсортированный массив из трех наибольших целых чисел.
Примечание: вы не можете отсортировать...
Статистика - это грамматика науки о данных. Часть 5
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
Условная вероятность
Условная вероятность — это вероятность наступления некоторого события, при условии, что другое событие уже произошло.
Условная вероятность...
Как построить модель машинного обучения, если под рукой нет доступных данных
Перед решением любой задачи науки о данных, такой как исследовательский анализ или построение модели, нужно ответить на следующие вопросы:
Что вы хотите узнать или обнаружить...
К подготовке и публикации первого пакета Python готовы!
Python стал одним из самых широко используемых языков программирования. Главным образом объясняется это тем, что мы, его обычные пользователи, можем поделиться своим кодом, обеспечивая...
Графы и пути: Алгоритм Брона-Кербоша, максимальные группы
Статья описывает алгоритм Брон-Кербоша для нахождения максимальных кликов в графах. Автор объясняет, как алгоритм работает и его применение в задачах, связанных с теорией графов и анализом данных.
Deepnote - новая IDE для специалистов по данным
Дисклеймер: автор никак не связан с Deepnote или его участниками.
Deepnote — это бесплатный онлайн-блокнот для специалистов по данным, фокусирующийся в основном на совместном использовании в реальном...
11 шагов на пути к работе дата-сайентиста
Получить работу в области науки о данных, МО и ИИ сложно. Эти 11 шагов помогут стратегически подойти к решению этой проблемы (спойлер: Kaggle не относится к их числу).
3 простых шага для оптимизации гиперпараметров в любом Python-скрипте
Итак, вы написали Python-скрипт, который обучает и оценивает модель машинного обучения. И теперь вам хочется оптимизировать гиперпараметры и повысить производительность модели.
Я помогу!
В данной статье...
Почему мы создали платформу для инженерии машинного обучения, а не науки о данных
Около года назад некоторые из нас начали работать над платформой машинного обучения с открытым исходным кодом Cortex. Наша мотивация была проста: создание приложения из...
Python 3.9
Что нового ожидает нас в этой версии и в будущих релизах?
Вышел полный релиз Python 3.9!
Очевидно, что эта версия знаменует собой переломный момент в эволюции Python....
Наука о данных — что она изучает на самом деле?
Данные окружают нас повсюду. Это незаменимый инструмент в руках современного человека. “Данные действительно помогают нам во всем”, — когда-то признал Джефф Вейнер, гендиректор LinkedIn. Что же собой представляет наука о данных и каковы были предпосылки ее стремительного развития?
#04TheNotSoToughML | “Давай, минимизируй ошибки” — Но достаточно ли этого?
Пришло время развеять миф о том, что машинное обучение - это сложно. Интуитивное МО позволяет пользоваться легкодоступными инструментами, не требующими специальных знаний.
Развёртывание модели машинного обучения в виде REST API
В статье вы узнаете, как разворачивать модели машинного обучения и составлять прогнозы при помощи любого языка программирования, который вам нравится. Конечно, за основу вы...
8 способов “настроить” Data-команду на успех. Часть вторая
Предыдущие части: Часть 1
Другие лучшие практики
Далее я привожу вымышленные сценарии, рассматривая общие стратегии, которые менеджеры должны использовать, чтобы не навредить своей Data-команде.
2) Ищите «Систематические ошибки...
Почему логарифмы так важны в машинном обучении
Если бы вы жили на 10-м этаже, вы бы поднимались по лестнице или пользовались лифтом? Цель в обоих случаях одна: вы хотите вернуться домой...
Что такое компилятор
Если вы программист, то наверняка слышали слово “компилятор”. Но знаете ли вы, что это такое на самом деле? Вы когда-нибудь задумывались, что происходит под...
Продвинутый взгляд на рекурсию
Рекурсия является одним из наиболее мощных подходов в программировании. С ее помощью можно решать чрезвычайно сложные задачи, печатая при этом невероятно малый объем кода.
Основные концепции и структуры Python, которые должен знать каждый серьёзный программист
Генераторы
Создание итератора в Python требует большой работы. Класс (в ООП) должен быть построен с применением методов __iter__() и __next__(), внутренние состояния должны быть сохранены...
Оценка производительности нейронной сети Keras с помощью визуализаций Yellowbrick
Если вы когда-то использовали Keras для создания модели машинного обучения, то скорее всего перед этим вы строили примерно такие графики:
Здесь представлена матрица потери при...
Скрытые алмазы: уведомления об изменениях в БД
Вступление
Получение управляемых событиями уведомлений об изменениях (EDCN), когда данные изменяются непосредственно из БД, без необходимости опроса для получения обновлений — очень эффективная функциональность. Подобная доступна в...
Погружение в базы данных
Базы данных представляют собой упорядоченные наборы данных, хранящиеся в компьютерной системе и доступные в электронном виде. Существует множество типов баз данных, например:
облачные;реляционные;объектно-ориентированные;NoSQL.
Выбор той или...
Шесть рекомендаций для начинающих специалистов по Data Science
Навыки, необходимые для работы
Сфера data science пользуется большим спросом, однако для трудоустройства вам потребуется опыт работы. Несмотря на это, у множества лучших специалистов стоит самый...
Почему теория графов круче, чем вы думали
Что такое графы?
Спросите специалиста из любой области науки, как работает предмет его исследований. Наверняка он предложит вам рассмотреть некую систему с существующими внутри нее связями....
Анализ аудиоданных с помощью глубокого обучения и Python (часть 1)
Введение
Аудиоанализ - область, включающая автоматическое распознавание речи (ASR), цифровую обработку сигналов, а также классификацию, тегирование и генерацию музыки - представляет собой развивающийся поддомен приложений...
Эйнштейн и самая красивая из всех теорий
Британский физик-теоретик Поль Дирак (1902–1984), один из основоположников квантовой механики, однажды написал:
«Было трудно примирить ньютоновскую теорию гравитации, в соответствии с которой гравитационное взаимодействие распространяется...
Рекурсия и цикл, в чем разница? На примере Python
Цикл — это фундаментальный инструмент в программировании. Существует множество различных типов циклов, но почти все они выполнят одну базовую функцию: повторение определённых действий над данными, для...
5 уникальных подходов Google к инженерии данных
Когда я пришел в Google в качестве поставщика в 2019 году, у меня уже был опыт работы в области здравоохранении и технологическом секторе. Тем...
Как стать дата-сайентистом в 2025 году?
Мечтаете повелевать большими данными? Четкая дорожная карта поможет вам приобрести надежную теоретическую базу в математике, статистике, программировании и других отраслях, необходимых современному дата-сайентисту.
Уникальный пример использования SocketCluster для распределенных вычислений
Команда HarperDB построила первую и единственную написанную на Node.js БД, которая уникальным образом применяет SocketCluster для распределенных вычислений. Кайл Бернарди, технический директор и сооснователь...
Цепь Маркова
Цепь Маркова используют многие современные компании и организации. Она помогает прогнозировать погоду и разрабатывать маркетинговые стратегии, находит применение в различных приложениях для решения реальных...
Гамма-функция - интуиция, определение, примеры
Почему это интересно?
Многие распределения вероятностей определяются с использованием гамма-функции, я перечислю лишь некоторые: гамма-распределение, бета-распределение, распределение Дирихле, распределение хи-квадрат, т-распределение Стьюдента и так далее.
Для...
4 принципа успешной поисковой системы и не только
Поиск повсюду и сталкиваемся мы с ним ежедневно. Эта функция реализована на каждом сайте и является частью любого IT-продукта. Вызов меню поиска простой комбинацией...
5 минут на машинное обучение
Теорема и наивный классификатор Байеса
Наивный классификатор Байеса — это набор простых и эффективных алгоритмов машинного обучения для решения различных задач классификации и регрессии. Эта...
ClickHouse + Kafka = ❤
Узнаем, как внедрить в проект средство аналитики, на что способен ClickHouse в сочетании с Kafka и для чего нужны здесь материализованные представления. Построим небольшую аналитическую систему.
Создание архитектур кода с помощью функциональных операторов
Говоря о функциональном программировании, мы сразу вспоминаем о функциях. Однако есть и другие концепции, которые отлично работают в науке о данных. Одной из таких концепций являются функциональные операторы, позволяющие создавать сложные архитектуры для выразительного кода.
7 советов по улучшению анализа данных в Python
#1: Pandas Profiling
Преимущества этого инструмента очевидны. Анимация ниже создана с помощью вызова метода df.profile_report():
С помощью этого инструмента можно с легкостью устанавливать и импортировать пакет...
Парадокс надежности ИИ
Представьте, что вы босс и у вас в штате два работника (человека):
Кирилл Небрежный — это сплошное разочарование. Лишь в 70% случаев он справляется с...
4 альтернативы Pandas: ускоренное выполнение анализа данных
Бенчмарк производительности популярных инструментов анализа данных заставит вас иногда отказываться от Pandas. Каждый из этих инструментов - Polars, DuckDB, Vaex и Modin - при анализе данных на кластере машин работает гораздо быстрее, чем Pandas.
Анализ моделей машинного обучения при помощи Imandra
Расскажем о задачах классификации и регрессии. Данные, модели, условия и Imandra с её возможностями помогать прогнозировать рак и вред от лесных пожаров.
Введение
Проверка параметров изучаемых моделей — сложная...
Эпоха Больших данных
Технологии Big Data имеют ощутимые преимущества. Однако все более злободневно звучит вопрос: как использовать потенциал Больших данных без ущерба для конфиденциальности и безопасности граждан?
Лассо- и ридж-регрессии: интуитивное сравнение
Регуляризация размерности данных - важнейший навык в машинном обучении, позволяющий повысить эффективность модели. Чтобы овладеть им, необходимо понять различие между лассо- и ридж-регрессиями. Попробуем разобраться с этими методами статистического обучения.
Утиная типизация в Python - 3 примера
Утиная типизация
Опытным программистам концепция утиной типизации наверняка знакома. Для новичков же это словосочетание может звучать довольно странно: какое отношение имеют утки к программированию?
Эта концепция...
Как алгоритм «случайный лес» вычисляет продавцов-мошенников на онлайн-рынке
Как показала практика, интернет полон мошенников, охотящихся за наивными пользователями. Посмотрим, как специальная модель МО обнаруживает злоумышленников на C2C-рынке.
Топ-10 ошибок анализа данных
Аналитик данных — лучший в статистике среди программистов и лучший программист среди статистиков. В этом топе обсудим, как программисту стать лучше в статистике.
Примеры, код...
Распознавание лиц с помощью CoreML и ARKit
Создаём приложение с одним окном
Для начала нам понадобится создать iOS проект «single view app» (прим: автор работает в Xcode).
Теперь у нас есть проект. Мы обойдёмся...
Погружение в графы
Графы в большинстве своем представляют собой неупорядоченные деревья. В основном это утверждение касается ненаправленных и невзвешенных графов. Однако оно остается в силе и в...
7 полезных операций в Pandas при работе с DataFrame
Абстракция датафрейма является одной из наиболее полезных концепций в современной экосистеме управления данными. Вращается она главным образом вокруг табличных структур, которые имеют повышенную производительность...
25 прикольных вопросов для собеседования по машинному обучению
Могут ли вопросы на собеседовании по машинному обучению быть одновременно прикольными и глубокими?
25 вопросов, которые не просто проверят знания и навыки кандидата, но и...
Алгоритмы ограничения скорости
Для чего нужно ограничение скорости API
Ограничение скорости помогает защитить сервисы от злонамеренных поведений, нацеленных на протоколы прикладного уровня. К числу таких поведений относятся DoS-атаки (атаки...
Статистика - это грамматика науки о данных. Часть 3
Повторение статистики для начала путешествия по науке о данных
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
Меры расположения
Процентили
Процентили делят упорядоченные данные...
Основы SQLite на примере практической задачи
Базы данных — это превосходный, безопасный и надежный способ хранения данных. Все основные реляционные базы объединяет SQL, т.е. язык управления данными, их базами и...
В США ограничивают использование технологий распознавания лиц
Но надолго ли?
Технологию распознавания лиц сегодня начали применять и правоохранительные органы, и военные структуры, и частные компании, при этом они вот уже 40-лет используют базы...
Новая библиотека превосходит Pandas по производительности
Выпуск pandas датируется 2008 годом, и написана она была на Python, Cython и Си. Сегодня мы сравниваем производительность этой всем известной библиотеки с новой...
Три библиотеки R, которые должен знать каждый специалист по данным
Даже если вы используете Python, включите в свой арсенал инструментов три мощные библиотеки R, созданные крупнейшими технологическими компаниями мира.
Как обучить модель квантового МО, используя данные из CSV?
Область квантового машинного обучения не сразу поддается начинающим исследователям данных из CSV. Предлагаем поучиться не на теоретических примерах (которые зачастую не имеют практической пользы), а на реальном опыте специалистов QML.
Алгоритмы машинного обучения простым языком. Часть 1
Как недавнего выпускника буткемпа по машинному обучению от Flatiron School меня буквально затопило советами о том, как стать асом в прохождении интервью. Я заметил,...
Как создать бота для автоматизации повседневных задач, с помощью Python и Google BigQuery
У каждого из нас есть однообразные задачи, которые мы выполняем изо дня в день, из недели в неделю. Составление отчетов, в большинстве случаев, является...
Машинное забывание: почему забывание важно для ИИ
Посмотрим правде в глаза: никому не нравится забывать. Все мы расстраиваемся, когда не можем вспомнить, где оставили ключи или как зовут коллегу, с которым...
Математические операции над массивами и матрицами
В процессе обработки и организации данных в определенные моменты возникает необходимость в выполнении математических операций над массивами и матрицами.
Заглянем в notebook
Чтобы ознакомиться с рассматриваемыми далее...
Монада - программируемая точка с запятой
Монады — программируемые точки с запятой. Именно так. Монада предоставляет функции, позволяющие упорядочивать действия. Более того, между каждыми двумя действиями выполняется определённый фрагмент кода....
Алгоритм машинного обучения t-SNE - отличный инструмент для снижения размерности в Python
Улучшение качества визуализации - актуальная проблема для многих разработчиков. Узнайте, как использовать алгоритм машинного обучения t-SNE для визуализации данных высокой размерности.
Создаем YouTube видео из кода
Если вы когда-либо задумывались о создании видео, содержащего компьютерную анимацию, эта статья для вас. Я предполагаю, что у вас уже есть код, или вы...
Шардинг как паттерн архитектуры базы данных
Представляем полезный инструмент для работы с базами данных - шардинг. Узнайте, что это такое, какие типы и стратегии шардинга используются, в чем преимущества и сложности этого архитектурного паттерна.
Решение алгоритмических проблем: Поиск повторяющихся элементов в массиве
Проблема
Найти дубликат в массиве
Given an array of n + 1 integers between 1 and n, find one of the duplicates.
If there are multiple possible...
Создание локального озера данных с нуля
Настроим все необходимые службы и компоненты, в том числе оркестратор конвейера данных и SQL-движок, инициируем сеанс Spark для Apache-форматов Iceberg и Delta и выполним простой ETL-процесс. Заложим основу для более сложных конвейеров.
Жизненный цикл сообщений Kafka: от отправки до получения
Вкратце опишем все четыре этапа. Разберемся, что изменилось с появлением вместо ZooKeeper самоуправляемого кворума метаданных.
14 наборов данных для датасайенс-проектов
Представляем 14 наборов данных, которые пригодятся для различных целей, например классификации текстов и изображений, создании системы рекомендаций, а также визуализации данных.
Как автоматизировать сравнение датасетов с Terraform и BigQuery
Автоматизация проверки датасетов значительно упрощает жизнь. Узнаем, как же это сделать с помощью инструмента для управления облачной инфраструктурой Terraform и сервиса для анализа больших наборов данных BigQuery.
Пересечение 3D-лучей (ближайшая точка)
Хотите разобраться в математической теории, лежащей в основе 3D-лучей? Предлагаем простое руководство по применению таких математических инструментов, как псевдообратные матрицы, оптимизация с помощью наименьших квадратов, метод Крамера, смешанное произведение.
10 лайфхаков для работы с библиотекой Pandas
Pandas — широко распространённая Python-библиотека для работы со структурированными данными. По её использованию уже составлено большое количество уроков, однако, я хотел бы рассказать о нескольких небольших...
Сопряженное априорное распределение
Часть 1, Часть 2, Часть 3
1. Что такое априорное распределение?
Априорная вероятность — это вероятность события до того, как мы получили дополнительные данные. В байесовском выводе априорное распределение — это...
8 структур данных, которые должен знать каждый дата-сайентист
Организация данных имеет большое значение в сфере дата-сайенс. Представляем 8 основных структур, которые пригодятся любому специалисту по работе с данными.
Разведочный анализ данных в одной строке кода
В программировании важно уметь пользоваться инструментами, которые обеспечивают удобное выполнение сложных функций. Сегодня познакомимся с разведочным анализом данных и полезной библиотекой sweetviz.
Проект инженерии данных с DAG Airflow «от и до». Часть 2
Проверим корректность данных, отправим письмо и сообщение в Slack с информацией об адресе почты и пароле. Объединим все части проекта, создадим и запустим DAG Airflow со всеми задачами.
Добыча данных: анализ рыночной корзины с помощью алгоритма Apriori
Вы когда-нибудь задумывались над тем, почему хлеб всегда лежит рядом с маслом в бакалейном магазине? Сегодня мы раскроем этот секрет.
Годовой план изучения науки о данных
2020-ый наконец-то закончился, а значит уже можно начать планировать 2021-ый. Для начала зададим себе вопрос: чему мы хотим научиться в этом году?
Многие выбирают в...
5 любопытных библиотек Python
Как один из наиболее популярных языков программирования, Python содержит огромное количество прекрасных библиотек, облегчающих разработку, таких как Pandas, Numpy, Matplotlib, SciPy и так далее.
Однако...
Выбор между SQL и NoSQL: ACID и CAP, схема и транзакции
Детальное руководство по архитектуре баз данных: основные концепции в работе реляционных (SQL) и распределенных (NoSQL) баз данных.
SQL для Data Science: альтернатива обмену через Google Disk и Slack
Как аналитику данных показать SQL-запросы коллегам? Доступный обмен наработками через Jupyter Notebook, Tidyverse или Superset.
Как выжать максимум из предобученных языковых моделей с GroupBERT
Как достичь 2-кратного ускорения обучения на интеллектуальном процессоре Graphcore, обеспечивая более быстрые и эффективные вычисления? Что делает GroupBERT лучше BERT и других моделей с групповыми преобразованиями в Transformer? Отвечаем на эти и сопутствующие вопросы.
Python: как заменить циклы For на Map, Filter и Reduce
Вы когда-нибудь смотрели на свой код и видели водопад из циклов for? Вам приходилось щурить глаза и наклоняться к монитору, чтобы рассмотреть его поближе?
Я...
Обзор шаблонов SnapML и их возможностей в Lens Studio
В июне 2020 года Snapchat выпустил Lens Studio 3.0. — крупное обновление своего ПО для создания эффектов дополненной реальности (далее AR). Среди всего изобилия новшеств релиза...
Декораторы в Python за три минуты
Декораторы представляют собой удобный для восприятия человеком способ расширения возможностей функции, метода или класса извне. Использование декораторов особенно полезно при декорировании (т. е. расширении)...
Будет ли ИИ главенствовать в 2021 году? Большой вопрос
Технологии, связанные с искусственным интеллектом, развиваются в стремительном темпе. Узнаем, что ожидает ИИ в будущем.
В 2020 году ИИ претерпел быстрые преобразования, неожиданные разработки и...
8 показателей эффективности классификации
Оценка эффективности классификатора - непростая задача. Чтобы справиться с ней, понадобится несколько показателей. Предлагаем доступное описание 8 главных метрик.
Как удалить одинаковые данные из отсортированного массива
Задача
Имеется отсортированный массив nums. Необходимо удалить из него одинаковые данные так, чтобы один элемент появлялся только один раз и возвращал новое число элементов.
Не нужно...
MongoDB: моделирование данных
Данные в MongoDB обладают гибкой схемой хранения документов в одной коллекции. Документам не обязательно иметь одинаковый набор полей или структуру. Общие поля в них могут содержать разные типы данных.
MLOps: как внедрить систему рекомендаций товаров на ecommerce-сайт
Умные инструменты - алгоритм Word2Vec и МО-сервис Layer - помогут быстро и дешево создать и внедрить модель рекомендаций и категоризации товаров на сайте электронной коммерции. В итоге пользователи платформы получат персонализированный опыт, а ее владелец сможет повысить конверсии и увеличить продажи.
Как увеличить производительность CSS-in-JS в 175 раз
Мне нравится удобство CSS-in-JS, особенно возможность совместного расположения стилей, но в некоторых деталях я не уверен:
В том, что обязательно нужно использовать хешированные классы вместо...
Как на самом деле работает Git
В этой статье мы на реальном примере погрузимся во внутренние процессы Git. Если у вас еще не открыт терминал, то сделайте это, пристегните ремни...
Шаблон Медиатор в JavaScript
Поскольку медиатор изменяет поведение программы и отвечает за координацию взаимодействий, он считается поведенческим шаблоном. По мере роста приложения возрастает и потребность в медиаторе из-за...
Анализ социальных сетей: от теории графов до приложений на Python
Теория сетей
Начнем с краткого введения в базовые компоненты сети: узлы и ребра.
Узлы (например, A,B,C,D,E) обычно представляют объекты в сети и содержат собственные и сетевые...
Что делает сайты медленнее?
Аналитики CatchJS отрендерили 1 миллион самых популярных сайтов. Они отследили разнообразные метрики производительности, учли каждую ошибку и отметили каждый запрошенный URL. Результат составляет, вероятно,...








































































































