数据概览



'''

pool data are translated Chinese data with Google API from original English data

'''

POOL_TEST_DATA = os.path.join(curdir, 'pool', 'test.json.gz')

POOL_TRAIN_DATA = os.path.join(curdir, 'pool', 'train.json.gz')

POOL_VALID_DATA = os.path.join(curdir, 'pool', 'valid.json.gz')

POOL_ANS_DATA = os.path.join(curdir, 'pool', 'answers.json.gz')

'''

pair data are segmented and labeled after pool data

'''

PAIR_TEST_DATA = os.path.join(curdir, 'pairs','iqa.test.json.gz')

PAIR_VALID_DATA = os.path.join(curdir, 'pairs','iqa.valid.json.gz')

PAIR_TRAIN_DATA = os.path.join(curdir, 'pairs','iqa.train.json.gz')

PAIR_VOCAB_DATA = os.path.join(curdir, 'pairs', 'iqa.vocab.json.gz')

注意:作者给的下载的代码里面,逻辑优点不太一致。我这里做了一次拷贝操作,看起来数据冗余。

下载语料

pip install insuranceqa_data

我下载之后的目录为:~anaconda3/lib/python3.7/site-packages/insuranceqa_data/

数据的加载

(1)可以使用代码

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

(2)也可以手动查看文件

查看词典文件:

vocab_data = insuranceqa.load_pairs_vocab()

或者

import json

data = json.load(open('~/anaconda3/lib/python3.7/site-packages/insuranceqa_data/iqa.vocab.json'))
print(data.keys()) # 词频统计
tf = data['tf']
print(tf) id2word = data['id2word']
print(id2word) word2id = data['word2id']
print(word2id) # 单词总数
total = data['total']
print(total) # 未登录词的标识为UNKNOWN,未登录词的id为0。

查看训练数据

import json

data = json.load(open('~/anaconda3/lib/python3.7/site-packages/insuranceqa_data/pairs/train.json'))
print(data.keys())
# dict_keys(['0', '1', '2', '3', '4', '5'... ele = data['9']
print(ele)
#{'zh': '汽车保险是否预付?', 'en': 'Is Car Insurance Prepaid?', 'domain': 'auto-insurance', 'answers': ['20900'], 'negatives': ['9205', '8237', '25854', '22830', '12148', '997', '501', '20044', '2314', '22527', '7128', '1601', '21267', '16601', '9571', '19628', '14469', '23956', '9427', '22387', '738', '1', '5190', '8195', '14318', '11879', '21030', '10957', '22231', '24492', '12153', '21880', '23859', '19981', '10646', '9140', '20189', '4191', '6647', '18815', '6274', '20874', '7107', '9746', '11822', '13733', '19645', '15981', '24842', '8913', '10691', '25538', '5279', '19014', '26418', '8214', '23728', '25211', '18892', '17753', '25460', '17614', '1667', '26374', '24488', '3627', '13523', '900', '13183', '17585', '18986', '22756', '4270', '11475', '26948', '13960', '18940', '6367', '7431', '14788', '18019', '21438', '22612', '5852', '24435', '14610', '27254', '2211', '3299', '3845', '4016', '4764', '5995', '6310', '9049', '12617', '13287', '14288', '14869', '20064', '25295', '26138', '4380', '21594', '26283', '208', '3789', '3934', '6125', '9520', '9766', '16968', '22882', '12698', '20543', '20391', '5974', '5475', '6077', '8949', '11547', '15002', '15071', '19286', '20301', '23292', '25685', '3176', '13885', '20913', '10883', '8649', '24349', '11324', '12507', '12514', '14284', '14410', '25670', '5260', '6264', '9125', '9596', '20590', '22729', '17815', '25618', '4318', '8153', '9967', '15544', '27256', '9088', '5614', '11911', '12307', '25467', '5119', '6399', '8606', '11722', '17244', '17664', '21659', '23644', '27354', '11302', '12141', '17939', '18431', '19187', '1982', '3810', '6486', '9294', '10393', '17006', '936', '3252', '5756', '12657', '13413', '18435', '21526', '25068', '2352', '2306', '3691', '4868', '4896', '5347', '6396', '7035', '7642', '8263', '8500', '8719', '8974', '9539', '11243']} answers_id = ele['answers']
print(answers_id) # 20900
#['20900'] answers = json.load(open('~/anaconda3/lib/python3.7/site-packages/insuranceqa_data/pool/answers.json'))
print(answers.keys())
print(answers[answers_id[0]]) #一个正确答案,多个错误答案
#{'zh': '\xa0是的,汽车保险通常是提前支付的。一般不少于三十天。每个承运人对新覆盖的初始支付金额设定自己的要求。大多数运营商允许客户每月,每季度,半年或每年支付一次。如果您全额支付半年或每年的保险费,您还可能会收到您的房价的折扣(这仅由承运人自行决定)。', 'en': ' Yes, automobile insurance is typically paid in advance. Normally no less than thirty days at a time. Each carrier sets their own requirements as to the initial payment amount for new coverage. Most carriers allow clients to pay monthly, quarterly, semi-annually, or annually. If you pay your premium in full for semi-annual or annual you may also receive a discount on your rate ( this is solely at the discretion of the carrier ).'} print(answers['9205'])
print(answers['8237'])

学习笔记(15)- 保险行业的问答语料 insuranceqa_data的更多相关文章

  1. Ext.Net学习笔记15:Ext.Net GridPanel 汇总(Summary)用法

    Ext.Net学习笔记15:Ext.Net GridPanel 汇总(Summary)用法 Summary的用法和Group一样简单,分为两步: 启用Summary功能 在Feature标签内,添加如 ...

  2. SQL反模式学习笔记15 分组

    目标:查询得到每组的max(或者min等其他聚合函数)值,并且得到这个行的其他字段 反模式:引用非分组列 单值规则:跟在Select之后的选择列表中的每一列,对于每个分组来说都必须返回且仅返回一直值. ...

  3. 并发编程学习笔记(15)----Executor框架的使用

    Executor执行已提交的 Runnable 任务的对象.此接口提供一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节.调度等)分离开来的方法.通常使用 Executor 而不是显式地创建 ...

  4. [原创]java WEB学习笔记15:域对象的属性操作(pageContext,request,session,application) 及 请求的重定向和转发

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  5. Beego 学习笔记15:布局页面

    页面布局 1>     一个html页面由:head部分,body部分,内部css,内部js,外联css,外联的js这几部分组成.因此,一个布局文件也就需要针对这些进行拆分. 2>     ...

  6. Adaptive AUTOSAR 学习笔记 15 - 持久化 Persistency

    本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf.作者:Zijian/TENG 原文地 ...

  7. [学习笔记]15个QA让你快速入门51单片机开发

    一.C语言相关 Q1:sbit与sfr代表是什么?有什么作用? Q2:#define OSC_FREQ  22118400L这句宏命令里的“L”是什么意思? Q3:我粘贴了别人的代码,怎么发现没有un ...

  8. 【设计模式】学习笔记15:代理模式(Proxy Pattern)

    本文出自   http://blog.csdn.net/shuangde800 本笔记内容: 1. JAVA远程代理调用(RMI) 2. 代理模式 走进代理模式 在上一篇的状态模式中,我们实现了一个糖 ...

  9. Linux下汇编语言学习笔记15 ---

    这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...

随机推荐

  1. Ubuntu18.04安装Vim-plug与YCM

    由于个人强迫症的原因,之前的ycm是通过vundle来管理的,这次想更新一下ycm发现问题太多,于是就重新装了个Ubuntu虚拟机,用vim-plug来进行管理ycm及其他插件. 首先要换一下Ubun ...

  2. iframe内外的操作

    因为iframe涉及到跨域问题,有时候有的比较多,这不今天遇到了一个问题,处在iframe里头的js要操作iframe元素,查找百度,是可以实现的: 用jQuery在IFRAME里取得父窗口的某个元素 ...

  3. Servlet映射细节

    Servlet的映射细节: 1):一个Servlet程序(Web组件),可以配置多个<url-pattern>,表示一个Servlet有多个资源名称. <servlet-mappin ...

  4. 用for循环创建对象

    以下代码Demo: public class TestDemo { public static void main(String[] args) { //以创建5个student为例 int coun ...

  5. P1579

    AC: #include <bits/stdc++.h> using namespace std; #define rep(i, a, b) for(int i = a; i < b ...

  6. 小白学 Python 爬虫(28):自动化测试框架 Selenium 从入门到放弃(下)

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  7. Java日志介绍(1)-java.util.logging.Logger

    java.util.logging.Logger是JDK自带的日志工具,其简单实现了日志的功能,不是很完善,所以在实际应用中使用的比较少.本文直接用代码演示其使用方法,文中所使用到的软件版本:Java ...

  8. vscode安装过的插件

    1.VSCode的Vue插件Vetur设置,alt+shift+f格式化 对应配置 今天看到的文章安装插件可以参考: https://blog.csdn.net/maixiaochai/article ...

  9. Linux 目录结构与目录操作

    目录结构 Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录"/",然后再次目录下再创建其他目录 在Linux系统中,一切皆文件 常见目录作用 / : 所有 ...

  10. redis是单进程数据库,多用户排队对统一数据进行访问,不存在并发访问生产的线程安全问题

    redis是单进程数据库,多用户排队对统一数据进行访问,不存在并发访问生产的线程安全问题. oracle是多进程数据库,存在并发访问的问题,必须事务加锁等方式进行处理.