海量词库构建(1):概览

这学期要做软件工程大作业,我选的课题是“海量词库构建”。前前后后总时间至少两周吧。不过还是学到了挺多新知识,也踩过许多坑。从中我也意识到了,写好注释的重要性。不然以后回头看自己写的代码,又要花时间去理解代码,效率低下!还有,做好工作日记,方能更好掌握项目进度,以及总结好学过的知识。我写下这个系列的文章,也算一个总结吧。虽然总结来得有点晚,可能一些学过的知识和踩过的坑忘了。(哦对了,虽然说是软工大作业,但是我感觉自己做的跟软工关系不大啊,哈哈!)

项目主要有四个模块:基础词库构建,语料爬取,分词分类并构建词库,监控系统。

  1. 基础词库的构建:这里选择的是具有类别标签的各词库。有了这个带标签的基础词库,才能解决后面的新词分类问题。这里,我选择了搜狗词库和清华大学中文词库。搜狗词库,感觉分类的质量不高,而且有很多重复的词,所以我手动从中选择了几个分类质量好点的类别并去重,插入数据库。清华大学中文词库质量还是蛮高的,直接全部插入数据库了。

  2. 语料爬取: 爬的是笔趣阁小说网和新华网。爬了 40w+ 小说章节(3G),17w+ 新闻(1G),共计 4G 语料。(题外话:感觉语料来源不够丰富,合理的话应该多加两三个语料来源)

  3. 分词分类并构建词库:分词调用结巴分词。至于分类,首先用 gensim 里的 Word2vec 训练语料的词向量,再用一个简单的 kNN 进行分类。额,感觉只是简单地调包而已。哈哈。

  4. 监控系统:监控系统用的 Grafana + Mysql,我之前写的文章里已经有介绍过了。不过呢,那时候用的是 Docker 里面的 Grafana。里面的 Grafana 好像有小 bug,不能安装插件,所以我直接不用 Docker 新装了一个 Grafana。监控系统主要监控的是语料爬取情况和词库构建情况。

后面我会详细讲讲各模块中的知识点,以及一些踩过的坑。最后就上个监控系统的图吧。Grafana 真神器!!!

海量词库构建(1):概览_第1张图片

你可能感兴趣的:(海量词库构建(1):概览)