用户分层的重要变量

  根据我以往有的经验总结,因为有涉及到敏感数据,所以用了虚化和符号化处理,读起来可能不会很轻松,但数字呈现不是主旨,本文侧重用户分层研究的方法,希望对大家有所帮助。

  本文讨论的是用户分层,不同于常规的用户细分,最大的区别在于分层是定序的概念,也就是各层之间有递进关系;而常规细分是定类的概念,即各类之间相对独立。广义上来说,细分包括分层。

  现举例集市卖家分层,介绍整个研究方法。根据以往卖家的经验得知,选取参与卖家分层的重要变量,从BI提取了100万集市卖家的相关数据。

  重构变量

  首先对100万集市卖家数据进行清洗,考察各重要变量的分布情况。由于一些定距变量存在超出正常范围的数据,如交易数量、交易额等;一些定序变量两端组的样本过少,如卖家星级、店铺类型等。这些都不利于模型的建构,因此将每个待分析变量都细分出若干组,原则为:组尽量多,能与定距变量更相当;每组的分布尽量保证在正常范围内,避免出现异常值。调整后的分组情况表略。

  将100万数据随机拆分出三个60万的数据库,四个数据分别作后续分析,以保证所得指数的稳定性。

  因子分析

  首先对重要变量做因子分析,去除变量间的多重共线性,经多次尝试,剔除了支付宝交易量和交易额的结果更加稳定,且更符合业务经验。最终得到的KMO值为0.788,Bartlett 球形检验显著,非常适宜进行因子分析。最终萃取出6个公因子,依次为GMV与星级、时长情况、订购服务情况、旺铺类型、实物商品、是否参加消保等,累积方差贡献率为90.4%(详见下表),解释效果很强;变量原始矩阵与重构矩阵之间的残差>0.05的个数比例为10%,拟合效果也非常好。

  经多次验证整个因子分析非常稳定,前三个因子的累积方差贡献率达到60%,为主要因子;后三个因子的累积方差贡献率为30%,是次要因子。这与日常业务经验也非常吻合。

  

  分层

  利用六个因子得分可以算出每个样本的因子综合得分,各因子得分在总分中所占比例如下:

  

  因为因子综合得分为标准化值,利用(X-最小值)/(最大值-最小值),将其转化为0-100的指数,然后按照指数高低,并结合实际现状对其进行分层,TOP1为指数最高的10%,TOP2为指数次高的20%,TOP3为指数次高的30%,剩余的是第四层,指数最低的40%。此种划分方法比较简单,数据也较稳定,利于实际应用。各组上下限如下表,此种划分的上下限可以固定下来,逐步修正。

  

  判别分析

  按照7:3的比例划分为分析样本和验证样本,利用判别分析对这四层划分结果进行检验,即用6个因子得分与层级做判别分析。所得判别函数对区分各层均有显著贡献,且第一个判别函数解释的方差贡献率达到98.2%,为主函数。使用组内协方差阵计算,分析样本和验证样本的正确率、交叉核实法的正确率均为91.6%,达到很高的水平。

  各层卖家在重要变量上均存在较明显的差异,详情如下:

  

  从六个因子中找出解释力较高的关键变量,并根据实际业务经验判断是否合适,最终选定了七个关键变量。它们直接与层级做判别分析,第一主判别函数的方差贡献率为97.8%,使用组内协方差阵计算,分析样本和验证样本的正确率、交叉核实法的正确率均为85.0%,也达到很高的水平。

  回归分析

  为了方便应用,简化分层的计算过程,用判别分析中确定的七个关键变量与因子综合得分指数作回归分析,以考察他们的解释力。

  回归分析结果显示,R、R Square、Adjusted R Square分别为0.985、0.970、0.970;剩余标准误差为2.709,达到较小的水平;Durbin-Watson的值为1.252,与2有一定差距,残差间的独立性尚可,综合判断,模型解释效果非常好。

  多重共线性方面,卖家星级的容忍度值最小为0.39,第八个主成分的条件指数小于15,表明不存在严重的多重共线性。

  各变量的主要指标如下:

  

  

  经标准化偏回归系数和偏相关系数共同分析,可知开店时长、近三个月GMV金额、卖家星级等对因子综合得分指数的影响更重要。

  因子综合得分指数=a+b1*卖家星级分段+b2*开店时长分段+b3*近三个月GMV总金额分段+ b 4*店铺类型+ b 5*是否主营实物+ b 6*订购服务个数分段+ b 7*是否参加消保

  因此,通过这七个关键变量预测因子综合得分指数非常合适,得到新的因子综合得分指数后,根据上文中的上下限临近值,即可划分卖家层级。

  综上所诉,研究流程归纳如下:

  1、根据以往研究中对用户的理解,确定参与分层的重要变量,提取后台数据,对数据进行清洗和处理;

  2、采用因子分析对参与分析的重要变量进行降维,计算出因子综合得分;

  3、将因子综合得分转换成指数,根据指数的分布情况,对用户进行分层,并用判别分析,对分层结果进行验证;

  4、根据因子分析中变量的解释情况和业务实际情况,从重要变量中筛选出关键变量作为自变量,把因子综合得分作为因变量,建立回归方程,用关键变量推算因子综合得分,进行快速分层,便于后期业务应用;

  5、将后台数据随机拆分成不同的数据库,分别重复以上分析过程,反复验证结果的稳定性。

  后续研究的思考

  整个研究做下来,或许最有价值的是最终得到的回归方程,虽然解释力很高,但仍然缺少一些不易获得的重要变量,如每月投入广告的金额,包括直通车、钻石展位等,后续的研究会逐渐把这些变量纳入其中。这也表明,用户分层研究考察的变量需要尽可能周全,这样结果才能更具参考价值。

  还有就是最后的分层结果显得“平淡”,各层卖家在重要变量上,基本都是强者愈强、弱者愈弱,特色不明显。这也是分层研究与细分研究的区别所在,分层更多体现的是趋势性的结果。后续可以尝试采用不等概率的抽样方式减少一部分样本,如发单量低的卖家占了绝大多数,可以适当减少这部分样本,一定程度上能够均衡各个重要变量在分层中的作用。

  不论哪种样本结构,都需要在实际应用中,检验效果,不断迭代完善。

来源:http://ued.taobao.com/blog/2010/12/31/user_stratified_study/

时间: 2025-01-05 01:05:53

用户分层的重要变量的相关文章

linux为用户配置java环境变量

一. 解压安装jdk  在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录,  执行命令 ./jdk-6u14-linux-i586.bin 这时会出现一段协议,连继敲回车,当询问是否同意的时候,输入yes,回车.之后会在当前目录下生成一个jdk1.6.0_14目录,你可以将它复制到 任何一个目录下.  二. 需要配置的环境变量  1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程

以集市卖家分层为例介绍用户研究方法

文章描述:用户分层研究方法--以集市卖家为例. 写在前面:本文是笔者以往研究的经验总结,由于涉及敏感数据,故作了虚化和符号化处理,读起来会有些费劲,但数字呈现不是主旨,本文侧重用户分层研究的方法,希望能给大家提供一套做用户分层的研究思路和操作流程. 本文讨论的是用户分层,有别于常规的用户细分,最大的区别在于分层是定序的概念,即各层之间有递进关系:而常规细分是定类的概念,即各类之间相对独立.广义上而言,细分包括分层. 现以集市卖家分层为例,介绍整个研究方法.根据以往卖家研究的经验,选取参与卖家分层

【Servlet】根据MVC思想设计用户登陆、用户注册、修改密码系统

MVC不是一种像C.JAVA的编程语言,也不是一种像Ajax,Servlet的技术,只是一种如同面向对象一样编程思想.近年来MVC一直很火,赞者批者有之,然后大篇幅的文章很多,可是简明扼要的简单MVC的例子几乎没有.在JSP领域一直向鼓风机地猛吹SSH如何如何地好,一直怒批JSP,Servlet等如何如何差.其实使用JSP+Servlet同样可以利用MVC思想来完成一个系统.下面用一个烂得不能再烂的例子,你步入网页编程必须学会的东西,登陆.注册.修改密码系统,来说明这种编程思想. 一.基本目标

SNS领域的初步探索:非流失用户及流失用户的相关模型

文章描述:用户研究思路概述:以淘宝网SNS"分享"为例. 事发突然: 今年8月份,发神经般的在微博上点开了一个广告链接,发现某美妆品牌的东西性价比很高,于是成功购买.这是我在SNS的网站上达成的第一笔交易,拿到钟爱的护肤品,突然发现:我居然没有在"我的淘宝"的"好友动态"里点击过别人分享的东西,更别提购买了.于是,有了这次的研究. 一.立项: 基于以上想法,本打算研究SNS用户习惯及动机(没有限定在淘宝网),希望能通过照片日志(Photo Dai

在ASP应用中验证用户身份

    交互式的Web应用比那些只提供静态Web页面的站点要求考虑更多的安全问题.注册与密码是保护敏感信息最为常用的手段.由于ASP没有直接提供验证用户身份的方法,因此,用户必须执行登录过程以便应用系统保存和提取用户相关信息.    一.示例站点概貌    本文通过一个示例站点ASPSecurity说明ASP应用中注册与密码保护的一般实现过程.我们把用户信息保存在Web服务器上的一个Access97数据库中,DSN名称为   ASPSecurity.唯一的数据库表拥有以下字段:Signon(文本

SQL 变量

   Transact-SQL中可以使用两种变量,一种是局部变量(Local Variable)另外一种是全局变量(Global Variable). 4.4.1 局部变量局部变量是用户可自定义的变量,它的作用范围仅在程序内部.在程序中通常用来储存从表中查询到的数据,或当作程序执行过程中暂存变量使用.局部变量必须以"@"开头,而且必须先用DECLARE命令说明后才可使用.其说明形式如下:DECLARE @变量名 变量类型 [@变量名 变量类型-]其中变量类型可以是SQL Server

用ASP统计用户在站点的停留时间

统计|站点 虽然通常使用的点击注册技术可以计算出你的Web站点得到多少点击,但是,如果能够知道访问者在站点上停留了多长时间就更好了.如果有上千人点击并打开了你的主页,但他们却在漂亮的"欢迎"图形完全下载之前就已经跑到别的站点去了,这样,你所花在建设和维护站点上的投资就没有得到很好的回报. 有两种很好的方法用来记录用户在你的站点上花费了多少时间.第一个是使用基于ASP服务器的sessions,第二是通过保持客户机端cookies.要记住,使用sessions将给服务器的处理工作增加负荷,

利用ASP的文件操作实现用户管理

用户管理 简单.好用.开发效率高等等是ASP的优点,但是其系统操作方面如文件操作等则 是比较微弱的.要想实现这方面的功能,只有采取调用组件的办法. FileSystemObject对象就是一个例子.ASP安装后,该对象就在系统中注册了.不过其功能也非常一般,只能操作文本类型的文件.不过也可以满足我们的一些需要了.前几天我的一个同事的一个朋友在网上申请了一个支持ASP的空间,想实现诸如用户注册.信息修改.用户注销等功能,又不想用数据库来实现,因为要进行一大堆的设置.其实利用FileSystemOb

用ASP统计用户在站点的停留时间(1)

虽然通常使用的点击注册技术可以计算出你的Web站点得到多少点击,但是,如果能够知道访问者在站点上停留了多长时间就更好了.如果有上千人点击并打开了你的主页,但他们却在漂亮的"欢迎"图形完全下载之前就已经跑到别的站点去了,这样,你所花在建设和维护站点上的投资就没有得到很好的回报. 有两种很好的方法用来记录用户在你的站点上花费了多少时间.第一个是使用基于ASP服务器的sessions,第二是通过保持客户机端cookies.要记住,使用sessions将给服务器的处理工作增加负荷,但是它们确实