在OBIEE 11g中集成分类算法?

时间:2013-05-14 02:50:15

标签: oracle classification data-warehouse svm obiee

目前,我参与了基于数据仓库的Banking Analytics 项目。我们一直使用 Oracle 作为数据库, Oracle商业智能工具(OBIEE 11g)作为用户通过weblogic服务器的前端或表示层。

在这里,我需要为ATM卡欺诈模式检测实现支持向量机(SVM)算法。用于流失预测的 CART ,并通过OBIEE将结果提供给用户。所以我的问题是如何将这些算法(用Python实现)集成到OBIEE?

我见过 Oracle Data Miner 与OBIEE的集成,但它实现了自己的算法。

1 个答案:

答案 0 :(得分:4)

11g外部表中有一个名为PREPROCESSOR的新功能(可以找到11gR2的白色页面here) 外部表使您可以直接将平面文件读取到oracle中的表中。新的preprocessos命令使您可以指定脚本名称而不是文件,oracle将使用输出流作为输入。这样你就可以将algorithem结果直接输入oracle。

让我们以CART算法为例

  1. 在oracle中创建一个工作目录

    create or replace directory dmdir as "/some_folder_on_your_os"

  2. 创建一个执行算法的脚本,并以逗号分隔的格式打印输出。我们可以说,对于CART算法,您可以将树输出为level,attribute,value,outcome,confidence

  3. 创建外部表

    CREATE TABLE cart_tree     等级号码,     attribute varchar2(2000),     value varchar2(2000),     结果varchar2(2000),     信心数 )外部组织( TYPE ORACLE_LOADER 默认目录dmdir 访问参数(     NEWLINE删除的记录     字段被','终止     缺少字段值为空     PREPROCESSOR execdir:'my_cart_algorithem.py'     FIELDS(         水平,         属性,         值,         结果,         置信

    )) 地点 ('')) REJECT LIMIT UNLIMITED

    • 请注意location是脚本的参数。在这种情况下是非。
  4. 查询

    select * from cart_tree

  5. 重要的是要理解每次查询表时oracle都会执行脚本。所以 - 我通常使用外部表格来创建一个物化视图。

    您可能会发现有用的第二个选项是使用oracle与R的现有集成.RART中都提供了CART和SVM算法,并且已经与oracle集成。你可以在这里阅读here