当前位置: 首页 > news >正文

【人工智能】ChatGPT多模型感知态识别

目录

  • ChatGPT辅助细化知识增强!
  • 一、研究背景
  • 二、模型结构和代码
      • 任务流程
      • 一:启发式生成
  • 三、数据集介绍
  • 三、性能展示
  • 实现过程
  • 运行过程
      • 训练过程

在这里插入图片描述

ChatGPT辅助细化知识增强!

在这里插入图片描述
多模态命名实体识别(MNER)最近引起了广泛关注。 用户在社交媒体上生成大量非结构化内容,主要由图像和文本组成。这些帖子具有与社交媒体相关的固有特征,包括简洁和非正式的写作风格。 这些独特的特征对传统的命名实体识别(NER)方法提出了挑战。

一、研究背景

社交媒体上的多模态命名实体识别(MNER)旨在通过结合基于图像的线索来增强文本实体预测。 现有的研究主要集中在最大限度地利用相关图像信息或结合显式知识库中的外部知识。

二、模型结构和代码

我的模型主要分为两个阶段。在生成辅助细化知识的阶段,我利用一组有限的预定义人工样本,并采用多模态相似示例感知模块来仔细选择相关实例。然后,将这些选定的示例合并到格式正确的提示中,从而增强为 ChatGPT 提供的启发式指导,以获取精炼的知识。

任务流程

  1. 任务公式化
    在这里插入图片描述

  2. 上下文学习
    在这里插入图片描述
    虽然GPT-4可以接受多模态信息输入,但这一功能仅处于内部测试阶段,尚未公开使用。此外,与ChatGPT相比,GPT-4的成本更高,API请求速度较慢。为了提高可复现性,我们仍然选择ChatGPT作为主要的研究对象,并且提供的这一范式也可以用于GPT-4。

为了使ChatGPT能够完成图文多模态任务,使用了先进的多模态预训练模型将图像转换为图像说明。最后将测试输入x设计为以下模板:
在这里插入图片描述

一:启发式生成

  1. 预定义的人工样本
    使ChatGPT在MNER任务中表现更好的关键在于选择合适的上下文示例。获取准确标注的上下文示例,这些示例能够精确反映数据集的标注风格并提供扩展辅助知识的途径,是一个显著的挑战。直接从原始数据集中获取这些示例并不可行。为了解决这个问题,我采用了随机抽样的方法,从训练集中选择一小部分样本进行人工标注。具体来说,对于Twitter-2017数据集,从训练集中随机抽取200个样本进行人工标注,而对于Twitter-2015数据集,数量为120。标注过程包括两个主要部分。第一部分是识别句子中的命名实体,第二部分是综合考虑图像和文本内容以及相关知识,提供全面的理由说明。在标注过程中遇到的多种情况中,标注者需要从人类的角度正确判断并解释样本。对于图像和文本相关的样本,我们直接说明图像中强调了文本中的哪些实体。对于图像和文本无关的样本,我们直接声明图像描述与文本无关。通过人工标注过程,强调了句子中的实体及其对应的类别。此外,引入了相关的辅助知识来支持这些判断。这个细致的标注过程为ChatGPT提供了指导,使其能够生成高度相关且有价值的回答。

  2. 多模态相似示例感知模块
    由于GPT的少样本学习能力在很大程度上取决于上下文示例的选择,我设计了多模态相似示例感知(MSEA)模块来选择合适的上下文示例。作为一个经典的多模态任务,MNER的预测依赖于文本和视觉信息的整合。因此,我们将文本和图像的融合特征作为评估相似示例的基本标准。而这种多模态融合特征可以从之前的多模态命名实体识别(MNER)模型中获得。将MNER数据集D和预定义的人工样本
    G

在这里插入图片描述

在以往的研究中,经过交叉注意力投射到高维潜在空间的融合特征H会直接输入到解码层,以进行结果预测。我们的模型选择HH作为相似示例的判断依据,因为在高维潜在空间中相近的示例更有可能具有相同的映射方式和实体类型。计算测试输入与每个预定义人工样本的融合特征H的余弦相似度。然后,选择前N个相似的预定义人工样本作为上下文示例,以启发ChatGPT生成辅助的精炼知识:
在这里插入图片描述
为了高效实现相似示例的感知,所有的多模态融合特征可以提前计算并存储。

三、数据集介绍

我们在两个公共 MNER 数据集上进行了实验:Twitter-2015和 Twitter-2017。这两个数据集都是从Twitter平台上收集的,包含了文本和图像的配对信息,主要用于研究在社交媒体短文本场景下的多模态命名实体识别和情感分析等任务。、

  1. Twitter-2015: 推文中的文本部分被手动标注了命名实体,并使用BIO2(Beginning- Inside-Outside)标注方案对命名实体进行分类。实体类别包括人物(Person)、组织(Organization)、地点(Location)等。3373/723/723(train/development/test)

三、性能展示

在这里插入图片描述

  • 本文所有资源均可在该地址处获取。

实现过程

在下载附件并准备好数据集并调试代码后,进行下面的步骤,附件已经调通并修改,可直接正常运行;
环境要求

python == 3.7
torch == 1.13.1
transformers == 4.30.2
modelscope == 1.7.1
  1. 我们的项目基于AdaSeq, AdaSeq项目基于Python版本>= 3.7和PyTorch版本>= 1.8。

  2. 下载

git clone https://github.com/modelscope/adaseq.git
cd adaseq
pip install -r requirements.txt -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
  1. 训练模型
python -m scripts.train -c examples/ER/twitter-15.yamlpython -m scripts.train -c examples/ER/twitter-17.yaml

运行过程

训练过程

在这里插入图片描述

相关文章:

【人工智能】ChatGPT多模型感知态识别

目录 ChatGPT辅助细化知识增强!一、研究背景二、模型结构和代码任务流程一:启发式生成 三、数据集介绍三、性能展示实现过程运行过程训练过程 ChatGPT辅助细化知识增强! 多模态命名实体识别(MNER)最近引起了广泛关注。…...

2.ARM_ARM是什么

CPU工作原理 CPU与内存中的内容: 内存中存放了指令,每一个指令存放的地址不一样,所需的内存空间也不一样。 运算器能够进行算数运算和逻辑运算,这些运算在CPU中都是以运算电路的形式存在,一个运算功能对应一种运算电…...

深入学习指针(5)!!!!!!!!!!!!!!!

文章目录 1.回调函数是什么?2.qsort使用举例2.1使用qsort函数排序整形数据2.2使用sqort排序结构数据 3.qsort函数的模拟实现 1.回调函数是什么? 回调函数就是⼀个通过函数指针调⽤的函数。 如果你把函数的指针(地址)作为参数传递…...

离散无记忆信道

目录 离散无记忆信道输入概率输出概率联合分布概率信道逆向概率一些记号示例1示例2 离散无记忆信道 离散:输入输出字母表都是有限的 无记忆:输出字符 d i d_i di​ 被接收到的概率只依赖于当前的输入 c i c_i ci​, 而与前面的输入无关。 一个离散无记…...

【STM32】项目实战——OV7725/OV2604摄像头颜色识别检测(开源)

本篇文章分享关于如何使用STM32单片机对彩色摄像头(OV7725/OV2604)采集的图像数据进行分析处理,最后实现颜色的识别和检测。 目录 一、什么是颜色识别 1、图像采集识别的一些基本概念 1. 像素(Pixel) 2. 分辨率&am…...

《AI产品经理手册》——解锁AI时代的商业密钥

在当今这个日新月异的AI时代,每一位产品经理都面临着前所未有的挑战与机遇,唯有紧跟时代潮流,深入掌握AI技术的精髓,才能在激烈的市场竞争中独占鳌头。《AI产品经理手册》正是这样一部为AI产品经理量身定制的实战宝典,…...

ArcGIS 地理信息系统 任意文件读取漏洞复现

0x01 产品简介 ArcGIS是由美国Esri公司研发的地理信息系统(GIS)软件,它整合了数据库、软件工程、人工智能、网络技术、云计算等主流的IT技术,旨在为用户提供一套完整的、开放的企业级GIS解决方案,它包含了一套带有用户界面组件的Windows桌面应用。可以实现从简单到复杂的…...

11.07学习

一、三中代码解决鸡兔同笼问题 1.直接解方程 #include <stdio.h> int main() { int heads, feet, chickens, rabbits; printf("请输入总头数&#xff1a;"); scanf("%d", &heads); printf("请输入总脚数&#xff1a;"); scanf(…...

【JavaEE】常见锁策略、CAS

目录 常见的锁策略 乐观锁 vs 悲观锁 重量级锁 vs 轻量级锁 自锁锁和挂起等待锁 读写锁 可重入锁 vs 不可重入锁 公平锁 vs 非公平锁 CAS ABA问题 synchronized几个重要的机制 1、锁升级 2、锁消除 3、锁粗化 常见的锁策略 乐观锁 vs 悲观锁 乐观锁和悲观锁是锁的…...

Logstash 安装与部署(无坑版)

下载 版本对照关系&#xff1a;ElasticSearch 7.9.2 和 Logstash 7.9.2 &#xff1b; 官方下载地址 选择ElasticSearch版本一致的Logstash版本 https://www.elastic.co/cn/downloads/logstash 下载链接&#xff1a;https://artifacts.elastic.co/downloads/logstash/logst…...

鸿蒙开发:ArkUI Toggle 组件

ArkUI提供了一套完整的UI开发工具集&#xff0c;帮助开发者高效完成页面的开发。它融合了语言、编译器、图形构建等关键的应用UI开发底座&#xff0c;为应用的UI开发提供了完整的基础设施&#xff0c;包括简洁的UI语法、丰富的UI功能以及实时界面预览工具等&#xff0c;可以支持…...

使用Matlab神经网络工具箱

综述 在大数据和人工智能时代&#xff0c;神经网络是一种最为常见的数据分析和拟合工具。本报告以常用分析软件Matlab为例&#xff0c;介绍其中神经网络工具箱使用方法。 Step 1: 打开matlab 安装matlab 2018以上版本后&#xff0c;双击图标打开。 Step 2: 打开神经网络拟合…...

【面试题】Hive 查询:如何查找用户连续三天登录的记录

1. 需求概述 在分析用户行为时&#xff0c;查询用户的连续登录数据是一个常见需求。例如&#xff0c;我们需要找出每个用户连续三天登录的记录。给定一个包含用户登录记录的表&#xff0c;我们需要对这些数据进行处理&#xff0c;提取出用户连续三天登录的日期。 2. 问题说明…...

高活跃社区 Doge 与零知识证明的强强联手,QED 重塑可扩展性

在 Web3 的广阔生态中&#xff0c;Doge 无疑是最具标志性和趣味性的项目之一。作为一种起源于网络文化的符号&#xff0c;Doge 从最初的互联网玩笑发展为如今备受全球关注的去中心化资产&#xff0c;依靠其独特的魅力和广泛的用户基础&#xff0c;构建了一个充满活力的社区。 …...

qt QAbstractTableModel详解

1、概述 QAbstractTableModel 是 Qt 框架中的一个类&#xff0c;用于在 Qt 应用程序中实现自定义的表格数据模型。它是 Qt 中的一个抽象基类&#xff0c;提供了创建和操作表格数据所需的接口。QAbstractTableModel 为模型提供了一个标准接口&#xff0c;这些模型将其数据表示为…...

掌握 Navicat 数据库结构设计 | 提升工作效率的秘诀

近期&#xff0c;我们介绍了 Navicat 17 的一系列的新特性&#xff0c;包括&#xff1a;兼容更多数据库、全新的模型设计、可视化 BI、智能数据分析、可视化查询解释、高质量数据字典、增强用户体验、扩展 MongoDB 功能、轻松固定查询结果、便捷 URI、支持更多平台等。今天&…...

Ollama AI 框架缺陷可能导致 DoS、模型盗窃和中毒

近日&#xff0c;东方联盟网络安全研究人员披露了 Ollama 人工智能 (AI) 框架中的六个安全漏洞&#xff0c;恶意行为者可能会利用这些漏洞执行各种操作&#xff0c;包括拒绝服务、模型中毒和模型盗窃。 知名网络安全专家、东方联盟创始人郭盛华表示&#xff1a;“总的来说&…...

vue 3:监听器

目录 1. 基本概念 2. 侦听数据源类型 1. 监听getter函数 2. 监听 ref 或 reactive 的引用 3. 多个来源组成的数组 4. 避免直接传递值&#xff01;&#xff01;&#xff01; 3. 深层侦听器 4. 立即回调的侦听器 5. 一次性侦听器 6. watchEffect() 7. 暂停、恢复和停止…...

Java学习路线:Maven(四)Maven常用命令

在IDEA的Maven模块中&#xff0c;可以看到每个项目都有一个生命周期 这些生命周期实际上是Maven的一些插件&#xff0c;每个插件都有各自的功能&#xff0c;而双击这些插件就可以执行命令 这些命令的功能如下&#xff1a; clean&#xff1a;清除整个 target文件夹&#xff0c…...

服务器数据恢复—分区结构被破坏的reiserfs文件系统数据恢复案例

服务器数据恢复环境&#xff1a; 一台服务器中有一组由4块SAS硬盘组建的RAID5阵列&#xff0c;上层安装linux操作系统统。分区结构&#xff1a;boot分区LVM卷swap分区&#xff08;按照顺序&#xff09;&#xff0c;LVM卷中划分了一个reiserfs文件系统作为根分区。 服务器故障…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

DockerHub与私有镜像仓库在容器化中的应用与管理

哈喽&#xff0c;大家好&#xff0c;我是左手python&#xff01; Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库&#xff0c;用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

MySQL账号权限管理指南:安全创建账户与精细授权技巧

在MySQL数据库管理中&#xff0c;合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号&#xff1f; 最小权限原则&#xf…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

GO协程(Goroutine)问题总结

在使用Go语言来编写代码时&#xff0c;遇到的一些问题总结一下 [参考文档]&#xff1a;https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现&#xff1a; 今天在看到这个教程的时候&#xff0c;在自己的电…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用&#xff1a; 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests&#xff1a;发送 …...

适应性Java用于现代 API:REST、GraphQL 和事件驱动

在快速发展的软件开发领域&#xff0c;REST、GraphQL 和事件驱动架构等新的 API 标准对于构建可扩展、高效的系统至关重要。Java 在现代 API 方面以其在企业应用中的稳定性而闻名&#xff0c;不断适应这些现代范式的需求。随着不断发展的生态系统&#xff0c;Java 在现代 API 方…...

人工智能 - 在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型

在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型。这些平台各有侧重&#xff0c;适用场景差异显著。下面我将从核心功能定位、典型应用场景、真实体验痛点、选型决策关键点进行拆解&#xff0c;并提供具体场景下的推荐方案。 一、核心功能定位速览 平台核心定位技术栈亮…...

yaml读取写入常见错误 (‘cannot represent an object‘, 117)

错误一&#xff1a;yaml.representer.RepresenterError: (‘cannot represent an object’, 117) 出现这个问题一直没找到原因&#xff0c;后面把yaml.safe_dump直接替换成yaml.dump&#xff0c;确实能保存&#xff0c;但出现乱码&#xff1a; 放弃yaml.dump&#xff0c;又切…...