Рубрика «data science»

Можно выделить ряд алгоритмов, которые являются базовыми и лежат в основе практически каждой строчки программ, написанных на языках высокого уровня. Хорошо иметь под руками классический многотомный труд Дональда Кнута "The Art of Computer Programming", там детально разобраны многие базовые алгоритмы. Но прочесть и усвоить все — задача, требующая много усилий и времени, которая должна как-то быть мотивирована.

Многие могут предположить, что нюансы необходимо было знать 50 лет назад, а сейчас можно пользоваться готовыми пакетами и функциями и не погружаться в детали. Однако, это далеко не так. Равно как никто не отменял важность понимания представления методов хранения данных в памяти и их обработки в процессоре.

Далее разберем нюансы на примере функций сортировки. Сортировка и поиск используются максимально часто во всех манипуляциях с данными. Экономия нескольких миллисекунд на операции может приводить к суммарному сокращению часов расчета на значительных данных.

Является продолжением серии предыдущих публикаций.

Читать полностью »

Видеоаналитика «М.Видео-Эльдорадо»: 30 000 камер, 1 компьютер и нейросеть - 1

В середине 2020 года мы в «М.Видео-Эльдорадо» начали строить собственную систему видеоаналитики «с нуля», не используя сторонние готовые платформы. В перспективе она должна охватить более тысячи магазинов торговой сети. О том, почему мы выбрали этот путь и каких результатов добились, читайте в сегодняшней статье.Читать полностью »

10 полезных расширений для дата-сайентистов - 1


Каждый специалист по Data Science тратит большую часть своего времени на визуализацию данных, их предварительную обработку и настройку модели на основе полученных результатов. Для каждого исследователя данных именно эти моменты – самая сложная часть процесса, поскольку хорошую модель можно получить при условии, что вы точно выполните все эти три шага. И вот 10 очень полезных расширений Jupyter Notebook, которые помогут вам выполнить эти шаги.

Читать полностью »

Ранее у нас в блоге уже был материал про лучших в Kaggle, а сегодня представляю вам интервью с признанным дата-сайентистом и гроссмейстером Kaggle Филиппом Сингером, который поделится своим опытом, вдохновением и и достижениями. Беседа призвана мотивировать и воодушевить других людей, которые хотят понять, что нужно, чтобы стать гроссмейстером Kaggle. Также в этом интервью мы узнаем больше об академическом прошлом Филиппа, его увлечении Kaggle и о его работе в качестве дата-сайентиста.

Дата-сайентист, который просто не может перестать выигрывать на Kaggle - 1

Читать полностью »

Работать с Data Science в Jupyter, конечно, очень приятно, но если вы хотите пойти дальше и развернуть свой проект или модель на облачном сервере, то здесь есть много отличных решений — с помощью Flask, Django или Streamlit. Хотя облачные решения по-прежнему самые популярные, часто хочется создать быстрое приложение с графическим интерфейсом. Например:

  • Модель ML тестируется на различных наборах данных. Вы можете перетащить файлы CSV в модель и отрисовать кривую AUS/ROC. Здесь GUI проявит себя прекрасно, правда?
  • Построить случайную переменную или статистическое распределение в заданном диапазоне и динамически управлять параметрами с помощью графического интерфейса.
  • Быстро запустить некоторые задачи обработки или предварительной обработки данных в наборе с помощью GUI вместо того, чтобы писать кучу кода.

В этой статье мы покажем, как создать такой графический интерфейс, потратив минимум усилий на изучение библиотеки Python.

Как сделать Data Science приложение для Windows (и не только) с графическим интерфейсом с помощью PySimpleGUI - 1


Читать полностью »

Когда тот, кто работает в сфере Data Science, собирается показать результаты своей деятельности другим людям, оказывается, что таблиц и отчётов, полных текстов, недостаточно для того чтобы представить всё наглядно и понятно. Именно в таких ситуациях возникает нужда в визуализации данных, в такой их обработке, которая позволит всем желающим в них разобраться и ухватить суть тех сложных процессов, которые они описывают.

В этом материале я расскажу о лучших бесплатных инструментах, позволяющих без особых сложностей создавать впечатляющие визуальные представления данных. При этом тут я не буду говорить о сложных системах вроде Power BI и Google Studio. Я выбрал те 8 инструментов, о которых пойдёт речь, из-за того, что ими легко пользоваться, из-за их приятного внешнего вида, из-за того, что работать с ними можно, не написав ни единой строчки программного кода и из-за того, что они бесплатны. Кроме того, они позволяют создавать интерактивные визуализации. А это значит, что графики, представляющие некие данные, могут содержать в себе больше сведений об этих данных, чем обычные изображения. Да и работать с такими графиками интереснее.

8 бесплатных инструментов для создания интерактивных визуализаций данных без необходимости написания кода - 1

Так как инструменты для визуализации данных то появляются, то исчезают, я включил в этот материал только те из них, которые, вероятнее всего, ещё долго будут пребывать в добром здравии. А это значит, что вполне разумным шагом будет вложение некоторого времени в их изучение. Как уже было сказано, пользоваться этими инструментам можно без написания кода. Но если вас интересует визуализация данных именно через код — взгляните на этот материал.
Читать полностью »

Делаем систему параллелизма надёжнее

Сегодня посмотрим как смоделировать программу с конкурентностью на FSP. Сначала давайте разберемся, зачем вообще нужна конкурентность. Вот что можно сделать с её помощью:

  • Повысить производительность многопроцессорного железа, это и называется параллелизм;
  • Увеличить пропускную способность приложения (вызову ввода-вывода нужно блокировать только один поток);
  • Сделать приложение отзывчивее за счёт выполнения основных задач параллельно фоновым (высокоприоритетный поток для запросов пользователей);
  • Структурировать программу, повысив её эффективность (взаимодействующие со средой программы управляют несколькими действиями и обрабатывают несколько событий).

Строим надёжную конкурентность с FSP и моделированием процессов - 1


Сгенерированная инструментом LTSA диаграмма состояний
Читать полностью »

В этой статье я хочу продемонстрировать R Markdown — удобную надстройку для программирования вашего проекта как на R, так и на Python, позволяющую программировать некоторые элементы вашего проекта на двух языках и управлять объектами, созданными на одном языке, с помощью другого языка. Это может быть полезно потому, что:

  1. Позволяет писать код на привычном языке, но при этом использовать функции, существующие только в другом языке.
  2. Позволяет напрямую сотрудничать с коллегой, который программирует на другом языке.
  3. Даёт возможность работать с двумя языками и со временем научиться свободно владеть ими.

Как быть билингвом в Data Science - 1


Читать полностью »

Хочу поделиться методами освоения Data science с нуля человеком из другой ИТ специальности. Цель: дать понять, подходит ли Вам эта специальность в принципе, и рассказать про эффективные подходы к самообучению, которые мне помогли (отдельно планирую потом детальные статьи по отдельным темам).

Отличные материалы уже существуют по большинству конкретных тем, я сам по ним учился.
Читать полностью »

Модели глубокого обучения улучшаются с увеличением количества данных и параметров. Даже с последней моделью GPT-3 от Open AI, которая использует 175 миллиардов параметров, нам ещё предстоит увидеть плато роста количества параметров.

Для некоторых областей, таких как NLP, рабочей лошадкой был Transformer, который требует огромных объёмов памяти графического процессора. Реалистичные модели просто не помещаются в памяти. Последний метод под названием Sharded  [букв. ‘сегментированный’] был представлен в Zero paper Microsoft, в котором они разработали метод, приближающий человечество к 1 триллиону параметров.

Специально к старту нового потока курса по Machine Learning, делюсь с вами статьей о Sharded в которой показывается, как использовать его с PyTorch сегодня для обучения моделей со вдвое большей памятью и всего за несколько минут. Эта возможность в PyTorch теперь доступна благодаря сотрудничеству между командами FairScale Facebook AI Research и PyTorch Lightning.

Как экономить память и удваивать размеры моделей PyTorch с новым методом Sharded - 1


Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js