阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

Amazon Comprehend – 不断受训的自然语言处理

  • 2019-11-01
  • 本文字数:2852 字

    阅读完需:约 9 分钟

Amazon Comprehend – 不断受训的自然语言处理

多年前,我在美国马里兰大学的计算机科学图书馆里闲逛时找到一本名为《计算机不能做什么》(What Computers Can’t Do)的又脏又旧的书,旁边是其续本《计算机仍不能做什么》(What Computers Still Can’t Do)。第二本书更加厚,这让我意识到计算机科学是值得研究的领域。在准备撰写本文时,我找到了第一本书的归档副本并发现了一条有趣的言论:


由于人类对用自然语言编写的句子的使用和理解需要句子的上下文相关使用的隐性知识,因此,Turing 认为,使计算机了解和转换自然语言的唯一方式可能是对计算机进行编程以了解这个世界。


这个言论非常有先见之明,并且我想告诉您的是 Amazon Comprehend 这项新服务实际上知道 (并且非常乐意分享) 有关世界的许多知识!


Amazon Comprehend 简介



Amazon Comprehend 将分析文本并告知您它找到的结果,从语言 (从南非荷兰语到约鲁巴语,这之间有 98 种以上的语言) 开始。它可识别不同类型的实体 (人、位置、品牌、产品等)、关键短语、情绪 (积极、消极、复杂或中性) 并从采用英语或西班牙语的所有文本中提取关键短语。最后,Comprehend 的主题建模服务可从大型文档集中提取主题以进行分析或基于主题的分组。


前 4 项函数 (语言检测、实体分类、情绪分析和关键短语提取) 专为交互使用而设计,可在几百毫秒内进行响应。主题提取适用于基于作业的模型,其响应与集合的大小成比例。


Comprehend 是一项不断受训的自然语言处理 (NLP) 服务。我们的工程师和数据科学家组成的团队将继续扩展和完善培训数据,旨在使服务的准确度更高且应用更广泛。


探究 Amazon Comprehend


您可使用控制台探究 Amazon Comprehend,然后构建利用 Comprehend API 的应用程序。我将使用我的有关 Direct Connect 的最新文章中的开头段落来练习 Amazon Comprehend API 资源管理器。我将文本粘贴到框中并单击 Analyze



Comprehend 将快速处理文本,突出显示它识别的实体 (如您在前面所见),并通过一次单击使所有其他信息可用:



让我们看看结果的每个部分。Comprehend 可在我提供的文本中检测许多类别的实体:



下面是在我的文本中找到的所有实体 (它们还可以列表或原始 JSON 形式显示):



下面是第一个关键短语 (其余的关键短语可通过单击 Show all 显示):



语言和情绪是简单而直接的:



嗯,这些是交互式函数。让我们了解一下批处理函数!我已有一个包含我之前的几千篇博客文章的 S3 存储桶,一个用于我的输出的空存储桶以及一个允许 Comprehend 访问这两个存储桶的 IAM 角色。我输入它并单击 Create job 以开始使用:



我可在控制台中查看我最近的作业:



作业完成后,输出将显示在我的存储桶中:



在演示中,我可下载数据并快速浏览 (大多数情况下,我会将数据馈送到可视化或分析工具中):


Bash


$ aws s3 ls s3://comp-out/348414629041-284ed5bdd23471b8539ed5db2e6ae1a7-1511638148578/output/2017-11-25 19:45:09     105308 output.tar.gz$ aws s3 cp s3://comp-out/348414629041-284ed5bdd23471b8539ed5db2e6ae1a7-1511638148578/output/output.tar.gz .download: s3://comp-out/348414629041-284ed5bdd23471b8539ed5db2e6ae1a7-1511638148578/output/output.tar.gz to ./output.tar.gz$ gzip -d output.tar.gz$ tar xf output.tar$ ls -ltotal 1020-rw-r--r-- 1 ec2-user ec2-user 495454 Nov 25 19:45 doc-topics.csv-rw-rw-r-- 1 ec2-user ec2-user 522240 Nov 25 19:45 output.tar-rw-r--r-- 1 ec2-user ec2-user  20564 Nov 25 19:45 topic-terms.csv$
复制代码


topic-terms.csv 文件将收集通用主题编号 (第一列) 内的相关术语。以下是前 25 行:


Bash


topic,term,weight000,aw,0.0926182000,week,0.0326755000,announce,0.0268909000,blog,0.0206818000,happen,0.0143501000,land,0.0140561000,quick,0.0143148000,stay,0.014145000,tune,0.0140727000,monday,0.0125666001,cloud,0.0521465001,quot,0.0292118001,compute,0.0164334001,aw,0.0245587001,service,0.018017001,web,0.0133253001,video,0.00990734001,security,0.00810732001,enterprise,0.00626157001,event,0.00566274002,storage,0.0485621002,datar,0.0279634002,gateway,0.015391002,s3,0.0218211
复制代码


随后,doc-topics.csv 文件将指示哪些文件引用了第一个文件中的主题。同样地,下面是前 25 行:


Bash


docname,topic,proportioncalillona_brows.html,015,0.577179calillona_brows.html,062,0.129035calillona_brows.html,003,0.128233calillona_brows.html,071,0.125666calillona_brows.html,076,0.039886amazon-rds-now-supports-sql-server-2012.html,003,0.851638amazon-rds-now-supports-sql-server-2012.html,059,0.061293amazon-rds-now-supports-sql-server-2012.html,032,0.050921amazon-rds-now-supports-sql-server-2012.html,063,0.036147amazon-rds-support-for-ssl-connections.html,048,0.373476amazon-rds-support-for-ssl-connections.html,005,0.197734amazon-rds-support-for-ssl-connections.html,003,0.148681amazon-rds-support-for-ssl-connections.html,032,0.113638amazon-rds-support-for-ssl-connections.html,041,0.100379amazon-rds-support-for-ssl-connections.html,004,0.066092zipkeys_simplif.html,037,1.0cover_art_appli.html,093,1.0reverse-dns-for-ec2s-elastic-ip-addresses.html,040,0.359862reverse-dns-for-ec2s-elastic-ip-addresses.html,048,0.254676reverse-dns-for-ec2s-elastic-ip-addresses.html,042,0.237326reverse-dns-for-ec2s-elastic-ip-addresses.html,056,0.085849reverse-dns-for-ec2s-elastic-ip-addresses.html,020,0.062287coming-soon-oracle-database-11g-on-amazon-rds-1.html,063,0.368438coming-soon-oracle-database-11g-on-amazon-rds-1.html,041,0.193081
复制代码


使用 Amazon Comprehend 构建应用程序


大多数情况下,您将使用 Amazon Comprehend API 将自然语言处理添加到您自己的应用程序。下面是委托人交互式函数:


DetectDominantLanguage – 检测文本的主导语言。其他一些函数需要您提供此信息,因此请先调用此函数。


DetectEntities – 检测文本中的实体并以 JSON 形式返回这些实体。


DetectKeyPhrases – 检测文本中的关键短语并以 JSON 形式返回这些短语。


DetectSentiment – 检测文本中的情绪并返回 POSITIVE、NEGATIVE、NEUTRAL 或 MIXED。


提供了这些函数的 4 个变体 (每个变体的前缀均为 批处理),它们可并行处理最多 25 个文档。您可使用它们构建高吞吐量的数据处理管道。


下面是可用于创建和管理主题检测作业的函数:


StartTopicsDetectionJob – 创建作业并开始运行它。


ListTopicsDetectionJobs – 获取当前和最新作业的列表。


DescribeTopicsDetectionJob – 获取有关单个作业的详细信息。


现在提供


Amazon Comprehend 现已推出,您可立即使用它开始构建应用程序!


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/amazon-comprehend-continuously-trained-natural-language-processing/


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-11-01 08:00560

评论

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

Linux之rcp命令

入门小站

Linux

Seata搭建与分布式事务入门

码农参上

SpringCloud spring cloud alibaba seata 8月日更

毕业设计:电商秒杀系统

唐高为

持久层Mybatis中对于SQL注入的问题,聊聊你的想法?

卢卡多多

SQL优化 8月日更

配置Flink流式应用(九)

数据与智能

flink Kubernetes YARN

Android开发:Android Studio插件GsonFormat根据Json自动生成javabean的方法

三掌柜

8月日更 8月

【设计模式】中介者模式

Andy阿辉

C# 后端 设计模式 8月日更

crudapi增删改查接口零代码产品成功案例之商会联盟卡项目

crudapi

Java Vue 零代码 crudapi qusar

【自驱型成长】——控制感

LeifChen

压力 控制感 8月日更 自驱型成长

在线日期计算器

入门小站

工具

QDS04 TensorFlow

耳东@Erdong

tensorflow 8月日更 qds

架构训练营毕业总结

Neil43

架构训练营

【Flutter 专题】66 图解基本约束 Box (一)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

MySQL 系列教程之(四)MySQL 中的数据类型

若尘

MySQL 数据库 8月日更

JavaScript 中如何比较变量的相等

devpoint

JavaScript ES6 8月日更

架构实战营毕业总结

唐高为

Web框架Gin | Gin 中间件

xcbeyond

Go 语言 gin gin-middleware 8月日更

有书香气的七夕节

箭上有毒

8月日更

架构实战营 | 毕业总结

架构实战营

【Dubbo3.0 技术专题】总体技术体系介绍及技术指南(目录)

洛神灬殇

dubbo Dubbo服务 8月日更 Dubbo3

手撸二叉树之二叉树的堂兄弟节点

HelloWorld杰少

数据结构与算法 8月日更

「让我们一起Golang」让协程自己kill自己

Regan Yue

协程 Go 语言 8月日更

https 与 http 区别

一个大红包

8月日更

Flutter Android 端 FlutterEngine Java 相关流程源码分析

工匠若水

flutter android 面试 8月日更

模式包括问题和解决方案

escray

学习 极客时间 如何落地业务建模 8月日更

部署MinIO存储服务的四种方式

liuzhen007

8月日更

模块五作业

Mr.He

架构实战营

LeetCode题解:208. 实现 Trie (前缀树),对象,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

如何设计一个容错的微服务架构

架构精进之路

架构 微服务 8月日更

python-类,对象--》多态,封装,继承

加里都好

Python

实战架构训练营总结

贯通

#架构实战营

Amazon Comprehend – 不断受训的自然语言处理_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章