意图数据集HWU、Banking预处理

news2024/11/19 22:43:29

当谈到意图数据集时,HWU、Banking和Clinc是三个常见的数据集。以下是关于这三个数据集的介绍:

目录

一、数据集介绍

HWU数据集

Banking数据集

Clinc数据集

二、数据集预处理

数据处理 

数据存储

数据类别分析

句子长度统计


一、数据集介绍

HWU数据集

  • 来源与用途:HWU数据集通常用于自然语言处理和任务型对话系统的研究中,特别是在意图识别和对话状态追踪方面。
  • 内容特点:该数据集包含多种用户意图和对应的语句,这些语句旨在反映真实世界中用户可能提出的各种请求和查询。
  • 使用场景:研究人员可以使用HWU数据集来训练和测试他们的模型,以准确识别用户的意图,并据此作出相应的响应。

Banking数据集

  • 专注领域:Banking数据集(以BANKING77为例)专注于银行领域的对话意图识别。它包含了与银行服务相关的各种用户查询和意图。
  • 数据构成:这个数据集通常包含大量的用户提问样本,每个样本都标注了具体的意图类别,如查询余额、转账、查询交易记录等。
  • 应用价值:对于开发智能银行助理或金融领域的自然语言处理应用来说,Banking数据集是一个宝贵的资源。它可以帮助模型更好地理解和响应用户在银行业务方面的需求。

Clinc数据集

  • 广泛覆盖:Clinc数据集(以CLINC150为例)是一个相对大型的数据集,涵盖了广泛的用户意图和场景,不仅限于特定领域。
  • 意图多样性:该数据集包含多达150种不同的意图,这些意图涉及各种日常活动和信息查询,如播放音乐、查询天气、设置提醒等。
  • 研究价值:由于Clinc数据集的多样性和广泛性,它成为了研究通用意图识别和对话系统的重要资源。研究人员可以利用这个数据集来开发和测试更加通用和健壮的自然语言处理模型。

总的来说,HWU、Banking和Clinc这三个数据集在意图识别和对话系统研究中各有侧重,共同为研究人员提供了丰富的数据和场景来训练和测试他们的模型。

二、数据集预处理

数据处理 

python读取数据

import pandas as pd
from datasets import load_from_disk
raw_datasets = load_from_disk("./banking77/")

展示数据

raw_datasets

DatasetDict({
    train: Dataset({
        features: ['text', 'label'],
        num_rows: 10003
    })
    test: Dataset({
        features: ['text', 'label'],
        num_rows: 3080
    })
})

可以看到,数据集是json格式 ,我们要把它转换成tsv或者csv格式,一列内容,一列标签的格式。

# 转换 train 数据集为 DataFrame
train_df = raw_datasets['train'].to_pandas()

# 转换 test 数据集为 DataFrame
test_df = raw_datasets['test'].to_pandas()
train_df.head(2)

 

从打印前两行可知,数据已成功转换为text和label两列并转换为tsv格式方便读取。 

数据存储

train_df.to_csv('./banking77/banking_train.tsv',index=False,sep='\t')
test_df.to_csv('./banking77/banking_dev.tsv',index=False,sep='\t')

数据类别分析

import pandas as pd
df = pd.read_csv('./HWU/HWU_train_data.tsv', sep='\t')
# # df = pd.read_csv('./SST-2/dev.tsv', sep='\t')
df.head()
# # 统计 label 列的种类数量
label_counts = df['label'].value_counts()
print(label_counts)

# # 输出种类数量
print(f"label 列共有 {len(label_counts)} 种不同的取值。")

label
9     1216
48    1014
27     920
67     894
53     892
      ... 
34      35
41      21
5       18
23      18
10       5
Name: count, Length: 68, dtype: int64
label 列共有 68 种不同的取值。

句子长度统计

import csv
 
# 读取CSV文件
filename = './HWU/HWU_dev_data.tsv'  # 请替换成你的CSV文件路径
with open(filename, 'r', newline='', encoding='utf-8') as csvfile:
    reader = csv.reader(csvfile)
    next(reader)  # 跳过标题行
    word_counts = [len(row[0].split()) for row in reader]  # 假设你想要获取第二列句子的单词个数
 
# 统计单词个数
total_sentences = len(word_counts)
average_words = sum(word_counts) / total_sentences
 
# 打印结果
print("句子总数:", total_sentences)
print("平均单词数:", average_words)

句子总数: 2000
平均单词数: 6.8565

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

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

相关文章

C++20中的三向比较运算符(three-way comparison operator)

在C20中&#xff0c;引入了一个新的特性&#xff0c;即"三向比较运算符(three-way comparison operator)"&#xff0c;由于其外观&#xff0c;也被称为"宇宙飞船运算符(spaceship operator)"&#xff0c;其符号为<>。目的是简化比较对象的过程。这个…

JavaScript中闭包的理解

闭包&#xff08;Closure&#xff09;概念&#xff1a;一个函数对周围状态的引用捆绑在一起&#xff0c;内层函数中访问到其外层函数的作用域。简单来说;闭包内层函数引用外层函数的变量&#xff0c;如下图&#xff1a; 外层在使用一个函数包裹住闭包是对变量的保护&#xff0c…

用递归解决冒泡排序问题

冒泡排序是种很简单的排序方式. 如果用循环方式, 通常就是两层循环. 由于两层循环都是与元素个数 N 线性相关, 所以可以简单估算出它的时间复杂度是 O(N2), 通常而言, 这是较糟糕的复杂度. 当然, 这也几乎是所有简单方式的宿命, 想简单就别想效率高! 前面篇章说到递归也是一种循…

【LabView学习篇 - 1】:初始LabView

文章目录 初始LabView前面板和程序框图前面板&#xff08;Front Panel&#xff09;程序框图&#xff08;Block Diagram&#xff09;交互和工作流程 练手小案例&#xff1a;LabView中实现加法操作 初始LabView LabVIEW&#xff08;Laboratory Virtual Instrument Engineering W…

学习笔记——动态路由——OSPF(基础配置)

九、OSPF基础配置 1、OSPF基础配置 <Huawei>sys [Huawei]sys AR1 [AR1]un in en //取消配置回馈信息 [AR1]int g0/0/0 [AR1-GigabitEthernet0/0/0]ip add 10.1.12.1 24 //给ar1路由接口0配置IP地址 # 配置OSPF [AR1-GigabitEthernet0/0/0]ospf 1 router…

Java中的日期时间类详解(Date、DateFormat、Calendar)

1. Date类 1.1 概述 java.util.Date类表示特定的瞬间&#xff0c;精确到毫秒。Date类的构造函数可以把毫秒值转成日期对象。 继续查阅Date类的描述&#xff0c;发现Date拥有多个构造函数&#xff0c;只是部分已经过时&#xff0c;我们重点看以下两个构造函数 1.2 Date类构造…

三界-欢迎来到Web3D+GIS学习天地!

三界-欢迎来到Web3DGIS学习天地&#xff01; 地址&#xff1a;threelab.cn ** 坚持封装自己的引擎已经有三年了&#xff0c;每天都是加班熬夜开发功能&#xff0c;做东西。 虽然这段时间内&#xff0c;我一直在业余时间坚持开发&#xff0c;但实际投入的开发时间并不长&#…

iOS 练习项目 Landmarks (五):UISwitch 切换展示数据

iOS 练习项目 Landmarks &#xff08;五&#xff09;&#xff1a;UISwitch 切换展示数据 iOS 练习项目 Landmarks &#xff08;五&#xff09;&#xff1a;UISwitch 切换展示数据引入 Lookin优化项目结构纯代码方式重写主界面设置详情页的返回按钮的文本Switch切换TableView展示…

通江银耳销售管理系统-计算机毕业设计源码15998

摘要 随着人们健康意识的增强&#xff0c;银耳这种传统的中药食材备受关注。而通江银耳是四川省通江县特产&#xff0c;中国国家地理标志产品。四川省通江县是银耳的发源地&#xff0c;中国银耳之乡&#xff0c;通江银耳因主产于此而得名&#xff0c;以其独到的质厚、肉嫩、易炖…

【linux高级IO(一)】理解五种IO模型

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:Linux从入门到精通⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学更多操作系统知识   &#x1f51d;&#x1f51d; Linux高级IO 1. 前言2. 重谈对…

Chrome插件分享-Stylus

简介 Stylus 是一个调整网页外观的用户样式管理器。它可以让您轻松为许多热门网站安装主题和皮肤。 这是 chrome 应用商店对Stylus插件的介绍&#xff0c;通俗一点讲&#xff0c;就是可以根据不同网站来定制网页的主题和皮肤&#xff0c;甚至可以去广告。 还有一个重点是&#…

高薪程序员必修课-java中 类加载器以及JVM类加载机制

前言 在Java中&#xff0c;类加载器&#xff08;ClassLoader&#xff09;是Java虚拟机&#xff08;JVM&#xff09;的一个重要组成部分&#xff0c;负责将.class文件加载到内存中并生成对应的Class对象。类加载器的主要任务是动态加载Java类&#xff0c;即在程序运行时根据需要…

刚办理的手机号被停用,你可能遇到这些问题了!

很多朋友都会遇到手机号被停用的情况&#xff0c;那么你知道你的手机号为什么会被停用吗&#xff1f;接下来&#xff0c;关于手机号被停用的问题&#xff0c;跟着小编一块来了解一下吧。 ​停机的两种形态&#xff1a; 1、第一个是局方停机&#xff0c;即语音、短信和流量都不…

Amazon SageMaker 机器学习之旅的助推器

一、前言 在当今的数字化时代&#xff0c;人工智能和机器学习已经成为推动社会进步的重要引擎。亚马逊云科技在 2023 re:Invent 全球大会上&#xff0c;宣布推出五项 Amazon SageMaker 新功能&#xff1a; Amazon SageMaker HyperPod 通过为大规模分布式训练提供专用的基础架构…

香橙派AIpro开发板评测:部署yolov5模型实现图像和视频中物体的识别

OrangePi AIpro 作为业界首款基于昇腾深度研发的AI开发板&#xff0c;自发布以来就引起了我的极大关注。其配备的8/20TOPS澎湃算力&#xff0c;堪称目前开发板市场中的顶尖性能&#xff0c;实在令人垂涎三尺。如此强大的板子&#xff0c;当然要亲自体验一番。今天非常荣幸地拿到…

Kubernetes基于helm安装 harbor

Kubernetes基于helm安装 harbor 之前harbor的安装都是借助docker完成一键安装部署&#xff0c;安装完成之后harbor组件均运行到一台机器上面&#xff0c;本文实践harbor在k8s环境中的部署。 准备工作 根据harbor官方要求&#xff1a; Kubernetes cluster 1.20Helm v3.2.0 …

kkFileView一款好用开源免费的文件在线预览项目

在这个数字化时代&#xff0c;我们每天都要跟各种文件打交道&#xff0c;但很多时候&#xff0c;文件预览却成了个头疼的问题&#xff0c;很多时候我们都希望能够在不下载文件的情况下&#xff0c;快速查看文件内容。 今天开源君就来分享一款文件在线预览项目 - kkFileView&am…

编译rust程序,并让它依赖低版本的GLIBC库

目录 方法一&#xff1a;在较低版本的linux系统里面编译更新centos源安装 gcc 方法二&#xff1a;静态编译 在linux环境下编译rust程序&#xff0c;编译好的程序会依赖你当前系统的GLIBC库&#xff0c;也就是说你的程序无法在使用更低版本GLIBC库的linux系统中运行。 查看当前系…

Java案例:完成用户登录

一案例要求&#xff1a; 二代码实现&#xff1a; Ⅰ package 重修;import java.util.Random; import java.util.Scanner;public class first {public static void main(String[] args) {javabean s1new javabean("张世杰","5201314");Scanner scnew Scan…