Погружение в базы данных
Базы данных представляют собой упорядоченные наборы данных, хранящиеся в компьютерной системе и доступные в электронном виде. Существует множество типов баз данных, например:
облачные;реляционные;объектно-ориентированные;NoSQL.
Выбор той или...
ML-инженер или специалист по обработке данных? (Закат науки о данных?)
Привет, меня зовут Джейсон
Я специалист по обработке данных (чуть позже в статье это понятие будет определено конкретнее) в Кремниевой долине, и мне очень нравится расширять...
Алгоритмы машинного обучения простым языком. Часть 1
Как недавнего выпускника буткемпа по машинному обучению от Flatiron School меня буквально затопило советами о том, как стать асом в прохождении интервью. Я заметил,...
5 любопытных библиотек Python
Как один из наиболее популярных языков программирования, Python содержит огромное количество прекрасных библиотек, облегчающих разработку, таких как Pandas, Numpy, Matplotlib, SciPy и так далее.
Однако...
Биномиальное распределение
Все знают и любят нормальное распределение. Оно используется в инвестиционном моделировании, A/B-тестах и улучшении производственных процессов (шесть сигм). Но мало кто хорошо знаком с...
Новая библиотека превосходит Pandas по производительности
Выпуск pandas датируется 2008 годом, и написана она была на Python, Cython и Си. Сегодня мы сравниваем производительность этой всем известной библиотеки с новой...
Моделирование экспоненциального роста
Чтобы лучше усвоить материал, рекомендуем вам использовать данные для примера и Python Notebook.
Почему именно экспоненциальный рост?
Экспоненциальный рост — это математическая функция, которая может использоваться в нескольких...
Анализ аудиоданных с помощью глубокого обучения и Python (часть 2)
Предыдущая часть: Часть 1
Сверточные нейронные сети (CNN) схожи с обычными нейронными сетями: они состоят из нейронов с обучаемыми весами и сдвигами. Каждый нейрон получает...
Структуры данных и алгоритмы: стек
Стек - это абстрактный тип данных, который обычно используется в большинстве языков программирования. Хорошие примеры для объяснения понятия стека - колода карт или стопка тарелок. Разберем основные операции, проводимые со стеком.
10 идиоматических приемов для эффективного программирования на Python
Программирование само по себе очень увлекательное занятие, а программирование на Python увлекательнее вдвойне, поскольку в данном языке существует много разных способов реализации одних и...
Байесовская статистика для специалистов по данным
Возможно, вы помните теорему Байеса как громоздкое уравнение из курса статистики, которое вам нужно было заучить. Но за ним кроется нечто большее. Эта теорема...
6 лучших JS-библиотек для визуализации данных и создания отчетов
Веб-инструменты для отчетов используются для представления, создания и изменения отчетов с помощью веб-интерфейса — веб-браузера. Эти инструменты могут быть встроены в сторонние приложения или...
Основные концепции и структуры Python, которые должен знать каждый серьёзный программист
Генераторы
Создание итератора в Python требует большой работы. Класс (в ООП) должен быть построен с применением методов __iter__() и __next__(), внутренние состояния должны быть сохранены...
14 наборов данных для датасайенс-проектов
Представляем 14 наборов данных, которые пригодятся для различных целей, например классификации текстов и изображений, создании системы рекомендаций, а также визуализации данных.
Разбор 7 ошибок Python
Как только задачи, стоящие перед специалистами по данным, переходят из родной научной области в сферу разработки ПО, решать их становится все труднее. И хотя...
Статистика - это грамматика науки о данных. Часть 1
Повторение статистики для начала путешествия по науке о данных
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
«Статистика — это грамматика науки»
Данное высказывание приписывают английскому математику...
Лучшие фреймворки для ИИ и машинного обучения в веб-разработке
Конкуренция на технологическом рынке чрезвычайно высока, и компании стремятся получить преимущество с помощью веб-дизайна и разработки.
Чтобы веб-приложение для бизнеса было современным и конкурентоспособным, при...
Нет жесткому кодированию конфиденциальных данных в приложениях Python!
Защита конфиденциальных параметров - одна из приоритетных задач в IT-сфере. Мы расскажем, как обезопасить их в приложениях Python.
Статистика - это грамматика науки о данных. Часть 4
Повторение статистики для начала путешествия по науке о данных
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
Введение
Предположим, у нас есть диаграмма...
Почему в базе данных происходит взаимоблокировка?
Круг вопросов для обсуждения
Попробуем объяснить, что такое взаимная блокировка и почему она возникает в базе данных.
Напишем SQL-инструкции и искусственно вызовем взаимоблокировку, а также обсудим...
Почему Python используется для машинного обучения?
Скорее всего, вы знаете, что Python — это самый популярный высокоуровневый язык программирования с динамической семантикой. Он довольно прост для работы и чтения: его использование снижает...
5 минут на машинное обучение
Теорема и наивный классификатор Байеса
Наивный классификатор Байеса — это набор простых и эффективных алгоритмов машинного обучения для решения различных задач классификации и регрессии. Эта...
Тематическое моделирование с помощью BERT
Часто, когда заказчики обращаются ко мне с просьбой провести анализ их продукта на основе НЛП, они задают один и тот же вопрос:
«Какая тема чаще...
Структуры данных: асимптотический анализ
Асимптотический анализ алгоритма - это определение математических границ/рамок его производительности во время выполнения, позволяющее очень легко находить время работы алгоритма в лучшем, среднем и худшем случае.
Квантовые вычисления для всех
Квантовые вычисления. Наряду с квантовой запутанностью и квантовой телепортацией это модное учёное словечко широко распространено в научной фантастике и научно-популярных СМИ. Но что оно...
Основы обработки естественного языка за 10 минут
Вероятно, вы находитесь здесь потому, что хотите как можно скорее научиться обработке естественного языка. Без лишних слов приступим к процессу.
Первым делом следует:
1. Установить зависимости...
Что такое тензор?
Концепция тензора была создана в 1900 году двумя итальянскими математиками — Туллио Леви-Чивита и Грегорио Риччи-Курбастро, и, как это обычно бывает, основывалась на работе других математиков....
4 простые визуализации данных в Python
Визуализация данных является неотъемлемой частью любых проектов в науке о данных или в проектах машинного обучения. Для того, чтобы получить некоторое представление об определенных...
Исследование данных - основные понятия
Данные многое вам скажут, если вы готовы слушать.
- Джим Бергесон
Данные можно назвать Богом. Все на свете проверяется только благодаря данным. Вы не сможете претендовать...
Python в 2021: расписание релизов и основные функции
На данный момент мы используем Python 3.8, а последняя стабильная версия 3.8.4 была выпущена совсем недавно. Python 3.9 уже находится на стадии бета-тестирования, а...
Экспоненциальное распределение
Мы всегда начинаем с вопроса “почему”, прежде чем переходить к формулам. Если вы понимаете, почему что-то работает, вы с большей вероятностью будете применять это...
Почему люди подсаживаются на TikTok? Алгоритм ИИ, который вас подловил
Tick Tok стремительно завоёвывает мир. Согласно данным Sensor Tower, это приложение для коротких видео было загружено более 2 миллиардов раз с App Store и...
ClickHouse + Kafka = ❤
Узнаем, как внедрить в проект средство аналитики, на что способен ClickHouse в сочетании с Kafka и для чего нужны здесь материализованные представления. Построим небольшую аналитическую систему.
Заставляем глубокие нейронные сети рисовать, чтобы понять, как они работают
Для нас до сих пор остаётся загадкой то, почему глубокое обучение так хорошо работает. Несмотря на то, что имеется куча догадок, почему глубокие нейронные...
Эйнштейн и самая красивая из всех теорий
Британский физик-теоретик Поль Дирак (1902–1984), один из основоположников квантовой механики, однажды написал:
«Было трудно примирить ньютоновскую теорию гравитации, в соответствии с которой гравитационное взаимодействие распространяется...
Бета-распределение: интуиция, примеры, вывод
Часть 1, Часть 2, Часть 3
Бета-распределение — это распределение вероятностей по вероятностям. Мы можем использовать его для моделирования вероятностей: рейтинг кликов вашей рекламы, коэффициент конверсии клиентов,...
10 трюков для мастеров Python
На первый взгляд Python может показаться простым языком, который любой может освоить, и многих удивляет, какого мастерства можно достичь в этом языке. Python один...
5 секретов наилучшего использования кортежей в Python
Python, являясь языком программирования общего назначения, предоставляет набор встроенных типов данных, включая int, str, tuple, list, dict и set. Четыре последних считаются контейнерами, так...
Все что нужно знать о древовидных структурах данных
Когда вы впервые учитесь кодировать, общепринято изучать массивы в качестве «основной структуры данных».
В конце концов, вы также изучаете хэш-таблицы. Для получения степени по «Компьютерным...
Алгоритм поиска A*
Пошаговый разбор алгоритма поиска А*
Поиск короткого пути — это то, чем каждый занимается ежедневно. Алгоритм А *— один из самых популярных методов решения задач на поиск кратчайшего...
17 кодовых блоков, которые нужно знать каждому специалисту по обработке данных
17 кодовых блоков, которые помогут вам эффективно справляться с большинством задач и проектов. Разберем условные и итерационные циклы, списки, словари, операторы break и continue многое другое.
Для чего нужны стеки?
Когда я узнал, что такое стек, мне стало интересно его практическое применение. Оказалось, что чаще всего эта структура используется для имплементации операции “Отмена” (...
Как с помощью Python создавать математическую мультипликацию типа 3Blue1Brown
Для чего нужна математическая мультипликация?
Вы когда-нибудь пытались освоить математические концепции алгоритма машинного обучения с помощью образовательного ресурса 3Blue1Brown? 3Blue1Brown — это знаменитый математический канал...
Контейнеры это просто. Контейнерные технологии для начинающих
Вступление
Будь вы студент или уже состоявшийся разработчик, вы наверняка слышали о «контейнерах». Более того, вероятно вы слышали, что контейнеры — это «лёгкие» виртуальные машины....
Байесовский вывод - интуиция и примеры
Часть 1, Часть 2, Часть 3
Зачем кто-то вообще изобрел байесовский вывод?
Чтобы обновлять вероятность по мере поступления новых данных.
Суть байесовского вывода в том, чтобы объединить...
4 альтернативы Pandas: ускоренное выполнение анализа данных
Бенчмарк производительности популярных инструментов анализа данных заставит вас иногда отказываться от Pandas. Каждый из этих инструментов - Polars, DuckDB, Vaex и Modin - при анализе данных на кластере машин работает гораздо быстрее, чем Pandas.
3 простых шага для оптимизации гиперпараметров в любом Python-скрипте
Итак, вы написали Python-скрипт, который обучает и оценивает модель машинного обучения. И теперь вам хочется оптимизировать гиперпараметры и повысить производительность модели.
Я помогу!
В данной статье...
5 рекомендаций по оптимизации запросов SQL
Никогда не поздно проанализировать свой стиль программирования запросов SQL, выявить недостатки и исправить. Рассмотрим 5 способ улучшить запросы и повысить свою продуктивность.
Теория вероятностей, или Не стоит полагаться на случай
Понятия вероятности и случайности затрагивают практически все аспекты нашей жизни. Большинство своих решений мы принимаем, исходя из вероятности наиболее благоприятных для нас событий. Поэтому...
Настройка Data Science окружения на вашем компьютере
После прохождения различных курсов и обучения на различных образовательных платформах, вроде Datacamp, вашим следующим шагом станет использование полученных знаний о Python, R, Git или...
Распознавание лиц с помощью OpenCV
Читая очередную статью по OpenCV, я обнаружил, что в этой библиотеке есть собственная нейросеть для распознавания лиц с высокой точностью.
Я решил опробовать OpenCV и...
19 скрытых фич Sklearn, о которых вам следует знать
Сегодня поговорим о 19 функциях Sklearn, о которых вы не слышали. Они представляют собой элегантную замену обычных операций, которые вы выполняете вручную.
Нейронная сеть с нуля при помощи numpy
Здесь можно посмотреть полный код.
Для того, чтобы полностью понять статью, нужны базовые знания принципов работы с numpy, линейной алгебры, работы с матрицами, дифференциации и...
Анализ текста средствами языка программирования R
“Люди часто восхваляют классические произведения, даже не читая их”, — Марк Твен.
Надеюсь, что ваш опыт опровергает это высказывание Марка Твена, а также верю, что вы всё-таки...
Новый модуль временных рядов PyCaret
Новый модуль PyCaret отличается простотой и функциональностью. Рассмотрим его в действии.
Разработка инфраструктуры и торговых ботов для ИИ-трейдинга
Примечание: данная статья преследует исключительно образовательные и развлекательные цели, не являясь прямой финансовой рекомендацией. Редакция каналов Better Programming и Nuances of Programming не несет...
4 пакета Python для причинно-следственного анализа данных
Эти 4 пакета Python - Causalinference, Causallib, Causalimpact и DoWhy - помогут овладеть навыками причинно-следственного анализа. Изучив эту область экспериментальной статистики, вы сможете устанавливать и обосновывать причинно-следственные связи при исследовании самых различных данных.
Структуры данных: связный список
Связный список - последовательность структур данных, связанных ссылками - вторая по частоте использования после массива структура данных. Рассмотрим основные операции и покажем пример на языке С.
Как Jupyter превратился в полноценную IDE
Jupyter Notebook - удобный инструмент для поэтапного развития идей по разработке ПО. Специалисты по данным используют его для записи процесса своей работы, экспериментов с...
Введение в потоки Redis
Redis — это хранилище структуры данных в памяти, в основном используемое в качестве базы данных, кэша и брокера сообщений. Система Redis чрезвычайно популярна среди...
Структуры данных: кольцевой (циклический, замкнутый) связный список
Кольцевой связный список - это разновидность связного списка, при которой первый элемент указывает на последний, а последний - на первый. Кольцевой связный список можно сделать как из односвязного , так и из двусвязного списка.
Инструменты для быстрого овладения наукой о данных
Компании типа BlobCity предоставляют множество шаблонов кода ИИ/МО. Этот инструментарий способен как облегчить работу опытных специалистов в области науки о данных, так и ускорить профессиональное становление новичков.
Тестирование больших данных: руководство для начинающих
Что такое тестирование больших данных, и с какими проблемами можно столкнуться в этом процессе? Расскажем про основные типы, способы и инструменты тестирования больших данных.
Сумасшедший способ проверить, является ли число простым, используя регулярное выражение
В поисках алгоритмов для выявления простых чисел, вы где-нибудь, да встречали подобное выражение:
Что это? Это способ проверки, является ли число простым. Вам даже не...
Классы данных в Python и их ключевые особенности
Значимым компонентом любого проекта в программировании являются данные, с которыми неизбежно взаимодействуют все программы. Например, при разработке веб-сайта вы должны представить тексты и изображения...
Как собрать кубик Рубика с помощью генетических алгоритмов
Введение
В качестве эксперимента я решил собрать кубик Рубика с помощью генетических алгоритмов (ГА). Их основная концепция заключается в том, чтобы найти решение путем имитации...
Где и как применить Python на практике? Три основные сферы его применения
Если вы собираетесь изучать такой язык программирования, как Python, или уже изучаете — у вас может возникнуть резонный вопрос:
«Для решения каких конкретных задач я могу использовать...
Алгоритм XGBoost: пусть он царствует долго!
Хоть с того момента и прошло 15 лет, я до сих пор помню первый день на моей первой работе. Я только-только выпустился из ВУЗа...
Как за секунды обрабатывать DataFrame с миллиардами строк
Анализ больших данных в Python переживает свой ренессанс. Всё началось с NumPy, которая тоже в каком-то смысле причастна к инструменту, с которыми я вас...
Декораторы в Python за три минуты
Декораторы представляют собой удобный для восприятия человеком способ расширения возможностей функции, метода или класса извне. Использование декораторов особенно полезно при декорировании (т. е. расширении)...
Как создавать анимированные графы в Python
Matplotlib и Seaborn — вполне приличные Python-библиотеки для создания превосходных графиков. Но такие графики получаются статичными, и крайне трудно подобрать для них красивое представление данных или...
8 структур данных, которые должен знать каждый дата-сайентист
Организация данных имеет большое значение в сфере дата-сайенс. Представляем 8 основных структур, которые пригодятся любому специалисту по работе с данными.
Развёртывание модели машинного обучения в виде REST API
В статье вы узнаете, как разворачивать модели машинного обучения и составлять прогнозы при помощи любого языка программирования, который вам нравится. Конечно, за основу вы...
Краткое руководство по созданию наборов данных с помощью Python
Хотите собирать и хранить данные своих пользователей? Краткий гайд поможет вам в три шага создать собственный пользовательский датасет. Для этого вам понадобится менее часа и минимальный набор инструментов, включающий API Google Sheets и Streamlit.
Стилизация фотографий под мультфильмы с помощью Python
Чтобы придать фотографиям особый эффект рисованного мультфильма, можно применить на них методы машинного обучения Python
Как вы, наверное, знаете, рисование или создание мультфильмов не всегда делается...
Система инженерии данных «от и до» с Kafka, Spark, Airflow, Postgres и Docker. Часть 1
Создадим простой, но функциональный конвейер, подробно рассмотрим каждый его компонент: от настройки Kafka для потоковой передачи данных и оркестрации задач с Airflow до обработки данных со Spark и их сохранения в PostgreSQL. Сделаем акцент на практическом применении инструментов с Docker.
Структуры данных: основы алгоритмов
Как написать алгоритм? Это, скорее, зависит от задачи и ресурсов. Четко определенных стандартов их написания не существует. Рассмотрим же характеристики алгоритмов и их сложности.
Сопряженное априорное распределение
Часть 1, Часть 2, Часть 3
1. Что такое априорное распределение?
Априорная вероятность — это вероятность события до того, как мы получили дополнительные данные. В байесовском выводе априорное распределение — это...
Топ — 9 фреймворков в мире искусственного интеллекта
Сначала были роботы, затем ассистенты Google Now и Siri, а сегодня новый ИИ — Google Duplex. Похоже, искусственный интеллект добился определенных успехов в том чтобы стать...
Объясняем производящую функцию моментов
1. Начнем с главного — что такое “момент” в вероятности и статистике?
Скажем, нас интересует случайная переменная X.
Моменты — это ожидаемые значения X, например, E(X), E(X²), E(X³) и т.д.
...
Простыми словами о рекурсии
В программировании рекурсия, или же рекурсивная функция — это такая функция, которая вызывает саму себя.
Рекурсию также можно сравнить с матрёшкой. Первая кукла самая большая, за ней...
14 проектов по науке о данных для вашего 14-дневного карантина
Проекты по визуализации
Возможно, самые короткие по срокам проекты визуализации данных! Ниже приведены три интересных набора данных, с помощью которых вы сможете пополнить свои портфолио,...
Оптимизация работы баз данных с PostgreSQL 12
PostgreSQL претендует на звание самой передовой базы данных с открытым исходным кодом в мире, и вполне заслуженно. Основные технические возможности, производительность и рабочие характеристики...
Как составить Data Science портфолио? Часть 1
Как получить работу в области Data Science? Во-первых, нужно знать основы статистики, машинного обучения, программирования и т.д. Во-вторых, вам нужно будет составить портфолио. Да, несомненно,...
Погружение в графы
Графы в большинстве своем представляют собой неупорядоченные деревья. В основном это утверждение касается ненаправленных и невзвешенных графов. Однако оно остается в силе и в...
Шесть рекомендаций для начинающих специалистов по Data Science
Навыки, необходимые для работы
Сфера data science пользуется большим спросом, однако для трудоустройства вам потребуется опыт работы. Несмотря на это, у множества лучших специалистов стоит самый...
Почему теория графов круче, чем вы думали
Что такое графы?
Спросите специалиста из любой области науки, как работает предмет его исследований. Наверняка он предложит вам рассмотреть некую систему с существующими внутри нее связями....
Простое руководство по визуализации данных в машинном обучении
Создание информационных визуализаций - важнейший процесс, помогающий определить эффективность модели МО. Библиотека Yellowbrick, обладающая богатым функционалом, значительно упростит этот процесс.
7 советов по улучшению анализа данных в Python
#1: Pandas Profiling
Преимущества этого инструмента очевидны. Анимация ниже создана с помощью вызова метода df.profile_report():
С помощью этого инструмента можно с легкостью устанавливать и импортировать пакет...
5 базовых статистических концептов, которые должен знать каждый специалист по обработке данных
В таком искусстве, как наука о данных, статистика может оказаться мощным инструментом. В широком смысле, статистика означает использование математики для технического анализа данных. Базовая...
Статистика - это грамматика науки о данных. Часть 5
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
Условная вероятность
Условная вероятность — это вероятность наступления некоторого события, при условии, что другое событие уже произошло.
Условная вероятность...
5 подводных камней нереляционных баз данных
Когда речь заходит о нереляционных базах данных, не все видят две стороны одной медали: многие упускают из виду то, что у этих баз данных...
6 алгоритмов машинного обучения, которые должен знать каждый исследователь данных
Машинное обучение - одна из тех областей, которые должен знать каждый, кто изучает науку о данных. Предлагаем описание 6 ключевых алгоритмов контролируемого МО, изложенное простым, доступным языком.
Машинное обучение. С чего начать? Часть 2
Предыдущая часть: Часть 1
Очистка данных
В любом проекте приходится заниматься «чисткой данных». К следующему этапу можно переходить только после приведения в порядок ваших данных.
Чаще всего...
7 трюков pandas для науки о данных
1. Анализ образцов датафреймов с помощью df.groupby().__iter__()
Обычно исследовать набор данных строка за строкой или группа за группой в блокнотах Jupyter сложнее, чем в Excel....
Как построить идеальное хранилище данных
Может показаться, что в последние годы многое изменилось в сфере сбора и хранения данных. Такие вещи, как NoSQL, «Big Data», различные графические и потоковые...
Статистика - это грамматика науки о данных. Часть 2
Повторение статистики для начала путешествия по науке о данных
Часть 1, Часть 2, Часть 3, Часть 4, Часть 5
Функции распределения вероятностей
Функция распределения вероятностей — это...
4 расширения VS Code, которые пригодятся дата-инженеру
Если вы пользуетесь VS Code, то наверняка успели убедиться в его практичности. Однако работу с этим редактором можно сделать еще удобнее. Предлагаем расширения VS Code, которые сэкономят много времени и сил.
Годовой план изучения науки о данных
2020-ый наконец-то закончился, а значит уже можно начать планировать 2021-ый. Для начала зададим себе вопрос: чему мы хотим научиться в этом году?
Многие выбирают в...
NoSQL убивает SQL?
На прошлой неделе мой друг переслал мне письмо от успешного предпринимателя, который утверждает, что “SQL мёртв”.
Предприниматель убеждён, что чрезвычайно популярные NoSQL базы данных, такие...
Как Ktlint облегчает жизнь разработчикам
Узнайте о фантастических возможностях Ktlint и о том, как внедрить его в проект. Этот инструмент, выполняющий статический анализ и автоматическое форматирование кода, позволит сэкономить массу времени и трудозатрат.
Организация таблиц стилей: самые свежие рекомендации
В процессе обучения совместному использованию HTML и CSS мой инструктор в Devslopes показал мне отличный способ организации CSS для крупных проектов. Конечно, ничто не...
Состояние гонки в Node.js: практическое руководство
Специалисты, имеющие отношение к параллельному проектированию, иногда сталкиваются с так называемым состоянием гонок. Сегодня поговорим о том, чем чревато такое явление, что его вызывает и как с ним бороться.
10 практических примеров использования функций высшего порядка при разработке Android
Функции высшего порядка могут значительно повысить качество и удобство сопровождения кода. Рассмотрим 10 полезных примеров того, как их можно использовать.
Реализация односвязного списка в Golang
Разберем структуру односвязного списка, компоненты его узлов. Рассмотрим четыре способа вставить и удалить данные в связном списке, реализацию с ним других операций.







































































































