调用华为API实现情感分析

news2024/10/2 14:28:13

作者介绍

王新华,男,西安工程大学电子信息学院,2022级研究生
研究方向:人工智能与模式识别
电子邮件:996514274@qq.com

魏小双,女,西安工程大学电子信息学院,2022级研究生
研究方向:目标检测
电子邮件:2549024740@qq.com

王泽宇,男,西安工程大学电子信息学院,2022级研究生,张宏伟人工智能课题组
研究方向:机器视觉与人工智能
电子邮件:2717124491@qq.com

一. 文本情感分析介绍

1.1 API

是什么:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
有什么用:API 的一个主要功能是提供通用功能集。API同时也是一种中间件为各种不同平台提供数据共享。程序设计的实践中,编程接口的设计首先要使软件系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的可维护性和可扩展性。

1.2 文本情感分析简介

文本情感分析(Sentiment Analysis)是指利用自然语言处理和文本挖掘技术,对带有情感色彩的主观性文本进行分析、处理和抽取的过程。目前,文本情感分析研究涵盖了包括自然语言处理、文本挖掘、信息检索、信息抽取、机器学习和本体学等多个领域,得到了许多学者以及研究机构的关注,近几年持续成为自然语言处理和文本挖掘领域研究的热点问题之一。

1.3 文本情感分析的分类

(1)按照任务细粒度分类

图1 文本情感分析按照任务细粒度分类
在这里插入图片描述
TG-ABSA(Target-grounded aspect based sentiment analysis):分析对象是给定某一个实体的情况下该实体给定属性集合下的各个属性的情感分析。
TN-ABSA(Target noaspect based sentiment analysis):分析对象是文本中出现的实体的情感正负向。
T-ABSA(Target aspect based sentimentanalysis):分析对象是文本中出现的实体和属性组合。

(2)按照应用场景分类

图2 文本情感分析按照应用场景分类
在这里插入图片描述

1.4 参数说明

以通用情感分析为例:
在这里插入图片描述
在这里插入图片描述

二.调用华为API实现情感分析实验

2.1 调用华为API

华为云官网自然语言处理中提供了情感分析API的功能,可以在华为云官网中搜索自然语言处理,开通情感分析服务,添加访问密钥生成Access Key Id(AK)和Secret Access Key(SK)。

2.2 代码实现方法一

2.2.1 以通用情感分析为例:

# coding: utf-8

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdknlp.v2.region.nlp_region import NlpRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdknlp.v2 import *

if __name__ == "__main__":
    ak = "<YOUR AK>"   #填入申请好的Access Key Id
    sk = "<YOUR SK>"   #填入申请好的Secret Access Key

    credentials = BasicCredentials(ak, sk) \

    client = NlpClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(NlpRegion.value_of("cn-north-4")) \
        .build()

    try:
        request = RunSentimentRequest()
        request.body = HWCloudSentimentReq(
            lang="zh",	#lang表示待分析文本content中的语言,“zh”为中文,“en”为英文
            content="无比清醒的头脑,充满活力的身体"	#content中填入待分析文本
        )
        response = client.run_sentiment(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

2.2.2 实验结果

调试成功之后,输出以下文本:

{
 "result": {
  "content": "清晰无比的头脑,充满活力的身体",
  "label": 1,		#情感标签,1为正向,0为负向
  "confidence": 0.86632913		#标签置信度
 }
}

2.3 代码实现方法二

2.3.1 完整代码

每一行的注释:
导入包requests
导入包json
url的地址
调试生成的token,复制粘贴过来就可以
Header里是内容的类型和授权的token
主体部分是输入的文本内容
请求相应的url、文本数据和header
输出最后的文本。

# 需提前安装requests,执行pip install requests
import requests
import json

def nlp_demo():
    url = 'https://nlp-ext.cn-north-4.myhuaweicloud.com/v1/1916e290756f403889ef7da669b5c8a7/nlu/sentiment'  
    token = '填入自己在控制台生成的token代码 '
    header = {
        'Content-Type': 'application/json',
        'X-Auth-Token': token
    }
    body = {
        'content': '昨天母亲节妈妈收到了孩子们的祝福很开心很幸福',
    }
    resp = requests.post(url, data=json.dumps(body), headers=header)
    print(resp.text)


if __name__ == '__main__':
    nlp_demo()

2.3.2 测试案例

contents:

  1. 浑浑噩噩的头脑、失魂落魄的身体
  2. 今天拍到很好看的天空的照片,我很开心
  3. 昨天吃到了重庆鸡公煲,感觉像是回到了重庆的大学时光
  4. 昨天母亲节、妈妈收到了孩子们的祝福很开心很幸福

测试结果:

  1. 浑浑噩噩的头脑、失魂落魄的身体在这里插入图片描述

  2. 今天拍到很好看的天空的照片,我很开心
    在这里插入图片描述

  3. 昨天吃到了重庆鸡公煲,感觉像是回到了重庆的大学时光
    在这里插入图片描述

  4. 昨天母亲节、妈妈收到了孩子们的祝福很开心很幸福
    在这里插入图片描述

2.4 注意事项

在运行程序之前需检查调用的数据包是否已经安装,如果没有安装,可在命令提示窗口中进行安装,首先使用“conda activate 环境名称”进入虚拟环境,然后执行“pip install 数据包名称”,如果安装较慢,可使用清华源镜像进行安装,安装指令为:
“pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 数据包名称”,
在调用华为API实验中,建议执行:
“pip install -i https://pypi.tuna.tsinghua.edu.cn/simple huaweicloudsdkall”指令来安装所有的数据包。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/584792.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Web安全:PHP反序列化漏洞的 测试(向服务器写入一句话.)

Web安全&#xff1a;PHP反序列化漏洞的 测试 程序员在写代码时&#xff0c;没有对用户输入的序列化字符串做一个严格检测&#xff0c;导致恶意的用户可以控制反序列化的一个过程&#xff0c;因此导致XSS漏洞&#xff0c;代码执行&#xff0c;SQT注入&#xff0c;目录遍历等不可…

Shader Graph19-位置函数

一、打开Unreal&#xff0c;新建Material命名为DemoPosition&#xff0c;双击打开 因为中心点为物体中心&#xff0c;所以将坐标值连接到Base Color上是上面的效果&#xff0c;然后在场景中添加一个球体&#xff0c;将材质应用在该球体上&#xff0c;按下w我们可以在场景中改变…

Alibaba官方「SpringCloudAlibaba全彩学习手册」限时开源!

最近我在知乎上看过的一个热门回答&#xff1a; 初级 Java 开发面临的最大瓶颈在于&#xff0c;脱离不出自身业务带来的局限。日常工作中大部分时间在增删改查、写写接口、改改 bug&#xff0c;久而久之就会发现&#xff0c;自己的技术水平跟刚工作时相比没什么进步。 所以我们…

Linux压缩和归档命令的速查表

在Linux系统中&#xff0c;有多种命令可用于压缩和归档文件和目录。这些命令使我们能够将文件和目录打包成单个文件&#xff0c;并可以选择压缩以节省存储空间。本文将提供一个Linux压缩和归档命令的速查表&#xff0c;帮助您快速查找和了解各种常用命令及其用法。 压缩文件和目…

creator-热更

title: creator-热更 categories: Cocos2dx tags: [creator, 热更] date: 2023-04-20 10:42:26 comments: false mathjax: true toc: true creator-热更 前篇 热更新管理器 AssetsManager - https://docs.cocos.com/creator/manual/zh/advanced-topics/hot-update-manager.htm…

实验篇(7.2) 04. 映射服务器到公网IP 远程访问 ❀ Fortinet网络安全专家 NSE4

【简介】由于服务器的IP是内网地址&#xff0c;所以无法从公网直接访问服务器。要想远程访问服务器&#xff0c;最简单的办法就是将服务器映射到公网IP&#xff0c;然后通过公网IP加端口号的方式进行访问。 实验要求与环境 OldMei集团深圳总部部署了一台服务器&#xff0c;用来…

Vue学习-知识点总结

&#xff08;一&#xff09;基础知识 1、简单使用 <!DOCTYPE html> <html> <head><meta charset"utf-8" /><title></title><!--第一步&#xff1a;导入vue--><script src"js/vue-2.6.10.js"></script…

深度学习相关知识--池化

池化 概念 池化分为最大池化&#xff08;用的多一些&#xff09;和平均池化 最大池化是选出区域内最大值作为池化后的值&#xff0c;如下图所示&#xff1a; 平均池化是选择区域内平均值作为池化后的值&#xff0c;如下图所示&#xff1a; 概念很浅显&#xff0c;但是对于刚…

【C++初阶】10. vector的使用及模拟实现

1. vector的介绍 vector的文档介绍 vector是表示可变大小数组的序列容器。就像数组一样&#xff0c;vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问&#xff0c;和数组一样高效。但是又不像数组&#xff0c;它的大小是可以动态改变的…

CH341的SPI接口编程说明

CH341的SPI接口特性&#xff1a; 1、提供3个片选信号&#xff0c;SCS0~SCS2&#xff1b; 2、SPI 默认工作模式0&#xff0c;不支持修改&#xff1b; 3、SPI Clock速率固定&#xff0c;小于2MHz&#xff1b; 4、支持MSB/LSB传输&#xff1b; 引脚序号功能说明15~17SCS0~SCS…

00后实习生上岸字节,卷王不愧是卷王....

在找工作的时候都必须要经历面试这个环节。在这里我想分享一下自己上岸字节的面试经验&#xff0c;过程还挺曲折的&#xff0c;但是还好成功上岸了。大家可以参考一下&#xff01; 0821测评 语言理解 找规律 图形 数据分析 性格测试 0831笔试 0901字节一面&#xff08;I…

Docker安装SQL Studio

前言 当前镜像是基于SQL Studio官网linux版本的安装包构建而成&#xff0c;镜像的tag和官方安装包的版本是对应的&#xff0c;例如&#xff1a;v1.6.0对应官方linux安装包的v1.6.0版本&#xff0c;目前只有v1.6.0版本的镜像。附上官网安装包下载地址 镜像说明 暴露端口 # 容…

AIML

倒三角数学符号为▼ 。英文为Nabla&#xff0c;中文读音为奈不拉&#xff0c;同时也可以读作“Del” 。这是场论中的符号&#xff0c;是矢量微分算符。 一张图读懂导数与weifen 这是高数中的一张经典图&#xff0c;如果忘记了导数微分的概念&#xff0c;基本看着这张图就能全…

js读取json文件的一个乌龙

起因 编写一个显示数据的静态页面&#xff0c;也就是俗称的index.html页面&#xff0c;页面的数据则有同目录下的json文件提供。 乌龙 吭哧吭哧的把页面写完和把json文件创建完成后&#xff0c;开始测试。 index.html <!DOCTYPE html> <html lang"zh"&g…

软件设计师(中级)详细复习过程总结

软考复习过程总结 前言背景1.1 软考是什么1.2 软考的含金量1.3 软考书籍 软考前相关学习2.1专业知识学习2.2 J2SE视频2.3 设计模式2.4 软件设计师视频 考前两周复习冲刺3.1 算法和排序3.2 设计模式3.3 真题3.4 讨论3.4.1 理论基础3.4.2 实践检验 学习方法4.1 PDCA4.2 番茄工作法…

操作系统期末复习——课时十内存管理(一)

1、内存管理的基本原理和要求 1&#xff09;内存管理的定义 操作系统对内存的划分和动态分配就是内存管理的概念。 2&#xff09;内存管理的功能 &#xff08;1&#xff09;内存空间的分配和回收&#xff1a;由操作系统完成对主存的分配和回收&#xff0c;对编程人员透明。 &…

通过dockerfile将nginx、前端和后端封装成一个镜像

1、内容如下 2、dist文件 就是vue项目的打包文件 3、jar包文件 就是springboot的打包文件 4、编写Dockerfile #引用 jdk1.8作为基础镜像,这个jdk1.8是我自己用linux版本的jdk打包的,具体操作可以看 #https://blog.csdn.net/qq_38639813/article/details/129384923中将jd…

项目经理如何有效管理项目预算?

项目的成功完成在很大程度上依赖于管理良好的项目预算。借助概述项目范围、资源需求、时间表和成本估算等关键方面的详细预算&#xff0c;管理人员可以较好地控制成本并使项目走上正轨。 成功的预算管理需要准确的成本估算&#xff0c;密切跟踪实际支出&#xff0c;仔细确定预…

【Windows】Windows 无法访问\\xxx.xxx.xxx.xxx 共享文件夹

一、问题描述 1、Windows 10专业版系统访问 Windows Server 2003 的共享文件夹&#xff0c;其他电脑可以通过账号和密码访问此服务器共享的文件夹&#xff0c;但Windows 10专业版访问时报如下错误 网络错误 Windows 无法访问\\192. 1. 1. 1\组文件 你没有权限访问\\192.1.1.1…

行业报告 | 聚焦智能制造

原创 | 文 BFT机器人 01 智能制造正当时&#xff0c;助力企业行稳致远 1.1 什么是智能制造&#xff1f; “智能制造”源于人工智能的研究&#xff0c;关于其定义有很多种 美国Wright和Bourne在其《制造智能》(智能制造研究领域的首本专著) 中将智能制造定义为“通过集成知识工…