写点什么

Cortana 智能与机器学习博客 将人工智能引入商务智能——Azure Machine Learning 中的文本分析

  • 2017-09-06
  • 本文字数:2112 字

    阅读完需:约 7 分钟

Azure Machine Learning Studio 提供一款瑞士军刀般的出色工具,能够以强大且高效的方式对文本数据集进行操作。举例来说,其中的一套内置模块可应用于语言检测及文本预处理等较低级别任务,用于实现案例标准化、停止词删除、词干提取与词汇化等常见清理步骤。建立在此基础之上的则为更为完整的模块集合,能够通过散列或 TF-IF 等指标将预处理文本转换为 N-gram,同时跳过其中的数字特征。在建立起一组数字特征后,您即可利用 Azure ML 中的任何一套现有学习算法根据需求建立起分类、回归、推荐或者聚类模型。

除了使用 N-gram 功能进行模型训练之外,大家还可以利用一组强大的模块通过预训练模型完成实体与关键词提取等任务,并反过来利用这些提取信息依次构建不同类型的特征。

Azure ML 在自身文本分析功能当中广泛应用强大的 Vowpal Wabbit(简称 VW)库。例如,潜在狄利克雷分析模块即利用 VW 构建主题模型或者大规模数据集。由于 VW 本身拥有大量算法调整选项,因此能够切实满足各类学习任务的需求 ; VM 高级用户亦可在命令行界面当中直接使用我们的打包工具,同时公开全部选项以最大程度实现灵活性。

R 与 Python 语言的开源生态系统还提供一系列不同类型的工具,用于实现不同(或者指向特定领域)格式文本的阅读与解析任务。例如,R 中的 tm 包可执行案例标准化与词干提取等文本预处理任务,Python 中的 NLTK 模块则能够完成从预处理到语音片段标记、再到分类与聚类模型构建等一系列文本分析工作。Azure ML 允许大家在实验过程当中轻松运用这些来自大型生态系统的卓越功能。举例来说,Python 2.7.11 与 3.5 环境就已经预先配置来自 NTLK 的全部语料库与模型。

而这些功能还拥有另一项更为强大的特性,即允许用户以任意方式对其加以给,从而立足文本数据构建起高度灵活的机器学习管道。在 Azure ML 出色操作能力的支持下,您可通过数次点击将这些管道转化为生产就绪型 Web 服务,并利用其完成实时与批量评分。

Power BI 解决方案模板迎来大升级

面对数量如此众多的工具选项,数据科学家该如何构建起一套能够真正解决实际问题的端到端解决方案?

在今天的博文中,我们将讲解为 Power BI 构建必应新闻模板的方法。必应新闻解决方案模板可帮助您根据关注方向,将来自数百家不同消息供应方的相关文章进行匹配。通过构建 Azure 服务自动化管道,其可提供一套交钥匙型解决方案,帮助客户轻松分析新闻内容。这套工作簿的强大之处在于,其能够利用交叉过滤机制将全部许可证分析结果整合在一起。举例来说,在必应新闻模板当中,用户可以选择主题、查看相关关键短语与关联性命名实体,从而快速了解特定主题的要点。将这两种 AI 技术加以组合,不仅构建起一种强大的大型文档库浏览方案,同时亦可帮助您快速发现值得关注的文章。

这套模板中包含四种不同的复杂机器学习技术,将其整合在一起将带来高保真分析结果。模板架构详见以下流程图。

必应新闻模板的核心源自 Azure Logic App——其立足预定时间表(5 分钟)在必应新闻 API 上查看符合用户指定主题的新闻文章。当数据流经 Logic App 时,实际文章文本经通过一系列 Azure 函数完成检索与发送,并可用于进行基础性数据转换。接下来,微软文本分析认知服务则负责对文本正文中的关键短语与情感倾向进行提取。这些文本补充性因素亦可利用“从文本内提取关键短语”模块在 Azure ML 管道部分内获取。到这里,数据以及一些基础性补充信息已经被存储在 Azure SQL 数据库当中。接下来,我们利用另一独立的定期调用 Logic App 调用几项 Azure ML Web 服务——这些服务将负责执行 Vowpal Wabbit 主题聚类与命名实体识别(简称 NER)等复杂任务。这些机器学习输出结果随后会被重新写入至 Azure SQL 数据库,以作为相关数据的最终补充信息。Power BI 能够直接接入该 Azure SQL 数据库,并根据用户对工作簿内容的刷新及时更新自身。以这种方式构建管道允许最终用户根据自身需求实现快速定制,这亦成为其最突出的核心优势。如果部署解决方案模板的客户希望添加其它机器学习标签(例如语言检测),则可轻松插入额外的 Azure ML 或者认知服务以提供额外的补充性元素。

结论

要构建并部署强大的 AI 驱动型应用程序,特别是那些能够利用原始多语言文本数据生成功能的应用,通常要求用户具备深厚的专业知识,将多种可能无法切实协作的工具加以整合,同时具备能够有效处理实体提取等任务的预训练模型。正如我们在本文中所提到,Azure ML 中内置有一套文本分析模块,且能够调用外部工具功能——无论是 NLTK 抑或是微软认知服务,都能够以无缝化方式进行打包并以单一 REST 端点的形式实现部署。正如本文中所提到的 Power BI 必应新闻解决方案模板所示,这样的工作流程将大大减少真实环境下机器学习驱动型应用程序在构建、部署与重新训练等层面的复杂性。

欲了解更多与 Azure ML 中文本分析类应用程序的细节信息,请点击此处访问说明文档页面。在这里,您不仅能够找到更多模块使用指导资料,亦可获得一组完整的端到端示例方案——可用于建立文档分类、相关条目查找以及情感分析模型等等。另外,我们也强烈建议您参阅 Cortana Intelligence Gallery 以了解更多由用户提供的样本,并随时在我们的 MSDN 论坛上发布您的问题。

查看原文链接

2017-09-06 17:161460

评论

发布
暂无评论
发现更多内容

Web 开发必须掌握的三个技术:Token、Cookie、Session

华为云开发者联盟

HTTP Token web开发 session Cookie

learn go with tests 学习笔记(四)依赖注入

Geek_4z9ami

Go 语言

learn go with tests 学习笔记(六)进程同步

Geek_4z9ami

Go 语言

政策加持迎来区块链技术应用“红利期”

CECBC

nested exception is java.lang.IllegalStateException: refreshAfterWrite requires a LoadingCache异常解决

谙忆

数据采集能力受限?企业数字化运营如何迈出第1步

易观大数据

菊长说丨一文读懂MySQL4种事务隔离级别

华为云开发者联盟

MySQL 数据库 事务隔离级别 事务 华为云

《effective-go》 学习笔记

Geek_4z9ami

Go 语言

消息疯狂堆积!RocketMQ出Bug了?

Edison

RocketMQ 中间件

关于微服务架构思考

Axe

“啰嗦”是成事唯一正确的方法

霍太稳@极客邦科技

团队管理 个人成长 团队协作 沟通

Java项目如何分层

老胡爱分享

分层架构 项目

字符串匹配 - Sunday算法

Geek_4z9ami

数据结构与算法 字符串匹配算法

learn go with tests 学习笔记(一) hello world

Geek_4z9ami

Go 语言

learn go with tests 学习笔记(五)并发

Geek_4z9ami

Go 语言

Executor看不懂?教你如何盘它

Edison

后端 线程池

Netty之旅:你想要的NIO知识点,这里都有!

一枝花算不算浪漫

Netty nio

用户体验(UX)设计≠用户界面(UI)设计

刘华Kenneth

敏捷 设计 UX 用户体验

我是如何参与硅谷顶级开源项目并赚得2500美金

阿水

硅谷 Minio

MySQL事物-学习笔记

Edison

MySQL 数据库 数据库事务

企业网站搭建避坑指南

姜奋斗

网站 新手指南 企业 网站搭建 避坑

learn go with tests 学习笔记(七)反射

Geek_4z9ami

反射 Go 语言

零代码/无代码 vs 低代码 如何分类?如何区别?到底有什么不同?分析超过20款零代码低代码产品

代码制造者

编程 低代码 行业资讯 零代码

疫情之年 下半年区块链应用落地会加速么?

CECBC

区块链 场景应用落地

RocketMQ源码解析-开篇

Edison

RocketMQ 中间件

人生修炼秘籍

xiaoboey

时间管理 人生修炼 知行合一 熵增 时间复利

learn go with tests 学习笔记(二) 数组与切片

Geek_4z9ami

Go 语言

learn go with tests 学习笔记(三) 指针和错误

Geek_4z9ami

Go 语言

Python爬取微信公众号文章保存到数据库

wjchenge

500行代码写一个俄罗斯方块游戏

程序员生活志

话题讨论 | 特朗普正式封禁微信,iPhone 和微信二选一?

InfoQ写作社区官方

写作平台 话题讨论

Cortana智能与机器学习博客 将人工智能引入商务智能——Azure Machine Learning中的文本分析_微软_Mary Wahl_InfoQ精选文章