资料详情

基于Python的Scrapy框架(豆瓣)实现的电影推荐系统 课程论文+项目源码及数据

头像

Python

编号:1999

目录


关于电影推荐的自然语言处理 1

语料库的建立 1

       TF-IDF 2

LDA 矩阵 3

LSI 矩阵 5

数据可视化 7

组后呈现结果。 8

关联分析 9

利用 DBSCAN 算法进行观影用户的聚类 10

对 K-means 算法的学习 10

K-means 算法的性质 11

解决非球状簇的聚类问题---DBSCAN 算法的学习 13

K-means 算法和 DBSCAN 算法的比较 14

利用 Sklean 和 pandas 实现 DBSCAN 算法 15

聚类数据的格式 15

对支持向量机的学习 15

VC 维: 17

对各类距离的学习 17

余弦距离: 17

杰卡德相似性度量: 17

杰卡德距离 17

傅里叶变换的学习与应用 18

傅里叶变化简介 18

利用傅里叶变化处理时间序列 19

傅里叶变换的优点 20

对于 Pyhon 语言的学习: 22

Pandas:大规模数据读取的必备数据结构 22

Sklearn 库-最强大的 pyhon 机器学习库 23

函数式编程,一种高效率 Python 编程方法 25

Python 爬虫学习 27

结果截图 27

使用豆瓣 API 获得豆瓣电影数据 29

遇到的问题: 35

总结: 36

参考资料: 36

使用八爪鱼扒取数据学习 36

结果截图: 36

八爪鱼各个功能学习: 37

参考资料: 39

数据处理 40

结果截图: 40

Python2.7 读取中文文本文件的问题: 41

使用 jieba 包对中文进行分词处理: 42

8.4  正则表达式去除标点符号: 42

提取所有的电影名称: 43

去除数据里的换行符: 44

参考资料: 44

10 Pyqt 包使用 Python 编写 GUI 程序 44

环境搭建: 45

学习笔记: 45

参考资料: 45

11 Scrapy 爬虫框架学习 45

环境搭建: 46

遇到的问题: 46

学习笔记: 47

使用 scrapy 基本流程: 48

参考资料: 57


关于电影推荐的自然语言处理

语料库的建立

进行语料处理时我们会遇到的主要问题之一就是如何将大的数据集读入内存当中然后进行相应的处理。

(图中所示的数据集是豆瓣网上 5000 部电影描述信息的分词结果,每一行的数据是一部电影的所有信息。不过从数据大小上看,该数据集属于小的数据集,大的数据集从容量上讲就是以 GB 甚至以 TB 为单位)

1.1.1 Linecache 模块

对于大的数据,python 提供了很多的功能进行读取,其中之一就是 linecache 模块。

Linecache 模块功能非常强大,其中包含了多种函数进行调用 linecache.getlines(filename)可以读取文件中的所有内容。linecache.getline(filename,lineno)可以读取文件中的任意行。另外, 普通的文件读取方式都是类似于:m=open("F:\\Programming…, 在 python 语言当中,这样的文件读取方式是非常不适合大型数据的读取的,因为一旦采用这种形式进行数据的读取,就会导致所读文件整体被写入内存当中,如果文件过大,内存就无法存储,读取一定会失败。不过,linecache 模块的读取是一种类似于迭代器形式的读取,从而可以使得在读取大的文件的时候不会将所有的文件一次性全部读入,导致因为内存不够产生的程序错误。