从0开始做垂直O2O个性化推荐-以58到家美甲为例

2023-11-30 16:08

本文主要是介绍从0开始做垂直O2O个性化推荐-以58到家美甲为例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从0开始做垂直O2O个性化推荐

上次以58转转为例,介绍了如何从0开始如何做互联网推荐产品(回复“推荐”阅读),58转转的宝贝为闲置物品,品类多种多样,要做统一的宝贝画像比较难,而分类别做宝贝画像成本又非常高,所以更多的是进行用户画像、分类预测推荐、协同过滤推荐等个性化推荐。

有些同学反馈,他们的产品是垂直类的O2O产品,分类单一,可以简单的实现宝贝画像,这类垂直O2O产品怎么从零开始做个性化推荐呢?这是本文要讨论的问题

一、58到家美甲简介

58到家有三大自营业务“家政”“美甲”和“速运” ,美甲能够实现“足不出户,享品质服务,做美丽女人”,目前提供上门美甲、修复与卸甲、美睫、化妆等服务。

http://bj.daojia.com/liren/

二、从0开始设计垂直O2O推荐框架

(1)列表页推荐:用户既然进入到了美甲,成交意愿是非常强烈的,首页的推荐至关重要

(2)宝贝详情页推荐:买了还买,看了还看类的关联宝贝推荐

(3)下单成功页推荐:既然下单了某个甲样,可能会喜欢相近的甲样哟

(4)召回推荐:在用户退出系统后,通过RFM模型做优惠券推送或者消息推送做客户挽留与召回

RFM模型:根据用户最近一次购买时间Recency,最近一段时间的购买频率Frequency,最近一段时间的购买金额Monetary,加权得到的一个代表用户成交意愿的一个分值。

三、甲样列表页推荐详细流程

(1)用户点击进入甲样列表页

(2)画像用户的消费能力

(3)抽取购买、收藏、喜欢、浏览的历史数据

(4)根据历史数据,对所有甲样进行打分,综合一些产品策略,推荐出首屏的4个甲样,例如:

(5)如果用户下单,以被下单的相似甲样做推荐

(6)如果用户跳出,可以根据信用评级、消费等级做优惠券召回推荐

四、与业务紧密结合的策略规则

推荐系统并不是一个单纯的算法问题,而是一个与产品、工程架构都相关的综合性问题,不同的业务会有不同的产品策略,这些是在做推荐时需要考虑的,以美甲为例,需要考虑:

(1)排序前2名要推荐最符合用户消费能力的甲样(例如“价格小于150”)

(2)被推荐的4个甲样要覆盖尽可能多的消费区间(例如“两个甲样价格小于150,两个甲样价格大于150”)

(3)被推荐的4个甲样要覆盖最火的产品、旧产品、新产品(例如“1个爆品,2个旧加油,1个新甲样”)

(4)垂直相邻的甲样,颜色不同(为了视觉体验)

(5)水平相邻的甲样,颜色不同(原因同上)

(6)垂直相邻的甲样,款式不同(为了视觉体验,以及产品覆盖度、受众度)

(7)水平相邻的甲样,款式不同(原因同上)

(8)…

五、如何利用甲样画像与用户购买、收藏、喜欢、浏览的历史数据对所有甲样进行打分?

【宝贝画像】

垂直O2O的相对比较容易做宝贝画像,宝贝品类比较单一(甲样),宝贝的品种也比较少(几千几万种甲样),熟悉业务的人可以对宝贝进行画像(不需要复杂的机器学习方法),以甲样为例,可以抽象出:

款式

颜色

风格

场景

图案

其他

等多个核心属性

【核心属性赋值,标签化】

宝贝画像完毕之后,对于每一个核心属性,可以进行赋值,实施标签化

款式:纯色,法式,渐变,彩绘,贴饰

颜色:红色,粉色,蓝色,白色

风格:简约,甜美,复古,可爱

场景:派对,旅行,约会,晚宴,夜店

图案:卡通,小碎花,动物,桃心,五角星

【抽取用户历史行为】

抽取购买、收藏、喜欢、浏览的历史行为数据,得到一些甲样ID集合set<bb-id>

【查询所有历史行为甲样ID的画像属性,对标签进行频率统计】

用户U历史行为某买了甲样1:bb-id1,收藏了甲样2:bb-id2

从库中查询出所有甲样的详细属性

bb-id1:彩绘,红色,可爱,夜店,桃心

bb-id2:彩绘,粉色,可爱,夜店,桃心

对标签进行统计

款式:{彩绘:2}

颜色:{红色:1,粉色:1}

风格:{可爱:2}

场景:{夜店:2}

图案:{桃心:2}

【根据标签统计,量化对标签的喜爱程度】

例如,标签量化打分公式可以为:score=同类标签出现频率

那么,对于“款式”这个属性,依据上述统计,各标签的打分是:

纯色=0分,法式=0分,渐变=0分,彩绘=1分,晕染=0分,贴饰=0分(假设只有5种款式)

同理,对于“颜色”这个属性,依据上述统计,各标签的打分是:

红色=0.5分,粉色=0.5分,蓝色=0分,白色=0分(假设只有4种颜色)

这个打分是一个简单举例,实际上的打分公式会复杂很多(例如购买与收藏贡献的分值不一样)

【根据上述量化标签,量化用户对每个甲样的喜爱程度】

例如,对于一个甲样X{纯色,红色,简约,夜店,卡通},可以计算出用户对它的喜爱分值为

socre-X = 0(纯色) + 0.5(红色) + 0(简约) + 1(夜店) + 0(卡通) = 1.5分

这个打分是一个简单举例,实际上打分公式会复杂很多(例如各个属性的权重是不一样的)

【对所有甲样计算分值,排序】

【从高到底进行甲样推荐】

推荐的过程中注意,4款甲样要符合第四个大步骤中提到的产品策略(要覆盖各个价格范围,相邻颜色与样式不同等)

【个性化推荐完成】

好了,暂时先到这里,上面的思路绝对是能落地的,希望58到家美甲的推荐,对其他刚开始做垂直O2O互联网产品的同学有帮助。

注:本文是58到家推荐负责人@王洪权 做58到家美甲推荐技术交流时,@58沈剑 做的纪要,内容“略”有修改。

==【完】==

回【拍卖】互联网广告之拍卖理论

回【广告】一分钟读懂互联网广告竞价策略

回【kkkk】3分钟懂K-means聚类算法(附源码)

回【回归】3分钟懂线性回归预测算法(附源码)

回【宝马】如何在微信刷出宝马广告

回【红包】抢红包统计学(技术贴,知道为啥自己越抢越穷了吧)

回【推荐】从0开始做互联网推荐

回大于10的整数,返回随机好文(猜猜怎么实现的)

每个字都是作者码的,帮忙转发一下嘛。

这篇关于从0开始做垂直O2O个性化推荐-以58到家美甲为例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/437669

相关文章

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

查看Oracle数据库中UNDO表空间的使用情况(最新推荐)

《查看Oracle数据库中UNDO表空间的使用情况(最新推荐)》Oracle数据库中查看UNDO表空间使用情况的4种方法:DBA_TABLESPACES和DBA_DATA_FILES提供基本信息,V$... 目录1. 通过 DBjavascriptA_TABLESPACES 和 DBA_DATA_FILES

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

OpenManus本地部署实战亲测有效完全免费(最新推荐)

《OpenManus本地部署实战亲测有效完全免费(最新推荐)》文章介绍了如何在本地部署OpenManus大语言模型,包括环境搭建、LLM编程接口配置和测试步骤,本文给大家讲解的非常详细,感兴趣的朋友一... 目录1.概况2.环境搭建2.1安装miniconda或者anaconda2.2 LLM编程接口配置2

Redis 内存淘汰策略深度解析(最新推荐)

《Redis内存淘汰策略深度解析(最新推荐)》本文详细探讨了Redis的内存淘汰策略、实现原理、适用场景及最佳实践,介绍了八种内存淘汰策略,包括noeviction、LRU、LFU、TTL、Rand... 目录一、 内存淘汰策略概述二、内存淘汰策略详解2.1 ​noeviction(不淘汰)​2.2 ​LR

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx

前端 CSS 动态设置样式::class、:style 等技巧(推荐)

《前端CSS动态设置样式::class、:style等技巧(推荐)》:本文主要介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外,还可以结合计算属性来生成复杂的类名或样式对象,详细内容请阅读本文,希望能对你有所帮助...

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

Java中实现订单超时自动取消功能(最新推荐)

《Java中实现订单超时自动取消功能(最新推荐)》本文介绍了Java中实现订单超时自动取消功能的几种方法,包括定时任务、JDK延迟队列、Redis过期监听、Redisson分布式延迟队列、Rocket... 目录1、定时任务2、JDK延迟队列 DelayQueue(1)定义实现Delayed接口的实体类 (

shell脚本自动删除30天以前的文件(最新推荐)

《shell脚本自动删除30天以前的文件(最新推荐)》该文章介绍了如何使用Shell脚本自动删除指定目录下30天以前的文件,并通过crontab设置定时任务,此外,还提供了如何使用Shell脚本删除E... 目录shell脚本自动删除30天以前的文件linux按照日期定时删除elasticsearch索引s