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必应新闻解决方案模板所示,这样的工作流程将大大减少真实环境下机器学习驱动型应用程序在构建、部署与重新训练等层面的复杂性。