开源php ugc 社区,如何设计UGC社区的内容展示规则?
本文针对刚起步与用户量不大的 UGC 内容社区,分享了两种基于内容热度的推荐展示规则,同时结合了目前几大 UGC 内容社区案例进行展示。
首先科普一下社交产品、社区产品、UGC、PGC 的含义:
社交产品:以沉淀用户关系链为主,体现在:如何让用户之间建立关系、保持关系、升华关系;
社区产品:以沉淀内容为主,体现在:如何让用户生产、消费内容,如何为用户呈现内容;
UGC:指用户原创内容平台,如抖音、知乎、Instagram、小红书、IN;
PGC:指专业化、规模化生产内容的平台,如爱奇艺、优酷、早期的腾讯新闻。
UGC 内容社区信息流
以上分别为 Instagram、小红书、即刻的内容信息流,分别代表了 UGC 内容社区三类典型的布局方式:纯图片信息流、图文缩略信息流、图文详情信息流,在数据层面它们都有一些相似特征:
每次下拉刷新内容会变化;
内容几乎不会重复出现;
内容的点赞、转发、评论等数据都相对较高。
以上方 App 内容信息流为示例,分享 2 个基于内容热度的推荐展示规则,适用于刚起步与用户量不大的 UGC 内容社区,抛砖引玉,仅供学习与交流。
热度随机曝光规则
方案目的:
热度高的内容应得到高曝光;
尽可能多的向用户曝光内容;
应用场景:
发现、推荐、探索类信息流。
上图是小红书的内容详情页,包含有点赞、收藏、评论、转发这些基本数据,所以我们需要拿到这些数据设计规则并进行排序计算,如果想把规则做得更精准,则可考虑把页面停留时间、页面跳出率等埋点数据纳入计算。
热度排序
首先判断:点赞数高低,更高的靠前;
如果点赞数相等:判断收藏数,更高的靠前;
如果收藏数相等:判断转发数,更高的靠前;
如果转发数相等:判断评论数,更高的靠前;
如果评论数相等:判断发布时间,发布更早的靠前。
排序规则的判断指标、先后顺序,都可以根据实际业务调整。
数据过滤
在所有作品中,取出发布时间在 5 天内的作品,挑入备选池;
对备选池里所有的数据,使用热度排序规则进行排序计算;
取出排序后数据中排名前 20% 的作品,挑入曝光池;
如果排名前 20% 的作品数量,不足曝光池限定的最小数量如 400,则应把另外 80% 的作品,按排名依次填充到曝光池中,直到满足最小数量要求。
如果不设定曝光池的最小数量限制,则可能导致计算后的数据不足,内容无法饱和填充。
经过以上步骤,就过滤出了社区中一段时间内热度较高的作品数据,其中5 天,20%,400这 3 个参数,可根据实际业务调整。
刷新机制
方式 1:每 x 小时执行一次规则;
方式 2:监控新作品增量,当增量达到 n 时,执行一次规则。
数据返回
每次请求的数据,都随机返回;
当分页数据被请求到末尾后,继续从数据头部开始返回,保持数据循环展示。
保证每位用户的每次信息流下拉操作,看到的都是随机数据,提高了曝光池中每一份作品的曝光几率。
如果有进一步精细化曝光的需求,则可以考虑对热度不同的作品分权重曝光,如在小红书信息流的示例图中,有 8155 点赞量的作品,也有 30 点赞量的作品。
方案 2:历史热度排名规则
方案目的:根据热度展示内容与排名;
应用场景:热门类信息流。
热度排序
首先判断:点赞数高低,更高的靠前;
如果点赞数相等:判断收藏数,更高的靠前;
如果收藏数相等:判断转发数,更高的靠前;
如果转发数相等:判断评论数,更高的靠前;
如果评论数相等:判断发布时间,发布更早的靠前。
数据过滤
对社区中所有作品按热度排序规则进行排序计算,且要排除已进入热门池的作品;
取出排名前 x 名的作品,放入热门池的子列表中;
子列表再放入父列表中,按照子列表的创建时间倒序排列;
如果当前计算中发现无可用作品,则本次计算直接跳过,等待下一次计算;
如果整个平台的可用作品数量 < x,则有多少就展示多少内容。
刷新机制
方式 1:每 x 小时执行一次规则;
方式 2:监控新作品增量,当增量达到 n 时,执行一次规则。
该方案在目前的移动互联网中,实际应用的场景已不多,但在少数 web 端的产品中如:虎嗅、36 氪的信息流中,还能看到影子。
在目前的信息流展示策略中,最受认可的实属头条系的兴趣推荐算法,但对于普通企业来讲建设成本极高,有兴趣的朋友可以自行了解一下。
以上,抛砖引玉,欢迎指教,期待更多交流与学习。
本文由 @Ethan 原创发布于人人都是产品经理。未经许可,禁止转载。
题图来自 Unsplash,基于 CC0 协议
开源php ugc 社区,如何设计UGC社区的内容展示规则?相关推荐
- 智慧社区如何设计 智慧社区解决方案
智慧社区如何设计 智慧社区解决方案 智慧社区这个概念相信有不少朋友曾听说过,对于智慧社区的设计方面一直是许多人的苦恼.今天小编就汇总了一份智慧社区的解决方案,希望能给予各位一定的灵感. 1.1概述和规 ...
- 产品经理基本功:UGC社区后台设计
原创: Kevin改变世界的点滴 Kevin改变世界的点滴 昨天 社区产品在C端产品中其着孵化产品业务和承载用户内容集合的模块.因为负责的产品中涵盖社区模块,如何有效的避免社区出现:脏乱差.小广告.无 ...
- mysql 源码设计,java+mysql大学网络社区平台设计+源代码
摘要如今,信息管理与信息系统的网络平台上,更多的都是一些静态信息的介绍,缺乏老师与老师之间, 老师与同学之间信息的交流的功能. 因此, 需要建立一个从 Web 1.0转换到 Web 2.0 的, 能够 ...
- 2020 中国开源年会暨阿帕奇中国路演 社区合作伙伴征集令
点击上方"开源社"关注我们 COSCon'20 & Apache Roadshow - China *本图由开源社设计组叶凯设计 2020 中国开源年会暨阿帕奇中国路演 将 ...
- 开源项目贡献者_如何认识您的开源项目贡献者并发展您的社区
开源项目贡献者 by David Herron 大卫·赫伦(David Herron) 如何认识您的开源项目贡献者并发展您的社区 (How to recognize your open source ...
- 开源激荡 30 年:从免费社区到价值数十亿美元公司
开源起始于边缘活动,活跃于社区,30 年来一路进化,无数的企业在开源项目的基础上拔地而起,今天,开源商业已经迎来了最好的发展机会. 演讲 | Peter Levine,A16Z Partner Edi ...
- 集智全球开源 聚合中国力量 Tungsten Fabric中文社区成立大会暨社区第一次全员大会成功举行
开源的种子正在世界范围内生根发芽,在中国的发展尤其快速.11月7日,美丽的黄海之滨见证了中国开源云网络的历史性一页--Tungsten Fabric中文社区正式启动,并召开第一次全员大会,43家创始会 ...
- java毕业生设计在线多媒体学习社区的设计与实现计算机源码+系统+mysql+调试部署+lw
java毕业生设计在线多媒体学习社区的设计与实现计算机源码+系统+mysql+调试部署+lw java毕业生设计在线多媒体学习社区的设计与实现计算机源码+系统+mysql+调试部署+lw 本源码技术栈 ...
- Java毕业设计_基于HTML5的摄影社区的设计与实现
基于HTML5的摄影社区的设计与实现 基于HTML5的摄影社区的设计与实现mysql数据库创建语句 基于HTML5的摄影社区的设计与实现oracle数据库创建语句 基于HTML5的摄影社区的设计与实现 ...
最新文章
- java spark persist,hadoop – 我的sparkDF.persist(DISK_ONLY)数据存储在哪里?
- [原]走过2007,我的2008
- python之SSH远程登录
- setTimeout和setInterval方法
- 使用eclipse 进行 Cesium 开发
- c++构造函数用法一
- 企业微信推送消息延迟_iPhone手机微信推送消息总是延迟怎么办?
- 遨游3.0 RC 版公布
- (2.1)DDL增强功能-数据类型、同义词、分区表
- 电脑更新重启后黑屏_手机黑屏了,重启后万事大吉?那可就错了!
- 基于JAVA+SpringMVC+Mybatis+MYSQL的高校教学质量评价管理系统
- 《Oracle从入门到精通》读书笔记第四章 SQL语言基础之二
- 如何设置Mac允许远程电脑SSH登录?
- java 注册表 下载_Java修改windows注册表(完全修改)
- ruby rake学习
- 电脑浏览器主页面被恶意劫持无法修改的解决方法
- office2013来了
- 【运筹学】对偶理论 : 互补松弛定理应用 2 ( 互补松弛定理求最优解思路 ) ★★
- js关闭当前页面/关闭当前窗口/移动端 代码
- python24小时12小时转换_python将时间从12小时转换为24小时格式