进入正题前,我们先以一个典型场景来引出本文的主角。
如果把网站或 APP 比喻成一个商场,那互联网用户的行为就如同逛街的顾客,他们从商场任意一扇门进入,然后东逛逛西瞅瞅,有的意兴阑珊很快就离开了商场,有的兴致不错买了一些商品后才离开。
对于商场而言,顾客一系列的行为是一次来访,同理,对于网站或 APP 来说,用户一系列的行为,也是一次访问。
市面上,类似的定义,我们就称之为 Session 或 Visit。
用户行为往往是单点发生的,即在什么时间什么地点干了一件什么样的事,也就是我们熟知的4W1H模型:
基于这样用户角度的行为记录,无论是一个商场,还是一个网站或 APP ,就可以知道他们的用户都具体干了些什么事情,比如什么时间进入,什么时间买了什么东西等等。
但是,还有一类需求,单点记录的方式并不能很好的满足,比如:
可以发现,类似需求,都需要把用户单点发生的行为串联起来形成一个整体,并在此基础上进行计算后才能得到。
这样的连续行为整体,就是我们已定义好的 Session 概念,而解决类似的分析需求正是 Session 之于用户行为分析最大的意义。
铺垫完 Session 的定义和意义后,我们来讲下 Session 实际的组成。接着上面的场景,我们举两个更具体的例子:
用户A打开神策官网,很认真的看了10分钟后,接了个女朋友电话,一打就一个小时过去了,然后重新回到电脑前,点击之前未关闭的网页继续浏览
这种情况或更多类似的复杂情况,用户A的 Session 该算几次?
用户B启动聚美优品的 APP,先点击了首页 Banner 广告,然后浏览了四五个页面,接着使用了搜索功能,看了一个搜索结果页后,把 APP 切换到了后台;过了五分钟,重新切换回来后,又点开搜索结果页旁边的推荐链接浏览,看完还是没有心动,直接关掉了 APP
像这种情况,用户B产生了几次 Session ?每个 Session 里都包含哪些行为?中间的搜索结果页用户停留了多长时间?
可以看到,对于 Session 的理解以及相关指标的计算,主观上好理解,但一旦落实到具体数据的采集和计算,这对于一款数据统计和分析工具而言,便不再那么容易,而其中最重要的两块就是:
参照 Session 的组成,我们来分析下传统统计工具,比如百度统计、谷歌分析等,是如何定义 Session 并进行相关指标的计算。
我们以电商一次典型的购买流程为例,用户C做了如下的行为:
可以看到,用户的行为里既有查看首页、商品页、订单页等页面浏览型动作,也有如点击搜索、点击加入购物车和支付等交互动作。同时,不同的动作间,发生的时间间隔不一。
下面我们就以 Session 组成的两个部分分开来看:
在这一层,对于传统统计工具而言,由于默认只会采集页面浏览型动作,所以 Session 的组成也只会包含浏览页面事件,在这个场景里,用户C的 Session 内只有浏览首页、商品页和订单页三个事件。
受制于此,最大的问题就是某些页面的停留时长计算会偏离理想状态:
用户C在商品页上的停留时长,理想的情况应该是点击加入购物车的时间点减去商品页打开的时间点,即 Tc;而由于传统统计工具的 Session 不包含加入购物车事件,所以商品页的停留时长变成了订单页打开的时间点减去商品页的打开时间点,即 Td。
这一层,我们以用户C打开首页后为例,目前是间隔2分钟后,用户C进行了搜索的动作。
对于传统统计工具而言,Session 的切割时长一般为固定值,比如PC 端默认30分钟,APP 端一分钟。这样区分的话,C用户如果是用的 PC 端,那首页的停留时长为Ta;而如果用的是 APP,Session 既已做了切割,此刻首页的时长是多少呢?
假设打开首页后,用户C将 APP 切换到了后台,然后经过不同的时间再切换回来进行了搜索,比如59秒和2分钟的切换,这对于传统统计工具而言,都会产生不一样的 Session 切割和时间计算。
对于间隔2分钟的情况,不管是切换至后台还是别的,传统统计工具由于限定了切割时长为1分钟,所以 Session 切割为两次,打开首页这次Session即为所谓的跳出 Session,停留时长以0来计算。
以上。传统工具对于 Session 的定义,最大的问题就是一刀切,限定死了 Session 事件的组成以及切割时长,这导致的最大问题便是无法满足不同行业不同产品对于 Session 的分析需求。
不管是按行业,电商、互联网金融、媒体等,还是按产品,交易型、功能型、阅读型,对于用户行为的分析都会千差万别,这也对 Session 的定义提出了更灵活的要求。
Session 创建功能:
当创建完 Session 后,通过神策分析的 Session 分析功能,用户可以非常快速的查看 Session 相关的一系列指标,我们以下面几个典型需求作为例子来讲解:
1.平均使用时长
定义:等于所有用户的 Session 时长之和除以 Session 数。 1.1 选择创建的 Session
1.2 选择 Session 总体
1.3 选择相应指标
2.平均交互深度
定义:等于所有 Session 内事件数之和除以总的 Session 数。 2.1 选择创建的 Session
2.2 选择 Session 总体
2.3 选择相应指标
3.人均访问次数
定义:等于 Session 总数除以唯一身份用户数。 如上图,只要选择“人均 Session 次数”即为人均访问次数。
4.跳出率
定义:当一个 Session 仅有一个事件时,即视为跳出,一般情况这个事件以浏览页面居多。所以 Session 整体跳出率等于跳出的 Session 数除以 Session 总数,而具体事件或页面的跳出率,可以按属性查看或筛选得出。 4.1 选择创建的 Session
4.2 选择 Session 总体
4.3 选择相应指标
4.4 可以选择属性分组
4.5 可以进行属性筛选
1.页面平均停留时长
定义:等于页面停留时长的总和除以页面被浏览的触发数。
2.页面退出率
定义:当用户在某个页面结束了该 Session 时即视为退出,所以页面退出率等于退出的页面数除以该页面的总浏览次数。 2.1 选择创建的 Session
2.2 选择 Session 内具体的事件
2.3 选择相应指标
2.4 可以选择属性分组
2.5 可以进行属性筛选
营销推广中一个非常典型的需求就是需要知道不同渠道带来的注册、购买等转化情况,该需求本质上,就是需要界定 Session,然后按渠道属性查看注册、购买等事件的转化数量: 1.1 选择创建的 Session
1.2 选择 Session 内具体的转化事件
1.3 选择相应指标
1.4 选择渠道属性分组查看
这样我们即能知道不同渠道过来的注册转化数据。
接下来我们用以上几个用户的用户行为来举例说明传统Session和神策Session是如何切割的,以及神策Session切割展示出来的优势
1.切割时长灵活设置
用户A打开神策官网,很认真的看了10分钟后,接了个女朋友电话,一打就一个小时过去了,然后重新回到电脑前,点击之前未关闭的网页继续浏览
这种情况或更多类似的复杂情况,用户A的 Session 该算几次?
传统Session切割规则:用户无行为超过30分钟则进行切割
用户A从访问网站开始计第一个Session,用户访问10分钟之后跟女朋友打了一个小时的电话,即用户从第10分钟开始,在网页已没有任何行为累计一个小时,根据Session切割规则,Session会在用户A在跟女朋友打电话第30分钟的时间切割,当用户打完电话继续访问网站时,Session另外计,如下图所示
但是,某些网站的特征是访问时间比较长时,传统30分钟的切割方式并不能合理切割,例如,用户A访问的是爱奇艺视频网站,他在浏览网站10分钟后,选择一部电影播放,期间边跟女朋友打电话边看电影一个小时,之后继续浏览网站,此情况下如果Session按30分钟切割,会造成计算Session时长偏短,Session深度偏低,以及Session数偏高,计算结果不能反应真实情况。
神策Session切割规则:可灵活选择切割时长
假设我们的切割时长为设置为一个小时或者45分钟,则Session切割如下: 将Session的切割时间改变后,由Session而来的计算结果明显更贴近真实情况。
2.灵活选择参与切割的事件
用户B启动聚美优品的 APP,先点击了首页 Banner 广告,然后浏览了四五个页面,接着使用了搜索功能,看了一个搜索结果页后,把 APP 切换到了后台;过了五分钟,重新切换回来后,又点开搜索结果页旁边的推荐链接浏览,看完还是没有心动,直接关掉了 APP
像这种情况,用户B产生了几次 Session ?每个 Session 里都包含哪些行为?中间的搜索结果页用户停留了多长时间?
如上图所示,APP传统的Session切割时长是一分钟,且只针对浏览动作做Session切割,当用户在某个页面上停留时长超过1分钟时,Session重新切割,这是传统切割方式的其中一个弊端,部分页面承载的内容较多时,用户不可避免地停留较长时间,如果对Session切割时长固定化,且只对浏览动作进行切割的话,对于某些较长的APP页面,用户即使在不断往下滑动页面,但Session则已经切开,不符合实际情况。
神策分析的Session切割优势除了能够对Session切割时长进行自定义,还能对参与切割的事件进行自定义,如上图所示,假设把神策的Session切割时长设置为3m,且所有事件参与Session切割,则切割结果如上图所示,明显Session切割结果更能反应实际结果。
Session 分析对于用户行为分析来说,是非常重要的一部分,神策分析除了提供较为灵活的 Session 定义和指标计算外,还能结合自身强大的维度筛选和分组功能,来满足用户愈加深度的行为分析需求。
来源:https://www.sensorsdata.cn/blog/ru-he-ying-yong-sensors-analytics-jin-xing-session-fen-xi/
今天和大家一起聊一聊C语言的位操作,我们都知道C语言的位操作主要有与、或、非和异或。 首先我们简单来复习一下各种操作的含义。 与 0 & 1 = 0 1 & 0 = 0 0 & 0 = 0 1 & 1 = 1 或 0 | 1 = 1 1 | 0 = 1 0 | 0 = 0 1 | 1 = 1 非 !0= 1 !...
核心概念: 1 顶点地图(VD):t时刻点云P的球形投影(极坐标距离限制的点云原始数据). 2 法向量地图 (ND): 暂时理解为类似于图片的雷达极坐标系投影(具体等看了代码再补充)。 3 地图视角 (VM&&NM):将1,2投影到地图上。(特征ICP更新位姿增量,累计位姿增量得到当前位姿) 4 面元被:地图使用面元被表示,由一个位置,一个法向量和一个半径,两个时间戳(...
1.Angular解析ng-app然后在内存中创建$rootScope。 2.angular回继续解析,找到{{}}表达式,并解析成变量。 3.接着会解析带有ng-controller的div然后指向到某个controller函数。这个时候在这个controller函数变成一个$scope对象实例。 表达式 {{yourModel}}是如何工作的?它依赖于 $interpolation服...
1.什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能。那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台服务器的负载情况将请求分配给某一台后端服务器去处理。 那么在这个过程中,调度者如何合理分配任务,保证所有后端服务器都将性能充分发挥,从而保持服务器集群的整体性能最优,这就是负载均衡问题。 2.下面详细...
第一步:把unity工程杂乱无章的 美工图片用unity原生工具打包成图集 首先我们在菜单栏里打开Edit->Project Settings -> Editor, 这时在Sprite Packer的Mode中有几个参数: Disabled表示不启用图集,Enabled For Builds表示只有在打包时启用,Always Enabled表示永远启用它。这里我们选...
本文概述: 1、HBase概述 2、HBase特点 3、HBase和RDBMS以及HDFS的对比区别 4、HBase核心术语 5、HBase物理模型 6、HBase架构 7、HBase容错 8、HBase环境搭建 HBase官网:http://hbase.apache.org/(Apache HBase是一个开源,分布式,版本化的非关系型数据库) HBase概述 1)构建在HDFS之上的,分布式、...
MTCNN:级联卷积神经网络 技术关键点:图像金字塔,三层及联网络架构(P、R、O)、NMS、IOU 特点:多目标识别,无anchor 数据集:CelebA+WiderFace 网络流程: 第一步:对图片做图像金字塔,将一张图像缩放成多种尺寸,这一步的目的是让图片中的人脸有多个尺寸,以便于网络来识别,可以理解为框选人脸的框的大小是固定的,但是有些图像中人脸大小不一样,我们通过对图像做缩放,总有一个...
1. 类加载 在Java 代码中,类型的加载、连接与初始化过程都是在程序期间完成的。 提供了更大的灵活性,增加了更多的可能性。 2. 类加载器 深入剖析 Java 虚拟机与程序的生命周期 在如下几种情况下,Java虚拟机将结束生命周期 3. 类的加载 连接 与 初始化 加载 :查找并加载类的二进制数据 连接 初始化: 为类的静态变量赋予正确的初始值 (比如此时 number 是1 ) 主动使用(七...
我们在搭建个人博客或者使用TyPora的时候会用到图床,就是把图片放到服务器或者一些平台如七牛云等上面,那这样我们在项目迁移或者markdown 文件在别的电脑打开时就不会出现图片丢失的问题。 但是如果使用七牛云,最后还是要钱的,所以可以自己搭建一个的免费图床。 那么我们进入正题吧 PicGo :上传和管理图片的开源工具 ; GitHub :存储图片; Jsdeliv :加速图片访问速度。 一、下...
老师布置了一个作业:用Construct2制作一个游戏。 经过简单的百度,我了解到Construct2是一款不需要任何编程基础的游戏制作引擎,制作出来的游戏以STG为主,由于画功不好而且创意匮乏,我决定仿制坦克大战,制作一个双人的坦克大战游戏。 由于这个作业是对坦克大战的简单模仿,所以在单位设计上我并没有多费心思:两种坦克,两个基地,两种砖块(可破坏...
I have a func.inc file as below And my function.php as below I'm expected result 11. But I got 10. Why is the function resultResultJson not getting the right $status_success result? Updated The https:...
I am reading tick value of the record with largest id. What is the difference between following queries that causes to slow execution? Slow Query: Quick Query: Schema Because the in query doesn't use ...
Is it possible if I have a table like this: to perform an SQL query where the results are sorted like this: Note that, in the list above, the months and years are sorted in descending order, but the d...
I'm working on an Angular 6 project. My target is really specific (Chrome 67), so are there any tips in order to exclude all the possible polyfills needed to other target browsers? Could I switch my t...
I have an existing mysql query that works appropriately but I need to add three averages/percentage formulas to it. This query is for call center metrics. My real issue is in my third metric, missed_c...
玻璃钢生产厂家辽阳不锈钢花盆价格滨州不锈钢家具生产厂家汕头玻璃钢花箱定制福建玻璃钢动物雕塑厂家直销十堰玻璃钢茶几价格资阳玻璃钢餐桌椅哪家好宿州玻璃钢造型定做湖北玻璃钢摆件哪家好揭阳不锈钢花盆济南玻璃钢沙发厂家太原玻璃钢装饰制造大同玻璃钢花池厂衢州玻璃钢花盆制造湛江玻璃钢花盆生产厂家兰州玻璃钢茶几定做兰州玻璃钢外壳多少钱三沙商业美陈加工杭州玻璃钢垃圾桶哪家好衢州玻璃钢卡通雕塑制造娄底商业美陈公司盘锦玻璃钢摆件金昌玻璃钢公仔雕塑公司清远玻璃钢摆件加工河源玻璃钢花钵厂家遵义玻璃钢茶几厂泰州玻璃钢价格白城玻璃钢种植池生产厂家潮州玻璃钢花箱厂鸡西玻璃钢花盆价格岳阳不锈钢雕塑厂家直销香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万