本文写给想了解AI如何助力推荐系统的朋友,并对一些常见的推荐方式进行梳理。 我们以往都强调需求,随着过往移动互联网时代已经极大丰富了各种需求,您还能找到哪种大的需求场景没被满足的吗?几乎没有这样的需求空白机会。 所以新年里产品唯一的机会点是做到跟竞品有差异化,怎么能做到差异化呢?即要比竞品更懂用户,给用户更精准的推荐,就是挖掘数据应用数据来推荐。 本文写给想了解AI如何助力推荐系统的朋友,并对一些常见的推荐方式进行梳理。 4种主流的推荐方式 市场迄今为止,对推荐系统的分类并没有统一的标准,但根据对淘宝产品的了解其推荐方法基本包括如下几种:基于内容的推荐方式、协同过滤的方式、基于知识推荐、组合推荐。 下面对4种推荐方式进行介绍。 第一种:基于内容的推荐方式 基于内容的推荐(Content-Based Recommendation)系统是建立在用户以前的行为模式基础上的。以前的行为就是标签值,推荐算法将产品分解为一系列标签,并根据用户对产品的行为(例如:购买、浏览)将用户属性也描述为一系列标签。 如下图: 该方式下的推荐系统为用户提供包括用户记录中显示偏好的一些信息,产品推荐并不是将用户本身的喜好作为基础,而是以产品本身的信息作为基础的。比如说:如果一个用户对智能音箱比较感兴趣,过去常常搜索和智能音箱相关的信息,那么该自动推荐系统会将与智能音箱相关的其他音箱直接推荐给他。 用户的偏好通常作为一组文本标签,用于表示用户喜好类型的个人资料。 淘宝搜索框就是一种应用于表现和研究用户喜好的技术。这种方法可以将未分级的产品优先推荐给具有独特兴趣的用户。并且以列表的功能将推荐的商品展现出来,还会对推荐的结果进行解释,这样会无形中增加用户对系统推荐商品的信心。 第二种:协同过滤的推荐方式 协同过滤推荐(Collaborative Filtering Recommendation)系统是根据其他用户的选择然后将一个商品推荐给用户。但是商品的内容不会被考虑到,也就是说,该方式下通过人对那个商品的判断来进行过滤。 对协同过滤最直白的说法是就是用户不知道怎么选择,大家来帮他选择。 协同过滤对应的算法分类是基于用户的协同过滤算法和基于物品的协同过滤算法,基于用户的协同过滤算法的关键是找到相同偏好的用户。 第三种:基于知识的推荐方式 基于知识的推荐方式(Knowledge-Based Recommendation)可以被看做是一种推理(inference)技术。 它并不是建立在用户偏好和需要的基础上进行的推荐,而是通过对特定领域定义规则的基础上来进行基于规则以及实例的推理(case-based reasoning)。 例如:通过对饭店的菜品方式的效用知识的推理,将饭店推荐给顾客。我们将某个对象如何去满足某一特定用户的知识称为效用知识(function knowledge),所以它能够解释推荐和需求的关系,可以被用于推荐系统。效用知识必须以机器可读的方式存在(ontology 本体知识库)于推荐系统中。 基于知识的推荐模型如下图: 第四种:组合推荐的方式 组合推荐(Hybrid Recommendation)有一个重要原则,即它要求通过组合后能弥补和避免各种推荐技术所存在的缺点。 目前应用最多的是协同过滤推荐和内容推荐的组合,一般,尽管推荐组合的方法有很多种,然而不同的应用场景需要不同的组合思路。 笔者根据淘宝的经验具体的对产品运营或者算法人员给出的组合思路大致的可以分为如下 3 类: 后融合:将大于等于两种以上的推荐系统各自所产生的推荐结果进行融合。比如:通过使用基于协同过滤的方法以及内容的方法而得到推荐列表,对列表的结果进行融合从而决定最后所推荐的对象。 中融合:将一种推荐方法作为框架,并融合另外的一种推荐方法。比如将协同过滤的方法作为框架,融合基于内容的方法;或者将基于内容的方法作为框架,融合协同过滤的方法。 前融合:直接对各种推荐方法进行融合,如将基于协同过滤和基于内容的方法整合到一个统一的框架模型下。 今天,新的年度里,写满了「数据」的字样。单纯流量的价值开始褪色,化作更加不言自明的基础设施,而如何发掘数据价值、增强数据应用,则成为了产品运营的主色调——这也成为了产品运营人员要想当团队的领导角色必须懂数据挖掘的一般知识流程。 另外比竞争对手更懂用户需要数据挖掘,在做推荐系统之前,也需要数据挖掘,下面我们介绍数据挖掘方面产品运营应该懂的点。 数据挖掘的过程是AI应用的过程。因为数据挖掘的过程是知识发现的过程,而知识发现是人工智能的一种典型应用。 数据挖掘的方法: 数据挖掘的方法也就是从数据库或其他数额特别巨大的海量信息储存中提取出用户感兴趣的文本标签。 产品运营人员不妨偶尔从技术角度方面来看一下数据挖掘,因为它结合了采集数据和登记分类数据,接着,类规则的知识将从大量数据中被生成。 数据挖掘领域包括许多技术,如:机器学习、统计、模式识别、模型库、数据库、可视化等技术。产品运营懂这些技术的话一方面能够从更多角度设计出差异化竞品的产品方案,另外一方面能够更方便的跟算法、代码、模型、数据仓库工程师等技术人员进行交流。 通常情况下,数据挖掘的步骤如下图所示: 产品运营人员从知道数据挖掘的步骤流程以后,您在跟进产品进度和实现数据提供的业务支撑上能够做到更加有信心使产品差异化竞品! 上面讲了数据挖掘的步骤,那么我们在从数据库特点的角度出发,帮我们的产品运营人员介绍 8 个需要在数据挖掘过程中完成的任务。 任务一:产品运营定义好分类(Classification) 分类是最常见的数据挖掘任务。 这个任务由两部分组成: 第一部分是研究新近对象的特点; 第二部分是,将它分配给一组预定义的类。 与此同时,分类有两个主要的特点: 特点一要求,要有一个定义明确的类; 特点二是,要有一个包括分类例子的训练集。 另外,还要构建某种模型,用于将未分类的数据进行分类。 第一步先将那些已经分好类的训练集从数据中选出来,然后在该训练集上建立分类模型,该模型的建立需要运用数据挖掘分类的技术,对那些还未进行分类的数据进行分类。 例如: 通常将信用卡申请者,分类为高、中、低风险, 然后用户会被分配到预先定义好的用户分片中。 注意:类的个数是预先定义好的并且是确定的。 任务二:出估值(Estimation) 估值是一种用来处理具有连续性预估结果的任务。 采用估值的目的是,基于一些输入的数据,为一些连续的、未知的变量,提供一个值。比如收入、信用卡节余、身高等等。 估值和分类比较接近,所不同的是,分类是对离散型变量的输出的描述,但是估值却用于对连续值的输出的处理;分类的类别数目是确定的,估值的量是不确定的。 比如: 通过购买行为,来评估一个家庭有多少个孩子; 通过购买行为,来评估一个家庭的收入有多少; 估计 real estate 的价值。 任务三:给出预测(Prediction) 通常情况下,预测是通过估值或分类起作用的,即通过估值或分类得出模型,然后该模型将被应用于对未知变量来进行预测。 预测的目的是对未来未知变量进行预测,然而这种预测必须通过时间来进行验证,也就是说必须等待一定的时间后,才能够得出预测的准确性是多少。 任务四:相关性分组或关联分析(Affinity grouping or association rules) 关联的任务是用来确定哪些产品应该一起处理或者哪些事情将一起发生。 例如:假设某客户在逛盒马鲜生时,当该客户在购买澳龙时,与此同时也会购买多宝鱼,即 A => B(关联规则)。 除此之外,我们产品运营人员应该懂,它对产品运营还有更深的用途,它可以应用于鉴别交叉销售机会和设计有吸引力的产品和服务的包装或组合。 例如:下次可以计算出澳龙与波士顿龙虾的文本相似度,然后当波士顿龙虾库存较多时可以组合波士顿龙虾与多宝鱼组合起来卖。 任务五:序列模式(Sequential pattern) 序列化模式检测事务之间的模式,在事务数据库中,一段时间内一组项目是跟在另一组项目的后面而存在的。 例如逛盒马鲜生的时候,用户在购买澳龙后,隔一段时间,会购买牛排。这有点类似于关联,但是,主要的不同点是序列模式展现出了不同产品之间在特定时间段内的重要关系, 知道序列模式后的产品运营可以合理安排供应链资源。 任务六:聚类(Clustering) 聚类可以对一个多样化的群体进行分割,从而形成一些更具有相似性的群体。 聚集通过对记录进行分组,从而将那些相似的记录分割在一个聚集里。这些记录之所以能够被组织在一起,是因为他们本身就存在某种相似性。聚集同分类的不同点是聚集不会对预先定义好的类进行依赖,同时也不需要训练集。 任务七:优化(Optimization) 优化指的是优化APP展现的设计和在线销售的设计。 一般来说,这需要花很多的时间来考虑最优的解决方案。遗传算法(GA)常常是用于处理优化技术的,如用于寻找解决方案的遗传选择、交叉和变异的优化技术。例如:遗传算法可以为APP的页面创建数以千种的设置和组合。 任务八:描述和可视化(Description and Visualization) 是对数据挖掘结果的表示方式。 数据挖掘的目的之一是支撑业务发展。另外可视化技术可以将隐藏在表格或文本中的聚类和联系直观且迅速地展示在人们面前。 数据挖掘可以用来描述一个广泛的运营活动。 例如:一家4S销售公司可以利用这项技术,来挖掘用户反馈的历史数据,建立许多预测模型,并做出相应的对策,比如:用一条短信,或者打一个电话,来对客户进行游说。 时下常常能看到「后移动互联网」、「未来十年最好的一年」等耸人听闻又模棱两可的话语,告别了流量就是一切的时代,我们产品运营对于数据为基础,AI算法为突破的学习与思考从未像今天这样急需和尖锐。 由于移动互联网的普及和个性化的社会趋势,数据挖掘技术将会被普遍用来分析用户购买的产品服务的行为。这是为了找出用户的偏好,并为用户提供相关产品信息,以增加销售额和销售价格。 那么先知道数据挖掘流程先挖掘出来用户的喜好的产品运营团队再配合推荐算法,这样就可以在产品运营上领先竞品一步。 如果你想系统化入门AI产品经理,掌握AI产品经理的落地工作方法,戳这里>http://996.pm/7bjab