当前位置: 首页 > news >正文

微信网站开发文档网站顶部广告图片

微信网站开发文档,网站顶部广告图片,山东省城乡与住房建设厅网站,微网站开发用什么技术专栏规划: https://qibin.blog.csdn.net/article/details/137728228 本章将介绍该系列文章中使用的数据集#xff0c;并且编写预处理代码#xff0c;处理成咱们需要的格式。 一、数据集介绍 咱们使用的数据集名称是chinese-poetry#xff0c;是一个在github上开源的中文诗…专栏规划: https://qibin.blog.csdn.net/article/details/137728228 本章将介绍该系列文章中使用的数据集并且编写预处理代码处理成咱们需要的格式。 一、数据集介绍 咱们使用的数据集名称是chinese-poetry是一个在github上开源的中文诗词数据集根据仓库中readme.md中的介绍该数据集是最全的中华古典文集数据库包含 5.5 万首唐诗、26 万首宋诗、2.1 万首宋词和其他古典文集。诗人包括唐宋两朝近 1.4 万古诗人和两宋时期 1.5 千古词人。 数据集的下载地址https://github.com/chinese-poetry/chinese-poetry?tabreadme-ov-file大家可以点击Code按钮选择Download ZIP将该数据集下载到本地如下图 当然作者收集数据也不易大家可以顺手点一下star鼓励一下作者如图 如果你按照上面的步骤把数据集下载到你本地了解压后你可以看到如下图所示的目录结构 作者按照不同诗词类型进行了分类并且在每个分类下提供了1个到多个的json文件json文件里按照结构化数据组织了每一个诗词的信息如下图 二、数据集预处理 上面咱们详细介绍了chinese-poetry数据集的下载方式和作者组织的结构下面我们将提取每个诗词的标题和内容作为我们需要的部分并聚合到一个文件中以方便我们后续训练模型使用。 首先我们需要把作者提供的诗词类目整理到一个数组中方便我们后续进行目录的变量 classes [五代诗词, 元曲, 全唐诗, 四书五经, 宋词, 幽梦影, 御定全唐詩, 曹操诗集, 楚辞, 水墨唐诗,纳兰性德, 蒙学, 论语, 诗经]然后我们可以遍历该数组拼接一个目录遍历目录中中的文件再进行文件处理 for cls in classes:dir base_dir clsfiles os.listdir(dir)for f in files:f f{dir}/{f}if os.path.isdir(f):if error in f:continuefor ff in os.listdir(f):process_json(f{f}/{ff})else:process_json(f)上面代码中我们遍历每个类别的目录后会列出该类别中所有的文件文件如果是一个目录则继续遍历这个目录因为作者提供的目录结构会存在二级目录的情况。 最后拿到每个json文件后会调用process_json()函数处理对应的json文件。下面我们开始介绍process_json()函数。 process_json()函数会对上面代码中拿到的每个json文件进行处理并且从json文件中提取我们需要的信息诗词的标题和内容重新组织结构写入到一个新文件中该函数还会根据一个简单的策略划分出训练集和测试集(训练集用来训练我们的模型测试集用来在训练过程中测试模型的性能)。整体代码如下 def process_json(file):if not file.endswith(.json):returnwith open(file, r) as f:json_content f.read()array json.loads(json_content)if type(array) ! list:returnif len(array) 100:train_array array[:-1]test_array array[-1:]else:train_array arraytest_array Nonefor item in train_array:if title not in item.keys() or paragraphs not in item.keys():continuewrite_file(item, dst_train_file)if test_array is not None:for item in test_array:if title not in item.keys() or paragraphs not in item.keys():continuewrite_file(item, dst_test_file)在代码中首先会打开该json文件并读取json文件中的内容读到内容后通过json.loads()函数将它解码成在python中可以识别的数据结构。 接下来我们根据该分类下诗词的数据决定是否要划分出测试集策略很简单如果个数大于100我们就把最后一个作为测试集的一部分当然这个策略可以根据你的需求进行调整。 最后我们从json中拿到title和paragraphs属性通过一个write_file()函数写到我们的新文件中。 write_file()函数的实现也很简单作用就是拿到title和paragraphs组织好结构写入到一个新文件中我们预处理后的文件不会像原数据集那样提供多个文件而是全部写到同一个文件中所以此时就得考虑一个问题所有的诗词在一个文件中怎么标识出一首诗结束了呢办法很简单我们在没首诗结束的时候添加一个|endoftext|特殊标识该标识很重要因为在后面我们训练模型的时候该标识也会根据此标识学习一首诗到哪结束了(不需要结束咱们模型就无止境的输出了)。 def write_file(item, dst_file):global error_counttitle item[title]paragraphs item[paragraphs]content f\n{title}for p in paragraphs:content f{content}\n{p}content converter.convert(content)if in content:print(f{content}----)error_count 1returncontent content |endoftext|dst_file.write(content)上面代码中处理前面我们介绍的部分存在两个特殊的地方 ... content converter.convert(content) ... if in content第一个的作用是将繁体中文转换成简体字因为原数据集中存在大量的繁体字显然我们不想让咱们的模型生成的诗词是繁体字形式所以这里我选择将繁体字转换成简体字这里借助了一个python的转换库opencc实现大家可以通过pip3 install opencc-python-reimplemented进行安装该库的使用方法如下 import opencc # 繁转简 converter opencc.OpenCC(t2s) content converter.convert(content)第二个特殊的地方就是我们代码中有一个这是因为通过上述代码转换成简体字的时候会有一些字转换错误所以我们这里直接将存在转换错误情况的诗过滤掉当然这种情况不会很多大概几十首诗词对于咱们几十万首诗词的数据集来说都是毛毛雨。 好了上面就是咱们数据预处理的全部过程最终你会得到一个如下结构的train.txt和test.txt分别代表咱们前面提到过的训练集和测试集。 最后我把全部代码整理出来方便大家可以复制到本地直接运行 import os, json import openccbase_dir chinese-poetry-master/ classes [五代诗词, 元曲, 全唐诗, 四书五经, 宋词, 幽梦影, 御定全唐詩, 曹操诗集, 楚辞, 水墨唐诗,纳兰性德, 蒙学, 论语, 诗经]dst_train_file open(./train.txt, w) dst_test_file open(./test.txt, w)converter opencc.OpenCC(t2s) error_count 0def write_file(item, dst_file):global error_counttitle item[title]paragraphs item[paragraphs]content f\n{title}for p in paragraphs:content f{content}\n{p}content converter.convert(content)if in content:print(f{content}----)error_count 1returncontent content |endoftext|dst_file.write(content)def process_json(file):if not file.endswith(.json):returnwith open(file, r) as f:json_content f.read()array json.loads(json_content)if type(array) ! list:returnif len(array) 100:train_array array[:-1]test_array array[-1:]else:train_array arraytest_array Nonefor item in train_array:if title not in item.keys() or paragraphs not in item.keys():continuewrite_file(item, dst_train_file)if test_array is not None:for item in test_array:if title not in item.keys() or paragraphs not in item.keys():continuewrite_file(item, dst_test_file)for cls in classes:dir base_dir clsfiles os.listdir(dir)for f in files:f f{dir}/{f}if os.path.isdir(f):if error in f:continuefor ff in os.listdir(f):process_json(f{f}/{ff})else:process_json(f)dst_train_file.close() dst_test_file.close()dst_train_file open(./train.txt, r) dst_test_file open(./test.txt, r)train_count 0 test_count 0for line in dst_train_file:if |endoftext| in line:train_count 1for line in dst_test_file:if |endoftext| in line:test_count 1print(ftrain_count: {train_count}, test_count: {test_count}, error_count: {error_count})下一篇我们将对pytorch框架做一个简单的入门介绍
http://www.w-s-a.com/news/53457/

相关文章:

  • 网站方案报价软文什么意思
  • 电子商城网站如何建设上海公司车牌价格
  • 丽江网站设计公司专业公司网站设计企业
  • iis怎么建设网站特色产品推广方案
  • 道路建设网站专题品牌网站建设特色大蝌蚪
  • 网站开发组合 所有组合如何做com的网站
  • 电商网站怎么做的Wordpress 报表的插件
  • 纹理网站推荐买了两台服务器可以做网站吗
  • 机关公文写作网站南宁互联网推广
  • 五指山网站开发价格免费申请网站域名
  • 帝国音乐网站怎么做数据表电脑优化软件
  • 做国外网站收款怎么收建筑人才招聘网站
  • 毕设做桌面端还是网站sns社交网站 建设
  • 建设一个网站需要注意哪些内容wordpress 进销存
  • 沈阳市建设局网站sem优化师是什么意思
  • 餐饮vi设计公司网站排名优化方法讲解
  • 无线昆明官方网站可以做书的网站
  • 信誉最好的20个网投网站凡科网站建设之后怎么删除
  • 天津网站开发技术广州网站优化公司排名
  • 养老做增减的网站医院网站怎么做优化排名
  • 企业网站的推广方法有哪些上海猎头公司前十名
  • 电商网站建设建议免费下载app
  • 网站搭建设计是什么意思百度地图放到网站上
  • 东莞网站建设市场分析淘宝网站框架
  • 新网站多久被百度收录网站空间单位
  • 2017常用的网站昆明网站代理
  • 成都海鸥手表网站安阳网站建设策划
  • 做好的网站怎么发布做网站应该做哪方面的
  • 可以找厂家的网站品牌创意型网站开发
  • 有没有做牛羊角的网站电商网站报价