近期,IBM对Watson认知API服务进行了扩充,新增了情绪和语调分析API的测试版本。
Watson的情绪分析API被添加至 AlchemyLanguage 的现有API服务中。去年IBM收购AlchemyAPI之后,后者的API服务就被纳入了Watson的服务清单中。目前,情绪分析API在处理完文本之后,会根据五种情绪对文本内容进行排名:快乐、恐惧、悲伤、厌恶和愤怒。
在 宣布进行API更新的博客 中有一个示例,对下面的文本进行了分析:“那天别人跟我说我已经被经济系入取了。”这个文本的情绪分析排名结果是:
根据这些数据,开发者可以对整体文本表达的情绪进行推断。
我们可以通过两种方式向该API发送需要处理的文本和HTML内容,一是通过HTTP将内容直接传送至端点,二是传入一个网络上可公开访问内容的URL链接。API的输出格式包括XML和JSON两种。该API按照请求数计费,每个IBM Bluemix机构每天可以免费使用1000次API事件请求。计费标准为0.007美元/事件请求,最多支持25万次事件。
Watson语调分析器 与情绪分析API类似,但是在分析时增加了语言和社交语调的维度。
语调 分为三大类:分析性、自信性和试探性的语调。对于前述示例文本,分析性得分为0.39,自信性和试探性的值则为0。
社交语调分析 将语调分为五种不同的语调:开放性、尽责性、外向性、亲和性和情绪范围(或情绪稳定性)。这五种语调也被称为 “五大”人格特征 。对示例文本的分析得出这五种社交语调的值为:
与情绪分析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 )关注我们。