调用攻略(Python3)
首先认证授权:
在开始调用任何API之前需要先进行认证授权,具体的说明请参考:
http://ai.baidu.com/docs#/Auth/top
获取Access Token
向授权服务地址https://aip.baidubce.com/oauth/2.0/token发送请求(推荐使用POST),并在URL中带上以下参数:
grant_type:?必须参数,固定为client_credentials;
client_id:?必须参数,应用的API Key;
client_secret:?必须参数,应用的Secret Key;
例如:
具体Python3代码如下:
# -*- coding: utf-8 -*- #!/usr/bin/env python import urllib import json #client_id 为官网获取的AK, client_secret 为官网获取的SK client_id =【百度云应用的AK】 client_secret =【百度云应用的SK】 #获取token def get_token(): host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=' + client_id + '&client_secret=' + client_secret request = urllib.request.Request(host) request.add_header('Content-Type', 'application/json; charset=UTF-8') response = urllib.request.urlopen(request) token_content = response.read() if token_content: token_info = json.loads(token_content) token_key = token_info['access_token'] return token_key
情感倾向分析接口调用:
详细说明请参考:http://ai.baidu.com/docs#/NLP-API/57b9b630
接口描述
情感倾向分析接口(通用版):自动对包含主观信息的文本进行情感倾向性判断(积极、消极、中性),并给出相应的置信度。为口碑分析、话题监控、舆情分析等应用提供基础技术支持,同时支持用户自行定制模型效果调优。
请求说明
HTTP方法: POST
请求URL: https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify
URL参数:
参数 值
access_token 通过API Key和Secret Key获取的access_token,参考“Access Token获取”
Header如下:
参数 值
Content-Type application/json
Body请求示例:
{
"text": "苹果是一家伟大的公司"
}
请求参数
参数 类型 描述 是否必填
text string 文本内容,最大2048字节
返回说明
参数 说明 描述
log_id uint64 请求唯一标识码
sentiment int 表示情感极性分类结果,0:负向,1:中性,2:正向
confidence float 表示分类的置信度,取值范围[0,1]
positive_prob float 表示属于积极类别的概率 ,取值范围[0,1]
negative_prob float 表示属于消极类别的概率,取值范围[0,1]
Python3调用代码如下:
#调用情感分类接口 def get_classify(content): print (content) token=get_token() url = 'https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify' params = dict() params['text'] = content params = json.dumps(params).encode('utf-8') access_token = token url = url + "?access_token=" + access_token request = urllib.request.Request(url=url, data=params) request.add_header('Content-Type', 'application/json') response = urllib.request.urlopen(request) content = response.read() if content: content=content.decode('gb2312') #print (content) data = json.loads(content) data=data['items'][0] sentiment=data['sentiment'] if sentiment==0: sentiment='负向' elif sentiment==1: sentiment='中性' else: sentiment='正向' print ('情感分类结果:',sentiment) print ('分类的置信度:',data['confidence']) print ('积极类别概率:',data['positive_prob']) print ('消极类别概率:',data['negative_prob'])
功能评测:
选用不同的数据对情感分类的准确性进行测试,具体的案例包括生活用语,文章,古诗等。具体案例如下:
test_list = [ '今天真开心啊。', '最近事情太多了,好烦啊。', '会当凌绝顶,一览众山小。', '枯藤老树昏鸦,小桥流水人家,古道西风瘦马。夕阳西下,断肠人在天涯。', '随着大数据应用者的规模越来越大,人工智能越来越成为一种主流', '让我们团结一心。', '你早上来晚了,他有点不高兴。', '项目马上就要成功了!', '你怎么不早点来啊!', '祝你生日快乐!'] import datetime print (datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) for text in test_list: get_classify(text) print (datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
结果:
2019-04-17 10:27:04
今天真开心啊。
情感分类结果: 正向
分类的置信度: 0.150197
积极类别概率: 0.617589
消极类别概率: 0.382411
最近事情太多了,好烦啊。
情感分类结果: 中性
分类的置信度: 0.738756
积极类别概率: 0.513062
消极类别概率: 0.486938
会当凌绝顶,一览众山小。
情感分类结果: 正向
分类的置信度: 0.0787282
积极类别概率: 0.585428
消极类别概率: 0.414572
枯藤老树昏鸦,小桥流水人家,古道西风瘦马。夕阳西下,断肠人在天涯。
情感分类结果: 正向
分类的置信度: 0.281931
积极类别概率: 0.676869
消极类别概率: 0.323131
随着大数据应用者的规模越来越大,人工智能越来越成为一种主流
情感分类结果: 正向
分类的置信度: 0.326132
积极类别概率: 0.696759
消极类别概率: 0.303241
让我们团结一心。
情感分类结果: 正向
分类的置信度: 0.0150585
积极类别概率: 0.556776
消极类别概率: 0.443224
你早上来晚了,他有点不高兴。
情感分类结果: 负向
分类的置信度: 0.286418
积极类别概率: 0.321112
消极类别概率: 0.678888
项目马上就要成功了!
情感分类结果: 正向
分类的置信度: 0.331586
积极类别概率: 0.699214
消极类别概率: 0.300786
你怎么不早点来啊!
情感分类结果: 负向
分类的置信度: 0.638268
积极类别概率: 0.16278
消极类别概率: 0.83722
祝你生日快乐!
情感分类结果: 正向
分类的置信度: 0.0883195
积极类别概率: 0.589744
消极类别概率: 0.410256
2019-04-17 10:27:11
发现在10个测试案例中,有2个结果待商榷,分别是:
最近事情太多了,好烦啊。
情感分类结果: 中性
枯藤老树昏鸦,小桥流水人家,古道西风瘦马。夕阳西下,断肠人在天涯。
情感分类结果: 正向
其他的都比较准确,准确率为80%左右。10个调用,用时7秒,每次调用0.7秒左右,速度较快。
应用前景:
文本纠错有很广阔的应用前景,包括:
评论分析与决策,通过对产品多维度评论观点进行倾向性分析,给用户提供该产品全方位的评价,方便用户进行决策
评论分类,通过对评论进行情感倾向性分析,将不同用户对同一事件或对象的评论内容按情感极性予以分类展示
舆情监控,通过对需要舆情监控的实时文字数据流进行情感倾向性分析,把握用户对热点信息的情感倾向性变化
产品建议:
建议针对口语化场景,古诗等内容进行优化。
大家都需要啊
现代人压力大啊
不光是学生,上班族更需要
以后心理医生的职业需求量应该很大
是啊,心理健康很重要
现在是个趋势
学生都比较年轻,这方面需求很多
心理健康很重要,现在各学校都配有心理医生
这个建议很有意思
应该给每个家长都配一个分析孩子的心里
这个AI的效果的确不错
在人与人接触的工作应用会更广泛些
确实,AI分享的比人分析的更准确
谢谢,你写的也都很不错啊
感谢分享,赞一个
还可以紧张面对面的销售分析
通过这可以进行面试分析
支持
感觉可以应用到客服的场景
大家可以用这个攻略感受一下