0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

你知道怎样在Azure machine learning中使用异常检测的方法?

8gVR_D1Net08 来源:NL 2019-05-09 13:56 次阅读

正如Azure最新机器学习服务所显示的那样,机器学习已不再仅仅是关乎视觉和语音。

微软在机器学习上押下重注的一个关键部分是,这些技术需要被民主化,并且能够转变为相对容易理解的构建块,以便微软的开发人员能够快速学习并在自己的应用程序中进行使用。

这就是Azure认知服务的用武之地。这些服务不需要用户了解ResNet50深度学习神经网络的训练层次,也不需要了解如何使用TensorFlow或Microsoft Cognitive Toolkit (CNTK)来构建学习平台,而仅仅只需要使用API即可。微软已经为这些服务训练了神经网络,并将继续对它们进行优化,还将真实世界的操作用来作为未来改进的基础。与构建和运行您自己的机器学习算法的计算和存储成本相比,它们的使用成本则相对低廉。

Azure上的机器学习工具已迅速成为了任何想要向应用程序添加基本人工智能的人的重要资源。需要注意的是它们的使用范围依然是有限的,其重点放在了以下三个关键领域:计算机视觉、文本分析和语音识别。它们都是重要的领域,但它们也只是现代机器学习的一个有限子集而已。

Azure认知服务

进入了一个新的AI领域

幸运的是,第一个探索机器学习在其他方面应用的新认知服务也在最近进入了测试阶段:将异常检测添加到了功能集中。异常检测是一种重要的人工智能工具,用于分析在数据源正常运行特征之外的时间序列数据。这使得它成为了一个非常灵活的工具,因为现代企业拥有大量的流数据,从金融交易到软件日志再到设备遥测。显然,你不应低估使用一个API就可以在所有这些不同的数据源中工作的能力,因为它使构建适当的软件变得更加容易了。

正常情况下,异常检测需要足够的时间来设置。您需要使用大量数据来对您的模型进行训练,以确定什么是正常操作,什么是异常操作。这就是信用卡欺诈检测系统是如何建立一个你的消费(以及他们所有客户的习惯)模型,以检测何时使用了被泄密了的卡片,并阻止任何未来的交易,将损失降到最低的。

如果要使这种类型的操作成为通用服务,就需要能够为发送到服务的数据类型切换合适的检测模型。这正是Azure认知服务异常检测器所采用的方法,它能够使用一个自适应推理引擎来选择一个适合当前时间序列数据的检测模型。

通过在运行时选择算法,微软绕过了异常检测训练成本中最糟糕的部分。可能它使用的算法并不完美,但是它将比使用一个通用规则引擎来处理异常检测要好得多。还有一个额外的好处:您不必花费大量的时间来标记千兆字节的训练数据了。

构建异常检测应用程序

与所有Azure认知服务一样,异常检测器也需要一个订阅密钥,该密钥可以在Azure门户中生成,连同你的订阅端点URL。微软还提供了一个运行在Jupyternotebook上的演示服务,您可以使用它在使用您自己的代码和数据之前快速试用该服务。

实际上,您将通过异步函数来向服务端发送JSON格式的数据。如果您正在处理流数据,您可以在每次更新时发送一个时间序列数据的移动窗口,并检测序列中最后一段数据的异常情况。如果您使用它来分析批处理数据,那么您将得到数据集中已标识的异常位置的列表,其中保存着每个数据点的布尔值数组。如果为true,则表示异常,您可以使用任何true值所对应的索引来作为您所提供的源数据数组中异常的索引。

使用时间序列数据

异常检测器的工作原理与大多数Azure平台服务类似,它提供了一个REST API来接收JSON格式的数据。使用C# SDK可以更容易地构建代码来使用该服务;您也可以使用其他语言,但这样你就需要手工来构建REST调用。

微软对数据格式也有一些限制:数据之间的时间间隔必须是固定的,虽然系统可以接受丢失最多10%预期点的数据,但最好确保您的数据是完整的。如果要交付具有清晰模式的数据,则批处理中的数据点的数量可能会有所不同。数据集中至少需要有12个点,最多8,640个点,时间戳使用UTC格式。

您不仅限于在流数据上使用异常检测器;如果使用时间序列数据库来记录数据,那么你也可以在所有数据上以批处理的方式运行它,但这可能意味着要发送大量的数据。这种方法可以帮助识别过去可能被忽略的问题,例如发现不正常的金融交易,这些交易是出现欺诈的指标,或是可能影响整体生产力的机器的持续问题。在历史数据上运行它可以帮助您获得所需的信息,以便对您所使用的算法进行微调,从而使其更有可能发现您特定业务中的问题。

调整异常检测器

关于异常检测API需要注意的一点是:它与其他的认知服务有所不同,因为您可以调整它处理数据的方式。作为JSON请求的一部分,您可以指定数据周期的详细信息、它的粒度以及两个微调算法敏感性的选项。其中一个是maxAnomalyRatio,它被用来帮助识别数据点是否出现了异常。另一个则是sensitivity,帮助调整算法的边际值;数值越低,边缘越大,异常检测的灵敏度则越低。

您的应用程序中可能有大量的时间序列数据,而且通常很难从中提取价值。通过添加一点机器学习,您就可以开始查看那些不符合正常模式的内容了,然后使用这些信息构建适当的响应。

这就是为什么使用像Jupyter Notebook这样的工具来探索结果,并在将其构建为代码之前对检测器进行调优是一个好主意的原因了。您首先需要查看发生了什么异常,并且能够将它们与需要管理的事件联系起来。通过使用交互式笔记本和历史数据,您可以从中找到适当的相关性,从而帮助您设计应用程序,以使用接近实时的异常检测来交付您可以理解的结果。这时您就可以开始使用异常检测API来获得真正的业务价值了。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 异常检测
    +关注

    关注

    1

    文章

    42

    浏览量

    9724
  • Machine
    +关注

    关注

    0

    文章

    6

    浏览量

    8312
  • Azure
    +关注

    关注

    1

    文章

    120

    浏览量

    12751

原文标题:如何在Azure machine learning中使用异常检测

文章出处:【微信号:D1Net08,微信公众号:AI人工智能D1net】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    英特尔FPGA 助力Microsoft Azure机器学习提供AI推理性能

    Machine Learning SDK 相集成以供预览。客户可以使用 Azure 大规模部署的英特尔® FPGA(现场可编程逻辑门阵列)技术,为其模型提供行业领先的人工智能 (AI) 推理性能。
    的头像 发表于 05-16 17:25 6334次阅读

    构建\"PSOC_Edge_Machine_Learning_Profiler\" 项目,未找到 cy_ml_inference.h文件怎么解决?

    我正试图构建\"PSOC_Edge_Machine_Learning_Profiler\" 项目,但发现一个错误。 其中 cy_ml_inference.h 文件未找到。 请提供获取该文件的方法
    发表于 07-23 07:59

    Read#Machine learning methods for wind turbine condition monitoring: A review mat share

    Machine learning methods for wind turbine condition monitoring: A review风力发电机监控系统中常用的一些机器学习的方法
    发表于 07-12 07:29

    基于深度学习的异常检测的研究方法

    的研究方法进行了系统而全面的综述。此外,我们回顾了这些方法不同应用领域中的应用,并评估了它们的有效性。我们根据所采用的基本假设和方法,将最先进的深度
    发表于 07-12 07:10

    基于深度学习的异常检测的研究方法

    ABSTRACT1.基于深度学习的异常检测的研究方法进行结构化和全面的概述2.回顾这些方法各个领域这个中的应用情况,并评估他们的有效性。3
    发表于 07-12 06:36

    深度异常检测的应用

    9 Applications of Deep Anomaly Detection 深度异常检测的应用9.1 Intrusion Detection9.2 Fraud Detection9.3
    发表于 07-12 09:18

    MCU也能做Machine learning

    知道吗?MCU也能做Machine learning (ML)刚刚过去的2018年被称为“人工智能元年”,2随着单芯片计算力的不断增长,机器学习(ML)不再是云计算和高性能处理器的专
    发表于 11-03 06:36

    基于ME-PGNMF的异常流量检测方法

    意义不明确。针对上述问题,多维信息熵的基础上,提出梯度投影非负矩阵分解异常流量检测方法。将流量数据处理为多维特征熵矩阵,用梯度投影非负矩阵分解方法
    发表于 01-17 17:19 0次下载
    基于ME-PGNMF的<b class='flag-5'>异常</b>流量<b class='flag-5'>检测</b><b class='flag-5'>方法</b>

    微软宣布强化Azure公有云基础设施平台上提供的人工智能产品

    今天一系列AI相关的公告中,最引人关注的就是Azure Machine Learning Service的面市,这款基于云的产品让数据科学家和开发者可以用来快速创建和训练机器学习模型
    发表于 12-07 10:08 1095次阅读

    知道Uboot中的net是怎样的?

    知道Uboot中的net是怎样的?
    发表于 05-15 15:20 1145次阅读
    <b class='flag-5'>你</b><b class='flag-5'>知道</b>Uboot中的net是<b class='flag-5'>怎样</b>的?

    什么是异常检测_异常检测的实用方法

    异常检测是一个发现“少数派”的过程,由于它们与大多数数据不一样而引起我们的注意。几个典型场景中,异常数据能为我们关联到一些潜在的问题,如银行欺诈行为、药品问题、结构缺陷、设备故障等。
    的头像 发表于 06-29 09:25 1.9w次阅读

    关于6种时序异常检测浅析

    时序异常检测并不困难,如果找对方法则可以今年KDD比赛中获取比较好的成绩。本文将使用tsod库完成简单的
    的头像 发表于 04-22 10:09 3951次阅读
    关于6种时序<b class='flag-5'>异常</b><b class='flag-5'>检测</b>浅析

    知道吗?MCU也能做Machine learning (ML)

    知道吗?MCU也能做Machine learning (ML)刚刚过去的2018年被称为“人工智能元年”,2019年人工智能将会有更大的发展,将会有更多的AI项目落地。随着单芯片计算
    发表于 10-28 16:21 2次下载
    <b class='flag-5'>你</b><b class='flag-5'>知道</b>吗?MCU也能做<b class='flag-5'>Machine</b> <b class='flag-5'>learning</b> (ML)

    基于生成对抗网络的异常检测方法

    取特征,所以训练数据集中就不需要异常样本。此系统的异常检测结果由样本的最终得分来判别,其中异常分数由表观损失和潜在损失组成。本文方法的亮点在
    发表于 04-06 16:06 3502次阅读

    使用MATLAB进行异常检测(下)

    使用 MATLAB 进行异常检测(上)中,我们探讨了什么是异常值,简单的一维数据异常检测问题,
    的头像 发表于 11-24 10:46 2113次阅读