首页 > 其他分享 >综合设计——多源异构数据采集与融合应用综合实践

综合设计——多源异构数据采集与融合应用综合实践

时间:2023-12-14 23:14:36浏览次数:35  
标签:异构 分析 nlp self expires json 多源 id 综合

Q A
这个项目属于哪个课程 2023数据采集与融合技术
组名、项目简介 组名:喵喵队 项目需求:设计出一个交互友好的多源异构数据的采集与融合的小应用 、项目目标:通过在网页中上传文本、图片、视频或音频分析其中的情感 、项目开展技术路线:前端3件套、Python、flask
团队成员学号 102102143、102102140、102102141、102102152、102102117、102102114、102102121、102102132
这个项目目标 通过在网页中上传文本、图片、视频或音频分析其中的情感

项目整体介绍:

项目名称:多模态情感分析系统

项目背景:在当前的数字化时代,情感分析在各种应用中变得越来越重要,如客户服务、市场分析和社交媒体监控。多模态情感分析能够提供比单一模态更丰富、更准确的情感识别和分析。

项目目标:开发一个多模态情感分析系统,能够处理和分析文本、图片、音频和视频数据,从而提供综合的情感分析结果。

技术路线

  • 前端开发

    • 使用HTML、CSS和JavaScript进行界面设计,实现用户与系统的交互。

    • 通过用户给出的bv号进行查询

  • 后端开发

    • 使用Python进行后端逻辑的编写。

    • 利用Flask搭建简易后端框架。

  • 数据处理与分析

    • 文本分析:调用华为云NLP情感分析API。

    • 视频分析

      • 提取视频中的音频部分。
      • 对提取的音频进行分析,使用同音频分析的方法。
    • 音频分析

      • 使用openai开源的whisper进行音频分析。
      • 对上传的音频文件进行特征提取和情感识别。
  • 结果输出与展示:将分析结果通过前端界面展示。

最终效果:

通过在本地上传文件进行分析并且得到结果

我负责的部分:

我与周嘉辉同学合作开发情感分析部分,主要是调用华为云的api进行分析,并整合分析出来的结果得出相应的结论,代码如下:

from time import sleep
import requests
import json
from datetime import datetime,timedelta
from threading import Thread
import random

class HW_NLP:
    token = ''
    expires_at = ''
    resultMap = {}
    def __init__(self) -> None:
        self.updateToken()
    
    def updateToken(self):
        url = 'https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens?nocatalog=false'
        header = {
            'Content-Type': 'application/json',
        }
        body = {
                "auth": {
                    "identity": {
                        "methods": [
                            "password"
                        ],
                        "password": {
                            "user": {
                                "domain": {
                                    "name": "*******************"      
                                },
                                "name": "NLP",          
                                "password": "********"   
                            }
                        },
                    },
                    "scope": {
                        "project": {
                            "name": "cn-north-4" 
                        } 
                    }
                }
            }
        resp = requests.post(url, data=json.dumps(body), headers=header)
        self.token = resp.headers["X-Subject-Token"]
        expires_at = resp.json()['token']['expires_at']
        expires_at=expires_at.split('.')[0]
        self.expires_at = datetime.strptime(expires_at, "%Y-%m-%dT%H:%M:%S")-timedelta(minutes=30)

    def nlp(self,content,id):
        url = 'https://nlp-ext.cn-north-4.myhuaweicloud.com/v1/b17d60de2dd34882b320ec7af863a3b3/nlu/sentiment'
        header = {
            'Content-Type': 'application/json',
            'X-Auth-Token': self.token
        }
        body = {
            'content': content
        }
        resp = requests.post(url, data=json.dumps(body), headers=header)
        print(resp.json())
        self.resultMap[id].append(resp.json())
        

    def nlp_fromList(self,strList:list) -> list:
        if self.expires_at < datetime.now():
            self.updateToken()
        p_id = random.Random()
        self.resultMap[p_id] = []
        count = 0
        s = ''
        tPool = []
        for str in strList:
            # 高情商地讲是以准确率作为代价提高查询效率
            if len(s) < 180:
                s = s + str
            else:
                tPool.append(Thread(target=self.nlp,args=(s,p_id)))
                s = ''
        if len(s) != 0:
            tPool.append(Thread(target=self.nlp,args=(s,p_id)))

        
        for t in tPool:
            t.start()
            count+=1
            # 每秒最多调用20次
            if count == 5:
                sleep(1)
        for t in tPool:
            t.join()
        res = self.resultMap[p_id]
        del self.resultMap[p_id]
        return res

# example
if __name__ == '__main__':
    # nlp()
    str = '浑浑噩噩的头脑、失魂落魄的身体…' # 声明:华为官方提供的测试字符串,本人精神极度正常
    l = [str]

    # 一个程序实例化一个就够了
    nlp = HW_NLP()
    r = nlp.nlp_fromList(l)
    print(r)# 结果:[{'result': {'content': '浑浑噩噩的头脑、失魂落魄的身体…', 'label': 0, 'confidence': 0.90706205}}]

gitee文件夹链接:

gitee文件夹

标签:异构,分析,nlp,self,expires,json,多源,id,综合
From: https://www.cnblogs.com/i-took-u/p/17902399.html

相关文章

  • 软件需求与分析课堂测试十——综合案例分析
    根据下列案例需求描述,回答相关问题:有一个对外营业的会议中心,有各种不同规格的会议室,为用户提供以下服务:1、用户可以按照会议人数、会议时间预订会议室。可以只预订1次,也可预订定期召开的会议。2、开会前允许用户修改会议时间、人数,重新选择会议室,甚至取消预订的会议。3、......
  • 综合设计——多源异构数据采集与融合应用综合实践
    1.基本信息这个项目属于哪个课程https://edu.cnblogs.com/campus/fzu/2023DataCollectionandFusiontechnology组名、项目简介组名为冲就完事项目需求与目标:当我们置身于日常生活或旅途中,常会被美景所震撼,但往往难以找到合适的诗句来表达内心的感悟。为了传承中华传统......
  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践[码云地址](多源异构数据采集与融合应用综合实践:CallofSilence数据采集与融合综合实验(gitee.com))这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:CallofSilence项目需求:设计出一个交互友好的......
  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践[码云地址](多源异构数据采集与融合应用综合实践:CallofSilence数据采集与融合综合实验(gitee.com))这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:CallofSilence项目需求:设计出一个交互友好的......
  • 多源异构数据采集与融合应用综合实践
    数据采集与融合技术实践多源异构数据采集与融合应用综合实践组名、项目简介<组名:洛杉矶耐摔王、项目需求和目标:文字和音频总结、项目开展技术路线:python>团队成员学号102102127,102102124,102102125,102102123,102102144,102102146,102102126,102102145这个项目的目标......
  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践[码云地址](多源异构数据采集与融合应用综合实践:CallofSilence数据采集与融合综合实验(gitee.com))这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:CallofSilence项目需求:设计出一个交互友好的......
  • 多源异构数据采集与融合应用综合实践
    数据采集与融合技术实践多源异构数据采集与融合应用综合实践组名、项目简介<组名:洛杉矶耐摔王、项目需求和目标:文字和音频总结、项目开展技术路线:python>团队成员学号102102127,102102124,102102125,102102123,102102144,102102146,102102126,102102145这个项目的目标......
  • 综合设计——多源异构数据采集与融合应用综合实践
    综合设计——多源异构数据采集与融合应用综合实践​这个项目属于哪个课程2023数据采集与融合技术组名、项目简介组名:普雷蒙奇、项目需求:多模态情感分析、项目目标:通过在网页中搜索关键词来得到一个综合的情感分析、项目开展技术路线:前端、python、华为云平台、Django......
  • 综合设计——多源异构数据采集与融合应用综合实践
    1.基本信息这个项目属于哪个课程https://edu.cnblogs.com/campus/fzu/2023DataCollectionandFusiontechnology组名冲就完事项目简介当我们置身于日常生活或旅途中,常会被美景所震撼,但往往难以找到合适的诗句来表达内心的感悟。为了传承中华传统文化、提升人们的诗......
  • 综合设计——多源异构数据采集与融合应用综合实践
    这个项目属于哪个课程2023数据采集与融合技术作业要求综合设计——多源异构数据采集与融合应用综合实践组名汪汪队项目主题微博评论情感分析项目简介项目需求:1.情绪监测、2.品牌声誉管理、3.市场分析、4.舆论引导、5.个性化推荐、6.社交网络分析项目......