机器学习保险行业问答开放数据集:1.语料介绍
2017-08-10 10:17
375 查看
insuranceqa-corpus-zh
保险行业语料库Welcome
该语料库包含从网站Insurance Library 收集的问题和答案。据我们所知,这是保险领域首个开放的QA语料库:
该语料库的内容由现实世界的用户提出,高质量的答案由具有深度领域知识的专业人士提供。 所以这是一个具有真正价值的语料,而不是玩具。
在上述论文中,语料库用于答复选择任务。 另一方面,这种语料库的其他用法也是可能的。 例如,通过阅读理解答案,观察学习等自主学习,使系统能够最终拿出自己的看不见的问题的答案。
数据集分为两个部分“问答语料”和“问答对语料”。问答语料是从原始英文数据翻译过来,未经其他处理的。问答对语料是基于问答语料,又做了分词和去标去停,添加label。所以,”问答对语料”可以直接对接机器学习任务。如果对于数据格式不满意或者对分词效果不满意,可以直接对”问答语料”使用其他方法进行处理,获得可以用于训练模型的数据。
欢迎任何进一步增加此数据集的想法。
快速开始
在Python环境中,使用pip安装
兼容py2, py3pip install --upgrade insuranceqa_data
问答语料
- | 问题 | 答案 | 词汇(英语) |
---|---|---|---|
训练 | 12,889 | 21,325 | 107,889 |
验证 | 2,000 | 3354 | 16,931 |
测试 | 2,000 | 3308 | 16,815 |
{ "INDEX": { "zh": "中文", "en": "英文", "domain": "保险种类", "answers": [""] # 答案正例列表 "negatives": [""] # 答案负例列表 }, more ... }
训练:
corpus/pool/train.json.gz
验证:
corpus/pool/valid.json.gz
测试:
corpus/pool/test.json.gz
答案:
corpus/pool/answers.json
一共有 27,413 个回答,数据格式为
json:
{ "INDEX": { "zh": "中文", "en": "英文" }, more ... }
中英文对照文件
问答对
格式 INDEX ++$++ 保险种类 ++$++ 中文 ++$++ 英文
corpus/pool/train.txt.gz,
corpus/pool/valid.txt.gz,
corpus/pool/test.txt.gz.
答案
格式 INDEX ++$++ 中文 ++$++ 英文
corpus/pool/answers.txt.gz
语料库使用gzip进行压缩以减小体积,可以使用zmore, zless, zcat, zgrep等命令访问数据。
zmore pool/test.txt.gz
加载数据
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 and train_data share the same properties for x in train_data: print('index %s value: %s ++$++ %s ++$++ %s' % \ (x, d[x]['zh'], d[x]['en'], d[x]['answers'], d[x]['negatives'])) answers_data = insuranceqa.load_pool_answers() for x in answers_data: print('index %s: %s ++$++ %s' % (x, d[x]['zh'], d[x]['en']))
问答对语料
使用”问答语料”,还需要做很多工作才能进入机器学习的模型,比如分词,去停用词,去标点符号,添加label标记。所以,在”问答语料”的基础上,还可以继续处理,但是在分词等任务中,可以借助不同分词工具,这点对于模型训练而言是有影响的。为了使数据能快速可用,insuranceqa-corpus-zh提供了一个使用HanLP分词和去标,去停,添加label的数据集,这个数据集完全是基于”问答语料”。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 and train_data share the same properties for x in test_data: print('index %s value: %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(dict, 从word到id),
id2word(dict, 从id到word),
tf(dict, 词频统计)和
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条,数据
141779条,正例:负例 = 1:10
test_data含有问题2,000条,数据
22000条,正例:负例 = 1:10
valid_data含有问题2,000条,数据
22000条,正例:负例 = 1:10
句子长度:
max len of valid question : 31, average: 5(max) max len of valid utterance: 878(max), average: 165(max) max len of test question : 33, average: 5 max len of test utterance: 878, average: 161 max len of train question : 42(max), average: 5 max len of train utterance: 878, average: 162 vocab size: 24997
可将本语料库和以下开源码配合使用
DeepQA2InsuranceQA TensorFlow
Chatbot Retrieval
声明
声明1 : insuranceqa-corpus-zh本数据集使用翻译 insuranceQA而生成,代码发布证书 GPL 3.0。数据仅限于研究用途,如果在发布的任何媒体、期刊、杂志或博客等内容时,必须注明引用和地址。
InsuranceQA Corpus, Hai Liang Wang, https://github.com/Samurais/insuranceqa-corpus-zh, 07 27, 2017
任何基于insuranceqa-corpus衍生的数据也需要开放并需要声明和“声明1”和“声明2”一致的内容。
声明2 : insuranceQA
此数据集仅作为研究目的提供。如果您使用这些数据发表任何内容,请引用我们的论文:Applying Deep Learning to Answer Selection: A Study and An Open Task。Minwei Feng, Bing Xiang, Michael R. Glass, Lidan Wang, Bowen Zhou @ 2015
相关文章推荐
- 机器学习保险行业问答开放数据集: 1. 语料介绍
- 机器学习保险行业问答开放数据集: 2. 使用案例
- 机器学习保险行业问答开放数据集: 2. 使用案例
- 机器学习开放数据集网站
- 关于保险的问答数据集
- 【Scikit-Learn 中文文档】使用 scikit-learn 介绍机器学习 |
- Realitymining 数据集简单介绍与使用
- 统计分词/无字典分词学习(1):介绍和语料准备
- 优达(Udacity)-机器学习基础-数据集与问题(安然数据集)
- 机器学习-介绍
- AppCan移动平台=开放开源降门槛,专注深挖做行业
- 微信官方对九大接口作了简单的介绍,看看微信开放这些接口有什么意义
- 不看,出险后可别后悔:最精华的保险介绍
- 机器学习几种常见模型的介绍
- 机器学习很有趣(全球最简单的对机器学习的介绍)
- 程序员转型AI,这里有最全的机器学习介绍+应用实例
- 第1章:阿里云机器学习实践之路 / 第2节:机器学习实验工具 PAI 介绍
- 基于python的高性能实时并行机器学习框架之Ray介绍
- coursera《机器学习》吴恩达-week1-01 课程介绍
- 机器学习(三)——决策树(decision tree)算法介绍