在Oracle Cloud中学习Oracle Machine Learning (OML 机器学习)




  • Oracle Machine Learning可以帮助我们解决关键的企业业务问题,并加快数据科学和基于机器学习的解决方案的开发和部署。通过可扩展、自动化和安全的机器学习,我们可以应对数据探索和准备、模型构建、评估和部署等挑战。无论您的兴趣是SQL、Python、R、REST的API,还是喜欢无代码用户界面,Oracle都提供支持来进行解决方案的开发和部署。

    下面我们使用Oracle Cloud来一起构建OML的免费实验环境:

    第一步:首先我们要注册Oracle Cloud。

    进入 https://cloud.oracle.com 来进行注册过程,注册过程对于我们国家来说比较有挑战,只能通过大家想各种方法来解决了。

    第二步:创建自治数据库

    在页面中点击“自治数据库”,这个数据库是免费来使用的。

    第三步:创建自治数据库

    点击“创建自治数据库”按钮;

    第四步:设置名称

    我们需要设置自己使用的“显示名称”和“数据库名称”;

    第五步:设置ADMIN密码

    给ADMIN用户设置密码,该用户会在后面登录时使用,相当重要;

    第六步:结束配置

    点击“创建自治数据库”按钮,到此处便完成了自治数据库的全部配置,同时开始创建自治数据库;

    第七步:运行状态

    此时,刚创建的自治数据库仍然处于“正在预配”的状态,还无法使用;

    第八步:进入活动页面

    此刻,自治数据库已经是可用状态,我们点击”Database Actions”下拉菜单;

    点击“查看所有数据库操作”;

    第九步:登录

    输入ADMIN用户的用户名和密码,进入启动板

    第十步:选择Oracle Machine Leading

    第十一步:进入机器学习页面

    到此为止,我们已经完成了Oracle Machine Learning的创建。

    我们来简单介绍一下机器学习的概念:

    机器学习是人工智能(AI)的一个子领域,专注于构建基于所消耗的数据来学习或改进性能的系统。

    什么是机器学习?

    机器学习是一种在数据中发现之前未知关系的技术。

    机器学习和人工智能经常一起讨论。一个重要的区别是,虽然所有的机器学习都属于人工智能,但并非所有的人工智能都是机器学习。机器学习自动搜索潜在的大量数据,以发现超越简单统计分析的模式和趋势。机器学习使用复杂的算法来识别数据中的模式,从而创建模型。这些模型可以用来进行预测和预测,并对数据进行分类。

    机器学习的主要特点包括:

    • 自动发现模式
    • 预测可能的结果
    • 生成可操作的信息
    • 能够分析潜在的大量数据

    机器学习可以回答传统演绎式查询和报告技术无法解决的问题。

    机器学习的优势

    机器学习是一项强大的技术,可以帮助您找到数据中的模式和关系。

    发现趋势和模式 - 机器学习可以在您的数据中发现隐藏的信息。您可能已经因长期使用数据而了解重要的模式。机器学习可以确认或证实这些实证观察结果,并找到不易通过简单观察区分的新模式。机器学习可以发现非因果关系的预测性关系。例如,机器学习可能确定收入在50,000美元到65,000美元之间,订阅某些杂志的男性可能会购买某种产品。您可以利用这些信息来帮助您制定营销策略。机器学习可以处理大量数据,可用于金融分析。一些好处包括股票价格预测(算法交易)和投资组合管理。

    基于数据的决策 - 许多公司拥有大量数据,从其中提取有意义的信息对于做出数据驱动的业务决策至关重要。通过利用机器学习算法,组织可以将数据转化为知识和可行动的智能。随着需求的变化,公司可以通过使用机器学习技术更快地做出更好的决策。

    推荐产品 - 机器学习的结果还可以用于通过根据客户在线行为模式或对营销活动的响应来推广或推荐相关和有用的产品,从而影响客户决策。

    检测欺诈、异常和安全风险 - 金融服务领域通过机器学习算法和技术受益,可以更快地发现异常模式或欺诈行为并作出反应。如今,公司和政府正在通过在线进行业务和信息共享。在这种情况下,网络安全是一个关注点。机器学习可以帮助检测异常行为并自动采取纠正措施。

    零售分析 - 机器学习有助于分析客户购买模式,为目标客户提供促销优惠。这项服务确保卓越的客户体验并提高客户忠诚度。

    医疗保健 - 医疗领域中的机器学习在医患双方中越来越常见,有助于患者和医生。先进的机器学习技术用于放射学,通过审查影像(如X射线、CT、MRI、PET影像和放射学报告)来做出智能决策。据报道,基于机器学习的自动检测和诊断与实际放射科医师的诊断相媲美甚至更好。有些机器学习应用程序经过训练,可以检测乳腺癌。在医疗领域中,机器学习的另一个常见用途是自动化计费。有些使用机器学习的应用程序还可以指出患者患各种疾病(如中风、糖尿病、冠状动脉疾病和肾功能衰竭)的风险,并推荐可能需要的药物或手术。

    总结一下,机器学习可以:

    • 轻松识别趋势和模式
    • 简化产品营销和销售预测
    • 促进早期异常检测
    • 通过“学习”最小化手动干预
    • 处理多维数据

    定义您的业务问题

    企业面临着一些问题,比如分类文档、预测财务结果、检测隐藏模式和异常等等。机器学习可以帮助解决这些问题,前提是您对业务问题有清晰的理解,并拥有足够的数据,并学会提出正确的问题以获得有意义的结果。

    您需要掌握数据准备、应用机器学习技术和评估结果的技能。通过机器学习找到的模式可能因您如何定义问题而有很大不同。例如,您可以尝试找出过去对您的营销活动做出回应的人的特征,而不是试图学习如何“改善对直邮广告活动的响应”。然后,您可以对一个潜在客户的个人资料进行分类,判断他是否会对直接电子邮件活动做出回应。

    机器学习的许多形式都是预测性的。例如,模型可以根据教育和其他人口统计因素预测收入水平。预测有一个关联的概率(这个预测有多大可能成立?)。预测概率也称为置信度(对这个预测有多大信心?)。某些形式的预测性机器学习会生成规则,这些规则是蕴含特定结果的条件。例如,规则可以指定:拥有学士学位并住在某个特定社区的人可能会拥有高于区域平均水平的收入。规则有一个关联的支持度(有多少百分比的人口符合这个规则?)。

    机器学习的其他形式则识别数据中的群组。例如,一个模型可能会识别人口中在特定范围内拥有收入、拥有良好驾驶记录,并且每年租用新车的群组。

    您想要做什么?

    通过Oracle Database和Oracle Autonomous Database,提供了多种机器学习技术,也称为“挖掘函数”。根据您的业务问题,您可以识别适当的挖掘函数,或挖掘函数的组合,并选择可能最好支持解决方案的算法或算法。

    对于某些挖掘函数,您可以从多个算法中进行选择。对于特定问题,一个技术或算法可能比另一个更合适,或者可以使用多个算法来解决问题。

    下面的图表提供了一个基本概念,介绍了在Oracle Database和Oracle Autonomous Database中可用的机器学习技术的选择方式。

     

     

    OML(Oracle Machine Learning)在Oracle Database中提供机器学习功能,通过提供一套广泛的数据库内算法来执行各种机器学习技术,例如分类、回归、聚类、特征提取、异常检测、关联分析(购物篮分析)和时间序列分析。还包括属性重要性、行重要性和排名等其他功能。OML利用Oracle Database的内置功能,以最大化可扩展性、改进内存和性能。OML还与Python和R等开源语言集成。通过使用来自R和Python的开源软件包,用户可以结合OML4Py和OML4R的嵌入式执行,扩展这套技术和算法。

    通过OML,用户可以在Oracle Database中进行高效的机器学习操作,无需将数据转移到外部系统。OML支持多种常见的机器学习任务,如数据分类(Classification)、预测回归(Regression)、数据聚类(Clustering)、特征提取(Feature Extraction)、异常检测(Anomaly Detection)、关联分析(Association)和时间序列分析(Time Series)。此外,OML还提供了其他功能,如属性重要性、行重要性和排名。

    OML充分利用Oracle Database的功能,通过内置的数据库执行,实现了高性能和可扩展性。这意味着您可以在大规模数据上进行机器学习操作,而无需担心性能问题。

    同时,OML还与流行的开源语言Python和R集成。这允许用户通过使用来自Python和R的开源软件包,扩展和定制机器学习功能。通过OML4Py和OML4R的嵌入式执行,用户可以在Oracle Database环境中运行Python和R代码,从而充分利用数据库的计算能力。

    综上所述,OML为Oracle Database用户提供了强大的机器学习功能,可以在数据库内部进行各种机器学习任务,同时与Python和R等开源语言集成,使用户能够根据自己的需求扩展和定制机器学习功能。

    通过界面探索更多功能 Oracle支持SQL、R和Python等编程语言接口,以及无代码用户界面,如OML AutoML UI和Oracle Data Miner,以及通过OML Services进行REST模型管理和部署。

    Oracle Machine Learning Notebooks(OML Notebooks)基于Apache Zeppelin技术,使您可以在Oracle Autonomous Database(自主数据仓库(ADW)、自主事务数据库(ATP)和自主JSON数据库(AJD))中进行机器学习。OML Notebooks帮助用户探索、可视化和准备数据,并开发和记录分析方法。

    AutoML用户界面(AutoML UI)是Oracle Machine Learning的界面,为您提供无代码的自动化机器学习。当您在AutoML UI中创建和运行实验时,它会自动执行算法和特征选择,以及模型调整和选择,从而提高生产效率以及模型的准确性和性能。没有丰富数据科学背景的业务用户可以使用AutoML UI来创建和部署机器学习模型。

    Oracle Machine Learning Services(OML Services)扩展了OML的功能,支持模型部署和模型生命周期管理,包括数据库内的OML模型和第三方Open Neural Networks Exchange(ONNX)格式的机器学习模型,通过REST API进行管理。Oracle Machine Learning Services的REST API端点托管在Oracle Autonomous Database上。这些端点使您可以存储机器学习模型及其元数据,并创建模型的评分端点。

    Oracle Machine Learning for Python(OML4Py)使您可以使用Python API在Oracle Autonomous Database服务中运行Python命令和脚本,进行数据转换、统计、机器学习和图形分析。OML4Py是一个Python模块,使Python用户可以使用Python语法来操作数据库表和视图中的数据。OML4Py函数和方法透明地将一组Python函数转换为SQL,以实现在数据库中的执行。OML4Py用户可以使用自动化机器学习(AutoML)通过自动算法和特征选择以及模型调整和选择来提高用户的生产效率和机器学习结果。用户可以使用嵌入式Python执行在由自主数据库环境生成的Python引擎中运行用户定义的Python函数。

    Oracle Machine Learning for R(OML4R)为R用户提供以数据库为中心的环境,支持端到端的分析过程,并可将用户定义的R函数立即部署到生产环境。OML4R是一组R软件包和Oracle Database功能,使R用户可以在数据库内部的数据上进行操作,而无需使用SQL,并在一个或多个数据库控制的R引擎中运行用户定义的R函数(也称为“脚本”)。OML4R包含在Oracle Database和Oracle Database Cloud Service中。

    Oracle Machine Learning for SQL(OML4SQL)提供了对强大的数据库内机器学习算法的SQL访问。您可以使用OML4SQL构建和部署预测性和描述性机器学习模型,为应用程序和仪表板增加智能功能。OML4SQL包含在Oracle Database、Oracle Database Cloud Service和Oracle Autonomous Database中。

    Oracle Data Miner(ODMr)是Oracle SQL Developer的扩展。Oracle Data Miner是一个图形化用户界面,用于发现数据中的隐藏模式、关系和洞察。ODMr提供拖放式工作流编辑器,用于定义和捕获用户在探索和准备数据以及应用机器学习技术方面所采取的步骤。

    Oracle Machine Learning for Spark(OML4Spark)通过面向Spark和Hadoop环境的R API提供可扩展的机器学习算法,用于探索和准备数据以及构建和部署机器学习模型。OML4Spark是Oracle Big Data Connectors的组成部分,并包含在Oracle Big Data Service中。

    【参考文档】

    https://docs.oracle.com/en/database/oracle/machine-learning/oml4sql/21/mlsql/introduction-machine-learning.html#GUID-B54E3EAF-B655-464D-9DAB-F1540DECC081

    Speak Your Mind

    *

    京ICP备14059771号-2