IBM 近期扩充 Watson 认知 API 服务

  • Benjamin Young
  • 宋秉金

2016 年 3 月 24 日

话题:语言 & 开发AI

近期,IBM 对 Watson 认知 API 服务进行了扩充,新增了情绪和语调分析 API 的测试版本。

Watson 的情绪分析 API 被添加至AlchemyLanguage的现有 API 服务中。去年 IBM 收购 AlchemyAPI 之后,后者的 API 服务就被纳入了 Watson 的服务清单中。目前,情绪分析 API 在处理完文本之后,会根据五种情绪对文本内容进行排名:快乐、恐惧、悲伤、厌恶和愤怒。

宣布进行 API 更新的博客中有一个示例,对下面的文本进行了分析:“那天别人跟我说我已经被经济系入取了。”这个文本的情绪分析排名结果是:

  • 愤怒:0.045
  • 厌恶:0.023
  • 快乐:0.93
  • 恐惧:0.035
  • 悲伤:0.07

根据这些数据,开发者可以对整体文本表达的情绪进行推断。

我们可以通过两种方式向该 API 发送需要处理的文本和 HTML 内容,一是通过 HTTP 将内容直接传送至端点,二是传入一个网络上可公开访问内容的 URL 链接。API 的输出格式包括 XML 和 JSON 两种。该 API 按照请求数计费,每个 IBM Bluemix 机构每天可以免费使用 1000 次 API 事件请求。计费标准为 0.007 美元 / 事件请求,最多支持 25 万次事件。

Watson 语调分析器与情绪分析 API 类似,但是在分析时增加了语言和社交语调的维度。

语调分为三大类:分析性、自信性和试探性的语调。对于前述示例文本,分析性得分为 0.39,自信性和试探性的值则为 0。

社交语调分析将语调分为五种不同的语调:开放性、尽责性、外向性、亲和性和情绪范围(或情绪稳定性)。这五种语调也被称为“五大”人格特征。对示例文本的分析得出这五种社交语调的值为:

  • 开放性:0.134
  • 尽责性:0.409
  • 外向性:0.474
  • 亲和性:0.736
  • 情绪范围:0.784

与情绪分析 API 类似,该 API 也只是使用了简单的 GET 和 POST 请求等 HTTP API,并返回一个单一响应。API 文档中提供了 curl、Node、Java 和 Python 等方式调用的示例。在测试期内,通过 IBM Bluemix 可以免费使用语调分析器。下面是使用 Node 对前述示范文本进行分析的例子:

var watson = require('watson-developer-cloud');

var tone_analyzer = watson.tone_analyzer({
  username: '{username}',
  password: '{password}',
  version: 'v3-beta',
  version_date: '2016-02-11'
});

tone_analyzer.tone({ text: 'the day I was told that I had been accepted as a student of economics.' },
  function(err, tone) {
    if (err)
      console.log(err);
    else
      console.log(JSON.stringify(tone, null, 2));
});

IBM 已经公布了一个应用程序入门套件。除 AlchemyData News API 外,该套件还使用了 AlchemyAlanguage 和语调分析器。目前,这些 API 只支持英语文本。

这个示范应用展示了如何使用互联网和社交媒体及自然语言处理,以理解重要话题及人们对这些话题的反应。

开发者如果有兴趣通过实践项目探索这些 API,可以考虑参加线上Watson 开发者挑战(目前正在进行,直至 4 月 15 日结束),以及今年 5 月 21-22 日在纽约 36 号码头举行的Watson 世界黑客马拉松(World of Watson Hackathon)。

查看英文原文:IBM Expands Watson Cognitive APIs


感谢张龙对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

语言 & 开发AI