东方耀AI技术分享

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 15897|回复: 29
打印 上一主题 下一主题

[视频教程] 04、项目开发的一般流程与数据预处理_笔记与视频

[复制链接]

1365

主题

1856

帖子

1万

积分

管理员

Rank: 10Rank: 10Rank: 10

积分
14437
QQ
跳转到指定楼层
楼主
发表于 2019-3-22 09:46:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式


04、项目开发的一般流程与数据预处理_笔记与视频

课程配套的数据cnews_data.zip下载【回复本帖可见】:
游客,如果您要查看本帖隐藏内容请回复



高清视频下载地址【回复本帖可见】:
游客,如果您要查看本帖隐藏内容请回复


  1. # -*- coding: utf-8 -*-
  2. __author__ = u'东方耀 微信:dfy_88888'
  3. __date__ = '2019/3/21 20:28'
  4. __product__ = 'PyCharm'
  5. __filename__ = '1_pre_process'


  6. import sys
  7. import os
  8. import jieba

  9. # input file
  10. train_file = './cnews_data/cnews.train.txt'
  11. test_file = './cnews_data/cnews.test.txt'
  12. val_file = './cnews_data/cnews.val.txt'


  13. # output file 分词后的
  14. seg_train_file = './cnews_data/cnews.train.seg.txt'
  15. seg_test_file = './cnews_data/cnews.test.seg.txt'
  16. seg_val_file = './cnews_data/cnews.val.seg.txt'


  17. # 词表文件
  18. vocab_file = './cnews_data/cnews.vocab.txt'

  19. # 类别文件
  20. category_file = './cnews_data/cnews.category.txt'

  21. with open(train_file, 'r', encoding='utf-8') as f:
  22.     lines = f.readlines()

  23. # label, content = lines[10550].strip('\r\n').split('\t')
  24. # print(label)
  25. # print(content)

  26. # word_iter = jieba.cut(content)
  27. # print('/'.join(word_iter))


  28. def generate_seg_file(input_file, output_seg_file):
  29.     with open(input_file, 'r', encoding='utf-8') as f:
  30.         lines = f.readlines()
  31.     with open(output_seg_file, 'w', encoding='utf-8') as f:
  32.         for line in lines:
  33.             label, content = line.strip('\r\n').split('\t')
  34.             word_iter = jieba.cut(content)
  35.             word_content = ''
  36.             for word in word_iter:
  37.                 word = word.strip(' ')
  38.                 if word != '':
  39.                     word_content += word + ' '
  40.             out_line = '%s\t%s\n' % (label, word_content.strip(' '))
  41.             f.write(out_line)


  42. # generate_seg_file(val_file, seg_val_file)
  43. # generate_seg_file(train_file, seg_train_file)
  44. # generate_seg_file(test_file, seg_test_file)


  45. def generate_vocab_file(input_seg_file, output_vocab_file):
  46.     with open(input_seg_file, 'r', encoding='utf-8') as f:
  47.         lines = f.readlines()
  48.     # dict {key, value}  word:frequency
  49.     word_dict = {}
  50.     for line in lines:
  51.         label, content = line.strip('\r\n').split('\t')
  52.         for word in content.split(' '):
  53.             word_dict.setdefault(word, 0)
  54.             word_dict[word] += 1
  55.     # sorted_word_dict [(word, frequency), (), ()]
  56.     sorted_word_dict = sorted(word_dict.items(), key=lambda d: d[1], reverse=True)
  57.     with open(output_vocab_file, 'w', encoding='utf-8') as f:
  58.         f.write('<UNK>\t999999999999\n')
  59.         for item in sorted_word_dict:
  60.             f.write('%s\t%s\n' % (item[0], item[1]))


  61. # generate_vocab_file(seg_train_file, vocab_file)


  62. def generate_category_file(input_file, output_category_file):
  63.     with open(input_file, 'r', encoding='utf-8') as f:
  64.         lines = f.readlines()
  65.     category_dict = {}
  66.     for line in lines:
  67.         label, content = line.strip('\r\n').split('\t')
  68.         category_dict.setdefault(label, 0)
  69.         category_dict[label] += 1
  70.     category_number = len(category_dict)
  71.     with open(output_category_file, 'w', encoding='utf-8') as f:
  72.         for category in category_dict.keys():
  73.             out_line = '%s\n' % category
  74.             print('%s\t%d\n' % (category, category_dict[category]))
  75.             f.write(out_line)


  76. generate_category_file(seg_train_file, category_file)










复制代码







04、项目开发的一般流程与数据预处理01.png (231.38 KB, 下载次数: 386)

04、项目开发的一般流程与数据预处理01.png

04、项目开发的一般流程与数据预处理02.png (92.26 KB, 下载次数: 394)

04、项目开发的一般流程与数据预处理02.png
让天下人人学会人工智能!人工智能的前景一片大好!
回复

使用道具 举报

0

主题

137

帖子

604

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
604
沙发
发表于 2019-3-22 14:07:47 | 只看该作者
4
回复

使用道具 举报

0

主题

243

帖子

796

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
796
板凳
发表于 2019-3-22 20:57:51 | 只看该作者
发生的范德萨范德萨
回复

使用道具 举报

0

主题

28

帖子

62

积分

注册会员

Rank: 2

积分
62
地板
发表于 2019-4-11 09:09:03 | 只看该作者
grzt grzt grzt grzt
回复

使用道具 举报

0

主题

319

帖子

724

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
724
5#
发表于 2019-5-15 09:31:01 | 只看该作者
04、项目开发的一般流程与数据预处理_笔记与视频
回复

使用道具 举报

0

主题

205

帖子

460

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
460
6#
发表于 2019-5-26 18:04:15 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

0

主题

364

帖子

864

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
864
7#
发表于 2019-5-29 15:08:43 | 只看该作者
1111
回复

使用道具 举报

0

主题

155

帖子

324

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
324
8#
发表于 2019-6-16 21:00:02 | 只看该作者
1
回复

使用道具 举报

0

主题

29

帖子

90

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
90
9#
发表于 2019-7-12 13:15:29 | 只看该作者
1111
回复

使用道具 举报

0

主题

266

帖子

586

积分

2W人工智能培训

Rank: 10Rank: 10Rank: 10

积分
586
10#
发表于 2019-7-17 13:56:22 | 只看该作者
1111
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|人工智能工程师的摇篮 ( 湘ICP备2020019608号-1 )

GMT+8, 2024-5-3 02:23 , Processed in 0.194479 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表