机器学习模型构建与Oracle Analytics Cloud使用指南
在机器学习领域,模型的构建、评估和应用是关键环节,同时数据的准备和可视化也至关重要。本文将介绍机器学习模型的应用以及Oracle Analytics Cloud(OAC)的使用方法。
1. 机器学习模型应用
在机器学习模型应用阶段,需要将模型应用到新的数据集上。以下是具体的操作步骤和相关查询示例:
1.1 连接测试表和结果表
可以使用以下查询将 HTP_APPLY_RESULT 表和 N1_TEST_DATA 表连接起来:
SELECT A.*, B.*
FROM HTP_APPLY_RESULT A, N1_TEST_DATA B
WHERE PREDICTION = ${PREDICTION='1','1'|'0'} AND A.CUST_ID = B.CUST_ID;
1.2 为新数据预测概率
对于 N1_NEW_DATA 表中的新客户信息,可使用以下查询预测每个客户拥有家庭影院套餐的概率:
SELECT *
FROM (SELECT CUST_ID, PREDICTION_PROBABILITY(HTP_CLASS_MODEL, '1'
USING A.*) PROBABILITY
FROM N1_NEW_DATA A);
1.3 为特定客户集预测概率
若要为特定客户ID(如102837, 103434, 103459)的客户预测概率,可运行以下查询:
SELECT CUST_ID, ROUND(PREDICTION_PROBABILITY(HTP_CLASS_MODEL, '1'
USING A.*), 2) PROBABILITY FROM N1_NEW_DATA A
where CUST_ID in (102837, 103434, 103459);
1.4 为所有新客户预测概率
将上述查询与 N1_TEST_DATA 表连接,可为所有新客户预测概率:
SELECT A.CUST_ID, A.PROBABILITY, B.EDUCATION, B.OCCUPATION,
B.HOUSEHOLD_SIZE, B.YRS_RESIDENCE, B.Y_BOX_GAMES
FROM (SELECT * FROM (SELECT CUST_ID,
ROUND(PREDICTION_PROBABILITY(HTP_CLASS_MODEL, '1' USING
C.*), 2) PROBABILITY FROM N1_NEW_DATA C)) A,
N1_TEST_DATA B
WHERE A.CUST_ID = B.CUST_ID
ORDER by A.PROBABILITY DESC;
1.5 创建新的预测表
可以使用以下查询创建一个新表 HTP_NEW_PREDICTION ,并填充预测概率:
CREATE TABLE HTP_NEW_PREDICTION AS
SELECT A.CUST_ID, A.PROBABILITY, B.EDUCATION, B.OCCUPATION,
B.HOUSEHOLD_SIZE, B.YRS_RESIDENCE, B.Y_BOX_GAMES
FROM (SELECT * FROM (SELECT CUST_ID,
ROUND(PREDICTION_PROBABILITY(HTP_CLASS_MODEL, '1' USING
C.*), 2) PROBABILITY FROM N1_NEW_DATA C)) A ,
N1_TEST_DATA B
where A.CUST_ID = B.CUST_ID;
1.6 查询新的预测表
运行以下查询可获取概率值的分布:
select * from HTP_NEW_PREDICTION;
查询结果可以以柱状图的形式显示,其中 PROBABILITY 作为键, CUST_ID COUNT 作为值。
2. Oracle Analytics Cloud 概述
Oracle提供了三条分析产品线:Oracle Analytics Cloud(OAC)、Oracle Analytics Server和Oracle Analytics for Applications。OAC具有增强、集成和协作的特点,尤其适合数据准备和可视化,其增强分析功能由机器学习驱动。
目前,OAC有专业版和企业版两个版本。专业版包含了数据分析的所有功能,企业版则提供了更多功能,如数据建模、像素完美报告以及从其他产品和环境迁移的可能性。OAC不包含在免费产品中,但可以进行30天的免费试用。桌面版(Oracle Analytics Desktop)可免费用于测试和培训,但用于生产时需要许可证费用。
3. OAC主导航菜单
OAC的主导航菜单包含以下几个部分:
- Home :返回包含OAC所有内容和搜索功能的主页。
- Catalog :列出所有文件夹及其内容。
- Data :包含所有数据集、连接、数据流、序列和数据复制定义。
- Machine Learning :包含使用OAC创建或从Oracle数据库注册的所有机器学习模型。
- Jobs :列出OAC中定义的所有作业和计划。
- Console :列出可视化和共享、配置和管理工具。
- Academy :提供关于OAC的学习资源,从入门到高级主题。
在OAC中,项目是数据准备、可视化和叙述的集合,可以以不同格式与其他用户共享。
4. 数据准备
数据准备是数据分析的重要步骤,以下是在OAC中进行数据准备的具体操作:
4.1 创建项目和数据集
可以使用“Create”按钮创建项目、数据集、数据流、序列、连接、数据复制和复制连接。创建数据集的方法有两种:
- 选择“Create ➤ Data Set”。
- 从主菜单中选择“Home”或“Data”,找到所需的数据集。
数据集可以从文件或外部数据源连接创建。如果使用文件,只需拖放文件;如果使用连接,可以选择现有连接或创建新连接。创建连接时,需要选择连接类型,还可以使用ODBC和JDBC连接支持这些连接器的其他数据库。
4.2 数据探查和转换
打开数据集时,会自动对数据集样本进行列级探查。探查后,OAC会推荐一些数据转换和丰富操作,这些推荐可以在“Prepare”选项卡下的“Recommendations”中查看。可以接受或忽略这些推荐,也可以使用列的“Options”菜单添加自己的转换或丰富操作。
操作步骤会自动添加到“Preparation Script”窗格中,并在数据集样本上运行。可以添加、编辑或删除脚本中的操作步骤。若脚本中的转换步骤旁边有蓝色点,表示该脚本尚未对整个数据集运行,点击“Apply Script”可对整个数据集运行脚本。
4.3 数据集关联和复制
可以同时选择多个数据集进行准备。点击屏幕底部的“Data Diagram”选项卡,可以查看OAC认为数据集之间的关联关系。如果关联不正确,可以手动创建准确的关联。
应用于数据集的数据转换和丰富操作会影响使用该数据集的所有项目和数据流。如果不想发生这种情况,可以使用“Duplicate Data Set”功能将数据集与其他数据处理分开。保存数据转换和丰富操作会创建一个项目。
4.4 数据流和序列
如果需要组合多个数据集或保存结果到新数据集,可以使用数据流。可以使用“Prepare”功能准备数据集,然后将准备好的数据集添加到数据流中。数据流会创建顺序转换,并生成一个新的数据集供项目使用,而不改变原始数据集。
数据流可以手动运行或安排运行,安排选项仅在云端可用。可以选择“Create ➤ Data Flow”创建数据流。数据流的步骤包括添加数据、选择列、重命名列、转换数据、合并或拆分列、分组或分箱数据、过滤或聚合数据等,最后一步总是保存数据,可以将数据保存到OAC或可连接的外部目标数据库。
序列是一组用于执行多个数据流的数据流,可以手动运行或安排运行,安排选项仅在云端可用。可以通过将多个数据流链接在一起并执行来创建序列。
也可以通过创建项目开始数据准备过程。点击“Create”按钮并选择“Project”,创建项目后,选择数据集,可以从可用数据集列表中选择或创建新数据集。
当项目创建完成且数据集选定后,可以开始工作。如果选择了多个数据集,工具会尝试找到连接它们的数据,也可以手动进行连接。首先要进行数据准备,在画布右上角有三个选项卡:“Prepare”、“Visualize”和“Narrate”,选择“Prepare”进行数据准备。在画布左侧有两个准备选项:“Data”和“Preparation Script”。选择“Data”可以查看选定的数据集、准备数据并向项目中添加新数据集;选择“Preparation Script”可以查看准备数据的步骤,可以接受OAC建议的步骤或添加自己的步骤。
5. 数据可视化和叙述
选择画布右侧的“Visualize”选项,可以看到处理项目的三个选项:“Data”、“Visualization”和“Analytics”。
5.1 添加数据集和创建场景
可以通过点击“Data”旁边的“+”图标并选择“Add Data Set”向项目中添加更多数据集。选择“Data”按钮可以处理选定的数据集,还可以创建场景或添加计算。
创建场景时,从预创建的场景列表中选择一个模型,然后将数据集映射到模型中的数据,数据集和模型会计算场景,场景会显示在与数据集相同的导航器中,可用于可视化。
5.2 添加计算
选择“Add Calculation”添加新计算,为计算命名,从列表中选择数学函数,然后填写所需信息。例如,选择“Aggregate”,双击“measure”可获取数据集中可能的度量列表,双击“dimension”可获取维度列表。
5.3 创建可视化
创建可视化有以下几种方法:
- 选择属性(按住Ctrl键选择所有需要的属性),然后拖放到画布中。
- 右键单击并选择“Best Visualization”,让工具决定最适合所选数据的图表。
- 选择“Visualizations”并从选项中选择。
如果想快速开始分析,可以尝试“Explain”功能,该功能会自动解释所选属性,包括其关键驱动因素和细分,以及数据集中与该属性相关的任何异常情况。所有这些都会以图表和文本形式解释,如果喜欢其中的某些内容,可以将其选择到画布中作为分析的基础。
使用“Explain”功能有两个好处:避免认知偏差和开始任务,它能让用户更好地理解数据。
可以添加、编辑、删除、复制和复制可视化,可以添加和删除数据、过滤器、图表、画布等。可以使用画布左下角的图表属性微调图表。可以创建自己的扩展(插件),也可以使用在 www.oracle.com/business-analytics/data-visualization/extensions.html 上可用的现有扩展。可以在“Console”的“Extensions ➤ Upload”中将这些插件添加到OAC中。还可以从列表中选择“Language Narrative”作为可视化类型,让OAC自动创建可视化的叙述,这是快速生成报告基础的简单方法。
点击“Analytics”工具,可以向图表中添加关于聚类或异常值的信息,或添加参考线、趋势线或预测。
综上所述,通过以上步骤和方法,可以在机器学习模型应用和OAC中进行有效的数据处理、分析和可视化。
机器学习模型构建与Oracle Analytics Cloud使用指南
6. 操作流程总结与对比
为了更清晰地展示在机器学习模型应用和OAC使用中的操作流程,下面以表格形式进行总结,并对比不同操作的特点:
|操作类型|操作步骤|特点|
| ---- | ---- | ---- |
|机器学习模型应用|1. 连接测试表和结果表
2. 为新数据预测概率
3. 为特定客户集预测概率
4. 为所有新客户预测概率
5. 创建新的预测表
6. 查询新的预测表|主要基于SQL查询,利用模型对数据进行预测和分析,涉及表连接、概率计算等操作|
|OAC数据准备|1. 创建项目和数据集
2. 数据探查和转换
3. 数据集关联和复制
4. 数据流和序列操作|功能丰富,可从多种数据源创建数据集,有自动探查和推荐功能,支持多数据集组合和脚本操作|
|OAC数据可视化和叙述|1. 添加数据集和创建场景
2. 添加计算
3. 创建可视化
4. 使用Explain功能
5. 进行分析操作|提供多种可视化方式和分析工具,可创建场景和计算,Explain功能有助于快速理解数据|
通过这个表格,可以更直观地看到不同操作的流程和特点,方便在实际应用中根据需求进行选择。
7. 操作步骤流程图
下面是一个mermaid格式的流程图,展示了在OAC中从数据准备到可视化的主要操作步骤:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(开始):::process --> B(创建项目/数据集):::process
B --> C(数据探查和转换):::process
C --> D{是否需要多数据集组合?}:::process
D -- 是 --> E(使用数据流):::process
D -- 否 --> F(继续数据准备):::process
E --> F
F --> G(保存数据转换结果):::process
G --> H(选择可视化):::process
H --> I{是否使用Explain功能?}:::process
I -- 是 --> J(使用Explain分析数据):::process
I -- 否 --> K(正常创建可视化):::process
J --> K
K --> L(添加计算/场景):::process
L --> M(进行分析操作):::process
M --> N(完成):::process
这个流程图清晰地展示了在OAC中进行数据处理和可视化的主要步骤,从开始创建项目和数据集,到中间的数据准备和转换,再到最后的可视化和分析操作,为用户提供了一个整体的操作框架。
8. 实际应用案例分析
假设一家电商公司想要分析客户购买特定商品的概率,并进行可视化展示,以制定营销策略。以下是如何结合机器学习模型应用和OAC来完成这个任务的具体步骤:
8.1 数据准备阶段
- 在OAC中,使用“Create”按钮创建一个新的项目,并选择相关的客户数据集。可以从公司的数据库中连接获取数据,也可以上传包含客户信息的文件。
- 打开数据集后,OAC会自动进行列级探查,并给出数据转换和丰富的建议。例如,将客户姓名拆分为姓和名,去除不必要的信息等。接受这些建议并应用到数据集中。
- 如果需要结合多个数据集,如客户购买历史数据集和客户基本信息数据集,可以使用数据流功能将它们连接起来。在数据流中,可以进行数据过滤、聚合等操作,以得到更有价值的数据。
8.2 模型应用阶段
- 使用机器学习模型对客户购买特定商品的概率进行预测。可以使用前面提到的SQL查询语句,如为所有新客户预测概率的查询:
SELECT A.CUST_ID, A.PROBABILITY, B.EDUCATION, B.OCCUPATION,
B.HOUSEHOLD_SIZE, B.YRS_RESIDENCE, B.Y_BOX_GAMES
FROM (SELECT * FROM (SELECT CUST_ID,
ROUND(PREDICTION_PROBABILITY(HTP_CLASS_MODEL, '1' USING
C.*), 2) PROBABILITY FROM N1_NEW_DATA C)) A,
N1_TEST_DATA B
WHERE A.CUST_ID = B.CUST_ID
ORDER by A.PROBABILITY DESC;
- 创建一个新的预测表,将预测结果保存到表中,方便后续查询和分析。
CREATE TABLE HTP_NEW_PREDICTION AS
SELECT A.CUST_ID, A.PROBABILITY, B.EDUCATION, B.OCCUPATION,
B.HOUSEHOLD_SIZE, B.YRS_RESIDENCE, B.Y_BOX_GAMES
FROM (SELECT * FROM (SELECT CUST_ID,
ROUND(PREDICTION_PROBABILITY(HTP_CLASS_MODEL, '1' USING
C.*), 2) PROBABILITY FROM N1_NEW_DATA C)) A ,
N1_TEST_DATA B
where A.CUST_ID = B.CUST_ID;
8.3 数据可视化和分析阶段
- 在OAC的项目中,选择“Visualize”选项,将预测表中的数据添加到项目中。
- 使用不同的可视化方式展示数据,如柱状图展示不同概率区间的客户数量,折线图展示概率随时间的变化等。可以通过点击“Data”旁边的“+”图标添加更多数据集,丰富可视化内容。
- 创建场景,模拟不同营销策略下客户购买概率的变化。例如,假设推出折扣活动,观察客户购买概率的提升情况。
- 使用“Explain”功能分析数据,找出影响客户购买概率的关键因素,如客户的教育程度、职业等。根据分析结果,制定更有针对性的营销策略。
9. 总结与展望
通过以上对机器学习模型应用和Oracle Analytics Cloud的介绍,我们可以看到它们在数据分析和决策支持方面的强大功能。机器学习模型可以对数据进行预测和分析,为业务决策提供有价值的信息;而OAC则提供了一个集成的平台,方便用户进行数据准备、可视化和协作。
在实际应用中,用户可以根据自己的需求选择合适的操作步骤和工具。例如,在数据准备阶段,可以充分利用OAC的自动探查和推荐功能,提高数据质量;在可视化阶段,可以使用多种可视化方式和分析工具,深入理解数据。
未来,随着技术的不断发展,机器学习模型和OAC可能会有更多的功能和应用场景。例如,更智能的模型预测算法、更强大的可视化效果和更便捷的协作功能等。用户可以持续关注这些技术的发展,不断提升自己的数据分析能力和业务决策水平。
总之,掌握机器学习模型应用和OAC的使用方法,可以帮助企业更好地利用数据,提高竞争力,实现可持续发展。
超级会员免费看
3627

被折叠的 条评论
为什么被折叠?



