当一个网站或系统用户量大之后,都会有猜你喜欢货自动推,那么它如何为您推荐的呢?好了,阅读这篇文章后,您将能够知道专有技术。更好的是,您将能够自己构建推荐系统。
作为网络创建者,每个python开发人员都必须了解一些 事情,例如pandas和numpy库。本文中使用的初学者程序甚至无法与行业标准相提并论。因此,它仅用作系统介绍。我们假设读者具有Python的先前经验。
一、什么是推荐系统?
推荐系统是一种基本计算,旨在通过检测数据集中的相关性为客户提供最相关的信息。该算法评估元素,并向用户显示接近其偏好的高度项目。
淘宝和京东是此类推荐系统的最佳示例。每当您在淘宝上选择商品时,它就会自动开始向您显示您可能想要的其他商品。京东及其为您推荐电影的选项也是如此。
有三种构建推荐系统的方法:
1、基于人气的推荐人系统
2、基于内容的推荐人系统
3、基于相似度的推荐人系统
二、代码编写
在此基本推荐器系统中,我们使用的是movielens。这是一个基于相似度的推荐系统。如果愿意,可以使用PyCharm或Skit-Learn,了解 为什么pycharm对每个python程序员都变得重要。因此,进入第一步,导入numPy和pandas是我们的首要任务。
import pandas as pd import numpy as np import warnings warnings.filterwarnings('ignore')随后,我们在数据集中使用pandas read_csv()实用程序。数据集与选项卡分开,因此 sep 参数在 t中传递 。然后,我们转到名称参数。
df = pd.read_csv('u.data', sep='\t', names=['user_id','item_id','rating','titmestamp'])让我们搜索数据头以查看我们所关注的数据。
df.head()如果我们能看到电影的标题而不是仅仅处理ID,那将很容易。加载电影标题并合并数据集;
movie_titles = pd.read_csv('Movie_Titles') movie_titles.head()由于item_id的列都是相同的,因此可以将这些数据集合并到此部分中。
df = pd.merge(df, movie_titles, on='item_id') df.head()让我们看一下每一列的表示形式:
我们可以使用description或info命令获得对数据集的简短描述。
df.describe()我们可以说平均分数是3.52,最高分数是5。
ratings = pd.DataFrame(df.groupby('title')['rating'].mean()) ratings.head()
点击查看剩余70%
网友评论0