Случайная цитата


Все люди от природы стремятся к знанию. (Аристотель. Метафизика)

Как внедрять модели, используя SVB узлы

Обзор

Один из важнейших этапов Data Mining включает в себя сравнение моделей, построенных на обучающей выборке, а именно, тестирование на новых данных. Этот пример поможет разобраться, как осуществить подобное в STATISTICA.

В Data Mining испытание построенных моделей тестовой выборкой называется deployment. То есть у вас есть некоторый алгоритм, параметры которого подбирались на части данных, и вы знаете качество его работы, будь то ошибка классификации или среднеквадратичное отклонение, но по-настоящему о качестве говорит только апробация новыми данными, так называемой тестовой выборкой. Например, оценить скоринговую модель можно на новых заемщиках, для этого достаточно присоединить таблицу с характеристиками клиентов к соответствующему узлу.

В STATISTICA есть два полезных инструмента для  оценки качества модели:  скриптовый узел «Compute Best Prediction from all Models» и  бета-узел «Rapid Deployment» . Одно из главных отличий между скриптовым узлом и бета в том, что SVB – узел (скриптовый) может быть изменен или даже создан с нуля с использованием SVB (STATISTICA Visual  Basic). В бета-узлах нет возможности правки через использование SVB, но зато они обладают большей гибкостью и огромным количеством опций для настройки параметров алгоритмов и вывода результатов. Оба типа узлов могут быть использованы вместе в одном workspace. Таким образом, для людей не знакомых с SVB, бета-узлы будут весьма удобны.

Данная статья подразумевает знакомство читателя с основами навигации в workspace, для интересующихся может быть полезна ссылка How to Navigate the STATISTICA Workspace.

Deployment с использованием скриптовых узлов

Скриптовые узлы легко опознаются в STATISTICA 12 по метке SVB в верхней части иконки узла.  Они работают точно так же,  как и в предыдущих версиях STATISTICA, выбор переменных доступен в узле исходных данных.

Таблица с данными Creditscoring.sta , которую мы будем использовать, находится в папке стандартных примеров программы  STATISTICA 12. После импорта данных в workspace, выберем Scripted Procedures, как показано ниже:

На вкладке Data в группе Manage, выберем Sampling и в подменю Split Training/Test data list  выберем Split Input Data into Training and Testing Samples (Classification).

Двойным кликом по узлу вызовем диалоговое окно Edit Parameters. Укажем Approximate percent of cases for testing равным 25. 

Закройте диалоговое окно и дважды кликните на узел данных Credit Scoring. В появившемся окне нажмите на кнопку Variables и задайте переменные как на рисунке ниже:

Нажмите OK, чтобы закрыть диалоговое окно выбора переменных. После запуска исполнения, workspace должен выглядеть следующим образом:

Теперь воспользуемся двумя инструментами: Boosted Classification Trees и Random Forest Classification для получения модели на обучающей выборке. Впоследствии, эти две модели будут сравниваться на тестовой выборке. Для сравнения на новых данных необходимо задать узел, который будет отвечать за deployment. Скриптовые процедуры имеют два типа узлов – один с deployment, другой без.

Нажмите кнопку Node Browser, чтобы появилось окно Node Browser. В левой части окна выберите папку Data Mining, затем папку Deployment; далее Scripted Deployment и наконец Classification. В правой части двойной клик на узле Boosting Classification Trees with Deployment, как показано ниже, чтобы добавить узел в workspace. Можно просто перетащить узел в рабочую область. 

Аналогично, выберите  Random Forest Classification with Deployment и Compute Best Predicted Classification from all Models. Теперь соедините узел обучающей выборки с узлами boosted tree и random forest, а узел тестовой выборки соедините с узлом Compute Best Predicted Classification from all Models. Нажмите Run All в верхнем левом углу Workspace. Workspace должно выглядеть следующим образом: 

Результат классификации двух моделей находится в таблице Final Prediction for Credit Rating. Таким образом, можно сравнить качество двух алгоритмов в рамках одной таблицы и получить предсказания на основании голосования. 

Если не выполнен deployment и вы запустили узел Compute Best Predicted Classification from all Models, появится следующее сообщение об ошибке:

Deployment с использованием бета-узлов описан в другой статье на нашем сайте.


В начало