2013-05-14 2 views
1

В настоящее время я участвовал в проекте «Банковская аналитика» на базе хранилища данных. Мы использовали Oracle в качестве базы данных и Инструмент Oracle Business Intelligence (OBIEE 11g) в качестве уровня интерфейса или презентации для пользователя через веб-сервер.Интеграция алгоритмов классификации в OBIEE 11g?

Здесь, мне нужно реализовать опорных векторов (SVM) алгоритм ATM карты обнаружения мошенничества шаблон & CART для прогнозирования оттока абонентов и кормить результат пользователю через OBIEE. Поэтому мой вопрос: как интегрировать эти алгоритмы (реализованные в Python) в OBIEE?

Я видел около Oracle Data Miner Интеграция с OBIEE, но она реализует свой собственный алгоритм.

ответ

4

Существует новая функция в 11g внешних таблиц, называемых PREPROCESSOR (белый papaer для 11gR2 можно найти here) Внешней таблицы позволяет считывать плоские файлы непосредственно в таблицы оракула. новая команда preprocessos позволяет указать имя сценария вместо файла, а oracle будет использовать выходной поток в качестве входных данных. таким образом вы можете получить результаты algorithem непосредственно в oracle.

позволяет принимать вам алгоритм CART в качестве примера

  1. создать рабочий каталог в оракула

    create or replace directory dmdir as "/some_folder_on_your_os"

  2. создать скрипт, который выполняет алгоритм и печатает вывод в запятой с разделителями формат. скажем, что для алгоритма CART вы можете вывести дерево как level,attribute,value,outcome,confidence.

  3. создать внешнюю таблицу

    CREATE TABLE cart_tree номер уровня, атрибут varchar2 (2000), значение varchar2 (2000), результат varchar2 (2000), доверия номер ) ОРГАНИЗАЦИЯ ВНЕШНЕЕ ( ТИП ORACLE_LOADER УМОЛЧАНИЮ КАТАЛОГ dmdir доступ к параметрам ( ЗАПИСИ, разграниченных NEWLINE ПОЛЯ TERMINATED BY '' отсутствует поле значения NULL препроцессор EXECDIR: 'my_cart_algorithem.py' ПОЛЕ ( уровня, атрибута, значения, результата, доверия

    )) МЕСТА ('')) REJECT LIMIT НЕОГРАНИЧЕННОЙ

    • уведомления что параметр location является параметром для скрипта. в этом случае не.
  4. запрос

    select * from cart_tree

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

Второй вариант, который может показаться вам полезным, - использование существующего интегрального оракула с использованием R. Оба алгоритма CART и SVM доступны в R и имеют встроенную интеграцию с oracle. вы можете прочитать об этом здесь here