Oracle 学习资料库
使用 Oracle Data Mining 解决业务问题
本教程介绍如何使用 Oracle Data Mining 解决业务问题 。
所需时间
大约 2 个小时
本教程包括下列主题:
| 概述 | |
| 情景 | |
| 前提条件 | |
| 启动 Oracle Data Miner | |
| 为数据挖掘准备数据 | |
| 使用挖掘活动指南 | |
| 总结 |
将鼠标置于此图标上以加载和查看本教程的所有屏幕截图。(警告:因为此操作会同时加载所有屏幕截图,所以网速较慢时,响应时间可能会比较长。)
注意:此外,您还可以在下列步骤中将鼠标放在每个单独的图标上,从而仅加载和查看与该步骤相关的屏幕截图。您可以单击单个屏幕截图将其藏。
数据挖掘有时称为知识发现 — 其目的是提供其他方法无法找到可执行 (actionable) 信息。该信息可以改进您业务的运作。例如,假设一个营销活动产生 2% 的积极响应。如果数据挖掘有助于使该活动专门针对最可能响应的人,从而产生 3% 的响应,则该业务将增加 50% 的利润。
可以把数据挖掘分为两类“学习”。
| 监管的学习 | 目的是预测描述某个行为的特定特征或属性的值。预测的属性称为“目标属性”。 |
| 无监管的学习 | 目的是发现关系和模式而非确定具体的值。这种情形下,没有“目标属性”。 |
Oracle Data Mining 是 Oracle 数据库中内嵌的强大的数据挖掘软件,它使您能够揭示隐藏在数据中的新洞察。Oracle Data Mining 能够帮助企业瞄准最佳客户、发现和防止欺诈、发现对关键绩效指标 (KPI) 最有影响的属性,以及发现隐藏在数据中的有价值的新信息。Oracle Data Mining 帮助技术专家找出数据中的模式、识别关键属性、发现新的集群和关联,并揭示有价值的洞察。
Oracle Data Mining 使公司能够:
| 了解更多信息 | 利用您的数据并发现以前隐藏的有价值的新信息和见解。 |
| 进行更多操作 | 构建自动提取和传播新信息和见解的应用程序。 |
| 花费更少 | Oracle Data Mining 比传统方法要便宜得多,作为您在 Oracle 技术中投资的一部分,它可以显著降低您的总拥有成本。 |
Oracle Data Mining 超越了标准查询和报表工具以及联机分析处理 (OLAP) 工具。查询和报表工具以及 OLAP 工具可以告诉您谁是您的重要客户,哪些产品卖的最多,以及哪些方面的成本最高。使用 Oracle Data Mining,您可以实施策略来:
| 预测和防止客户流失 | |
| 获得新客户并识别最能带来收益的客户 | |
| 识别会成功的交叉销售机会 | |
| 洞察违规的和欺诈性的活动 | |
| 发现新的集群或片断 | |
| 开发客户概要文件 | |
|
识别药物发明中的可能目标和有希望的线索 |
|
| 找出同时出现的项目和/或事件的关联关系 | |
| 挖掘非结构化数据,即文本。 |
传统商务智能 (BI) 工具(例如,报表工具、交互式查询和报表工具以及联机分析处理 (OLAP) 工具)只报告过去发生的事情。而 Oracle Data Mining (ODM) 使您能够超越传统 BI 和报表工具,使您可以挖掘您的数据以及构建高级数据挖掘应用程序。ODM 使您能够发现新见解、片断和关联,进行更准确的预测,找到最能影响您业务的变量,而且通常从您的数据提取更多信息。例如,通过分析您最佳客户的个人信息,ODM 使您能够构建数据挖掘模型和集成的应用程序,来识别将来可能成为您最佳客户的客户。这些客户可能不表现为您目前最有价值的客户,但可能与您当前最佳客户的有相似的个人信息。此外,使用 ODM,您可以进行更多操作并将预测模型实现为一个定期运行的生产应用程序,该应用程序在每个周一早上将您最有希望的客户列表分发到您的销售团队。了解您客户的战略价值(哪些可能成将来能带来收益的客户或者相反),或者预测哪些客户可能热衷或响应营销策略,而且将该信息集成到您的运营中对于积极管理业务来说是至关重要的。
使用 Oracle Data Mining 解决业务问题的阶段如下所示:
| 就数据挖掘和业务目标而言的问题定义 | |
|
数据获取和准备 |
|
| 构建和评估模型 | |
| 部署。 |
注意:本教程并不打算完整介绍 Oracle Data Mining。它只是介绍了进行某些常见数据挖掘操作所需的技术。如果您需要有关其中某些主题的更多背景信息,请参阅《Oracle Data Mining 概念指南》。
一个电子产品连锁店想为客户发打折卡,但只想发给那些预期将因为此卡而增加购买量(从而使公司增收)的客户。因根据在一部分客户中开展了一个试验性的促销活动,并将结果汇总到一个表中,其中包含客户人口统计信息、采购模式以及每个客户所带来收入的测算。
然后使用一个描述试验性促销活动中的客户和结果的数据集创建可以应用于所有客户的模型,以便预测使用打折卡的每个客户的预期收入级别 — 将预测的目标属性为 AFFINITY_CARD,它的值可以是 0(低利润)或 1(高利润)。不同的目标值(在本例中为 0 或 1)有时称为目标类,因此预测每个客户的目标值称为“分类”。
开始本教程之前,您应该:
| 1. | 完成了教程 在 Windows 上安装 Oracle 数据库 10g 。 |
| 2. |
完成教程: 安装 Oracle Data Miner 10g 第 2 版 。 |
要启动 Oracle Data Miner,执行以下操作。
| 1. |
双击 <your_path>\bin\odminerw.exe。
|
| 2. |
要以 dmuser1 连接,单击 OK。
|
| 3. |
您可能想在您的用户架构中确认示例表和视图。展开 Data Sources > dmuser1。
|
Data Mining 过程中使用的数据通常必须从不同位置收集。此外,准备数据进行 Data Mining 操作可能需要对数据进行某种变换。Oracle Data Mining 有很多强大的实用程序,可用于取样、记录、离散和创建新变换的性。
在本部分中,您将执行以下任务:
| |
显示数据和统计信息 | |
| |
使用数据变换向导 | |
执行以下步骤:
| 1. |
可以显示表或视图的结构。单击 MINING_DATA_BUILD_V。
|
| 2. |
单击 Data 选项卡查看内容示例。 滚到窗口 右侧查看完整的详细信息 注意:默认显示记录数为 100;在 Fetch Size 窗口中输入不同的数,然后单击 Refresh 更新显示的大小。此外,可以单击 Fetch Next 增加显示的行。
|
| 3. |
右击 MINING_DATA_BUILD_V 显示具有更多选项的菜单。可以使用 Transformation 向导和其他工具进行数据发掘。
|
| 4. |
要查看统计汇总,可以根据数据格式类型单击两个选项之一。单击 Show Summary Single-Record。 您的输出应该如以下图像所示: 对于每个数值性属性,显示了 Maximum 和 Minimum 值以及平均值和变量。这些统计信息基于示例计算而来。本例中的示例大小是 999。可以通过调整 ODM Preferences(位于 Tools 下拉菜单)来更改示例大小。
|
| 5. |
对于任何突出显示的属性,可以查看值的分类。 a.突出显示 AFFINITY_CARD。 b.单击 Histogram。 默认 bin 最多为 10;可通过单击 Preferences 更改该数字。 数值性属性分为最小和最大之间等宽的指定 bin 数。这些 bin 以属性值的升序显示。分类属性使用“Top N”方法(N 是 bin 的数量)划分 bin。出现频率最多的 N 值有自己的 bin,其他值放入一个标记为“Other”的 bin 中。这些 bin 以 bin 大小的降序显示。 当检查完时,单击 OK,然后关闭 Data Summarization Viewer 窗口。
|
Mining Activity Guides 帮助您将不同源中的数据汇总到一个视图或表中。此外,它们执行特定算法所需的变换。但是,使用以下数据变换向导通常可以单独完成某些转换。
| |
筛选器 | |
| |
重新编码 | |
| 派生字段 | ||
在本教程中,您将学习如何使用 Filter Single -Record Transformation 向导。
假设您只想关注 21 岁到 35 岁之间的客户,则可以筛选数据从而只包括那些人。Oracle Data Miner 提供筛选变换来基于属性值定义数据子集。执行以下步骤:
| 1. |
单击 Data > Transform > Filter Single-Record。
|
| 2. |
在 Welcome 页面中单击 Next。
|
| 3. |
识别输入数据并单击 Next。本例中使用的视图是 MINING_DATA_BUILD_V。
注意:如果通过您右击该表或视图名访问该向导,则会因该数据是已知的而跳过该步骤。
|
| 4. |
为所得视图输入名称,然后单击 Next。
|
| 5. |
在 Filter 文本框中输入筛选条件。此外,要在对话框中构造条件,单击 Filter 域右边的 图标。
|
| 6. |
在 Expression Editor 页面中,执行以下步骤: a.双击属性名 AGE。
b.单击 >= 按钮并键入 21 构造所显示条件的第一部分。
c.单击 AND 继续定义完整条件。双击 AGE。
d. 单击 <= 按钮并键入 35。
e. 单击 Validate 按钮查看是否有源数据子集满足该条件。
f. 单击 OK 在 Filter 窗口中显示该条件。
|
| 7. |
单击 Next。
|
| 8. |
单击 Finish 完成该变换。 您的输出应该如以下图像所示:
|
当定义了数据挖掘问题并识别源数据时,数据挖掘过程还剩两个阶段:构建/评估模型并显示结果。Oracle Data Miner 包含活动指南,其目的在尽量减少这些阶段的所需的干预。此外,Build 活动中使用的隐式和显式选择和设置可以无缝地传递给 Apply 活动。因此,隐藏或消除了很多通常需要的操作。
Build Activity Wizard 允许您:
| |
识别要添加到事例表(基本的源数据)中的补充数据 | |
| |
选择数据挖掘功能和算法 | |
| 手动调整 Activity 设置,而非接受自动设置 | ||
该示例在处理高利润或低利润客户的个人信息时,使用“决策树分类”算法创建、计算和应用预测模型分类客户。您需要执行下列任务:
| 1. | 使用一种挖掘活动生成一个预测模型 | |
| 2. | 使用 Mining 活动应用一个预测模型 | |
| 1. |
对于该主题,使用原始视图而非刚创建的视图。单击左导航器中的 MINING_DATA_BUILD_V。
|
| 2. |
要启动 Activity Build Wizard,单击 Activity > Build。
|
| 3. |
显示 New Activity Wizard-Welcome 页面。单击 Next。
|
| 4. |
在 Select Mining Type 页面上,接受默认的 Classification Function Type 以及 Decision Tree Algorithm。单击 Next。
|
| 5. |
要选择将从示例表或视图挖掘的所有数据,确保未选中 Join additional data with case table 框。如果选中该框,可以指定要与该事例表联接的其他表和架构的数据。该示例假设在本例中所有必需的数据均位于事例表 MINING_DATA_BUILD_V 中。从 Unique Identifier 下拉列表选择 CUST_ID。然后单击 Next。
|
| 6. |
您可以针对数据挖掘问题指定要预测的属性。单击 AFFINITY_CARD 单选按钮指示目标,然后单击 Next。 注意:本教程中要预测的目标属性为 AFFINITY_CARD
|
| 7. |
一些评估结果取决于您选的 Preferred Target Value。在本例中,您要识别高利润客户 (Target Value = 1)。选择 1 作为 Preferred Target Value 并单击 Next。
|
| 8. |
为活动输入描述性的名称并单击 Next。
|
| 9. |
显示 Activity Wizard 的最后一步。您可以在 Activity 中显示这些设置。单击 Advanced Settings。
|
| 10. |
这些参数的默认设置即可确保好的结果。Build 参数确定如何构造决策树的分支。单击 OK。
|
| 11. |
确保选中 Run upon finish 复选框。单击 Finish。 当完成 Activity Wizard 时,将显示所选活动对应的步骤。如果您选择 Run Upon Finish,将顺次完成这些步骤,而且每完成一个步骤将在其右侧显示一个检查标记。
|
| 12. |
要 查看该树的结构,在 Build 步骤中单击 Result。
|
| 13. |
您的结果可能与显示的结果有所不同,这是因为所采样的数据集较小。默认视图显示所有节点和用于确定分支的属性值。可以突出显示某个节点来显示将记录包括在该节点中的规则。预测值是该节点中多数记录的目标值。Confidence 是具有预测目标值的节点中的记录所占的百分比。Cases 是满足该节点规则的源数据中的实际事例数。Support 是满足该节点规则的源数据中的事例所占的百分比。
|
| 14. |
您可能只想查看终端节电(称为 Leaves)并消除中间节点。单击 Show Leaves Only 复选框。
|
| 15. |
决策树在应用于新数据时对丢失值非常敏感。但是,如果分隔属性丢失,ODM Decision Tree Algorithm 提供将用在它的位置的称为 surrogate 的可选属性。如果分隔属性和它的 surrogate 丢失,在该树的父节点确定预测值。要查看该代理,突出显示一个节点并单击 Surrogate 单选按钮。 关闭 Build Results 窗口。
|
| 16. |
要评估 Decision Tree Model,在 Test Metrics 步骤中单击 Result。
|
| 17. |
单击 Accuracy 选项卡。
|
| 18. |
单击 More Detail 按钮查看 Confusion Matrix。
|
| 19. |
Confusion Matrix 通过将该模型应用到测试活动的示例进行计算。AFFINITY_CARD 的值是已知的而且由行表示;列是 Classification Model 进行的预测。右上角和左下角单元格指示潜在预测错误。多数业务问题解决方案尝试最小化一种错误。例如,左下角单元格包含“错失的机会”数 — 该模型未正确识别的高利润客户的情形。单击 ROC 选项卡。
|
| 20. |
要探究该模型的参数中的可能更改,您可以通过单击图形右下角的箭头按钮前后滑动红线,并查看 Confusion Matrix 中的更改,直到这些值指示该问题的一个优秀解决方案。单击 Lift。
|
| 21. |
可以查看两个显示升降计算的不同解释的图形。使用所选的 Cumulative Lift 单选按钮,这指示该模型比天真的猜想好得多。在本例中,Decision Tree 找到了比第一个分支中的机会敏感 2.5 倍的示例。选择 Cumulative Positive Cases 单选按钮。
|
| 21. |
该图形指示为了找到所需的积极示例数(即高利润客户),必须分析多少示例。
|
当一个模型应用于新数据时,必须按照与准备 Build 活动的源代码相同的方式来准备和转换输入数据。Apply 活动基于 Build 活动。Build 活动传递到 Apply 活动,无论需要什么知识来适当准备输入数据。执行以下步骤:
| 1. |
单击 Activity > Apply
|
| 2. |
单击 Next。
|
| 3. |
扩展 Classification 并选择您刚生成的 Build Activity。然后单击 Next。
|
| 4. |
单击 Select 链接选择 Apply 过程的输入数据。
|
| 5. |
展开 DMUSER1 并选择 MINING_DATA_APPLY_V。然后单击 OK。
|
| 6. |
接受默认数据源。单击 Next。
|
| 7. |
将生成一个对于每个客户 Prediction 和 Probability 的表。可以选择要显示在结果中的附加属性。接受默认选项,然后单击 Next。
|
| 8. |
可以选择 Predictions 的格式。接受默认设置(包括 Target 值,其中每个事例具有最高的 Probability),然后单击 Next。
|
| 9. |
为活动输入一个名称,然后单击 Next。
|
| 10. |
确保选中 Run upon finish 复选框。单击 Finish。
|
| 11. |
您的 Data Mining 活动正在运行。但完成后,单击 Result 链接。
|
| 12. |
对于每个客户(事例),包括 1(高利润)或 0(低利润)的预测,以及该 Prediction (Probability) 中的 Confidence。成本是预测值的另一个量度 — 低 Cost 意味着高 Probability。由于该模型是一个树形结构(其中每个分支表示一个规则),您可以突出显示一行并单击 Rule 查看如何进行地预测。
|
| 13. |
解释了规则逻辑。
|
在本教程中,您学习如何:
| 启动 Oracle Data Miner | ||
| 为数据挖掘准备数据 | ||
| 使用挖掘活动指南 | ||
将鼠标置于该图标上可以隐藏所有屏幕截图。
热门下载 | ||
更多融合中间件下载 | ||