8.最佳电影聚类分析
将使用电影简介作为原始数据,将总共 100 部流行电影进行聚类分析。IMDb 也称为互联网电影数据库(www.imdb.com),是一个在线的数据库,它提供有关电影、电子游戏和电视节目的大量详细信息。它聚集了电影和电视节目的评论以及简介,并有几个精选影片清单。原始数据地址 https://www.imdb.com/list/ls055592025/ 上获取名为 “100部最佳影片(中级清单),可在 https://github.com/brandomr/document_cluster 处进行下载。
解析并清洗了数据,并作为原始数据中缺少简介的几部电影添加了影片介绍。这些简介和电影描述来自维基百科。数据解析完成后,将它们存储在数据框中,并将其保存至 movie_data.csv 文件中:
将在聚类分析中加载并使用该文件中的数据,首先,需要加载并查看电影数据的内容,如下代码所示:
结果:
可以看到以及有了电影标题和响应的内容简介,将其加载到数据框中,然后存储在变量了。前面的实处也给出了一个电影样本及其部分摘要。核心思路是使用这些电影简介作为原始输入来聚类电影并完成分组。将从这些简介中提取特征,并使用无监督的学习算法将它们进行聚类。电影标题则是用于表征数据,当想要可视化并展示聚类及其统计信息时,这些电影标题将会很有用。聚类算法的数据输入是从电影简介中提取的特征。在介绍每个聚类算法之前,将执行前面类似的模范化和特征提取过程:
如出现如下错误:
请修改 normalization.py 文件内容为:
结果:
在规范化之后的文本中保留了文本表示,并提取了基于 TF-IDF 的一元分词