Project Icon

insuranceqa-corpus-zh

开源中文保险问答语料库 支持机器学习和NLP研究

insuranceqa-corpus-zh是一个开源的中文保险行业问答语料库,包含真实用户问题和专业回答。作为保险领域首个开放QA语料库,它提供问答语料和问答对语料两种格式,支持答案选择、阅读理解等多种机器学习任务。数据集划分为训练集、测试集和验证集,并附有详细使用说明和格式介绍,方便研究人员快速应用。该项目适合进行保险领域自然语言处理和问答系统相关研究。

PyPI PyPI每月下载量 PyPI版本shields.io 许可证

保险行业语料库

该语料库包含从网站保险图书馆收集的问题和答案。

据我们所知,本数据集发布于2017年时,是保险领域首个开放的问答语料库:

  • 该语料库的内容由现实世界的用户提出,高质量的答案由具有深度领域知识的专业人士提供。因此这是一个具有真正价值的语料,而非玩具数据。

  • 在上述论文中,语料库用于答案选择任务。另一方面,这种语料库还有其他可能的用途。例如,通过阅读理解答案,观察学习等自主学习方式,使系统能够最终对未见过的问题给出自己的答案。

  • 数据集分为"问答语料"和"问答对语料"两部分。问答语料是从原始英文数据翻译而来,未经其他处理。问答对语料是基于问答语料,又进行了分词、去标点符号、去停用词和添加标签的处理。因此,"问答对语料"可以直接用于机器学习任务。如果对数据格式或分词效果不满意,可以直接对"问答语料"使用其他方法进行处理,获得适合训练模型的数据。

安装使用

1/3 依赖

  • Python: 2.x, 3.x
  • Pip

2/3 安装脚本包

pip install -U insuranceqa_data

3/3 安装语料包

进入证书商店,购买证书,购买后进入【证书-详情】,点击【复制证书标识】。

然后,设置环境变量 INSQA_DL_LICENSE,比如使用命令行终端:

# Linux / macOS
export INSQA_DL_LICENSE=YOUR_LICENSE
## 例如,如果你的许可证ID是`FOOBAR`,运行`export INSQA_DL_LICENSE=FOOBAR`

# Windows
## 1/2 命令提示符
set INSQA_DL_LICENSE=YOUR_LICENSE
## 2/2 PowerShell
$env:INSQA_DL_LICENSE='YOUR_LICENSE'

最后,执行以下命令,完成数据的下载。

python -c "import insuranceqa_data; insuranceqa_data.download_corpus()"

数据格式说明

数据分为两种:POOL 格式和 PAIR 格式。其中,PAIR 格式更适合用于机器学习训练模型。

加载 POOL 数据

import insuranceqa_data as insuranceqa
train_data = insuranceqa.load_pool_train() # 训练集
test_data = insuranceqa.load_pool_test()   # 测试集
valid_data = insuranceqa.load_pool_valid() # 验证集

# valid_data, test_data 和 train_data 具有相同的属性
for x in train_data:                       # 打印数据
    print('索引 %s 值: %s ++$++ %s ++$++ %s' % \
     (x, train_data[x]['zh'], train_data[x]['en'], train_data[x]['answers'], train_data[x]['negatives']))

answers_data = insuranceqa.load_pool_answers()
for x in answers_data:                     # 答案数据
    print('索引 %s: %s ++$++ %s' % (x, answers_data[x]['zh'], answers_data[x]['en']))

数据设计

-问题答案词汇(英语)
训练12,88921,325107,889
验证2,000335416,931
测试2,000330816,815

每条数据包括问题的中文、英文、答案的正例和答案的负例。答案的正例至少1项,通常在1-5条之间,都是正确答案。答案的负例有200条,负例是根据问题使用检索方式建立的,因此与问题相关但不是正确答案。

{
    "索引": {
        "zh": "中文",
        "en": "英文",
        "domain": "保险种类",
        "answers": [""] # 答案正例列表
        "negatives": [""] # 答案负例列表
    },
    更多 ...
}
  • 训练:corpus/pool/train.json.gz

  • 验证:corpus/pool/valid.json.gz

  • 测试:corpus/pool/test.json.gz

  • 答案:corpus/pool/answers.json 共有27,413个回答,数据格式为json:

{
    "索引": {
        "zh": "中文",
        "en": "英文"
    },
    更多 ...
}

中英文对照文件

问答对
格式 索引 ++$++ 保险种类 ++$++ 中文 ++$++ 英文

corpus/pool/train.txt.gz, corpus/pool/valid.txt.gz, corpus/pool/test.txt.gz.

答案
格式 索引 ++$++ 中文 ++$++ 英文

corpus/pool/answers.txt.gz

语料库使用gzip进行压缩以减小体积,可以使用zmore、zless、zcat、zgrep等命令访问数据。

zmore pool/test.txt.gz

加载 PAIR 数据

使用"问答数据"还需要做很多工作才能进入机器学习模型,比如分词、去停用词、去标点符号、添加标签标记。因此,在"问答数据"的基础上,还可以进行进一步处理,但在分词等任务中,可以借助不同的分词工具,这对模型训练有影响。为了使数据能快速可用,insuranceqa-corpus-zh提供了一个使用HanLP进行分词、去标点、去停用词和添加标签的数据集,这个数据集完全基于"问答数据"。

加载数据

import insuranceqa_data as insuranceqa
train_data = insuranceqa.load_pairs_train()
test_data = insuranceqa.load_pairs_test()
valid_data = insuranceqa.load_pairs_valid()

# valid_data、test_data 和 train_data 具有相同的属性
for x in test_data:
    print('索引 %s 值: %s ++$++ %s ++$++ %s' % \
     (x['qid'], x['question'], x['utterance'], x['label']))

vocab_data = insuranceqa.load_pairs_vocab() vocab_data['word2id']['UNKNOWN'] vocab_data['id2word'][0] vocab_data['tf'] vocab_data['total']


#### 数据设计

```vocab_data```包含```word2id```(字典,从单词到ID)、```id2word```(字典,从ID到单词)、```tf```(字典,词频统计)和```total```(单词总数)。其中,未登录词的标识为```UNKNOWN```,未登录词的ID为0。

```train_data```、```test_data```和```valid_data```的数据格式相同。```qid```是问题ID,```question```是问题,```utterance```是回答,```label```如果是```[1,0]```表示回答是正确答案,```[0,1]```表示回答不是正确答案,因此```utterance```包含了正例和负例的数据。每个问题包含10个负例和1个正例。

```train_data```包含12,889个问题,141,779条数据,正例:负例 = 1:10
```test_data```包含2,000个问题,22,000条数据,正例:负例 = 1:10
```valid_data```包含2,000个问题,22,000条数据,正例:负例 = 1:10

句子长度:

验证集问题最大长度:31,平均长度:5(最大) 验证集回答最大长度:878(最大),平均长度:165(最大) 测试集问题最大长度:33,平均长度:5 测试集回答最大长度:878,平均长度:161 训练集问题最大长度:42(最大),平均长度:5 训练集回答最大长度:878,平均长度:162 词汇表大小:24997


## 机器学习项目

可将本语料库与以下开源代码配合使用

[deep-qa-1](https://github.com/chatopera/insuranceqa-corpus-zh/tree/release/deep_qa_1):基准模型

[InsuranceQA TensorFlow](https://github.com/l11x0m7/InsuranceQA_zh):使用TensorFlow的CNN模型

[n-grams-get-started](https://github.com/Samurais/n-grams-get-started):N元模型

[word2vec-get-started](https://github.com/Samurais/word2vec-get-started):词向量模型

## 声明

声明1:[insuranceqa-corpus-zh](https://github.com/chatopera/insuranceqa-corpus-zh)

本数据集通过翻译[insuranceQA](https://github.com/shuzi/insuranceQA)生成,代码发布遵循[Chunsong Public License, version 1.0](https://www.cskefu.com/licenses/v1.html)协议。数据仅限研究用途,如在任何媒体、期刊、杂志或博客等发布内容时,必须注明引用和地址。

InsuranceQA Corpus, Chatopera Inc., https://github.com/chatopera/insuranceqa-corpus-zh, 07 27, 2017


任何基于[insuranceqa-corpus](https://github.com/chatopera/insuranceqa-corpus-zh)衍生的数据也需要开放并声明与"声明1"和"声明2"一致的内容。

声明2:[insuranceQA](https://github.com/shuzi/insuranceQA)

此数据集仅供研究目的使用。如果您使用这些数据发表任何内容,请引用我们的论文:[Applying Deep Learning to Answer Selection: A Study and An Open Task](https://arxiv.org/abs/1508.01585)。Minwei Feng, Bing Xiang, Michael R. Glass, Lidan Wang, Bowen Zhou @ 2015
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号