使用Turicreate三行代码构建推荐系统

本文介绍如何利用Apple的开源机器学习框架Turi Create,只需三行代码即可构建电影推荐系统。通过导入数据,划分训练集与测试集,构建协同过滤模型,并与测试集对比评估,轻松实现推荐系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Apple开源机器学习框架Turi Create简化了自定义机器学习模型的开发。可以轻易地实现图像识别、聚类分析与推荐系统等多种机器学习需求。本文介绍了使用Turicreate快速构建电影推荐系统的一个实例。

记得当初我参加18年泰迪杯时,为了实现推荐系统竟手写了800行代码。但现在看来,利用TuriCreate,基于物品的协同过滤模型(item-based CF)可以在三行代码内轻易完成。

注:本文数据集使用movieLens 1M

Step 0. 导入数据:

import os
import pandas as pd
os.chdir('/Users/zhbink/Desktop/ml-100k/')

data_cols = ['user_id','movie_id','rating','timestamp']
ratings = pd.read_csv('u.data', sep='\t', names=data_cols, encoding='latin-1')

这里user_id是每一个参与对电影进行评分的用户编号,movie_id是该用户评价的电影编号,rating是该用户对该电影的打分。
在这里插入图片描述

Step 1. 使用Turicreate构建推荐系统

要构建一个协同过滤模型,大体上可以分成3步:

  1. 将数据切分为训练集与测试集。
  2. 构建协同过滤模型并得到训练集的推荐结果。
  3. 将推荐结果与测试集相对比进行打分。

使用Turicreate,使以上三步均可仅由一行代码完成。

1. 划分训练集与测试集
对于本数据集,人工划分训练集与测试集是有难度的。因为不可以对总体进行随机划分(不然可能造成某一用户数据全部在训练集或全部在测试集中的情况),而应对于每一个用户进行划分。
利用turicreate.recommender.util.random_split_by_user可以做到轻易地做到这一点。

import turicreate as tc
train_data = tc.SFrame(ratings)  # 数据需要转化为SFrame格式
train, test = tc.recommender.util<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值