LCSTS中文数据集解析与处理

LCSTS 数据来源主要是微博爬虫,数据收集的策略很类似pageRank思想。先找50个流行的官方组织用户作为种子然后从种子用户中抓取他们关注的用户,并且将不是大V,且粉丝少于100万的用户过滤掉。然后抓取候选用户的微博内容。最后通过过滤,清洗,提取等工作得到最后的数据集。
来源为哈尔滨工业大学深圳研究生院,是开放的数据集。

一、数据下载

1、根据 http://icrc.hitsz.edu.cn/Article/show/139.html 该网站上的提示发送申请获取数据集。
2、可以在我的网盘下载:https://download.csdn.net/download/u012495579/12050986

二、数据解析处理

下载下来的数据集是三个txt文件,里面的数据格式类似于XML格式的,如下:

<doc id=0>
    <human_label>5</human_label>
    <summary>
        可穿戴技术十大设计原则
    </summary>
    <short_text>
        本文总结了十个可穿戴产品的设计原则,而这些原则,同样也是笔者认为是这个行业最吸引人的地方:1.为人们解决重复性问题;2.从人开始,而不是从机器开始;3.要引起注意,但不要刻意;4.提升用户能力,而不是取代人
    </short_text>
</doc>

我们在做NLP任务的时候通常需要将摘要与原文本分别提取出来,此前尝试了使用XML解析工具进行解析,会出问题。后来采用HTML解析工具BeautifulSoup进行解析可行。下面是完整的解析代码,解析出来的摘要和原文本分别存放在不同文件,每行对应。

from bs4 import BeautifulSoup
import os
from tqdm import tqdm

INPUT = {
    'valid': './LCSTS_ORIGIN/DATA/PART_III.txt',
    'test': './LCSTS_ORIGIN/DATA/PART_II.txt',
    'train': './LCSTS_ORIGIN/DATA/PART_I.txt'
}

OUTPUT_DIR = './dataset/LCSTS_DATA'

for key in INPUT:
    print('start process: {}\n'.format(key))
    src_file = open(os.path.join(OUTPUT_DIR, key + '.src'), 'a+', encoding='utf-8')
    tgt_file = open(os.path.join(OUTPUT_DIR, key + '.tgt'), 'a+', encoding='utf-8')

    input_file_path = INPUT[key]
    with open(input_file_path, encoding='utf-8') as file:
        contents = file.read()
        soup=BeautifulSoup(contents,'html.parser')
        line_count = 0
        max_lines = 2078888	# 此处设置了一个变量控制最大解析多少条数据
        for doc in tqdm(soup.find_all('doc')):
            if line_count > max_lines:
                break
            short_text = doc.find('short_text').get_text()
            summary = doc.find('summary').get_text()
            src_file.write(short_text.strip() + '\n')
            tgt_file.write(summary.strip() + '\n')
            line_count += 1

    src_file.close()
    tgt_file.close()

在代码中采用了一个max_lines = 2078888将最大解析条数设置在了2078888条,主要是原数据解析的时候在208万条左右会出错误,暂时没去分析错误原因,想想208万条也够用了,所以设置了一个限制,到此处就停止解析。
解析后的内容被分别输出到6个文件中:

train.src	(训练集的输入(短文本))
train.tgt	(训练集的输出(摘要))
test.src	(测试集的输入(短文本))
test.tgt	(测试集的输出(摘要))
vaild.src	(验证集的输入(短文本))
vaild.tgt	(验证集的输出(摘要))

之后就可以对解析后文本进行分词等处理操作啦。

### 回答1: LCSTS数据集共分为三个部分:训练集、验证集和测试集。 训练集:训练集是指用于训练模型的数据集LCSTS训练集包含了来自新浪新闻网2013年的短文本和点击量最高的评论,共计2,400,000个样本。这些样本已经通过了数据清洗和去重处理,并且已经按照一定的比例随机划分成多个小批次,方便模型的训练。 验证集:验证集是指用于验证模型性能和调整参数的数据集LCSTS验证集共包含1,200个样本,其中50%为含有讽刺和批评的样本,另外50%为不含有讽刺和批评的样本。这些样本可以帮助我们评估模型的性能和确定模型的最佳参数。 测试集:测试集是指用于测试模型在未知数据上的性能的数据集LCSTS测试集共包含1,500个样本,其中50%为含有讽刺和批评的样本,另外50%为不含有讽刺和批评的样本。这些样本可以用来评估模型在真实场景下的性能和泛化能力。 ### 回答2: lcsts数据集由三部分组成:原始数据集、分词后数据集和摘要数据集。 原始数据集包含了70万对中英文短文本,其中中文短文本长度在10个字至100个字之间,英文短文本长度在5个字至50个字之间。这部分数据集对于机器翻译、文本匹配和摘要生成领域的研究有很大的参考价值。 为了方便处理和使用,lcsts数据集还提供了分词后的数据集。根据中文文本特性,对中文短文本进行分词后,可以得到更加清晰、规范的中文单词序列。这使得NLP领域的处理和分析更为方便和准确。 摘要数据集是原始数据集的精华。通过对原始数据集中英文短文本进行人工筛选、编辑和生成,得到了5.5万对中文摘要和英文摘要。这些中英文摘要是对原始短文本的高度概括和提炼,是进行文本摘要和文本生成研究的重要数据来源。 综上所述,lcsts数据集的三部分都对于自然语言处理领域的研究有着重要的意义和价值,在文本翻译、匹配、摘要和生成等方面都有广泛的应用。
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值