书蕴——基于书评的人工智能推荐系统

前言

计算机设计大赛在即,和冬瑜、承意组队参加人工智能组,报的题目的:书蕴——基于书评的智能书籍推荐系统。 主体上是去做一个web系统,系统的核心功能是书籍收藏与书籍推荐。根据用户收藏书籍的书评(划重点了),来为用户推荐书籍

创新点

  • 基于书籍标签协同过滤算法
  • 基于word2vec方法的自然语言处理
  • 标签抽取(这个名词还没想好)

思路

  1. 数据获取
  2. 数据文本预处理
  3. 训练word2vec模型
  4. 使用word2vec模型迭代获取标签
  5. 协同过滤算法对标签处理,实现推荐
  6. web系统

数据获取篇

主要是冬瑜写的python爬虫,来源是豆瓣读书,目前效率较为低下,正在尽力找到有效的方案

数据文本预处理

  • 去除html标签与换行
  • 去除停用词
  • 分词
  • 保存为文本

具体内容记录在另一篇博客:[书蕴笔记-0]文本预处理 ## 训练word2vec模型 主要使用python的gensim包下的word2vec训练模型,模型以每本书的所有书评为主体。 之后可能考虑用一类书的书评整体训练模型。

基于 Gensim 的 Word2Vec 实践 Deep learning with word2vec > 以下参数解释来自博客:word2vec词向量训练及gensim的使用 > 参数解释: - sg=1是skip-gram算法,对低频词敏感;默认sg=0为CBOW算法。 - size是输出词向量的维数,值太小会导致词映射因为冲突而影响结果,值太大则会耗内存并使算法计算变慢,一般值取为100到200之间。 - window是句子中当前词与目标词之间的最大距离,3表示在目标词前看3-b个词,后面看b个词(b在0-3之间随机)。 - min_count是对词进行过滤,频率小于min-count的单词则会被忽视,默认值为5。 - negative和sample可根据训练结果进行微调,sample表示更高频率的词被随机下采样到所设置的阈值,默认值为1e-3。 - hs=1表示层级softmax将会被使用,默认hs=0且negative不为0,则负采样将会被选择使用。 - workers控制训练的并行,此参数只有在安装了Cpython后才有效,否则只能使用单核。

具体内容记录在另一篇博客:(占坑,等下写) [书蕴笔记-1]word2vec模型训练

使用word2vec模型迭代获取标签

通过模型vocabulary词频最高的5个词查询其距离最近的5个词,迭代100词,得到标签集(数字仅实验参考,具体会重新调整)

具体内容记录在另一篇博客:(占坑,等下写) [书蕴笔记-2]使用word2vec模型迭代获取标签 ## 协同过滤 矩阵线性运算对标签处理,实现推荐 [书蕴笔记-3]使用中文维基百科语料库的word2vec模型计算书籍距离

web系统

写个从前端到后台的web

写完了,但是没什么好说的就不说了。


欢迎分享

码字不易,请我喝杯咖啡呗?