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

Независимо от того, используем ли мы Python или R, большинство IDE на самом деле не предназначены для этого, поскольку они предназначены для запуска линейного сценария от начала до конца. В некоторой степени блокноты Jupyter могут смягчить эту проблему, позволяя нам разделить код на разные области. Однако это не заведет нас слишком далеко, поскольку обычно мы хотим протестировать различные варианты этих подмоделей. В этом случае очень сложно перемещаться по записной книжке, содержащей все это.

Prython — это новая IDE, позволяющая размещать панели на холсте, размещать код R или Python, как обычно, и соединять эти панели друг с другом. Его можно бесплатно скачать на www.prython.com

В этом простом примере* (см. изображение выше) у нас есть панель, которая создает обучающие данные (в данном случае мы используем стандартный набор данных радужной оболочки), и три панели, подключенные к части OUT. Это означает, что все, что создано на этой начальной панели, будет доступно на трех панелях ниже. Мы разделили наш код следующим образом: в нижний левый поместили одну модель Keras, в центр поместили другую модель Keras, а в третий (справа) поместили модель scikit-learn.

Каждая панель может работать в трех режимах, отмеченных тремя синими кружками на каждой панели: только эта панель, до этой панели (все панели, подключенные к IN) или все панели, которые используют ее выходы (все панели, подключенные к OUT). ). В этом случае мы можем просто перейти на первую панель в верхней левой части и нажать ››. Это выполнит эту панель и три панели ниже. Обратите внимание, что все журналы обновляются соответствующим образом, а график создается рядом с создавшей его панелью.

Ничего не стоит то, что точно такая же логика применяется при запуске панелей в R. Наконец, обратите внимание, что, хотя цель этого упражнения состояла в том, чтобы показать, как мы можем использовать это для «тестирования» различных моделей, мы также можем использовать его для запуска единый «линейный» сценарий; но позволяет нам разделить код в разных областях. Например, мы можем поместить подготовку ввода на одну панель, модель на другую панель и часть сохранения выходных данных на другую. И, очевидно, ничто из этого не ограничивает нас в использовании его только для машинного обучения/науки о данных, любой скрипт, который у нас есть в R или Python, может быть выполнен здесь.

* на самом деле это один из примеров проектов, включенных в prython