“AI 技术+人才”如何成为企业增长新引擎?戳此了解>>> 了解详情
写点什么

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/


公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2019-11-01 08:00547

评论

发布
暂无评论
发现更多内容
Amazon Comprehend – 不断受训的自然语言处理_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章