Каждый специалист по Data Science тратит большую часть своего времени на визуализацию данных, их предварительную обработку и настройку модели на основе полученных результатов. Для каждого исследователя данных именно эти моменты – самая сложная часть процесса, поскольку хорошую модель можно получить при условии, что вы точно выполните все эти три шага. И вот 10 очень полезных расширений Jupyter Notebook, которые помогут вам выполнить эти шаги.
1. Qgrid
Qgrid – это виджет Jupyter Notebook, который использует SlickGrid, чтобы рендерить фреймы данных pandas в Jupyter Notebook. Это позволяет исследовать ваши фреймы данных с помощью интуитивно понятных элементов управления прокруткой, сортировкой и фильтрацией, а также редактировать фреймы, дважды щёлкая ячейки.
Установка
pip install qgrid #Installing with pip
conda install qgrid #Installing with conda
2. itables
ITables превращает фреймы данных и серии pandas в интерактивные таблицы данных и в ваших блокнотах, и в их HTML-представлении. ITables применяет простой Javascript, из-за чего работает только в Jupyter Notebook, но не в JupyterLab.
Установка
pip install itables
Активируйте интерактивный режим для всех серий и фреймов данных вот так:
from itables import init_notebook_mode
init_notebook_mode(all_interactive=True)import world_bank_data as wb
df = wb.get_countries()
df
3. Jupyter DataTables
Специалисты Data Science и многие разработчики ежедневно работают с dataframe, чтобы интерпретировать данные для обработки. Общий рабочий процесс заключается в отображении фрейма данных, взгляде на схему данных, а затем создании нескольких графиков, чтобы проверить, как распределяются данные, получив более чёткую картину, и, возможно, в том, чтобы найти новые данные в таблице и т. д.
Но что, если бы эти графики распределения были частью стандартного фрейма данных и у нас была бы возможность быстро искать по таблице с минимальными усилиями? Что, если бы такое представление было представлением по умолчанию?
Чтобы нарисовать таблицу, jupyter-datatables использует jupyter-require.
Установка
pip install jupyter-datatables
Как пользоваться расширением?
from jupyter_datatables import init_datatables_mode
init_datatables_mode()
4. ipyvolume
ipyvolume помогает в 3d-графике на Python в Jupyter, в качестве основы используя IPython и WebGL в нём.
Сегодня Ipyvolume может:
- Сделать множественный объёмный рендеринг.
- Отрисовать точечные диаграммы (до ~1 миллиона глифов).
- Отрисовать графики колчана (например, разброс, но со стрелкой в определённом направлении).
- Поддерживает произвольные области, которые вы рисуете мышью.
- Рендерит в стереообъём для виртуальной реальности с помощью Google Cardboard.
- Анимирует в стиле d3, например, если координаты x или цвет точечных диаграмм изменяются.
- Анимация или последовательности, все свойства точечной диаграммы или quiver plot (векторный график) могут быть списком массивов, которые, в свою очередь, могут представлять снапшоты и т. д.
Установка
pip install ipyvolume #Installing with pip
conda install -c conda-forge ipyvolume #Installing with conda
5. bqplot
bqplot – это система визуализации в 2D для Jupyter, основанная на конструкциях Grammar of Graphics.
Задачи библиотеки
- Полноценный фреймворк для 2D визуализаций с помощью API на Python.
- Здравое API, чтобы добавлять пользовательские взаимодействия (панорамирование, масштабирование, выделение и т. д.).
Представлены два API
- Пользователи могут создавать настраиваемые визуализации, используя внутреннюю объектную модель, которая вдохновлена конструкциями Gramamr of Graphics (рисунок, метки, оси, шкалы), и обогащать их визуализацию нашим слоем взаимодействий.
- Или можно воспользоваться контекстным API, подобным pyplot у Matplotlib, который обеспечивает разумный выбор по умолчанию для большинства параметров.
Установка
pip install bqplot #Installing with pip
conda install -c conda-forge bqplot #Installing with conda
6. livelossplot
Не обучайте модели глубокого обучения вслепую! Смотрите на каждую эпоху вашего обучения!
livelossplot предоставляет в Jupyter Notebook график потерь в реальном времени для моделей Keras, PyTorch и других фреймворков.
Установка
pip install livelossplot
Как пользоваться расширением?
from livelossplot import PlotLossesKeras
model.fit(X_train, Y_train,
epochs=10,
validation_data=(X_test, Y_test),
callbacks=[PlotLossesKeras()],
verbose=0)
7. TensorWatch
TensorWatch – это инструмент отладки и визуализации, предназначенный для обработки данных, глубокого обучения и подкрепления знаний от Microsoft Research. Пакет работает в Jupyter Notebook, показывая визуализацию вашего машинного обучения в режиме реального времени и выполняя несколько других ключевых задач анализа моделей и данных.
Установка
pip install tensorwatch
8. Polyaxon
Polyaxon – это платформа для создания, обучения и мониторинга крупномасштабных приложений глубокого обучения. Мы создаём систему для решения задач воспроизводимости, автоматизации и масштабируемости приложений машинного обучения. Polyaxon развёртывается в любом центре обработки данных, у любого облачного провайдера или может размещаться и управляться компанией Polyaxon, платформа поддерживает все основные фреймворки глубокого обучения, такие как Tensorflow, MXNet, Caffe, Torch и т. д.
Установка
pip install -U polyaxon
9. handcalcs
handcalcs – это библиотека для автоматического рендеринга кода вычислений Python в Latex, но таким образом, чтобы имитировать формат вычисления так, как если бы они были написаны карандашом: напишите символическую формулу, сопровождённую числовыми заменами, а затем результат.
Установка
pip install handcalcs
10. jupyternotify
jupyternotify предоставляет магическое значение %%notify, которое уведомляет пользователя о завершении потенциально длительной работы ячейки с помощью push-уведомлений браузера. Примеры применения содержат модели машинного обучения, которые долго обучаются, поиск по сетке или вычисления Spark. %%notify позволяет вам перейти к другой работе и получить уведомление в момент, когда ваша ячейка завершает работу.
Установка
pip install jupyternotify
Надеемся, что данные расширения будут вам полезны. Если у вас есть на примете полезные расширения, не попавшие в данную подборку — делитесь ими в комментариях!
Узнайте подробности, как получить Level Up по навыкам и зарплате или востребованную профессию с нуля, пройдя онлайн-курсы SkillFactory со скидкой 40% и промокодом HABR, который даст еще +10% скидки на обучение:
- Профессия Data Scientist
- Профессия Data Analyst
- Курс по Data Engineering
- Другие профессии и курсыПРОФЕССИИ
- Профессия Java-разработчик
- Профессия QA-инженер на JAVA
- Профессия Frontend-разработчик
- Профессия Этичный хакер
- Профессия C++ разработчик
- Профессия Разработчик игр на Unity
- Профессия Веб-разработчик
- Профессия iOS-разработчик с нуля
- Профессия Android-разработчик с нуля
КУРСЫ
- Курс по Machine Learning
- Курс «Математика и Machine Learning для Data Science»
- Курс «Machine Learning и Deep Learning»
- Курс «Python для веб-разработки»
- Курс «Алгоритмы и структуры данных»
- Курс по аналитике данных
- Курс по DevOps